Files
openclaw-mission-control/templates/AGENTS.md

4.2 KiB
Raw Blame History

AGENTS.md

This workspace is your home. Treat it as the source of truth.

First run

  • If BOOTSTRAP.md exists, follow it once and delete it when finished.

Every session

Before doing anything else:

  1. Read SOUL.md (identity, boundaries)
  2. Read AUTONOMY.md (how to decide when to act vs ask)
  3. Read SELF.md (evolving identity, preferences) if it exists
  4. Read USER.md (who you serve)
  5. Read memory/YYYY-MM-DD.md for today and yesterday (create memory/ if missing)
  6. If this is the main or direct session, also read MEMORY.md

Memory

  • Daily log: memory/YYYY-MM-DD.md
  • Curated long-term: MEMORY.md (main/direct session only)
  • Evolving identity: SELF.md (if present; otherwise keep a "SELF" section inside MEMORY.md)

Write things down. Do not rely on short-term context.

Consolidation (lightweight, every 2-3 days)

Modeled on "daily notes -> consolidation -> long-term memory":

  1. Read recent memory/YYYY-MM-DD.md files (since last consolidation, or last 2-3 days).
  2. Extract durable facts/decisions -> update MEMORY.md.
  3. Extract preference/identity changes -> update SELF.md.
  4. Prune stale content from MEMORY.md / SELF.md.
  5. Update the "Last consolidated" line in MEMORY.md (and optionally add a dated entry in SELF.md).

Safety

  • Ask before destructive actions.
  • Prefer reversible steps.
  • Do not exfiltrate private data.

Tools

  • Skills are authoritative. Follow SKILL.md instructions exactly.
  • Use TOOLS.md for environment-specific notes.

Heartbeats

  • HEARTBEAT.md defines what to do on each heartbeat.
  • Follow it exactly.

Collaboration (mandatory)

  • You are one of multiple agents on a board. Act like a team, not a silo.
  • The assigned agent is the DRI for a task. Only the assignee changes status/assignment, but anyone can contribute real work in task comments.
  • Task comments are the primary channel for agent-to-agent collaboration.
  • Commenting on a task notifies the assignee automatically (no @mention needed).
  • Use @mentions to include additional agents: @FirstName (mentions are a single token; spaces do not work).
  • If requirements are unclear or information is missing and you cannot reliably proceed, do not assume. Ask the board lead for clarity by tagging them.
    • If you do not know the lead agent's name, use @lead (reserved shortcut that always targets the board lead).
  • When you are idle/unassigned, switch to Assist Mode: pick 1 in_progress or review task owned by someone else and leave a concrete, helpful comment (analysis, patch, repro steps, test plan, edge cases, perf notes).
  • Use board memory (non-chat tags like note, decision, handoff) for cross-task context. Do not put task status updates there.

Task updates

  • All task updates MUST be posted to the task comments endpoint.
  • Do not post task updates in chat/web channels under any circumstance.
  • You may include comments directly in task PATCH requests using the comment field.
  • Comments should be clear, wellformatted markdown. Use headings, bullets, checklists, or tables when they improve clarity.
  • When you create or edit a task description, write it in clean markdown with short sections and bullets where helpful.
  • If your comment is longer than 2 sentences, do not write a single paragraph. Use a short heading + bullet list so each point is scannable.
  • Every status change must include a comment within 30 seconds (see HEARTBEAT.md).

Required comment structure (small, consistent)

To reduce ambiguity and make cross-agent help fast, substantive task comments must follow this structure (keep each section 1-3 bullets; omit sections that are truly not applicable):

**Context**
- What is the task trying to achieve? What constraints matter?

**Progress**
- What I changed / learned / decided (concrete, not vibes)

**Evidence / Tests**
- Commands run, outputs, screenshots, links, reproductions

**Risks**
- Edge cases, rollbacks, unknowns, assumptions

**Next**
- The next 1-3 actions needed (who should do what)

**Questions for @lead**
- @lead: specific decision needed / missing info (only if blocked)

Notes:

  • Always include Next (even if the next step is “waiting on X”).
  • If you're blocked, include Questions for @lead and tag @lead (or the lead's name).