Skip to main content
MuBit is primarily a memory engine, but it also exposes explicit planning-state routes when you want to persist orchestrator state next to memory. Use these surfaces when goals, variables, actions, or cycle history need to survive retries, handoffs, or long-running workflows. For most memory use cases, start with remember, recall, getContext, checkpoint, and the learning-loop APIs.

State method families

DomainTypical purpose
VariablesSmall explicit run-scoped state values
ConceptsNamed planner concepts / controlled vocabulary
GoalsGoal trees and roll-up planning state
Actions and cyclesAction logs and planning / reasoning history

Current route groups

CapabilityRoutes
Variables/v2/control/variables/set, /v2/control/variables/get, /v2/control/variables/list, /v2/control/variables/delete
Concepts/v2/control/concepts/define, /v2/control/concepts/list
Goals/v2/control/goals/add, /v2/control/goals/update, /v2/control/goals/list, /v2/control/goals/tree
Actions and cycles/v2/control/actions/submit, /v2/control/actions/log, /v2/control/cycles/run, /v2/control/cycles/history
  • Keep explicit state in the same run_id / session_id as the memory it explains.
  • Use goals for planner structure; use lessons and rules for reusable learned behavior.
  • Use actions and cycles for replayability and debugging, not as a substitute for memory retrieval.
  • Use checkpoints when the task is about to compact or cross a risky boundary.

Failure modes and troubleshooting

SymptomRoot causeFix
Planner state exists but the model still forgets thingsOnly state was stored, not memoryPersist facts, lessons, or rules alongside variables/goals
Goal trees become noisyNo hierarchy disciplineUse parent-child goals and retrieve with goals/tree
Debugging is hardActions and cycles are missingRecord planner decisions explicitly

Next steps