← ClaudeAtlas

configurelisted

Read a repository's base branch, install command, checks and review bot, and propose the repo-specific parts of .fabrika/config.json. Use when the host asks for a configuration at `fabrika init`.
perkzen/fabrika · ★ 1 · AI & Automation · score 55
Install: claude install-skill perkzen/fabrika
# Configure The host writes `.fabrika/config.json`; you supply the fields that cannot be shipped in a template because they belong to this repo: **base**, **install**, **gate**, **capture** and **provider**. Return them as structured output. Write no files — not the config, not a scratch note. The gate matters more than the rest. The host runs it after every stage that changes code, and a failing step goes back to the agent as "fix it". A step that does not exist here, or that is already red on an untouched checkout, teaches the agent to invent a script to go green and burns the run. **An empty gate is better than a wrong one.** ## base The branch pull requests target, as a remote ref: ```bash gh repo view --json defaultBranchRef -q .defaultBranchRef.name ``` Fall back to `git symbolic-ref --short refs/remotes/origin/HEAD` (only set if someone ran `git remote set-head`), then to `main`. Prefix it with the remote: `origin/main`. If the repo's convention is a long-lived integration branch (`develop`, `staging`) and PRs target that, use it and say so in a note. ## install From the lockfile, not from what the README suggests: | Lockfile | install | | --- | --- | | `pnpm-lock.yaml` | `pnpm install --frozen-lockfile` | | `yarn.lock` | `yarn install --immutable` | | `bun.lock`, `bun.lockb` | `bun install --frozen-lockfile` | | `package-lock.json` | `npm ci` | Another ecosystem: whatever the CI workflow's install step runs. No dependency step at all: omit the field. ## gat