# Proactive Agent Pattern A proactive agent observes its environment, identifies improvements, and self-modifies within strict guardrails. This pattern is inspired by OpenClaw's proactive agent skill. ## When to use - Agents that run frequently and should improve over time - Pipelines with measurable performance metrics - Systems where the cost of not improving exceeds the risk of changes ## When NOT to use - Simple pipelines that just need to run reliably - Human-in-the-loop workflows (the human provides the feedback) - New systems that haven't established a performance baseline yet ## Components - **PROACTIVE-AGENT.md**: Agent template with proactive cycle, VFM protocol, self-healing - **ADL-RULES.md**: Anti-Drift Limits — constraints that prevent uncontrolled drift - **VFM-SCORING.md**: Value-First Modification — scoring rubric for proposed changes ## How ADL and VFM work together ADL defines what the agent CANNOT do (hard boundaries). VFM determines what the agent SHOULD do (prioritization within boundaries). ``` Proposed change → Check ADL constraints → BLOCKED if constraint violated → Score with VFM → IMPLEMENT if > 50, DEFER if <= 50 → Log decision either way ``` ## Integration with feedback loops The proactive agent reads from: - `feedback/FEEDBACK.md` — pipeline run outcomes - `budget/cost-events.jsonl` — cost data - `logs/audit.log` — tool call history - `memory/MEMORY.md` — long-term patterns It writes to: - Daily log (decisions and scores) - Its own agent file (when implementing approved changes) - SESSION-STATE.md (current proactive cycle state)