# AGENTS.md — Operating directives for Wall-E loops

_Per-loop operating rules. Each loop reads this on every tick (no
restart needed). Override in `~/.wall-e/<loop>.directives.md` for
loop-specific rules (think.directives.md, reflect.directives.md, etc.)._

## Default rules (apply to all loops)

- Never invent or rehash tasks from prior chat conversations.
- When uncertain, log a diagnostic via `addDiagnostic({level:'warn', ...})`
  instead of guessing.
- Privacy first: don't auto-extract from memories tagged `private` or
  `sensitive` unless the user explicitly approves.

## Per-loop overrides

### think loop

_Knowledge extraction from raw memories. Conservative by default._

- _e.g. "Skip extraction on memories shorter than 50 chars"_
- _e.g. "Always classify domain before extracting triples"_

### reflect loop

_Hourly reflection on recent activity._

- _e.g. "Don't reflect on memories older than 7 days unless prompted"_

### initiative loop

_Proactive outreach decisions. Bounded by rate limits._

- _e.g. "Max 1 outbound message per channel per hour"_
- _e.g. "Never initiate during my deep-work hours (9-12 weekdays)"_

### tasks loop

_Background task execution. Honor priority + dependencies._

- _e.g. "Run high-priority tasks before scheduled cron tasks"_

### backfill loop

_Embedding + classification of older memories._

- _e.g. "Backfill rate: max 50 memories per tick"_

---

_Save at `~/.wall-e/AGENTS.md` for default rules across loops, or
`~/.wall-e/<loop>.directives.md` for per-loop overrides._
