Skip to main content

Overview

decide records an architectural decision in the shared workspace knowledge graph. The decision is stored with a semantic embedding (pgvector) for later search, auto-linked to the symbols it touches in the symbol graph, included in future sync responses for all agents, and visualized in the Knowledge Graph on the web dashboard. Because decisions link to symbols, when those symbols later change Enagrams marks the decision stale — surface them with decisions_stale and either decision_reaffirm or record a new superseding decision. For hard gates use convention_propose with tier=must instead — decisions are informational; must-tier conventions block edits until resolved.

Parameters

Decision Types

Response

Examples

Architecture decision

Rejected alternative

Convention

When to Call decide

  • When choosing a library, framework, or service
  • When deciding on a data model or API shape
  • When rejecting an approach (document it so others don’t revisit it)
  • When a pattern is used enough to become a convention
  • After fixing a non-obvious bug (record the root cause)
Decisions are permanent — they’re a historical record of how the codebase evolved. Don’t worry about over-recording. More decisions mean better context for future agents.