Developer tools for the AXM ecosystem.
AXM Forge is the developer toolchain for the AXM ecosystem — every tool returns structured, deterministic output built for AI agents, not text to parse. Arrive with a problem, leave with the exact tool to call.
| You want to… | Use |
|---|---|
| Quality-gate a package — lint, types, complexity, security, all in one call | verify |
| Re-check one dimension (lint, types, security…) during a fix loop | audit |
| Run tests with structured pass/fail output | audit_test |
| Edit many files atomically — all of it lands or none of it does | batch_edit |
| Commit with auto-staging + conventional-commit enforcement | git_commit |
| Get an overview of an unfamiliar project | ast_context |
| Find a symbol across the codebase (no grep noise) | ast_search |
| Inspect a symbol — signature, body, docstring | ast_inspect |
| Know who calls a function before you change it | ast_callers |
| Measure the blast radius of a change | ast_impact |
| Scaffold a package that passes every quality gate from day one | init_scaffold |
| Find duplicate code / check a helper already exists before writing it | echo_code |
…and 35+ more — CST refactoring (
ast_move), token compaction (smelt), the full git workflow (git_pr,git_tag,git_worktree…), dead-code and flow analysis, and more. Browse them per package below or in the docs.
| Package | Description | Version | Quality |
|---|---|---|---|
| axm | AXM CLI — thin autodiscovery wrapper for the ecosystem | ||
| axm-mcp | MCP Server — runtime tool discovery and execution | ||
| axm-init | Python project scaffolding CLI with Copier templates | ||
| axm-audit | Code auditing and quality rules for Python projects | ||
| axm-ast | AST introspection CLI for AI agents, powered by tree-sitter | ||
| axm-git | Git workflow automation for AXM agents | ||
| axm-edit | Atomic batch file editing for AI agents | ||
| axm-anvil | Deterministic CST-based refactoring toolkit — move, rename, split, merge symbols atomically | ||
| axm-smelt | Deterministic token compaction for LLM inputs | ||
| axm-echo | Neural similarity detection — cross-package dedup and upstream-reuse retrieval | ||
| axm-ingot | Shared helper library — common code factored out and tested once, reused across packages |
Connect the whole AXM toolchain to your MCP client (Claude Code, IDE…) in one
command — uvx fetches it on demand, no manual install:
claude mcp add --scope user axm-mcp -- uvx --python 3.12 --from "axm-mcp[all]@latest" axm-mcp--scope user installs it globally (available in every session). Drop it to enable AXM per-project instead — the server then loads only in the directory where you run the command.
This exposes verify, audit, the ast_* family, git_commit, batch_edit,
and the rest as MCP tools. See the axm-mcp Quick Start
for the .mcp.json form and the advanced persistent-HTTP setup.
Want a single tool on the CLI instead? Each package ships standalone, e.g.
uv add axm-audit then axm-audit.
# Clone and install
git clone https://github.com/axm-protocols/axm-forge.git
cd axm-forge
uv sync --all-groups
# Run all tests
make test-all
# Lint + type check
make lint
# Full quality gate
make checkgraph TD
classDef ast fill:#5C6BC0,stroke:#3949AB
classDef audit fill:#42A5F5,stroke:#1E88E5
classDef init fill:#26C6DA,stroke:#00ACC1
classDef git fill:#78909C,stroke:#546E7A
classDef smelt fill:#FFA726,stroke:#FB8C00
classDef anvil fill:#EF5350,stroke:#E53935
classDef edit fill:#AB47BC,stroke:#8E24AA
classDef axm fill:#66BB6A,stroke:#43A047
classDef mcp fill:#8D6E63,stroke:#6D4C41
classDef ingot fill:#BDBDBD,stroke:#757575
classDef echo fill:#EC407A,stroke:#D81B60
AXM["axm<br/>Core SDK + ToolResult"]:::axm
INGOT["axm-ingot<br/>Shared helper library"]:::ingot
MCP["axm-mcp<br/>MCP Server"]:::mcp --> AXM
AST["axm-ast<br/>AST introspection"]:::ast --> AXM
AUDIT["axm-audit<br/>Code auditing"]:::audit --> AST
AUDIT --> ANVIL
INIT["axm-init<br/>Scaffolding"]:::init --> AXM
GIT["axm-git<br/>Git automation"]:::git --> AXM
SMELT["axm-smelt<br/>Token compaction"]:::smelt --> AXM
ANVIL["axm-anvil<br/>CST refactoring"]:::anvil --> EDIT
EDIT["axm-edit<br/>Batch file editing"]:::edit --> AXM
ECHO["axm-echo<br/>Neural similarity"]:::echo --> AST
ECHO --> AXM
AUDIT --> ECHO
AST --> INGOT
AUDIT --> INGOT
INIT --> INGOT
ANVIL --> INGOT
ECHO --> INGOT
Each package is independently versioned with prefixed tags (anvil/v*, ast/v*, audit/v*, echo/v*, edit/v*, init/v*, git/v*, smelt/v*).
| Command | Description |
|---|---|
make test-all |
Run tests for all packages |
make lint |
Ruff + mypy for all packages |
make check |
Lint + tests |
make axm-audit |
Run axm-audit on each package |
make axm-init |
Run axm-init check on each package |
make quality |
Full AXM quality gate (pre-push) |
make docs-serve |
Preview documentation |
Apache 2.0 — see LICENSE for details.
