Yep — AGENTS.md is the right place for that kind of “operating rules / how to run the session” instruction set.
A couple important nuances in OpenClaw though:
-
You can’t enforce “load ONLY these files” just by writing it in AGENTS.md.
OpenClaw itself injects a fixed bootstrap set into the system prompt each run (by default: AGENTS.md, SOUL.md, TOOLS.md, IDENTITY.md, USER.md, HEARTBEAT.md, plus BOOTSTRAP.md on brand-new workspaces).
You can verify what’s actually injected with /context list.
Docs: https://docs.openclaw.ai/concepts/context
-
MEMORY.md is not auto-injected by default (unless you customized things). So your “DO NOT auto-load MEMORY.md” rule is mostly already aligned with how it works; you’re basically telling the agent “don’t go read it unless asked / unless needed”.
-
For your “update memory/YYYY-MM-DD.md at end of session” goal: OpenClaw already supports workflows/hooks that help with this:
If you truly want to change which files are injected (so it literally only injects your chosen subset), that’s more advanced: it’s done via a hook on agent:bootstrap that mutates context.bootstrapFiles, not via AGENTS.md. Docs: https://docs.openclaw.ai/hooks