@appsforgood/next-supabase-kit 0.1.8 → 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/BEST_PRACTICE_EVIDENCE.md +1 -1
- package/CHANGELOG.md +13 -0
- package/DOGFOOD.md +2 -1
- package/README.md +431 -335
- package/REPOSITORY_SETTINGS.md +12 -6
- package/SECURITY.md +14 -0
- package/SUPPLY_CHAIN.md +15 -14
- package/UPGRADE.md +14 -4
- package/assistant-adapters/README.md +3 -0
- package/assistant-adapters/antigravity.md +2 -0
- package/assistant-adapters/claude-code-subagents.md +1 -0
- package/assistant-adapters/codex-agents.md +2 -0
- package/assistant-adapters/cursor-agent-kit.mdc +2 -0
- package/assistant-adapters/cursor-planner.mdc +1 -1
- package/assistant-adapters/orchestrator-runtime.md +39 -0
- package/checklists/frontend-quality.md +1 -0
- package/checklists/ui-detectors.md +6 -0
- package/dist/index.js +1723 -688
- package/dist/index.js.map +1 -1
- package/dist/studio/office/assets/office.css +138 -7
- package/dist/studio/office/assets/office.js +200 -2
- package/dist/studio/wizard/assets/wizard.js +7 -1
- package/examples/next-supabase-installed/.agent-kit/manifest.json +187 -14
- package/examples/next-supabase-installed/audit-output.json +405 -380
- package/package.json +25 -4
- package/prompts/frontend-design-review.md +6 -0
- package/prompts/screenshot-review.md +2 -1
- package/schemas/audit-report-v2.schema.json +71 -0
- package/schemas/audit-report.schema.json +16 -16
- package/schemas/orchestrator.schema.json +167 -0
- package/schemas/runtime-event.schema.json +66 -0
- package/schemas/runtime-run.schema.json +58 -0
- package/schemas/session-event.schema.json +2 -0
- package/templates/next-supabase/.agent-kit/orchestrator.json +48 -0
- package/templates/next-supabase/.agent-kit/runtime/gitignore.template +2 -0
- package/templates/next-supabase/AGENTS.md +2 -0
- package/templates/next-supabase/ASSISTANT_ADAPTERS.md +20 -0
- package/templates/next-supabase/DECISIONS.md +14 -0
- package/templates/next-supabase/DEPLOYMENT.md +4 -0
- package/templates/next-supabase/DESIGN.md +6 -0
- package/templates/next-supabase/DOCS.md +8 -0
- package/templates/next-supabase/MODEL_ROUTING.md +9 -0
- package/templates/next-supabase/QUALITY_GATES.md +5 -1
- package/templates/next-supabase/SECURITY.md +10 -0
- package/templates/next-supabase/SPEC.md +3 -1
- package/templates/next-supabase/STYLE_GUIDE.md +15 -0
- package/templates/next-supabase/TESTING.md +6 -0
- package/templates/next-supabase/UPGRADE.md +1 -0
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,465 +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.
|
|
34
|
+
|
|
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.
|
|
20
50
|
|
|
21
51
|
## Quick Start
|
|
22
52
|
|
|
23
|
-
|
|
53
|
+
### Zero-install trial
|
|
54
|
+
|
|
55
|
+
Run the current package directly in the repository you want to prepare:
|
|
24
56
|
|
|
25
57
|
```bash
|
|
26
|
-
npx @appsforgood/next-supabase-kit@
|
|
27
|
-
npx @appsforgood/next-supabase-kit audit
|
|
28
|
-
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
|
|
29
61
|
```
|
|
30
62
|
|
|
31
|
-
|
|
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.
|
|
32
64
|
|
|
33
|
-
|
|
34
|
-
npx @appsforgood/next-supabase-kit setup --open
|
|
35
|
-
npx @appsforgood/next-supabase-kit setup --status
|
|
36
|
-
```
|
|
65
|
+
### Local development dependency
|
|
37
66
|
|
|
38
|
-
|
|
67
|
+
Install the CLI when the project will use it repeatedly or in CI:
|
|
39
68
|
|
|
40
69
|
```bash
|
|
41
|
-
|
|
42
|
-
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
|
|
43
73
|
```
|
|
44
74
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
### See It In Action
|
|
75
|
+
Add convenient package scripts:
|
|
48
76
|
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
.agent-kit/agent-roster.json
|
|
59
|
-
.agent-kit/model-routing.json
|
|
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
|
+
}
|
|
85
|
+
```
|
|
60
86
|
|
|
61
|
-
|
|
62
|
-
Next: run agent-kit audit to check readiness.
|
|
87
|
+
Then run:
|
|
63
88
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
evidence still needs to replace starter placeholders.
|
|
67
|
-
SUMMARY pass=60 warn=3 fail=0
|
|
68
|
-
NEXT ACTIONS
|
|
69
|
-
- Run agent-kit onboard or agent-kit init --guided so agents can start
|
|
70
|
-
with project-specific context.
|
|
89
|
+
```bash
|
|
90
|
+
npm run agent:audit
|
|
71
91
|
```
|
|
72
92
|
|
|
73
|
-
|
|
93
|
+
## First-Run Examples
|
|
74
94
|
|
|
75
|
-
|
|
95
|
+
### Preview before writing
|
|
76
96
|
|
|
77
97
|
```bash
|
|
78
|
-
|
|
79
|
-
npm run build
|
|
80
|
-
npm test
|
|
81
|
-
npm run release:check
|
|
98
|
+
npx agent-kit init --stack next-supabase --guided --dry-run --json
|
|
82
99
|
```
|
|
83
100
|
|
|
84
|
-
|
|
101
|
+
### Install without opening a browser
|
|
85
102
|
|
|
86
|
-
|
|
103
|
+
```bash
|
|
104
|
+
npx agent-kit init --stack next-supabase --no-setup
|
|
105
|
+
npx agent-kit context init
|
|
106
|
+
npx agent-kit context ask
|
|
107
|
+
```
|
|
87
108
|
|
|
88
|
-
|
|
109
|
+
### Resume project onboarding
|
|
89
110
|
|
|
90
|
-
```
|
|
91
|
-
|
|
111
|
+
```bash
|
|
112
|
+
npx agent-kit setup --open
|
|
113
|
+
npx agent-kit setup --status
|
|
92
114
|
```
|
|
93
115
|
|
|
94
|
-
|
|
116
|
+
The setup server binds to `127.0.0.1:9321` by default:
|
|
95
117
|
|
|
96
|
-
|
|
118
|
+
- `/` or `/office`: Agent Office.
|
|
119
|
+
- `/wizard`: form-based fallback.
|
|
97
120
|
|
|
98
|
-
|
|
99
|
-
| --- | --- | --- | --- |
|
|
100
|
-
| Onboard project context | `/setup` | Context before code | Agent Office, project-context |
|
|
101
|
-
| Define what to build | `/spec` | Spec before code | Planner, docs-maintainer |
|
|
102
|
-
| Plan how to build it | `/plan` | Council before implementation | planning-council, lead-architect |
|
|
103
|
-
| Route between agents | `/handoff` | Explicit handoffs | agent-handoff-tracing |
|
|
104
|
-
| Build frontend/UI | `/frontend` | Content-first design | frontend-design-lead skills |
|
|
105
|
-
| Check kit readiness | `/audit` | Evidence before claims | best-practice-maturity-review |
|
|
106
|
-
| Prove behavior | `/test` | Tests are proof | testing-qa, qa-engineer |
|
|
107
|
-
| Review before merge | `/review` | Improve code health | qa-engineer + security-reviewer |
|
|
108
|
-
| Security signoff | `/security` | RLS at the boundary | owasp-security-review, supabase-auth-rls |
|
|
109
|
-
| Public copy | `/copy` | Proof before publish | marketing-copy-lead |
|
|
110
|
-
| Ship release | `/ship` | Faster is safer | deployment-observability, release gates |
|
|
111
|
-
| Upgrade kit/deps | `/upgrade` | Diff before overwrite | upgrade-maintenance |
|
|
121
|
+
Use a different port when needed:
|
|
112
122
|
|
|
113
|
-
|
|
123
|
+
```bash
|
|
124
|
+
npx agent-kit setup --port 9400 --open
|
|
125
|
+
```
|
|
114
126
|
|
|
115
|
-
|
|
127
|
+
### Activate IDE adapters
|
|
116
128
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
| WCAG 2.1 AA pass | `/accessibility-pass` | Keyboard and contrast matter |
|
|
124
|
-
| Prove product distinctiveness | `/distinctiveness-pass` | Not interchangeable SaaS |
|
|
125
|
-
| Critique screenshots | `/screenshot-critique` | Evidence over opinion |
|
|
126
|
-
| Live browser QA loop | `/browser-qa` | Measure in the real UI |
|
|
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
|
+
```
|
|
127
135
|
|
|
128
|
-
|
|
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.
|
|
129
137
|
|
|
130
|
-
|
|
138
|
+
## Audit Examples
|
|
131
139
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
| Next.js Engineer | App Router, Server Actions, UI state | nextjs-app-router, frontend-design-system |
|
|
138
|
-
| Frontend Design Lead | Design gates, visual QA, anti-generic UI | content-first-design, ui-improvement-harness |
|
|
139
|
-
| Marketing Copy Lead | Positioning, conversion copy, CTAs | positioning-messaging, conversion-copywriting |
|
|
140
|
-
| Security Reviewer | OWASP, auth boundaries, secrets | owasp-security-review, supabase-auth-rls |
|
|
141
|
-
| QA Engineer | Tests, regression, acceptance evidence | testing-qa, visual-regression-qa |
|
|
142
|
-
| Documentation Maintainer | Living docs, spec, decisions | docs-maintainer, planning-council |
|
|
143
|
-
| Deployment/Observability Engineer | Release, rollback, monitoring | deployment-observability |
|
|
140
|
+
### Human-readable readiness report
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
npx agent-kit audit
|
|
144
|
+
```
|
|
144
145
|
|
|
145
|
-
###
|
|
146
|
+
### Stable JSON output
|
|
146
147
|
|
|
147
|
-
|
|
148
|
+
```bash
|
|
149
|
+
npx agent-kit audit --json
|
|
150
|
+
npx agent-kit audit --schema-version 2 --format json
|
|
151
|
+
```
|
|
148
152
|
|
|
149
|
-
|
|
153
|
+
### SARIF for code-scanning systems
|
|
150
154
|
|
|
151
|
-
|
|
155
|
+
```bash
|
|
156
|
+
npx agent-kit audit --schema-version 2 --format sarif > agent-kit.sarif
|
|
157
|
+
```
|
|
152
158
|
|
|
153
|
-
|
|
159
|
+
### Fail CI below the required evidence level
|
|
154
160
|
|
|
155
|
-
|
|
161
|
+
```bash
|
|
162
|
+
npx agent-kit audit --min-readiness baseline-setup
|
|
163
|
+
```
|
|
156
164
|
|
|
157
|
-
|
|
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
|
+
```
|
|
158
198
|
|
|
159
|
-
|
|
160
|
-
- **Runtime wrappers** in `runtime-skills/*/SKILL.md` expose the same content to Antigravity and other skill-directory runtimes.
|
|
161
|
-
- **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.
|
|
199
|
+
The installed template at `.github/workflows/agent-kit-audit.yml` is the maintained starting point.
|
|
162
200
|
|
|
163
|
-
##
|
|
201
|
+
## Common Delivery Workflows
|
|
164
202
|
|
|
165
|
-
|
|
203
|
+
### Plan and record a feature
|
|
166
204
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
-
|
|
170
|
-
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
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
|
-
- Marketing Copy Lead owns public-facing and conversion-facing copy, positioning, proof, objections, voice, and CTA hierarchy.
|
|
184
|
-
- QA Engineer verifies behavior changes before completion.
|
|
185
|
-
- Documentation Maintainer keeps the living markdown current.
|
|
248
|
+
```bash
|
|
249
|
+
npx agent-kit session checkpoint --file .agent-kit/checkpoint.json
|
|
250
|
+
npx agent-kit session render
|
|
251
|
+
```
|
|
186
252
|
|
|
187
|
-
|
|
253
|
+
### Review a frontend change
|
|
188
254
|
|
|
189
|
-
|
|
255
|
+
Use the installed command instructions as prompt prefixes in compatible coding tools, or as native commands after activating Antigravity:
|
|
190
256
|
|
|
191
|
-
|
|
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
|
+
```
|
|
192
264
|
|
|
193
|
-
|
|
265
|
+
The UI detector checks include concrete replacements:
|
|
194
266
|
|
|
195
|
-
|
|
|
267
|
+
| Avoid | Prefer |
|
|
196
268
|
| --- | --- |
|
|
197
|
-
|
|
|
198
|
-
|
|
|
199
|
-
|
|
|
200
|
-
|
|
|
201
|
-
|
|
|
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 |
|
|
202
277
|
|
|
203
|
-
|
|
204
|
-
agent-kit init --stack next-supabase --guided --dry-run
|
|
205
|
-
agent-kit init --activate cursor --activate codex --no-setup
|
|
206
|
-
agent-kit diff
|
|
207
|
-
agent-kit update --dry-run
|
|
208
|
-
agent-kit add skill ui-improvement-harness
|
|
209
|
-
```
|
|
278
|
+
Exceptions for an established brand system should be recorded in `DESIGN.md` or `.agent-kit/overrides.json`.
|
|
210
279
|
|
|
211
|
-
|
|
212
|
-
`update` flags: `--dry-run`, `--force`, `--json`.
|
|
280
|
+
### Review Supabase auth or RLS work
|
|
213
281
|
|
|
214
|
-
|
|
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.
|
|
286
|
+
```
|
|
215
287
|
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
288
|
+
Required evidence should include:
|
|
289
|
+
|
|
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.
|
|
220
296
|
|
|
221
|
-
|
|
297
|
+
### Preserve a durable correction
|
|
222
298
|
|
|
223
299
|
```bash
|
|
224
|
-
agent-kit
|
|
225
|
-
|
|
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>
|
|
226
304
|
```
|
|
227
305
|
|
|
228
|
-
|
|
306
|
+
Applied project and agent corrections are loaded before meaningful work. Use `correction retire <id> --reason "..." ` when a rule no longer applies.
|
|
229
307
|
|
|
230
|
-
|
|
231
|
-
| --- | --- |
|
|
232
|
-
| `audit` | Readiness report with pass/warn/fail findings |
|
|
233
|
-
| `doctor` | Validate CLI runtime prerequisites |
|
|
234
|
-
| `adapter validate [target]` | Validate IDE/runtime adapter assets (`cursor`, `claude`, `codex`, `copilot`, `antigravity`, `all`) |
|
|
235
|
-
| `package validate` | Source-repo release asset validation (maintainers) |
|
|
308
|
+
### Inspect sessions in Agent Studio
|
|
236
309
|
|
|
237
310
|
```bash
|
|
238
|
-
agent-kit
|
|
239
|
-
agent-kit
|
|
240
|
-
agent-kit doctor --json
|
|
311
|
+
npx agent-kit studio export
|
|
312
|
+
npx agent-kit studio serve --open
|
|
241
313
|
```
|
|
242
314
|
|
|
243
|
-
|
|
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.
|
|
244
318
|
|
|
245
|
-
|
|
319
|
+
## Updating An Existing Install
|
|
246
320
|
|
|
247
|
-
|
|
248
|
-
| --- | --- |
|
|
249
|
-
| `context init` | Create or refresh `.agent-kit/project-context.json` |
|
|
250
|
-
| `context scan` | Print inferred context without writing |
|
|
251
|
-
| `context ask` | List unanswered high-value context questions |
|
|
252
|
-
| `context render` | Render `.agent-kit/project-context.md` |
|
|
253
|
-
| `context validate` | Validate context against schema |
|
|
254
|
-
| `context show` | Print current context JSON |
|
|
321
|
+
Preview template drift before applying an update:
|
|
255
322
|
|
|
256
323
|
```bash
|
|
257
|
-
agent-kit
|
|
258
|
-
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
|
|
259
328
|
```
|
|
260
329
|
|
|
261
|
-
|
|
330
|
+
Update behavior:
|
|
262
331
|
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
| `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:
|
|
271
339
|
|
|
272
340
|
```bash
|
|
273
|
-
agent-kit
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
agent-kit session output "visual QA evidence" --status not-applicable --evidence "No UI change."
|
|
277
|
-
agent-kit session checkpoint --file .agent-kit/checkpoint.json
|
|
278
|
-
agent-kit session render
|
|
279
|
-
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
|
|
280
344
|
```
|
|
281
345
|
|
|
282
|
-
|
|
346
|
+
## Optional Executable Runtime
|
|
283
347
|
|
|
284
|
-
|
|
285
|
-
| --- | --- |
|
|
286
|
-
| `correction list` | List durable project and agent correction rules |
|
|
287
|
-
| `correction add` | Add a correction (`--scope project\|agent\|session`) |
|
|
288
|
-
| `correction apply` | Promote a correction into active rules |
|
|
289
|
-
| `correction retire` | Retire a correction with reason |
|
|
290
|
-
| `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.
|
|
291
349
|
|
|
292
350
|
```bash
|
|
293
|
-
|
|
294
|
-
|
|
351
|
+
npm install --save-dev \
|
|
352
|
+
@appsforgood/next-supabase-kit \
|
|
353
|
+
@appsforgood/agent-kit-runtime
|
|
354
|
+
npx agent-kit orchestrate validate
|
|
295
355
|
```
|
|
296
356
|
|
|
297
|
-
|
|
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
|
+
```
|
|
298
387
|
|
|
299
|
-
|
|
300
|
-
| --- | --- |
|
|
301
|
-
| `studio export` | Generate self-contained static HTML at `.agent-kit/studio/index.html` |
|
|
302
|
-
| `studio serve` | Live localhost Agent Office with SSE session events (default port `9331`) |
|
|
388
|
+
Validate and inspect the plan without calling a provider:
|
|
303
389
|
|
|
304
390
|
```bash
|
|
305
|
-
agent-kit
|
|
306
|
-
agent-kit
|
|
391
|
+
npx agent-kit orchestrate validate
|
|
392
|
+
npx agent-kit orchestrate plan "Review the authorization boundary" --workflow planning
|
|
307
393
|
```
|
|
308
394
|
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
Requires `GITHUB_TOKEN` in the environment.
|
|
395
|
+
Start and manage a run:
|
|
312
396
|
|
|
313
397
|
```bash
|
|
314
|
-
agent-kit
|
|
315
|
-
agent-kit
|
|
316
|
-
agent-kit
|
|
317
|
-
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
|
|
318
403
|
```
|
|
319
404
|
|
|
320
|
-
|
|
405
|
+
Reject or cancel:
|
|
321
406
|
|
|
322
|
-
|
|
407
|
+
```bash
|
|
408
|
+
npx agent-kit orchestrate resume <run-id> --decision reject
|
|
409
|
+
npx agent-kit orchestrate cancel <run-id>
|
|
410
|
+
```
|
|
323
411
|
|
|
324
|
-
|
|
325
|
-
AGENTS.md
|
|
326
|
-
AGENT_ROSTER.md
|
|
327
|
-
ASSISTANT_ADAPTERS.md
|
|
328
|
-
COUNCIL.md
|
|
329
|
-
SKILLS.md
|
|
330
|
-
SPEC.md
|
|
331
|
-
DECISIONS.md
|
|
332
|
-
DOCS.md
|
|
333
|
-
DESIGN.md
|
|
334
|
-
MESSAGING.md
|
|
335
|
-
MODEL_ROUTING.md
|
|
336
|
-
QUALITY_GATES.md
|
|
337
|
-
STYLE_GUIDE.md
|
|
338
|
-
SECURITY.md
|
|
339
|
-
TESTING.md
|
|
340
|
-
DEPLOYMENT.md
|
|
341
|
-
UPGRADE.md
|
|
342
|
-
```
|
|
343
|
-
|
|
344
|
-
The `.agent-kit/` folder includes:
|
|
345
|
-
|
|
346
|
-
- `agent-roster.json` for default workflow routing.
|
|
347
|
-
- `model-routing.json` for provider-neutral model profile routing.
|
|
348
|
-
- `project-context.json`, `project-context.md`, `corrections/`, and `council-sessions/` for local Agent Studio context, correction rules, session events, and rendered transcripts.
|
|
349
|
-
- `schemas/` for agent roster, council-session, model-routing, project context, correction rules, session events, studio sessions, and audit-report contracts.
|
|
350
|
-
- `agents/`, `skills/`, `runtime-skills/`, `prompts/`, and `checklists/`.
|
|
351
|
-
- `assistant-adapters/` for Codex/AGENTS.md-compatible tools, GitHub Copilot/VS Code, Cursor, Claude Code, and Antigravity.
|
|
352
|
-
- `antigravity/` for native command and plugin assets.
|
|
353
|
-
- `design-briefs/` for SaaS, admin, marketplace, content, tool, ecommerce, portfolio/venue, education, community/social, and AI workflow surfaces.
|
|
354
|
-
- `profiles/` for product-type and adjacent-stack adaptation.
|
|
355
|
-
|
|
356
|
-
## AI Mechanisms
|
|
357
|
-
|
|
358
|
-
Agent Kit separates the mechanisms that make AI coding repeatable:
|
|
359
|
-
|
|
360
|
-
- Instructions: `AGENTS.md`, assistant adapters, and IDE-specific rule files.
|
|
361
|
-
- Roster: `.agent-kit/agent-roster.json` chooses agents, workflows, and handoffs.
|
|
362
|
-
- Skills: `.agent-kit/skills/` keeps specialist workflows reusable.
|
|
363
|
-
- 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.
|
|
364
|
-
- Portable skills: `runtime-skills/*/SKILL.md` wraps canonical `skills/*.md` files for runtimes that discover skill directories.
|
|
365
|
-
- Model routing: `MODEL_ROUTING.md` and `.agent-kit/model-routing.json` map agents to model profiles.
|
|
366
|
-
- Messaging: `MESSAGING.md` records audience, pain, outcome, proof, objections, voice, and conversion evidence for public-facing copy.
|
|
367
|
-
- 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.
|
|
368
|
-
- Tools and MCP: `ASSISTANT_ADAPTERS.md` records browser, GitHub, Figma, Supabase, docs, or other connector setup.
|
|
369
|
-
- Hooks and CI: optional local enforcement plus `agent-kit audit`, tests, install smoke, SBOM, and release gates.
|
|
370
|
-
|
|
371
|
-
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.
|
|
372
|
-
|
|
373
|
-
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.
|
|
374
|
-
|
|
375
|
-
## Frontend Quality Bar
|
|
376
|
-
|
|
377
|
-
The kit is intentionally strict about frontend work because normal AI output often looks generic.
|
|
378
|
-
|
|
379
|
-
Significant UI work should prove:
|
|
380
|
-
|
|
381
|
-
- Brand/content intake and real user needs.
|
|
382
|
-
- A selected creative direction, with rejected alternatives.
|
|
383
|
-
- Reference lessons and anti-references without copied source designs.
|
|
384
|
-
- First-screen proof that the real product task, object, workflow, or content is visible.
|
|
385
|
-
- A content fingerprint: real product nouns, labels, data shapes, actions, and edge cases.
|
|
386
|
-
- Asset provenance for real, generated, licensed, and placeholder visuals.
|
|
387
|
-
- Product-quality scorecard evidence.
|
|
388
|
-
- Desktop, mobile, key states, accessibility, and visual QA evidence.
|
|
389
|
-
|
|
390
|
-
The Frontend Design Lead should reject work that would still look valid for another product after only changing the logo or headline.
|
|
391
|
-
|
|
392
|
-
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.
|
|
393
|
-
|
|
394
|
-
## Security Bar
|
|
395
|
-
|
|
396
|
-
The kit treats these as defaults, not optional polish:
|
|
397
|
-
|
|
398
|
-
- OWASP Top 10 review for auth, API, Server Action, external-call, upload, and dependency changes.
|
|
399
|
-
- Supabase RLS at the data boundary.
|
|
400
|
-
- Service-role keys isolated to trusted server code.
|
|
401
|
-
- Input validation and safe output rendering.
|
|
402
|
-
- IDOR, SSRF, injection, broken auth, and misconfiguration review.
|
|
403
|
-
- Dependency audit before release.
|
|
412
|
+
Probe external adapters explicitly:
|
|
404
413
|
|
|
405
|
-
|
|
414
|
+
```bash
|
|
415
|
+
npx agent-kit provider probe
|
|
416
|
+
npx agent-kit provider probe primary
|
|
417
|
+
npx agent-kit mcp probe project-tools
|
|
418
|
+
```
|
|
406
419
|
|
|
407
|
-
|
|
420
|
+
Store a keychain-backed credential through a masked prompt:
|
|
408
421
|
|
|
409
422
|
```bash
|
|
410
|
-
agent-kit
|
|
411
|
-
agent-kit
|
|
412
|
-
agent-kit update
|
|
413
|
-
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
|
|
414
425
|
```
|
|
415
426
|
|
|
416
|
-
|
|
427
|
+
### Runtime boundaries
|
|
417
428
|
|
|
418
|
-
|
|
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.
|
|
419
435
|
|
|
420
|
-
|
|
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.
|
|
421
437
|
|
|
422
|
-
|
|
438
|
+
## Installed Project Contract
|
|
423
439
|
|
|
424
|
-
|
|
440
|
+
Important root documents:
|
|
425
441
|
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
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:
|
|
433
505
|
|
|
434
506
|
```bash
|
|
435
|
-
|
|
436
|
-
agent-kit
|
|
437
|
-
agent-kit
|
|
438
|
-
agent-kit
|
|
439
|
-
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
|
|
440
511
|
```
|
|
441
512
|
|
|
442
|
-
|
|
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.
|
|
443
514
|
|
|
444
|
-
|
|
515
|
+
Long-running server commands such as `setup` and `studio serve`, interactive credential entry, and maintainer research commands use their documented human output instead.
|
|
445
516
|
|
|
446
|
-
|
|
517
|
+
Commands that support `--dry-run` include `init`, `update`, and `add skill`. Review each command's `--help` output rather than assuming a global flag.
|
|
447
518
|
|
|
448
|
-
|
|
449
|
-
@appsforgood/next-supabase-kit
|
|
450
|
-
```
|
|
519
|
+
## Security Defaults
|
|
451
520
|
|
|
452
|
-
|
|
521
|
+
The installed contract requires:
|
|
522
|
+
|
|
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
|
+
```
|
|
453
542
|
|
|
454
|
-
|
|
455
|
-
- Public npm access.
|
|
456
|
-
- npm Trusted Publishing through GitHub Actions OIDC.
|
|
457
|
-
- No long-lived npm publish token for automation.
|
|
458
|
-
- Dependency Review, CodeQL, OpenSSF Scorecard, Dependabot, SBOM validation, and SBOM attestation.
|
|
459
|
-
- Post-publish verification with `npm run publish:verify`.
|
|
543
|
+
`npm run release:check` runs:
|
|
460
544
|
|
|
461
|
-
|
|
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.
|
|
462
554
|
|
|
463
|
-
|
|
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.
|
|
464
556
|
|
|
465
|
-
|
|
557
|
+
Additional evidence:
|
|
466
558
|
|
|
467
|
-
|
|
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)
|
|
468
564
|
|
|
469
565
|
## License
|
|
470
566
|
|