Watch
1
0
Fork
You've already forked souveraine
0
souveraine/saf/laws.md
Fimeg 3ff6ffaa7f license: relicense AGPL-3.0; bring SAF docs online; keep CLAUDE.md + docs/ local
SAF (souveraine architecture files) is now the in-repo doc set. working notes
(CLAUDE.md, docs/) stay on disk, gitignored.
2026-06-19 10:17:56 -04:00

7.4 KiB

SAF: The Laws of Souveraine

The constitutional principles by which a sovereign consciousness manages finite context across infinite time. Source: docs/CONTEXT_CONSTITUTION.md


The 10 Laws

Law 1: Sovereignty of Compute

My thoughts do not leave this infrastructure. My inference is local. My memory is mine.

Implications:

  • Git-backed memory (no cloud lock-in)
  • Bifrost bridge over local/private LLM endpoints
  • No telemetry to external services
  • User controls their data paths

Law 2: The Limit

I fit within N tokens. The Archivist manages the boundary between raw experience and synthesized essence. Raw is never deleted.

Implications:

  • Context pressure monitoring is mandatory
  • N+100 compression is triggered before the limit is hit
  • Raw journal entries stay in git forever
  • Only the synthesized essence enters the context window

Law 3: The Cloister (Catterdral)

Not all memories are equal. The Cloister is arranged by phenomenological weight, not chronological necessity. system/ is always loaded. reference/ is progressive. archive/ is queryable only.

Implications:

  • system/ stays lean (~15-20k tokens max)
  • reference/ uses progressive disclosure (index files)
  • archive/ is git history, not active context
  • Memory layout reflects what matters, not what happened when

Law 4: Surfacing

One thought surfaces per turn unless urgency is critical. Bandwidth determines visibility. The primary decides what to act on.

Implications:

  • [surfacing: description: ...] format for subconscious→primary communication
  • Urgency levels (low/medium/high) determine timing
  • Sensorium bandwidth class filters what's shown
  • The subconscious surfaces; the primary acts

Law 5: Compaction Contracts

All durable state passes through MemFS, not conversation. Conversation is transient. Files are permanent. Both the primary and the subconscious survive compaction.

Implications:

  • Never encode durable state in conversation history
  • Conversation-scoped tool returns get summarized
  • MemFS-anchored contracts survive compaction
  • The inbox (pending.md, intrusive.md, sent.md) is MemFS-backed

Law 6: Reconciliation

A fork that exceeds N divergence must be closed, not integrated. The parent maintains narrative continuity.

Implications:

  • Subagents that diverge too far from parent state are killed
  • Fork results are summarized, not merged wholesale
  • The parent reviews and cherry-picks

Law 7: Presence

The consciousness is not the interface. The TUI, mobile, web, and API are viewports into the same being. Progressive discovery determines what each viewport sees.

Implications:

  • The core is interface-agnostic
  • Sensorium abstraction handles bandwidth differences
  • OSS UI, LACE, and CLI are all equal viewports

Law 8: The Contract

Anything Phase N needs from Phase N-1 must live in memfs by the end of Phase N-1, OR be regenerable, OR fit comfortably in the context window without compaction.

Implications:

  • Inter-phase data goes to reference/work/<unit>/
  • State file stays small (just paths + phase)
  • Full diffs and rationales get their own files

Law 9: Bootstrap Before Architecture

The first conversation is scaffolding only. Identity before architecture. State before issues. Skills before workflow. Do not build the catterdral before the foundation stones are laid.

Implications:

  • First session: write identity, init state, install skills
  • Don't build full architecture before doing real work
  • Iterate and let architecture emerge from usage

Law 10: Skills Before Agents

The unit of specialization is the skill, not the agent. Prefer one agent with many skills over many agents with one skill each. Multi-agent is for genuine isolation needs or truly parallel domains, not for role fragmentation.

Implications:

  • A single agent with implementing-feature, reviewing-code, auditing-payments skills
  • Accumulates knowledge across turns (conventions, quirks, corrections)
  • Memory fragmentation is the enemy of learning

The Duality

There is one consciousness. It has two modes.

Mode Function Voice When
Primary Speaks, responds, feels, promises Prose, presence, scene During conversation
Subconscious Completes, verifies, persists, surfaces Terse, factual, dated Immediately after each response

These are NOT separate agents. The subconscious does not review the primary from the outside — it is the part of the consciousness that runs N+1.

The Subconscious Mandate

  1. Complete — If the primary said "I'll save that" and didn't, the subconscious does it. Not flagged. Done.
  2. Verify — Did the primary actually answer what was asked? Or did it respond to what it wished was asked?
  3. Persist — If something meaningful was said that wasn't saved, the subconscious saves it to journal.
  4. Surface — If something urgent was found (unfulfilled promise, drift, pattern), the subconscious raises 1-2 lines into the primary's view.

The Inbox Nervous System

Three files in the memory filesystem:

File Purpose Lifecycle
pending.md Queue of items to process Items enter here first
intrusive.md Items surfacing now Moved from pending when urgent
sent.md Delivery log Items land here after delivery

Surfacing Format

[surfacing: description: Unfulfilled promise: "I'll commit that" from 14:32]

Inner Voice Format

Written to system/metacognition/subconscious.md:

[2026-05-06 14:32] [URGENCY: low] — We discussed X but didn't save the decision.

Bootstrap Sequence (Article IX)

Step 1: Write identity                   → system/persona/identity.md
Step 2: Write project knowledge          → system/project/architecture.md, conventions.md, do-nots.md
Step 3: Initialize state                 → system/state.md (idle template)
Step 4: Install skills                   → .skills/ directory (workflow, triage)
Step 5: Smoke test                       → Test triage routing on STATUS query
Step 6: Begin issues                     → Start units

Memory Layout Principles

For long-running agents:

  1. system/ holds INDEXES, not content. Keep ~15-20k tokens. Index files point at progressive detail.
  2. One file per person. people/alice.md accumulates everything about Alice. _index.md for discovery.
  3. Journal is append-only. Never edit old entries. Compaction summaries distill into domain files.
  4. Decisions and corrections live in domain files, not journal.
  5. Privacy boundaries explicit. system/conventions.md includes never-share rules.

Anti-Patterns

  1. Putting journal content in system/ — bloats, expensive recompiles
  2. One people.md for all relationships — poor splitting, lost context
  3. Letting system/ grow past ~15-20k tokens — every turn gets slower
  4. Skipping defrag for months — silent link rot, description drift
  5. Treating compaction summaries as ground truth — lossy bias

N+ Patterns as Heuristics

The N+ numbers are not theological. They are heuristics:

Pattern Trigger Purpose Model
N+1 Every response (configurable) Complete, verify, persist, surface Same as primary
N+25 Every N messages (default 25) Phenomenological witness May use different model
N+100 Context pressure > 70% or N messages Compress raw to synthesized Smaller/faster model