@appsforgood/next-supabase-kit 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Agent
|
|
1
|
+
# Agent Kit for Next.js + Supabase
|
|
2
2
|
|
|
3
3
|
[](https://github.com/lukey662/agentsandskills/actions/workflows/ci.yml)
|
|
4
4
|
[](https://www.npmjs.com/package/@appsforgood/next-supabase-kit)
|
|
@@ -6,494 +6,561 @@
|
|
|
6
6
|
[](https://github.com/lukey662/agentsandskills/actions/workflows/codeql.yml)
|
|
7
7
|
[](LICENSE)
|
|
8
8
|
|
|
9
|
-
`@appsforgood/next-supabase-kit` installs
|
|
9
|
+
`@appsforgood/next-supabase-kit` installs versioned agent instructions, specialist roles, reusable skills, project documentation, security checks, UI review gates, and audit tooling into an existing repository.
|
|
10
10
|
|
|
11
|
-
It
|
|
11
|
+
It is designed for teams using AI coding tools on Next.js and Supabase projects that need the work to remain reviewable, secure, and maintainable.
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
## Start Here
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
- [Quick start](#quick-start)
|
|
16
|
+
- [First-run examples](#first-run-examples)
|
|
17
|
+
- [Audit examples](#audit-examples)
|
|
18
|
+
- [Common delivery workflows](#common-delivery-workflows)
|
|
19
|
+
- [Updating an existing install](#updating-an-existing-install)
|
|
20
|
+
- [Optional executable runtime](#optional-executable-runtime)
|
|
21
|
+
- [Installed project contract](#installed-project-contract)
|
|
22
|
+
- [Maintainer verification](#maintainer-verification)
|
|
16
23
|
|
|
17
|
-
|
|
24
|
+
## What You Get
|
|
18
25
|
|
|
19
|
-
|
|
26
|
+
- A machine-readable council roster with explicit ownership and handoffs.
|
|
27
|
+
- Instructions and adapters for Codex, Cursor, Claude Code, GitHub Copilot, and Antigravity.
|
|
28
|
+
- Living `SPEC.md`, `DECISIONS.md`, `DESIGN.md`, `MESSAGING.md`, `SECURITY.md`, `TESTING.md`, and deployment documentation.
|
|
29
|
+
- Supabase Auth, RLS, migration, service-role, and OWASP review rules.
|
|
30
|
+
- Frontend design gates that reject generic gradients, card soup, fake metrics, vague SaaS copy, inaccessible state styling, and other common AI-generated UI patterns.
|
|
31
|
+
- Local project context, durable human corrections, council-session evidence, and static or live Agent Studio views.
|
|
32
|
+
- A CLI that detects missing setup, stale templates, unsupported claims, weak evidence, and release-readiness gaps.
|
|
33
|
+
- An optional runtime for checkpointed LangGraph execution with provider adapters, MCP policy, approvals, Docker isolation, and Git worktrees.
|
|
20
34
|
|
|
21
|
-
|
|
35
|
+
## Choose A Mode
|
|
36
|
+
|
|
37
|
+
| Mode | Package | What runs |
|
|
38
|
+
| --- | --- | --- |
|
|
39
|
+
| Instructions and audits | `@appsforgood/next-supabase-kit` | Your coding assistant follows installed files; the CLI installs, validates, records, and audits evidence |
|
|
40
|
+
| Executable council | Add `@appsforgood/agent-kit-runtime` | The CLI compiles the roster into checkpointed workflows with approval gates and isolated worktrees |
|
|
41
|
+
|
|
42
|
+
The base kit does not call a model provider. Installing instructions does not prove that an executable council ran. Only `agent-kit orchestrate ...` produces runtime checkpoints and run evidence.
|
|
43
|
+
|
|
44
|
+
## Requirements
|
|
45
|
+
|
|
46
|
+
- Node.js 20 or newer.
|
|
47
|
+
- Git for update, session, and worktree-aware workflows.
|
|
48
|
+
- A Next.js + Supabase project is the primary profile, but the documentation and audit model can be adapted to adjacent stacks.
|
|
49
|
+
- Docker is required only for mutation commands in the optional executable runtime.
|
|
22
50
|
|
|
23
51
|
## Quick Start
|
|
24
52
|
|
|
25
|
-
|
|
53
|
+
### Zero-install trial
|
|
54
|
+
|
|
55
|
+
Run the current package directly in the repository you want to prepare:
|
|
26
56
|
|
|
27
57
|
```bash
|
|
28
|
-
npx @appsforgood/next-supabase-kit@latest init --stack next-supabase --setup --open
|
|
29
|
-
npx @appsforgood/next-supabase-kit audit
|
|
30
|
-
npx @appsforgood/next-supabase-kit audit --min-readiness baseline-setup
|
|
58
|
+
npx --yes @appsforgood/next-supabase-kit@latest init --stack next-supabase --setup --open
|
|
59
|
+
npx --yes @appsforgood/next-supabase-kit@latest audit
|
|
60
|
+
npx --yes @appsforgood/next-supabase-kit@latest audit --min-readiness baseline-setup
|
|
31
61
|
```
|
|
32
62
|
|
|
33
|
-
|
|
63
|
+
The first command installs project-owned documentation and `.agent-kit/` assets, then opens the local Agent Office setup flow. Existing customized files are preserved; changed templates are written to `.agent-kit/conflicts/` for review.
|
|
64
|
+
|
|
65
|
+
### Local development dependency
|
|
66
|
+
|
|
67
|
+
Install the CLI when the project will use it repeatedly or in CI:
|
|
34
68
|
|
|
35
69
|
```bash
|
|
36
|
-
|
|
37
|
-
npx
|
|
70
|
+
npm install --save-dev @appsforgood/next-supabase-kit
|
|
71
|
+
npx agent-kit init --stack next-supabase --setup --open
|
|
72
|
+
npx agent-kit audit --min-readiness baseline-setup
|
|
38
73
|
```
|
|
39
74
|
|
|
40
|
-
|
|
75
|
+
Add convenient package scripts:
|
|
41
76
|
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
|
|
77
|
+
```json
|
|
78
|
+
{
|
|
79
|
+
"scripts": {
|
|
80
|
+
"agent:audit": "agent-kit audit --min-readiness baseline-setup",
|
|
81
|
+
"agent:setup": "agent-kit setup --open",
|
|
82
|
+
"agent:studio": "agent-kit studio serve --open"
|
|
83
|
+
}
|
|
84
|
+
}
|
|
45
85
|
```
|
|
46
86
|
|
|
47
|
-
|
|
87
|
+
Then run:
|
|
48
88
|
|
|
49
89
|
```bash
|
|
50
|
-
npm
|
|
51
|
-
agent-kit orchestrate validate
|
|
52
|
-
agent-kit orchestrate plan "Describe the goal"
|
|
90
|
+
npm run agent:audit
|
|
53
91
|
```
|
|
54
92
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
The installer preserves existing docs. If a file already exists and differs from the template, the new version is written to `.agent-kit/conflicts/` for review.
|
|
93
|
+
## First-Run Examples
|
|
58
94
|
|
|
59
|
-
###
|
|
95
|
+
### Preview before writing
|
|
60
96
|
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
Created (21)
|
|
65
|
-
AGENTS.md
|
|
66
|
-
AGENT_ROSTER.md
|
|
67
|
-
ASSISTANT_ADAPTERS.md
|
|
68
|
-
...
|
|
69
|
-
.cursor/rules/cursor-agent-kit.mdc
|
|
70
|
-
.agent-kit/agent-roster.json
|
|
71
|
-
.agent-kit/model-routing.json
|
|
97
|
+
```bash
|
|
98
|
+
npx agent-kit init --stack next-supabase --guided --dry-run --json
|
|
99
|
+
```
|
|
72
100
|
|
|
73
|
-
|
|
74
|
-
Next: run agent-kit audit to check readiness.
|
|
101
|
+
### Install without opening a browser
|
|
75
102
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
NEXT ACTIONS
|
|
81
|
-
- Run agent-kit onboard or agent-kit init --guided so agents can start
|
|
82
|
-
with project-specific context.
|
|
103
|
+
```bash
|
|
104
|
+
npx agent-kit init --stack next-supabase --no-setup
|
|
105
|
+
npx agent-kit context init
|
|
106
|
+
npx agent-kit context ask
|
|
83
107
|
```
|
|
84
108
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
For local development of this repo:
|
|
109
|
+
### Resume project onboarding
|
|
88
110
|
|
|
89
111
|
```bash
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
npm test
|
|
93
|
-
npm run release:check
|
|
112
|
+
npx agent-kit setup --open
|
|
113
|
+
npx agent-kit setup --status
|
|
94
114
|
```
|
|
95
115
|
|
|
96
|
-
|
|
116
|
+
The setup server binds to `127.0.0.1:9321` by default:
|
|
97
117
|
|
|
98
|
-
|
|
118
|
+
- `/` or `/office`: Agent Office.
|
|
119
|
+
- `/wizard`: form-based fallback.
|
|
99
120
|
|
|
100
|
-
|
|
121
|
+
Use a different port when needed:
|
|
101
122
|
|
|
102
|
-
```
|
|
103
|
-
|
|
123
|
+
```bash
|
|
124
|
+
npx agent-kit setup --port 9400 --open
|
|
104
125
|
```
|
|
105
126
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
### Core lifecycle commands
|
|
127
|
+
### Activate IDE adapters
|
|
109
128
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
| Build frontend/UI | `/frontend` | Content-first design | frontend-design-lead skills |
|
|
117
|
-
| Check kit readiness | `/audit` | Evidence before claims | best-practice-maturity-review |
|
|
118
|
-
| Prove behavior | `/test` | Tests are proof | testing-qa, qa-engineer |
|
|
119
|
-
| Review before merge | `/review` | Improve code health | qa-engineer + security-reviewer |
|
|
120
|
-
| Security signoff | `/security` | RLS at the boundary | owasp-security-review, supabase-auth-rls |
|
|
121
|
-
| Public copy | `/copy` | Proof before publish | marketing-copy-lead |
|
|
122
|
-
| Ship release | `/ship` | Faster is safer | deployment-observability, release gates |
|
|
123
|
-
| Upgrade kit/deps | `/upgrade` | Diff before overwrite | upgrade-maintenance |
|
|
129
|
+
```bash
|
|
130
|
+
npx agent-kit init --activate cursor
|
|
131
|
+
npx agent-kit init --activate codex
|
|
132
|
+
npx agent-kit init --activate antigravity
|
|
133
|
+
npx agent-kit adapter validate all
|
|
134
|
+
```
|
|
124
135
|
|
|
125
|
-
|
|
136
|
+
Activation promotes the relevant adapter files. The IDE or coding agent still decides when and how to load them; review `ASSISTANT_ADAPTERS.md` for the exact behavior of each tool.
|
|
126
137
|
|
|
127
|
-
|
|
138
|
+
## Audit Examples
|
|
128
139
|
|
|
129
|
-
|
|
130
|
-
| --- | --- | --- |
|
|
131
|
-
| Audit UI before release | `/ui-audit` | Detect before ship |
|
|
132
|
-
| Improve visual quality | `/ui-polish` | Scope-safe polish |
|
|
133
|
-
| Repair layout structure | `/layout-cleanup` | Hierarchy over decoration |
|
|
134
|
-
| Fix responsive behavior | `/responsive-cleanup` | Mobile is not an afterthought |
|
|
135
|
-
| WCAG 2.1 AA pass | `/accessibility-pass` | Keyboard and contrast matter |
|
|
136
|
-
| Prove product distinctiveness | `/distinctiveness-pass` | Not interchangeable SaaS |
|
|
137
|
-
| Critique screenshots | `/screenshot-critique` | Evidence over opinion |
|
|
138
|
-
| Live browser QA loop | `/browser-qa` | Measure in the real UI |
|
|
140
|
+
### Human-readable readiness report
|
|
139
141
|
|
|
140
|
-
|
|
142
|
+
```bash
|
|
143
|
+
npx agent-kit audit
|
|
144
|
+
```
|
|
141
145
|
|
|
142
|
-
###
|
|
146
|
+
### Stable JSON output
|
|
143
147
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
| Supabase/Postgres Engineer | Schema, migrations, RLS, auth | supabase-auth-rls, postgres-migrations |
|
|
149
|
-
| Next.js Engineer | App Router, Server Actions, UI state | nextjs-app-router, frontend-design-system |
|
|
150
|
-
| Frontend Design Lead | Design gates, visual QA, anti-generic UI | content-first-design, ui-improvement-harness |
|
|
151
|
-
| Marketing Copy Lead | Positioning, conversion copy, CTAs | positioning-messaging, conversion-copywriting |
|
|
152
|
-
| Security Reviewer | OWASP, auth boundaries, secrets | owasp-security-review, supabase-auth-rls |
|
|
153
|
-
| QA Engineer | Tests, regression, acceptance evidence | testing-qa, visual-regression-qa |
|
|
154
|
-
| Documentation Maintainer | Living docs, spec, decisions | docs-maintainer, planning-council |
|
|
155
|
-
| Deployment/Observability Engineer | Release, rollback, monitoring | deployment-observability |
|
|
148
|
+
```bash
|
|
149
|
+
npx agent-kit audit --json
|
|
150
|
+
npx agent-kit audit --schema-version 2 --format json
|
|
151
|
+
```
|
|
156
152
|
|
|
157
|
-
###
|
|
153
|
+
### SARIF for code-scanning systems
|
|
158
154
|
|
|
159
|
-
|
|
155
|
+
```bash
|
|
156
|
+
npx agent-kit audit --schema-version 2 --format sarif > agent-kit.sarif
|
|
157
|
+
```
|
|
160
158
|
|
|
161
|
-
|
|
159
|
+
### Fail CI below the required evidence level
|
|
162
160
|
|
|
163
|
-
|
|
161
|
+
```bash
|
|
162
|
+
npx agent-kit audit --min-readiness baseline-setup
|
|
163
|
+
```
|
|
164
164
|
|
|
165
|
-
|
|
165
|
+
Readiness levels are:
|
|
166
|
+
|
|
167
|
+
1. `needs-setup`
|
|
168
|
+
2. `baseline-setup`
|
|
169
|
+
3. `needs-improvement`
|
|
170
|
+
4. `best-practice-candidate`
|
|
171
|
+
|
|
172
|
+
Example GitHub Actions job:
|
|
173
|
+
|
|
174
|
+
```yaml
|
|
175
|
+
name: Agent Kit Audit
|
|
176
|
+
|
|
177
|
+
on:
|
|
178
|
+
pull_request:
|
|
179
|
+
push:
|
|
180
|
+
branches: [main]
|
|
181
|
+
|
|
182
|
+
jobs:
|
|
183
|
+
audit:
|
|
184
|
+
runs-on: ubuntu-latest
|
|
185
|
+
permissions:
|
|
186
|
+
contents: read
|
|
187
|
+
steps:
|
|
188
|
+
- uses: actions/checkout@v6
|
|
189
|
+
with:
|
|
190
|
+
persist-credentials: false
|
|
191
|
+
- uses: actions/setup-node@v6
|
|
192
|
+
with:
|
|
193
|
+
node-version: 24
|
|
194
|
+
cache: npm
|
|
195
|
+
- run: npm ci
|
|
196
|
+
- run: npx agent-kit audit --min-readiness baseline-setup
|
|
197
|
+
```
|
|
166
198
|
|
|
167
|
-
|
|
199
|
+
The installed template at `.github/workflows/agent-kit-audit.yml` is the maintained starting point.
|
|
168
200
|
|
|
169
|
-
|
|
201
|
+
## Common Delivery Workflows
|
|
170
202
|
|
|
171
|
-
|
|
172
|
-
- **Runtime wrappers** in `runtime-skills/*/SKILL.md` expose the same content to Antigravity and other skill-directory runtimes.
|
|
173
|
-
- **Roster routing** in `.agent-kit/agent-roster.json` maps `defaultFor` keywords and workflows to agents and their default skill sets—slash commands and natural-language requests both use the same contract.
|
|
203
|
+
### Plan and record a feature
|
|
174
204
|
|
|
175
|
-
|
|
205
|
+
```bash
|
|
206
|
+
npx agent-kit session start "Add organization invitations" --workflow core-change
|
|
207
|
+
npx agent-kit session decision "Keep authorization in Supabase RLS and server-side mutation boundaries."
|
|
208
|
+
npx agent-kit session handoff \
|
|
209
|
+
--from planner \
|
|
210
|
+
--to lead-architect \
|
|
211
|
+
--decision "Review the invitation data and auth boundaries." \
|
|
212
|
+
--risk "Invitation tokens and tenant isolation require explicit review."
|
|
213
|
+
npx agent-kit session artifact --file SPEC.md
|
|
214
|
+
npx agent-kit session verify \
|
|
215
|
+
--command "npm test" \
|
|
216
|
+
--result pass \
|
|
217
|
+
--notes "Invitation unit and regression tests passed."
|
|
218
|
+
npx agent-kit session render
|
|
219
|
+
npx agent-kit session close --status complete
|
|
220
|
+
```
|
|
176
221
|
|
|
177
|
-
|
|
222
|
+
### Record several events at once
|
|
223
|
+
|
|
224
|
+
```json
|
|
225
|
+
{
|
|
226
|
+
"events": [
|
|
227
|
+
{
|
|
228
|
+
"type": "decision",
|
|
229
|
+
"agent": "lead-architect",
|
|
230
|
+
"text": "Use a server action for the mutation and RLS for authorization."
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"type": "artifact",
|
|
234
|
+
"agent": "nextjs-engineer",
|
|
235
|
+
"path": "app/invitations/actions.ts"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"type": "verification",
|
|
239
|
+
"agent": "qa-engineer",
|
|
240
|
+
"command": "npm test",
|
|
241
|
+
"result": "pass",
|
|
242
|
+
"notes": "Regression suite passed."
|
|
243
|
+
}
|
|
244
|
+
]
|
|
245
|
+
}
|
|
246
|
+
```
|
|
178
247
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
- `MODEL_ROUTING.md`: model-profile guidance for each agent and IDE.
|
|
184
|
-
- `QUALITY_GATES.md`: what separates baseline setup, strong delivery, and best-practice evidence.
|
|
185
|
-
- `DESIGN.md`: the frontend design and content contract.
|
|
186
|
-
- `MESSAGING.md`: the positioning, value proposition, proof, objections, voice, and CTA contract.
|
|
187
|
-
- `COUNCIL.md`: where meaningful handoffs and decisions are recorded.
|
|
248
|
+
```bash
|
|
249
|
+
npx agent-kit session checkpoint --file .agent-kit/checkpoint.json
|
|
250
|
+
npx agent-kit session render
|
|
251
|
+
```
|
|
188
252
|
|
|
189
|
-
|
|
253
|
+
### Review a frontend change
|
|
190
254
|
|
|
191
|
-
|
|
192
|
-
- Lead Architect reviews core changes before implementation.
|
|
193
|
-
- Security Reviewer joins auth, RLS, data mutation, dependency, secret, external-call, and release-risk work.
|
|
194
|
-
- Frontend Design Lead owns content-first design, reference-led critique, distinctiveness benchmarking, product-quality scoring, UI detector severity review, command-based polish/audit loops, and visual QA.
|
|
195
|
-
- Marketing Copy Lead owns public-facing and conversion-facing copy, positioning, proof, objections, voice, and CTA hierarchy.
|
|
196
|
-
- QA Engineer verifies behavior changes before completion.
|
|
197
|
-
- Documentation Maintainer keeps the living markdown current.
|
|
255
|
+
Use the installed command instructions as prompt prefixes in compatible coding tools, or as native commands after activating Antigravity:
|
|
198
256
|
|
|
199
|
-
|
|
257
|
+
```text
|
|
258
|
+
/frontend Build the account settings workflow.
|
|
259
|
+
/ui-audit Review the implementation against the product-quality gates.
|
|
260
|
+
/responsive-cleanup Verify 390px, tablet, and desktop layouts.
|
|
261
|
+
/accessibility-pass Check keyboard, focus, labels, contrast, and error recovery.
|
|
262
|
+
/screenshot-critique Compare desktop and mobile screenshots against DESIGN.md.
|
|
263
|
+
```
|
|
200
264
|
|
|
201
|
-
|
|
265
|
+
The UI detector checks include concrete replacements:
|
|
202
266
|
|
|
203
|
-
|
|
267
|
+
| Avoid | Prefer |
|
|
268
|
+
| --- | --- |
|
|
269
|
+
| Thick colored side rails and gradient borders on cards | Quiet 1px full borders, semantic icons, labels, and subtle state tint |
|
|
270
|
+
| Purple/blue gradient heroes and glowing blobs | Product imagery, real workflow screenshots, concrete content, or tokenized neutral surfaces |
|
|
271
|
+
| Decorative card grids | Tables, lists, forms, timelines, split panes, and task-specific grouping |
|
|
272
|
+
| Invented metrics and placeholder charts | Real data, clearly labelled samples, empty states, or connection prompts |
|
|
273
|
+
| "Supercharge your workflow" and similar copy | Specific actions, product nouns, constraints, and supported outcomes |
|
|
274
|
+
| Decorative badge or icon walls | Real integrations, security posture, support details, commands, states, and navigation |
|
|
275
|
+
| Frosted oversized panels | Normal surfaces, practical density, and clear section boundaries |
|
|
276
|
+
| Color-only status | Semantic text, icons, accessible contrast, ARIA state, and recovery actions |
|
|
204
277
|
|
|
205
|
-
|
|
278
|
+
Exceptions for an established brand system should be recorded in `DESIGN.md` or `.agent-kit/overrides.json`.
|
|
206
279
|
|
|
207
|
-
|
|
208
|
-
| --- | --- |
|
|
209
|
-
| `init` | Install docs, roster, skills, schemas, Cursor rules, and project context |
|
|
210
|
-
| `diff` | Compare local docs against bundled templates |
|
|
211
|
-
| `update` | Hash-aware upgrade: pristine docs refresh, local edits kept, conflicts for review |
|
|
212
|
-
| `add skill <name>` | Copy one skill into `.agent-kit/skills/` |
|
|
213
|
-
| `onboard` | Print the recommended first-run checklist |
|
|
280
|
+
### Review Supabase auth or RLS work
|
|
214
281
|
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
agent-kit update --dry-run
|
|
220
|
-
agent-kit add skill ui-improvement-harness
|
|
282
|
+
```text
|
|
283
|
+
/plan Add team-scoped document sharing.
|
|
284
|
+
/security Review tenant isolation, IDOR risk, service-role use, and RLS coverage.
|
|
285
|
+
/test Add cross-tenant read/write denial tests and an authorized happy path.
|
|
221
286
|
```
|
|
222
287
|
|
|
223
|
-
|
|
224
|
-
`update` flags: `--dry-run`, `--force`, `--json`.
|
|
225
|
-
|
|
226
|
-
### Setup and Agent Office
|
|
288
|
+
Required evidence should include:
|
|
227
289
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
290
|
+
- Migration and rollback implications.
|
|
291
|
+
- RLS policies at the data boundary.
|
|
292
|
+
- Cross-tenant denial tests.
|
|
293
|
+
- Service-role isolation.
|
|
294
|
+
- Server-side input validation.
|
|
295
|
+
- Explicit failure and empty states.
|
|
232
296
|
|
|
233
|
-
|
|
297
|
+
### Preserve a durable correction
|
|
234
298
|
|
|
235
299
|
```bash
|
|
236
|
-
agent-kit
|
|
237
|
-
|
|
300
|
+
npx agent-kit correction add --scope project \
|
|
301
|
+
"Use task-first operational layouts; do not add marketing heroes to authenticated tools."
|
|
302
|
+
npx agent-kit correction list
|
|
303
|
+
npx agent-kit correction apply <correction-id>
|
|
238
304
|
```
|
|
239
305
|
|
|
240
|
-
|
|
306
|
+
Applied project and agent corrections are loaded before meaningful work. Use `correction retire <id> --reason "..." ` when a rule no longer applies.
|
|
241
307
|
|
|
242
|
-
|
|
243
|
-
| --- | --- |
|
|
244
|
-
| `audit` | Readiness report with pass/warn/fail findings |
|
|
245
|
-
| `doctor` | Validate CLI runtime prerequisites |
|
|
246
|
-
| `adapter validate [target]` | Validate IDE/runtime adapter assets (`cursor`, `claude`, `codex`, `copilot`, `antigravity`, `all`) |
|
|
247
|
-
| `package validate` | Source-repo release asset validation (maintainers) |
|
|
308
|
+
### Inspect sessions in Agent Studio
|
|
248
309
|
|
|
249
310
|
```bash
|
|
250
|
-
agent-kit
|
|
251
|
-
agent-kit
|
|
252
|
-
agent-kit doctor --json
|
|
311
|
+
npx agent-kit studio export
|
|
312
|
+
npx agent-kit studio serve --open
|
|
253
313
|
```
|
|
254
314
|
|
|
255
|
-
|
|
315
|
+
- Static export: `.agent-kit/studio/index.html`.
|
|
316
|
+
- Live Studio: `http://127.0.0.1:9331` by default.
|
|
317
|
+
- Live sessions use local append-only events and Server-Sent Events.
|
|
256
318
|
|
|
257
|
-
|
|
319
|
+
## Updating An Existing Install
|
|
258
320
|
|
|
259
|
-
|
|
260
|
-
| --- | --- |
|
|
261
|
-
| `context init` | Create or refresh `.agent-kit/project-context.json` |
|
|
262
|
-
| `context scan` | Print inferred context without writing |
|
|
263
|
-
| `context ask` | List unanswered high-value context questions |
|
|
264
|
-
| `context render` | Render `.agent-kit/project-context.md` |
|
|
265
|
-
| `context validate` | Validate context against schema |
|
|
266
|
-
| `context show` | Print current context JSON |
|
|
321
|
+
Preview template drift before applying an update:
|
|
267
322
|
|
|
268
323
|
```bash
|
|
269
|
-
agent-kit
|
|
270
|
-
agent-kit
|
|
324
|
+
npx agent-kit diff --json
|
|
325
|
+
npx agent-kit update --dry-run --json
|
|
326
|
+
npx agent-kit update
|
|
327
|
+
npx agent-kit audit --min-readiness baseline-setup
|
|
271
328
|
```
|
|
272
329
|
|
|
273
|
-
|
|
330
|
+
Update behavior:
|
|
274
331
|
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
| `session render` / `session close` | Render Markdown and close the session |
|
|
332
|
+
- Pristine installed files are refreshed.
|
|
333
|
+
- Project-owned edits are preserved.
|
|
334
|
+
- Template changes that collide with local edits are written to `.agent-kit/conflicts/`.
|
|
335
|
+
- `--force` is explicit and should be used only after reviewing the diff.
|
|
336
|
+
- Accepted deviations belong in `.agent-kit/overrides.json`.
|
|
337
|
+
|
|
338
|
+
Example conflict review:
|
|
283
339
|
|
|
284
340
|
```bash
|
|
285
|
-
agent-kit
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
agent-kit session output "visual QA evidence" --status not-applicable --evidence "No UI change."
|
|
289
|
-
agent-kit session checkpoint --file .agent-kit/checkpoint.json
|
|
290
|
-
agent-kit session render
|
|
291
|
-
agent-kit session close --status complete
|
|
341
|
+
npx agent-kit update --dry-run
|
|
342
|
+
git diff -- .agent-kit/manifest.json
|
|
343
|
+
git status --short .agent-kit/conflicts
|
|
292
344
|
```
|
|
293
345
|
|
|
294
|
-
|
|
346
|
+
## Optional Executable Runtime
|
|
295
347
|
|
|
296
|
-
|
|
297
|
-
| --- | --- |
|
|
298
|
-
| `orchestrate validate` | Validate runtime config, roster references, and bounds without provider calls |
|
|
299
|
-
| `orchestrate plan <goal...>` | Compile the offline workflow sequence and approval envelope |
|
|
300
|
-
| `orchestrate run <goal...>` | Start a checkpointed run in an isolated worktree |
|
|
301
|
-
| `orchestrate approve <run-id>` | Approve the current gate and resume |
|
|
302
|
-
| `orchestrate resume <run-id> --decision ...` | Explicitly approve or reject a gate |
|
|
303
|
-
| `orchestrate status [run-id]` | Read persisted run state |
|
|
304
|
-
| `orchestrate cancel <run-id>` | Cancel a paused or local in-process run |
|
|
305
|
-
| `orchestrate export <run-id>` | Render redacted run evidence as Markdown |
|
|
306
|
-
| `provider probe`, `mcp probe` | Explicitly test configured external adapters |
|
|
307
|
-
| `credential set`, `credential delete` | Manage OS-keychain references without CLI value flags |
|
|
308
|
-
|
|
309
|
-
The runtime may create one approved scoped commit on `agent-kit/<run-id>`. It never merges, pushes, opens a pull request, deploys, or applies migrations. See [RUNTIME_ORCHESTRATION_SCOPE.md](RUNTIME_ORCHESTRATION_SCOPE.md) and [packages/runtime/README.md](packages/runtime/README.md).
|
|
310
|
-
|
|
311
|
-
### Corrections
|
|
312
|
-
|
|
313
|
-
| Command | Purpose |
|
|
314
|
-
| --- | --- |
|
|
315
|
-
| `correction list` | List durable project and agent correction rules |
|
|
316
|
-
| `correction add` | Add a correction (`--scope project\|agent\|session`) |
|
|
317
|
-
| `correction apply` | Promote a correction into active rules |
|
|
318
|
-
| `correction retire` | Retire a correction with reason |
|
|
319
|
-
| `correction propose-upstream` | Flag a correction for kit promotion |
|
|
348
|
+
Install both packages locally. The runtime package does not provide the `agent-kit` binary by itself.
|
|
320
349
|
|
|
321
350
|
```bash
|
|
322
|
-
|
|
323
|
-
|
|
351
|
+
npm install --save-dev \
|
|
352
|
+
@appsforgood/next-supabase-kit \
|
|
353
|
+
@appsforgood/agent-kit-runtime
|
|
354
|
+
npx agent-kit orchestrate validate
|
|
324
355
|
```
|
|
325
356
|
|
|
326
|
-
|
|
357
|
+
Fresh installs include a disabled `.agent-kit/orchestrator.json`. Configure provider model IDs that you have verified for the current provider account. Credentials must be references, not inline secret values.
|
|
358
|
+
|
|
359
|
+
Minimal configuration example:
|
|
360
|
+
|
|
361
|
+
```json
|
|
362
|
+
{
|
|
363
|
+
"schemaVersion": 1,
|
|
364
|
+
"enabled": true,
|
|
365
|
+
"defaultWorkflow": "planning",
|
|
366
|
+
"defaultAlias": "balanced",
|
|
367
|
+
"providers": {
|
|
368
|
+
"primary": {
|
|
369
|
+
"kind": "openai",
|
|
370
|
+
"credentialRef": "env:OPENAI_API_KEY"
|
|
371
|
+
}
|
|
372
|
+
},
|
|
373
|
+
"modelAliases": {
|
|
374
|
+
"balanced": {
|
|
375
|
+
"requiredCapabilities": ["text", "tools"],
|
|
376
|
+
"maxAttempts": 1,
|
|
377
|
+
"candidates": [
|
|
378
|
+
{
|
|
379
|
+
"provider": "primary",
|
|
380
|
+
"model": "replace-with-a-verified-provider-model-id"
|
|
381
|
+
}
|
|
382
|
+
]
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
```
|
|
327
387
|
|
|
328
|
-
|
|
329
|
-
| --- | --- |
|
|
330
|
-
| `studio export` | Generate self-contained static HTML at `.agent-kit/studio/index.html` |
|
|
331
|
-
| `studio serve` | Live localhost Agent Office with SSE session events (default port `9331`) |
|
|
388
|
+
Validate and inspect the plan without calling a provider:
|
|
332
389
|
|
|
333
390
|
```bash
|
|
334
|
-
agent-kit
|
|
335
|
-
agent-kit
|
|
391
|
+
npx agent-kit orchestrate validate
|
|
392
|
+
npx agent-kit orchestrate plan "Review the authorization boundary" --workflow planning
|
|
336
393
|
```
|
|
337
394
|
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
Requires `GITHUB_TOKEN` in the environment.
|
|
395
|
+
Start and manage a run:
|
|
341
396
|
|
|
342
397
|
```bash
|
|
343
|
-
agent-kit
|
|
344
|
-
agent-kit
|
|
345
|
-
agent-kit
|
|
346
|
-
agent-kit
|
|
398
|
+
npx agent-kit orchestrate run "Implement the approved authorization fix" --workflow core-change
|
|
399
|
+
npx agent-kit orchestrate status
|
|
400
|
+
npx agent-kit orchestrate approve <run-id>
|
|
401
|
+
npx agent-kit orchestrate resume <run-id> --decision approve
|
|
402
|
+
npx agent-kit orchestrate export <run-id> --output .agent-kit/runtime-export.md
|
|
347
403
|
```
|
|
348
404
|
|
|
349
|
-
|
|
405
|
+
Reject or cancel:
|
|
350
406
|
|
|
351
|
-
|
|
407
|
+
```bash
|
|
408
|
+
npx agent-kit orchestrate resume <run-id> --decision reject
|
|
409
|
+
npx agent-kit orchestrate cancel <run-id>
|
|
410
|
+
```
|
|
352
411
|
|
|
353
|
-
|
|
354
|
-
AGENTS.md
|
|
355
|
-
AGENT_ROSTER.md
|
|
356
|
-
ASSISTANT_ADAPTERS.md
|
|
357
|
-
COUNCIL.md
|
|
358
|
-
SKILLS.md
|
|
359
|
-
SPEC.md
|
|
360
|
-
DECISIONS.md
|
|
361
|
-
DOCS.md
|
|
362
|
-
DESIGN.md
|
|
363
|
-
MESSAGING.md
|
|
364
|
-
MODEL_ROUTING.md
|
|
365
|
-
QUALITY_GATES.md
|
|
366
|
-
STYLE_GUIDE.md
|
|
367
|
-
SECURITY.md
|
|
368
|
-
TESTING.md
|
|
369
|
-
DEPLOYMENT.md
|
|
370
|
-
UPGRADE.md
|
|
371
|
-
```
|
|
372
|
-
|
|
373
|
-
The `.agent-kit/` folder includes:
|
|
374
|
-
|
|
375
|
-
- `agent-roster.json` for default workflow routing.
|
|
376
|
-
- `model-routing.json` for provider-neutral model profile routing.
|
|
377
|
-
- `project-context.json`, `project-context.md`, `corrections/`, and `council-sessions/` for local Agent Studio context, correction rules, session events, and rendered transcripts.
|
|
378
|
-
- `schemas/` for agent roster, council-session, model-routing, project context, correction rules, session events, studio sessions, and audit-report contracts.
|
|
379
|
-
- `agents/`, `skills/`, `runtime-skills/`, `prompts/`, and `checklists/`.
|
|
380
|
-
- `assistant-adapters/` for Codex/AGENTS.md-compatible tools, GitHub Copilot/VS Code, Cursor, Claude Code, and Antigravity.
|
|
381
|
-
- `antigravity/` for native command and plugin assets.
|
|
382
|
-
- `design-briefs/` for SaaS, admin, marketplace, content, tool, ecommerce, portfolio/venue, education, community/social, and AI workflow surfaces.
|
|
383
|
-
- `profiles/` for product-type and adjacent-stack adaptation.
|
|
384
|
-
|
|
385
|
-
## AI Mechanisms
|
|
386
|
-
|
|
387
|
-
Agent Kit separates the mechanisms that make AI coding repeatable:
|
|
388
|
-
|
|
389
|
-
- Instructions: `AGENTS.md`, assistant adapters, and IDE-specific rule files.
|
|
390
|
-
- Roster: `.agent-kit/agent-roster.json` chooses agents, workflows, and handoffs.
|
|
391
|
-
- Skills: `.agent-kit/skills/` keeps specialist workflows reusable.
|
|
392
|
-
- Runtime commands: Antigravity `commands/*.toml` expose `/setup`, `/spec`, `/audit`, `/plan`, `/handoff`, `/frontend`, `/test`, `/review`, focused UI improvement commands, `/security`, `/copy`, `/ship`, and `/upgrade` as native adapter entrypoints.
|
|
393
|
-
- Portable skills: `runtime-skills/*/SKILL.md` wraps canonical `skills/*.md` files for runtimes that discover skill directories.
|
|
394
|
-
- Model routing: `MODEL_ROUTING.md` and `.agent-kit/model-routing.json` map agents to model profiles.
|
|
395
|
-
- Messaging: `MESSAGING.md` records audience, pain, outcome, proof, objections, voice, and conversion evidence for public-facing copy.
|
|
396
|
-
- Local Agent Studio: `.agent-kit/project-context.*`, `.agent-kit/corrections/*.json`, and `.agent-kit/council-sessions/*` keep context, corrections, decisions, handoffs, required-output status, artifacts, verification, and rendered Markdown transcripts local.
|
|
397
|
-
- Tools and MCP: `ASSISTANT_ADAPTERS.md` records browser, GitHub, Figma, Supabase, docs, or other connector setup.
|
|
398
|
-
- Hooks and CI: optional local enforcement plus `agent-kit audit`, tests, install smoke, SBOM, and release gates.
|
|
399
|
-
|
|
400
|
-
Some IDEs can partially enforce model settings; others only let project files advise the user. The kit records that difference instead of pretending every tool can force per-agent model selection.
|
|
401
|
-
|
|
402
|
-
Runtime command files are adapters only. `AGENTS.md`, `.agent-kit/agent-roster.json`, `QUALITY_GATES.md`, and Agent Studio session evidence remain the canonical operating model.
|
|
403
|
-
|
|
404
|
-
## Frontend Quality Bar
|
|
405
|
-
|
|
406
|
-
The kit is intentionally strict about frontend work because normal AI output often looks generic.
|
|
407
|
-
|
|
408
|
-
Significant UI work should prove:
|
|
409
|
-
|
|
410
|
-
- Brand/content intake and real user needs.
|
|
411
|
-
- A selected creative direction, with rejected alternatives.
|
|
412
|
-
- Reference lessons and anti-references without copied source designs.
|
|
413
|
-
- First-screen proof that the real product task, object, workflow, or content is visible.
|
|
414
|
-
- A content fingerprint: real product nouns, labels, data shapes, actions, and edge cases.
|
|
415
|
-
- Asset provenance for real, generated, licensed, and placeholder visuals.
|
|
416
|
-
- Product-quality scorecard evidence.
|
|
417
|
-
- Desktop, mobile, key states, accessibility, and visual QA evidence.
|
|
418
|
-
|
|
419
|
-
The Frontend Design Lead should reject work that would still look valid for another product after only changing the logo or headline.
|
|
420
|
-
|
|
421
|
-
Operational UI improvement workflows live in `.agent-kit/prompts/ui-command-index.md` and ship as Antigravity commands: `/ui-audit`, `/ui-polish`, `/layout-cleanup`, `/responsive-cleanup`, `/accessibility-pass`, `/distinctiveness-pass`, `/screenshot-critique`, and `/browser-qa`. Use `.agent-kit/checklists/ui-detectors.md` for deterministic blocker/major/minor findings and `.agent-kit/checklists/ui-acceptance-rubric.md` for pass/fail decisions. High-risk UI work requires desktop and mobile screenshots plus authenticated or permission-state evidence when the surface is not public.
|
|
422
|
-
|
|
423
|
-
## Security Bar
|
|
424
|
-
|
|
425
|
-
The kit treats these as defaults, not optional polish:
|
|
426
|
-
|
|
427
|
-
- OWASP Top 10 review for auth, API, Server Action, external-call, upload, and dependency changes.
|
|
428
|
-
- Supabase RLS at the data boundary.
|
|
429
|
-
- Service-role keys isolated to trusted server code.
|
|
430
|
-
- Input validation and safe output rendering.
|
|
431
|
-
- IDOR, SSRF, injection, broken auth, and misconfiguration review.
|
|
432
|
-
- Dependency audit before release.
|
|
412
|
+
Probe external adapters explicitly:
|
|
433
413
|
|
|
434
|
-
|
|
414
|
+
```bash
|
|
415
|
+
npx agent-kit provider probe
|
|
416
|
+
npx agent-kit provider probe primary
|
|
417
|
+
npx agent-kit mcp probe project-tools
|
|
418
|
+
```
|
|
435
419
|
|
|
436
|
-
|
|
420
|
+
Store a keychain-backed credential through a masked prompt:
|
|
437
421
|
|
|
438
422
|
```bash
|
|
439
|
-
agent-kit
|
|
440
|
-
agent-kit
|
|
441
|
-
agent-kit update
|
|
442
|
-
agent-kit audit --min-readiness baseline-setup
|
|
423
|
+
npx agent-kit credential set keychain:team-openai
|
|
424
|
+
npx agent-kit credential delete keychain:team-openai
|
|
443
425
|
```
|
|
444
426
|
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
## Research Evidence
|
|
427
|
+
### Runtime boundaries
|
|
448
428
|
|
|
449
|
-
|
|
429
|
+
- Mutations occur in an isolated Git worktree.
|
|
430
|
+
- Docker mutation containers use a read-only root, dropped capabilities, `no-new-privileges`, resource limits, and no network by default.
|
|
431
|
+
- File tools reject traversal, symlink escapes, Git internals, environment files, private keys, package-manager credentials, and runtime evidence paths.
|
|
432
|
+
- Network, host execution, worktree writes, and final commits require applicable approval gates.
|
|
433
|
+
- One approved scoped commit may be created on `agent-kit/<run-id>`.
|
|
434
|
+
- The runtime never merges, pushes, opens a pull request, deploys, or applies a migration automatically.
|
|
450
435
|
|
|
451
|
-
|
|
436
|
+
See [Runtime orchestration scope](RUNTIME_ORCHESTRATION_SCOPE.md) and the [runtime package README](packages/runtime/README.md) for provider, MCP, sandbox, checkpoint, and recovery details.
|
|
452
437
|
|
|
453
|
-
|
|
438
|
+
## Installed Project Contract
|
|
454
439
|
|
|
455
|
-
|
|
456
|
-
- `research/summaries/`: public-safe research summaries.
|
|
457
|
-
- `research/proposed-updates.md`: promoted and future updates.
|
|
458
|
-
- `DOGFOOD.md`: public-safe downstream adoption evidence.
|
|
459
|
-
- `ROADMAP.md`: the phased done/left tracker.
|
|
440
|
+
Important root documents:
|
|
460
441
|
|
|
461
|
-
|
|
442
|
+
| File | Purpose |
|
|
443
|
+
| --- | --- |
|
|
444
|
+
| `AGENTS.md` | High-level operating instructions and required handoffs |
|
|
445
|
+
| `AGENT_ROSTER.md` | Human-readable specialist ownership |
|
|
446
|
+
| `SPEC.md` | Current functional and technical contract |
|
|
447
|
+
| `DECISIONS.md` | Architectural decisions and consequences |
|
|
448
|
+
| `DESIGN.md` | Brand, content, UI rules, anti-references, and approved exceptions |
|
|
449
|
+
| `MESSAGING.md` | Audience, positioning, proof, objections, voice, and CTA rules |
|
|
450
|
+
| `QUALITY_GATES.md` | Evidence required for each readiness level |
|
|
451
|
+
| `SECURITY.md` | Auth, data, dependency, secret, and threat boundaries |
|
|
452
|
+
| `TESTING.md` | Unit, regression, smoke, visual, and release evidence |
|
|
453
|
+
| `DEPLOYMENT.md` | Environment, release, rollback, and observability guidance |
|
|
454
|
+
| `UPGRADE.md` | Template and dependency upgrade history |
|
|
455
|
+
|
|
456
|
+
Important `.agent-kit/` assets:
|
|
457
|
+
|
|
458
|
+
- `agent-roster.json`: workflow, agent, and handoff contract.
|
|
459
|
+
- `model-routing.json`: provider-neutral model profiles.
|
|
460
|
+
- `project-context.json` and `project-context.md`: current product and architecture context.
|
|
461
|
+
- `corrections/`: durable project and agent rules.
|
|
462
|
+
- `council-sessions/`: structured decisions, handoffs, outputs, and verification.
|
|
463
|
+
- `skills/`, `prompts/`, and `checklists/`: reusable execution and review procedures.
|
|
464
|
+
- `assistant-adapters/`: IDE-specific installation guidance.
|
|
465
|
+
- `schemas/`: validation contracts for installed evidence.
|
|
466
|
+
|
|
467
|
+
Inspect an example installation:
|
|
468
|
+
|
|
469
|
+
- [Example project README](examples/next-supabase-installed/README.md)
|
|
470
|
+
- [Example installed tree](examples/next-supabase-installed/tree.txt)
|
|
471
|
+
- [Example audit report](examples/next-supabase-installed/audit-output.json)
|
|
472
|
+
|
|
473
|
+
## Workflow Instruction Index
|
|
474
|
+
|
|
475
|
+
The kit includes 20 lifecycle and UI instruction adapters.
|
|
476
|
+
|
|
477
|
+
| Goal | Instruction |
|
|
478
|
+
| --- | --- |
|
|
479
|
+
| Capture project context | `/setup` |
|
|
480
|
+
| Define behavior and constraints | `/spec` |
|
|
481
|
+
| Plan implementation and handoffs | `/plan` |
|
|
482
|
+
| Record agent ownership changes | `/handoff` |
|
|
483
|
+
| Build or review frontend work | `/frontend` |
|
|
484
|
+
| Audit kit readiness | `/audit` |
|
|
485
|
+
| Add verification evidence | `/test` |
|
|
486
|
+
| Review code before merge | `/review` |
|
|
487
|
+
| Review auth, data, secrets, and dependencies | `/security` |
|
|
488
|
+
| Review public or conversion copy | `/copy` |
|
|
489
|
+
| Verify release and rollback evidence | `/ship` |
|
|
490
|
+
| Review template or dependency upgrades | `/upgrade` |
|
|
491
|
+
| Detect UI quality failures | `/ui-audit` |
|
|
492
|
+
| Improve an implemented UI | `/ui-polish` |
|
|
493
|
+
| Repair hierarchy and layout | `/layout-cleanup` |
|
|
494
|
+
| Verify responsive states | `/responsive-cleanup` |
|
|
495
|
+
| Verify WCAG 2.1 AA behavior | `/accessibility-pass` |
|
|
496
|
+
| Check product-specific visual identity | `/distinctiveness-pass` |
|
|
497
|
+
| Critique screenshot evidence | `/screenshot-critique` |
|
|
498
|
+
| Run a browser QA loop | `/browser-qa` |
|
|
499
|
+
|
|
500
|
+
These are instruction adapters, not proof of execution. Canonical steps live in `.agent-kit/prompts/lifecycle-command-index.md` and `.agent-kit/prompts/ui-command-index.md`.
|
|
501
|
+
|
|
502
|
+
## Output And Flag Notes
|
|
503
|
+
|
|
504
|
+
Use command help as the source of truth:
|
|
462
505
|
|
|
463
506
|
```bash
|
|
464
|
-
|
|
465
|
-
agent-kit
|
|
466
|
-
agent-kit
|
|
467
|
-
agent-kit
|
|
468
|
-
agent-kit research propose-updates
|
|
507
|
+
npx agent-kit --help
|
|
508
|
+
npx agent-kit audit --help
|
|
509
|
+
npx agent-kit session --help
|
|
510
|
+
npx agent-kit orchestrate --help
|
|
469
511
|
```
|
|
470
512
|
|
|
471
|
-
|
|
513
|
+
Commands that expose `--json` include `init`, `audit`, `diff`, `update`, `doctor`, adapter/package validation, most session mutations, corrections, orchestrator commands, provider/MCP probes, and Studio export.
|
|
472
514
|
|
|
473
|
-
|
|
515
|
+
Long-running server commands such as `setup` and `studio serve`, interactive credential entry, and maintainer research commands use their documented human output instead.
|
|
474
516
|
|
|
475
|
-
|
|
517
|
+
Commands that support `--dry-run` include `init`, `update`, and `add skill`. Review each command's `--help` output rather than assuming a global flag.
|
|
476
518
|
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
519
|
+
## Security Defaults
|
|
520
|
+
|
|
521
|
+
The installed contract requires:
|
|
480
522
|
|
|
481
|
-
|
|
523
|
+
- Supabase RLS at the data boundary, not only UI authorization.
|
|
524
|
+
- Service-role credentials in trusted server code only.
|
|
525
|
+
- Input validation and safe output rendering at every boundary.
|
|
526
|
+
- IDOR, SSRF, injection, broken-auth, upload, and misconfiguration review.
|
|
527
|
+
- Explicit loading, empty, error, retry, and success states.
|
|
528
|
+
- Cross-tenant denial tests for tenant-scoped data.
|
|
529
|
+
- Dependency audit and release evidence for dependency changes.
|
|
530
|
+
- No secrets, customer data, or private repository evidence in committed session files.
|
|
531
|
+
|
|
532
|
+
## Maintainer Verification
|
|
533
|
+
|
|
534
|
+
For development of this repository:
|
|
535
|
+
|
|
536
|
+
```bash
|
|
537
|
+
npm install
|
|
538
|
+
npm run build
|
|
539
|
+
npm test
|
|
540
|
+
npm run release:check
|
|
541
|
+
```
|
|
482
542
|
|
|
483
|
-
|
|
484
|
-
- Public npm access.
|
|
485
|
-
- npm Trusted Publishing through GitHub Actions OIDC.
|
|
486
|
-
- No long-lived npm publish token for automation.
|
|
487
|
-
- Dependency Review, CodeQL, OpenSSF Scorecard, Dependabot, SBOM validation, and SBOM attestation.
|
|
488
|
-
- Post-publish verification with `npm run publish:verify`.
|
|
543
|
+
`npm run release:check` runs:
|
|
489
544
|
|
|
490
|
-
|
|
545
|
+
- JSON and version consistency checks.
|
|
546
|
+
- TypeScript, ESLint, and Prettier checks.
|
|
547
|
+
- Unit and regression tests with coverage gates.
|
|
548
|
+
- Package build and asset validation.
|
|
549
|
+
- IDE adapter and example-install validation.
|
|
550
|
+
- Install, Studio, setup, and audit-gate smoke tests.
|
|
551
|
+
- Dependency audit.
|
|
552
|
+
- CycloneDX SBOM validation.
|
|
553
|
+
- Root and runtime package dry runs.
|
|
491
554
|
|
|
492
|
-
|
|
555
|
+
The release workflow uses npm Trusted Publishing through GitHub Actions OIDC, creates package-rooted SBOM attestations, publishes the runtime before the root package when needed, verifies both packages from the public registry, and creates a GitHub release only after registry verification.
|
|
493
556
|
|
|
494
|
-
|
|
557
|
+
Additional evidence:
|
|
495
558
|
|
|
496
|
-
|
|
559
|
+
- [Best-practice evidence map](BEST_PRACTICE_EVIDENCE.md)
|
|
560
|
+
- [Supply-chain policy](SUPPLY_CHAIN.md)
|
|
561
|
+
- [Maintainer release procedure](MAINTAINER_RELEASE.md)
|
|
562
|
+
- [Research citation policy](RESEARCH_CITATION_POLICY.md)
|
|
563
|
+
- [Public support policy](SUPPORT.md)
|
|
497
564
|
|
|
498
565
|
## License
|
|
499
566
|
|