Skip to content
Development
Skill

/night-watch

Autonomous maintenance (dep updates, dead code, small refactors) in isolated branch, off-hours. Triggers: night watch, autonomous maintenance, dep updates.

From plugin
ai-toolkit
161111 skills44 agents
Install
$ npx -y skills add softspark/ai-toolkit --skill night-watch --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/night-watch

Context preview

The summary Claude sees to decide when to auto-load this skill.

Autonomous maintenance (dep updates, dead code, small refactors) in isolated branch, off-hours. Triggers: night watch, autonomous maintenance, dep updates.

SKILL.md

night-watch.SKILL.md
name: night-watch
description: "Autonomous maintenance (dep updates, dead code, small refactors) in isolated branch, off-hours. Triggers: night watch, autonomous maintenance, dep updates."
effort: medium
disable-model-invocation: true
context: fork
agent: night-watchman
allowed-tools: Bash, Read, Edit, Grep

Night Watch Command

Triggers the autonomous maintenance agent.

Usage

/night-watch [scope]
# Example: /night-watch deps
# Example: /night-watch cleanup
# Default: runs full suite

Protocol

1. **Checkout**: Create `maintenance/` branch. 2. **Execute**: Run `night-watchman` agent skills. 3. **Verify**: Run full test suite. 4. **Report**: Generate Shift Report.

Rules

  • **MUST** work on a dedicated `maintenance/` branch — never commit to `main` or the user's active branch
  • **NEVER** push without the full test suite passing
  • **CRITICAL**: stop on the first failing test and surface it — do not try to "fix" tests opportunistically
  • **MANDATORY**: every change lands in a discrete commit with a conventional message

Gotchas

  • `npm audit fix` bumps to the latest **major** version when `--force` is set — quietly introducing breaking changes. Always use plain `npm audit fix` first and only escalate to `--force` after the user approves each named package.
  • `pip install --upgrade` without a constraints file resolves differently each run due to transitive dependencies. Pin via `pip-compile` and commit the lockfile, otherwise maintenance runs produce "mysterious" unrelated changes.
  • `git add -A` on a maintenance run can pull in build artifacts and IDE caches if `.gitignore` is incomplete. Prefer explicit `git add <path>` per change category (deps, docs, lint-fixes) to keep commits attributable.
  • Pre-commit hooks that format on commit may re-modify files AFTER your edit — the resulting commit may differ from the planned diff. Run the formatter as a separate step and verify `git diff --staged` before committing.

When NOT to Use

  • For planned refactors with a known scope — use `/refactor-plan`
  • For immediate bug fixes — use `/fix` or `/debug`
  • In a repo the user is actively working in — wait for idle time
  • When there are uncommitted changes on the current branch — abort until clean
Read more
Ships withai-toolkit

Professional-grade AI coding toolkit with multi-platform support. Machine-enforced safety, 109 skills, 44 agents, expanded lifecycle hooks, persona presets, experimental opt-in plugin packs, and benchmark tooling — works with Claude Code, Claude Chat/Cowork,

Get the whole plugin