一键导入
route
Analyze an enriched note and route to the best vault destination. Stage 3 of the processing pipeline.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Analyze an enriched note and route to the best vault destination. Stage 3 of the processing pipeline.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when investigating an agent-harness CLI's internals (Claude Code, codex, opencode, or similar): extracting the system prompt or tool descriptions, finding what code path produces a specific UI message, decoding minified function names or Rust symbols, understanding undocumented config keys, or otherwise spelunking a shipped binary (or its pinned source) to figure out how the tool actually behaves.
Use when about to lock in a non-trivial or hard-to-reverse decision, fire AskUserQuestion to offload a call, proceed on your own preferred option, or assert something is done / found / tested / fixed / "that's how it works" — especially when the basis is memory, the handoff, the first framing, or an unchecked assumption rather than something verified this session. Also invoked as /gut-check. Use even when you feel confident; confidence is the symptom, not the all-clear.
Obsidian vault mechanics - wiki links, .obsidian/ config, daily notes, plugins. Use when working with Obsidian vaults or structured markdown.
Diagnose and fix LSP setup for the current project's detected ecosystems (Rust, TypeScript, Ruby). Use when the SessionStart hook nudged about a missing LSP plugin, when the env isn't ready (no `bundle install`, no `cargo build`, missing server binary), when LSP calls are failing, or when the user invokes `/actually-lsp-doctor` directly. Walks the per-ecosystem state machine, reports what's missing, then runs the fix.
Use when structuring prose so readers can skim it - drafting or restructuring READMEs, docs, PR or issue bodies, design docs, RFCs, or any long-form text where a wall of prose hides the structure. Also use when explicitly asked to make something scannable or skimmable, convert prose to a list, surface a buried list, fix a wall of text, or decide whether bullets or prose fit. Strong signal: text with parallel sentence shapes, contrast markers ("that's distinct from", "versus"), bolded terms followed by colons, or an embedded "X, Y, and Z" series. Composes with prose-clarity skills (concision) and voice skills (personality) rather than replacing them. Skip for source code and for casual one-line replies where formatting reads as overkill.
Ignore actually-lsp nudges for an ecosystem in this project. Use when the user wants to silence, dismiss, or ignore the LSP setup nudges for a specific ecosystem (Rust, TypeScript, Ruby), or invokes `/actually-lsp-ignore` directly. Writes `dismissed=true` to `.claude/actually-lsp.json`. Persistent across sessions for this project only.
| name | route |
| description | Analyze an enriched note and route to the best vault destination. Stage 3 of the processing pipeline. |
| allowed-tools | ["Read(~/.claude/vaults/**/CLAUDE.md)","Read(~/.claude/vaults/**/*.md)","Read(~/.claude/vaults/**/.routing-memory.md)","Write(~/.claude/vaults/**/.routing-memory.md)","Edit(~/.claude/vaults/**/.routing-memory.md)","Bash(npx @techpickles/sb:*)"] |
Analyze an enriched note against routing memory, vault rules, and generic signals. Move to destination or mark for review.
See references/pipeline.md for stage definitions and status flow.
See references/routing.md for the scoring algorithm.
See references/para.md and references/johnny-decimal.md for the two folder systems a vault may use (often both, mid-migration).
See references/routing-memory.md for the correction and learning loop.
An enriched note in the inbox with status: enriched.
Load routing context:
.routing-memory.md from vault root (create with defaults if missing)sb vault structure for available destinationssb note context --note "{note-path}" for keywords and signalsScore destinations (priority order):
a. Check .routing-memory.md corrections for matching topics/keywords
b. Check .routing-memory.md learned patterns
c. Apply vault CLAUDE.md disambiguation rules
d. Apply generic signal scoring (per references/routing.md)
Each destination from sb vault structure carries a type. For Johnny Decimal destinations (type: 'jd') also use area and code when scoring: match the note's topic to the area, and prefer an ID code (e.g. 67.01) for a specific note or its parent category code (e.g. 67) for a loose note. See references/johnny-decimal.md.
Apply threshold:
auto-route-threshold: auto-route, move file, set status: routedstatus: pending-review, return without movingIf auto-routing, move the file:
npx @techpickles/sb note move --from "{note-path}" --to "{destination}/"
Update frontmatter: status: routed
If pending-review, present suggestions to human (when called by orchestrator):
.routing-memory.mdWhen the user picks a destination different from the top suggestion:
## Corrections in .routing-memory.md:
- {YYYY-MM-DD}: "{note title}" routed to "{suggested}", corrected to "{chosen}"
Reason: {user's reason}
For Johnny Decimal destinations, key the correction on the JD code (e.g. "corrected to 67.01") so the learning loop can match by number, not just folder name.status: routed, ORstatus: pending-review for human inputsb vault structure output