Skip to main content

Attune AI

Persistent memory and receipt-verified workflows for Claude Code.

🌐 Docs & guides: attune-ai.dev

PyPI Downloads Downloads/month Downloads/week Tests Coverage Security Python License


Your agent stops starting from zero, its word stops being the evidence, and it asks you with structure instead of prose.

Memory: a stash → recall → promote loop carries decisions, bugs, and hard-won lessons from one session into the next, and surfaces the right lesson at the exact moment a prompt needs it. Local-first, from a plain pip install attune-ai. Recall loads a few hundred exactly-relevant tokens instead of your whole corpus — 67× fewer tokens on our own 800+ lesson store, retrieved at P@3 96% on a frozen benchmark (details).

Receipts: state the outcome you want and how to verify it, and get back a receipt — not a promise:

attune fix "imports resolve after the rename" \
  --scope src/attune/cli_minimal.py \
  --probe "pytest tests/unit/test_cli_minimal.py" \
  --run

The probes are re-run independently of the workflow that claims it finished. Exit 0 means the probes passed — not that the agent felt good about it.

Interactive forms: the agent asks with structure, not prose — a decision card with its recommendation and tradeoffs, a pushback card when it disagrees, a progress report, a ranking or triage — one tap each, validated on the way back. One form renders to whatever surface your client draws: a native dialog, a rich widget, or a plain menu (the vocabulary).

Around that core: 21 workflows and 61 MCP tools dispatching 2–6 domain-specific subagents behind Socratic quality gates, RAG grounding with a citation-per-claim contract, and generation fact-checking — one install, one MCP server. We run our own knowledge base on it: the docs and 800+ engineering lessons at attune-ai.dev are authored, grounded, and maintained by Attune's own stack.

Contents: Install · Costs · Memory · Receipts · Multi-LLM · Workflows & tools · Forms · Accuracy · Install options · Privacy


Get Started in 60 Seconds

Plugin (works standalone)

claude plugin marketplace add Smart-AI-Memory/attune-ai
claude plugin install attune-ai@attune-ai

Then say "what can attune do?" in Claude Code.

Add the Python package (unlocks CLI + MCP)

pip install attune-ai
attune            # shows your next steps

Then check your setup with attune validate and run your first workflow: attune workflow run code-review --path src/.

Setup fight you? Tell me where — I'm actively fixing this.

What each layer adds

Capability Plugin only Plugin + pip
28 auto-triggering skills Yes Yes
Security hooks Yes Yes
Prompt-based analysis Yes Yes
61 MCP tools -- Yes
attune CLI + multi-agent workflows -- Yes
Ops dashboard (attune ops) — run history, cost tiles, telemetry -- Yes

What this costs

How you run it What it costs
Plugin in Claude Code (skills, hooks, forms) Your Claude subscription. No API key, no extra charge.
attune CLI + MCP tools Direct Anthropic API calls — needs ANTHROPIC_API_KEY with API credits.

The one thing people get wrong: a Claude Pro/Max subscription does not include API credits — they are separate products. If you only use the plugin, this never comes up. Free on either path (they never call a model): elicitation forms, security hooks, path validation, memory storage and recall, and every local transform.


New in 13.0.0 — correctness you can trust under failure

The code paths that only matter when something goes wrong got a library-wide review. Memory writes that reported success without landing now actually persist or surface the failure; telemetry and security-gate state a single malformed record could corrupt are locked down; external input that could crash a parse now degrades instead. Shared stores (AgentStateStore, ComplianceDatabase) write atomically under a lock. And agents gain interactive forms — richer than yes/no: a decision card with per-option tradeoffs, a pushback card for disagreement, progress reports, plus ranking, triage, and more, each rendered to whatever surface your client supports — a native dialog, an HTML widget, or multiple-choice (via attune-forms 0.7.0). The major bump is the removal of the dormant in-package hook-execution engine — dead code with no live caller (the hooks Claude Code runs are unchanged); the memory-durability and schema changes alter observable behavior, so check the CHANGELOG's migration notes if you depend on them.


The memory suite — measured

Stash on stop. Recall at the door. Promote what endures.

  • Stash — a Stop hook extracts decisions, bugs, and references from the session and writes them to the memory store (local file by default, Redis Agent Memory Server when reachable).
  • Recall — a SessionStart hook surfaces the most recent findings for your project; /recall <topic> searches on demand.
  • Promote — a reviewed stash→curated path lands git-tracked .md files in your corpus. Files are the store; Redis serves them.
  • Lessons at the trap moment — hooks retrieve the exact lesson a prompt or tool call needs, budget-capped no matter how large the corpus grows.

Memory is local-first — nothing leaves your machine, and without Redis everything degrades to the file backend with clear guidance. The economics are measured, not promised (2026-07-05 snapshot; ratios improve as the corpus grows):

Memory-suite recall Instead of loading You load Win
Trap-moment lessons 202,042 tok (583 lessons) ≤3,000 tok 67× fewer tokens
SessionStart digest 16 corpus files (4.6 ms) one Redis call (0.6 ms) ~7× faster

Numbers from benchmarks/memory_savings.py on our dogfood store.


Receipts, not promises

If you know acceptance-test-driven development, this is that rebuilt for agent workflows: acceptance probes are declared up front, and the agent's own word is never the evidence.

  • Fix Receipts (attune fix) — outcome-first fixing. Preview a contract (done conditions, constraints, probes) with nothing executing; add --run for an attributed diff whose probes are re-run independently. Exit 0 only when the probes pass.
  • Spec Ladders (/spec) — goal-driven specs you approve rung by rung: requirements, design, and a gated task ladder, every ruling recorded in a decision file that outlives the session.
  • Guided intakes/fix and /spec compose their contracts through a form: goal pre-filled, scope picker from paths you've touched, probe suggestions from matching tests.
  • Receipts all the way down — a failed or absent security auditor fails the Security gate; spec-closure claims draw a rotating skeptic seat; risk-class diffs authored by the lead model are reviewed by a different model before promotion.

Multi-LLM collaboration

As of 10.6.0, attune treats Claude Code, OpenAI Codex, and Google Antigravity as seats at the same table — with the discipline that a claim without a receipt doesn't ship:

  • /roundtable — the three models deliberate a question on a Redis-backed board; you chair what gets promoted.
  • /cross-review — an advisory second opinion on a real diff from a different model than the one that wrote it.
  • Cross-provider handoff + shared session memory — portable resume briefs and a provider-neutral stash/recall surface with a PII/secrets gate that redacts at rest and fails closed.
  • A projected collaboration contract — one master file projects to AGENTS.md and per-provider mirrors.

Codex installs the same plugin from its marketplace (codex plugin install attune-ai@attune-ai); Antigravity connects over MCP. The 10.6.1 release exists because a cross-provider receipt probe caught a protocol bug the primary client silently tolerated.


Workflows and MCP tools

Skills trigger from natural language — "review my code", "scan for vulns", "generate tests", "plan this feature" — and every workflow dispatches 2–6 subagents (Opus for deep reasoning, Sonnet for analysis, Haiku for fast scanning), synthesized by an orchestrator. Ready-made Claude Code subagents (security-reviewer, spec-author, refactor-planner, …) appear in your /agents list on install.

All 21 workflows
Workflow Agents What It Does
code-review security, quality, perf, architect 4-perspective code review
security-audit vuln-scanner, secret-detector, auth-reviewer, remediation Finds vulnerabilities and generates fix plans
deep-review security, quality, test-gap Multi-pass deep analysis
perf-audit complexity, bottleneck, optimization Identifies bottlenecks and O(n²) patterns
bug-predict pattern-scanner, risk-correlator, prevention Predicts likely failure points
health-check dynamic team (2–6) Project health across tests, deps, lint, CI, docs, security
test-gen identifier, designer, writer Writes pytest code for untested functions
test-audit coverage, gap-analyzer, planner Audits coverage and prioritizes gaps
doc-gen outline, content, polish Generates documentation from source
doc-audit staleness, accuracy, gap-finder Finds stale docs and drift
dependency-check inventory, update-advisor Audits outdated packages and advisories
refactor-plan debt-scanner, impact, plan-generator Plans large-scale refactors
simplify-code complexity, simplification, safety Proposes simplifications with safety review
release-prep health, security, changelog, assessor Go/no-go readiness check
release-gate parallel agent team (4 stages) Release readiness assessment / go-no-go gate
release-notes agent-prep Drafts release notes + LLM readiness advice
doc-orchestrator inventory, outline, content, polish Full-project documentation
secure-release security, health, dep-auditor, gater Release pipeline with risk scoring
research-synthesis summarizer, pattern-analyst, writer Multi-source research synthesis
discovery-sweep pattern-scanner, verifier Repo-wide bug-pattern sweep with verification
rag-code-gen retriever, generator Citation-forced code generation grounded in the local corpus
orchestrated-health-check dynamic team health-check with explicit meta-orchestration
fix agent-fix Minimal in-place fix within a contract's scope, verified by a receipt
All 61 MCP tools — 50 core in 7 categories, plus 11 memory tools registered by the bundled Redis plugin

Workflow (22): security_audit code_review bug_predict discovery_sweep performance_audit refactor_plan simplify_code deep_review test_generation test_audit test_gen_parallel doc_gen doc_audit doc_orchestrator release_notes health_check dependency_check secure_release research_synthesis analyze_batch analyze_image rag_knowledge_query

Help (5): help_lookup help_init help_status help_update help_maintain

Memory (4): memory_store memory_retrieve memory_search memory_forget

Personal Memory (4): personal_memory_capture personal_memory_recall personal_memory_topics personal_memory_forget

Utility (8): auth_status auth_recommend telemetry_stats context_get context_set attune_get_level attune_set_level list_capabilities

Elicitation (5): elicitation_ask elicitation_render_form elicitation_collect_response elicitation_render_widget chart_render_widget

Handoff (2): handoff_create handoff_resume

Redis memory (11): session_memory_*, redis_memory_*, redis_health_check


Interactive forms — the agent asks with structure

Agent↔you exchanges are interactive forms, not prose Q&A. The agent presents a decision with its recommendation, rationale, and per-option tradeoffs; disagrees through a pushback card (your approach vs. its alternative, side by side); reports progress as done / in-flight / blocked; and has you rank, triage, confirm, deliberate, or review its assumptions — one tap each. Every question is validated on the way back, so a malformed answer is re-asked, not silently accepted.

One declarative form, written once, renders to the richest surface your client supports — a native dialog, a rich HTML widget, or a plain multiple-choice menu on a text-only surface — so the same question works everywhere and degrades gracefully. The full construct vocabulary ships via attune-forms 0.7.0 (new in 13.0.0). Chart specs render through the same sealed SVG kernel (chart_render_widget, nine chart types).


Accuracy & Faithfulness

RAG generation enforces citation-per-claim: 0.98 mean per-claim faithfulness, CI-gated at ≥ 0.97 (40-query golden set, N=20 runs). The contract was chosen by A/B measurement — the per-query hallucination bucket rate dropped from 46.7% to 6.7% with it (methodology). Retrieved passages are sentinel-wrapped against prompt injection. The help resolver passes 48/48 benchmark queries at P@1 (golden set).


Installation Options

pip install attune-ai works out of the box — the CLI, all workflows, the MCP server, RAG (attune-rag and attune-verify are core dependencies), cross-session memory, and the Agent SDK. Memory features activate when a Redis Stack server is reachable and degrade with guidance when not. Add extras only for the surfaces you use:

You want Install
Everything most users need, incl. Redis memory pip install attune-ai
Claude API mode + optional LangChain/LangGraph interop adapters pip install 'attune-ai[developer]'
The ops dashboard (attune ops) pip install 'attune-ai[ops]'

Extras combine — pip install 'attune-ai[developer,ops]'. Keep the quotes: zsh and bash treat square brackets as glob characters.

Contributing? Clone and install the dev toolchain instead:

git clone https://github.com/Smart-AI-Memory/attune-ai.git
cd attune-ai && pip install -e '.[dev]'

API mode

The CLI and MCP tools call the Anthropic API directly (the plugin never needs this):

export ANTHROPIC_API_KEY="sk-ant-..."      # requires API credits
export REDIS_URL="redis://localhost:6379"  # optional

Model routing assigns Opus/Sonnet/Haiku by task complexity (ATTUNE_AGENT_MODEL_* to override); depth budgets run $0.50 / $2.00 / $5.00 (ATTUNE_MAX_BUDGET_USD to override); --cheap forces pattern-matching workflows onto Haiku. Live spend tiles on the dashboard (attune ops).

Platform support
Platform Support
macOS / Linux / WSL2 Full
Windows native + Git Bash Supported (Bash tool, POSIX-ish syntax)
Windows native + PowerShell tool Limited — security validation fails closed

Redis has no native Windows build — use Docker (docker run -d -p 6379:6379 redis:7-alpine). Without reachable Redis, memory degrades gracefully to the file backend and attune.memory.session_stash.backend_status() reports fallback: true.


Ecosystem

Package Role Install
attune-ai Developer workflow hub (this package) pip install attune-ai
attune-rag RAG pipeline (core dep) bundled
attune-verify Generation fact-checker (core dep) bundled
attune.authoring Help authoring + staleness detection (absorbed the former attune-author package in 11.0.0) bundled
attune-help Progressive-depth template runtime pip install attune-help

Security, Privacy & Telemetry

Path traversal protection on all file ops, a PreToolUse guard that blocks eval/exec, MCP rate limiting, prompt sanitization, and automated scanning (CodeQL, bandit, detect-secrets) — details in SECURITY.md.

Usage data is local-first. An opt-in, anonymous usage ping (OFF by default) carries only package, version, workflow name, OS, Python version, a resettable anonymous id, and a timestamp — never paths, code, prompts, or filenames; the payload is frozen in source and guarded by a regression test. attune telemetry status|enable|disable; DO_NOT_TRACK=1 always wins.


Links

Apache License 2.0 — Free and open source.

If you find Attune useful, give it a star — it helps others discover the project.

Acknowledgments

  • Anthropic — For Claude AI, the Model Context Protocol, and the Agent SDK patterns behind the multi-agent orchestration layer
  • Boris Cherny — Creator of Claude Code, whose workflow posts validated Attune's plan-first, multi-agent approach
  • Affaan Mustafa — For battle-tested Claude Code configurations that inspired the hook system

View Full Acknowledgements


Built by Patrick Roebuck using Claude Code.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

attune_ai-13.0.2.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

attune_ai-13.0.2-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file attune_ai-13.0.2.tar.gz.

File metadata

  • Download URL: attune_ai-13.0.2.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for attune_ai-13.0.2.tar.gz
Algorithm Hash digest
SHA256 6ca1dcc4dee2dd2a7f9d6e7f38932913b3a2eae96c9686a5258c13f89b4b10d7
MD5 01f9147cef828eb94cd98135224a6dbd
BLAKE2b-256 15cd5c3f9ed22639b8327d970092975f3a8eb1b442efc2e11ea0374ba0d9d74a

See more details on using hashes here.

Provenance

The following attestation bundles were made for attune_ai-13.0.2.tar.gz:

Publisher: publish-pypi.yml on Smart-AI-Memory/attune-ai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file attune_ai-13.0.2-py3-none-any.whl.

File metadata

  • Download URL: attune_ai-13.0.2-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for attune_ai-13.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6259ba0f389ceeb9bca793798b0110c14481b52055175c5aa04dc616b839d690
MD5 48f527c23b0504414ea9c87ef9f31182
BLAKE2b-256 22eea0a1912a425a525ee3caebda2788b73c920e14c431d08ddc3d62b8132f20

See more details on using hashes here.

Provenance

The following attestation bundles were made for attune_ai-13.0.2-py3-none-any.whl:

Publisher: publish-pypi.yml on Smart-AI-Memory/attune-ai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

14.1.0

2 files

14.0.0

2 files

This release

13.0.2 This release

2 files

13.0.1

2 files

13.0.0

2 files

12.0.0

2 files

11.6.0

2 files

11.5.0

2 files

11.4.0

2 files

11.3.0

2 files

11.2.1

2 files

11.2.0

2 files

11.1.0

2 files

11.0.0

2 files

10.6.1

2 files

10.6.0

2 files

10.5.0

2 files

10.4.1

2 files

10.4.0

2 files

10.3.0

2 files

10.2.0

2 files

10.1.0

2 files

10.0.2

2 files

10.0.1

2 files

10.0.0

2 files

9.7.1

2 files

9.7.0

2 files

9.6.0

2 files

9.5.0

2 files

9.4.1

2 files

9.4.0

2 files

9.3.0

2 files

9.2.0

2 files

9.1.0

2 files

9.0.0

2 files

8.10.0

2 files

8.9.2

2 files

8.9.1

2 files

8.9.0

2 files

8.8.0

2 files

8.7.1

2 files

8.7.0

2 files

8.6.2

2 files

8.6.1

2 files

8.6.0

2 files

8.5.0

2 files

8.4.0

2 files

8.3.0

2 files

8.2.0

2 files

8.1.1

2 files

8.1.0

2 files

8.0.1

2 files

8.0.0

2 files

7.4.0

2 files

7.3.1

2 files

7.3.0

2 files

7.2.0

2 files

7.1.2

2 files

7.1.1

2 files

7.1.0

2 files

7.0.0

2 files

6.8.0

2 files

6.7.1

2 files

6.7.0

2 files

6.6.0

2 files

6.5.5

2 files

6.5.4

2 files

6.5.3

2 files

6.5.1

2 files

6.5.0

2 files

6.4.1

2 files

6.4.0

2 files

6.3.0

2 files

6.2.0

2 files

6.1.0

2 files

6.0.0

2 files

5.10.2

2 files

5.10.1

2 files

5.9.0

2 files

5.8.1

2 files

5.8.0

2 files

5.7.0

2 files

5.6.0

2 files

5.5.0

2 files

5.4.0

2 files

5.3.2

2 files

5.3.1

2 files

5.3.0

2 files

5.2.2

2 files

5.2.1

2 files

5.2.0

2 files

5.1.6

2 files

5.1.5

2 files

5.1.4

2 files

5.1.3

2 files

5.1.2

2 files

5.1.1

2 files

5.1.0

2 files

5.0.3

2 files

5.0.2

2 files

5.0.1

2 files

5.0.0

2 files

4.1.1

2 files

4.1.0

2 files

4.0.3

2 files

4.0.2

2 files

4.0.1

2 files

4.0.0

2 files

3.9.3

2 files

3.9.2

2 files

3.9.1

2 files

3.9.0

2 files

3.8.0

2 files

3.7.0

2 files

3.6.6

2 files

3.6.5

2 files

3.6.4

2 files

3.6.3

2 files

3.6.2

2 files

3.6.1

2 files

3.6.0

2 files

3.5.0

2 files

3.4.1

2 files

3.4.0

2 files

3.3.1

2 files

3.3.0

2 files

3.2.0

2 files

3.1.2

2 files

3.1.1

2 files

3.1.0

2 files

3.0.5

2 files

3.0.4

2 files

3.0.3

2 files

3.0.2

2 files

3.0.1

2 files

3.0.0

2 files

2.10.4

2.10.2

2 files

2.10.1

2 files

2.10.0

2 files

2.9.1

2 files

2.9.0

2 files

2.8.1

2 files

2.8.0

2 files

2.7.3

2 files

2.7.2

2 files

2.7.1

2 files

2.7.0

2 files

2.6.3

2 files

2.6.2

2 files

2.6.1

2 files

2.6.0

2 files

2.5.1

2 files

2.5.0

2 files

2.4.1

2 files

2.4.0

2 files

2.3.4

2 files

2.3.3

2 files

2.3.2

2 files

2.3.1

2 files

2.3.0

2 files

2.2.1

2 files

2.2.0

2 files

2.1.5

2 files

2.1.4

2 files

2.1.3

2 files

2.1.2

2 files

2.1.1

2 files

2.1.0

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page