Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
128 changes: 128 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ members = [
# Testing crates
"crates/testing/kernel-host-tests",
"crates/testing/e2e-tests",

# Tools
"crates/agent-pack",
]

[workspace.dependencies]
Expand Down
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -175,6 +175,31 @@ let journal = KernelJournalV1::decode(&journal_bytes)?;
7. Construct canonical journal (Success or Failure)
8. Commit journal or abort on hard error

## Agent Pack

Agent Pack is a portable bundle format for distributing verifiable agents. It allows third-party developers to package their agents with all cryptographic commitments needed for offline verification.

### Installation

```bash
cargo install --path crates/agent-pack --features risc0
```

### Quick Start

```bash
# Initialize a new manifest
agent-pack init --name my-agent --version 1.0.0 --agent-id 0x0000...0042

# Compute hashes from ELF binary
agent-pack compute --elf target/riscv-guest/.../zkvm-guest --out dist/agent-pack.json

# Verify the manifest
agent-pack verify --manifest dist/agent-pack.json
```

See [docs/agent-pack.md](docs/agent-pack.md) for full documentation.

## Consensus-Critical Properties

This implementation prioritizes **determinism and correctness over convenience**:
Expand Down
28 changes: 28 additions & 0 deletions crates/agent-pack/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[package]
name = "agent-pack"
version = "0.1.0"
edition = "2021"
description = "CLI tool for creating and verifying Agent Pack bundles"
license = "MIT OR Apache-2.0"

[[bin]]
name = "agent-pack"
path = "src/bin/main.rs"

[dependencies]
clap = { version = "4", features = ["derive"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = { workspace = true }
hex = "0.4"
thiserror = "2"

# Optional: for IMAGE_ID computation
risc0-zkvm = { version = "3.0", optional = true, default-features = false }

[dev-dependencies]
tempfile = "3"

[features]
default = []
risc0 = ["dep:risc0-zkvm"]
Loading