Skip to content

Query Mode

Query mode is DUUMBI’s read-only conversational mode. Use it when you want to understand the current workspace before making a change.

Query may:

  • inspect workspace modules, graphs, intents, dependencies, and session context
  • explain how a function, module, or intent fits together
  • compare possible changes and call out trade-offs
  • recommend an Agent or Intent handoff when a question turns into work
  • answer with source, confidence, model, and handoff metadata when available

Query must not:

  • patch the semantic graph
  • write files
  • create or execute intents
  • build as a side effect
  • silently turn a question into a mutation
Request shapePreferred modeBehavior
”What is…”, “Why…”, “Where…”, “Explain…”, “Compare…”QueryAnswer with evidence and no writes
”Add…”, “Fix…”, “Change…”, “Refactor this one thing…”AgentApply a bounded graph mutation after explicit handoff
”Build a feature…”, “Plan…”, “Implement with tests…”IntentCreate and execute an intent-driven plan
Ambiguous question with possible actionQueryExplain options and offer an explicit handoff

Start DUUMBI in a workspace:

Terminal window
duumbi

Use Query directly:

/query "what functions exist?"
/ask "why is this intent failing?"
/mode query

The mode cycle is:

query -> agent -> intent -> query

Query is the safe default because it preserves state. When DUUMBI suggests a write-capable next step, choose Agent or Intent explicitly.

What modules exist in this workspace?
Why did this intent fail validation?
Where should a power function live?
What changes if I modify this function signature?
Can you summarize the previous session?

For mutation-shaped prompts, Query should explain the likely work and suggest a handoff instead of applying changes:

User: Can you add clamp to math/ops?
Query: This requires a graph mutation. Suggested handoff: /agent "add clamp to math/ops"

Query uses the same provider configuration as Agent and Intent. Configure providers with [[providers]] entries and let DUUMBI route model choice through the provider catalog:

[[providers]]
provider = "anthropic"
role = "primary"
api_key_env = "ANTHROPIC_API_KEY"
[[providers]]
provider = "minimax"
role = "fallback"
api_key_env = "MINIMAX_API_KEY"

See the config reference and provider catalog for supported provider keys.

Query answers should be grounded in DUUMBI state. Good answers identify the workspace, graph node, intent, command output, session turn, or source document that supports the claim. When the answer is inferred, it should say so rather than presenting speculation as fact.