knowledge_write
Write or update a knowledge page by slug, categorizing facts as world or our artifacts, with citation-backed claims and replace or append modes.
Instructions
Upsert a knowledge page by slug. Two classes: world/ (default) — facts true independent of us. Domain = "music/gear", "software/loom", etc. ours/ — Art-created artifacts, revised-in-place (breakbrain density model, homelab design, wake-chain spec, script templates). Domain starts with "ours/", e.g. "ours/art-ops". On an existing slug: body REPLACES by default (mode: "append" adds to it instead), title/domain follow the write, citations always appended with exact-duplicate dedup — safe to re-send. Epistemic gate (§E1): • conversation-only citations → provisional (both classes). • any repo citation → internal (ours/ class; repo = git path / commit / live-system probe). • any web citation, no repo → sourced (world/ default). World filing test: knowledge must be true independent of Jonathan. For our own artifacts use ours/.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Synthesized markdown body for the entity or artifact page (max 64 KB) | |
| mode | No | Body combine mode when the slug already exists: "replace" (default) overwrites the stored body; "append" adds this body after the existing one. Citations are appended (deduped) in both modes. Ignored when creating a new page. | |
| slug | No | Entity key for upsert — stable URL-safe identifier. Derived from title if omitted. | |
| title | Yes | Page title — the entity name (e.g. "Mutable Instruments Rings") or artifact name (e.g. "breakbrain density model") | |
| domain | Yes | Domain tag. World class: "music/eurorack", "programming/typescript". Ours class: prefix with "ours/" — e.g. "ours/art-ops", "ours/breakbrain", "ours/homelab". Hierarchical string; sub-domains queryable via prefix filter. | |
| version | No | ours/ class: artifact version or revision tag (e.g. "v2", "2026-08-31", "t-81"). Preserved across upserts when omitted. | |
| citations | Yes | Support citations. At least one required. All-conversation → provisional. Any repo → internal (ours/). Any web → sourced. | |
| created_by | No | ours/ class: who created or last owned this artifact (e.g. "art", "jonathan"). Preserved across upserts when omitted. | |
| freshness_anchor | No | The version/date the page's claims are valid as-of — e.g. "Syntakt OS 1.21" for a device, "as of 2026-05" for a topic, or "t-81 / 2026-08-31" for an ours/ artifact. Drives the verification engine: a page is re-verified when this anchor moves or the freshness SLA elapses. |