64 lines
2.5 KiB
Markdown
64 lines
2.5 KiB
Markdown
# Wiki Schema (Personal KB — hermes/personal-wiki on gitea.maukit.com)
|
|
|
|
## Domain
|
|
Personal LLM / AI knowledge base maintained via isolated Hermes `wiki` profile.
|
|
Repo: `https://gitea.maukit.com/hermes/personal-wiki` (shared with floof for push access).
|
|
Local root: `/opt/data/wiki` (cloned git repo).
|
|
Agent profile: `/opt/data/profiles/wiki/` (isolated — only writes via this profile).
|
|
|
|
## Conventions
|
|
- File names: lowercase, hyphens, no spaces
|
|
- Every page starts with YAML frontmatter (title, created, updated, type, tags, sources, confidence, contested)
|
|
- Use `[[wikilinks]]` for internal links (min 2 outbound per page)
|
|
- Raw sources (`raw/`) are immutable; corrections go in wiki pages
|
|
- Every ingest/update must append to `log.md`
|
|
- Every new page must be added to `index.md`
|
|
- Use `#` for headers, `---` for YAML delimiters
|
|
- Only tags from the taxonomy below
|
|
|
|
## Tag Taxonomy
|
|
- kb: kb, source, reference, note, summary
|
|
- domain: personal, workflow, homelab, ai, model, tool, skill, script
|
|
- meta: comparison, timeline, open-question, confirmed, contested
|
|
- layer: raw, entity, concept, comparison, query
|
|
|
|
## Page Thresholds
|
|
- Create page: entity/concept in 2+ sources OR central to 1 source
|
|
- Don't create for passing mentions or single-source footnotes
|
|
- Update: add new info, bump `updated`, note contradictions
|
|
- Split page when >200 lines
|
|
- Archive superseded content to `_archive/`
|
|
|
|
## Frontmatter Template
|
|
```yaml
|
|
---
|
|
title: Page Title
|
|
created: YYYY-MM-DD
|
|
updated: YYYY-MM-DD
|
|
type: entity | concept | comparison | query | summary
|
|
tags: [kb, domain-tag, meta-tag]
|
|
sources: [raw/articles/file.md]
|
|
confidence: high | medium | low
|
|
contested: true | false
|
|
contradictions: [other-page-slug]
|
|
---
|
|
```
|
|
|
|
## Update Policy
|
|
- Newer sources supersede older
|
|
- Contradictions: note both claims with dates, mark `contested: true`, list in `contradictions`
|
|
- Always bump `updated` when editing
|
|
- Every edit must update `log.md`
|
|
|
|
## Quality Signals
|
|
- `confidence: high` → multi-source, well-corroborated
|
|
- `confidence: medium` → single source or partial corroboration
|
|
- `confidence: low` → speculative / opinion-heavy / contested
|
|
- `contested: true` → page has unresolved contradictions (must be resolved before promoting to `high`)
|
|
|
|
## Source Drift Check
|
|
Raw files have `sha256:` (body hash, not frontmatter). Re-ingest must compare hash; skip if identical, update if different.
|
|
|
|
## Access & Sharing
|
|
Repo shared with `floof` (push access, Gitea user id 3). Other agents / hosts read via git clone (public repo); only `wiki` profile writes. Second Telegram bot deferred.
|