About this project
Genie is a command-line planning-and-execution layer for AI coding agents. The pitch is "wishes in, PRs out": you describe what you want in a sentence, and Genie interviews you into a plan, dispatches agents to build it in parallel, reviews the result against acceptance criteria, and hands back something ready to merge.
Architecture is deliberately minimal. There are no daemons and no Postgres: the body is a set of skills, plain-markdown documents stored in git, and a single per-repo SQLite file (`.genie/genie.db`) on Bun's built-in engine. A command opens the database, runs one transaction, and exits. The bundle is described as roughly 0.9 MB with four runtime dependencies, and `nats` only initializes when the Omni runner starts.
Installation is a curl-piped shell script. Releases are cosign-signed with SLSA provenance, and the installer verifies the binary via `gh attestation verify` with a `cosign verify-blob` fallback. Three surfaces ship: the signed binary, the skills (delivered through the skills.sh channel, or via `npx skills add automagik-dev/genie`), and an optional Orca plugin registered on the Orca side.
The workflow is skill-driven: `brainstorm` (idea to DESIGN.md plus design review), `wish` (design to scoped WISH.md with execution groups), `review` (mandatory plan review), `work` (native role subagents build each approved group), and a final independent implementation review returning SHIP, FIX-FIRST, or BLOCKED. Skills are authored runtime-neutrally and installed into each detected agent skill home (Claude Code, the shared `~/.agents/skills` home used by Codex and others, Goose, Windsurf).
State and documents are separated: wishes, designs and brainstorms are markdown under `.genie/`, while tasks, boards, dependency edges and execution state live in SQLite. Linked worktrees of a repo share one database resolved from the git common directory, so tasks are visible across worktrees without a sync step. A `genie context` command emits versioned JSON describing the spawn context (branch, base SHA, ready tasks).
Genie has two lifecycle modes. `standalone` is the default; `genie setup --orchestration-mode orca` makes Orca the sole lifecycle authority after verifying a compatible runtime, and in that mode Genie refuses local lifecycle reads/writes rather than silently falling back. The legacy MCP server and UI bridge are retired, with `genie mcp` and `genie ui-bridge` exiting non-zero with stable diagnostics. An optional `genie omni` bridge connects a running agent to WhatsApp through an Omni hub over NATS for remote approvals and inbound one-shots.
Notable operational details: `genie doctor` reports install health and per-agent skill presence; `genie update` handles retirement of plugin-era leftovers backup-first, preserving modified or ambiguous assets; `genie uninstall` deletes only artifacts it can prove are Genie-owned. The README is explicit that the live WhatsApp round-trip is a documented manual-QA step, while the Omni behavior is verified against a fake transport in the test suite.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.