Jev classifier in tandem with the LLM Sentry

- Jev (TypeSafe, direct) triages mode and task type with confidence
- Its call stands at >= 70% on both and no split; otherwise the LLM
  Sentry decides (unsure, split needs subtasks, or Jev down)
- Jev flights obey the same budget, flock cap, timeout and log
- Tests for every path; flight log is nil-safe
- start.command reads TYPESAFE_API_KEY and threshold from .env

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UQnSw4RRWp8uqpj3nsnnXF
This commit is contained in:
SmokeyandClaude Opus 5.5 committed 2026-10-27 17:13:48 -06:00
1 parent 73cf298fee
commit 4499291231
8 files changed
+317 -3

No files matched your search

+5 -2
View File
@@ -7,6 +7,8 @@
# ANTHROPIC_API_KEY=... Claude direct from Anthropic (default: claude-sonnet-5-5)
# CROWS_PROVIDER=openrouter optional: pick one when both keys are present
# CROWS_MODEL=... optional: a specific model
# TYPESAFE_API_KEY=... Jev classifier for the Sentry's triage (LLM is the fallback)
# CROWS_JEV_THRESHOLD=0.7 optional: below this confidence, triage escalates to the LLM
# `./start.command --mock` forces offline mock crows.
#
# Listens on this Mac only (127.0.0.1:8080). State lives in .crows/ (delete it to start fresh).
@@ -17,9 +19,10 @@ chmod +x ./crows
# Read only these lines from .env; the file is never executed.
envval() { sed -n "s/^$1=//p" .env 2>/dev/null | head -n 1 | tr -d '[:space:]"'; }
unset ANTHROPIC_API_KEY OPENROUTER_API_KEY CROWS_PROVIDER CROWS_MODEL
VARS="ANTHROPIC_API_KEY OPENROUTER_API_KEY CROWS_PROVIDER CROWS_MODEL TYPESAFE_API_KEY CROWS_JEV_MODEL CROWS_JEV_THRESHOLD"
unset $VARS
if [ "$1" != "--mock" ]; then
for v in ANTHROPIC_API_KEY OPENROUTER_API_KEY CROWS_PROVIDER CROWS_MODEL; do
for v in $VARS; do
val="$(envval "$v")"
[ -n "$val" ] && export "$v=$val"
done