{"id":50387322,"url":"https://github.com/open-gsd/gsd-pi","last_synced_at":"2026-06-15T01:07:33.768Z","repository":{"id":359571239,"uuid":"1246600517","full_name":"open-gsd/gsd-pi","owner":"open-gsd","description":"A powerful meta-prompting, context engineering and spec-driven development system that enables agents to work for long periods of time autonomously without losing track of the big picture","archived":false,"fork":false,"pushed_at":"2026-06-12T20:48:10.000Z","size":73561,"stargazers_count":609,"open_issues_count":46,"forks_count":56,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-06-12T21:21:29.884Z","etag":null,"topics":["context-engineering","meta-prompting","spec-driven-development"],"latest_commit_sha":null,"homepage":"https://www.opengsd.net","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-gsd.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","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},"funding":{"github":"glittercowboy"}},"created_at":"2026-05-22T11:03:33.000Z","updated_at":"2026-06-12T20:45:01.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/open-gsd/gsd-pi","commit_stats":null,"previous_names":["gsd-redux/gsd-pi"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/open-gsd/gsd-pi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-gsd%2Fgsd-pi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-gsd%2Fgsd-pi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-gsd%2Fgsd-pi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-gsd%2Fgsd-pi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-gsd","download_url":"https://codeload.github.com/open-gsd/gsd-pi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-gsd%2Fgsd-pi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34269365,"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-06-13T02:00:06.617Z","response_time":62,"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":["context-engineering","meta-prompting","spec-driven-development"],"created_at":"2026-05-30T16:00:22.431Z","updated_at":"2026-06-15T01:07:33.756Z","avatar_url":"https://github.com/open-gsd.png","language":"TypeScript","funding_links":["https://github.com/sponsors/glittercowboy"],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003c!-- GSD Pi - Project overview and setup guide --\u003e\n\n# GSD Pi\n\n[![npm version](https://img.shields.io/npm/v/@opengsd/gsd-pi?label=npm\u0026logo=npm)](https://www.npmjs.com/package/@opengsd/gsd-pi)\n[![npm downloads](https://img.shields.io/npm/dm/@opengsd/gsd-pi?label=downloads\u0026logo=npm\u0026color=red)](https://www.npmjs.com/package/@opengsd/gsd-pi)\n[![CI](https://img.shields.io/github/actions/workflow/status/open-gsd/gsd-pi/ci.yml?branch=main\u0026label=tests\u0026logo=github)](https://github.com/open-gsd/gsd-pi/actions/workflows/ci.yml)\n[![Discord](https://img.shields.io/badge/discord-join-5865F2?logo=discord\u0026logoColor=white)](https://discord.gg/8NnkKuepmQ)\n[![GitHub stars](https://img.shields.io/github/stars/open-gsd/gsd-pi?label=stars\u0026logo=github)](https://github.com/open-gsd/gsd-pi/stargazers)\n[![License: MIT](https://img.shields.io/github/license/open-gsd/gsd-pi?label=license)](https://github.com/open-gsd/gsd-pi/blob/main/LICENSE)\n\nGSD Pi is a local-first coding agent for planning, implementing, verifying, and tracking project work from the command line.\n\nIt combines a terminal agent, project workflow tools, worktree-aware Git automation, and optional UI integrations so a project can move from idea to reviewed implementation with less manual coordination.\n\n## Feature Roll-Up\n\n- **Guided terminal agent** — Start with `gsd`, configure providers, and run planned or quick coding sessions from your shell.\n- **Autonomous project workflow** — Break work into milestones, slices, and tasks, then let auto mode plan, implement, verify, and advance.\n- **Worktree-aware Git automation** — Keep implementation work isolated while preserving a reviewable main checkout.\n- **Local project memory** — Store project requirements, decisions, runtime notes, generated plans, summaries, and validation evidence under `.gsd/`.\n- **Multi-provider model routing** — Use the provider your team already has, with configurable defaults and per-phase model preferences.\n- **Extension surface** — Add project-specific commands, tools, skills, and UI integrations through bundled or community extensions.\n- **Terminal and web surfaces** — Use the TUI by default, or launch `gsd --web` when a visual control plane fits the work better than a terminal.\n\nSee [CHANGELOG.md](./CHANGELOG.md) for release-by-release fixes and [Legacy Release History](./docs/archive/legacy-release-history.md) for archived history before the `open-gsd/gsd-pi` baseline.\n\n## Latest Release Highlights\n\n- **Claude Opus 4.8 support** — Add the latest Claude model option to the generated model catalog.\n- **Better `/gsd` observability** — Add `/gsd usage` and `/gsd context` commands for inspecting session usage and context state.\n- **Sharper skill scoping** — Scope the skill catalog per unit, trim duplicate prompt surfaces, and apply unit-context manifest policy during auto-mode dispatch.\n- **Improved guided installs** — Redesign the `npx @opengsd/gsd-pi@latest` flow so first-time and scripted installs are clearer and more reliable.\n- **Smoother auto-mode progress** — Improve requirements backlog handling, completion summaries, quick branch inference, cleanup logic, and milestone closeout behavior.\n- **Cloud MCP gateway runtime** — Add the local cloud MCP gateway runtime with persisted auth state.\n- **More reliable installs** — Resolve native engine packages to the matching release version across npm installs and Docker images.\n\n## Status\n\nThis repository is starting a new development baseline at version `1.0.0` under the `open-gsd/gsd-pi` project.\n\nOlder release history has been archived outside the active changelog so new work can be reviewed from a clean project surface.\n\n## Install\n\nRecommended — guided installer:\n\n```bash\nnpx @opengsd/gsd-pi@latest\n```\n\nFor CI or scripted installs:\n\n```bash\nnpx @opengsd/gsd-pi@latest --yes\n```\n\nAlternative — direct npm global install:\n\n```bash\nnpm install -g @opengsd/gsd-pi@latest\n```\n\nIf you want pnpm to own the global install, use pnpm's runner:\n\n```bash\npnpm setup\nexec $SHELL -l\npnpm dlx @opengsd/gsd-pi@latest\n```\n\nSource: [`open-gsd/gsd-pi`](https://github.com/open-gsd/gsd-pi).\n\n## Migrate From Older Installs\n\nGSD Pi now installs from the scoped package `@opengsd/gsd-pi`. If you previously installed the older unscoped `gsd-pi` package, remove it first so the old global binary does not shadow the new package.\n\nRecommended migration with the guided `npx` installer:\n\n```bash\nnpm uninstall -g gsd-pi @opengsd/gsd-pi\nrm -f ~/.gsd/.update-check ~/.gsd/agent/managed-resources.json\nnpx @opengsd/gsd-pi@latest\ncommand -v gsd\ngsd --version\n```\n\nIf the old package was installed with `sudo npm install -g`, use `sudo npm uninstall -g gsd-pi` for the old package removal.\n\nTo migrate from old npm globals to a pnpm-owned global install:\n\n```bash\nnpm uninstall -g gsd-pi @opengsd/gsd-pi\nrm -f ~/.gsd/.update-check ~/.gsd/agent/managed-resources.json\npnpm setup\nexec $SHELL -l\npnpm dlx @opengsd/gsd-pi@latest\ncommand -v gsd\ngsd --version\n```\n\nWindows PowerShell with the guided `npx` installer:\n\n```powershell\nnpm uninstall -g gsd-pi @opengsd/gsd-pi\nRemove-Item \"$env:USERPROFILE\\.gsd\\.update-check\" -Force -ErrorAction SilentlyContinue\nRemove-Item \"$env:USERPROFILE\\.gsd\\agent\\managed-resources.json\" -Force -ErrorAction SilentlyContinue\nnpx @opengsd/gsd-pi@latest\nwhere.exe gsd\ngsd --version\n```\n\nAfter migration, routine upgrades use:\n\n```bash\ngsd upgrade\n```\n\nYou can also run `npx @opengsd/gsd-pi@latest` to launch the guided installer (recommended for new installs). For deeper recovery steps, see [Upgrade GSD Pi](./docs/user-docs/getting-started.md#upgrade-gsd-pi) and [Upgrade from older gsd-pi installs](./docs/user-docs/troubleshooting.md#upgrade-from-older-gsd-pi-installs).\n\n## Uninstall\n\nRemove the global package and optional local GSD state files.\n\nmacOS / Linux:\n\n```bash\nnpm uninstall -g @opengsd/gsd-pi gsd-pi\nrm -rf ~/.gsd\n```\n\nIf you installed GSD with pnpm, use pnpm for the pnpm-owned package. If pnpm reports that its global bin directory is not on `PATH`, run `pnpm setup`, restart your shell, then retry.\n\n```bash\npnpm remove -g @opengsd/gsd-pi\nnpm uninstall -g gsd-pi\nrm -rf ~/.gsd\n```\n\nWindows PowerShell:\n\n```powershell\nnpm uninstall -g @opengsd/gsd-pi gsd-pi\nRemove-Item \"$env:USERPROFILE\\.gsd\" -Recurse -Force -ErrorAction SilentlyContinue\n```\n\n## Quick Start\n\nNeed help choosing settings? Use the [GSD Pi web configurator](https://pi.opengsd.net/) to build a configuration in your browser.\n\n```bash\ngsd\n```\n\nRun the setup flow, choose your preferred model provider, and open a project directory. GSD stores project planning and runtime state in `.gsd/`.\n\nFor a full first-run walkthrough, see [Getting Started With gsd-pi](./docs/user-docs/getting-started.md).\n\n## Common Session Commands\n\nStart GSD from your shell:\n\n```bash\ngsd\n```\n\nThen use slash commands inside the GSD session:\n\n```text\n/gsd config\n/gsd auto\n/gsd quick \"Describe the task\"\n/gsd status\n```\n\n## What GSD Pi Does\n\n- Plans work into milestones, slices, and tasks.\n- Runs coding sessions with project context and verification steps.\n- Uses Git worktrees to isolate implementation work.\n- Tracks project state in a local database with markdown projections for review.\n- Supports extension-based tools and provider integrations.\n- Produces artifacts such as plans, summaries, validation notes, and reports.\n\n## Repository Layout\n\n| Path | Purpose |\n| --- | --- |\n| `src/` | Core runtime resources and bundled extensions |\n| `packages/` | Workspace packages used by the CLI, agent, TUI, RPC, and native bridge |\n| `native/` | Native engine packaging and platform binaries |\n| `studio/` | Desktop studio app |\n| `web/` | Web UI and API surface |\n| `docs/` | User and developer documentation |\n| `scripts/` | Build, release, migration, and maintenance scripts |\n\n## Development\n\n```bash\npnpm install --frozen-lockfile\npnpm run build\npnpm test\n```\n\nBefore opening a pull request, run:\n\n```bash\npnpm run verify:fast    # CI fast-gates locally (scans + policy)\npnpm run verify:pr      # Fast loop: build + typecheck + unit tests\npnpm run verify:merge   # Before PR review: full CI blocking parity\n```\n\n## Versioning\n\nThe active public baseline starts at `1.0.0`.\n\nHistorical tags and archived refs may exist for traceability, but active release notes should be written from this baseline forward.\n\n## Community\n\nJoin the [GSD Discord community](https://discord.gg/8NnkKuepmQ).\n\n## Star History\n\n\u003ca href=\"https://www.star-history.com/?repos=open-gsd%2Fgsd-pi\u0026type=date\u0026legend=top-left\"\u003e\n \u003cpicture\u003e\n   \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/chart?repos=open-gsd/gsd-pi\u0026type=date\u0026theme=dark\u0026legend=top-left\" /\u003e\n   \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/chart?repos=open-gsd/gsd-pi\u0026type=date\u0026legend=top-left\" /\u003e\n   \u003cimg alt=\"Star History Chart\" src=\"https://api.star-history.com/chart?repos=open-gsd/gsd-pi\u0026type=date\u0026legend=top-left\" /\u003e\n \u003c/picture\u003e\n\u003c/a\u003e\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-gsd%2Fgsd-pi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-gsd%2Fgsd-pi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-gsd%2Fgsd-pi/lists"}