Deterministic agent-management framework that implements FRAME governance for AI-assisted software development.
Project description
Haxaml
Haxaml is a deterministic project-governance framework for AI coding workflows.
MCP first. CLI second.
It gives agents one shared source of truth called FRAME so context does not drift across tools.
What it does
- keeps project truth in structured FRAME files
- validates that structure before work starts
- tracks runs, decisions, risks, and completed work
- exports clean agent-ready prompt files from FRAME
- exposes MCP tools so IDE agents can call governance directly
FRAME at a glance
| File | Purpose |
|---|---|
.haxaml/facts.yaml |
project truth |
.haxaml/rules.yaml |
how agents should work |
.haxaml/acts.yaml |
task diary and decisions |
.haxaml/expect.yaml |
expected next runs |
.haxaml/map.yaml |
optional module ownership + impact map |
Install
pip install haxaml
or with uv tools:
uv tool install haxaml
uv tool install haxaml-mcp
Quick start
haxaml init
haxaml validate
haxaml context --tokens
haxaml export
Default export writes HAXAML.md.
MCP-first lifecycle flow:
haxaml guidance --task "implement auth module"
haxaml session-start --task "implement auth module"
haxaml session-plan --session-id <id>
haxaml context-pack --task "implement auth module"
haxaml verify --task "implement auth module" --summary "what changed"
haxaml session-record --task "implement auth module" --result success
Adoption/reconcile flow for existing repos:
haxaml adopt-plan --dir .
haxaml reconcile --dir .
haxaml validate --dir .
Optional agent-specific exports:
haxaml export --agent claude
haxaml export --agent codex
haxaml export --agent copilot
haxaml export --agent cursor
haxaml export --agent windsurf
haxaml export --agent gemini
Safe preview before writing:
haxaml export --dry-run --diff-preview --target CLAUDE.md
MCP setup (recommended)
Use uvx in your MCP client config:
{
"mcpServers": {
"haxaml": {
"command": "uvx",
"args": ["haxaml-mcp"],
"env": {
"HAXAML_PROJECT_DIR": "/path/to/project"
}
}
}
}
You can also generate project-local bootstrap config with:
haxaml mcp-bootstrap --mode write --editor generic
Upgrade
haxaml upgrade
Pin a specific version:
haxaml upgrade --to 0.4.2
Why FRAME even when markdown can be smaller?
In some fixtures, raw markdown is smaller than YAML. That is normal.
Haxaml is not only about raw token count. The value is deterministic governance:
- validation gates
- compact compiled exports
- explicit decisions and risks
- stable multi-agent handoff
Docs
- MCP.md for MCP tool contracts, lifecycle, and structured response shapes.
- ADVANCED.md for deeper command reference and export behavior.
- LONGTERM.md for roadmap and major-version direction.
CHANGELOG.mdfor release notes and migration notes.
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 haxaml-0.4.2.tar.gz.
File metadata
- Download URL: haxaml-0.4.2.tar.gz
- Upload date:
- Size: 93.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35f99ec8cbaf688d7330856415630dd3d2a09fa17938fabb7f79ed6b22b593d8
|
|
| MD5 |
3bda9e0d1f2438f14ee7fe6e7e437832
|
|
| BLAKE2b-256 |
2b3040b46a2dac59ffc10b05b19f8bbae99d55cfc95b0dd67d70f32d5b2081ab
|
File details
Details for the file haxaml-0.4.2-py3-none-any.whl.
File metadata
- Download URL: haxaml-0.4.2-py3-none-any.whl
- Upload date:
- Size: 83.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ce60b367d061568680e3477af5ea99e574432dcc8d602caa3848e3deeba9889
|
|
| MD5 |
9fab83e99438f5d2033311f43698b3ee
|
|
| BLAKE2b-256 |
598a8edf22f07f4842c712b4740bc411250f62cd7896a4b830a25a0eaebbc95f
|