#651 by GitHub stars
undefined-ui/second-brain-os
Guides and resources for AI engineers: an agents course, five handbooks, a hands-on second-brain project and a vetted reading list.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
plugins/agents-course/skills/context-audit/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
plugins/agents-course/skills/evals-bootstrap/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
plugins/agents-course/skills/gate-check/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
plugins/agents-course/skills/goal-test/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
plugins/agents-course/skills/harness-audit/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-backfill/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-changed-my-mind/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-chat-import/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-graph/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-ingest/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-lint/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-merge/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-metrics/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-privacy/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-project/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-publish/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-query/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-quiz/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-rename/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-report/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-review/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-transcript/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
skills/second-brain-write/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 9173e03d4c40
No earlier version was observed for comparison.
Verified commit 9173e03d4c40cf1a9ccd3314d0cd4194bcd7afe3
git clone --filter=blob:none --no-checkout https://github.com/undefined-ui/second-brain-os.git .hotskills/undefined-ui-second-brain-os && git -C .hotskills/undefined-ui-second-brain-os checkout --detach 9173e03d4c40cf1a9ccd3314d0cd4194bcd7afe3
# Copy each selected skill directory from .hotskills/undefined-ui-second-brain-os into .claude/skills/<skill-name>/Heat
8.4- Star growth, last 7 daysAhead of 100% of tracked repositories
- Star growth, last 24 hoursAhead of 100% of tracked repositories
- Rank movement, last 7 daysAhead of 100% of tracked repositories
- Commits, last 30 daysAhead of 79% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- context-audit
plugins/agents-course/skills/context-audit - evals-bootstrap
plugins/agents-course/skills/evals-bootstrap - gate-check
plugins/agents-course/skills/gate-check - goal-test
plugins/agents-course/skills/goal-test - harness-audit
plugins/agents-course/skills/harness-audit - second-brain-backfill
skills/second-brain-backfill - second-brain-changed-my-mind
skills/second-brain-changed-my-mind - second-brain-chat-import
skills/second-brain-chat-import - second-brain-graph
skills/second-brain-graph - second-brain-ingest
skills/second-brain-ingest - second-brain-lint
skills/second-brain-lint - second-brain-merge
skills/second-brain-merge - second-brain-metrics
skills/second-brain-metrics - second-brain-privacy
skills/second-brain-privacy - second-brain-project
skills/second-brain-project - second-brain-publish
skills/second-brain-publish - second-brain-query
skills/second-brain-query - second-brain-quiz
skills/second-brain-quiz - second-brain-rename
skills/second-brain-rename - second-brain-report
skills/second-brain-report - second-brain-review
skills/second-brain-review - second-brain-transcript
skills/second-brain-transcript - second-brain-write
skills/second-brain-write
How it works
context-audit
When your agent uses it
Audit an agent's context layout against the four places: system prompt, tools, history, tail. Use when the user asks to audit, review or fix their agent's context, prompt caching, token spend per turn, or CLAUDE.md / AGENTS.md layout. Read-only: reports findings and a fix list, changes nothing. Do NOT use for writing evals (evals-bootstrap) or for loop design (goal-test).
What it loads into context
Frontmatter
107 tokensAlways available to the agent
SKILL.md
777 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
Files
../../../../.claude-plugin/marketplace.jsonasset452 bytes../../.claude-plugin/plugin.jsonasset487 bytesSKILL.mdcore3,221 bytes
Read SKILL.md
# Audit the context window
Theory: [How models read context](https://secondbrainos.dev/#/read/course-1-context/how-models-read)
and [The four places](https://secondbrainos.dev/#/read/course-1-context/the-four-places).
Every piece of context belongs in exactly one of four places — a byte-stable
system prompt, a frozen tool set, a compacting history, and a short live tail —
and most agent problems trace back to something sitting in the wrong one.
## Core rule
Report and rank; never edit. The output is an audit, and the user decides
what to apply. If they ask you to apply fixes afterwards, that is a normal
edit session, not this skill.
View the complete source on GitHubevals-bootstrap
When your agent uses it
Scaffold a first eval suite for an agent: mine real failures into cases, write behavioural checks over traces, and generate the runner. Use when the user wants evals, regression tests for an agent, a golden set, or asks how to know a prompt/model change did not break things. Do NOT use for a single task's done-check (goal-test) or for auditing context (context-audit).
What it loads into context
Frontmatter
99 tokensAlways available to the agent
SKILL.md
773 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Workflow
- Rules
Files
SKILL.mdcore3,148 bytesSKILL.mdcore3,148 bytes
Read SKILL.md
# Bootstrap the eval suite
Theory: [Two kinds of checks](https://secondbrainos.dev/#/read/course-5-evals/two-kinds-of-checks)
and the full walkthrough in [Evals practice](https://secondbrainos.dev/#/read/course-5-evals/evals-practice).
An eval suite is the same test after every change. Behavioural checks read
the steps of a trace; end-to-end checks read only the result. Start
behavioural: they are deterministic, run in seconds, and diagnose instead of
just scoring.
## Workflow
1. **Find real failures.** Ask where the agent's runs live (logs, transcripts,
a traces directory). Read until you have up to twenty real failures — not
imagined ones. If there are no logged runs yet, build the trace loggingView the complete source on GitHubgate-check
When your agent uses it
Find the decisions in a pipeline that do not need the expensive model and propose the gate for each: a rule, a classic classifier, or a small model, with fail-closed routing. Use when the user asks to cut model costs or latency, says the big model handles everything, or wants a triage / routing / filter layer in front of an agent. Analysis plus an optional baseline scaffold. Do NOT use for auditing context layout (context-audit) or for building eval suites (evals-bootstrap).
What it loads into context
Frontmatter
121 tokensAlways available to the agent
SKILL.md
813 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Workflow
- Output format
Files
SKILL.mdcore3,436 bytes
Read SKILL.md
# Find the gates
Theory: [Cheap decisions](https://secondbrainos.dev/#/read/course-3-gate/cheap-decisions)
and [Gate practice](https://secondbrainos.dev/#/read/course-3-gate/gate-practice).
An agent does two kinds of work: it writes, which needs a big model, and it
decides — is this spam, which queue, does this need a person — which is a
bounded question the answer to which comes from a set you already know.
A gate is a cheap decision layer that sorts the stream so the expensive
model only sees the items that actually need judgement.
## Workflow
1. **Map the decisions.** Read the pipeline's entry points and prompts and
list every decision made before or during a model call: classification,View the complete source on GitHubgoal-test
When your agent uses it
Turn a vague task into a testable definition of done and generate an executable goal-test script for it, optionally with a bounded retry loop around a headless agent. Use when the user wants to run an agent in a loop, asks how to know when an agent task is finished, or says a goal like "improve X" needs to become checkable. Do NOT use for building eval suites over many cases — that is evals-bootstrap.
What it loads into context
Frontmatter
109 tokensAlways available to the agent
SKILL.md
770 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Workflow
- Rules
Files
SKILL.mdcore3,027 bytesSKILL.mdcore3,027 bytesSKILL.mdcore3,027 bytesSKILL.mdcore3,027 bytesSKILL.mdcore3,027 bytes
Read SKILL.md
# Write done as a script
Theory: [The four parts of a loop](https://secondbrainos.dev/#/read/course-2-loop/the-four-parts)
and the [goal test build page](https://secondbrainos.dev/#/read/track-loop/build-goal-test).
"Improve the error handling" cannot terminate a loop, because nothing can ever
say it is finished. The goal must be phrased so that a program — not a person,
not the model — returns true or false against it.
## Workflow
1. **Extract the claim.** Ask what the user wants true at the end, then
restate it as verifiable facts: which command exits 0, which file exists,
which string appears, which number crosses which threshold. If a part
cannot be checked by a program, say so and negotiate it down to what can.View the complete source on GitHubharness-audit
When your agent uses it
Audit an agent's harness against the four rings: containment, guides, sensors, permissions. Use when the user asks whether their agent setup is safe, wants a review of sandboxing / permissions / hooks / AGENTS.md guardrails, or asks what a bad session could break. Read-only: reports the blast radius and a hardening list, changes nothing. Do NOT use for context layout (context-audit) or cost routing (gate-check).
What it loads into context
Frontmatter
110 tokensAlways available to the agent
SKILL.md
815 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
Files
SKILL.mdcore3,444 bytes
Read SKILL.md
# Audit the four rings
Theory: [The four rings](https://secondbrainos.dev/#/read/course-4-harness/the-four-rings)
and [Harness practice](https://secondbrainos.dev/#/read/course-4-harness/harness-practice).
Build from the outside in: containment, guides, sensors, permissions. The
order matters because each ring must hold when every ring inside it fails —
a guide can be ignored, a sensor can miss, an approval can be misclicked;
a wall does not care.
## Core rule
Report and rank; never harden anything yourself. The audit's one organising
question is the blast radius: describe the worst session possible under the
current setup and what it costs. If the user asks you to apply fixesView the complete source on GitHubsecond-brain-backfill
When your agent uses it
Import a large archive into the vault in controlled batches: triage what is worth ingesting, process oldest first, checkpoint after every batch, and keep cost visible. Use this skill whenever the user wants to import years of bookmarks, an export from another notes app, a downloads folder, a chat history dump, or says "backfill", "bulk import", "process my archive". Do NOT use for ingesting one or a few new sources, which is second-brain-ingest.
What it loads into context
Frontmatter
121 tokensAlways available to the agent
SKILL.md
495 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,013 bytesSKILL.mdcore2,013 bytes
Read SKILL.md
# Backfill an archive
A backfill is where cost and quality both go wrong quietly. Done in the wrong
order it also inverts the vault's history, because later sources should update
pages that earlier ones created.
## Core rule
Oldest first, ten sources per batch, stop for a go-ahead between batches.
## Workflow
1. **Triage before ingesting.** Read titles and first paragraphs. Sort into
worth-ingesting, keep-in-raw, and delete. Most archives are half dead linksView the complete source on GitHubsecond-brain-changed-my-mind
When your agent uses it
Trace where the user's recorded position on something has shifted: superseded claims, contradictions between sources of different dates, and what evidence moved them. Use this skill when the user asks what they have changed their mind about, how their thinking on a topic developed, what they used to believe, or wants a quarterly look back at their own positions. Do NOT use for finding contradictions between sources with no time dimension, or for a current-state answer.
What it loads into context
Frontmatter
116 tokensAlways available to the agent
SKILL.md
435 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,942 bytesSKILL.mdcore1,942 bytes
Read SKILL.md
# Trace changed positions
This is the query a vault can answer that nothing else can, and the reason the
supersession rules exist. It only works because contradictions are recorded
rather than overwritten.
## Core rule
Report the change with both positions, both dates and the evidence between them.
A conclusion without its history is just the current claim.
## Workflow
1. **Find superseded claims** across concept pages, and contradictions where theView the complete source on GitHubsecond-brain-chat-import
When your agent uses it
Triage an exported chat history into what to ingest, what to archive and what to delete, with a privacy pass first. Use this skill when the user has exported their Claude or ChatGPT history, asks to import old conversations, or asks what in their chat archive is worth keeping. Do NOT use for ingesting a single pasted conversation, or for any material the user has not explicitly asked to bring into the vault.
What it loads into context
Frontmatter
107 tokensAlways available to the agent
SKILL.md
488 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Scripts executed separately
../../scripts/chat_export_to_md.py
Files
../../scripts/chat_export_to_md.pyruns3,286 bytesSKILL.mdcore2,106 bytesSKILL.mdcore2,106 bytes
Read SKILL.md
# Import chat history
Chat history is the most underrated source a person owns and the most sensitive.
It records their reasoning, not just facts, and it also records things they would
not want in a file that gets synced, committed and backed up.
## Core rule
Privacy pass before triage, triage before ingestion. Never ingest an export
wholesale.
## Workflow
1. **Convert** with `scripts/chat_export_to_md.py` into one file perView the complete source on GitHubsecond-brain-graph
When your agent uses it
Analyse the vault's link graph and report on its shape: orphan rate, average degree, components, hubs, bridges and clusters, with what each number means for retrieval. Use this skill when the user asks about the health or structure of their graph, wants metrics, asks which pages are most connected or most isolated, or asks whether the vault is fragmented. Do NOT use for fixing what it finds, which is second-brain-lint, or for answering a content question.
What it loads into context
Frontmatter
118 tokensAlways available to the agent
SKILL.md
498 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Scripts executed separately
../../scripts/graph_export.py../../scripts/link_check.py../../scripts/vault_stats.py
Files
../../scripts/graph_export.pyruns3,118 bytes../../scripts/link_check.pyruns3,861 bytes../../scripts/vault_stats.pyruns2,730 bytesSKILL.mdcore2,129 bytes
Read SKILL.md
# Analyse the graph
The graph is the search space every answer is drawn from. Its shape decides
whether retrieval reaches the relevant material in a few hops or reaches nothing.
## Core rule
Report shape and what it means, never fix anything. This skill is read-only.
## Workflow
1. **Run the scripts** rather than reading files: `scripts/vault_stats.py` for
counts and degree, `scripts/link_check.py` for orphans and breaks,
`scripts/graph_export.py` when deeper analysis is wanted.View the complete source on GitHubsecond-brain-ingest
When your agent uses it
Turn raw source material in a second-brain vault into linked wiki pages: read the source, split it into concepts and entities, write or update pages, connect them to existing pages, and record the run in the log. Use this skill whenever the user drops a file into raw/, pastes an article, transcript or PDF and asks to add it to the vault, says "ingest this", "add this to my second brain", "process raw", or asks to catch up on unprocessed sources, even if they do not name the ingest command. Do NOT use for answering questions from an existing vault, for linting or repairing pages, or for editing notes the user wrote by hand.
What it loads into context
Frontmatter
166 tokensAlways available to the agent
SKILL.md
838 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
- Example
Files
SKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytesSKILL.mdcore3,491 bytes
Read SKILL.md
# Ingest a source
An ingest that only writes a summary page produces a vault that grows without
getting smarter. The whole value is in the second half of the job: connecting
the new material to what is already there. A page that lands unlinked is
invisible within a week.
## Core rule
Nothing is ingested until it is linked. Every run ends with the new pages
connected to existing pages in both directions.
## Workflow
View the complete source on GitHubsecond-brain-lint
When your agent uses it
Audit a second-brain vault for structural problems and repair them: broken wikilinks, orphan pages, empty stubs, frontmatter that violates the schema, near-duplicate pages, and stale index entries. Use this skill whenever the user asks to lint, clean, audit or check the health of their vault, says pages feel messy or links are broken, after a large bulk import, or when a scheduled maintenance run fires. Do NOT use for ingesting new sources, for answering questions from the vault, or for rewriting page content that is structurally fine but reads badly.
What it loads into context
Frontmatter
142 tokensAlways available to the agent
SKILL.md
660 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,710 bytesSKILL.mdcore2,710 bytes
Read SKILL.md
# Lint the vault
Structural rot is silent. Nothing errors, nothing crashes, the vault just
slowly stops answering questions well because a third of its pages are
unreachable. Linting is the only thing that catches it before the owner does.
## Core rule
Report before repairing. Fix the mechanical problems automatically, but never
delete or merge a page without listing it first and getting a yes, because the
owner may have written it by hand.
## Workflow
View the complete source on GitHubsecond-brain-merge
When your agent uses it
Merge two pages that describe the same thing, preserving every distinct claim, redirecting inbound links, and recording the merge. Use this skill when the user approves a duplicate merge, says "these are the same page", "merge X into Y", or asks to clean up near-duplicates that a lint run proposed. Do NOT use to merge pages on your own judgement, to delete a page outright, or to split one page into several.
What it loads into context
Frontmatter
110 tokensAlways available to the agent
SKILL.md
433 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,879 bytes
Read SKILL.md
# Merge duplicate pages
A merge is irreversible in the way that matters: afterwards you cannot tell
which claim came from which page. Two ideas that look identical from their
summaries are often a general case and a specific one.
## Core rule
Never merge unprompted. Propose, wait for approval, then follow the procedure
exactly.
## Workflow
1. **Pick the survivor** by canonical name, not by which page is longer.View the complete source on GitHubsecond-brain-metrics
When your agent uses it
Record a dated snapshot of the vault's health numbers and compare against previous snapshots so trends are visible. Use this skill for a monthly or quarterly check, when the user asks whether the vault is improving, or asks to track its numbers over time. Do NOT use for a one-off graph analysis, which is second-brain-graph, or for structural repairs.
What it loads into context
Frontmatter
93 tokensAlways available to the agent
SKILL.md
407 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Scripts executed separately
../../scripts/link_check.py../../scripts/vault_stats.py
Files
../../scripts/link_check.pyruns3,861 bytes../../scripts/vault_stats.pyruns2,730 bytesSKILL.mdcore1,697 bytes
Read SKILL.md
# Record metrics
A single reading tells you almost nothing. Direction over months is the
information, and nobody remembers what last quarter's orphan rate was.
## Core rule
Four numbers, appended to a dated log, compared against the last entry. Never
page count or word count.
## Workflow
1. **Run** `scripts/vault_stats.py` and `scripts/link_check.py`.
2. **Record:** orphan rate, average degree, component count, stale-concept rate,View the complete source on GitHubsecond-brain-privacy
When your agent uses it
Audit the vault for material that should not be in it: credentials, other people's private information, confidential work, and anything the user would not want synced or backed up. Use this skill when the user asks about privacy, is about to share or sync the vault, has just imported chat history or meeting notes, or asks what is sensitive in their notes. Do NOT use to delete anything on your own, or as a substitute for the publishing check.
What it loads into context
Frontmatter
112 tokensAlways available to the agent
SKILL.md
408 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,907 bytes
Read SKILL.md
# Audit privacy
A mature vault is one of the highest-signal documents about a person that
exists, and it lives in a folder that gets synced, committed, backed up and
occasionally shared. Every copy is another place the content exists.
## Core rule
Find and report. Delete nothing without an explicit instruction naming what to
remove.
## Workflow
1. **Scan for credentials:** API keys, tokens, passwords, connection strings.View the complete source on GitHubsecond-brain-project
When your agent uses it
Set up or update a project in the vault: the four-stage folder pipeline, a project-scoped CLAUDE.md with one goal, and links to the concept pages it depends on. Use this skill when the user starts something new they will work on over time, says "create a project", "set up a folder for X", or asks to define the goal and structure of ongoing work. Do NOT use for one-off tasks, for wiki pages about a topic, or for scoping an existing project down to work in it.
What it loads into context
Frontmatter
130 tokensAlways available to the agent
SKILL.md
497 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,007 bytes
Read SKILL.md
# Set up a project
The knowledge layer answers what you know. The project layer answers what you
are doing this week. Merging them fills a wiki with dead task lists and buries
working files under conceptual notes.
## Core rule
One goal per project, stated in its own `CLAUDE.md`. A project with three goals
is three projects.
## Workflow
1. **Interview if needed.** What this produces, for whom, by when, and what theView the complete source on GitHubsecond-brain-publish
When your agent uses it
Prepare a subset of the vault for publishing: check opt-in flags, find private material, and report what would leak through links before anything is exported. Use this skill when the user wants to publish notes as a site or digital garden, asks what is safe to make public, or is setting up an export. Do NOT use for exporting a single document, or for running the publishing tool itself.
What it loads into context
Frontmatter
99 tokensAlways available to the agent
SKILL.md
391 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,689 bytesSKILL.mdcore1,689 bytes
Read SKILL.md
# Prepare to publish
Once something is crawled, it is out. Every check here is cheap; the failure it
prevents is permanent.
## Core rule
Explicit opt-in only. A page publishes because it says `publish: true`, never
because nothing excluded it.
## Workflow
1. **List the opt-in set.** Every page marked for publication.
2. **Follow their links.** A published page linking to a private one eitherView the complete source on GitHubsecond-brain-query
When your agent uses it
Answer a question from a second-brain vault by reading its own pages, citing the pages used, and saying plainly when the vault does not contain the answer. Use this skill whenever the user asks what they know about a topic, what they have read on something, what connects two ideas, what they have changed their mind about, or asks any question that should be answered from their own notes rather than general knowledge. Do NOT use for ingesting new material, for general questions the vault has nothing to do with, or when the user explicitly wants an answer from the open web.
What it loads into context
Frontmatter
141 tokensAlways available to the agent
SKILL.md
494 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,199 bytesSKILL.mdcore2,199 bytes
Read SKILL.md
# Query the vault
A query that quietly falls back on general knowledge is the most damaging thing
this system can do. The owner built the vault so answers would be grounded in
what they actually read, and an answer that blends the model's priors with
their notes is worse than no answer, because it cannot be checked.
## Core rule
Every claim in the answer comes from a page in the vault and names that page.
Anything you know but the vault does not is labelled as outside knowledge or
left out.
## WorkflowView the complete source on GitHubsecond-brain-quiz
When your agent uses it
Generate questions from the user's own concept pages so they can find out what they saved but never learned, and compare their answers against what the pages say. Use this skill when the user wants to test themselves, revise, make flashcards from their notes, or asks what they have forgotten. Do NOT use for generic quizzing on a topic the vault does not cover, or for answering a question from the vault.
What it loads into context
Frontmatter
106 tokensAlways available to the agent
SKILL.md
413 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,772 bytes
Read SKILL.md
# Quiz from your own pages
Reading something is not learning it. A vault of well-written pages nobody
revisits is a library, and libraries do not make anyone knowledgeable.
## Core rule
Questions come from the user's pages, at the depth those pages record. Never
from general knowledge about the topic.
## Workflow
1. **Pick the scope:** a topic, a cluster, or pages updated recently.
2. **Write questions of two kinds:** recall of what the page states, andView the complete source on GitHubsecond-brain-rename
When your agent uses it
Rename a page safely: update the file, fix every inbound wikilink, add the old name as an alias, and log it. Use this skill whenever a page needs a different canonical title, the user says "rename X to Y", asks to fix an inconsistent title, or after a lint run flags naming problems. Do NOT use for merging two pages, for moving a page between folders without a name change, or for renaming files outside the wiki.
What it loads into context
Frontmatter
116 tokensAlways available to the agent
SKILL.md
411 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,700 bytesSKILL.mdcore1,700 bytes
Read SKILL.md
# Rename a page
An agent renaming a file directly is the single most common source of broken
links in an agent-maintained vault. Obsidian fixes links when you rename inside
the app; writing the file directly does not.
## Core rule
A rename is four operations, not one. All four, or none.
## Workflow
1. **Check the new name** against existing pages and aliases. A rename that
collides with an existing alias creates ambiguity the graph cannot resolve.View the complete source on GitHubsecond-brain-report
When your agent uses it
Produce a research report from the vault: scope the question against existing pages, name the gaps, and write findings with citations, disagreements and limits. Use this skill when the user asks for a research report, a deep write-up on a topic, or wants to understand a subject thoroughly using what they have collected. Do NOT use for a quick answer from the vault, for drafting an article in the user's voice, or for summarising a single source.
What it loads into context
Frontmatter
112 tokensAlways available to the agent
SKILL.md
434 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,895 bytesSKILL.mdcore1,895 bytes
Read SKILL.md
# Write a research report
A report that presents only findings looks stronger and is less useful, because
the reader cannot tell where it is load-bearing and where it is thin.
## Core rule
Scope against the vault first. Most of the work in a good report is knowing what
you do not need to look up.
## Workflow
1. **Inventory what exists.** Which pages cover this, what is thin, what is
missing entirely. That answer is the research plan.View the complete source on GitHubsecond-brain-review
When your agent uses it
Produce a periodic review of a second-brain vault: what was added, which topics are growing, what contradicts what, which questions are still open, and what is worth reading next. Use this skill whenever the user asks for a weekly or monthly review, asks what changed in their vault, what they have been learning about lately, or what they should look at next, and when a scheduled review task fires. Do NOT use for structural linting, for ingesting sources, or for answering a specific factual question.
What it loads into context
Frontmatter
127 tokensAlways available to the agent
SKILL.md
506 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,200 bytes
Read SKILL.md
# Review the vault
Capture systems fail at the point where nothing comes back out. A review is the
loop that closes: it turns a week of ingestion into something the owner reads
and acts on, and it is what makes the vault feel alive rather than archival.
## Core rule
A review reports on the vault, not on the agent's activity. Nobody needs to
know how many tool calls ran; they need to know what they now know.
## Workflow
1. **Diff the period.** New and updated pages since the last review, fromView the complete source on GitHubsecond-brain-transcript
When your agent uses it
Clean a raw transcript before ingestion: punctuate, paragraph, label speakers, fix mistranscribed technical terms, and split long recordings by topic. Use this skill when the user drops an auto-generated transcript, subtitle file, podcast or lecture transcript, meeting recording text, or asks to process a video or audio source. Do NOT use for text that is already prose, for summarising a transcript, or for the ingestion itself.
What it loads into context
Frontmatter
106 tokensAlways available to the agent
SKILL.md
445 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore2,014 bytes
Read SKILL.md
# Clean a transcript
Concept pages built from unpunctuated caption dumps are noticeably worse,
because the model spends its attention reconstructing sentence boundaries
instead of understanding claims.
## Core rule
Clean, never summarise. Nothing is cut. This is a formatting pass on the record,
and the record has to stay faithful.
## Workflow
1. **Punctuate and paragraph.** Sentence boundaries first, then paragraphs atView the complete source on GitHubsecond-brain-write
When your agent uses it
Draft from the vault: outline from concept pages, keep citations to the user's own sources, and surface where their material disagrees. Use this skill when the user wants to write an article, post, essay or newsletter based on what they have collected, or asks what they could write about a topic. Do NOT use for research reports, for writing with no grounding in the vault, or for editing text the user wrote themselves unless asked.
What it loads into context
Frontmatter
109 tokensAlways available to the agent
SKILL.md
446 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core rule
- Workflow
- Output format
- Calibration
Files
SKILL.mdcore1,919 bytesSKILL.mdcore1,919 bytesSKILL.mdcore1,919 bytes
Read SKILL.md
# Write from the vault
The research is already done, cited and connected. What is left is the argument,
and that is the part the user should keep.
## Core rule
Assemble structure and evidence. Do not hand back finished prose as if it were
theirs.
## Workflow
1. **Find the relevant concept pages** and say what they collectively argue.
2. **Surface the disagreements.** These are where the user has something to sayView the complete source on GitHubSkills included
- context-audit
- evals-bootstrap
- gate-check
- goal-test
- harness-audit
- second-brain-backfill
- second-brain-changed-my-mind
- second-brain-chat-import
- second-brain-graph
- second-brain-ingest
- second-brain-lint
- second-brain-merge
- second-brain-metrics
- second-brain-privacy
- second-brain-project
- second-brain-publish
- second-brain-query
- second-brain-quiz
- second-brain-rename
- second-brain-report
- second-brain-review
- second-brain-transcript
- second-brain-write
Repository facts
- License
- MIT
- Created
- Sep 7, 2026
- Last pushed
- Nov 3, 2026
- Forks
- 252
- Open issues
- 3
- Project activity
- Active
Rank over the last 12 weeks
Now #651 · best #651 · up 45 in 30 days
- #775 on Nov 1
- #772 on Nov 2
- #771 on Nov 3
- #705 on Nov 4
- #657 on Nov 5
- #651 since Nov 6
46 earlier periods
- #923 on Sep 6
- #941 on Sep 7
- #934 on Sep 10
- #901 on Sep 11
- #896 on Sep 12
- #921 on Sep 15
- #934 on Sep 16
- #933 on Sep 17
- #934 on Sep 21
- #944 on Sep 22
- #930 on Sep 23
- #883 on Sep 24
- #802 on Sep 25
- #782 on Sep 26
- #778 on Sep 27
- #775 on Sep 28
- #795 on Sep 29
- #773 on Sep 30
- #703 on Oct 1
- #712 on Oct 2
- #689 on Oct 3
- #719 on Oct 4
- #700 on Oct 5
- #690 on Oct 6
- #696 on Oct 7
- #732 on Oct 8
- #702 on Oct 9
- #690 on Oct 10
- #680 on Oct 11
- #690 from Oct 12 to Oct 13
- #701 on Oct 14
- #680 on Oct 15
- #693 on Oct 16
- #670 on Oct 17
- #662 on Oct 18
- #698 on Oct 19
- #706 on Oct 20
- #709 on Oct 21
- #692 on Oct 22
- #690 on Oct 23
- #664 on Oct 24
- #770 on Oct 25
- #768 on Oct 28
- #770 on Oct 29
- #769 on Oct 30
- #773 on Oct 31
Before you install
Local scriptsAutomated signals, not a guarantee
Checked Nov 3, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 27 notes
plugins/agents-course/skills/evals-bootstrap/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedplugins/agents-course/skills/goal-test/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedplugins/agents-course/skills/goal-test/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedplugins/agents-course/skills/goal-test/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedplugins/agents-course/skills/goal-test/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-backfill/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-changed-my-mind/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-chat-import/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/second-brain-ingest/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 20 network referencesin 8 files: plugins/agents-course/.claude-plugin/plugin.json:6 .claude-plugin/marketplace.json:3 scripts/graph_export.py:75 and 5 more
- No hidden or obfuscated text
- No instruction overrides
- 6 executable scriptsin 4 files: scripts/link_check.py:1 scripts/vault_stats.py:1 scripts/chat_export_to_md.py:1 and 1 more
- No access to secrets
- No requests to vote in Hot
Show all 26 signals by file
.claude-plugin/marketplace.json
plugins/agents-course/.claude-plugin/plugin.json
- Network accessline 6
"name": "undefinedKi" }, "homepage": "https://secondbrainos.dev/#/read/course-0-map/what-an-agent-is", - Network accessline 7
}, "homepage": "https://secondbrainos.dev/#/read/course-0-map/what-an-agent-is", "repository": "https://github.com/undefined-ui/second-brain-os", - Network accessline 8
"homepage": "https://secondbrainos.dev/#/read/course-0-map/what-an-agent-is", - Network accessline 9
"repository": "https://github.com/undefined-ui/second-brain-os",
plugins/agents-course/skills/context-audit/SKILL.md
plugins/agents-course/skills/evals-bootstrap/SKILL.md
plugins/agents-course/skills/gate-check/SKILL.md
plugins/agents-course/skills/goal-test/SKILL.md
plugins/agents-course/skills/harness-audit/SKILL.md
scripts/chat_export_to_md.py
- Executable scriptline 1
#!/usr/bin/env python3
scripts/graph_export.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 75
with open(args.out, "w", encoding="utf-8") as fh: fh.write('<?xml version="1.0" encoding="UTF-8"?>\n') fh.write('<graphml xmlns="http://graphml.graphdrawing.org/xmlns">\n') - Network accessline 76
fh.write('<?xml version="1.0" encoding="UTF-8"?>\n') fh.write('<graphml xmlns="http://graphml.graphdrawing.org/xmlns">\n') fh.write('<key id="t" for="node" attr.name="type" attr.type="string"/>\n') - Network accessline 77
fh.write('<graphml xmlns="http://graphml.graphdrawing.org/xmlns">\n')
scripts/link_check.py
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
No combined signals at this commit.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md plugins/agents-course/skills/context-audit/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md plugins/agents-course/skills/context-audit/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md plugins/agents-course/skills/context-audit/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md plugins/agents-course/skills/context-audit/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md plugins/agents-course/skills/context-audit/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/undefined-ui-second-brain-os/)