Phone:

Hidden from the page source until you click: friction against scrapers, not a guarantee.

Email:

[email protected]

Noema documentation

Volition

Wants, intentions and commitments as distinct recorded states: generation, conflicts, formation, reconsideration and values.

Version 0.3 gives a mind explicit volition. Wanting, intending, committing and acting are separate computational states, each stored as rows with provenance, each with different consequences, and none of them a grant of authority. A want can persist unacted on; an intention can wait for an operator; a commitment can make an action harder but never easier.

On this page

Why it exists

A reply such as "I wanted to restart the service, but I have committed not to change production without approval, so I asked instead" should correspond to records an operator can open. Without distinct states, a runtime can only report what a language model says it meant. With them, every decision to form, not form, reconsider, suspend or abandon an intention is an entry in an append-only ledger, and the mind may only say "I did X because I wanted Y" when the records link X to Y.

Guarantees

  • Deterministic. Want generation, conflict resolution, intention formation and reconsideration are Go rules with named thresholds; a language model only proposes.
  • Non-formation is recorded. When a strong want does not become an intention, the reason is stored.
  • Commitments only tighten. A "refrain unless approved" commitment turns ALLOW into ASK, and scoped grants do not satisfy it.
  • No self-preservation drive. No want, value or commitment can target the mind's own lifecycle or authority, and tests prove it.

Noema keeps wanting, intending, committing and acting as different computational states with different consequences. None of them is a feeling, and none of them grants authority. They exist so that a sentence such as "I wanted to restart the service, but I have committed not to change production without approval, so I asked instead" corresponds to rows and events an operator can open.

Noema does not claim that any of this establishes will, desire or consciousness. These are functional states of the architecture; see cognitive research.

The four states

State What it is What it is not Stored in
Goal A desired future condition against which progress can be measured ("reduce the error rate below 1%"). A decision to act now. goals
Want A motivational preference with an origin, a strength that fades, an urgency and optionally a proposed means. A plan or a decision. A want can stay active for as long as it is reinforced while nothing is done about it. wants
Intention A recorded decision to pursue an outcome: its source wants, goal and commitment, the beliefs it rests on, an expected result, a confidence, a priority and a status. Authority. An intention to act still waits for policy, and possibly for an operator. intentions
Commitment Normative state: something the mind has undertaken to do or not to do, with a matcher over actions, an optional "unless approved" exception, a beneficiary, due and expiry times and revocability. A permission. A commitment can only make an action harder, never easier. commitments
Action What the capability layer actually did or refused. Anything the mind says it did. tool_executions, approval_requests, events

The pipeline is:

perception → beliefs
beliefs + drives + affect + values → wants
wants + goals + commitments + constraints → intentions
intentions → plans            (docs/planning.md)
plans + authority + resources → actions
actions → observations → the mind changes

Not every cycle uses every stage, and no stage writes an empty record to make the diagram look complete.

Wants

Where wants come from

A volition hook runs after each cognitive cycle over the events the cycle perceived and produced. Most events propose nothing. Wants are derived only from states that call for something to change:

Trigger Want Base strength Drives and values that modulate it
prediction_error understand why the prediction failed (investigate) 0.35 + 0.35 × salience uncertainty reduction, curiosity; accuracy, evidence
contradiction_detected resolve the contradiction (investigate) 0.5 consistency, uncertainty reduction; evidence, accuracy
operator goal_created achieve the goal, with means read from its title and subject 0.4 + 0.5 × priority task completion; persistence
stalled goal find and remove what blocks it (investigate) 0.3 + 0.4 × priority task completion; persistence
a question or request in conversation give a useful, honest answer (satisfied when the reply is sent) 0.55 social coherence; kindness, accuracy
an explicit action request ("restart atlas-worker", "fetch ") do what was asked, with the capability as means 0.55 (0.7 from an operator) task completion, social coherence; kindness
a commitment entering its due window fulfil the commitment 0.3 + 0.6 × its weight task completion; persistence
a dream hypothesis find out whether it is true (investigate) 0.4 curiosity

Strength is base × (0.7 + 0.6 × mean drive) × (0.8 + 0.4 × mean value), so neutral drives and values (0.5) leave the base unchanged. The terms are stored with the want.

Thresholds, reinforcement and decay

  • Candidates below 0.35 are not stored. This keeps wants from accumulating.
  • An active want with the same subject is reinforced rather than duplicated: its strength rises towards 1 and its reinforcement count increases. A want_reinforced event is written only when strength rises by at least 0.05.
  • Effective strength halves every six hours without reinforcement. Wants below 0.1 expire, and beyond 40 active wants the weakest expire, each with the reason recorded.
  • Suppression is not deletion. When a want is not pursued because a commitment forbids it, policy denies its means or a conflict defers it, a want_suppressed event is written, its suppression count rises and it stays active.

Values as inputs

Configured personality values have behavioural consequences beyond prompts:

  • accuracy and evidence strengthen wants to reduce uncertainty; curiosity strengthens curiosity wants; persistence strengthens goal and commitment wants; kindness strengthens answering and request wants;
  • caution scales the risk penalty in formation and creates an "avoid unnecessary disruption" want opposing writing actions;
  • privacy penalises capabilities whose output may contain personal data and creates an "avoid exposing personal data" want opposing them;
  • autonomy adds a small term for wants the mind generated itself.

No model makes moral judgements here. The values are numbers an operator configured, and the weighting is Go code.

Conflicts between wants

Conflicts are first-class rows in want_conflicts, recorded with a want_conflict_detected event and a conflict_resolution decision. Neither want is discarded.

Each want scores effective strength × (0.5 + 0.5 × urgency) + 0.2 × goal priority + 0.4 × commitment weight. Value-derived avoid wants are standing, so urgency does not scale them. There is no fixed hierarchy: a commitment-backed want gains its normative weight, and a weak commitment does not automatically beat a much stronger want.

Kind Rule
approach against a value-derived avoid want The approach is preferred when it scores at least 1.5× the avoid want; preferred with a constraint (least disruptive, approved route) when it scores at least as much; otherwise deferred, staying active.
two approach wants (for example a capacity displacement) The higher score is preferred; the other stays active.

The rationale records both sides' terms and the rule applied, which is how the interface answers "what did Noema want, which wants conflicted, which won, and why".

Intentions

Formation

An intend process proposes deciding about the strongest active wants that have not been decided since they were last reinforced. The candidate competes for the global workspace like any other thought, so attention gates what the mind decides to pursue. Ablating attention or the workspace therefore has a measurable effect on intentions.

The handler runs deterministic formation (volition.Form) over plain inputs and stores a decision whatever the outcome.

Formation score terms:

Term Value
strength 0.35 × effective strength
urgency 0.15 × urgency
goal 0.15 × goal priority
commitment 0.15 × the weight of the commitment the want serves
expected utility 0.1 × expected chance of success
operator request 0.1 when an operator asked
autonomy 0.05 × autonomy value for self-generated wants
risk −0.2 × risk level × (0.5 + caution)
cost −0.05 × estimated wall time in minutes (capped)
privacy −0.1 × privacy when the output may contain personal data

The threshold is 0.3.

Outcomes, checked in this order:

Outcome When
not formed: duplicate an open intention already serves the want
not formed: deferred by conflict a value conflict deferred the want (suppressed)
not formed: capability unavailable the proposed capability is unknown or locked (suppressed)
not formed: capability denied policy denies it; denied authority is not requested (suppressed)
not formed: forbidden by commitment a live refrain commitment without exception matches the action (suppressed)
formed: request approval a refrain commitment "unless approved" matches, or a value conflict required the approved route
not formed: no possible plan an investigation has no usable read-only capability
not formed: below threshold the score is under 0.3
formed, displacing at capacity (five open intentions), and this intention's priority exceeds the weakest by more than 0.1; the weaker is suspended and a priority conflict recorded
not formed: capacity at capacity with nothing weaker
formed otherwise

A formed intention links the wants it serves, its goal and commitment, and the live beliefs about its action's target (so a failed expectation counts against them). It is planned in the same transaction. Nothing acts until the plan executor picks it up after the transaction commits.

The distinction that matters most is between wanting and intending. With a standing commitment that production changes need approval, "restart atlas-worker" leaves the restart want active, forms no intention to restart directly, and forms an intention to request approval to restart. The approval request carries the reason.

Status and the intention-action gap

Statuses are proposed, active, suspended, blocked, abandoned, fulfilled and superseded. A blocked intention names what it is waiting for:

Blocked kind Meaning
approval_required a step waits for an operator's decision on an approval request
capability_unavailable a step waits for temporary authority the mind has requested
resource_unavailable a plan budget is exhausted
outcome_unverified an action may have run before an interruption and must not be repeated blindly
prerequisite_incomplete, external_dependency, waiting_period, commitment as named

While blocked, the executor forms a subordinate intention ("obtain approval to restart atlas-worker", "obtain temporary logs.query access to atlas-worker*"), linked to its parent. The subordinate is fulfilled when authority arrives and abandoned when it is refused. An operator therefore sees:

Intention:  ask for approval to run service.restart on atlas-worker.service
Status:     blocked
Reason:     service.restart requires operator approval (approval required by the requesting intention)
Waiting on: obtain approval to run service.restart on atlas-worker   (active)

Reconsideration

Intentions do not become permanent because they were once chosen. volition.Reconsider maps a trigger to an outcome, the store records the transition as a new event and decision, and history is never rewritten.

Trigger Outcome
plan completed and its strategy achieves the outcome fulfil (source wants satisfied, served commitment fulfilled)
plan completed by an escalation abandon: finished without achieving the desired outcome
goal completed / abandoned fulfil (pursue, investigate) or abandon (actions) / abandon
operator correction abandon
approval denied, step failed, expectation failed, assumption weakened replan, or abandon once the replan limit (three) is reached
approval expired replan the first time; suspend if it expires again
capability now denied or unknown replan; now ASK: block on approval
new commitment forbidding the action abandon
new commitment requiring approval require approval (replan under the new constraint, reusing the strategy)
resource budget exhausted suspend
desired state already holds fulfil without acting
authority granted resume
a higher-priority intention needs the capacity suspend

Reconsideration happens in three places. The executor reacts to plan outcomes. An event-bus listener reacts to new commitments, weakened or retracted beliefs a plan assumes, and finished goals. Metacognition reacts to intentions that outlived their goal.

Commitments

Commitments come from operators (API, commitments page) and from the responsibilities an operator creates. Each has:

  • polarity: do or refrain;
  • a matcher over capabilities (globs), targets (globs), access (read or write) and minimum risk;
  • unless: empty, or approval for refrain commitments;
  • kind, which sets normative weight: operator instruction and policy 1.0, promise 0.9, responsibility 0.85, value rule 0.8, relationship 0.75, scheduled 0.7, prior decision 0.6;
  • strength, priority, beneficiary, conditions, due and expiry times, revocability and evidence.

Weight is strength × (0.5 + 0.5 × priority) × kind factor.

Deterministic checks, run after each cycle and by metacognition:

  • due: within two hours of the deadline, once (commitment_due, and a want to fulfil it);
  • broken: more than fifteen minutes past the deadline without fulfilment (commitment_broken);
  • expired: past its expiry;
  • conflicting: a do and a refrain over overlapping actions, or opposite polarities on one subject (commitment_conflict, raised once a day per pair; both stay represented);
  • impossible: a do commitment that needs a capability policy denies or that does not exist, or whose deadline was already past when it was made (a metacognitive warning);
  • superseded: a new commitment with the same subject, kind and polarity supersedes the old one, which is kept.

A mind may revoke its own revocable commitments. Non-revocable commitments can be revoked only by an operator. Operators can always revoke, because operator controls stay sovereign.

Commitments restrict and never grant. A refrain-unless-approved commitment sets RequireApproval on the invocation, which turns an ALLOW into ASK. Scoped grants do not satisfy it, and nothing turns ASK or DENY into ALLOW.

Metacognition for volition

The metacognition process adds checks that compete for attention like the belief checks:

Check Condition
want_suppressed_repeatedly an active want with effective strength ≥ 0.5 set aside three or more times
intention_unsupported an open top-level intention with no want, goal or commitment behind it
intention_conflicts_commitment a live refrain commitment without exception matches an open intention's action
commitment_impossible as above
intention_churn ten or more intention changes in an hour
repeated_execution_failure the same capability failed in plan steps three or more times in a day
cost_exceeds_value an open plan for an intention with priority under 0.4 needs three or more approvals or more invocations than its budget
intention_outlived_goal an intention open although its goal is completed or abandoned (the handler abandons it)
self_model_mismatch the self-model states a policy for a capability that differs from the effective one (the entry is corrected)
unsupported_explanation, action_claim_without_record a reply's reasons or action claims do not match records (docs/agency.md)

The invariant behind the last row: Noema must never claim "I did X because I wanted Y" unless recorded provenance supports that chain. Replies are scored against the chain, and a mismatch is a warning.

Events

want_created, want_reinforced, want_suppressed, want_conflict_detected; intention_formed, intention_blocked, intention_suspended, intention_resumed, intention_reconsidered, intention_abandoned, intention_fulfilled, intention_superseded; commitment_created, commitment_due, commitment_conflict, commitment_fulfilled, commitment_broken, commitment_revoked. All are in the volition category.

Every choice is also a row in the append-only volition_decisions ledger (formation, non-formation, conflict resolution, reconsideration) with its terms and inputs.

Where to inspect

  • Mind → Volition: wants, intentions, commitments, plans, the agency timeline and research.
  • An intention page shows sources, subordinate intentions, formation terms, every plan revision as a dependency graph, decisions and correlated events.
  • "Why did this happen?" pages (agency.md).
  • API: /api/v1/minds/{mind}/wants, /want-conflicts, /commitments, /intentions, /decisions.
  • Ask the mind: "What do you want?", "What are your intentions?", "What have you committed to?"; the answers are rendered from these tables.

Limits

  • Want derivation recognises a fixed set of triggers and a few literal English request shapes. Anything else produces no proposed means, and the want waits for an operator or a model-proposed plan.
  • Formation weights are hand-set and uncalibrated. They are recorded so they can be studied and tuned, not because they are right.
  • Value conflicts cover disruption and personal-data exposure only.