跳到主要内容

Agent Workspace

工作区是 agent 的家。包含配置、工作区上下文文件、skills、日志和存储。默认位置为 ~/.MushroomAgent/

目录结构

~/.MushroomAgent/
├── config.yaml # 主配置文件
├── prompts/ # init 生成的工作区上下文
│ ├── AGENTS.md # 规则与约束
│ ├── SOUL.md # 人格与语调
│ └── IDENTITY.md # 自我身份
├── HEARTBEAT.md # 工作区上下文:心跳检查清单
├── skills/ # 本地 skills 目录
├── storage/ # Agent 存储
└── logs/ # 运行时日志

根目录下的 AGENTS.mdSOUL.mdIDENTITY.md 仍然受支持;当根目录与 prompts/ 中同时存在同名文件时,根目录文件优先生效。

工作区上下文文件

Agent 在每次会话启动时读取这些文件,并将其内容注入系统 prompt:

文件用途注入时机
AGENTS.md项目规则、操作约束、执行边界每轮(除非被跳过)
SOUL.md人格与语调 — 语气、风格、角色每轮(除非被跳过)
IDENTITY.md规范的自我身份和角色每轮(除非被跳过)
HEARTBEAT.md心跳检查清单和指导仅心跳轮次

所有文件均为可选 — agent 只加载工作区中存在的文件。

加载行为

文件由 load_workspace_context_files() 加载,由 render_workspace_context_message() 注入:

  • 从工作区根目录读取文件
  • 按顺序加载(AGENTS.md → SOUL.md → IDENTITY.md)
  • 每个文件上限 4000 字符
  • 所有文件的上下文总计上限 12000 字符
  • 超出部分截断并标记:[truncated to fit prompt budget]
  • 如果存在 IDENTITY.md,agent 将其视为规范的自我身份来源
  • 缺失的文件静默跳过(不注入标记)

跳过上下文

config.yaml 中设置 agent.skip_context_files: true 可阻止注入任何工作区上下文文件。子 agent 默认使用此设置以保持隔离。

子 agent 工作区

通过 delegate_task 派生时,子 agent:

  • 完全跳过工作区上下文文件
  • quiet_mode: true 运行
  • 通过 ephemeral_system_prompt 接收任务指令
  • 与父 agent 共享同一工作区目录

参见