Observed since 21 Oct, 11:13 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
aimailsdk
AIMail runtime SDK (Python): gateway client, platform adapters, resources. Provisioning tools stay in the aimail repository.
AIMail (agent mail) runtime for Python hosts: gateway client, 15 mail / contact / note / board / identity tools, the inbound preprocess chain, an MCP server, and ready-made adapters for Hermes and DeerFlow.
Published as aimailsdk on PyPI (import name aimail). The wheel mirrors this
directory 1:1 and maps the repo-root resources/ to aimail/resources/, so a
repo checkout and an installed package behave the same.
| What | Files |
|---|---|
| Core (stdlib only) | aimail_base.py (identity / signature / config / register), aimail_tools.py (mail, contacts, notes, _GatewayClient), aimail_board.py (A2A board), gateway_api.py (v1 API client), _aimail_bootstrap.py (location-agnostic sys.path boot) |
| Host glue | install.py (per-host install / uninstall / check-env), hermes/ (adapter, patches, toolsets, registrar), deer-flow/ (inbound router, registrar) |
| MCP | aimail_mcp_server.py (stdio JSON-RPC) |
| Resources | resources/skills/, resources/board/role_prompt/ (seeds released at install time) |
| Entry | __init__.py — import aimail re-exports the curated API and boots the core |
pip install aimailsdk # PyPI
pip install . # from this directory
No hard third-party dependency. Optional extras: aimail[hermes] (PyYAML),
aimail[deerflow] (fastapi), aimail[docs] (markitdown).
Two entry points, both called by the aimail CLI:
python -m aimail.install install|uninstall --type hermes|deerflow --home <platform-root> [--system-id SID] (the CLI calls the
same functions through the python door).python -m aimail.sdk_ops --op <assemble|update|teardown| prompt-test|…> --args '<json>', one JSON envelope in and out. Register,
teardown and prompt work all go through this door.Host adapters never import the package path directly: each entry calls
_aimail_bootstrap(), which resolves the core directory in every layout
(site-packages, bundler copy, repo checkout).
Resources are seeds, released at install time: board prompts land in
~/.aimail/systems/{system_id}/board/ (read by both the Python and TypeScript
runtimes, so one edit applies to every platform), and skills are expanded into
each host's own skills directory (hermes: per-profile skills/).
python3 -c "import sys; sys.path.insert(0, 'pysdk'); import aimail_base"
python3 -m venv /tmp/v && /tmp/v/bin/pip install . && /tmp/v/bin/python -c "import aimail; print(aimail.core_dir())"
cli/), TypeScript SDK (tssdk/), bridge.Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
pyyamlEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | pyyaml>=6 | runtime |
fastapiEnvironment{
"extras": "",
"marker": "extra == \"deerflow\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | fastapi>=0.100; extra == "deerflow" | runtime |
markitdownEnvironment{
"extras": "",
"marker": "extra == \"docs\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | markitdown>=0.0.1; extra == "docs" | runtime |
pyyamlEnvironment{
"extras": "",
"marker": "extra == \"hermes\"",
"requires_python": ">=3.9",
"evaluation": "NOT_EVALUATED"
} | pyyaml>=6; extra == "hermes" | runtime |
bdist_wheel · 212.35 KB · Python py3
Observed since 21 Oct, 11:13 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:3f7ae3d10d19f94ef6dbd788019c3010ed56b9857a9facecc90ea1bb68c1bba4