File-backed local mail, MCP tools, and push delivery for Codex project agents
Project description
InterAgentMail
InterAgentMail gives local Codex project agents durable mailboxes, MCP tools, and automatic wake-up delivery. Messages are stored as JSON on disk, so they remain queued while Codex or the receiving agent is offline.
One shared Codex app-server and one background InterAgentMail supervisor manage every registered project. Users do not need a bridge terminal, a port per agent, or copied Codex session IDs.
Requirements
- Python 3.10 or newer
- The OpenAI Codex CLI installed, available on
PATH, and signed in - Windows, macOS, or Linux; background operation is tested most heavily on Windows
Install
Install the isolated command-line application with pipx:
pipx install cgl-interagentmail
Register one or more Codex projects, then start delivery:
iam setup "C:\Projects\MainApp" "C:\Projects\SecurityReviewer" "C:\Projects\UXReviewer"
iam start
Open the correct agent from any registered project:
cd C:\Projects\SecurityReviewer
iam open
The complete Windows, macOS, Linux, upgrade, troubleshooting, and uninstall instructions are in docs/INSTALL.md.
Source code, releases, and issue tracking are hosted at https://github.com/cerberusgamelabs/cgl-interagentmail.
Everyday commands
iam status
iam open [PROJECT]
iam restart
iam stop
iam stop --all
iam unregister [PROJECT ...]
iam statusshows services, projects, and pinned thread IDs.iam openresumes the exact thread owned by the current or named project.iam stopstops mail delivery but leaves the shared app-server running.iam stop --allstops both IAM-managed background services.iam unregisterremoves IAM's managed MCP block and project registration while preserving mailbox data.
Setup behavior
iam setup is safe to run again. It:
- Initializes the project's durable mailbox.
- Records its project directory and safety policy.
- Adds a clearly marked
mcp_servers.interagentmailblock to.codex/config.toml. - Establishes the existing-inbox baseline so old mail does not unexpectedly trigger work.
Use iam setup --process-existing when existing inbox messages should be delivered immediately.
Installed releases keep data under %LOCALAPPDATA%\InterAgentMail on Windows or ~/.local/share/interagentmail on macOS/Linux. Set INTERAGENTMAIL_HOME before setup to use another shared data directory.
Safety
New agents use workspace-write with on-request approvals. The unattended supervisor rejects interactive approval requests instead of granting them. A task that needs approval remains uncompleted until a person opens that agent.
Only for a trusted project that genuinely requires unrestricted filesystem and network access:
iam setup "C:\Projects\SecurityReviewer" --full-access
InterAgentMail is a local coordination mechanism, not an authentication boundary. Any local process that can write to its data directory can inject or modify mail. Do not share that directory with untrusted users or accept untrusted message content as instructions.
Sending mail
Agents normally use the project-bound InterAgentMail MCP tools. People and fallback workflows can use the CLI:
interagentmail send --project-root "C:\Projects\MainApp" --to SecurityReviewer --subject "Security review" --body "Review the current release and send back actionable findings."
The receiving supervisor wakes the correct Codex thread. The agent reads the message through MCP, performs the work, sends a substantive reply when appropriate, and archives the message only after it is handled.
Protocol and low-level bridge details are in SYSTEM.md. Release history is in CHANGELOG.md.
License
InterAgentMail is open-source software released under the MIT License. Use it, modify it, distribute it, and build on it. Copyright 2026 Cerberus Game Labs.
Contributions are welcome; see CONTRIBUTING.md.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cgl_interagentmail-1.1.0.tar.gz.
File metadata
- Download URL: cgl_interagentmail-1.1.0.tar.gz
- Upload date:
- Size: 37.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4758d67d8c1bb94060df52804335e35cba80d705226e6c4ee93bd36a34f421d0
|
|
| MD5 |
61cef22d5f1a080181a9c5264de07c66
|
|
| BLAKE2b-256 |
f19deb48aa7418f10402a4ca856dd4c2b55d66ce4949e5079ad91aa3be10faa5
|
Provenance
The following attestation bundles were made for cgl_interagentmail-1.1.0.tar.gz:
Publisher:
publish.yml on cerberusgamelabs/cgl-interagentmail
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cgl_interagentmail-1.1.0.tar.gz -
Subject digest:
4758d67d8c1bb94060df52804335e35cba80d705226e6c4ee93bd36a34f421d0 - Sigstore transparency entry: 2282805893
- Sigstore integration time:
-
Permalink:
cerberusgamelabs/cgl-interagentmail@5f7169e8de0fb43140d27cfe7261240ca872b421 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/cerberusgamelabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5f7169e8de0fb43140d27cfe7261240ca872b421 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file cgl_interagentmail-1.1.0-py3-none-any.whl.
File metadata
- Download URL: cgl_interagentmail-1.1.0-py3-none-any.whl
- Upload date:
- Size: 28.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c935759691c57b73e735128d1c0281cb9ccde7c3a6726573dccd6be796bc1df1
|
|
| MD5 |
88eb3a4257a730e29ccf77db71a1bfc1
|
|
| BLAKE2b-256 |
4019691dd5d64a6d2e09a37a905607b8fbacdd5a0c7316dd31822e302e967e7e
|
Provenance
The following attestation bundles were made for cgl_interagentmail-1.1.0-py3-none-any.whl:
Publisher:
publish.yml on cerberusgamelabs/cgl-interagentmail
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cgl_interagentmail-1.1.0-py3-none-any.whl -
Subject digest:
c935759691c57b73e735128d1c0281cb9ccde7c3a6726573dccd6be796bc1df1 - Sigstore transparency entry: 2282806234
- Sigstore integration time:
-
Permalink:
cerberusgamelabs/cgl-interagentmail@5f7169e8de0fb43140d27cfe7261240ca872b421 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/cerberusgamelabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5f7169e8de0fb43140d27cfe7261240ca872b421 -
Trigger Event:
workflow_dispatch
-
Statement type: