Tasks

Obligations, deadlines, habits, and goals - tracked across sessions. Tasks in Neotoma are versioned: status changes, reassignments, and deadline shifts are recorded as observations, not overwrites.

Store#

Store a task with any fields that describe it. Neotoma auto-discovers the schema from the first observation - no migration required.

MCP

store_structured({ entities: [ { entity_type: "task", title: "Review API rollout plan", status: "open", priority: "high", due_date: "2026-04-15", assigned_to: "Sarah Chen" } ], idempotency_key: "task-review-api-rollout-1710268800" })

CLI

neotoma store --json='[{ "entity_type": "task", "title": "Review API rollout plan", "status": "open", "priority": "high", "due_date": "2026-04-15", "assigned_to": "Sarah Chen" }]'

REST API

curl -X POST http://localhost:3080/api/store \ -H "Content-Type: application/json" \ -d '{ "entities": [{ "entity_type": "task", "title": "Review API rollout plan", "status": "open", "priority": "high", "due_date": "2026-04-15", "assigned_to": "Sarah Chen" }] }'

Common fields for task:

FieldExample
title"Review API rollout plan"
status"open"
priority"high"
due_date"2026-04-15"
assigned_to"Sarah Chen"

Fields are flexible - add any property your workflow needs. The schema evolves automatically via progressive schema enforcement.

Retrieve#

Query tasks by type, search by keyword, inspect version history, and traverse relationships.

CLI

# List open tasks neotoma entities list --type task # Search by keyword neotoma entities search --query "API rollout" --type task # See how a task changed over time neotoma observations list --entity-id <entity_id> # Find who a task is linked to neotoma relationships list --entity-id <entity_id>

MCP

// Find by title retrieve_entity_by_identifier({ identifier: "Review API rollout plan", entity_type: "task" }) // List recent tasks retrieve_entities({ entity_type: "task", limit: 20 }) // Check observation history list_observations({ entity_id: "<entity_id>" })

What your agent can answer#

With tasks stored in Neotoma, your agent can answer questions like:

  • “What tasks are due this week?”
  • “Show the history of status changes for the API rollout task”
  • “Which tasks are assigned to Sarah?”

What Neotoma guarantees#

Every task stored in Neotoma gets the same set of integrity guarantees:

  • Versioned history - Every change creates a new version. Previous states are always accessible.
  • Deterministic state - Same observations always produce the same entity snapshot.
  • Auditable provenance - Every field traces back to the observation that set it.
  • Schema validation - Fields conform to the discovered or defined schema.

See all memory guarantees compared across memory models.

Next steps#