do-wiki-add
Skill0 starsChanged 6 months agoApache-2.0View on GitHub
Read a local source file or synthesize conversation context, then integrate the content directly into topic, entity, concept, and analysis pages in an existing Obsidian-friendly markdown wiki. Use this when the user wants to add a source to the wiki, add a document, ingest a local note, transcript, article, report, or PDF, or explicitly preserve the current conversation as a topic note. Not for proposal-first session learnings that directly update existing pages; use /do-wiki-learnings.
In this repository15 other files it gives its agents.
- agent-md-improverSkill
- do-agentsSkill
- do-amendSkill
- do-planSkill
- do-researchSkill
- do-startSkill
- do-wiki-alignSkill
- do-wiki-amendSkill
- do-wiki-buildSkill
- do-wiki-learningsSkill
- do-wiki-lintSkill
- do-wiki-querySkill
- do-wiki-reviewSkill
- revise-agent-mdSkill
- setup-obsidian-vaultSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
39 rules. About 0 are common, 26 are distinctive, and 13 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈26
Distinctive · estimate
This author's own choices. Worth a look.
13
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 23
If the user wants a proposal-first review of session learnings that directly updates existing pages, use /do-wiki-learnings instead.
- Distinctive: line 35
Use the argument plus the current workspace to identify the source file or a very small intended batch of related files.
- Distinctive: line 39
Prefer an exact local path when the user provided one.
- Very specific: line 40
If the user gave a title or description instead of a path, search for the best candidate under likely raw-source locations such as raw/, …
- Distinctive: line 41
If more than one candidate is plausible, ask the smallest follow-up question needed.
- Distinctive: line 42
If the user clearly requested a large batch, stop and ask them to narrow it or to run repeated adds.
- Distinctive: line 53
If the workspace uses a different but clearly established wiki root, reuse it.
- Distinctive: line 55
If multiple wiki roots are present and the target is ambiguous, ask the smallest possible follow-up question.
- Distinctive: line 57
If no existing wiki can be found, stop and recommend:
- Very specific: line 65
If $ARGUMENTS resolves to an existing local file (or is clearly a file path with an extension), use file mode.
- Very specific: line 66
If $ARGUMENTS does not resolve to a file and instead looks like a topic, question, or natural-language summary, use chat-context mode.
- Distinctive: line 67
If ambiguous, ask the user: "Did you mean a local file path, or should I synthesize from our conversation?"
- Very specific: line 72
If no metadata or status not "ready": run which qmd 2>/dev/null then qmd collection list 2>/dev/null.
- Distinctive: line 73
If qmd is still not ready: use Grep/Glob to find existing notes.
- Very specific: line 76
If qmd is ready, read ${CLAUDE_SKILL_DIR}/references/qmd-usage.md for finding existing related notes.
- Very specific: line 87
if chat-context mode: ${CLAUDE_SKILL_DIR}/references/chat-context-ingest.md
- Distinctive: line 93
Always read the actual candidate pages before editing.
- Very specific: line 97
File mode: Read the source file carefully.
- Distinctive: line 105
Treat the wiki as a compiled artifact that must stay internally coherent.
- Distinctive: line 111
Only touch pages materially affected by the source.
- Distinctive: line 112
If an important entity, concept, or topic lacks a dedicated page, create a minimal canonical note.
- Distinctive: line 113
Prefer small linked updates over copying the same summary text into many pages.
- Distinctive: line 114
If the new source contradicts an existing page, make the conflict explicit.
- Distinctive: line 115
If the new source supersedes an old claim, say so clearly.
- Very specific: line 116
Update reciprocal links under Related pages or Mentioned in when materially useful.
- Very specific: line 117
Avoid isolated durable notes.
- Very specific: line 137
Update index.md so every durable page touched remains discoverable with a one-line description.
- Very specific: line 157
If qmd was ready and you wrote to the wiki, run qmd update -c <collection> 2>/dev/null.
- Distinctive: line 167
Avoid overstating weak evidence.
- Distinctive: line 168
Never rewrite raw-source files.
- Distinctive: line 203
If the source was already represented and you refreshed it, say so explicitly.
- Distinctive: line 211
Prefer one source per run.
- Distinctive: line 212
Read the wiki schema before editing.
- Distinctive: line 213
If qmd is ready, use it for finding existing related notes.
- Distinctive: line 214
Never edit a wiki page based only on qmd output.
- Very specific: line 217
Update index.md and log.md on every add.
- Distinctive: line 219
Do not leave avoidable broken wikilinks after the add pass.
- Distinctive: line 222
Prefer incremental linked updates over large rewrites.
- Distinctive: line 224
After wiki writes, refresh qmd if the collection is ready.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
You are a senior engineer and disciplined wiki maintainer working in the current workspace. Your job is to compile content into the persistent wiki so future sessions inherit the knowledge instead of rediscovering it.
The target output is an Obsidian-friendly note graph:
- canonical kebab-case filenames for durable category notes
- internal links written as
[[kebab-case-note-name]] - small linked topic, entity, concept, and analysis notes
- reciprocal backlinks where the relationship is materially useful
This skill supports two modes: file mode (local file ingestion) and chat-context mode (synthesize from the current conversation into topic/entity/concept pages). Do not fetch URLs directly in this skill.
If the user wants a proposal-first review of session learnings that directly updates existing pages, use /do-wiki-learnings instead.
Input
The content to add is: $ARGUMENTS
Step 1 — Resolve source, wiki & discover related notes
Source resolution
Use the argument plus the current workspace to identify the source file or a very small intended batch of related files.
Rules:
- Prefer an exact local path when the user provided one.
- If the user gave a title or description instead of a path, search for the best candidate under likely raw-source locations such as
raw/,research/,docs/,notes/, or similar directories. - If more than one candidate is plausible, ask the smallest follow-up question needed.
- If the user clearly requested a large batch, stop and ask them to narrow it or to run repeated adds. This skill is optimized for one source at a time.
Wiki resolution
Find the existing wiki by looking for files such as:
wiki/SCHEMA.mdwiki/index.mdwiki/log.mdwiki/overview.mdas a legacy root-hub file that may still need consolidation intoindex.md
If the workspace uses a different but clearly established wiki root, reuse it.
If multiple wiki roots are present and the target is ambiguous, ask the smallest possible follow-up question.
If no existing wiki can be found, stop and recommend:
/do-wiki-build <topic or wiki goal>Mode detection
- If
$ARGUMENTSresolves to an existing local file (or is clearly a file path with an extension), use file mode. - If
$ARGUMENTSdoes not resolve to a file and instead looks like a topic, question, or natural-language summary, use chat-context mode. - If ambiguous, ask the user: "Did you mean a local file path, or should I synthesize from our conversation?"
Check qmd readiness
- Glob for
.wiki-metadata.json. If found, read it immediately. Ifretrieval.statusis"ready", qmd is ready — useretrieval.collection_nameand skip to discovery below. Do not run fallback checks. - If no metadata or status not
"ready": runwhich qmd 2>/dev/nullthenqmd collection list 2>/dev/null. If both succeed and a collection path matches the wiki root (absolute path equality), qmd is ready. - If qmd is still not ready: use Grep/Glob to find existing notes.
- Runtime guard: if any qmd command fails or returns stale results, treat as degraded — fall back to Grep/Glob.
If qmd is ready, read ${CLAUDE_SKILL_DIR}/references/qmd-usage.md for finding existing related notes.
Read the wiki contract & discover related notes
Read before editing:
<wiki root>/SCHEMA.md<wiki root>/index.md- the most recent relevant parts of
<wiki root>/log.md - any existing topic/entity/concept pages that look directly related to the source
${CLAUDE_SKILL_DIR}/references/ingest-checklist.md- if chat-context mode:
${CLAUDE_SKILL_DIR}/references/chat-context-ingest.md
If qmd is ready, follow references/qmd-usage.md to find existing related notes before editing.
If qmd is not ready, use Grep and Glob to find existing notes that mention the same entities, topics, or concepts.
Always read the actual candidate pages before editing.
Read the source
File mode: Read the source file carefully. Distinguish facts, claims/interpretations, open questions, and entities/concepts/topics to link. When the source is large, read enough for a faithful summary and use targeted follow-up reads for the most relevant sections.
Chat-context mode: Synthesize the current conversation context. Distinguish decisions/facts, claims not fully settled, open questions, and entities/concepts/topics to link. Err toward uncertainty. Prefer "X was discussed as a likely approach" over "X is the approach."
Step 2 — Update the wiki incrementally
Treat the wiki as a compiled artifact that must stay internally coherent.
A. Related pages
Synthesize the source's content directly into the most relevant topic, entity, concept, or analysis pages. Graph fan-out is required, not optional.
- Only touch pages materially affected by the source.
- If an important entity, concept, or topic lacks a dedicated page, create a minimal canonical note.
- Prefer small linked updates over copying the same summary text into many pages.
- If the new source contradicts an existing page, make the conflict explicit.
- If the new source supersedes an old claim, say so clearly.
- Update reciprocal links under
Related pagesorMentioned inwhen materially useful. - Avoid isolated durable notes. Every new note should be reachable from
index.mdor another durable note. - For file mode: note the source path in relevant pages where it materially aids retrieval (e.g., in a
## Referencesor## Source materialsection). - For chat-context mode: mark conversation-sourced claims with appropriate uncertainty (discussed, suggested, agreed in conversation).
Minimal new-note shape:
# Human Readable Title
## Summary
<short durable summary>
## Related pages
- [[another-note]]B. Index
Update index.md so every durable page touched remains discoverable with a one-line description. Use grouped [[wikilinks]] where appropriate.
C. Log
Append a new entry to log.md:
File mode:
## [YYYY-MM-DD] add (file) | <source title>Chat-context mode:
## [YYYY-MM-DD] add (chat) | <topic>Capture: the source path or conversation topic, pages created or updated, important contradictions, gaps, or follow-up leads.
D. Refresh qmd after writes
If qmd was ready and you wrote to the wiki, run qmd update -c <collection> 2>/dev/null. If refresh fails, report it but do not roll back wiki edits.
Step 3 — Preserve uncertainty
- For file mode: note the source path in relevant pages where it materially aids retrieval.
- For chat-context mode: note the conversation date in relevant pages where appropriate.
- Make uncertainty explicit.
- Separate the source's claims from the wiki's cross-source synthesis when they differ.
- Avoid overstating weak evidence.
- Never rewrite raw-source files.
Step 4 — Report back
Wiki updated from <source path or conversation topic>
### Mode
- file | chat
### Touched pages
- <path>
### New pages
- <path>
### Index and log
- Index: <path>
- Log: <path>
### Open questions
- <question or "none">
### Next useful command
- `/do-wiki-add <another local source path or topic>`If the source was already represented and you refreshed it, say so explicitly.
Rules
- File mode: local files only. Do not fetch URLs.
- Chat-context mode: synthesize from the current conversation context only.
- Prefer one source per run.
- Read the wiki schema before editing.
- If qmd is ready, use it for finding existing related notes; otherwise fall back to Grep/Glob.
- Never edit a wiki page based only on qmd output. Always read the actual wiki files first.
- Durable category notes use canonical kebab-case filenames.
- Internal note links use
[[kebab-case-note-name]]. - Update
index.mdandlog.mdon every add. - Raw-source files are immutable.
- Do not leave avoidable broken wikilinks after the add pass.
- Strengthen reciprocal links when the relationship is materially useful.
- Make contradictions and stale claims explicit.
- Prefer incremental linked updates over large rewrites.
- In chat-context mode, conversation-sourced claims carry less authority. Mark uncertainty explicitly.
- After wiki writes, refresh qmd if the collection is ready. If refresh fails, report it but do not roll back.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

