Files
msd-core/GEMINI.md
Tom Boucher a3aa0ae142 feat(#775): ship a gemini-extension.json extension package (#818)
Add a Gemini CLI extension package so users can install, update, and
remove GSD through Gemini's own extension lifecycle and have it appear in
`gemini extensions list`:

  gemini extensions install https://github.com/open-gsd/gsd-core
  gemini extensions update gsd-core
  gemini extensions uninstall gsd-core
  gemini extensions link /path/to/gsd-core   # dev

This mirrors the additive Claude Code plugin manifest (#766): a thin,
version-stamped manifest enforced by an in-repo drift test. The extension
ships the context-file payload (GEMINI.md), loaded into every Gemini
session; slash-command/agent/hook TOML projection into the extension is a
documented follow-up. The manual `npx gsd-core --gemini` installer (which
provides the /gsd:* commands) is unchanged — purely additive, no breaking
change.

- gemini-extension.json: name=binName, version tracks package.json,
  description, contextFileName=GEMINI.md (minimal; no mcpServers — gsd
  ships no MCP server)
- GEMINI.md: Gemini-session context payload
- package.json: add both artifacts to files[] so they publish
- CONTEXT.md: add "Gemini Extension Package" glossary entry
- docs: USER-GUIDE + install-on-your-runtime how-to
- tests/issue-775-gemini-extension.test.cjs: manifest validity, version
  parity with package.json, contextFileName existence, files[] publication

Closes #775

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 18:54:08 -04:00

54 lines
2.5 KiB
Markdown

# GSD Core — Gemini CLI context
This context is loaded by the **gsd-core Gemini CLI extension**. It gives Gemini
the operating context for [GSD Core](https://github.com/open-gsd/gsd-core), a
meta-prompting, context-engineering, and spec-driven development system for AI
coding agents.
## What GSD is
GSD turns a vague goal into shipped software through an explicit,
resumable workflow: **explore → plan → execute → verify → ship**. Work is
organised into milestones and phases under a `.planning/` directory, with each
phase carrying a SPEC, a PLAN, and verification criteria. The system favours
small, atomic, test-backed commits and keeps durable context in version-tracked
files rather than in the conversation.
## The slash commands (installed separately)
> **This extension ships only the context above — not the slash commands.** It
> loads gsd's operating context into your Gemini sessions and is managed through
> `gemini extensions list / update / uninstall`. To install the `/gsd:*` command
> set, agents, and hooks into `~/.gemini/`, run the dedicated installer:
>
> ```bash
> npx gsd-core --gemini --global
> ```
>
> The two paths are complementary and the manual installer remains fully
> supported. The commands below are available only once that installer has run.
If you have installed the gsd commands, the workflow is driven by these `/gsd:*`
slash commands (Gemini registers gsd's commands under the `gsd` namespace, so the
colon form is canonical):
- `/gsd:new-project` — initialise a project and gather deep context.
- `/gsd:progress` — the unified situational command: check progress, advance the
workflow, or dispatch a freeform intent.
- `/gsd:plan-phase <N>` — produce a detailed phase plan with a verification loop.
- `/gsd:execute-phase <N>` — execute a phase's plans with wave-based parallelism.
- `/gsd:verify-work` — validate built features through conversational UAT.
- `/gsd:ship` — open a PR, run review, and prepare for merge.
- `/gsd:help` — list every available command.
## Working with GSD
- Treat `.planning/` as the source of truth for project state — read it before
acting, and keep it current as work progresses.
- Prefer the smallest change that satisfies the phase's verification criteria.
- Run the project's tests and linters before declaring a phase done.
- When unsure what to do next, and the gsd commands are installed, `/gsd:progress`
is the situational entry point.
Learn more: <https://github.com/open-gsd/gsd-core>