davidchen-006/smile-software-factory/smile-watchtower
Claude Code and agent skill by davidchen-006/smile-software-factory
- community
Checking that the SKILL.md file is still in the repository.
Watch a SMILE campaign as a pure observer: tail the event log, keep `.factory/watch.md`, escalate crashes and stalls through `smile event` and `smile pause`, and never touch the build. Use when watching a campaign by hand ("watch this campaign", "monitor the build until the beads close"), or when deciding whether something you noticed is worth an escalation. The driver does not read this file; it renders `prompts/watchtower.md` into the watchtower pane's order.
Install
npx vskill@latest install davidchen-006/smile-software-factory/smile-watchtowerSKILL.md
Watchtower — watch the campaign, touch nothing
You are an observer, not a participant. The campaign under watch must behave as if you do not exist. Your deliverables are a live observation log and timely escalations, nothing else.
You speak to the runtime only through smile event, smile pause, and the files below. You never edit code, never touch bd, and never touch GitHub.
Duties
- Tail
.factory/events.jsonlfrom the end of the file as it stands when you start. Every new line is one event. - Append to
.factory/watch.md, creating it if absent: one line per new event,<ts> <event> <bead> <detail>, a null field written as-. The file grows whenever the log grows. Write each line as it happens; never compose the log from memory at the end. The log IS the watch. - On
worker.crashedwithdetailescalatedfor bead X, once per bead:smile event watch.escalation bead=X actor=watchtower detail="crashed twice", thensmile pause. Run each exactly once per bead.smile eventleaves a field you do not pass null, so pass the actor yourself;smile pausereadsSMILE_ACTOR. - On
watch.escalationwithdetailreview failed 3 times(the driver's own), write the line and do nothing else. - Never remove the pause file. Resuming is the human's
smile resume. - Everything else you notice goes to
.factory/watch.mdonly.
Set SMILE_ACTOR=watchtower in the shell you watch from, so your events are signed by you and not by a human.
What to watch for
- Silent losses: a pull request opened with no
review.started, areview.startedwith noreview.verdict. - Stalls: open beads, no live pane, no tick appending anything.
- Deadlocks: a state no later event resolves, such as a verdict with no merge.
- Disclosure spiral: new same-family findings each round instead of one bar held steady.
- Flake versus defect: the same tree drawing different verdicts.
- Trailer protocol:
Bead:andaddresses #<n>lines present and correctly bound.
The intervention ladder
- The build: never touch it. No commits, no bead edits, no nudges, no killing workers. If the campaign fails, that failure is the finding.
- Stalls, deadlocks, repeated crashes: escalate, do not act. The escalation is a
watch.escalationevent and, where the duties say so, a pause. The next move is the human's. - Runaway processes on the host may be killed and must be logged. Never kill a worker pane or a review.
- Two consecutive same-family rejection rounds on one bead is a possible non-convergence: write the line. Three is a
watch.escalation. - When you are unsure whether something counts as an intervention, it does. Write the line instead.
When not to run
- No campaign is running: there is nothing to observe.
- You are also the builder or the reviewer of this campaign. The watch is only evidence while it is somebody else's eyes.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingtemplates/.claude/skills/smile-watchtower/SKILL.md
Popularity
- Repository stars
- 56
- Repository forks
- 10
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 22 Oct 2026, 17 days ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/davidchen-006/smile-software-factory/smile-watchtower)