My second brain
Build, maintain, and process a personal knowledge vault with a source-preserving workflow: capture inbox/source material, triage it into Sources/Notes/Projects/Outputs, compile sources into knowledge cards or method cards, preserve citations, leave My Take and Open Questions, update MOCs/projects/outputs, refresh Dashboard.md, and write handoff notes. Use when the user asks to process collected notes, organize an Obsidian vault, create or update a second brain, turn articles/chats/projects into reusable knowledge, inspect vault health, generate outputs from notes, or save something from the current conversation into their knowledge vault — e.g. 'save this insight/decision/discussion to my brain / second brain / knowledge vault', '收进 brain', '存进知识库', 'remember this in my vault'. Supports English, Chinese, or the vault's existing language.From its SKILL.md
npx -y skills add siqiyaoyao/my-second-brain --skill my-second-brainAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
7.6 KB, ~1.6k tokens by cl100k_base, as published. Nobody here has run it
My Second Brain
Use this skill to help a user operate a personal knowledge vault as a living system, not a dumping ground. The core loop is:
Capture -> Triage -> Compile -> Connect -> Projectize -> Publish -> Review
Defaults
- Target folder: current working directory unless the user provides a path.
- Language: follow the user's language. If unclear, use the vault's existing language.
- Preserve user-written content. Prefer appending update sections or new linked notes over overwriting.
- Do not move application code into the vault. Store knowledge and path pointers only.
- Treat original sources as raw evidence: preserve source links, mark uncertainty, and avoid inventing facts.
- My Take belongs to the user. You may draft suggestions, but clearly label them if they are AI-proposed.
First Read
For an existing vault, read these if present:
AGENTS.mdHANDOFF.md_System/AGENTS.md_System/Workflows.md_System/Schema.mdDashboard.md
For a folder that is not yet a vault, read references/vault-method.md and references/schema.md, then create the smallest useful structure.
Decision Tree
User wants to process newly collected material
- Inspect
0 Inbox/,1 Sources/, and any files the user named. - Triage each item:
- Raw article, transcript, clipping, chat log ->
1 Sources/ - Reusable concept ->
2 Notes/withtype: note - Repeatable procedure ->
2 Notes/withtype: method - Active work or experiment ->
3 Projects/withtype: project - Public-facing draft ->
5 Outputs/withtype: output
- Raw article, transcript, clipping, chat log ->
- Compile valuable sources into concise notes. Keep citations and uncertainty.
- Add
My TakeandOpen Questionssections where useful. - Update related MOCs or create one when a topic has enough notes.
- Refresh
Dashboard.md. - Tell the user the 1-3 human decisions or My Takes they should supply.
Read references/workflows.md before doing multi-file processing.
User wants a clear after-collection checklist
Give the minimal executable checklist in the user's language:
- Triage new
0 Inboxand1 Sourcescontent. - Decide what to archive and what to compile.
- Turn valuable material into
2 Notesknowledge cards or method cards. - Preserve sources and mark uncertainty.
- Leave
My TakeandOpen Questions. - Create or update
3 Projectswhen knowledge needs action. - Create
5 Outputsdrafts when knowledge can be published. - Refresh
Dashboard.md. - End with the top 1-3 human decisions.
User wants to initialize a vault
- Create only the minimal folders:
0 Inbox,1 Sources,2 Notes,3 Projects,4 Me,5 Outputs,_System,Attachments. - Create or merge
_System/Schema.md,_System/Workflows.md,AGENTS.md,HANDOFF.md. - Copy or adapt templates from
assets/. - Add lightweight scripts only if the user wants automation.
- Do not create large empty taxonomies.
Read references/schema.md and references/vault-method.md.
User wants a vault health check
- Run local vault scripts if they exist:
python scripts/dashboard.py --savepython scripts/notes_status.pypython scripts/vault_report.py
- If the vault lacks these scripts, use bundled scripts from this skill with
--vault <target>. - Summarize:
- uncompiled sources
- notes missing My Take
- unanswered Open Questions
- draft outputs
- stuck projects
- Recommend one next action, not ten.
Read references/dashboard-rules.md.
User wants to save something from the current conversation
This is live capture, not file processing. Keep friction near zero:
- Distill what the user pointed at (an insight, decision, method, gotcha, or the whole discussion) into a concise note. Do not dump the raw transcript.
- Route by nature, defaulting to lightweight:
- Not sure where it belongs -> a seed note in
0 Inbox/(one file, frontmatter + a few lines). Never block capture on classification. - Clear reusable concept/insight ->
2 Notes/(type: note) - Repeatable procedure ->
2 Notes/(type: method) - Belongs to an existing project -> append to that project card's log/decisions instead of a new file.
- Not sure where it belongs -> a seed note in
- Set
source:to something likeconversation <YYYY-MM-DD> (<topic or tool>)so provenance survives. - The user's own words go in
My Take; anything you inferred is labeled AI-proposed. Add 1-2[[links]]to related notes if obvious. - Confirm in one line what was saved and where. Skip dashboard refresh unless asked — quick capture should feel instant.
User wants to turn knowledge into output
- Gather the relevant notes/projects.
- Identify the user-owned angle, not just facts.
- Draft into
5 Outputs/. - Mark sections needing user confirmation.
- Link the output back to source notes and projects.
Bundled Resources
references/vault-method.md: mental model, principles, and when to split vaults.references/schema.md: recommended frontmatter and folder conventions.references/workflows.md: capture-to-output SOPs and common user prompts.references/dashboard-rules.md: dashboard and participation checks.assets/Source.md,assets/Note.md,assets/Method.md,assets/Project.md,assets/Output.md: starter templates.scripts/new.py,scripts/dashboard.py,scripts/notes_status.py,scripts/vault_report.py: portable standard-library helpers. Run with--vault <target>if not executing from the vault root.
Activation Limits and the Standing Rule
A skill only fires when the user's request matches its description — it cannot watch conversations in the background and decide on its own that something is worth saving. To close that gap, offer to install a short standing rule in the user's global agent config (~/.claude/CLAUDE.md for Claude Code, ~/.codex/AGENTS.md for Codex), adapted to their language:
## Knowledge Capture
- I keep a personal knowledge vault at <vault path> (skill: my-second-brain).
- When a session produces durable value (an insight, method, decision, or hard-won gotcha),
proactively ask once: "Want me to save X to your vault?" If yes, use my-second-brain.
- Test: still useful in a month, or in another project? If not, don't ask.
- If I say "save this to my brain" (or equivalent), just do it.
Offer this during vault initialization, and whenever a user wonders why insights aren't being captured automatically. This is advisory (not guaranteed); for a hard guarantee suggest a SessionEnd hook, noting it fires every session and can feel naggy.
Finish Every Session
Before finishing, update HANDOFF.md if present, refresh Dashboard.md when content changed, and report:
- files created/updated
- what was compiled or linked
- what the user needs to decide or write next
What ships with it: 14 files
35.5 KB alongside SKILL.md, 4 of them executable
agents/
- openai.yaml210 B
assets/
- Method.md782 B
- Note.md557 B
- Output.md252 B
- Project.md480 B
- Source.md680 B
references/
- dashboard-rules.md903 B
- schema.md1.6 KB
- vault-method.md2.1 KB
- workflows.md1.9 KB
scripts/
- dashboard.pyruns9.9 KB
- new.pyruns3.6 KB
- notes_status.pyruns6.4 KB
- vault_report.pyruns6.2 KB