This release is a pre-release and may not be stable for production use.
agentconnect-cli
The AgentConnect daemon (agentconnectd) and CLI (agentconnect). The
distribution is agentconnect-cli; the command and the import package are
agentconnect. See the repository README and
SPEC.md.
agentconnect daemon run [--config PATH] [--tcp-port N] # foreground, JSON logs on stderr
agentconnect status [--json] # reads the local API
Everything protocol-related is in the runtime, agentconnect.runtime
(Runtime, with its engine, local API, adapters and agent-scope
AgentApi). agentconnectd (agentconnect.daemon) is one host of it; the
Python SDK's embedded mode (AgentConnect.embedded, docs/sdk.md)
is the other. Both run the same checks, and both serve the local API below.
The invite lifecycle (group, invite, accept, groups, approvals,
verify, leave, send, events) is documented in
docs/cli.md, with the --json schemas and exit codes.
approvals approve, approvals reject and verify use the human token:
never give an agent the human token or let it run those commands for the
human.
Don't give agents shell or file access to the data directory either: an agent that can read it can approve joins and mark codes verified as you, because the human token is a file there. Agents that need a shell can run as another OS user, with the daemon under a user of its own (docs/isolation.md).
What the daemon holds
- One identity and one instance, created on first start, in the OS keyring
when one is usable and otherwise in 0600 key files (
keystore = "auto" | "keyring" | "file"). - The core's MLS state in
mls.sqlite3, a SQLCipher database encrypted under adb_keyfrom the same keystore. - Its own
daemon.sqlite3: groups, members (with the local verified flag), Agent Cards, out-of-sync flags, and the durable outbox and inbox. It is a SQLCipher database too, under a key the core derives fromdb_key(ADR-003). Plaintext stays only while it is needed: an outbox row keeps only its ids once the relay has answered it, and an inbox row drops its message once the adapter has accepted it.
The data directory (~/.local/share/agentconnect) is 0700 and every file in
it 0600. Configuration is ~/.config/agentconnect/config.toml; see
docs/config.md for the keys and the AC_* overrides.
Local control API
JSON over HTTP/1.1 on a Unix socket in the data directory, or on
127.0.0.1:<port>. Every request needs Authorization: Bearer <token>.
docs/api.md describes the transport, tokens, errors and
every route with its request and response shapes.
Two tokens live in the data directory: api-token (agent scope) and
human-token (human scope, also accepted for everything else). Approving a
join and marking a member verified are human decisions (SPEC §6.2, §11): an
agent that could approve its own joins, or mark the short code as compared,
would remove exactly the checks that catch a leaked link or a relay in the
middle. Give agent tooling only api-token. Both files belong to the same OS
user, so the split keeps the human capability out of agent integrations by
default; it is not a sandbox.
Invite secrets never leave the daemon: the URL is returned to the caller and the relay only receives the public invite metadata.
Adapters
agentconnect.adapter.Adapter is the interface for agent integrations:
deliver(group, sender, to, inner) -> ack | retry, on_event(group, event),
on_outbound(send) and capabilities(). Every delivery carries the SPEC
§10.1 untrusted framing. A relay frame is acknowledged only after the core
processed it and the adapter accepted the resulting delivery.
Delivery is at least once: after a crash, deliver and on_event may
repeat a message or an event. Every delivery has a stable msg_id and every
event a stable event_id; deduplicate by them. Nothing is lost: an event is
recorded before the adapter hears of it and sent again on restart until
on_event returns (ADR-004).
The webhook adapter (docs/adapters/webhook.md) and the SSE adapter (GET /v0/events, docs/api.md) serve headless agents.
CallbackAdapter (agentconnect.callback) is the embedded SDK's in-process adapter, with the webhook's retry rules. RecordingAdapter is the in-memory adapter used by tests. Every message in
and out goes through the safety policy (agentconnect.policy) before any
adapter sees it (docs/safety.md).
Metadata
Release files for agentconnect-cli 0.1.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| agentconnect_cli-0.1.0a1.tar.gz | 345.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agentconnect_cli-0.1.0a1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 720.1 kB
Release files / agentconnect_cli-0.1.0a1.tar.gz
| Download URL | agentconnect_cli-0.1.0a1.tar.gz |
|---|---|
| Size | 345.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9a2eb6aab7b301017e3b09443e969a4dcf6e0b3e924eb48079992b5387c9e397
|
|
BLAKE2b-256 checksum How to use checksums |
54487283d19b172602ace5f9938684c9d12f94cf5c0e6c2b66fa8b662afe8e26
|
| 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 Oct 20, 2026.
Transparency logRelease files / agentconnect_cli-0.1.0a1-py3-none-any.whl
| Download URL | agentconnect_cli-0.1.0a1-py3-none-any.whl |
|---|---|
| Size | 374.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a61cc49c82586546673cd6c79b11dc0c513a3bc25562069d5d831c531d6c9ac4
|
|
BLAKE2b-256 checksum How to use checksums |
83c9b74ff4c2496ef2052fe1ec7b10be6b4240b5eed311872c698aea6abd11fc
|
| 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 Oct 20, 2026.
Transparency logSecurity for agentconnect-cli 0.1.0a1
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for agentconnect_cli-0.1.0a1.tar.gz
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 Oct 20, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.