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
+13
View File
@@ -0,0 +1,13 @@
# Project configuration for Mistral Vibe Code.
#
# The repository's telemetry policy, in the repository rather than in someone's
# shell profile. Traces are written locally by ./tools/trace_ingest.py and stay
# there; nothing is exported to a vendor backend.
#
# `enable_otel` sends spans - including prompts, tool arguments and tool results
# - to the Mistral Studio trace explorer, and Mistral documents no way to point
# it at a collector you run yourself. `enable_telemetry` is the separate
# anonymous product/error telemetry, and also gates OTel: vibe/core/tracing.py
# exports only when both are true. Both are off here.
enable_otel = false
enable_telemetry = false
+39
View File
@@ -0,0 +1,39 @@
# Session tracing for Mistral Vibe Code.
#
# Verified against mistral-vibe 2.24.2 (vibe/core/hooks/models.py): the file is
# an array of `[[hooks]]` tables, each with a unique `name`, a `type` of
# pre_tool | post_tool | post_agent, and a `command` run through a shell with
# the invocation JSON on stdin.
#
# Vibe loads this file only for a trusted folder. See ../EVALS.md for what the
# three events can and cannot say - there is no session, prompt, compaction or
# permission hook to attach to, so a Vibe trace is thinner than a Copilot one
# and says so in its own `completeness` list.
[[hooks]]
name = "wiki-trace-pre-tool"
type = "pre_tool"
description = "Record an intended tool call. Observational only - never decides."
command = "./tools/trace_ingest.py --source mistral-vibe --event tool.pre 2>/dev/null || true"
timeout = 5.0
# `strict = false` is the default and is spelled out here because it is the
# safety property that matters: under a non-strict hook, a crash or a timeout is
# a no-op warning, so a broken observer can never deny a tool call. Set it to
# true only for a hook that is meant to enforce something.
strict = false
[[hooks]]
name = "wiki-trace-post-tool"
type = "post_tool"
description = "Record the outcome of a tool call: status, output, duration."
command = "./tools/trace_ingest.py --source mistral-vibe --event tool.post 2>/dev/null || true"
timeout = 5.0
strict = false
# `strict` and `match` are rejected on post_agent - they are tool-hook fields.
[[hooks]]
name = "wiki-trace-post-agent"
type = "post_agent"
description = "Record the end of an agent turn."
command = "./tools/trace_ingest.py --source mistral-vibe --event turn.end 2>/dev/null || true"
timeout = 5.0