How Athena Works
What Athena Learns
As you work with Athena, it identifies and stores durable knowledge — things that will be useful in future sessions. Here’s what it captures.
Rules
Constraints that always apply to your org. Rules are injected into every conversation.
- “Use snake_case for database columns”
- “Never import from the internal/ directory in client code”
- “All API responses must include a
requestIdfield”
Decisions
Architectural or technical choices that have been made. Decisions prevent Athena from re-debating settled questions.
- “We chose PostgreSQL over MongoDB for the primary datastore”
- “Authentication uses JWT with Vault Transit signing”
- “The billing system uses a prepaid hours model”
Codebase Insights
Patterns, conventions, and gotchas about your codebase.
- “The
useAuthhook must be called insideAuthProvider” - “Database migrations are in
packages/db/migrations/and numbered sequentially” - “The gateway caches L3 context for 1 hour”
Preferences
How you and your team prefer to work.
- “Prefer explicit error handling over try/catch blocks”
- “Use Vitest for testing, not Jest”
- “Keep PR descriptions concise — 3 bullets max”
Error Patterns
Known errors and their solutions, so Athena can fix them faster next time.
- “
ECONNREFUSED on port 5432— Postgres container isn’t running, runjust dev-infra” - “
Module not found: @platform/logger— Runnpm run buildin packages/logger first”
Other Types
Athena also tracks atoms (reusable units of work), pipelines (multi-step workflows), people (team members), tooling (systems of record), and more. These are stored on disk and retrieved when relevant.
What Athena Doesn’t Store
- Secrets — API keys, passwords, and tokens are detected and rejected before storage
- Ephemeral context — Temporary debugging steps or one-off questions aren’t stored
- Raw code — Athena stores knowledge about code, not the code itself