一键导入
vault-ingest
Use when raw vault captures need classification, routing, relocation, and external-source synthesis from the source inbox into the right vault surfaces
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when raw vault captures need classification, routing, relocation, and external-source synthesis from the source inbox into the right vault surfaces
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run a marketing/positioning pass on an open source repo's README and public-facing docs so a developer landing on it for the first time immediately understands what it is, why it exists, and how to use it. Use this whenever the user wants to improve a repo's README, write launch copy for an OSS project, sharpen positioning ("does this README explain what the project does"), prep a repo for a Show HN / Hacker News / Product Hunt / Twitter launch, or asks for an "OSS marketing pass," "README audit," or similar. This is about clarity and conversion (visitor → user → star), not contribution mechanics — for CONTRIBUTING.md, issue templates, CODEOWNERS, or governance docs, that's a different concern.
Audit and prepare a GitHub repo for open source release, with a focus on developer experience (DevEx) — the things that determine whether a stranger can go from "found this repo" to "opened a PR" without friction. Use this whenever the user wants to open-source a repo, make a private repo public, do a "pre-launch checklist" or "OSS readiness audit," improve their README/CONTRIBUTING/issue templates, or asks something like "is this repo ready for people to use/contribute to." Also trigger for narrower asks that are really pieces of this — "write a CONTRIBUTING.md," "set up issue templates," "add a CODEOWNERS file" — since those are almost always better done as part of the full readiness pass rather than in isolation.
Design, build, or review command-line interfaces using the Command Line Interface Guidelines from clig.dev. Use this skill whenever the user is creating a new CLI, adding commands/subcommands/flags, designing help text, choosing stdout/stderr/exit-code behavior, adding JSON or plain output modes, improving error messages, making destructive operations safer, or asking whether a CLI feels good, scriptable, discoverable, or Unix-friendly.
Collapse semantically overlapping notes, ideas, and project docs into clearer canonical surfaces while preserving distinct claims, decisions, examples, and source provenance.
Maintain canonical concept pages and surface recurring themes
Hygiene pass over active notes, ideas, and projects
| name | vault-ingest |
| description | Use when raw vault captures need classification, routing, relocation, and external-source synthesis from the source inbox into the right vault surfaces |
Categorize captures in raw/sources/, route owned/user-authored material to the
right vault directories, and synthesize tagged external sources into curated
notes while preserving complete source evidence.
Portent reference: ../references/portent-knowledge-base-spec.md.
--mode report|apply (default: report)
report: preview all planned operationsapply: execute confirmed operations--path PATH (optional): override default ./raw/sources input pathFor each ingestion cycle:
raw/sources/ (unprocessed inbox)captured,
organized, or archivedtypebelongs_to for primary context when one existsrelated_to for secondary associationsraw/sources/ and report it as a delete/ignore candidateexternal are browser-clipped or imported external sources and
should be synthesized during apply-mode processing unless the user explicitly
requests routing onlyraw/processed/YYYY-MM-DD/log.mdraw/processed/ is audited for empty folders and anomaliesPrefer the vault's existing directory taxonomy. Do not invent new top-level folders when an existing one fits.
| Source category | Destination pattern |
|---|---|
| Rough owned idea | ideas/fleeting/<idea>/ |
| Promising project idea | ideas/incubating/<idea>/ |
| Later/someday idea | ideas/someday/<idea>/ or the closest existing idea |
| Rejected/closed idea | ideas/rejected/<idea>/ |
| Active project material | projects/active/<project>/ |
| Durable conceptual note | notes/concepts/ only when it is itself canonical |
| General durable note | notes/<topic>/ or the closest existing note area |
external reference | Archive source in raw/processed/YYYY-MM-DD/; write synthesis to notes/<topic>/ |
| Asset or binary support | raw/assets/ or an existing asset folder |
| No clear durable home | Leave in raw/sources/ and report the ambiguity |
When an owned/user-authored source clearly belongs with an existing project, idea, or note, move it there even if the file is messy. Preserve the original content and filename unless a minimal rename is needed to avoid collision or clarify the source identity.
Prefer a single durable note or folder when multiple captures are clearly about the same thing. Merge only when the relationship is obvious: same project, same idea, same source, same canonical concept, or one file is a direct continuation of another.
report mode, propose merge target, evidence, confidence, and link
rewrites.apply mode, merge high-confidence captures into the existing durable
destination.Use raw/sources/ only for unclassified captures. If the user already
identifies the item as their own idea, route it to ideas/ directly:
ideas/fleeting/: quick idea, fragment, or unqualified possibilityideas/incubating/: idea with enough shape to revisit or developideas/someday/: intentionally parked ideaideas/rejected/: idea explicitly declined but worth retaining as historyExternal articles, discussions, docs, and market references captured with
Obsidian Note Clipper should carry an external tag. That tag tells ingestion
the note came from an outside source and should be synthesized by default while
preserving the complete clipped note.
X bookmark source records are captured by vault-x-bookmarks. If the task is to
delete irrelevant, minimal, or low-value bookmark captures from raw/sources/,
use vault-x-bookmarks prune mode instead of ingest. Ingest routes sources
worth keeping; it does not judge bookmark source value for deletion.
Recognize external in either common Obsidian form:
tags: [external], tags: external#externalDefault to moving or merging owned/user-authored sources intact. Default to
synthesizing tagged external sources during apply-mode processing. Synthesize
untagged sources only when the user explicitly asks to summarize/synthesize a
specific source.
Plain copy/move/merge is correct when:
Synthesis is correct when:
external tag from Obsidian Note Clipper or another external
capture pathWhen synthesis happens, first move the complete source under
raw/processed/YYYY-MM-DD/, then write the synthesis with links to those
archived source records. The synthesis should live in the most specific curated
destination, such as notes/<topic>/, projects/.../research/, or
ideas/.../research/. The archived complete source is the immutable citation
target.
raw/sources/ for unprocessed captures (skip hidden files)Project, Operation, Responsibility,
Task) or ENTP (Event, Note, Topic, Person)status: captured|organized|archivedbelongs_to candidaterelated_to candidatesprojects/, ideas/, notes/, and indexed Topic
objectsexternal tag and plan archive + synthesis by defaultraw/processed/YYYY-MM-DD/index.md when they belong in active navigationlog.mdraw/processed/YYYY-MM-DD/ for empty date foldersreport: preview plan only (no changes)apply: run full pipeline with confirmationraw/sources/ — only move them after successful
classificationraw/processed/ as immutable evidence — never delete processed source
filesraw/processed/YYYY-MM-DD/ firstexternal tag from archived source records--yesraw/sources/, raw/processed/, or
raw/assets/Return:
index.md additionslog.md entry appended