Skip to main content

quiet

Enter quiet supervision mode when the captain invokes /quiet or asks for quiet mode, quiet-while-present, or fewer routine wake turns while they stay in the session. Unlike /afk, ordinary captain chat does not exit it; only an explicit `/quiet off` does.

Source facts

Repository
kunchenguid/firstmate
Last source activity
October 20, 2026 at 18:13
Detected SKILL.md language
English
Stars
8,398
Forks
2,666

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
quiet
description
Enter quiet supervision mode when the captain invokes /quiet or asks for quiet mode, quiet-while-present, or fewer routine wake turns while they stay in the session. Unlike /afk, ordinary captain chat does not exit it; only an explicit `/quiet off` does.
user-invocable
true
metadata
{"internal":true}
# quiet Quiet supervision mode (kunchenguid/firstmate#2356): the same token-saving daemon tradeoff as `/afk`, made explicit for a captain who is staying, watching the session, and does not want to exit the mode just by chatting. Where a daemon runs, this skill is a thin wrapper. The `afk` skill owns the daemon's injection, busy/composer guards, and reliability properties; quiet mode uses that machinery while the captain remains present. For captain-held rechecks under quiet, see [architecture](../../../docs/architecture.md). ## What it does 0. **First check whether quiet mode needs anything here.** On Pi or pi-signed, enter nothing: the attended branch already keeps routine wakes out of this conversation (the `afk` skill's step 2); tell the captain so. Everywhere else run `bin/fm-afk-launch.sh quiet-check`; its header's QUIET MODE owns what each result means. - Exit 0: enter nothing - no record, no flag, no daemon, and `/quiet off` then needs nothing either. Tell the captain in `AGENTS.md` section 9 language that supervision here already works that way: routine fleet events stay off this conversation, while decisions, failures, credentials, and review-ready work still reach them. When its line says the supervision session is paused, say instead that routine updates reach them until it recovers, and when it next retries. - Exit 2: an away record is live, so the captain has returned: run the `afk` skill's return and clear its catch-up gate, then run `quiet-check` again and follow its new result. - Exit 1: go on to step 1; if it printed a line, first tell the captain plainly what keeps supervision from already being quiet here. 1. **Enter the lifecycle through `bin/fm-afk-launch.sh`, exactly as `/afk` does, with `FM_AFK_MODE=quiet` set first.** Follow the `afk` skill's record entry, daemon launch, and announcement steps, except that on a home that runs the supervision host its `/afk` no-daemon rule does not apply after `quiet-check` exits 1. Never arm a separate `fm-watch.sh`. Export `FM_AFK_MODE=quiet` in the shell that invokes `bin/fm-afk-launch.sh enter` and `start` (or `start-native`), so the record notes quiet mode and `state/.afk`'s first line reads `quiet` instead of `away`. On a home that runs the supervision host, launch the daemon on the path this harness uses without the host; `start` and `start-native` take quiet mode from the record `enter` wrote. Keep `FM_AFK_MODE=quiet` on a quiet refresh: an `/afk` entry, even without new words, replaces a quiet record with an away record and starts hold-for-return. 2. **Acknowledge** in `AGENTS.md` section 9 language: "Captain, quiet mode is active; I will batch routine updates and surface only decisions, failures, credentials, or review-ready work - ordinary chat will not exit this, say `/quiet off` when you want normal per-wake responses back." ## How to exit quiet mode Unlike `/afk`, ordinary chat is never the exit signal - that is the entire point of this mode (AGENTS.md section 8's away-mode stub, quiet branch). - Only an explicit `/quiet off` (or the captain plainly asking to leave quiet mode / resume normal supervision) exits it: run `bin/fm-afk-return.sh` unchanged, exactly the procedure `/afk`'s "How to exit afk" section documents for its own return path (correct-ordered daemon shutdown, durable wake presentation and acknowledgement, escalation/wedge evidence, and the return-catch-up gate). That script does not read or care about the flag's mode, so it needs no quiet-specific variant. - A marked daemon escalation, or a message beginning `/quiet` while already in quiet mode (refresh, not exit) -> stay in quiet mode and process it, the same two carve-outs `/afk` documents for away mode. - Every other message while in quiet mode is simply answered as ordinary work; the flag and daemon are left untouched. ## Orthogonal to approval authority Quiet mode changes how aggressively firstmate surfaces things, never who approves what. A PR ready for merge keeps the merge authority from `AGENTS.md` section 7, and a needs-decision finding keeps the `ask-user-authority` policy. The captain is present, so quiet mode holds nothing for a return. The record a quiet entry writes carries quiet mode (`bin/fm-afk-contract.sh mode`), and its entry, read-back, and session-start lines say so. Every action the captain asks for or standing authority covers - landing local-only work, a merge, a dispatch - proceeds now exactly as it would without quiet mode; the `afk` skill's away holds never apply to a quiet record. ## Must not hide a decision or a failure Per the issue's own author triage: quiet mode is presentation only. Progress, retries, and internal mechanics stay below deck exactly as in away mode, but review-ready work, findings, decisions, failures, and credentials escalate every time, through the same classification policy `/afk` owns. Quiet mode is opt-in and never the unconsented default; only an explicit `/quiet` invocation enters it.
View on GitHub