Borrowing it
Nothing to install: this file belongs to the-sid-dani/second-brain-os. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/the-sid-dani/second-brain-os/main/.agents/skills/prune-projects/SKILL.mdgit clone --depth 1 https://github.com/the-sid-dani/second-brain-osWrote 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/the-sid-dani/second-brain-os/prune-projects)<a href="https://agentmods.dev/skills/the-sid-dani/second-brain-os/prune-projects"><img src="https://agentmods.dev/badge/skills/the-sid-dani/second-brain-os/prune-projects/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/the-sid-dani/second-brain-os/prune-projects"><img src="https://agentmods.dev/badge/skills/the-sid-dani/second-brain-os/prune-projects.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.00104 | $0.01855 |
| Opus 5.5 | $0.00042 | $0.00742 |
| Sonnet 5.5 | $0.00021 | $0.00371 |
| Haiku 4.5 | $0.00010 | $0.00186 |
Grade A, and why
prune-projects 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 7d 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 — 170 lines — stays where its author put it; the contents beside it link to each section on GitHub.
prune-projects
Friday-cadence cleanup of <workspace.root>/<workspace.projects>/. <assistant.name> proposes archive candidates, the user approves in one multiselect, the chain handles the rest.
Before you begin: read the Configuration section in root CLAUDE.md. Path tokens like <scripts.project_query> and <workspace.projects> resolve to whatever's defined there — don't hardcode.
Why this exists
Active projects rot if nobody triggers cleanup. A pure auto-move on a 90-day timer eats live work — projects in long planning phases look dead. So the design is: <assistant.name> does the detection (fast, deterministic, scriptable), the user does the judgment (a 30-second multiselect) once a week. No drift, no surprise mass-archives.
The two prerequisites are already shipped:
<scripts.project_query>— outputs the project table withdaysand aSTALEflag./archive-project— handles the per-project archive (status flip + folder move).
This skill is just the orchestration: query → filter → ask → chain.
When to use
Trigger phrases (intentionally broad):
- "what's stale?"
- "any stale projects?"
- "Friday review" / "Friday cleanup"
- "what should I archive?" / "prune projects"
- "review my projects" / "what can I clean up?"
- "anything I should close out?" / "what's gone cold?"
Do NOT trigger for:
- Archiving a specific known project — use
/archive-projectdirectly. - Asking about one project's status — just read its
CLAUDE.md. - Shipped Area apps under
<workspace.area_apps>/— maintained software, not time-bounded projects. A COD project'sapp/is reviewed with its project.
Process
Step 1: Run the query
bash <scripts.project_query> --tsv --status all
--status all matters: without it the script returns only active rows, so the paused and done rules below never see a project and unmigrated folders never show up.
The TSV output has these columns (tab-separated, no header):
slug status type created touched days flag
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 7d ago Changed · +6 lines · -104 tokens per session e6b704b96273
- 1mo ago First seen · 164 lines · 208 tokens per session scan A af968adf91c8
prune-projects is a skill published in the GitHub repository the-sid-dani/second-brain-os (3 stars, last pushed 7d ago), licensed MIT. It adds 104 tokens to every session and 1,855 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-31.
Other skills, from other repositories
peer-onboard
A procedure for bringing an outside lead or peer into a shared working setup, including their contact space, records, previous conversations, and ongoing session.
contrib-watch
Watch incoming feedback from outside engineers on your open-source repos: comments, reviews, issues, mentions. Use when you need to find who replied to your pull requests or issues, triage human versus bot responses, and answer within a day with evidence.
retro-lost
Run a retrospective for an abandoned agent session (untouched for over 24 hours, never closed with a retro): rebuild context cold from the transcript, list what was built, sort Keep/Drop/Try and file the durable parts. Use from a nightly routine or on demand. Triggers: /retro-lost, retro for an abandoned session.
issue-match
Measure a target repository's queue and find a live open issue the contribution would close, before opening a pull request there. Reports how many PRs are open, how many of the last N closed ones were actually merged, and which issue to attach to, because a cold PR into a dead queue is a wasted artifact. Triggers…
local-engineer-outreach
An engineer-outreach workflow that manages ongoing conversations with engineering contacts and moves them through planned next steps toward an invitation or call to action.
outbound-gate
Gate for any outbound message before it leaves: pull request or issue comment, DM, invite, post, email. Use before sending to check facts, tone, platform rules, registry status and AI-slop, and to block text that fails.