Skip to main content

agent-packet

Conservatively filtered task packets for Hermes, OpenClaw, and other AI agents.

Agents should not get raw home directories, .env files, or API keys when you hand work to an untrusted/sandboxed worker. agent-packet builds a portable, inspectable packet:

  • allowlisted files only
  • private paths denied (private/, .env, keys, credentials)
  • files with secret-like strings blocked by default (optional explicit redaction)
  • secret-like path components, .env* files, key files, and URL userinfo blocked
  • external SHA-256 sidecar + tar.gz archive (no self-referential manifest hash)
  • receiver validates the archive structure and listed file hashes before materializing

No network required. MIT. Python 3.10+.

Install

uv tool install agent-packet

Or with pipx:

pipx install agent-packet

For contributors working from this repository:

uv tool install ./packages/agent-packet
pip install -e "./packages/agent-packet[dev]"

Quick start (Hermes → OpenClaw)

# On the trusted Mac / Hermes side
agent-packet build \
  --task "Review this module and propose 3 safe local improvements. Do not request secrets." \
  --root ~/my-project \
  --include src \
  --include README.md \
  --out /tmp/oc-packet

# Inspect what would leave the machine
agent-packet inspect /tmp/oc-packet/packet.tar.gz --json | head

# On the worker / OpenClaw side
agent-packet materialize /tmp/oc-packet/packet.tar.gz --dest /tmp/oc-work \
  --expect-sha256 "$EXPECTED_PACKET_SHA256"
cat /tmp/oc-work/payload/TASK.md

When a file must be shared with a credential-shaped value removed, opt in explicitly:

agent-packet build --task "Review config" --root ./project --include config.py \
  --redact-secrets --out /tmp/oc-packet
agent-packet materialize /tmp/oc-packet/packet.tar.gz --dest /tmp/oc-work \
  --expect-sha256 "$EXPECTED_PACKET_SHA256"

Redaction is a leakage-reduction aid, not a semantics-preserving code transform. Review redacted files before asking a worker to build or execute them.

materialize refuses an existing destination, archive links, traversal, duplicate members, links/special files, unexpected files, oversized compressed or decompressed archives, and unsupported/oversized PAX metadata. It hashes one private snapshot and parses those same bytes, so replacing the source path between the two steps cannot change the materialized payload. Destination parents are canonicalized before staging and again before the final rename. The manifest never records the producer's absolute source path or names of omitted include paths.

build requires at least one explicit --include; root aliases such as --include . are refused. Selecting the entire root requires the visibly intentional --include-all flag. materialize requires an expected digest by default; obtain it independently from the archive transport. --accept-untrusted-archive retains structural and file-hash checks but cannot authenticate a replacement archive.

--allow-binary only allows binary files past the type filter; binary content is not secret-scanned. Use it only for reviewed, non-sensitive inputs.

Why this exists

Multi-agent setups (Hermes orchestrator + OpenClaw VPS worker, or any untrusted sub-agent) constantly leak context by accident:

  • whole repo zips including .env
  • chat paste with tokens
  • “just send the folder”

agent-packet makes the selected boundary explicit and inspectable. Secret-like text files are omitted by default; review the manifest counts and archive contents before transport because heuristic detection can miss secrets.

CLI

Command Purpose
agent-packet build Create packet + manifest + archive
agent-packet materialize Extract + verify hashes
agent-packet inspect Summarize manifest

Agent usage contract

  1. Producer agent builds a packet for a specific task.
  2. Consumer agent only sees materialised payload/.
  3. Consumer returns results (and ideally an agent-receipt).
  4. Producer verifies receipt before trusting “done”.

Open core and paid work

The complete local CLI stays open source and offline-first. Teams can pay for a bounded workflow review, organisation-specific include/deny policies, CI or orchestrator integration, and support. The first offer is a manually delivered founding pilot, not a hosted dashboard.

License

MIT

Metadata

Release files for agent-packet 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agent-packet 0.1.1
File Size Uploaded
agent_packet-0.1.1.tar.gz 23.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agent-packet 0.1.1
File Interpreter ABI Platform
agent_packet-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 42.6 kB

Release files / agent_packet-0.1.1.tar.gz

Download URL agent_packet-0.1.1.tar.gz
Size 23.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1a266a8310740947f00735ade3e8e149bdf5fc570ad9893415464451d422d9de
BLAKE2b-256 checksum
How to use checksums
63b917a2710ecce568a70d9f125e1ca76ace8b0f3cc3e017ebbed9f48f4d52d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.

Transparency log

Release files / agent_packet-0.1.1-py3-none-any.whl

Download URL agent_packet-0.1.1-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b6ddd2d7c7de1bb14e4c24c16190ac27cfc05849ba2ae3f9b67e1a844b2df156
BLAKE2b-256 checksum
How to use checksums
123938bfc20670abbc69e152b896607b597f7cdc18db6e0401d30bc8d4acd7e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page