Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
55637ed
feat(acp): harden AEON Aspect worker package
StephGlansberg Jul 22, 2026
f9535e7
test(acp): use portable identity fixture
StephGlansberg Jul 22, 2026
ac56c86
feat(acp): carry verified inbound event metadata
StephGlansberg Jul 22, 2026
7d01613
fix(acp): reject cancelled trusted envelopes
StephGlansberg Jul 22, 2026
aa03504
fix(acp): scope reply receipts to each turn
StephGlansberg Jul 22, 2026
d775fcb
fix(acp): harden huddle config validation
StephGlansberg Jul 22, 2026
7ee3f91
fix(acp): reject ambiguous channel metadata
StephGlansberg Jul 22, 2026
1990bb7
fix(acp): require receipt export authority
StephGlansberg Jul 22, 2026
301928a
fix(acp): reject ambiguous reply anchors
StephGlansberg Jul 22, 2026
60a3f85
Forward Buzz credentials to managed agents
StephGlansberg Jul 22, 2026
ea17d78
fix(acp): recognize immutable OpenClaw entrypoint
StephGlansberg Jul 22, 2026
5888674
fix(deploy): bind Buzz worker executable path
StephGlansberg Jul 22, 2026
8ec975a
fix(deploy): bind Buzz worker OpenClaw state
StephGlansberg Jul 22, 2026
de9dace
fix(deploy): support system-launched Buzz workers
StephGlansberg Jul 22, 2026
6f0583b
fix(deploy): separate launchd-owned Buzz paths
StephGlansberg Jul 22, 2026
4cf01b6
fix(deploy): support local OpenClaw launch identity
StephGlansberg Jul 22, 2026
03ace1b
fix(deploy): support local Buzz signer copies
StephGlansberg Jul 22, 2026
bdb80e5
fix(acp): isolate managed agent publisher credentials
StephGlansberg Jul 22, 2026
8312bc2
test(desktop): prove durable ACP receipt archive
StephGlansberg Jul 22, 2026
8be666d
Merge remote-tracking branch 'origin/main' into codex/aeon-aspect-wor…
StephGlansberg Jul 22, 2026
bc952d1
fix(buzz-acp): expose trusted envelope refusals
StephGlansberg Jul 22, 2026
18e0e33
fix(buzz-acp): fail closed on trusted event refusal
StephGlansberg Jul 22, 2026
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
2 changes: 1 addition & 1 deletion crates/buzz-acp/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ evalexpr = { workspace = true }
# Process-group kill (safe wrapper around killpg) — Unix-only; kill_process_group
# has a #[cfg(not(unix))] fallback in acp.rs.
[target.'cfg(unix)'.dependencies]
nix = { version = "0.31", default-features = false, features = ["signal"] }
nix = { version = "0.31", default-features = false, features = ["fs", "signal", "user"] }

[dev-dependencies]
tokio = { workspace = true, features = ["test-util"] }
Expand Down
8 changes: 6 additions & 2 deletions crates/buzz-acp/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,14 +97,18 @@ All configuration is via environment variables (or CLI flags — every env var h

| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| `BUZZ_PRIVATE_KEY` | **yes** | — | Agent's Nostr private key (`nsec1...`). Used for relay auth and agent identity. |
| `BUZZ_PRIVATE_KEY` | one key source required | — | Agent's Nostr private key (`nsec1...`). Conflicts with `BUZZ_PRIVATE_KEY_FILE`. |
| `BUZZ_PRIVATE_KEY_FILE` | one key source required | — | Absolute path to a current-user-owned, regular, non-symlink key file with mode `0600`. |
| `BUZZ_EXPECTED_PUBLIC_KEY` | with key file in supervised deployments | — | Expected hex pubkey derived from `BUZZ_PRIVATE_KEY_FILE`; startup fails on mismatch. |
| `BUZZ_RELAY_URL` | no | `ws://localhost:3000` | Relay WebSocket URL. |
| `BUZZ_ACP_AGENT_COMMAND` | no | `goose` | Agent binary to spawn. |
| `BUZZ_ACP_AGENT_ARGS` | no | `acp` | Agent arguments (comma-separated). |
| `BUZZ_ACP_MCP_COMMAND` | no | `""` (empty) | Path to an optional MCP server binary to provide to the agent subprocess. |
| `BUZZ_ACP_IDLE_TIMEOUT` | no | `620` | Idle timeout: max seconds of silence before cancelling a turn. Resets on any agent stdout activity. |
| `BUZZ_ACP_IDLE_TIMEOUT` | no | `900` | Idle timeout: max seconds of silence before cancelling a turn. Resets on any agent stdout activity. |
| `BUZZ_ACP_MAX_TURN_DURATION` | no | `7200` | Absolute wall-clock cap per turn (safety valve). |
| `BUZZ_API_TOKEN` | no | — | API token (required if relay enforces token auth). |
| `BUZZ_ACP_TURN_RECEIPTS` | no | `false` | OpenClaw-only opt-in that closes successful channel turns against signed Buzz reply and Gateway lineage evidence. Requires relay observer. |
| `BUZZ_ACP_EXPECTED_GATEWAY_SESSION_KEY` | with turn receipts | — | Fixed Gateway session key that observed ACP lineage must match. |

**Note:** `BUZZ_ACP_AGENT_ARGS` splits on commas. For args with values, use: `-c,key="value"`.

Expand Down
Loading