prompts/skills/nixbot/SKILL.md
Use when working with Nixbot CI, forge commit statuses, Nix flake checks, nixbot.toml, Nixbot effects, or nixbot-cli - explains how Nixbot runs flake CI and how to inspect builds and logs.
npx skillsauth add ramblurr/nix-devenv nixbotInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Nixbot is CI for Nix flakes. It integrates with forges, evaluates flake outputs,
builds through Nix, publishes commit statuses, and exposes a web/API frontend.
Enable repositories with nixbot-cli enable; no .github/workflows/* file is
needed for normal Nixbot CI.
flake.nix.checks by default, or another configured flake attribute.checks. This nix-devenv flake does that automatically for
common outputs.nixbot-cli logs <build-number>.nixbot.toml with lock_file, attribute, flake_dir,
and effect settings.Effects are separate from normal builds. Use them only when a pure derivation is not the right shape, such as controlled deployment steps.
Prefer nixbot-cli for steps 2-3.
Check availability with command -v nixbot-cli. If missing, stop and ask the
human operator what to do.
The local config is already set up; do not ask for API tokens unless the command
reports an authentication error. -R accepts [FORGE/]OWNER/REPO; without it,
the repo is auto-detected from the current git checkout.
Common commands:
# repositories visible to the configured instance
nixbot-cli repos
# recent builds for current repo or another repo
nixbot-cli builds
nixbot-cli builds -R owner/repo --limit 5
# filter builds
nixbot-cli builds -R owner/repo --status failed
nixbot-cli builds -R owner/repo --branch main
nixbot-cli builds -R owner/repo --pr 123
nixbot-cli builds -R owner/repo --commit <sha-prefix>
# latest build, a specific build, and the queue
nixbot-cli build
nixbot-cli build <number>
nixbot-cli queue
# failed attributes and log tails
nixbot-cli failures
nixbot-cli failures <number> --tail 200
# logs for a build, optionally narrowed to one attribute
nixbot-cli logs <number> --tail 200
nixbot-cli logs <number> <attribute> --tail 200
# watch until terminal; exit non-zero on failure/cancel
nixbot-cli watch --compact --exit-status --interval 10
nixbot-cli watch <number> -R owner/repo --compact --exit-status --interval 10
# find recent builds for an attribute
nixbot-cli attr <attribute> -R owner/repo --limit 10
# retry, stop, enable, or disable
nixbot-cli restart <number>
nixbot-cli cancel <number>
nixbot-cli enable -R owner/repo
nixbot-cli disable -R owner/repo
Machine output: add --json, --edn, --plain, or --format <format>.
Fallback only. Use the forge UI or GitHub's statuses API via gh when
nixbot-cli is unavailable:
gh api repos/OWNER/REPO/commits/SHA/statuses --jq '.[] | [.context,.state,.description] | @tsv'
This shows status state, but not build numbers. Prefer nixbot-cli for logs.
testing
Use this OCP when executing or preparing to execute commands that change a live or important system, service reloads/restarts, package changes, deployments, migrations, firewall/network/access changes, credential rotation, NixOS switch/test/boot/deploy, or incident mitigation. It guides safe operations with a persisted ledger for scope, preflight, baseline, rollback, validation, and evidence.
development
Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.
documentation
Naming conventions for workflow documents in prompts/. Use when creating plans, PRDs, research reports, idea capture or other workflow documents. Triggers on (1) creating new planning documents, (2) naming PRDs or research reports, (3) questions about document organization in prompts/.
testing
Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise. Use when user wants to stress-test a plan against their project's language and documented decisions.