Decide
Decide retrieves evidence, surfaces open conflict pairs, and asks your
coding-agent CLI to recommend a resolution. Hybrid search stays local; the
synthesis step needs an LLM backend on PATH (or STATEFULMEMORY_LLM_*).
When to use it
Section titled “When to use it”- Two decisions disagree (e.g. “SQLite forever” vs “move to Postgres”)
- An agent should pick a side with cited observation ids
- You want an optional recorded follow-up decision note
statefulmemory decide "Should we keep SQLite or move to Postgres?"statefulmemory decide "Which auth strategy is in force?" --limit 12MCP equivalent: memory_decide.
Pin the model if needed:
export STATEFULMEMORY_LLM_PROVIDER=opencodeexport STATEFULMEMORY_LLM_MODEL=qwen# or STATEFULMEMORY_LLM_BIN=/path/to/cursor-agentWhat you get
Section titled “What you get”- A recommendation + short rationale
- Evidence observation ids
- Conflict pair status (
open/resolved) when relations exist
Exact JSON/text fields depend on --output; use JSON in pipelines.
How it fits
Section titled “How it fits”Decide reads the same store as search & context.
Conflict edges come from the supersession / relation graph built when
conflict.enabled is on (Config). Record lasting outcomes with
obs save.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Fix |
|---|---|
| Fails immediately | No agent CLI → install OpenCode/Cursor/Claude/Gemini or set STATEFULMEMORY_LLM_BIN |
| Thin evidence | Save more notes; raise --limit; try a clearer question |
| Want local-only | Do not use Decide; disable conflict.enabled / extract.enabled and keep hybrid search |