What (One-liner)
Canvas generic single agent: a position-anchored actor (office + occupant) reasons over wired evidence via its sourced actor model and emits one stance using the same InstitutionDecision contract as a full institution — debate optional, importance anchored to the office.
How to use
Price Factor (SPY) → Agent (configure actor model) → Portfolio Optimization
→ stance=bullish, 72% confidence → tiltDebate is optional. Standalone, the agent just reasons. Drop it inside an institution_composite to make it one voice in a committee (the existing Council path).
Two appearance modes (merged 2026-08-05)
The same underlying Actor — position (powers/constraints/purpose) + occupant (biography/biases/voiceStyle) + capability (skill→operator authorization) — appears on Canvas in two forms:
① Standalone stance (this card, agent_v1) | ② Committee seat (institution_agent, internal type) | |
|---|---|---|
| How it's created | Dragged from the Canvas palette | Auto-generated inside an institution_composite's subgraph when a person/desk snapshot is bound — never user-dragged |
| What it does | Reasons alone over wired evidence → one InstitutionDecision via /agents/run-stance | Argues as one seat in a multi-round committee debate → /topology-debate, via generateAgentArgument |
| System prompt | buildAgentSystemPrompt (shared) | buildAgentSystemPrompt (same function — one Tier-5 prompt pin covers both) |
institution_agent used to be independently registered as a standalone draggable node too — that registration is now removed: as a standalone node it hard-required an institution snapshot and ran the same full-committee branch as institution_composite, so it never actually delivered the single-identity "quick view" its own card promised. It remains a fully legitimate node type for existing institution snapshots' internal seats (nothing about saved institutions changes) — it's just no longer offered as something to independently drag onto the canvas, and no longer tracked as a second, separate Tier-5 attestation group.
Core formulas
See frontmatter. Actor model → shared buildAgentSystemPrompt enrichment → /agents/run-stance → InstitutionDecision. No/invalid model output → explicitly-labeled neutral fallback.
Assumptions & applicability
Assumptions: low temperature, maxTokens ≥ 1024, actor model stable, evidence supplied by wired upstream nodes.
Applies to: single-actor views (star trader, office-holder, policy reaction function), position-anchored modelling, lightweight stance nodes feeding portfolio/strategy/risk.
Does not apply to: committee consensus, autonomous operator orchestration (A6), byte-deterministic demos, live decisions.
Known limitations
See frontmatter. Six items: consumes-wired-evidence-not-autonomous / LLM non-determinism / partly hand-authored actor model / labeled fallback / no cross-validation / office-holder modelling caveat.
References
- Pangura Society Decision-Process Design (2026-06-22)
- Pangura Sourced Actor Model Design (2026-06-21)
Golden Test
Tier 5 integrity checks — automated adapter live (2026-08-03): invariant assertions on real run packets, ledger-tracked. The contract shape (InstitutionDecision parse + labeled fallback) is unit-tested in singleAgentStance.test.ts + agents.runStance.test.ts.
Changelog
- 1.0.0 (2026-06-22) — First Active (Society S0; generic position-anchored single agent)

