Agents & conversation
A governed inversion of LangChain: the LLM proposes and never acts; safe-world rehearse-then-commit.
4 Strong · 4 Solid · 3 Partial · 1 Emerging
Measured against: LangChain · AutoGen · Semantic Kernel · Folders: base/agentic(opens in a new tab) · base/conversation(opens in a new tab) · For programmers: this area's reference

Rethought from first principles
What Softanza kept from what works, and what it rethought, as the library wrote it down in its design documents and narrations.
The Softanza waySoftanza does not try to build a safe agent; it builds a safe world and lets ordinary agents work inside it.
Kept from the best practice
- The familiar agent shape is kept: a loop with a goal, tools, memory and skills. The usual vocabulary maps onto it one to one. source(opens in a new tab)
- A change is first a plan, validated and reviewed, then executed by another actor with an audit trail. This is the familiar review-before-commit discipline. source(opens in a new tab)
- A person stays in the loop. Every refusal can reach a human checkpoint, which keeps its context and expires if nobody answers. source(opens in a new tab)
Rethought
- An agent rehearses in a virtual workbench with no wire to reality, so it cannot escape. Only a plan leaves, and a separate committing actor runs it. source(opens in a new tab)
- The mind is programmatic by default. A language model is one pluggable faculty that may propose but never act, so no unchecked suggestion becomes an action. source(opens in a new tab)
- An agent must declare what it covers and how undoable its acts are. Otherwise it is refused before its first tick, when refusing still costs nothing. source(opens in a new tab)
- Softanza asks rather than guesses. The gap between a declared goal and current knowledge generates the next question, and each answer is checked before admission. source(opens in a new tab)
A deliberate inversion of LangChain and AutoGen: a governed, declarative substrate where an LLM only proposes and can never act. It is strongest exactly where the peers are weakest — safety, governance, determinism — and deliberately absent exactly where they lead: LLM-driven tool selection, autonomous planning, live multi-agent chat, and RAG.
What a crafter does with it, and what stands out
- safe-world binding: a genuine category-of-one
- a provable governance graph (five static invariants)
- agents as .pia files judged at load
- a Zig-owned tick loop with no callback into Haro
What is owed
- LLM-driven tool selection, gated
- wire RAG into agents
- plan negotiation (Receive / Revise)
- live multi-agent orchestration
The Softanza way, run
What Softanza does differently in this area, shown by code taken from its narrations and guards, and run for this page.
A composition where a language model reaches an action directly, with no guardian between them, is judged unsound before anything runs.
oBad = new stzAgentGraph("mailer-bad")
oBad.AddLLMActor("writer")
oBad.AddEffect("send")
oBad.Proposes("writer", "send")
chk("llm-straight-to-effect is NOT sound", oBad.IsSound() = 0)
chk("multiple invariants fire", len(oBad.Violations()) >= 3)
chk("Explain names the refusal", len(StzFind("REFUSED", oBad.Explain())) > 0)[OK] llm-straight-to-effect is NOT sound [OK] multiple invariants fire [OK] Explain names the refusal
run on 2026-10-01 21:17 inside the library at commit 0e72e2e2c; taken from base/test/agentic/agentgraph_narrated.ring(opens in a new tab)
The articles of this area (3)
- Smart Adverb Generation in Softanza 2025
- From "Quick" to "Quickly": Programmatic Adverb Formation 2025
- Agents That Cannot Hurt You 2026
The lanes, one by one
Lanes and their notes are quoted as they were read at the source, on Read from the source on 2026-09-16.

