{"id":50305539,"url":"https://github.com/jed-tech/spar-kit","last_synced_at":"2026-05-28T16:01:17.650Z","repository":{"id":350071944,"uuid":"1202457494","full_name":"Jed-Tech/spar-kit","owner":"Jed-Tech","description":"Specify → Plan → Act → Retain: SPAR-kit is a lightweight workflow that helps AI agents align with your intent, plan clearly, act with less drift, and retain durable project memory.","archived":false,"fork":false,"pushed_at":"2026-05-06T07:20:34.000Z","size":8621,"stargazers_count":11,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-06T09:30:13.349Z","etag":null,"topics":["agent-skills","ai","ai-agents","ai-workflow","automation","claude-code","codex","cursor","cursor-ai","dev-tools","developer-tools","llm","prompt-engineering","sdd","skills","spec-driven-development","workflow"],"latest_commit_sha":null,"homepage":"https://jed-tech.github.io/spar-kit/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Jed-Tech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-06T03:33:30.000Z","updated_at":"2026-05-06T07:20:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Jed-Tech/spar-kit","commit_stats":null,"previous_names":["jed-tech/spar-kit"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Jed-Tech/spar-kit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jed-Tech%2Fspar-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jed-Tech%2Fspar-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jed-Tech%2Fspar-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jed-Tech%2Fspar-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Jed-Tech","download_url":"https://codeload.github.com/Jed-Tech/spar-kit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jed-Tech%2Fspar-kit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33615490,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["agent-skills","ai","ai-agents","ai-workflow","automation","claude-code","codex","cursor","cursor-ai","dev-tools","developer-tools","llm","prompt-engineering","sdd","skills","spec-driven-development","workflow"],"created_at":"2026-05-28T16:01:00.764Z","updated_at":"2026-05-28T16:01:17.637Z","avatar_url":"https://github.com/Jed-Tech.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# spar-kit\n\nSPAR-kit is a lightweight, spec-driven workflow for AI-assisted software development.\nIt helps humans and AI agents align intent, plan clearly, act with less drift, and retain\ndurable project memory.\n\nView the product homepage: [https://jed-tech.github.io/spar-kit/](https://jed-tech.github.io/spar-kit/)\n\n\u003e **Specify -\u003e Plan -\u003e Act -\u003e Retain**\n\n## Install\n\nChoose the install type that matches the repo-local layout you want:\n\n- `npx @spar-kit/install`\n  General SPAR layout. Works with most AI agent platforms.\n- `npx @spar-kit/install --cursor`\n  Use when you want the Cursor-native SPAR layout.\n- `npx @spar-kit/install --claude`\n  Use when you want the Claude-native SPAR layout.\n- `npx @spar-kit/install --codex`\n  Works with Codex. Same repo-local layout as Default.\n- `npx @spar-kit/install --copilot`\n  Works with Copilot. Same repo-local layout as Default.\n- `npx @spar-kit/install --windsurf`\n  Works with Windsurf. Same repo-local layout as Default.\n- `npx @spar-kit/install --gemini`\n  Works with Gemini. Same repo-local layout as Default.\n- `npx @spar-kit/install --opencode`\n  Works with OpenCode. Same repo-local layout as Default.\n\n## Immediate next step\n\nAfter install, ask your agent to use `spar-init`\n\n`spar-init` does more than a quick setup check. Its purpose is updating SPAR-kit's\nlocal tool index so your AI knows exactly which tools, CLIs, and project commands\nare available in your repo.\n\nThat matters because agents work better when they do not have to guess. With a tool\nindex, they spend less time probing the environment, use fewer tokens on tool\ndiscovery, and make more reliable decisions about how to act in your project.\n\nThe `spar-init` skill will quickly:\n1. Check that your SPAR-kit install is current\n2. Index available repo tools in `.spar-kit/.local/tools.yaml`\n\nOnce that is done, start your first change with `spar-specify`.\n\n## Workflow\n\nSPAR-kit gives every change a clear operating loop from intent to shipped work to retained\nproject memory.\n\n1. **Specify**\n   Clarify goals, scope, and constraints before implementation starts.\n2. **Plan**\n   Turn the change into an explicit sequence that reduces drift.\n3. **Act**\n   Implement in the repository with validation tied to the plan and spec.\n4. **Retain**\n   Preserve decisions and shipped behavior as durable project memory.\n\n## What you get\n\nSPAR-kit installs a small, repo-native workflow layer:\n\n- Skills to guide the work\n- Rules to keep agents aligned\n- A tool index so AI knows what is available\n- A `specs/` structure for active and completed changes\n\n### Skill-guided workflow\n\nReusable SPAR skills guide agents through Specify, Plan, Act, and Retain without needing\na heavy framework.\n\n### Low-context agent rules\n\nConcise agent guidance keeps AI tools aligned to the SPAR workflow without flooding every\nsession with instructions.\n\n### Tool index\n\nA local tool index helps agents see and efficiently use the commands and project tools\navailable to them.\n\n### Spec structure\n\nActive and completed spec folders give each change a clear home from first intent to\nretained project memory.\n\n**Safe for existing repos:** SPAR-kit layers in without overwriting your existing skills,\nrules, or `AGENTS.md`.\n\n## Why SPAR-kit?\n\nAI works best with focused context.\n\nAI agents are powerful, but they are easy to derail when the context is vague, noisy, or\noverloaded. SPAR-kit gives each change a small, practical structure: clarify the intent,\ncapture the constraints, plan the work, act against that plan, and retain what matters\nwhen the work is done.\n\nThat structure keeps the model focused on the right problem at the right time. The spec\nholds intent. The plan holds execution. Retain turns shipped work into project memory.\nEach piece has a job, so your agent does not have to rediscover the same context every\nsession.\n\nThe result is less drift, less rework, and a cleaner path from idea to implemented change.\n\n## Repository structure\n\nRepository root = `\u003croot\u003e`.\n\n| Stage | Path |\n| --- | --- |\n| Active (SPAR pipeline) | `specs/active/\u003cchange-name\u003e/` |\n| Completed (archived) | `specs/completed/\u003cchange-name\u003e/` |\n\n**Specify**, **Plan**, and **Act** run against `specs/active/`. **Retain** moves the whole\ndirectory from `active/` to `completed/` with no duplicate left under `active/`.\n\nEach change folder usually contains `\u003cchange-name\u003e_spec.md` and `plan.md`, side by side.\nOptional files such as `research.md`, notes, or small artifacts may live in the same\nfolder.\n\nSee [`specs/README.md`](specs/README.md) for a concise overview of the workflow folders.\n\n## Skills\n\nCore workflow and initialization are implemented as agent skills:\n\n| Stage | Skill |\n| --- | --- |\n| Init | `spar-init` |\n| Specify | `spar-specify` |\n| Plan | `spar-plan` |\n| Act | `spar-act` |\n| Retain | `spar-retain` |\n\nProject-local skill locations:\n\n- Codex: `.agents/skills/`\n- Cursor: `.agents/skills/`\n- Claude Code: `.claude/skills/`\n\nCopy or symlink each skill directory into your agent's supported skills location if needed,\nfollowing your tool's documentation.\n\n## Templates\n\n`templates/spec.md` is copied per change to `\u003cchange-name\u003e_spec.md`.\n\n`templates/plan.md` becomes `plan.md`.\n\nThe spec template lists every heading. `spar-specify` fills the sections known from\ndiscovery, and `spar-plan` completes the rest. Both templates include HTML comments noting\npaths under `specs/active/` through completion under `specs/completed/`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjed-tech%2Fspar-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjed-tech%2Fspar-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjed-tech%2Fspar-kit/lists"}