{"id":48085253,"url":"https://github.com/Fr-e-d/GAAI-framework","last_synced_at":"2026-04-20T01:00:55.129Z","repository":{"id":341310060,"uuid":"1152272504","full_name":"Fr-e-d/GAAI-framework","owner":"Fr-e-d","description":"Turns AI coding tools into reliable software delivery systems. Drop a .gaai/ folder into any project — Discovery defines what to build, Delivery executes autonomously until criteria pass. Works with Claude Code, Codex CLI, Gemini CLI, Cursor, and more. No SDK. No package. Markdown + YAML + bash.","archived":false,"fork":false,"pushed_at":"2026-04-19T19:53:27.000Z","size":4455,"stargazers_count":127,"open_issues_count":0,"forks_count":27,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-19T21:34:15.861Z","etag":null,"topics":["agentic-coding","ai-agents","ai-coding","ai-developer-tools","ai-governance","ai-memory-system","autonomous-agents","claude-code","codex-cli","context-engineering","cursor","devtools","gemini-cli","opencode","vibe-coding","windsurf"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Fr-e-d.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-07T16:24:30.000Z","updated_at":"2026-04-19T19:53:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Fr-e-d/GAAI-framework","commit_stats":null,"previous_names":["fr-e-d/gaai-framework"],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/Fr-e-d/GAAI-framework","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fr-e-d%2FGAAI-framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fr-e-d%2FGAAI-framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fr-e-d%2FGAAI-framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fr-e-d%2FGAAI-framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Fr-e-d","download_url":"https://codeload.github.com/Fr-e-d/GAAI-framework/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fr-e-d%2FGAAI-framework/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32028547,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"ssl_error","status_checked_at":"2026-04-20T00:17:31.068Z","response_time":55,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-coding","ai-agents","ai-coding","ai-developer-tools","ai-governance","ai-memory-system","autonomous-agents","claude-code","codex-cli","context-engineering","cursor","devtools","gemini-cli","opencode","vibe-coding","windsurf"],"created_at":"2026-04-04T15:14:13.317Z","updated_at":"2026-04-20T01:00:55.123Z","avatar_url":"https://github.com/Fr-e-d.png","language":"Shell","readme":"![Version](https://img.shields.io/badge/version-2.18.0-blue)\n![License: ELv2](https://img.shields.io/badge/license-ELv2-green)\n![No SDK](https://img.shields.io/badge/stack-markdown%20%2B%20yaml%20%2B%20bash-orange)\n\n# GAAI — Governed Agentic AI Infrastructure\n\nA `.gaai/` folder you drop into any project. Markdown + YAML + bash. No SDK. No package. No external services.\n\n**GAAI turns AI coding tools into reliable agentic software delivery systems.**\n\n---\n\n## See It in Action\n\n```\nYou:        /gaai-discover\nDiscovery:  \"What do you want to build?\"\nYou:        \"Add rate limiting — 100 req/min per user, 429 on exceeded.\"\nDiscovery:  \"Got it. Checking memory for existing middleware patterns...\"\n            → Generates Epic E03 + Story E03S01 with acceptance criteria\n            → Runs validation: artefact complete, criteria testable, no scope drift\n            → Adds to backlog: status: refined\nDiscovery:  \"Done. E03S01 is ready. Run /gaai-deliver when you're ready.\"\n\nYou:        /gaai-daemon\n            → Launches the Delivery Daemon (polls backlog, delivers in parallel via tmux)\nDelivery:   → Reads E03S01 from backlog\n            → Loads middleware conventions from memory\n            → Planning Sub-Agent: produces execution plan\n            → Implementation Sub-Agent: adds rate-limiting middleware\n            → QA Sub-Agent: all acceptance criteria PASS\n            → Story marked done, PR merged to staging\nDelivery:   \"E03S01 complete. No further Stories in backlog.\"\n```\n\nTwo slash commands. Two **isolated contexts**. Discovery reasons — it never executes. Delivery executes — it never decides scope. They never share a context window — Delivery runs as a separate OS process (`claude -p` via tmux), so system prompts can't contaminate each other. The backlog is the contract between them.\n\n\u003e `/gaai-deliver` delivers a single Story in the current session. `/gaai-daemon` launches a background daemon that polls the backlog and delivers multiple Stories in parallel (each in its own tmux session). [See Delivery Daemon →](#delivery-daemon)\n\n\u003e [Full walkthrough in Quick Start](docs/guides/quick-start.md)\n\n---\n\n## Why GAAI\n\nAI coding tools are fast — but without governance, speed creates drift: agents touch code they shouldn't, forget decisions from prior sessions, and ship features no one can verify against criteria. GAAI adds the missing layer.\n\n**Built for developers who already have product clarity** — solo founders, senior engineers, small teams who know what to build and need an agent that ships it reliably without going off-script. If you've ever said \"the agent broke something it wasn't supposed to touch,\" this is for you.\n\n| vs. | Difference |\n|-----|-----------|\n| AGENTS.md / cursor rules | Solves one session. GAAI adds cross-session memory, scope authorization, and structured delivery. |\n| BMAD-METHOD | Simulates a multi-agent Agile team. GAAI is lighter on Discovery, more rigid on Delivery governance. |\n| LangGraph / AutoGen / CrewAI | Code-first orchestration for building AI systems. GAAI governs the use of AI coding tools. Different abstraction level. |\n| Spec Kit (GitHub) | Spec-driven pipeline (spec → plan → tasks → implement). GAAI adds governance enforcement, multi-agent delivery with QA gates, structured cross-session memory, and automated daemon delivery. |\n\n---\n\n## How It Works\n\n**Discovery** — you talk to the Discovery Agent in your current session. Clarify what to build. Output: a Story with acceptance criteria in the backlog. Discovery reasons. It does not execute.\n\n**Delivery** — always runs in an **isolated process**. `/gaai-daemon` launches the Delivery Daemon, which runs each Story in its own `claude -p` session via tmux — a completely separate OS process with no Discovery residue and no conversation history bleed. The Delivery Agent orchestrates specialized sub-agents (Planning, Implementation, QA) per Story. Real-time visibility via `tmux attach`. No improvisation. No scope drift. No context contamination.\n\nThe delivery workflow is **portable to sub-agent-capable AI coding runtimes**. Claude Code is the reference implementation — the daemon uses `claude -p` because Claude Code was the first coding agent to expose sub-agent primitives (isolated contexts per sub-task, required for Planning → Implementation → QA separation). Discovery and governance work with any AI coding tool.\n\n**The backlog is the contract.** Nothing gets built that isn't in it.\n\n```\nyour-project/\n└── .gaai/\n    ├── core/                  ← framework engine (auto-synced from your project)\n    │   ├── README.md          ← start here (human + AI onboarding)\n    │   ├── GAAI.md            ← full reference\n    │   ├── QUICK-REFERENCE.md ← daily cheat sheet\n    │   ├── VERSION\n    │   ├── agents/            ← Discovery + Delivery + Bootstrap agent specs\n    │   ├── skills/            ← 47 execution units\n    │   ├── contexts/rules/    ← framework rules\n    │   ├── workflows/         ← delivery loop, bootstrap, handoffs\n    │   ├── scripts/           ← bash utilities\n    │   ├── hooks/             ← git hook dispatcher + core hooks\n    │   └── compat/            ← thin adapters per AI tool\n    └── project/               ← your project data (never overwritten by updates)\n        ├── agents/            ← custom project agents\n        ├── skills/            ← custom project skills\n        ├── scripts/           ← project-specific scripts\n        ├── hooks/             ← project-specific git hooks\n        ├── workflows/         ← custom workflow overrides\n        └── contexts/\n            ├── rules/         ← project rule overrides\n            ├── memory/        ← persistent memory (decisions, patterns, context)\n            ├── backlog/       ← execution queue (active, blocked, done)\n            └── artefacts/     ← stories, epics, plans, reports\n```\n\nNo SDK. No npm package. No pip install. Markdown + YAML + bash. Readable by humans and any AI tool.\n\n---\n\n## Install (30 seconds)\n\n**Copy the `.gaai/` folder into your project.** That's it.\n\nDownload from GitHub, drop `.gaai/` into your project root, and tell your AI tool: *\"Read `.gaai/core/README.md` and bootstrap this project.\"*\n\n\u003cdetails open\u003e\n\u003csummary\u003eOption A — Ask your AI tool to do it\u003c/summary\u003e\n\nPaste this into your AI tool's chat:\n\n```\nInstall the GAAI framework into my current project.\n\nDetermine {user-tool} by identifying which AI coding tool is running this\nprompt. Valid values: claude-code | cursor | windsurf | other.\nIf you cannot determine it, ask the user before proceeding.\n\nThen run:\n  rm -rf /tmp/gaai\n  git clone https://github.com/Fr-e-d/GAAI-framework.git /tmp/gaai\n  bash /tmp/gaai/.gaai/core/scripts/install.sh --target . --tool {user-tool} --yes\n  rm -rf /tmp/gaai\n\nAfter install, show the user the next steps exactly as printed by the\ninstaller.\n```\n\nThe installer copies `.gaai/` and deploys the right adapter for your tool (CLAUDE.md, AGENTS.md, or .cursor/rules/).\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eOption B — CLI\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/Fr-e-d/GAAI-framework.git /tmp/gaai \u0026\u0026 \\\n  bash /tmp/gaai/.gaai/core/scripts/install.sh --wizard \u0026\u0026 \\\n  rm -rf /tmp/gaai\n```\n\n\u003c/details\u003e\n\n---\n\n## Delivery Daemon\n\n`/gaai-deliver` delivers a single Story in the current session. `/gaai-daemon` launches the Delivery Daemon, which delivers Stories autonomously. Requires a git repo with a `staging` branch:\n\n- Polls the backlog for `refined` stories\n- Launches parallel Claude Code sessions in tmux (default: 3 slots, configurable)\n- Coordinates across devices via git push\n- Monitors health, retries failures, archives completed work\n- Auto-opens a monitoring dashboard (tmux split: daemon config + active deliveries)\n\n\u003cimg src=\"assets/daemon-monitor.png\" alt=\"Delivery Daemon monitoring 3 concurrent story deliveries\" width=\"700\"\u003e\n\n**Setup (one-time):**\n\n```bash\nbash .gaai/core/scripts/daemon-setup.sh\n```\n\n**Usage:**\n\n```\n/gaai-daemon                        # start daemon (3 slots, auto-opens monitor)\n/gaai-daemon --max-concurrent 3     # 3 parallel deliveries\n/gaai-daemon --status               # live monitoring dashboard\n/gaai-daemon --stop                 # graceful shutdown\n```\n\n\u003e `/gaai-deliver` = one Story, current session. `/gaai-daemon` = background daemon, parallel delivery.\n\n\u003e Requires: git repo, `staging` branch, **Claude Code CLI (`claude` in PATH)**, python3, tmux (recommended) or Terminal.app (macOS fallback).\n\u003e\n\u003e **Note:** The Delivery Daemon requires the `claude` binary regardless of which AI tool you use for Discovery. Discovery and governance work with any tool — autonomous delivery requires Claude Code CLI.\n\u003e\n\u003e **Tested on:** macOS (Apple Silicon). Linux and WSL (Windows) are expected to work but not yet validated — issues and feedback welcome.\n\n---\n\n## Works With\n\n**Deep integration** — slash commands, auto-loaded context, SKILL.md auto-discovery:\n\n| Tool | Adapter |\n|------|---------|\n| Claude Code | `CLAUDE.md` + `.claude/commands/` |\n\n**AGENTS.md compatible** — full GAAI capability via manual activation prompts:\n\n| Tool | Adapter |\n|------|---------|\n| OpenCode | `AGENTS.md` |\n| Codex CLI | `AGENTS.md` |\n| Gemini CLI | `AGENTS.md` |\n| Antigravity | `AGENTS.md` |\n| Cursor | `.cursor/rules/*.mdc` |\n| Windsurf | `AGENTS.md` |\n| Any other | Read `.gaai/core/README.md` directly |\n\nOne canonical source (`.gaai/`). Thin adapters per tool. No duplication. Discovery, governance, and manual delivery work with any AI coding tool. The delivery workflow is portable to sub-agent-capable AI coding runtimes — Claude Code is the reference implementation today.\n\n\u003e [Full compatibility details](docs/reference/tool-compatibility.md)\n\n---\n\n## Honest Trade-offs\n\n- Discovery is conversational and intentionally lightweight. It helps you structure what you know — it does not replace deep product research or collaborative brainstorming across a team.\n- Trivial tasks still need a backlog item. You can make it a one-liner, but the gate is always there.\n- The framework relies on the agent following the files. There is no programmatic enforcement.\n- The repo is freshly open-sourced. Community is just getting started.\n\n---\n\n## Documentation\n\n- [Quick Start](docs/guides/quick-start.md) — first working Story in 30 minutes\n- [What is GAAI?](docs/01-what-is-gaai.md) — the problem in full\n- [Core Concepts](docs/02-core-concepts.md) — dual track, backlog, memory, skills, artefacts\n- [Vibe Coder Guide](docs/guides/vibe-coder-guide.md) — fast daily workflow\n- [Senior Engineer Guide](docs/guides/senior-engineer-guide.md) — governance, rules, CI\n- [Skills Index](.gaai/core/skills/README.skills.md) — all 47 skills\n- [Tool Compatibility](docs/reference/tool-compatibility.md) — Claude Code, OpenCode, Codex CLI, Gemini CLI, Antigravity, Cursor, Windsurf\n- [Design Decisions](docs/architecture/design-decisions.md) — why GAAI is structured the way it is (ADRs + research basis)\n\n---\n\nELv2 — see [LICENSE](LICENSE)\n\n---\n\n## Support This Project\n\nIf you find this framework valuable, please consider showing your support:\n\n- **[Sponsor on GitHub](https://github.com/sponsors/Fr-e-d)**\n\n---\n\nCreated by [Frédéric Geens](https://www.linkedin.com/in/fr%C3%A9d%C3%A9ric-geens-04162233/)\n","funding_links":["https://github.com/sponsors/Fr-e-d"],"categories":["Ecosystem"],"sub_categories":["Quick Setup with cc-safe-setup"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFr-e-d%2FGAAI-framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFr-e-d%2FGAAI-framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFr-e-d%2FGAAI-framework/lists"}