Skills and rules for the NanoClaw host agent (Claude Code on Mac). Tile promotion, container management, staging checks, repo chain safety, and public sync.
76
95%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Medium
Suggest reviewing before use
coding-policy: dependency-managementThe fetch_markdown sidecar image default in jbaruch/nanoclaw src/ipc-handlers/ops-fetch.ts MUST be the floating tag syabro/snitchmd:latest — never a literal 0.2.x tag, never a sha256: digest. This file is the authority-of-record.
fetch_markdown consumes its markdown output, whose shape is stable across point releasesfetch_markdown silently failing on the sites that matterSNITCHMD_IMAGE is the operator's escape hatch: an install needing a reproducible build sets a tag or digest in its own environment, which the deploy gate below does not readscripts/deploy.sh MUST read the image default out of src/ipc-handlers/ops-fetch.ts and fail the deploy when it is anything other than the literal syabro/snitchmd:latest.
The check catches:
Run this check in scripts/deploy.sh, not just CI: the gate exists to keep a pin from reaching the NAS, and a deploy can be driven from a working tree CI never saw.
SNITCHMD_IMAGE set in ~/nanoclaw/.env on a given box is configuration, not a committed dependency, and is out of the gate's scope. The rule governs the committed default only.
When the image reference moves or the covered path changes, update in lock-step: this rule's Approved-exception paragraph, the verify_snitchmd_image_floating check in jbaruch/nanoclaw scripts/deploy.sh, the rationale comment beside the constant in src/ipc-handlers/ops-fetch.ts, and jbaruch/nanoclaw's CHANGELOG. See coding-policy: context-artifacts Surface Sync.
.github
rules
skills