Packages
Choose a package by responsibility. All 14 members share this repository and uv lockfile, but each has its own version, tests and documentation.
| Package | Responsibility | Quality |
|---|---|---|
| axm | Core SDK (AXMTool, ToolResult, tool_node) and generic CLI |
|
| axm-mcp | MCP server, tool catalog, facade and transports |
|
| axm-ast | Read-only structural analysis with tree-sitter |
|
| axm-anvil | Python symbol move, rename and extraction |
|
| axm-edit | Batch edits, checkpoints and filesystem tools |
|
| axm-audit | Quality rules, test execution and test refactoring |
|
| axm-init | Scaffolding and project governance checks |
|
| axm-git | Git commits, branches, worktrees and release operations |
|
| axm-echo | Code similarity and reuse-candidate retrieval |
|
| axm-smelt | Text compaction and token measurement |
|
| axm-ingot | Dependency-free shared Python helpers |
|
| axm-config | Non-sensitive configuration and runtime paths |
|
| axm-vault | Credential catalog and secret resolution |
|
| axm-doctor | Environment/bootstrap and authentication diagnostics |
Choose an interface
- Python: install the package whose public API you need. Start at its reference; internal modules are not automatically a stable contract.
- CLI: installed
axm.toolsproviders are discovered by theaxmexecutable. Some packages also have dedicated commands; consult their CLI reference rather than deriving a command from the package name. - MCP: run axm-mcp in the same environment as the providers. The facade catalog can contain more tools than the direct MCP tool list.
- DAG: tool_node adapts registered tools. The DAG runtime and graph-authoring packages are outside Forge.
axm-ingot is a library with no tool entry points.
axm provides the SDK and CLI; axm-mcp provides the server and its
meta-tools rather than an axm.tools provider.
Architecture
Start with the workspace boundaries. For JS/TS projects, use the Node/Svelte support overview; Python runtime requirements and target-language support are separate concerns.