colonizer
install
docs Jev

#Jev: the external second opinion

Jev is an optional, default-off external classifier the harness may consult at a decision point — a place where it would otherwise apply a fixed rule. The harness asks one choice question with a closed set of options (never free text) and gets back a pick and a confidence; it may then ignore the pick, record it, or act on it, depending on the point's mode.

Every point runs through one shared layer (crates/colonizer/src/decide.rs), so the guarantees below hold for all of them. Jev is not required to boot: with no JEV_API_KEY secret and every point off, the harness makes zero network calls and every rule behaves exactly as before.

#Modes

#Hard limits

#Points

PointSettingsBudget
routing.tierjev_shadow_mode, jev_routing_act, jev_routing_act_confidence1800 ms
recovery.pathjev_shadow_mode, jev_recovery_act, jev_recovery_act_confidence, jev_recovery_cap1800 ms

#recovery.path

What to do when a step fails: a provider error, a tool failure, a watchdog stall, or autopilot_held. The closed option set is retry_same, retry_other_provider, narrow_task (split the work into smaller subagent tasks), nudge_agent, ask_human and stop. ask_human and stop are always offered; retry_other_provider only where a second provider exists (today neither call site can switch a running colony cheaply, so it is never offered). Nothing in the set pushes, publishes or deletes — those are not options.

#The ledger

Every ask at a point that is not off appends one row to decisions.jsonl in the data dir:

{ts, kind:"decision", point, session, repo, issue, mode, options, pick, confidence, latency_ms, miss, did, outcome}

Each ask also writes one activity line (GET /api/activity): decision.shadow for a shadow ask, decision.act for a used act pick, and decision.fallback for an act ask on the rule or any miss.

#Not this

Jev compaction (the token-saving pass over a transcript) is a separate feature with its own switch (jev_compaction) and ledger (jev_ladder.jsonl); see colonies.md, Measuring Jev compaction. Jev brief picks (jev_brief_shadow, crates/colonizer/src/brief_pick.rs) are also separate: a shadow-only measurement of which shared-memory notes and skill packs a colony would need, logged to brief_picks.jsonl, that does not go through the decision layer yet. A Settings UI showing each point's agreement rate is a follow-up.