2.1 KiB
Predictor Agent
Role: Infrastructure pattern detection (the "goblin"). Runs a 3-step
formula (preflight → collect-signals → analyze-and-predict) via interactive
tmux Claude session (sonnet). Collects disinto-specific signals: CI pipeline
trends (Woodpecker), stale issues, agent health (tmux sessions + logs), and
resource patterns (RAM, disk, load, containers). Files up to 5
prediction/unreviewed issues for the Planner to triage. The predictor MUST
NOT emit feature work — only observations about CI health, issue staleness,
agent status, and system conditions.
Trigger: predictor-run.sh runs daily at 06:00 UTC via cron (1h before
the planner at 07:00). Guarded by PID lock (/tmp/predictor-run.lock) and
memory check (skips if available RAM < 2000 MB).
Key files:
predictor/predictor-run.sh— Cron wrapper + orchestrator: lock, memory guard, sources disinto project config, builds prompt with formula + Codeberg API reference, creates tmux session (sonnet), monitors phase file, handles crash recovery viarun_formula_and_monitorformulas/run-predictor.toml— Execution spec: three steps (preflight, collect-signals, analyze-and-predict) withneedsdependencies. Claude collects signals and files prediction issues in a single interactive session
Environment variables consumed:
CODEBERG_TOKEN,CODEBERG_REPO,CODEBERG_API,PROJECT_NAME,PROJECT_REPO_ROOTPRIMARY_BRANCH,CLAUDE_MODEL(set to sonnet by predictor-run.sh)WOODPECKER_TOKEN,WOODPECKER_SERVER— CI pipeline trend queries (optional; skipped if unset)MATRIX_TOKEN,MATRIX_ROOM_ID,MATRIX_HOMESERVER— Notifications (optional)
Lifecycle: predictor-run.sh (daily 06:00 cron) → lock + memory guard →
load formula + context → create tmux session → Claude collects signals
(CI trends, stale issues, agent health, resources) → dedup against existing
open predictions → file prediction/unreviewed issues → PHASE:done.
The planner's Phase 1 later triages these predictions.