Hoofy

by hendryavila

Not rated
GitHub

About

Your AI development companion. An MCP server that gives your AI persistent memory, structured specifications, and adaptive change management — so it builds what you actually want.

Details

Author
hendryavila
Categories
Developer Tools, AI

Setup

Install Hoofy in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/hendryavila/Hoofy

Follow the installation instructions in the repository README, then restart your MCP client.

What Is Hoofy? — AI Development Companion for MCP

Hoofy solves three recurring AI-dev problems:memory loss between sessions,hallucinated implementations, andunstructured workflows. It's a single](https://github.com/HendryAvila/Hoofy/blob/main/docs/research-foundations.md)MCP (Model Context Protocol)server written in Go — one binary, zero external runtime dependencies.

- New project→ run the full project pipeline (sdd_init_project→... →sdd_validate)
- Existing project, adding/fixing something→ start withsdd_change
- Existing project with no specs yetsdd_reverse_engineer+sdd_bootstrap
- Just need context/review quicklysdd_suggest_context,sdd_review,sdd_audit

- Principles-first pipeline— define non-negotiables before requirements.
- Clarity Gate— blocks vague specs before implementation starts.
- Context-check on every change— catches conflicts early.
- Spec-aware review/audit— compare code against requirements and rules.
- Persistent memory + knowledge graph— decisions and fixes remain searchable.
- Hot/cold instructions— lightweight core instructions + on-demand guides.See full feature details
- Project Charter— The old "proposal" stage is now acharterwith domain context, stakeholders, vision, boundaries, success criteria, existing systems, and constraints.
- Spec-vs-Code Auditsdd_auditcompares specifications against source code to detect missing implementations and drift.
- Auto-Generated Agent Instructionssdd_init_projectinjects SDD instructions into CLAUDE.md/AGENTS.md (idempotent).
- Unified ADR Storage— ADRs are always written todocs/adrs/NNN-slug.md.
- Spec-Aware Code Reviewsdd_reviewgenerates a checklist tied to FR/NFR/business rules/ADRs.
- Ad-Hoc Context Suggestionsdd_suggest_contextrecommends what to read before implementation.
- Existing Project Bootstrapsdd_reverse_engineer+sdd_bootstrapcreate missing artifacts for legacy codebases.
- Knowledge Graph— relate observations with typed edges (depends_on,caused_by,implements, etc.).
- Facade-First Tooling— unified memory entry points:mem_saveandmem_session.
- Business Rules Stage— BRG + DDD extraction before Clarity Gate.
- Pre-pipeline Explorationsdd_explorecaptures goals/constraints/unknowns before formal pipeline work.
- Wave Assignments— task dependency waves for parallel execution planning.

Decision: "Switched to JWT" →(caused_by)→ Discovery: "Session storage doesn't scale" ↑(implements) ↑(relates_to) Bugfix: "Fixed token expiry" Pattern: "Retry with backoff"

AI coding assistants are powerful but forgetful and overconfident. Studies show experienced developers are19% slower with unstructured AI(METR 2025), and AI adoption without structure causes7.2% delivery instability(DORA 2025). Hoofy fixes this by making your AI remember context, follow specifications, and validate understanding before coding.

flowchart TB explore["sdd_explore\n(goals, constraints, unknowns)"] subgraph project ["New Project (greenfield)"] direction LR P1[Init] --> P1b[Principles] --> P2[Charter] --> P3[Requirements] --> P3b["Business\nRules"] P3b --> P4{Clarity Gate} P4 -->|Ambiguous| P3 P4 -->|Clear| P5[Design] --> P6[Tasks] --> P7[Validate] end subgraph bootstrap ["Existing Project (no specs)"] direction LR B1["sdd_reverse_engineer\n(scan codebase)"] --> B2["AI analyzes\nreport"] --> B3["sdd_bootstrap\n(write artifacts)"] end subgraph change ["Existing Project (changes)"] direction LR C1["sdd_change\n(type × size)"] --> C1b["Context\nCheck"] C1b --> C2["Opening Stage\n(describe/charter/scope)"] C2 --> C3["Spec + Design\n(if needed)"] C3 --> C4[Tasks] --> C5[Verify] end subgraph memory ["Memory (always active)"] direction LR M1["mem_session(action=start)"] --> M2["Work + mem_save"] M2 --> M3["Connect with Relations"] M3 --> M4["mem_session(action=end, summary)"] end explore -.->|"captures context before"| project explore -.->|"captures context before"| change bootstrap -.->|"enables"| change style explore fill:#8b5cf6,stroke:#7c3aed,color:#fff style P4 fill:#f59e0b,stroke:#d97706,color:#000 style P1b fill:#e879f9,stroke:#c026d3,color:#000 style P3b fill:#e879f9,stroke:#c026d3,color:#000 style C1b fill:#e879f9,stroke:#c026d3,color:#000 style B1 fill:#06b6d4,stroke:#0891b2,color:#fff style B3 fill:#06b6d4,stroke:#0891b2,color:#fff style P7 fill:#10b981,stroke:#059669,color:#fff style C5 fill:#10b981,stroke:#059669,color:#fff

Full workflow guide with step-by-step examples·Complete tool reference

curl -sSL https://raw.githubusercontent.com/HendryAvila/Hoofy/main/install.sh | bash
irm https://raw.githubusercontent.com/HendryAvila/Hoofy/main/install.ps1 | iex
# Go install (requires Go 1.25+) go install github.com/HendryAvila/Hoofy/cmd/hoofy@latest # Or build from source git clone https://github.com/HendryAvila/Hoofy.git cd Hoofy make build

MCP Server vs Plugin — what's the difference?

TheMCP serveris Hoofy itself — the binary you just installed. It provides memory, change pipeline, project pipeline, bootstrap, and standalone tooling through MCP and works withanyMCP-compatible AI tool.

ThePluginis a Claude Code-only enhancement that layers additional capabilities on top of the MCP server:

The plugin is optional — you get full Hoofy functionality with just the MCP server. The plugin just makes the experience smoother in Claude Code.

claude mcp add --scope user hoofy hoofy serve

Plugin(optional, Claude Code only) — adds agent + skills + hooks on top of the MCP server:

/plugin marketplace add HendryAvila/hoofy-plugins /plugin install hoofy@hoofy-plugins
{ "mcpServers": { "hoofy": { "command": "hoofy", "args": ["serve"] } } }
{ "servers": { "hoofy": { "type": "stdio", "command": "hoofy", "args": ["serve"] } } }

Add to~/.config/opencode/opencode.jsoninside the"mcp"key:

{ "mcp": { "hoofy": { "type": "local", "command": ["hoofy", "serve"], "enabled": true } } }
{ "mcpServers": { "hoofy": { "command": "hoofy", "args": ["serve"] } } }

Just talk to your AI. Hoofy's built-in instructions tell the AI when and how to use each system.

Auto-checks on startup, updates when you say so.

Hoofy already includes built-in server instructions, but a short policy block in your agent instructions file reinforces the workflow.

Note:sdd_init_projectauto-generates this in agent files. Add manually only if you run Hoofy in MCP-only mode.

Put this in your tool-specific instruction file:

- Claude Code:CLAUDE.md
- Cursor:.cursor/rules/hoofy.md
- OpenCode:AGENTS.md
- VS Code Copilot:.github/copilot-instructions.md
- Gemini CLI:GEMINI.md

## Hoofy — Spec-Driven Development Before coding any non-trivial change, use Hoofy specs first. - New projects: \sdd_init_project\ -> full pipeline - Existing projects without specs: \sdd_reverse_engineer\ -> \sdd_bootstrap\ - Ongoing work: \sdd_change\ (size/type adaptive) - Ad-hoc sessions: \sdd_suggest_context\ - Reviews: \sdd_review\ - Spec/code drift checks: \sdd_audit\ - Memory: \mem_save\, \mem_session\`

The AI will try to jump straight to coding. Don't let it. For any non-trivial work:

- New project?sdd_init_projectand walk through the full 9-stage pipeline
- New feature?
sdd_change(type: "feature", size: "medium")at minimum
- Bug fix?→ Even
sdd_change(type: "fix", size: "small")gives you context-check → describe → tasks → verify

The cheapest stages (context-check + describe + tasks + verify) take under 2 minutes and save hours of debugging hallucinated code.

Before jumping into a pipeline, usesdd_exploreto capture context from your discussion — goals, constraints, tech preferences, unknowns, decisions. It saves structured context to memory so the pipeline starts with clarity, not guesswork. Call it multiple times as your thinking evolves — it upserts, never duplicates.

Working on a project that never went through SDD? Don't skip specs — bootstrap them. Runsdd_reverse_engineerto scan the codebase, thensdd_bootstrapto generate the missing artifacts. This takes under a minute and means the change pipeline works with full context instead of flying blind. Medium/large changes are blocked without specs — and that's intentional.

Don't use a large pipeline for a one-line fix. Don't use a small pipeline for a new authentication system.

You don't need to tell the AI to use memory — Hoofy's built-in instructions handle it. But you'll get better results if you:

- Start sessions by greeting the AI— it triggersmem_contextto load recent history
- Mention past decisions— "remember when we chose SQLite?" triggers
mem_search
- Confirm session summaries— the AI writes them at session end, review them for accuracy

Hoofy's knowledge graph lets you connect related observations with typed, directional edges — turning flat memories into a navigable web. The AI creates relations automatically when it recognizes connections. You can also ask it to relate observations manually. Usemem_get(id=..., depth=...)`to explore the full graph around any observation.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.