Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/CronusL-1141/AI-companynpx agentmods add commands/cronusl-1141/ai-company/os-watcherWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/cronusl-1141/ai-company/os-watcher)<a href="https://agentmods.dev/commands/cronusl-1141/ai-company/os-watcher"><img src="https://agentmods.dev/badge/commands/cronusl-1141/ai-company/os-watcher/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/cronusl-1141/ai-company/os-watcher"><img src="https://agentmods.dev/badge/commands/cronusl-1141/ai-company/os-watcher.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00056 | $0.00923 |
| Opus 5.5 | $0.00022 | $0.00369 |
| Sonnet 5.5 | $0.00011 | $0.00185 |
| Haiku 4.5 | $0.00006 | $0.00092 |
Grade A, and why
os-watcher scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 16d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
!F="$HOME/.claude/data/ai-team-os/arm-hint.off"; mkdir -p "$(dirname "$F")" 2>/dev/null; case "$(printf '%s' "$ARGUMENTS" | tr '[:upper:]' '[:lower:]' | tr -d '[:space:]')" in off|mute|close|关|静默) touch "$F";; on|open|开|恢复) rm -f "$F";; status|state|查|"") if [ -e "$F" ]; then echo "当前:已静默(收工不拦)"; else echo "当前:守卫开着(有活在飞且 watcher 未武装时拦收工)"; fi; exit 0;; *) if [ -e "$F" ]; then rm -f "$F"; else touch "$F"; fi;; esac; if [ -e "$F" ]; then echo "已静默 — 有活在飞时收工也不再拦你"; else echo "已开启 — 有活在飞且 watcher 未武装时会拦一次收工"; fi
上面一行是命令的执行结果。把它原样转述给用户,一句话结束,不要再跑任何工具、不要复查文件、不要解释机制。
(如果上面显示的是 ! 加一段脚本原文而不是执行结果,说明这个环境没开 inline shell
execution —— 那就改用 Bash 工具执行同一段逻辑,再转述结果。)
先分清两件事
本命令不启停 watcher 本身。 它管的是「watcher 没武装时拦你收工」这件事。
| 想做的事 | 用什么 |
|---|---|
| 真的武装一个 watcher | bash scripts/os-watch.sh <session_id> <team_id> <reader>,以宿主的后台任务方式起(run_in_background) |
| 让它别再拦我收工 | /os-watcher off ← 本命令 |
/os-watcher off 不会让已武装的 watcher 停掉,也不会替你武装一个。
这个开关管什么
turn_end_guard.py 的待命守卫:Stop 时若「有活在飞 + watcher 未武装」,拦一次逼你先武装
(最多连拦 MAX_BLOCKS 次)。每轮注入的「watcher 未武装」提醒已退役,不再出现。
静默的代价写在明处:关掉之后有活在飞也能直接收工,活干完没人叫醒你。 结果不会丢——任务台账、事件、子 agent 产出照常落库,只是要等你下次开口才看到。
放行时走的是 hint_muted 分支,不与其它 allow 混淆:静默是你的选择,不是系统判定无风险,
两者在日志里必须分得开。
状态存哪
~/.claude/data/ai-team-os/arm-hint.off,文件存在即静默。随时可切,不用重启会话
(用文件而不是环境变量正是为此:改 env 要重启才生效)。
读不到这个文件时一律当作"没关"——开关本身出故障要回到有保护的那一侧。
关了之后想恢复叫醒能力
武装一个 watcher 即可,它和本开关互不影响:
bash scripts/os-watch.sh <session_id> <team_id> <你的 reader 标识> # 必须以宿主的后台任务方式起(run_in_background)
watcher 武装后,守卫本来也不会拦你(watcher_armed 分支放行)。
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 16d ago Changed · -5 lines · +5 tokens per session 2bb8fbb2ebd2
- 28d ago First seen · 57 lines · 51 tokens per session scan A 847bb982a8fe
os-watcher is a command published in the GitHub repository CronusL-1141/AI-company (372 stars, last pushed 5d ago), licensed MIT. It adds 56 tokens to every session and 923 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-19.
Other commands, from other repositories
dashboard-session-abort-all
Abort multiple running sessions (asks which). Usage /dashboard:session-abort-all.
dashboard-session-info
Show every field of a session by id-prefix. Usage /dashboard:session-info . Runs locally, no LLM.
dashboard-session-rename
Rename a session. Usage /dashboard:session-rename.
dashboard-session-resume
Resume a session (continue mode). Usage /dashboard:session-resume.
dashboard-session-tell
Send a prompt to another session. Usage /dashboard:session-tell.
dashboard-session-unhide
Unhide a previously hidden session. Usage /dashboard:session-unhide.