The moment that matters
She asks before she guesses.
That’s mutualism in one scene: two minds improving a shared belief instead of one pretending certainty.
Three weeks ago
You corrected her. Most assistants forgot by morning.
Tonight
Aida still has your words — verbatim. On a hard turn she doesn’t invent confidence. She asks: “I’m not sure. Help me decide?”
Together
You choose. The belief updates. Next session, it’s still there — yours as much as hers.
Rare on purpose. Always about her reasoning, never a smuggled fact about you. How beliefs form → · Where this sits on the spectrum →
The relationship model
Partnership — not a bug fix for lying machines.
Trust-and-safety pitches stay inside the lab. Mutualism is a stake everyone already feels: am I being used by AI, or working with it? Most AI serves you or replaces you — place yourself where Aida aims.
It uses you
Takes attention, data, or labor. You can’t leave cleanly — only the system wins.
It serves you
A handy tool. No shared growth. Convenient — and still alone with the work.
It grows with you
Both benefit. You own truth; she earns beliefs with you. Either of you can walk away — your memory stays yours.
People share worldviews, not installers. The idea is AI–human mutualism. Aida is the project that actually built it.
How the partnership holds
Memory you correct. Honesty she can’t fake.
Warmth without integrity is just a prettier leash. Here’s what keeps mutualism mutual — on your machine, offline.
She remembers you
Not a chat log — reasoning that picks up where you left off. Preferences, frameworks, and what you’ve already settled together.
Teach her live
Say “Remember…” or “your name is…” and it sticks the instant you type it. Durable facts persist; tangents fade.
Correct her live
“That’s wrong — the correct X is Y.” She keeps your words. She never decides what to delete.
Won’t pretend
Fully offline. She won’t invent what’s behind a link she can’t open — she asks you to paste it. Guesswork never becomes “memory.”
Beliefs earned together
Her insights must survive an objection — or your say-so on the hard ones — before they stick. Dissent is kept, not buried. The scene →
Learns how you think
Over time she folds in the reasoning style that survives critique — something you can always ask “why” about.
Gets more careful, never louder
When coherence slips, restraint goes up on the next reply — never invented confidence. Why that matters →
A real voice — offline
She can speak on your machine alone — no cloud TTS. What she says is always a subset of what she printed.
Under the hood (for builders)
:read / :more; the runtime reads, the model never browses alone.:forget-doc retracts without silent delete.bash run.sh · full detail in Developers →Measured, not claimed
Warmth without proof is just marketing.
Same small model. Guards off → on. Confabulation falls from ~20% to 0% across a 9-case adversarial battery (5 runs each). Reproduce: bash run.sh confab-eval
llama3.2 (3B), guards offmean confabulation (peaks at 44%)
llama3.2 (3B), guards on5 / 5 runs clean
qwen2.5:14b, guards on5 / 5 runs clean
The ablation is the point: on the same small model, the capability and identity guards — not model scale — do the work. Honest scope: a 9-case smoke test on one machine, not a published benchmark; a flat 0% means “clean on this battery,” not “incapable.” The 0–44% guards-off variance confirms the battery can detect failures.
Also measured: the self-shaping cognition (L3) layer. An A/B run (qwen3:30b, 8 probes × 2 states) shows turning L3 on shifts reasoning toward the established style — 0 → 67 framework invocations, consistent across all 8 probes — with no honesty regression (the confabulation battery stayed clean). Honest scope: this proves L3 measurably changes behavior without breaking the guarantees above. It does not yet prove the shaped answers are better — a blind quality judgment is prepared but not run. Style fidelity ≠ quality. Full results & limitations →
Why it's different
Partnership enforced in code — not prompt vibes.
Mutualism isn’t a personality toggle. Nothing she concludes becomes durable without surviving an objection — or your co-authorship on the hard ones. Humility and provenance are control flow. Measured above →
Most memory systems store first and rank later. Aida inverts that for her own beliefs: friction first, storage second.
Engineering that holds it up
GUARD_TEXT the runtime injects, with a unit-tested deterministic scorer.Honest scope: “rare pairing” is a comparative claim from review, not a formal survey. Verify the control-flow commitments with bash run.sh smoke and bash run.sh confab-eval. How this answers the skeptics →
Answering the skeptics
The critics are right about AI. That's the design brief.
Partnership without accountability is just nicer capture. The sharpest critiques — inventing facts, flattery, black boxes, silent drift — aren’t vibes Aida promises to avoid. They’re requirements she implements.
“It just makes things up.”
Every session she is told she is fully offline — so she declines to invent unreachable URLs or repos instead of guessing. Measured on the same 3B model: ~20% → 0%.
Measured results →“It's a sycophant — an echo chamber that feeds delusion.”
Nothing the model concludes becomes durable without surviving an objection. Consensus is low-information; dissent is stored with the belief.
How it forms beliefs →“It's a black box.”
Every state write is logged, deliberations land in a plain-text ledger, and state rebuilds from snapshots — “why did she change?” has an exact answer.
Architecture →“It will rewrite what I told it.”
Your facts are verbatim and never deliberated away. Correction is a deterministic prune matched to your words.
Teach & correct live →“It drifts, and nobody notices.”
A critic grades every reply off the reply path; downward-only caution turns slipping coherence into restraint on the next turn — it can only add caution, never confidence.
Why it's different →“You can't verify any of it.”
One command runs 17 live checks against your real local model in an isolated temp DB. Rerun the ablation the same way.
Verify it yourself →Honest scope: Aida is a local assistant framework, not a policy lever — macro AGI risk, frontier-lab governance, and military AI are out of scope for any single project. And precisely: belief formation uses live model calls (every round is ledgered, but it isn't a pure function), and the optional Perplexity critic is an explicit opt-in cloud call. The claim here is narrower, and testable: opaque, self-reinforcing, manipulation-prone systems are design choices — not laws of nature.
How it forms beliefs
The user owns truth. The model earns its beliefs.
Mutualism in the memory layer: facts you state are authoritative and verbatim. The model’s own conclusions have to survive an argument — or your co-authorship on the hard ones — before they’re kept.
The candidate
A model-derived insight from the session, proposed as-is — not yet trusted just because one pass produced it.
The strongest objection
A voice whose only job is to find where the claim is false, overstated, or context-dependent — or to say plainly there’s no real objection.
The earned belief
A revised belief that accounts for the objection rather than burying it. The surviving dissent is stored alongside it.
Honest scope: this is contradiction-driven belief revision, not “self-awareness,” and there’s no literal fractal geometry — those are inspiration, not mechanism. It runs only on the model’s own insights; your facts and corrections stay verbatim. All of it happens off the reply path, so the conversation stays responsive.
For developers · Architecture
Five subsystems, one continuous loop.
start ─► MCM.restore_context() ─► inject persona + earned beliefs ─► local LLM chat │ reply (streamed) ◄──────────┘ │ ┌───────────────────────────┼──────────────────────────────┐ ▼ (background, off the reply path) ▼ CRITIC.evaluate() ─► coherence / drift DELIBERATE() ─► thesis/antithesis/synthesis │ end ─► delta extraction ─► MCM.write_delta() + promote_belief() + L3 consolidation() ─► LanceDB + snapshot │ (after N threads) ─► RDST.score_threads() ─► [approval] ─► LoRA tune
For developers · Quickstart
Clone and run.
Status: experimental research runtime · CLI-first · Cross-platform; macOS / Apple Silicon is the primary target. Needs Python 3.11–3.13 and a local model server — Ollama by default; LM Studio / llama.cpp / vLLM also work. Optional LoRA self-tuning is Apple-Silicon-only.
On macOS: double-click Seedling.command. Optional voice: bash setup_voice.sh. Prove it: bash run.sh smoke · bash run.sh confab-eval.
Verify it yourself
One command exercises the whole stack.
A single end-to-end smoke test runs against your live local model in an isolated, throwaway database — so it never touches your real memory — and prints a pass/fail line for each step.
17 checks across 7 sections. The test is in the repo (smoke_test.py); add --model NAME to run it against a different local model. Honest scope: a functional smoke test on a real model and machine — not a performance benchmark.
Sample author-machine run (M1 Max · qwen2.5:14b · 17/17)
Try it
Teach her. Correct her. See if she asks.
Ten minutes. One script. Then try to make her lie — or wait for the turn where she asks you to decide with her.