connectionslisted
Install: claude install-skill Jars1987/gauntlet
<objective>
Two files form the boundary between a generic pipeline and a specific setup. They
answer the questions no skill may guess: **what commands does this project use, what
is the agent allowed to do, and which CLI plays which role.**
Everything not granted is denied. That default is what makes it safe to point gauntlet
at a repository you have not read.
</objective>
## Two files, deliberately separate
| File | Scope | Committed? |
|---|---|---|
| `.gauntlet/CONNECTIONS.md` | **Project policy** — toolchain, permissions, limits, review policy | **Yes** |
| `.gauntlet/MODELS.md` | **Machine facts** — which CLIs exist here, host, role assignment | **No — gitignored** |
The split exists because which CLIs are installed is a property of a *laptop*, not of
a repository. A committed `reviewer: codex` is wrong for a teammate who has Gemini
instead, and un-fixable without breaking it for everyone else.
### `.gauntlet/CONNECTIONS.md` — committed
```yaml
---
toolchain:
install: npm ci
typecheck: npx tsc --noEmit
lint: npm run lint
test: npm test
test_one: npm test -- {} # {} = test name/path, shell-quoted
format: npx prettier --write # gauntlet appends the changed files
version_control:
base: main
branch_pattern: feat/<id>
may_push: false
may_open_pr: false
may_force_push: false
issue_tracker:
kind: none # none | linear | github | jira | ...
may_read: