EXTEND
Plugin development
Add a new vertical capability to Gtstitch without touching the framework.
Gtstitch is plugin-first: all vertical capabilities mount additively as plugins, with zero changes to the product layer and the framework layer. The standard procedure for adding a @gtstitch/* plugin follows.
1. Scaffold the package
Create package.json, tsconfig.json and src/index.ts under packages/<tier>/<name>/, named uniformly as @gtstitch/dsh-<name>.
2. Declare persona and tool mounts
Register the persona and tool rows in the preset's agent.cordis.yml. Tool mounts are constrained by persona-boundary and verified by verify-persona-mount-matrix.mjs.
3. Pass the gates
- Wiring integrity guard (every new tool must be consumed by some persona)
- Persona mount matrix verification
- Invariant companion files
- Typecheck + test coverage gates
4. Add README and i18n
Complete the bilingual README and README.i18n.yaml following the templates in PLUGIN_DEV_GUIDE.md.
5. Register upstream-sync protection
Register new first-party assets in upstream-overrides.json so upstream sync will not wipe them.
gtstitch/docs/PLUGIN_DEV_GUIDE.md in the repository.
