new-service
Scaffold a new API service with request functions, Zod schemas, URL constants, and optional MSW mock handlers. Use this skill whenever the user asks to "add a service", "create the projects API", "scaffold a new GAIA service", "wire up CRUD for users", or anything implying a new
Install
npx skills add https://github.com/gaia-react/gaia/tree/main/.claude/skills/new-service
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install gaia-react-gaia@llmmart
git clone https://github.com/gaia-react/gaia.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole gaia-react/gaia collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
new-service
Trigger: user asks to scaffold an API service.
Workflow
- Confirm: name (kebab), endpoints, schema (
name:typepairs), with mocks? - Run:
.gaia/cli/gaia scaffold service <name> --endpoints "..." --schema "..." [--mocks] - Verify:
pnpm typecheckclean; if--mocks, run a single MSW round-trip in a vitest test. - Wire the service into the consuming page/hook (CLI does not do this, manual).
Flags
--endpoints "get,post,put,delete", required (subset of get/post/put/delete)--schema "id:string,name:string,status:enum(active,archived)", required--mocks, also emit MSW mock collection--json, emitScaffoldResultJSON
Schema types: string, number, boolean, datetime, enum(a,b,...). Append ? for optional.
See
wiki/concepts/API Service Pattern.md, pattern source of truth.claude/rules/api-service.md, quick pointer
Files (gaia)
-
SKILL.md 1.3 KB
--- name: new-service description: Scaffold a new API service with request functions, Zod schemas, URL constants, and optional MSW mock handlers. Use this skill whenever the user asks to "add a service", "create the projects API", "scaffold a new GAIA service", "wire up CRUD for users", or anything implying a new folder under `app/services/gaia/{name}/` with parsers/types/requests + matching `test/mocks/{name}/` collections. model: haiku --- # new-service Trigger: user asks to scaffold an API service. ## Workflow 1. Confirm: name (kebab), endpoints, schema (`name:type` pairs), with mocks? 2. Run: `.gaia/cli/gaia scaffold service <name> --endpoints "..." --schema "..." [--mocks]` 3. Verify: `pnpm typecheck` clean; if `--mocks`, run a single MSW round-trip in a vitest test. 4. Wire the service into the consuming page/hook (CLI does not do this, manual). ## Flags - `--endpoints "get,post,put,delete"`, required (subset of get/post/put/delete) - `--schema "id:string,name:string,status:enum(active,archived)"`, required - `--mocks`, also emit MSW mock collection - `--json`, emit `ScaffoldResult` JSON Schema types: `string`, `number`, `boolean`, `datetime`, `enum(a,b,...)`. Append `?` for optional. ## See - `wiki/concepts/API Service Pattern.md`, pattern source of truth - `.claude/rules/api-service.md`, quick pointer
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.