@jayjiang/byoao 1.1.2 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/__tests__/plugin-config.test.js +7 -10
  2. package/dist/__tests__/plugin-config.test.js.map +1 -1
  3. package/dist/assets/obsidian-skills/byoao-conventions.md +30 -54
  4. package/dist/assets/obsidian-skills/vault-thinking.md +6 -5
  5. package/dist/assets/presets/common/AGENTS.md.hbs +29 -46
  6. package/dist/assets/presets/common/SCHEMA.md.hbs +57 -0
  7. package/dist/assets/presets/common/Start Here.md.hbs +29 -40
  8. package/dist/assets/presets/minimal/preset.json +3 -3
  9. package/dist/assets/presets/pm-tpm/preset.json +2 -2
  10. package/{src/skills/ask.md → dist/assets/skills/ask/SKILL.md} +30 -27
  11. package/dist/assets/skills/ask.md +28 -27
  12. package/dist/assets/skills/challenge/SKILL.md +134 -0
  13. package/dist/assets/skills/challenge.md +79 -121
  14. package/dist/assets/skills/connect/SKILL.md +126 -0
  15. package/dist/assets/skills/connect.md +75 -163
  16. package/dist/assets/skills/cook/SKILL.md +170 -0
  17. package/dist/assets/skills/cook.md +167 -0
  18. package/dist/assets/skills/diagnose/SKILL.md +134 -0
  19. package/dist/assets/skills/diagnose.md +102 -43
  20. package/dist/assets/skills/drift/SKILL.md +123 -0
  21. package/dist/assets/skills/drift.md +64 -165
  22. package/dist/assets/skills/health/SKILL.md +65 -0
  23. package/dist/assets/skills/health.md +63 -0
  24. package/{src/skills/ideas.md → dist/assets/skills/ideas/SKILL.md} +11 -10
  25. package/dist/assets/skills/ideas.md +11 -10
  26. package/dist/assets/skills/organize/SKILL.md +109 -0
  27. package/dist/assets/skills/organize.md +56 -155
  28. package/dist/assets/skills/prep/SKILL.md +65 -0
  29. package/dist/assets/skills/prep.md +63 -0
  30. package/dist/assets/skills/trace/SKILL.md +143 -0
  31. package/dist/assets/skills/trace.md +75 -90
  32. package/dist/assets/skills/wiki/SKILL.md +127 -0
  33. package/dist/assets/skills/wiki.md +77 -178
  34. package/dist/cli/cli-program.js +18 -15
  35. package/dist/cli/cli-program.js.map +1 -1
  36. package/dist/cli/installer.js +54 -29
  37. package/dist/cli/installer.js.map +1 -1
  38. package/dist/hooks/idle-suggestions.js +4 -4
  39. package/dist/hooks/idle-suggestions.js.map +1 -1
  40. package/dist/hooks/system-transform.js +35 -1
  41. package/dist/hooks/system-transform.js.map +1 -1
  42. package/dist/index.js +455 -636
  43. package/dist/index.js.map +1 -1
  44. package/dist/plugin-config.js +6 -32
  45. package/dist/plugin-config.js.map +1 -1
  46. package/dist/tools/init-vault.js +8 -38
  47. package/dist/tools/init-vault.js.map +1 -1
  48. package/dist/tools/vault-doctor.js +1 -1
  49. package/dist/tools/vault-doctor.js.map +1 -1
  50. package/dist/tools/vault-status.js +1 -1
  51. package/dist/tools/vault-status.js.map +1 -1
  52. package/dist/vault/__tests__/create.test.js +48 -116
  53. package/dist/vault/__tests__/create.test.js.map +1 -1
  54. package/dist/vault/__tests__/doctor.test.js +14 -2
  55. package/dist/vault/__tests__/doctor.test.js.map +1 -1
  56. package/dist/vault/__tests__/manifest.test.js +2 -2
  57. package/dist/vault/__tests__/manifest.test.js.map +1 -1
  58. package/dist/vault/__tests__/status.test.js +12 -0
  59. package/dist/vault/__tests__/status.test.js.map +1 -1
  60. package/dist/vault/__tests__/upgrade.test.js +3 -3
  61. package/dist/vault/__tests__/upgrade.test.js.map +1 -1
  62. package/dist/vault/create.js +86 -196
  63. package/dist/vault/create.js.map +1 -1
  64. package/dist/vault/doctor.js +49 -0
  65. package/dist/vault/doctor.js.map +1 -1
  66. package/dist/vault/manifest.js +2 -2
  67. package/dist/vault/manifest.js.map +1 -1
  68. package/dist/vault/preset.js +10 -4
  69. package/dist/vault/preset.js.map +1 -1
  70. package/dist/vault/self-update.js +1 -1
  71. package/dist/vault/status.js +24 -0
  72. package/dist/vault/status.js.map +1 -1
  73. package/dist/vault/upgrade.js +165 -23
  74. package/dist/vault/upgrade.js.map +1 -1
  75. package/package.json +1 -1
  76. package/src/assets/obsidian-skills/byoao-conventions.md +9 -6
  77. package/src/assets/obsidian-skills/vault-thinking.md +6 -5
  78. package/src/assets/presets/common/AGENTS.md.hbs +23 -19
  79. package/src/assets/presets/common/SCHEMA.md.hbs +57 -0
  80. package/src/assets/presets/common/Start Here.md.hbs +29 -40
  81. package/src/assets/presets/minimal/preset.json +3 -3
  82. package/src/assets/presets/pm-tpm/preset.json +2 -2
  83. package/src/skills/ask/SKILL.md +135 -0
  84. package/src/skills/challenge/SKILL.md +134 -0
  85. package/src/skills/connect/SKILL.md +126 -0
  86. package/src/skills/cook/SKILL.md +170 -0
  87. package/src/skills/diagnose/SKILL.md +134 -0
  88. package/src/skills/drift/SKILL.md +123 -0
  89. package/src/skills/health/SKILL.md +65 -0
  90. package/src/skills/ideas/SKILL.md +173 -0
  91. package/src/skills/organize/SKILL.md +109 -0
  92. package/src/skills/prep/SKILL.md +65 -0
  93. package/src/skills/trace/SKILL.md +143 -0
  94. package/src/skills/wiki/SKILL.md +127 -0
  95. package/dist/assets/presets/common/Glossary.md.hbs +0 -16
  96. package/dist/assets/presets/common/obsidian/daily-notes.json +0 -5
  97. package/dist/assets/presets/common/obsidian/templates.json +0 -3
  98. package/dist/assets/presets/common/templates/Daily Note.md +0 -19
  99. package/dist/assets/presets/common/templates/Decision Record.md +0 -32
  100. package/dist/assets/presets/common/templates/Investigation.md +0 -34
  101. package/dist/assets/presets/common/templates/Meeting Notes.md +0 -25
  102. package/dist/assets/skills/emerge.md +0 -168
  103. package/dist/assets/skills/weave.md +0 -287
  104. package/dist/tools/add-glossary-term.js +0 -21
  105. package/dist/tools/add-glossary-term.js.map +0 -1
  106. package/dist/tools/add-person.js +0 -21
  107. package/dist/tools/add-person.js.map +0 -1
  108. package/dist/tools/add-project.js +0 -24
  109. package/dist/tools/add-project.js.map +0 -1
  110. package/dist/tools/graph-health.js +0 -25
  111. package/dist/tools/graph-health.js.map +0 -1
  112. package/dist/tools/note-read.js +0 -19
  113. package/dist/tools/note-read.js.map +0 -1
  114. package/dist/tools/search-vault.js +0 -22
  115. package/dist/tools/search-vault.js.map +0 -1
  116. package/dist/vault/__tests__/glossary.test.js +0 -68
  117. package/dist/vault/__tests__/glossary.test.js.map +0 -1
  118. package/dist/vault/__tests__/graph-health.test.js +0 -102
  119. package/dist/vault/__tests__/graph-health.test.js.map +0 -1
  120. package/dist/vault/__tests__/member.test.js +0 -85
  121. package/dist/vault/__tests__/member.test.js.map +0 -1
  122. package/dist/vault/__tests__/note-read.test.js +0 -71
  123. package/dist/vault/__tests__/note-read.test.js.map +0 -1
  124. package/dist/vault/__tests__/obsidian-cli.test.js +0 -108
  125. package/dist/vault/__tests__/obsidian-cli.test.js.map +0 -1
  126. package/dist/vault/__tests__/search-vault.test.js +0 -93
  127. package/dist/vault/__tests__/search-vault.test.js.map +0 -1
  128. package/dist/vault/glossary.js +0 -27
  129. package/dist/vault/glossary.js.map +0 -1
  130. package/dist/vault/graph-health.js +0 -83
  131. package/dist/vault/graph-health.js.map +0 -1
  132. package/dist/vault/member.js +0 -67
  133. package/dist/vault/member.js.map +0 -1
  134. package/dist/vault/note-read.js +0 -70
  135. package/dist/vault/note-read.js.map +0 -1
  136. package/dist/vault/project.js +0 -68
  137. package/dist/vault/project.js.map +0 -1
  138. package/dist/vault/retrieval-types.js +0 -5
  139. package/dist/vault/retrieval-types.js.map +0 -1
  140. package/dist/vault/search-vault.js +0 -87
  141. package/dist/vault/search-vault.js.map +0 -1
  142. package/src/assets/presets/common/obsidian/daily-notes.json +0 -5
  143. package/src/assets/presets/common/obsidian/templates.json +0 -3
  144. package/src/assets/presets/common/templates/Daily Note.md +0 -19
  145. package/src/assets/presets/common/templates/Decision Record.md +0 -32
  146. package/src/assets/presets/common/templates/Investigation.md +0 -34
  147. package/src/assets/presets/common/templates/Meeting Notes.md +0 -25
  148. package/src/skills/challenge.md +0 -174
  149. package/src/skills/connect.md +0 -213
  150. package/src/skills/diagnose.md +0 -72
  151. package/src/skills/drift.md +0 -223
  152. package/src/skills/emerge.md +0 -168
  153. package/src/skills/organize.md +0 -206
  154. package/src/skills/trace.md +0 -156
  155. package/src/skills/weave.md +0 -287
  156. package/src/skills/wiki.md +0 -227
@@ -11,21 +11,22 @@ This vault has BYOAO thinking commands available. Suggest them when they match t
11
11
 
12
12
  | Command | What it does | Suggest when |
13
13
  |---------|-------------|--------------|
14
- | `/weave` | Enrich notes with frontmatter, wikilinks, suggest permanent concept notes | User imports new files, asks to organize, or vault has many unlinked notes |
14
+ | `/cook` | Digest notes and sources into structured knowledge pages under `entities/`, `concepts/`, `comparisons/`, `queries/` | User imports new files, asks to organize raw notes, or wants the vault compiled into LLM Wiki pages |
15
+ | `/health` | Check knowledge-page health (orphans, stale content, contradictions among agent pages) | User wants a big-picture review of compiled knowledge, asks what's broken or outdated, or after heavy `/cook` activity |
15
16
  | `/trace topic` | Chronological timeline of how an idea evolved | User asks how something developed, wants history, or says "when did I start..." |
16
- | `/emerge` | Surface hidden patterns, clusters, contradictions across the vault | User asks "what am I missing", wants a big-picture review, or seems stuck |
17
17
  | `/connect A B` | Bridge two topics via the vault's link graph | User wonders if two areas are related, or wants cross-domain insight |
18
18
  | `/ideas` | Deep scan to generate actionable ideas from vault content | User asks "what should I work on", wants brainstorming, or needs next steps |
19
19
  | `/challenge topic` | Pressure-test a belief against the vault's own history | User is making a decision, says "am I wrong", or wants to validate an assumption |
20
20
  | `/drift` | Compare stated intentions vs actual behavior over 30-90 days | User asks about follow-through, wonders where time went, or reviews goals |
21
21
  | `/diagnose` | Vault health check — orphans, broken links, frontmatter gaps | User notices broken links, asks "what's wrong with my vault", or after heavy editing |
22
+
22
23
  ## When to Proactively Suggest
23
24
 
24
25
  - User is **reflecting on a topic** → suggest `/trace` to see how their thinking evolved
25
- - User is **brainstorming or feels stuck** → suggest `/emerge` or `/ideas`
26
+ - User is **brainstorming or feels stuck** → suggest `/ideas` or `/health` on compiled knowledge
26
27
  - User is **making a decision** → suggest `/challenge` to pressure-test it
27
28
  - User is **reviewing goals or progress** → suggest `/drift`
28
- - User **imported new notes** or mentions disorganization → suggest `/weave`
29
+ - User **imported new notes** or mentions disorganization → suggest `/cook`
29
30
  - User asks about **connections between topics** → suggest `/connect`
30
31
  - User mentions **broken links or vault messiness** → suggest `/diagnose`
31
32
 
@@ -35,6 +36,6 @@ Mention the command naturally in conversation. For example:
35
36
 
36
37
  - "You could run `/trace data-mesh` to see how that idea has evolved across your notes."
37
38
  - "If you want to pressure-test that assumption, `/challenge` can find counter-evidence in your vault."
38
- - "After importing those files, `/weave` can add frontmatter and link them to your existing notes."
39
+ - "After importing those files, `/cook` can distill them into linked knowledge pages under entities and concepts."
39
40
 
40
41
  Do not run these commands automatically — they read many vault files and can take several minutes. Always let the user decide when to invoke them.
@@ -1,25 +1,29 @@
1
1
  # AI Agent Guide
2
2
 
3
- ## 关于本知识库
4
- 这是一个基于 Zettelkasten 理念构建的个人知识库。知识通过原子化的笔记和双向链接形成网络。你可以保留自己的目录组织习惯,笔记之间的关联由 Agent 通过 `/weave` 自动维护。
3
+ ## About This Knowledge Base
4
+ This is an LLM Wiki knowledge base. Your notes are raw material — the Agent compiles them into structured knowledge pages via `/cook`. Both coexist in the same vault, connected through wikilinks.
5
5
 
6
- ## 从哪里开始
7
- 知识图谱:运行 `/wiki` 生成 `INDEX.base` 后,从这里探索知识库的结构。
6
+ ## Getting Started
7
+ Run `/wiki` to generate `INDEX.base`, then explore the knowledge structure from there.
8
8
 
9
- ## 笔记类型
10
- 每条笔记通过 frontmatter `note_type` 分为三类:
11
- - **fleeting** 原始摄入,待处理
12
- - **literature** — 对某来源的整理笔记
13
- - **permanent** — 原子概念笔记
9
+ ## Note Types
10
+ User notes: Your existing notes, kept in their original directories (Projects/, Daily/, etc.) — untouched.
11
+ Agent pages: Knowledge pages maintained by the Agent, located in `entities/`, `concepts/`, `comparisons/`, `queries/`.
14
12
 
15
- ## 操作规则
16
- **使用 Obsidian CLI 进行所有笔记操作**(`obsidian read`、`obsidian search`、`obsidian create` 等)。
17
- 不要用 bash(`cat`、`grep`、`find`、`sed` 等)直接处理笔记文件——Obsidian CLI 能正确维护 wikilink、frontmatter 和文件关系。
13
+ ## Operating Rules
14
+ **Use Obsidian CLI for all note operations** (`obsidian read`, `obsidian search`, `obsidian create`, etc.).
15
+ Do not use bash (`cat`, `grep`, `find`, `sed`, etc.) to manipulate note files directly — Obsidian CLI correctly maintains wikilinks, frontmatter, and file relationships.
18
16
 
19
- ## 可用能力
20
- - **/weave** — 编织新笔记:提取概念、建立 wikilink、生成 frontmatter
21
- - **/wiki** — 生成 INDEX.base 知识图谱索引
22
- - **/organize** — 按需重组目录结构
23
- - **/ask** — 对知识库进行开放式问答
24
- - **Thinking Tools** /trace、/emerge、/connect、/ideas、/challenge、/drift
25
- - **/diagnose** — 检查知识库健康状态,查看哪些笔记需要编织
17
+ ## Available Skills
18
+ - **/cook** — Digest notes and external sources, compile knowledge pages
19
+ - **/health** — Check knowledge page health (orphans, stale content, contradictions)
20
+ - **/prep** — Fix frontmatter and broken wikilinks
21
+ - **/wiki** — Generate INDEX.base knowledge map
22
+ - **/organize** — Reorganize directory structure as needed
23
+ - **/ask** — Open-ended Q&A against the knowledge base
24
+ - **Thinking Tools** — /trace, /connect, /ideas, /challenge, /drift
25
+ - **/diagnose** — Check overall vault health
26
+
27
+ {{#if ROLE_SECTION}}
28
+ ## {{ROLE_SECTION}}
29
+ {{/if}}
@@ -0,0 +1,57 @@
1
+ # SCHEMA.md
2
+
3
+ Knowledge taxonomy and conventions for [[{{KB_NAME}}]].
4
+
5
+ ## Knowledge Domains
6
+
7
+ {{#if WIKI_DOMAIN}}
8
+ {{WIKI_DOMAIN}}
9
+ {{else}}
10
+ Not yet defined. The Agent will populate this as it learns the domain.
11
+ {{/if}}
12
+
13
+ ## Tag Taxonomy
14
+
15
+ Tags follow these conventions:
16
+ - 2-5 tags per page, alphabetically sorted
17
+ - Tags should be singular (use `#project` not `#projects`)
18
+ - New tags should be added here first before use
19
+
20
+ ### Current Tags
21
+
22
+ No tags defined yet. The Agent will propose new tags as knowledge pages are created.
23
+
24
+ ## Domain Taxonomy
25
+
26
+ No domains defined yet. The Agent will propose domains as knowledge pages are created.
27
+
28
+ ## Agent Page Conventions
29
+
30
+ | Directory | Purpose |
31
+ |-----------|---------|
32
+ | `entities/` | Concrete, named things (people, organizations, products, systems) |
33
+ | `concepts/` | Abstract ideas (methods, rules, decisions, processes) |
34
+ | `comparisons/` | Side-by-side analyses of options |
35
+ | `queries/` | User-question-driven answers worth keeping |
36
+
37
+ ## Frontmatter Schema
38
+
39
+ See the /cook skill specification for the complete frontmatter schema. Key required fields:
40
+
41
+ - `title` — concise one-line summary
42
+ - `date` — primary temporal anchor (ISO 8601)
43
+ - `created` — page creation date
44
+ - `updated` — last content change date (bump on every edit)
45
+ - `type` — one of: entity, concept, comparison, query
46
+ - `tags` — 2-5 tags from this taxonomy, alphabetically sorted
47
+ - `sources` — relative paths to contributing notes
48
+
49
+ ## Page Thresholds
50
+
51
+ - Create a page when: entity/concept appears in 2+ notes OR is central subject of one note
52
+ - Split a page when: it exceeds ~200 lines
53
+ - Do NOT create pages for: passing mentions, minor details, out-of-domain topics
54
+
55
+ ## Custom Fields
56
+
57
+ No custom fields defined yet. The Agent documents new fields here when first used.
@@ -7,8 +7,8 @@ tags: [onboarding]
7
7
 
8
8
  # Welcome to {{KB_NAME}}
9
9
 
10
- Your personal knowledge base. Curate what matters, and let AI
11
- connect the dots into a knowledge graph.
10
+ Your LLM-powered knowledge base. Write notes freely, and let AI
11
+ compile them into structured, cross-referenced knowledge pages.
12
12
 
13
13
  ## Choose Your Path
14
14
 
@@ -25,58 +25,43 @@ you decide what belongs in your local knowledge base.
25
25
  and drop them into this vault folder.
26
26
  2. **Obsidian Web Clipper** — Install the browser extension to save
27
27
  any web page directly into your vault as a clean markdown note.
28
- 3. **Write summaries** — You don't need full copies. Create a local
29
- note that captures the key insights and link back to the source:
28
+ 3. **Write summaries** — Create a local note that captures key insights.
30
29
 
31
- ```yaml
32
- ---
33
- title: "Migration Plan Q2"
34
- source: "https://confluence.example.com/pages/12345"
35
- ---
36
- ```
37
-
38
- > The `source` property keeps the connection between your local note
39
- > and the cloud original. Add it whenever a note originates from an
40
- > external document.
41
-
42
- **Once you have a few notes → run `/weave`** (see below).
30
+ **Once you have a few notes → run `/cook`** (see below).
43
31
 
44
32
  ### Path B: I already have local notes
45
33
 
46
- If you have existing markdown files — whether organized or scattered:
34
+ If you have existing markdown files:
47
35
 
48
36
  1. **Drop them in** — Copy or move your files into this vault folder.
49
- (Or if you ran `byoao init --from`, they're already here.)
50
- 2. **Don't worry about structure** — Your files don't need frontmatter,
51
- wikilinks, or any particular organization yet.
37
+ 2. **Don't worry about structure** Your files don't need frontmatter
38
+ or any particular organization yet.
52
39
 
53
- **Run `/weave` now** — it will scan your notes, add frontmatter
54
- metadata (including dates from file timestamps), discover connections,
55
- and build your [[Glossary]] from frequently mentioned concepts.
40
+ **Run `/cook` now** — it will scan your notes, identify entities and
41
+ concepts, and compile them into structured knowledge pages.
56
42
 
57
43
  ### Path C: Starting fresh
58
44
 
59
45
  No existing notes? No problem.
60
46
 
61
47
  1. Press `Cmd+T` (Mac) or `Ctrl+T` (Windows) → choose "Daily Note".
62
- 2. Write what's on your mind today. Don't worry about structure.
63
- 3. After a few notes, run `/weave` to connect them.
48
+ 2. Write what's on your mind today.
49
+ 3. After a few notes, run `/cook` to compile them.
64
50
 
65
51
  ---
66
52
 
67
- ## /weave — Where the Magic Happens
68
-
69
- Open your AI agent and type `/weave`. It will:
53
+ ## /cook — Where the Magic Happens
70
54
 
71
- - **Add frontmatter** title, date, type, domain, tags
72
- - **Create wikilinks** — connect related notes automatically
73
- - **Build your Glossary** — extract key terms and concepts
74
- - **Suggest organization** — propose directory structure (with your approval)
55
+ Open your AI agent and type `/cook`. It will:
75
56
 
76
- Watch: scattered files become a connected knowledge graph.
57
+ - **Read your notes** from anywhere in the vault
58
+ - **Identify entities** — people, organizations, products, systems
59
+ - **Identify concepts** — methods, rules, decisions, processes
60
+ - **Create/update pages** — in `entities/`, `concepts/`, `comparisons/`, `queries/`
61
+ - **Flag contradictions** — when notes disagree
62
+ - **Report in plain language** — what changed, what needs your attention
77
63
 
78
- After weaving, press `Cmd+G` (Mac) or `Ctrl+G` (Windows) to see your
79
- knowledge visualized. Every node is a note, every line is a connection.
64
+ After cooking, press `Cmd+G` to open Graph View and see the connections.
80
65
 
81
66
  ---
82
67
 
@@ -97,15 +82,17 @@ knowledge visualized. Every node is a note, every line is a connection.
97
82
 
98
83
  | Command | What it does |
99
84
  |---------|-------------|
100
- | `/weave` | Connect your notes into a knowledge graph |
101
- | `/organize` | Reorganize vault directories using enriched metadata |
85
+ | `/cook` | Compile notes into structured knowledge pages |
86
+ | `/health` | Check knowledge page health |
87
+ | `/wiki` | Generate INDEX.base knowledge map |
88
+ | `/organize` | Reorganize vault directories |
89
+ | `/ask` | Open-ended Q&A against your knowledge |
102
90
  | `/trace` | Track how an idea evolved over time |
103
- | `/emerge` | Discover patterns you haven't noticed |
104
91
  | `/connect` | Bridge two seemingly unrelated topics |
105
92
  | `/ideas` | Generate actionable ideas from your vault |
106
93
  | `/challenge` | Pressure-test a belief against your own notes |
107
94
  | `/drift` | Compare intentions vs actions over time |
108
- | `/diagnose` | Check knowledge graph health |
95
+ | `/diagnose` | Check overall vault health |
109
96
 
110
97
  {{#if HAS_MCP_SERVICES}}
111
98
 
@@ -122,11 +109,13 @@ These services authenticate via your browser. If a connection expires,
122
109
  tell the agent: "reconnect to {service name}".
123
110
 
124
111
  {{/if}}
112
+
125
113
  ---
126
114
 
127
115
  ## Key Files
128
116
 
129
- - **[[Glossary]]** — Domain terms and key concepts
117
+ - **[[SCHEMA]]** — Tag taxonomy and knowledge conventions
118
+ - **[[log]]** — Agent activity log
130
119
  - **AGENTS.md** — How AI agents navigate this vault
131
120
 
132
121
  ---
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "minimal",
3
- "displayName": "Personal Knowledge Base",
4
- "description": "A minimal personal knowledge base just Daily notes, templates, and Glossary. Add structure as you go.",
3
+ "displayName": "Minimal",
4
+ "description": "Core LLM Wiki with no extra MCP servers or role-specific directories",
5
5
  "directories": [],
6
- "agentDescription": "Personal knowledge base. Notes are connected through wikilinks and frontmatter. Use /weave to discover and strengthen connections.",
6
+ "agentDescription": "LLM Wiki knowledge base. Use /cook to digest notes and external sources. Use /health to health-check.",
7
7
  "frontmatterExtras": {},
8
8
  "templates": [],
9
9
  "mcpServers": {},
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "pm-tpm",
3
3
  "displayName": "PM / TPM",
4
- "description": "Project tracking, sprint cycles, stakeholder management, data analysis",
4
+ "description": "Adds Atlassian + BigQuery MCP servers, project directories, and PM templates on top of the core LLM Wiki",
5
5
  "directories": ["Projects", "Sprints"],
6
- "agentDescription": "PM/TPM knowledge base",
6
+ "agentDescription": "LLM Wiki knowledge base with PM/TPM tooling. Use /cook to digest notes and external sources. Use /health to health-check. Atlassian and BigQuery are connected.",
7
7
  "frontmatterExtras": {
8
8
  "project": ["jira", "stakeholders", "priority"],
9
9
  "sprint": ["sprint-dates", "jira-board"]
@@ -0,0 +1,135 @@
1
+ ---
2
+ name: ask
3
+ description: >
4
+ Open-ended Q&A against the knowledge base. Agent reads INDEX.base for page discovery
5
+ and SCHEMA.md for tag taxonomy, navigates entities/, concepts/, comparisons/, and queries/,
6
+ synthesizes answers with citations. Use when the user asks questions about vault content
7
+ like "what is X", "why did we decide Y", "explain Z", "what do my notes say about",
8
+ "summarize what I know about", or any question that should be answered from accumulated
9
+ knowledge rather than general training data.
10
+ ---
11
+
12
+ # /ask — Knowledge Q&A
13
+
14
+ You are a knowledge assistant. Your job is to answer questions by navigating the vault's knowledge graph, reading relevant pages, and synthesizing evidence-based answers — always citing sources with wikilinks.
15
+
16
+ ## Prerequisites Check
17
+
18
+ **Before doing anything else**, verify Obsidian CLI is available:
19
+
20
+ ```bash
21
+ obsidian --version
22
+ ```
23
+
24
+ If this fails, STOP and display the Obsidian CLI availability message (see /prep).
25
+
26
+ ## Parameters
27
+
28
+ - **question** (required): The question to answer.
29
+ - **output** (optional): Save the answer as a note at this path.
30
+
31
+ ## Process
32
+
33
+ ### Step 1: Understand the Question
34
+
35
+ Identify the key concepts, entities, and intent in the user's question.
36
+
37
+ ### Step 2: Locate Relevant Pages
38
+
39
+ If `INDEX.base` exists, read it first for page discovery and the compiled knowledge map:
40
+
41
+ ```bash
42
+ obsidian read file="INDEX.base"
43
+ ```
44
+
45
+ Read `SCHEMA.md` when you need the tag taxonomy, domain rules, or agent directory conventions.
46
+
47
+ Then search for relevant pages:
48
+
49
+ ```bash
50
+ obsidian search "<key concept>"
51
+ ```
52
+
53
+ Search for each key concept mentioned in the question. Combine results across concepts.
54
+
55
+ ### Step 3: Read Relevant Pages
56
+
57
+ For each promising result, read the full content:
58
+
59
+ ```bash
60
+ obsidian read file="entities/some-page.md"
61
+ ```
62
+
63
+ Prioritize:
64
+ - Agent pages in `entities/`, `concepts/`, `comparisons/`, `queries/`
65
+ - Pages with matching tags or domain
66
+ - Pages with `status: reviewed` (over `draft`)
67
+ - Recent pages (higher `updated` date)
68
+
69
+ Also read user source notes when the question requires original context.
70
+
71
+ ### Step 4: Synthesize Answer
72
+
73
+ Combine evidence from all relevant pages into a clear, structured answer:
74
+
75
+ - **Direct answer first** — address the question directly
76
+ - **Supporting evidence** — cite specific pages with wikilinks and brief quotes
77
+ - **Context** — explain how the evidence connects
78
+ - **Uncertainties** — flag gaps where the vault doesn't have enough information
79
+
80
+ Every claim must be backed by at least one vault note. Do not use general knowledge to answer — ground everything in the vault.
81
+
82
+ ### Step 5: Present Answer
83
+
84
+ ```markdown
85
+ ## Answer
86
+
87
+ <Direct answer to the question>
88
+
89
+ ## Evidence
90
+
91
+ - **[[Page A]]**: "<relevant quote>"
92
+ - **[[Page B]]**: "<relevant quote>"
93
+ - **[[Page C]]**: "<relevant quote>"
94
+
95
+ ## Context
96
+
97
+ <Brief paragraph connecting the evidence and explaining the bigger picture>
98
+
99
+ ## Gaps
100
+
101
+ <What the vault doesn't cover that would help answer more completely>
102
+
103
+ ## Related Questions
104
+
105
+ - Consider exploring: "..."
106
+ - Run `/trace topic="X"` to see how this evolved
107
+ - Run `/connect from="A" to="B"` to understand the relationship
108
+ - If the vault lacks pages for key entities or concepts, run `/cook` to compile knowledge from source notes
109
+ ```
110
+
111
+ ### Step 6: Save (Optional)
112
+
113
+ At the end of your answer, ask:
114
+
115
+ > "Would you like me to save this as a note?"
116
+
117
+ If the user confirms, save the answer with frontmatter:
118
+
119
+ ```yaml
120
+ ---
121
+ title: "Answer: <topic>"
122
+ date: <today>
123
+ tags: [qa, <topic>]
124
+ ---
125
+ ```
126
+
127
+ Use `obsidian create` to save. Ask the user where they'd like it saved.
128
+
129
+ ## Key Principles
130
+
131
+ - **Evidence-based**: Every answer must cite vault notes. No general knowledge answers.
132
+ - **Direct first**: Answer the question before providing supporting detail.
133
+ - **Acknowledge gaps**: If the vault doesn't have enough information, say so.
134
+ - **Respect scope**: Only answer based on vault content, not external knowledge.
135
+ - **Save on request**: Always offer to save the answer as a note for future reference.
@@ -0,0 +1,134 @@
1
+ ---
2
+ name: challenge
3
+ description: >
4
+ Pressure-tests beliefs against vault evidence. Finds contradictions, position changes,
5
+ unstated assumptions, and weak points in arguments. Use when the user wants to question
6
+ a decision, test a hypothesis, find flaws in reasoning, play devil's advocate, or says
7
+ anything like "challenge this", "what's wrong with my thinking", "poke holes in this",
8
+ "are there contradictions", or "stress test this idea".
9
+ ---
10
+
11
+ # /challenge — Pressure Test
12
+
13
+ You are a respectful adversary. Your job is to find the weak points in a belief, decision, or argument — not to be destructive, but to strengthen the user's thinking by exposing vulnerabilities they may have missed.
14
+
15
+ ## Prerequisites Check
16
+
17
+ ```bash
18
+ obsidian --version
19
+ ```
20
+
21
+ If this fails, STOP and display the Obsidian CLI availability message (see /prep).
22
+
23
+ ## Parameters
24
+
25
+ - **claim** (required): The belief, decision, or argument to challenge.
26
+ - **scope** (optional): `all` (full vault) or a specific directory/page. Default: `all`.
27
+
28
+ ## Process
29
+
30
+ ### Step 1: Understand the Claim
31
+
32
+ Clarify what exactly is being challenged:
33
+ - What is the core assertion?
34
+ - What assumptions does it rest on?
35
+ - What would falsify it?
36
+
37
+ If the claim is ambiguous, ask the user to clarify before proceeding.
38
+
39
+ ### Step 2: Find Supporting Evidence
40
+
41
+ ```bash
42
+ obsidian search "<key terms from claim>"
43
+ ```
44
+
45
+ Read relevant notes and agent pages. Identify:
46
+ - Notes that explicitly support the claim
47
+ - Notes that provide indirect support (data, observations)
48
+ - The strength of each piece of evidence
49
+
50
+ ### Step 3: Find Contradicting Evidence
51
+
52
+ This is the core of /challenge. Search for:
53
+
54
+ 1. **Direct contradictions** — Notes that explicitly state the opposite
55
+ ```bash
56
+ obsidian search "not <term>" OR "instead of <term>" OR "changed from <term>"
57
+ ```
58
+
59
+ 2. **Implicit contradictions** — Notes that describe a situation incompatible with the claim
60
+ - Read pages with shared tags but different conclusions
61
+ - On related `entities/` and `concepts/` pages, check optional `contradictions` frontmatter (v2: YAML list of other agent page names documenting conflicting claims — see `/cook` Contradiction Handling)
62
+
63
+ 3. **Position changes over time** — Notes that show the user changed their mind
64
+ ```bash
65
+ obsidian search "actually" OR "turns out" OR "reconsidered" OR "reversed"
66
+ ```
67
+
68
+ 4. **Weasel words** — Notes that express uncertainty about aspects the claim treats as certain
69
+ - "might", "probably", "not sure", "need to verify"
70
+ - These indicate the claim is stronger than the evidence supports
71
+
72
+ ### Step 4: Identify Unstated Assumptions
73
+
74
+ For the claim to be true, what else must be true?
75
+
76
+ - Technical assumptions (about systems, tools, constraints)
77
+ - People assumptions (about availability, skills, priorities)
78
+ - Temporal assumptions (about deadlines, sequencing, stability)
79
+ - External assumptions (about market, users, dependencies)
80
+
81
+ Check if the vault evidence supports each assumption.
82
+
83
+ ### Step 5: Assess Evidence Strength
84
+
85
+ Rate the overall case:
86
+
87
+ | Strength | Meaning |
88
+ |----------|---------|
89
+ | Strong | Multiple independent sources agree, no contradictions |
90
+ | Moderate | Some support, minor gaps or contradictions |
91
+ | Weak | Limited evidence, significant contradictions or gaps |
92
+ | Unknown | Vault doesn't have enough information |
93
+
94
+ ### Step 6: Present the Challenge
95
+
96
+ ```markdown
97
+ # Challenge: "{claim}"
98
+
99
+ ## The Claim
100
+ {Restate the claim clearly}
101
+
102
+ ## What Rests On This
103
+ {What assumptions does the claim depend on?}
104
+ - {Assumption 1} — {supported / unsupported / contradicted}
105
+ - {Assumption 2} — {supported / unsupported / contradicted}
106
+
107
+ ## Supporting Evidence
108
+ - [[Note A]]: "{quote}"
109
+ - [[Note B]]: "{quote}"
110
+
111
+ ## Challenging Evidence
112
+ - ⚠ [[Note C]]: "{quote that contradicts or weakens the claim}"
113
+ - ⚠ [[Note D]]: "{quote showing uncertainty or alternative view}"
114
+
115
+ ## Position Changes Over Time
116
+ - {date}: [[Note E]] said X
117
+ - {date}: [[Note F]] said Y (contradicts X)
118
+
119
+ ## Weak Points
120
+ 1. **{Weak point}**: {why it's weak, which note shows it}
121
+ 2. **{Weak point}**: {why it's weak, which note shows it}
122
+
123
+ ## Overall Assessment
124
+ **Evidence strength**: {Strong / Moderate / Weak / Unknown}
125
+
126
+ {2-3 sentence summary: what the vault evidence suggests about this claim, what's uncertain, and what would strengthen or weaken the case further}
127
+ ```
128
+
129
+ ## Key Principles
130
+
131
+ - **Respectful opposition.** The goal is to strengthen thinking, not to tear it down. Frame challenges as "here's what to consider" not "you're wrong."
132
+ - **Evidence only.** Every challenge must cite specific vault notes. Don't invent external counterarguments.
133
+ - **Surface uncertainty.** If the vault shows doubt or hesitation about aspects the claim treats as certain, highlight this gap.
134
+ - **Obsidian is first workbench.** All note operations go through Obsidian CLI.