@creativeaitools/agent-wiki 2.0.0

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.
package/WIKI.md ADDED
@@ -0,0 +1,706 @@
1
+ # WIKI.md
2
+
3
+ Human-readable schema and editorial guide for Agent Wiki.
4
+ Spec version: v2
5
+ Last updated: 2026-05-02
6
+
7
+ ---
8
+
9
+ ## 1. What this wiki is
10
+
11
+ This wiki is a structured knowledge base designed to be useful for both humans and AI agents.
12
+
13
+ This file is the compact runtime schema and editorial guide for ordinary wiki operations. User agents should prefer this file for page schemas, status enums, ID formats, evidence rules, and common examples.
14
+
15
+ The full project and development contract lives in [[AGENT-WIKI-SPEC-v2]]. Use the full spec when changing project behavior, scripts, skills, configuration policy, validation behavior, or when this file is insufficient. If this file conflicts with the full spec, the full spec remains canonical until the conflict is resolved.
16
+
17
+ It separates:
18
+ - **things** from **ideas**
19
+ - **claims** from **evidence**
20
+ - **sources** from **summaries**
21
+ - **facts** from **interpretations**
22
+ - **human-edited content** from **compiled/generated artifacts**
23
+ - **page structure** from **compiled machine caches**
24
+
25
+ ---
26
+
27
+ ## 1.1 Documentation layers
28
+
29
+ | File | Use |
30
+ |---|---|
31
+ | [[AGENTS]] | Agent behavior contract: preservation, logging, linking, generated files, and editing boundaries |
32
+ | [[WIKI#4.1 Common runtime schemas]] | Compact runtime schema and editorial reference for ordinary vault work |
33
+ | [[INBOX]] | Short pointer to inbox rules and the `process-inbox` skill |
34
+ | [[ONBOARD]] | First-run setup and local environment workflow |
35
+ | [[AGENT-WIKI-SPEC-v2]] | Full project/development contract and detailed implementation reference |
36
+
37
+ Agents should load the smallest document that answers the task. Routine source import, inbox processing, extraction, overview, and compile work should not require loading the full spec unless there is ambiguity.
38
+
39
+ ---
40
+
41
+ ## 2. Folder meanings
42
+
43
+ Current vault structure:
44
+
45
+ ```text
46
+ <vault>/
47
+ AGENTS.md
48
+ AGENT-WIKI-SPEC-v2.md
49
+ INBOX.md
50
+ ONBOARD.md
51
+ README.md
52
+ WIKI.md
53
+ index.md
54
+ overview.md
55
+
56
+ sources/
57
+ parts/
58
+ entities/
59
+ concepts/
60
+ claims/
61
+ syntheses/
62
+ questions/
63
+ reports/
64
+ skills/
65
+
66
+ _inbox/
67
+ raw/
68
+ _attachments/
69
+ _archive/
70
+ _system/
71
+ config.example.json
72
+ cache/
73
+ indexes/
74
+ logs/
75
+ ```
76
+
77
+ Fresh template checkouts may omit empty content and runtime folders. Initialization, import, and compile workflows create missing folders as needed.
78
+
79
+ | Folder | What goes here |
80
+ |---|---|
81
+ | `sources/` | Canonical source pages: webpages, PDFs, articles, transcripts, meeting notes, datasets |
82
+ | `sources/parts/` | Source part pages for large partitioned sources |
83
+ | `entities/` | Durable things: people, orgs, projects, products, systems, places, events, artifacts |
84
+ | `concepts/` | Abstract ideas and reusable instructions: definitions, methods, frameworks, workflows, runbooks, checklists |
85
+ | `claims/` | Standalone claim pages: individual atomic propositions with their own evidence and provenance |
86
+ | `syntheses/` | Maintained cross-source interpretations: overviews, analyses, comparisons, briefs, timelines |
87
+ | `questions/` | Unresolved uncertainties and research gaps |
88
+ | `reports/` | Generated maintenance views and dashboards |
89
+ | `skills/` | Agent skill definitions and supporting skill files |
90
+ | `_attachments/` | Attachments referenced by source or other pages (created on init, may be empty) |
91
+ | `_archive/` | Archived content no longer actively maintained (created on init, may be empty) |
92
+ | `_system/` | Machine-generated runtime and compile artifacts (do not hand-edit) |
93
+ | `_inbox/` | Raw intake queue for unprocessed items |
94
+ | `raw/` | Retained original raw files after inbox promotion |
95
+
96
+ Workspace-mode wikis use the same internal structure, but the wiki root is usually `workspace/wiki`. Source candidates can live outside the wiki directory and be discovered by the CLI, while deliberate captures can still land in the wiki's `_inbox/`. They become canonical evidence only after an agent creates `source` pages inside `wiki/sources/`.
97
+
98
+ `_system/config.json` is optional local operational configuration for tool policy and command preferences. It is not canonical vault knowledge, should not contain secrets, and should not be committed. `_system/config.example.json` is the tracked example shape. Optional `knownVaults` entries may map Obsidian vault names to absolute local paths so agents can resolve `obsidian://` cross-vault references for reading only.
99
+
100
+ Use `agent-wiki onboard --check --wiki-root PATH` for deterministic first-run onboarding and local setup probes. The command emits structured JSON for automation. Use `agent-wiki onboard --check --questions --wiki-root PATH` when an agent needs compact multiple-choice setup prompts for the user. Use `agent-wiki onboard --write-config` only after the user approves the exact local setup choices to persist.
101
+
102
+ Use `agent-wiki create-page` to scaffold new canonical pages from caller-supplied metadata and body content. It supports `source`, `entity`, `concept`, `claim`, `question`, and `synthesis` pages, including whole source pages, large-source parent manifests, source part pages, caller-supplied claim evidence records, and synthesis scope. It validates required frontmatter, IDs, filenames, duplicate IDs, target paths, subtype/status enums, required body content, supplied evidence shape, and required synthesis scope. It covers required schema fields, but does not automatically fill every optional recommended field such as `owner`, `summary`, `freshness`, or page-level `confidence`.
103
+
104
+ Each wiki root remains a single Agent Wiki. In vault mode, the repository or selected root is the wiki root. In workspace mode, the wiki root is usually `workspace/wiki`. The CLI may track multiple local Agent Wiki roots through the machine-local registry at `~/.config/agent-wiki/registry.json`. Registry entries are named Agent Wiki roots and can be selected with `agent-wiki --wiki NAME <command>`. The registry is local operator state, not canonical wiki knowledge, and should not be stored inside a wiki.
105
+
106
+ Use `agent-wiki list` to list registered wikis and paths. Use `agent-wiki check --all` for a light read-only registry health check across all registered wikis. Use `agent-wiki check --all --full` when compile and index validation should also run. Obsidian setup is optional and means opening the wiki root as an Obsidian vault; it does not change where skills or scripts write content. `knownVaults` does not create alternate write roots.
107
+
108
+ Use `agent-wiki schedule prompt process-inbox`, `agent-wiki schedule prompt extract-primitives`, and `agent-wiki schedule prompt update-overview` to print scheduled-agent prompts from the registry. These prompts are meant for external scheduled-task harnesses and remain skill-based; the CLI does not execute those workflows. By default they target all registered wikis. Pass wiki names or `--wiki NAME` to target a subset. Scheduled agents should log failures for one wiki and continue to the next.
109
+
110
+ ---
111
+
112
+ ## 3. Page types
113
+
114
+ Every authored page has a `pageType` in its frontmatter.
115
+
116
+ | `pageType` | Folder | Purpose |
117
+ | ----------- | ------------- | ------------------------------------- |
118
+ | `source` | `sources/` | Information origin |
119
+ | `entity` | `entities/` | Durable thing |
120
+ | `concept` | `concepts/` | Abstract idea, definition, or reusable instruction |
121
+ | `claim` | `claims/` | Standalone atomic proposition |
122
+ | `synthesis` | `syntheses/` | Cross-source rollup or interpretation |
123
+ | `question` | `questions/` | Open question or research gap |
124
+ | `report` | `reports/` | Generated view or dashboard |
125
+ | `index` | `index.md` | Deterministic root page catalog |
126
+ | `overview` | `overview.md` | Human-facing vault landing page |
127
+
128
+ ---
129
+
130
+ ## 4. Required frontmatter
131
+
132
+ Every authored page (except purely generated reports and the generated root catalog) should include:
133
+
134
+ ```yaml
135
+ id: <pageType>.<primitiveSubtype>.<slug>
136
+ pageType: <pageType>
137
+ title: <title>
138
+ status: <status>
139
+ createdAt: YYYY-MM-DD
140
+ updatedAt: YYYY-MM-DD
141
+ aliases: []
142
+ tags: []
143
+ ```
144
+
145
+ Recommended additional fields:
146
+
147
+ ```yaml
148
+ canonicalName: <canonicalName>
149
+ owner:
150
+ summary:
151
+ sourcePages: []
152
+ relatedPages: []
153
+ confidence:
154
+ freshness:
155
+ ```
156
+
157
+ ---
158
+
159
+ ## 4.1 Common runtime schemas
160
+
161
+ These compact templates cover routine agent work. Omit optional fields only when they do not apply or cannot be inferred without guessing.
162
+
163
+ ### Source
164
+
165
+ ```yaml
166
+ id: source.<yyyy-mm-dd>.<sourceType>.<sourceSlug>
167
+ pageType: source
168
+ title: <title>
169
+ status: unprocessed
170
+ sourceType: <sourceType>
171
+ sourceRole: whole
172
+ originUrl:
173
+ originPath:
174
+ publishedAt:
175
+ retrievedAt: YYYY-MM-DD
176
+ createdAt: YYYY-MM-DD
177
+ updatedAt: YYYY-MM-DD
178
+ aliases: []
179
+ tags: []
180
+ attachments: []
181
+ ```
182
+
183
+ For large sources, use a short parent source and child part pages:
184
+
185
+ ```yaml
186
+ id: source.<yyyy-mm-dd>.<sourceType>.<sourceSlug>
187
+ pageType: source
188
+ title: <title>
189
+ status: partitioned
190
+ sourceType: <sourceType>
191
+ sourceRole: parent
192
+ sourceParts:
193
+ - sources/parts/<yyyy-mm-dd>-<sourceType>-<sourceSlug>-part001.md
194
+ originUrl:
195
+ originPath:
196
+ createdAt: YYYY-MM-DD
197
+ updatedAt: YYYY-MM-DD
198
+ aliases: []
199
+ tags: []
200
+ ```
201
+
202
+ ```yaml
203
+ id: source.<yyyy-mm-dd>.<sourceType>.<sourceSlug>.part001
204
+ pageType: source
205
+ title: <title> - Part 1
206
+ status: unprocessed
207
+ sourceType: <sourceType>
208
+ sourceRole: part
209
+ parentSourceId: source.<yyyy-mm-dd>.<sourceType>.<sourceSlug>
210
+ partIndex: 1
211
+ partCount: <count>
212
+ locator: <page range, heading path, timestamp range, slide range, or section range>
213
+ originUrl:
214
+ originPath:
215
+ createdAt: YYYY-MM-DD
216
+ updatedAt: YYYY-MM-DD
217
+ aliases: []
218
+ tags: []
219
+ ```
220
+
221
+ When conversion produced the Markdown source body, add available provenance:
222
+
223
+ ```yaml
224
+ convertedAt: YYYY-MM-DD
225
+ conversionTool: <tool>
226
+ conversionToolVersion: <version>
227
+ conversionBackend: <backend>
228
+ conversionWarnings: []
229
+ ```
230
+
231
+ ### Entity
232
+
233
+ ```yaml
234
+ id: entity.<entityType>.<entitySlug>
235
+ pageType: entity
236
+ title: <title>
237
+ entityType: <entityType>
238
+ canonicalName: <canonicalName>
239
+ status: active
240
+ createdAt: YYYY-MM-DD
241
+ updatedAt: YYYY-MM-DD
242
+ aliases: []
243
+ tags: []
244
+ ```
245
+
246
+ Add a substantive Markdown body after the frontmatter. Describe the entity, why it matters in the vault, important aliases or identifiers, and known uncertainty.
247
+
248
+ ### Concept
249
+
250
+ ```yaml
251
+ id: concept.<conceptType>.<conceptSlug>
252
+ pageType: concept
253
+ title: <title>
254
+ conceptType: <conceptType>
255
+ status: active
256
+ createdAt: YYYY-MM-DD
257
+ updatedAt: YYYY-MM-DD
258
+ aliases: []
259
+ tags: []
260
+ ```
261
+
262
+ Add a substantive Markdown body after the frontmatter. Explain the concept, its boundaries, source-grounded examples or steps, and important distinctions.
263
+
264
+ ### Claim Page
265
+
266
+ ```yaml
267
+ id: claim.<claimType>.<claimSlug>
268
+ pageType: claim
269
+ title: <title>
270
+ claimType: <claimType>
271
+ status: unverified
272
+ confidence: 0.60
273
+ text: <one atomic proposition>
274
+ subjectPageId:
275
+ sourceIds: []
276
+ evidence: []
277
+ createdAt: YYYY-MM-DD
278
+ updatedAt: YYYY-MM-DD
279
+ aliases: []
280
+ tags: []
281
+ ```
282
+
283
+ Add a substantive Markdown body after the frontmatter. Restate the atomic proposition in prose, summarize the evidence posture, and note caveats or uncertainty.
284
+
285
+ ### Synthesis
286
+
287
+ ```yaml
288
+ id: synthesis.<synthesisType>.<synthesisSlug>
289
+ pageType: synthesis
290
+ title: <title>
291
+ synthesisType: <synthesisType>
292
+ scope: <scope>
293
+ status: active
294
+ sourcePages: []
295
+ derivedClaims: []
296
+ createdAt: YYYY-MM-DD
297
+ updatedAt: YYYY-MM-DD
298
+ aliases: []
299
+ tags: []
300
+ ```
301
+
302
+ Add a substantive Markdown body after the frontmatter. Provide maintained narrative interpretation, scope, source basis, current conclusions, and open tensions.
303
+
304
+ Create synthesis pages when the user needs durable cross-source interpretation, such as a summary, overview, analysis, timeline, brief, or comparison. Do not use synthesis pages for a single atomic proposition, raw captured material, unresolved questions, deterministic reports, or whole-vault landing prose. List source basis in `sourcePages` when sources are used, list tracked claim dependencies in `derivedClaims` when claim pages are used, and preserve uncertainty or contradictions in the body prose.
305
+
306
+ ### Embedded Claim
307
+
308
+ ```yaml
309
+ claims:
310
+ - id: claim.<claimType>.<claimSlug>
311
+ text: <one atomic proposition>
312
+ status: unverified
313
+ confidence: 0.60
314
+ claimType: <claimType>
315
+ relatedClaimIds: []
316
+ evidence: []
317
+ createdAt: YYYY-MM-DD
318
+ updatedAt: YYYY-MM-DD
319
+ ```
320
+
321
+ ### Evidence Entry
322
+
323
+ ```yaml
324
+ evidence:
325
+ - id: evidence.<kind>.<relation>.<stable-suffix>
326
+ sourceId: source.<yyyy-mm-dd>.<sourceType>.<sourceSlug>
327
+ path: sources/<source-file>.md
328
+ lines:
329
+ kind: quote
330
+ relation: context_only
331
+ weight: 0.60
332
+ note:
333
+ excerpt:
334
+ retrievedAt: YYYY-MM-DD
335
+ updatedAt: YYYY-MM-DD
336
+ ```
337
+
338
+ ### Question
339
+
340
+ ```yaml
341
+ id: question.<domain>.<questionSlug>
342
+ pageType: question
343
+ title: <question>
344
+ priority: medium
345
+ status: open
346
+ relatedClaims: []
347
+ relatedPages: []
348
+ openedAt: YYYY-MM-DD
349
+ createdAt: YYYY-MM-DD
350
+ updatedAt: YYYY-MM-DD
351
+ aliases: []
352
+ tags: []
353
+ ```
354
+
355
+ Add a substantive Markdown body after the frontmatter. Explain why the question exists, what is already known, what remains unresolved, and what would count as resolution.
356
+
357
+ ### Relation
358
+
359
+ ```yaml
360
+ relations:
361
+ - subject: <subject-id>
362
+ predicate: <predicate>
363
+ object: <object-id>
364
+ confidence: 0.60
365
+ sourceClaimIds: []
366
+ ```
367
+
368
+ ### Overview
369
+
370
+ ```yaml
371
+ id: meta.overview
372
+ pageType: overview
373
+ title: Vault Overview
374
+ status: active
375
+ createdAt: YYYY-MM-DD
376
+ updatedAt: YYYY-MM-DD
377
+ aliases: []
378
+ tags: []
379
+ ```
380
+
381
+ ---
382
+
383
+ ## 4.2 Authored page bodies
384
+
385
+ New `entity`, `concept`, `claim`, `question`, and `synthesis` pages must include a substantive Markdown body after frontmatter.
386
+
387
+ The body should be detailed, human-facing prose that explains what the page represents, why it matters, and how the structured fields should be understood. It should not be a placeholder, a one-line restatement of the title, or only a machine-readable metadata dump.
388
+
389
+ Agents should use `agent-wiki create-page` for new page files when a skill creates canonical `source`, `entity`, `concept`, `claim`, `question`, or `synthesis` pages. The script is a scaffolder only; the calling skill or agent remains responsible for the actual source capture, body prose, evidence judgment, relationships, source partitioning decisions, synthesis judgment, and optional fields that require judgment. For claim pages, pass already-selected evidence to the scaffolder so it can render spec-shaped block YAML. For synthesis pages, pass an explicit `--scope` and any known `--source-page` or `--derived-claim` values.
390
+
391
+ Agents must preserve existing human-authored body prose unless the operator explicitly asks for a rewrite.
392
+
393
+ ## 5. Status vocabularies
394
+
395
+ ### General page status
396
+
397
+ | Status | Meaning |
398
+ |---|---|
399
+ | `active` | Maintained page |
400
+ | `draft` | Incomplete page |
401
+ | `archived` | No longer maintained |
402
+ | `deprecated` | Superseded or no longer valid |
403
+
404
+ ### Source status
405
+
406
+ | Status | Meaning |
407
+ |---|---|
408
+ | `unprocessed` | Captured as a source page, not yet extracted into knowledge primitives |
409
+ | `partitioned` | Parent source has child source parts that still need extraction |
410
+ | `processed` | Extraction completed |
411
+ | `archived` | Retained but inactive |
412
+
413
+ ### Question status
414
+
415
+ | Status | Meaning |
416
+ |---|---|
417
+ | `open` | Unresolved, actively tracked |
418
+ | `researching` | Actively being investigated |
419
+ | `blocked` | Cannot proceed without external input |
420
+ | `resolved` | Answer found and recorded |
421
+ | `dropped` | No longer relevant or pursued |
422
+
423
+
424
+ ---
425
+
426
+ ## 6. Claim rules
427
+
428
+ Claims are first-class records that can be evaluated, tracked, and compiled.
429
+
430
+ A claim should express **one proposition**, not several glued together.
431
+
432
+ ### Claim status
433
+
434
+ | Status | Meaning |
435
+ |---|---|
436
+ | `supported` | Has strong, direct evidence |
437
+ | `weakly_supported` | Has some evidence but not strong |
438
+ | `inferred` | Derived logically, not directly evidenced |
439
+ | `unverified` | Not yet checked against sources |
440
+ | `contested` | Active disagreement exists |
441
+ | `contradicted` | Evidence directly contradicts it |
442
+ | `deprecated` | No longer applicable |
443
+
444
+ ### Confidence
445
+
446
+ `confidence` is a float from `0.0` to `1.0`.
447
+
448
+ | Range | Meaning |
449
+ |---|---|
450
+ | `0.0 – 0.49` | Low confidence — should appear in low-confidence reports |
451
+ | `0.50 – 0.74` | Moderate confidence |
452
+ | `0.75 – 0.89` | High confidence |
453
+ | `0.90 – 1.0` | Very high confidence |
454
+
455
+ ### Claim types
456
+
457
+ | Type | Meaning |
458
+ |---|---|
459
+ | `descriptive` | What something is or does |
460
+ | `historical` | What happened at a point in time |
461
+ | `causal` | Why something happened |
462
+ | `interpretive` | What something means |
463
+ | `normative` | What should be done |
464
+ | `forecast` | What is expected to happen |
465
+
466
+ ---
467
+
468
+ ## 7. Evidence rules
469
+
470
+ Evidence attaches provenance and support semantics to a claim.
471
+
472
+ ### Evidence kinds
473
+
474
+ | Kind | Meaning |
475
+ |---|---|
476
+ | `quote` | Direct quotation from a source |
477
+ | `summary` | Summarized content from a source |
478
+ | `measurement` | Quantitative data point |
479
+ | `observation` | Direct observation record |
480
+ | `screenshot` | Visual capture |
481
+ | `transcript` | Spoken record |
482
+ | `inference` | Derived from other evidence |
483
+
484
+ ### Evidence relations
485
+
486
+ | Relation | Meaning |
487
+ |---|---|
488
+ | `supports` | Strengthens the claim |
489
+ | `weakens` | Reduces confidence in the claim |
490
+ | `contradicts` | Directly conflicts with the claim |
491
+ | `context_only` | Provides context but not direct support |
492
+
493
+ `context_only` evidence is NOT counted as support during compile scoring.
494
+
495
+ ---
496
+
497
+ ## 8. Relationship predicates
498
+
499
+ The v2 controlled predicate set:
500
+
501
+ | Predicate | Meaning |
502
+ |---|---|
503
+ | `is_a` | Type relationship |
504
+ | `part_of` | Composition |
505
+ | `depends_on` | Dependency |
506
+ | `uses` | Usage relationship |
507
+ | `produces` | Output relationship |
508
+ | `founded_by` | Founding relationship |
509
+ | `owned_by` | Ownership |
510
+ | `located_in` | Location |
511
+ | `related_to` | General association |
512
+ | `supports` | Supports another object |
513
+ | `contradicts` | Conflicts with another object |
514
+ | `mentions` | References without strong relation |
515
+ | `applies_to` | Scope or applicability |
516
+ | `derived_from` | Derived or based on |
517
+
518
+ ---
519
+
520
+ ## 9. Generated content
521
+
522
+ Generated structured knowledge should live in frontmatter fields, claim/evidence/relation records, cache files, indexes, reports, or the deterministic root `index.md` catalog.
523
+
524
+ Agents should preserve human-authored page prose unless explicitly asked to rewrite it. Page body prose is ordinary markdown.
525
+
526
+ `index.md` is generated as the root page catalog. Do not place durable manual prose there; use root documentation files such as [[overview]], [[README]], [[WIKI#1.1 Documentation layers]], [[ONBOARD]], or [[AGENTS]] instead.
527
+
528
+ `overview.md` is durable AI-maintained orientation prose. It should summarize the vault for a human reader, but it is not primary evidence and should not replace canonical source, claim, evidence, or page metadata records.
529
+
530
+ ---
531
+
532
+ ## 10. Compile outputs
533
+
534
+ The compile pipeline reads the vault, emits machine-readable caches to `_system/cache/`, and regenerates the root `index.md` page catalog.
535
+
536
+ Run with:
537
+
538
+ ```bash
539
+ agent-wiki compile
540
+ ```
541
+
542
+ Required outputs:
543
+ - `pages.json` — normalized page index
544
+ - `claims.jsonl` — all extracted claims
545
+ - `relations.jsonl` — all extracted relations
546
+ - `agent-digest.json` — high-signal agent context
547
+
548
+ Recommended outputs:
549
+ - `contradictions.json`, `questions.json`
550
+ - `timeline-events.json`, `source-index.json`
551
+
552
+ Catalog output:
553
+ - `index.md` — deterministic root-level page catalog rendered from `_system/cache/pages.json`
554
+
555
+ ---
556
+
557
+ ## 11. Reports
558
+
559
+ Reports in `reports/` are generated views. They are NOT authoritative.
560
+
561
+ | Report | Purpose |
562
+ |---|---|
563
+ | `open-questions.md` | All open question pages |
564
+ | `contradictions.md` | Tracked claim conflicts |
565
+ | `low-confidence.md` | Claims with confidence below 0.50 |
566
+ | `claim-health.md` | Evidence gap and staleness overview |
567
+ | `stale-pages.md` | Pages not updated recently |
568
+
569
+ Do not treat reports as primary data — they derive from page frontmatter and caches.
570
+
571
+ ---
572
+
573
+ ## 12. Source types
574
+
575
+ | Type | Meaning |
576
+ |---|---|
577
+ | `webpage` | Web page |
578
+ | `article` | Published article |
579
+ | `document` | Generic long-form document |
580
+ | `pdf` | PDF document |
581
+ | `transcript` | Conversation or meeting transcript |
582
+ | `email` | Email thread |
583
+ | `meeting-notes` | Meeting notes |
584
+ | `dataset` | Structured data |
585
+ | `screenshot` | Visual capture |
586
+ | `bridge` | Bridge page pointing to an external source |
587
+ | `import` | Raw imported file |
588
+ | `other` | Other source type |
589
+
590
+ ---
591
+
592
+ ## 12.1 Entity and concept types
593
+
594
+ ### Entity types
595
+
596
+ | Type | Meaning |
597
+ |---|---|
598
+ | `person` | Person |
599
+ | `organization` | Organization |
600
+ | `project` | Project |
601
+ | `product` | Product |
602
+ | `system` | System |
603
+ | `place` | Place |
604
+ | `event` | Event |
605
+ | `artifact` | Artifact |
606
+ | `document` | Document as a thing |
607
+ | `other` | Other entity |
608
+
609
+ ### Concept types
610
+
611
+ | Type | Meaning |
612
+ |---|---|
613
+ | `definition` | Definition |
614
+ | `principle` | Principle |
615
+ | `framework` | Framework |
616
+ | `method` | Method |
617
+ | `policy` | Policy |
618
+ | `standard` | Standard |
619
+ | `pattern` | Pattern |
620
+ | `workflow` | Workflow |
621
+ | `runbook` | Runbook |
622
+ | `checklist` | Checklist |
623
+ | `playbook` | Playbook |
624
+ | `theory` | Theory |
625
+ | `taxonomy` | Taxonomy |
626
+ | `other` | Other concept |
627
+
628
+ ---
629
+
630
+ ## 13. Large sources
631
+
632
+ Large sources should not become one giant markdown file when that would make extraction or evidence citation unreliable.
633
+
634
+ For long documents, transcripts, or captures, use:
635
+
636
+ - a short parent source page in `sources/`
637
+ - source part pages in `sources/parts/`
638
+ - a retained original file in `raw/` when the material came through `_inbox/`
639
+
640
+ The parent source is the document-level record and manifest. It should use `sourceRole: parent`, usually `status: partitioned`, and an ordered `sourceParts` list. The parent body should stay short.
641
+
642
+ Each source part is a canonical source page for a bounded segment. It should use `sourceRole: part`, `parentSourceId`, `partIndex`, `partCount`, and a stable `locator` such as a page range, section path, timestamp range, or slide range.
643
+
644
+ Extraction should run against source parts, not the parent source page. Evidence should cite the most specific source part and locator available.
645
+
646
+ ---
647
+
648
+ ## 14. Inbox intake strategy
649
+
650
+ The `_inbox/` folder is the raw item intake queue. New unprocessed material should land here first.
651
+
652
+ Raw inbox items are promoted into canonical `source` pages by the `process-inbox` skill. This section owns the durable lifecycle rules; the skill owns the exact operational commands.
653
+
654
+ ### Intake lifecycle
655
+
656
+ 1. Raw item arrives in `_inbox/`
657
+ 2. `process-inbox` reads the raw item
658
+ 3. If retained: `process-inbox` uses `agent-wiki create-page` to write a canonical `source` page under `sources/` with `status: unprocessed`, or a large-source parent plus source parts
659
+ 4. The original raw file moves to `raw/`
660
+ 5. If discarded: the raw file moves to `_inbox/trash/`
661
+
662
+ ### `_inbox/` is not canonical
663
+
664
+ - Inbox raw files are NOT `source` pages.
665
+ - Files in `raw/` are retained originals, not canonical source records.
666
+ - Agents MUST NOT treat `_inbox/` or `raw/` items as authoritative source records.
667
+ - Agents SHOULD process inbox items by converting them into proper `source` pages.
668
+
669
+ ### Workspace files are not canonical
670
+
671
+ In workspace mode, files outside the wiki directory are discovery inputs. They may be project notes, docs, datasets, exports, or other artifacts worth promoting.
672
+
673
+ Agents SHOULD use:
674
+
675
+ ```bash
676
+ agent-wiki workspace pending --json
677
+ ```
678
+
679
+ to get a deterministic worklist of new or changed files. The agent then decides which files deserve canonical source pages.
680
+
681
+ Original workspace files MUST stay in place. A workspace source page SHOULD point back to the original file with `originPath`, using the workspace-relative path. The `process-workspace-sources` skill owns this workflow.
682
+
683
+ ---
684
+
685
+ ## 15. Internal linking convention
686
+
687
+ All internal links within the vault use Obsidian-style wikilinks.
688
+
689
+ | Format | Use |
690
+ |---|---|
691
+ | `[[page-slug]]` | Link to a page |
692
+ | `[[page-slug\|Display Text]]` | Link with custom display text |
693
+ | `[[page-slug#section]]` | Link to a section |
694
+
695
+ Standard markdown links are only used for external URLs and `obsidian://` cross-vault references. Cross-vault Obsidian links are not wikilinks; they use the `obsidian://open?vault=<vault-name>&file=<url-encoded-path>` URI form. Agents resolve them only through local `_system/config.json` `knownVaults`; if no mapping exists, treat the URI as an opaque external reference.
696
+
697
+ ---
698
+
699
+ ## 16. Editorial principles
700
+
701
+ - Claims should be atomic — one proposition per claim.
702
+ - Important assertions should be in frontmatter, not buried in prose, if they matter for agents.
703
+ - Questions should remain open until explicitly resolved.
704
+ - Human-authored notes should be preserved unless explicitly changed by the operator.
705
+ - Reports are views, not truth sources.
706
+ - Inbox items MUST be processed into canonical source pages before being treated as evidence.