Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add dshakes/compass --skill morning-triagegit clone --depth 1 https://github.com/dshakes/compassWrote 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/skills/dshakes/compass/morning-triage)<a href="https://agentmods.dev/skills/dshakes/compass/morning-triage"><img src="https://agentmods.dev/badge/skills/dshakes/compass/morning-triage/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/skills/dshakes/compass/morning-triage"><img src="https://agentmods.dev/badge/skills/dshakes/compass/morning-triage.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00102 | $0.01200 |
| Opus 5.5 | $0.00041 | $0.00480 |
| Sonnet 5.5 | $0.00020 | $0.00240 |
| Haiku 4.5 | $0.00010 | $0.00120 |
Grade A, and why
morning-triage 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 2mo 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.
How it starts
The opening of the file, as written. The whole thing — 93 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Morning triage — the loop's discovery move
A loop has five moves: discovery → handoff → verification → persistence → scheduling (see docs/20-loops.md). This skill is discovery — the move that finds the work. Skip it and you have the "blind loop": automated doing but a human still spends every morning deciding what to do. Discovery sets the ceiling on the whole loop — surface work of no value and the other four moves serve nothing.
The point is to let the loop find its own work, then stop exactly where a human should decide.
Read — the discovery inputs
Look at what changed since the last run (use gh and git; read-only):
- Failed CI since yesterday —
gh run list --status failure --limit 30, read the failing step. - Issues opened in the last 24h —
gh issue list --search "created:>=<date>" --state open. - Commits merged since the last run —
git log --since=<last-run> --oneline. - The previous state file —
state/triage.md(so you don't re-discover handled work).
Judge — the part that sets the ceiling
For each candidate, decide — this is where judgment lives, don't skip it:
- Is it actionable now, or noise? (a timeout flake is noise; a real regression is work)
- Does it block a release? → priority.
- Is it already tracked in
state/triage.mdor an open issue/PR? → skip, don't duplicate. - Is it deterministic (a script could decide it) rather than something needing a model? → prefer the deterministic path; keep the model for genuine judgment (the deterministic-gate principle).
Keep only what is worth a worktree today. A short, true list beats a long, padded one.
Write — the persistence output
Append each kept finding to state/triage.md (create it if absent) — one row, so tomorrow's
run reads it back. The agent forgets; the repo does not.
| finding | source | priority | status |
|---|---|---|---|
| auth test flaky | CI #4821 | low | inbox |
| null deref on empty cart | issue #92 | high | handoff |
| stale dep: lodash | commit a3f1 | med | inbox |
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.
- 2mo ago First seen · 93 lines · 102 tokens per session scan A 1a1d07a659d7
morning-triage is a skill published in the GitHub repository dshakes/compass (21 stars, last pushed yesterday), licensed MIT. It adds 102 tokens to every session and 1,200 once invoked, about $0.0004 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-08-30.
Other skills, from other repositories
apple-reminders
Apple Reminders via remindctl: add, list, complete.
apple-notes
Manage Apple Notes via memo CLI: create, search, edit.
box
Box manages cloud files, sharing, search, and metadata.
obsidian
Read, search, create, and edit notes in the Obsidian vault.
channels-setup
Use when a developer wants to build their first CopilotKit Channels agent and get it answering in Slack or Microsoft Teams: "set up a channel", "connect my agent to Slack", "get my agent into Teams", or starting from nothing and wanting a working channel end to end. Covers the whole path: inspecting or scaffolding the…
mantis-configure
Configures and validates Mantis pipeline environments, sandbox mechanisms, and AI models. Use to set up workflow.json, auto-detect host capabilities, switch between sandboxes (static-only, gvisor, microsandbox, gce), select AI models, and run fast 1-2s preflight tests. Don't use for scanning source code or running…