Chemenu 2.1.0 - deterministischer Wissenskompiler
CI / verify (push) Failing after 32s
Release / release (push) Successful in 38s

Chemenu kompiliert Rohnotizen zu einem verlinkten, quellengebundenen Wiki:
raw/ -> types/ + tools/ -> kb/ -> reports/. Was mechanisch ist, macht
tools/wikitool; was Urteil braucht, macht ein Agent unter Contracts, deren
Grenzen in Code durchgesetzt sind statt im Prompt.

Dieser Commit ist der Startpunkt der oeffentlichen Historie. Die vorherige
Entwicklung fand in einer privaten Instanz statt und ist nicht Teil dieses
Repositorys; ihre Erzaehlung steht vollstaendig in CHANGES.md, das mit 44
Eintraegen von 0.1.0 bis 2.1.0 erhalten geblieben ist.

Der mitgelieferte Korpus ist ein Testbett und eine Demo: 170 Seiten ueber den
Stack selbst - Gates, Lint, Versionierung, Suche, das Wiki-Muster. Er
dokumentiert das Werkzeug mit den eigenen Mitteln des Werkzeugs.

Lizenz: AGPL-3.0 fuer den Stack (tools/, types/), CC-BY-4.0 fuer die Inhalte.
Die Grenze zwischen beiden ist der Dateiplan, den dist export berechnet -
siehe NOTICE.
This commit is contained in:
2026-09-01 16:24:34 +02:00
commit 18ae28f918
368 changed files with 50628 additions and 0 deletions
+108
View File
@@ -0,0 +1,108 @@
---
name: wiki-manage
description: Create a new wiki page (entity, concept, source, comparison) or update an existing page with new information, including cross-references, index/log, and publish. Use when the user says "create a new entity/concept/comparison", "add a page for X", "update the X page", or new information needs integrating into an existing page.
---
# Wiki Manage
**Purpose:** Create a new wiki page, or update an existing one, keeping cross-references, the
catalog and the audit log in sync.
**Trigger:** User requests a new entity/concept/comparison page, or new information needs
integrating into an existing one.
**Before the first `wikitool` call:** [session-setup.md](../session-setup.md).
**Read before drafting:** [kb/CONTRACT.md](../../kb/CONTRACT.md) - naming, tone, linking,
provenance and confidence - together with the target collection's own `COLLECTION.md`, which
carries its quality goal and what is local to that subtree. Field-level requirements come from
`tools/wikitool types describe <type>`.
## Creating a page
1. **Check it does not already exist.**
```bash
tools/wikitool search "<name and its synonyms>"
```
A near-duplicate under a different title is the most expensive mistake here, and the
cheapest to prevent. `search` does not count against the iteration budget.
2. **Determine the type.** `tools/wikitool types list` for the roster;
`tools/wikitool types describe <type>` for its required fields, enums and authoring
guidance.
3. **Scaffold it.**
```bash
tools/wikitool new <type> --name "<Name>" --set field=value ...
```
This resolves location, frontmatter, naming collisions and directory placement
deterministically. Never write frontmatter or pick a directory by hand.
4. **Gather what the wiki already knows** - `tools/wikitool search` again, for the surrounding
subjects - so the prose connects to existing pages instead of restating them.
5. **Draft.** Fill in the generated skeleton's TODO sections, following the tone rules in
[kb/CONTRACT.md](../../kb/CONTRACT.md#tone). If `provenance:` is `sourced` or `mixed`, cite
hard facts as you write them with `tools/wikitool cite add --page "<Title>" --source
"Source - X"`, which also adds `X` to `sources:` - paste the `[^cite-id]` marker it prints.
6. **Cross-reference.**
```bash
tools/wikitool xref add --a "<A>" --b "<B>" --rel-a "<label>" --rel-b "<label>"
```
One per relationship. Never hand-edit `related:`.
7. **Close out.** [publish-cycle.md](../publish-cycle.md), `--op create`.
## Updating a page
1. **Read the page.** Understand what it already claims.
2. **Preserve what is still true.** Do not remove valid information to make room.
3. **Integrate the new content.**
4. **Mark what was superseded** - ~~strikethrough~~ for replaced text, or move it to a
"Historical" section with a note. Do not silently delete a claim that was once true; the
wiki's value is that it records what changed.
5. **Cross-reference** any new relationship (`xref add`), and cite any new hard fact inline.
6. **Update the frontmatter that describes the page itself:**
```bash
tools/wikitool touch --page "<Title>" --summary "<new 1-liner>" [--provenance <value>]
```
Never hand-edit `modified:`, `summary:`, `provenance:` or `confidence:`.
7. **Close out.** [publish-cycle.md](../publish-cycle.md), `--op update`.
## Renaming, deleting, or unlinking
That is [page-lifecycle.md](../page-lifecycle.md). A title is the wiki's only identifier for a
page, so none of it is a file operation.
## Decision points
- **Is this really a new page?** If the subject already has one, update it. If the material is
a head-to-head evaluation, it is a comparison and both subjects need pages first.
- **Entity or concept?** A thing you can point at is an entity; a *why* or *how* is a concept.
The collection contracts draw the line.
- **`publish` refused?** A single page is normally well under the threshold. If it trips,
[gates.md](../gates.md).
## wikitool commands used
`search`, `types list`, `types describe`, `new`, `touch`, `xref add`, `xref remove`,
`sources rebuild-index`, `index rebuild`, `log append`, `publish`
## Output
A new or updated page, published to `origin/main`.