This guide is an alphabetical reference for the vocabulary used across the Jidoka docs, source, and tests. Each entry gives a short definition, the module that owns the contract, and the guide that explains the concept in context. Use it as a lookup when a term appears in another guide and you want a one-line anchor before reading further.

When To Use This

  • Use this guide when a term in another Jidoka guide or doctring needs a precise definition.
  • Use this guide as a starting point for navigating module-level docs: every row links to the canonical module.
  • Do not use this guide as a tutorial. The terms here assume you have already read Getting Started.

Prerequisites

  • A working install of :jidoka and the ability to open module docs with h Jidoka.<Module> in IEx.
  • Familiarity with Getting Started so the term shapes (spec, plan, harness, turn) are not new.

Concepts

Three concept buckets organize every term in this guide:

  1. Authoring: how an agent is defined. Examples: Agent, DSL, Import, Instructions, Spec, Tool.
  2. Data contracts: immutable values that flow through the runtime. Examples: Plan, Turn.Request, Turn.Result, Effect.Intent, Snapshot, Event.
  3. Execution: process- or capability-side machinery that interprets data. Examples: Harness, Runtime, Capability, AgentServer, Memory.Store.

The diagram below shows how the most central terms relate inside a single turn.

╭───────────╮   ╭────────────╮   ╭──────────╮   ╭────────────╮
│ DSL/Import│──▶│ Agent.Spec │──▶│ Turn.Plan│──▶│  Harness   │
╰───────────╯   ╰────────────╯   ╰──────────╯   ╰─────┬──────╯
                                                      │
                            ╭─────────────────────────┴──────────────────────╮
                            ▼                                                ▼
                      ╭───────────╮                                    ╭──────────╮
                      │ Capability│ ⇄ Effect.Intent / Effect.Result ⇄  │ Journal  │
                      ╰───────────╯                                    ╰──────────╯
                            │
                            ▼
                      ╭────────────╮            ╭──────────────╮
                      │ Turn.Result│   or       │  Snapshot    │
                      ╰────────────╯            ╰──────────────╯

How To Read An Entry

Each row in the table follows the same shape:

  • Term: the canonical name as it appears in source, tests, and docs.
  • Definition: one paragraph; precise rather than friendly.
  • Module: the implementation home. Backtick-link to open the module doc.
  • Guide: the guide that introduces the term in context (when one exists).

Aliases are spelled out where they are common. For example, Spec is shorthand for Jidoka.Agent.Spec; the row lives under Agent.Spec with Spec listed as an alias.

Glossary

TermDefinitionModuleGuide
ActionJidoka's thin wrapper over Jido.Action. An action is the canonical implementation of a tool: a module with a name, description, parameter schema, and run/2 callback. Actions are turned into operations at compile time.Jidoka.ActionAgent DSL
AgentThe author-facing concept of a Jidoka agent: a Spark DSL module that compiles to an immutable spec. An agent is not a process; it is a definition that can be planned, run, hosted, or imported.Jidoka.AgentAgent DSL
Agent.SpecImmutable definition data for one agent (id, model, instructions, generation, controls, operations, context schema, result schema, memory policy, metadata). DSL modules and JSON/YAML imports both compile to this struct. Alias: Spec.Jidoka.Agent.SpecAgent DSL
AgentServerThe Jido process that hosts a Jidoka agent. Turns sent to a process arrive as jidoka.turn.run signals and are dispatched into the same harness as direct calls.Jido.AgentServerRuntime And Harness
AgentSnapshotSerializable semantic snapshot used for hibernate/resume. Contains the schema version, snapshot id, agent id, cursor, and turn state. Snapshots are pure data and safe to persist. Alias: Snapshot.Jidoka.Runtime.AgentSnapshotRuntime And Harness
AgentViewSurface-neutral UI projection of an agent's status, last result, pending interrupts, and event tail. Used by LiveView, CLI, channels, and tests; never holds a pid or provider client.Jidoka.AgentViewRuntime And Harness
CapabilityA runtime function injected into the harness for a single turn. The bundle currently has two slots: llm and operations. Capabilities are what make turns either deterministic (fakes) or live (ReqLLM, Jido actions).Jidoka.Runtime.CapabilitiesRuntime And Harness
CheckpointThe named phase boundary at which the runtime is allowed to hibernate. Configured per turn through the checkpoint: option; possible phases include :after_prompt, :before_effect, :review, and :wait.Jidoka.Turn.CursorRuntime And Harness
ContextCaller-supplied per-turn map merged into the turn request. Validated against the spec's context_schema before the workflow runs. Context is data only; it never contains processes or clients.Jidoka.Turn.RequestAgent DSL
ControlA policy module attached to a spec at one of three boundaries: input, operation, or output. Controls return :allow, {:block, reason}, or {:interrupt, reason} and run in the runtime shell.Jidoka.ControlControls
DSLThe Spark-based authoring surface used by use Jidoka.Agent. Provides the agent, controls, and tools sections plus compile-time verifiers.Jidoka.AgentAgent DSL
EffectThe umbrella name for anything the runtime has to ask the outside world to do (currently :llm and :operation). Effects are described by intents and observed through results.Jidoka.Effect.IntentRuntime And Harness
Effect.IntentThe durable data description of one external effect (kind, payload, idempotency key). Intents are written to the journal before any capability is called.Jidoka.Effect.IntentRuntime And Harness
Effect.JournalIntent/result map that makes the loop replayable. The interpreter records an intent before calling a capability and short-circuits any intent that already has a recorded result.Jidoka.Effect.JournalRuntime And Harness
Effect.ResultNormalized result of an interpreted effect (status, output, metadata). One result is written per intent id.Jidoka.Effect.ResultRuntime And Harness
EvalA small deterministic eval runner that packages an agent, request, and assertions. It runs through Jidoka.Harness rather than introducing a parallel runtime.Jidoka.EvalRuntime And Harness
EventNeutral harness data emitted by turn transitions (turn started, prompt assembled, effect started, control allowed, approval requested, etc.). Events feed traces, streams, and AgentView.Jidoka.EventRuntime And Harness
GenerationProvider-neutral generation parameters on a spec (temperature, max_tokens, top_p, etc.). Defaults come from Jidoka.Config.default_generation/0.Jidoka.Agent.Spec.GenerationAgent DSL
HandoffDurable routing data that records which agent should own future turns for a conversation. Different from a subagent call, which delegates one bounded task inside a turn.Jidoka.HandoffRuntime And Harness
HarnessThe named execution boundary around the Jidoka kernel. Owns run_turn/3, resume/2, request normalization, capability normalization, memory wiring, and session/store integration.Jidoka.HarnessRuntime And Harness
HibernateThe act of pausing a turn at a checkpoint and emitting an AgentSnapshot instead of a Turn.Result. Used for human review pauses and externally driven resumes.Jidoka.Runtime.AgentSnapshotRuntime And Harness
IdempotencyPer-operation policy that tells the runtime how to treat repeated effects. Valid values: :pure, :idempotent, :dedupe, :reconcile, :unsafe_once. :unsafe_once requires a matching operation control.Jidoka.Agent.Spec.OperationControls
ImportThe runtime that parses JSON/YAML into an Agent.Spec. Imports never call String.to_atom/1 on input; module and schema refs are resolved through caller-provided registries.Jidoka.ImportAgent DSL
InspectionInternal module that powers Jidoka.inspect/1 and Jidoka.preflight/3. Returns stable, human-readable projections of agents, plans, turns, and snapshots.Jidoka.InspectionGetting Started
InstructionsThe system-prompt-shaped string attached to a spec. Skills and memory contributions can extend instructions at runtime; the stored value is still data.Jidoka.Agent.SpecAgent DSL
JidoThe underlying process/agent framework that owns supervision, registries, signals, and action runtime. Jidoka treats Jido as a hosting and tool runtime; it does not embed Jido logic in the turn spine.JidoRuntime And Harness
JidokaThe package itself: a data-first agent harness that compiles authored agents to a Spec, plans them into a Turn.Plan, and runs them through a thin harness.JidokaGetting Started
LLMThe language-model capability slot. The runtime treats the model as an effect; an LLM capability is a 2-arity function over (intent, journal) returning a typed decision.Jidoka.Runtime.CapabilitiesLive LLM Tool Loop
LLMDecisionTyped decision returned by an LLM effect. Either :final (with content and optional structured result) or :operation (with name and arguments).Jidoka.Effect.LLMDecisionLive LLM Tool Loop
MCPOperation source for tools exposed by a Model Context Protocol server. Compiles MCP tool descriptors into Agent.Spec.Operation data plus an operation capability that invokes the MCP transport.Jidoka.Operation.SourceAgent DSL
MemoryVisible agent memory: entries recalled into prompts or context, optionally captured from completed turns. The spec stores policy; runtime stores live behind the Memory.Store behaviour.Jidoka.MemoryRuntime And Harness
Memory.StoreBehaviour for pluggable memory backends. A store implements recall/2, write/2, and list_entries/1. The store is supplied per run, not baked into the spec.Jidoka.Memory.StoreRuntime And Harness
OperationA model-callable unit (name, description, idempotency, metadata, optional parameters schema). Operations are how tools, MCP, browser, workflows, and subagents reach the model in a single shape.Jidoka.Agent.Spec.OperationAgent DSL
Operation.SourceBehaviour and compiler that normalize executable surfaces (actions, MCP, browser, workflows) into operation data plus one operation capability.Jidoka.Operation.SourceAgent DSL
OutputA control boundary that runs against the model's final assistant content before it leaves the harness. Used for safety filters, redaction, and post-validation.Jidoka.Agent.Spec.Controls.OutputControls
PlanShorthand for Turn.Plan. The compiled, executable contract derived from a spec.Jidoka.Turn.PlanRuntime And Harness
PreflightJidoka.preflight/3. Assembles the prompt, tool metadata, memory contributions, and request normalization without calling an LLM. The cheapest way to validate wiring.Jidoka.InspectionGetting Started
ProjectionStable inspection map produced by Jidoka.project/1. Projections omit Zoi schemas, LLMDB structs, and Spark metadata while keeping the semantic shape useful for traces, golden tests, and UI rendering.Jidoka.ProjectionRuntime And Harness
RequestShorthand for Turn.Request. Input for one agent turn: input string, request id, agent state, context, and metadata.Jidoka.Turn.RequestGetting Started
ResultShorthand for Turn.Result. The value turn/3 returns on success: content, optional structured value, agent state, journal, and events.Jidoka.Turn.ResultStructured Results
ResumeThe act of continuing from an AgentSnapshot. The same harness runs as a fresh turn; callers supply the same capabilities plus any required approval response.Jidoka.HarnessRuntime And Harness
ReqLLMThe third-party provider client used to make live model calls. Jidoka wraps ReqLLM behind a small adapter that emits typed LLMDecision values.Jidoka.Runtime.ReqLLMLive LLM Tool Loop
ReviewThe collection of structs and runtime helpers that model human-in-the-loop pauses (Review.Request, Review.Response, Review.Interrupt).Jidoka.ReviewControls
RunicThe pure workflow engine that owns the turn spine. Jidoka compiles its phases into a Runic workflow so transitions stay deterministic and inspectable.Runic.WorkflowRuntime And Harness
RuntimeThe shell modules under Jidoka.Runtime.* that implement capabilities, controls, signals, and the turn runner. Effectful by design, kept around the pure core.Jidoka.Runtime.TurnRunnerRuntime And Harness
SessionThe ergonomic facade for durable multi-turn state. Delegates to Jidoka.Harness.Session for the underlying data shape.Jidoka.SessionRuntime And Harness
SkillA Jido.AI skill referenced by an agent. Skills contribute prompt instructions and any actions published by the skill manifest; those actions are executed through the standard Jido action operation path.Jidoka.SkillAgent DSL
SnapshotSee AgentSnapshot.Jidoka.Runtime.AgentSnapshotRuntime And Harness
SourceSee Operation.Source.Jidoka.Operation.SourceAgent DSL
SparkThe DSL framework used to build the Jidoka agent DSL. Provides sections, entities, verifiers, formatter support, and source-aware errors.Spark.Dsl.ExtensionAgent DSL
SpecSee Agent.Spec.Jidoka.Agent.SpecAgent DSL
StoreSee Memory.Store or Jidoka.Harness.Store depending on context: harness stores persist sessions and snapshots, memory stores persist memory entries.Jidoka.Harness.StoreRuntime And Harness
StreamRequest-scoped helper for observing Jidoka.Event values as a turn runs. Callers opt in with stream_to: pid or on_event: fun.Jidoka.StreamRuntime And Harness
SubagentA bounded delegation to another agent for one task inside the current turn. Different from a handoff, which permanently changes conversation ownership.Jidoka.Agent.Spec.OperationAgent DSL
ToolThe author-facing name for a model-callable capability. In Jidoka, tools are normally Jidoka.Action modules and compile to Operation data.Jidoka.ActionAgent DSL
TraceProjection helpers that turn events into a compact, sequence-stable timeline. Useful for debugging and golden tests.Jidoka.TraceRuntime And Harness
TurnOne model/tool cycle: assemble prompt, plan model effect, apply model result, plan operation effects, apply operation results. The harness runs one turn per turn/3 call.Jidoka.Turn.PlanGetting Started
Turn.PlanThe executable plan compiled from a spec. Holds the spec, workflow profile, max_model_turns, timeout, and phase list. Still pure data.Jidoka.Turn.PlanRuntime And Harness
Turn.ResultThe final app-facing result of one turn: content, optional structured value, agent state, journal, and events.Jidoka.Turn.ResultStructured Results
Turn.StateThe ephemeral, in-flight data value the workflow threads through each phase. Hibernation snapshots the state at a checkpoint; resume rebuilds the runner from that snapshot.Jidoka.Turn.StateRuntime And Harness
Unsafe OnceIdempotency level for operations whose effects must not be replayed. Spec validation requires a matching operation control before such an operation can ship in a plan.Jidoka.Agent.Spec.OperationControls
WorkflowAn application-owned deterministic process exposed to an agent as a single model-callable operation. Different from the Runic turn spine: the agent chooses when to call it, the workflow module owns the ordered process inside run/2.Jidoka.WorkflowAgent DSL

Common Patterns

  • Look up before you read. When another guide uses a term you have not seen, find the row here first; the linked module doc is usually one line of context away.
  • Prefer canonical names. Use Agent.Spec instead of Spec in code comments and PR descriptions so search across the codebase stays reliable.
  • Keep aliases stable. Snapshot, Spec, Plan, Request, and Result are the common short forms; everything else should use the full name.

Troubleshooting

SymptomLikely CauseFix
A term in a doctring is not in this table.The term is application-level vocabulary, not Jidoka vocabulary.Confirm by searching lib/jidoka for the term. If it is internal Jidoka vocabulary, add a row here.
A linked module raises function not found.The module was renamed or moved.Run mix compile and search lib/ for the new home, then update the row.
Two guides use the term differently.One guide is stale.Pick the meaning that matches the current module doc and open an issue against the stale guide.

Reference

Top-level modules referenced throughout this glossary: