thinkn
  • Product
    Manifesto
    The reason we exist
    Founder Studioprivate beta
    Make better product decisions faster
    Belief SDKinvite only
    Add belief states to your AI system
    Request Access →Join the private beta waitlist
  • Docs
  • Pricing
  • FAQ
  • Docs
  • Pricing
  • FAQ
Sign In
Welcome
  • Hack Guide
  • Introduction
  • Install
  • Quickstart
  • FAQ
  • The Problem
  • Memory vs Beliefs
  • Drift
  • Examples
  • Beliefs
  • Intent
  • Clarity
  • Moves
  • World
core/beliefs.mdx

Beliefs

What a belief is. How confidence works. How beliefs evolve.

What a Belief Is

A belief is a structured assertion your agent holds about the world. It has a type, a confidence score, and an optional label for richer categorization.

1{
2  id: 'belief_market_size',
3  text: 'Market size is $4.2B',
4  type: 'assumption',
5  confidence: 0.85,
6  label: 'risky-assumption',
7  createdAt: '2024-03-15T10:30:00Z',
8}
  • text. The natural language assertion.
  • type. What kind of belief: claim, assumption, risk, evidence, gap, goal.
  • confidence. A 0–1 score reflecting the current evidence balance.
  • label. A semantic label for richer categorization: risky-assumption, load-bearing, limiting-belief, pain-point, opportunity, etc.

Belief Types

TypeUse case
claimAn assertion supported or refuted by evidence
assumptionSomething taken as true without direct evidence
riskA potential negative outcome
evidenceA data point or source that supports/refutes other beliefs
gapSomething the agent has not investigated yet
goalWhat the agent is pursuing

The system assigns types automatically during extraction. You can also specify a type when adding beliefs manually via beliefs.add(text, { type: 'assumption' }).

How Confidence Works

Confidence reflects the balance of evidence behind a belief. When new evidence arrives, confidence shifts. How much depends on the evidence quality.

A Gartner report citing $4.2B market size carries more weight than an agent's inference from incomplete data. Both update beliefs, but by different amounts.

Evidence Types

Different evidence types carry different weight:

TypeDescription
measurementAudited metric, verified data point
citationResearch report, external source with provenance
user-assertionUser explicitly stated this
expert-judgmentExpert opinion with rationale
inferenceAgent-derived inference from available data
assumptionExplicit assumption, no supporting evidence

A single verified measurement shifts confidence more than several inferences. The SDK calibrates the weight of each type so that evidence quality matters, not just volume.

Direction

Every piece of evidence has a direction:

  • supports. Increases confidence in the claim.
  • refutes. Decreases confidence in the claim.
  • neutral. Adds information weight without shifting direction.

When the research agent finds a Gartner report supporting "Market size is $4.2B," confidence increases. When it finds an SEC filing showing a smaller number, that refuting evidence decreases confidence. Both are captured. Nothing is discarded.

Extraction

The SDK extracts beliefs automatically when you pass output to after. You do not need to parse agent outputs yourself.

1// Beliefs are extracted from the output automatically
2const delta = await beliefs.after(result.text)

With an adapter, the lifecycle is wired up for you:

1const agent = createAgent({
2  hooks: beliefsHooks(beliefs, { capture: 'all' }),
3})

Manual Assertion

When you have domain-specific knowledge, you can add beliefs explicitly:

1await beliefs.add('Market size is $4.2B', {
2  confidence: 0.85,
3  type: 'assumption',
4})

Manual assertions and automatic extraction feed the same update pipeline.

Intent

Goals, gaps, and the normative layer.

Learn more

Core API

The full SDK API surface.

Learn more
PreviousExamples
NextIntent

On this page

  • What a Belief Is
  • Belief Types
  • How Confidence Works
  • Evidence Types
  • Direction
  • Extraction
  • Manual Assertion