By antfu
Maintain persistent project intent across Claude Code sessions by initializing, viewing, and updating goals, constraints, and decisions in AGENTS.md, with automatic detection of direction shifts and multi-agent request routing.
Initialize intent tracking for this project by analyzing project files and creating an Intent section in AGENTS.md
Display the current project intent from AGENTS.md
Guide the user through updating project intent — goals, constraints, decisions, and open questions
No model invocation
Executes directly as bash, bypassing the AI model
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Track project intent across AI agent sessions.
[!IMPORTANT] This package is an experiment. I don't even know if it works yet.
When working on a project across multiple agent sessions — whether in Claude Code, Cursor, Copilot, or any other AI coding tool — the agent starts each session with no understanding of what you're trying to build or why you made past decisions. You end up repeating yourself:
Existing memory tools (CLAUDE.md, .cursorrules, Memory Bank, etc.) track operational context — build commands, code patterns, conventions. None of them systematically track intent — what should happen next and why.
| Operational memory | Intent tracking | |
|---|---|---|
| Records | What happened | What should happen |
| Source of truth | Code | User's words |
| Goes stale when | Code changes | User changes their mind |
| Used for | Resuming work | Resolving ambiguity, guiding decisions |
intentracker fills this gap. It maintains a ## Intent Tracking section in your AGENTS.md with inline maintenance rules and four subsections:
The maintenance rules are written as visible markdown — not HTML comments — so any agent that reads the file knows how to keep intent up to date.
# Create AGENTS.md with intent tracking + symlink CLAUDE.md
pnpx intentracker init
# Also inject rules into your agent's config
pnpx intentracker init --agent cursor
pnpx intentracker init --agent cursor,windsurf,copilot
# Display current intent
pnpx intentracker show
Supported agents: cline, codex, copilot, cursor, windsurf
The --agent flag injects intent-awareness rules into the agent's config file (.cursorrules, .windsurfrules, .github/copilot-instructions.md, .clinerules). The AGENTS.md file itself is always created — most agents read it natively.
init also handles CLAUDE.md automatically:
CLAUDE.md doesn't exist, it creates a symlink pointing to AGENTS.md — so Claude Code loads the same intent without duplication.CLAUDE.md already exists as a real file, the intent section is injected into both files.You don't need this package at all. Just add this to your AGENTS.md:
## Intent Tracking
This section tracks project intent. When the user changes project
direction — new goals, constraints, or decisions about approach —
update the subsections below following these rules:
- **Current Goals** and **Constraints** are snapshots: rewrite to reflect current state
- **Key Decisions** is append-only: add `[YYYY-MM-DD] description` entries, never remove
- **Open Questions**: add when raised, remove when resolved (move to Key Decisions)
### Current Goals
- Build a CLI that converts markdown to PDF with custom templates
### Constraints
- No Electron — keep it lean, pure Node
- Must work on Node 18+
### Key Decisions
- [2026-04-14] Chose Puppeteer over WeasyPrint for PDF rendering
- [2026-04-15] Decided against config file — all options via CLI flags
### Open Questions
- Should --watch use chokidar or fs.watch?
The inline rules tell any agent how to maintain the section. The CLI just scaffolds this for you.
For Claude Code users, the plugin provides automatic hooks that load intent on session start and reconcile it before commits — no manual maintenance needed.
Install via the Claude Code plugin system:
/plugin marketplace add antfu/intentracker
/plugin install intentracker@intentracker
Commands:
/intent:show — Display current intent/intent:update — Guided intent update/intent:init — Initialize intent trackingHooks:
intentracker complements existing memory systems — it doesn't replace them:
.cursorrules / .windsurfrules handles behavioral instructionsSkill providing Vue.js framework knowledge and best practices. Helps developers understand Vue ecosystem, component patterns, and modern conventions.
Consult multiple AI coding agents (Gemini, OpenAI, Grok, Perplexity, plus codex and antigravity CLIs when installed) to get diverse perspectives on coding problems
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.
Comprehensive startup business analysis with market sizing (TAM/SAM/SOM), financial modeling, team planning, and strategic research
Permanent coding companion for Claude Code — survives any update. MCP-based terminal pet with ASCII art, stats, reactions, and personality.
Complete creative writing suite with 10 specialized agents covering the full writing process: research gathering, character development, story architecture, world-building, dialogue coaching, editing/review, outlining, content strategy, believability auditing, and prose style/voice analysis. Includes genre-specific guides, templates, and quality checklists.
npx claudepluginhub antfu/intentracker --plugin intentracker