bigin-harness-setuplisted
Install: claude install-skill tammai/bigin-skills
# bigin-harness-setup
Sets up a standardized AI workflow harness — the `CLAUDE.md` agent brief, path-scoped rules, and commit-time enforcement gates (guard hooks + a context-budget check). Idempotent — re-running on an already-set-up repo is safe.
---
## Phase 0: Detect Stack Profile
Check for stack indicators, **first match wins**:
| # | Marker | Profile |
|---|---|---|
| 1 | `nuxt.config.ts` / `.js` | `nuxt` |
| 2 | `go.mod` | `go` |
| 3 | `package.json` with express/fastify/hono/koa in dependencies | `nodejs` |
| 4 | `next.config.ts` / `.js` / `.mjs` | `next` |
| 5 | `pubspec.yaml` **plus both Flutter-app checks** | `flutter` |
| 6 | empty repo — no source files, no manifest | **ask** (the answer picks the scaffold Phase 0.5 runs) |
| 7 | existing code, nothing matched | `generic` |
Row 5 is deliberately narrower than "has a `pubspec.yaml`" and narrower again than "is Flutter": a Dart package, a Flutter package and a Flutter plugin must all fall through to `generic`. Row 7 **never asks** — an existing repo that isn't one of the five won't become one, so say one line ("no matching stack profile — installing the stack-neutral harness") and continue.
The two Flutter checks in full, and the exact wording of row 6's question: **`references/profile-detection.md`**.
Store result as `PROFILE`. Load `references/profile-{PROFILE}.md` for all template content — `references/profile-generic.md` for `generic`, which states up front what that profile installs and skips.
---
##