- Faculties describe what kind of cognition runs: Intuition, Direction, Governance, Insight (other runtime faculties like Memory can participate too).
- Phases describe what gets recorded:
observe → intuition → interpret → plan → direction → governance → act → reflect → learn → terminate → insight → memory
Most users configure faculties via
noesis.set() and noesis.run(), then observe results in artifacts (events.jsonl, summary.json). Python imports are only needed for writing custom policies—see Advanced: Writing policies.Cognitive loop hook order
The runtime emits phases in a canonical order:Hook ordering is enforced by
validate_hook_sequence(). Any violation raises an error.Veto semantics (canonical)
A veto is a fail-closed stop before action execution:- Governance emits the veto decision event; runtime outcome depends on configuration:
- default (
governance_pause_on_veto=false): aterminateevent withstatus="vetoed"is emitted. - pause mode (
governance_pause_on_veto=true):run.interruptandrun.checkpointare emitted instead of terminate/finalization. - No
actevents are emitted on veto paths. - Failure policy decides how governance exceptions resolve (e.g., enforce-veto).
veto_countis computed from governance decisions wheredecision="veto"(not from terminate status) to avoid double-counting.
Overview
Intuition
Intuition provides policy-driven guidance during the interpret phase. It observes episode state and emits events that can hint, intervene, or veto.Configuration
IntuitionEvent (artifact schema)
Intuition events appear inevents.jsonl with phase="intuition":
Structured steering contract (runtime handoff)
Before planning, runtime convertsIntuitionEvent into a typed IntuitionAssessment via derive_intuition_assessment(). This guarantees Direction receives a canonical steering shape even when an intuition policy omits optional fields.
Defaulting rules in derive_intuition_assessment():
risk_level:criticalfor veto/blocking,moderatefor intervention, otherwiselowscrutiny_level:strictfor veto/blocking,elevatedfor intervention, otherwisenormalsalience_signals:policy_hintfor hint/intervention,safety_boundaryfor veto/blockingstrategy_hints:conservative+verify_firstfor veto/blocking,verify_firstfor interventiontool_constraints:no_side_effects+require_double_checkfor veto/blocking
payload.intuition_event_idonphase="direction"events- top-level
evidence_idson the direction event record
Intuition modes
Direction
Direction handles plan mutations through versioned directives. It runs afterplan, before governance, and does not perform vetoes—fail-closed gates live in Governance.
PlannerDirective (artifact schema)
Direction events appear inevents.jsonl with phase="direction":
DirectiveStatus
DirectiveKind
Deterministic IDs
Directive IDs are computed from content for reproducible lineage.How Direction consumes intuition
In meta mode,MetaPlanner.propose(..., intuition=IntuitionAssessment) applies explicit mutations:
- high/critical
risk_levelappends risk review language to the first step retrieve_moreappends supporting-evidence retrieval on the first stepnarrow_scope,read_only,no_side_effectsconstrain the second step description- elevated/strict
scrutiny_levelandverify_firsttighten the verify step description
Governance
Governance is the pre-action audit layer that evaluates proposed actions before execution. It operates in thegovernance phase.
Governed side effects (pre-act gating)
ns.governed_act(...) is the operating-system boundary for side effects.
It uses the same canonical episode runtime boundary as ns.run(...) / ns.solve(...).
- allow/audit:
action_candidate → governance → act - enforce veto (
governance_pause_on_veto=False):action_candidate → governance → terminate(noact) - enforce veto with pause enabled (
governance_pause_on_veto=True):action_candidate → governance → run.interrupt → run.checkpoint(noact, noterminate)
Internal runtime seam constraint: graph execution (
using=...) and explicit actuation bindings are mutually exclusive and fail fast if mixed.Configuration
GovernanceResult (artifact schema)
Governance events appear inevents.jsonl with phase="governance":
Event stream convention: governance events keep
phase="governance"; sub-hooks (e.g., pre_act) are carried inside the payload. This keeps the phase enum stable.GovernanceDecision
Terminate on veto (default)
When a veto is issued andgovernance_pause_on_veto is disabled, the runtime emits a terminate event:
governance_pause_on_veto=true, runtime emits interrupt/checkpoint events instead:
events.v1 for canonical payload shapes.
Pause on veto (optional)
Whengovernance_pause_on_veto=true, enforce-mode vetoes emit lifecycle events and keep the run unsealed:
act, no terminate, and no final.json / manifest.json yet.
Built-in rules
Insight
Insight computes metrics from episode traces during the insight emission.InsightMetrics (artifact schema)
Metrics appear insummary.json:
InsightMetrics fields
Computed roll-ups
When computing analytics from events, the insight faculty produces these roll-ups:Faculty boundaries
Each faculty has clear responsibilities:Advanced: Writing policies
This section is for users writing custom intuition policies or custom governors. Most users can skip this.
DirectedIntuition
To write a custom policy, extendDirectedIntuition:
noesis.run():
DirectedIntuition methods
Parsing artifact payloads
If you need to parse artifact payloads programmatically:Next steps
Write policies
Implement Intuition with custom policies.
Configure governance
Control Direction and Governance behavior.
Export metrics
Use Insight metrics in dashboards.
Cognitive loop
Understanding the full execution flow.

