Open-source cognitive control · OpenCode · TypeSafe JEV

Wisdom at runtime.

ATHENA turns agent behavior into observable state, detects unproductive loops and issues a single, evidence-backed change of strategy.

Operational wisdom

More effort is not always progress.

Most agent runtimes can act. Few can recognize when action has collapsed into repetition. ATHENA adds the missing judgment layer: observe, evaluate, protect and replan.

System architecture

Four forces. One decision.

ATHENA is not another model. It is a control layer around the model: a small system of specialized modules that converts runtime signals into deliberate intervention.

Aegis shield with the head of Medusa01 / Protection

AEGIS

Policy and protection. Decides whether intervention is permitted and keeps the session safe.

Metis with an owl, balance and astrolabe02 / Calibration

METIS

Signal calibration. Converts noisy events into confidence about stagnation, risk and progress.

Winged Nike raising a laurel wreath03 / Outcome

NIKE

Outcome judgment. Distinguishes useful movement from activity that only looks productive.

Labyrinth with a new exit, spear and owl04 / Strategy

REPLAN

One-shot strategy change. Queues a new direction without impersonating the user or looping itself.

Repository-backed reference

Documentation

Installation, architecture, policy, Tool Router, OpenCode integration and security — aligned with the current ATHENA repository.

Press / to search
Docs / OverviewVersion-aware reference

Guard and outcome

Judgment needs boundaries.

AEGIS prevents unsafe intervention. NIKE verifies whether the new strategy actually produces movement. Protection and outcome stay separate by design.

Engraved Aegis armor with the face of Medusa

AEGIS

The policy boundary. It turns a detection into an allowed, blocked or deferred action while preserving session invariants.

Engraved figure of Nike holding laurel wreaths

NIKE

The outcome judge. It measures whether the agent changed direction and whether that direction created useful progress.

OpenCode integration

Observe without becoming the user.

The adapter listens to runtime context, stores state per session and queues one controlled replan. It never injects a synthetic user message.

Read adapter docs