【免费下载链接】skillpack
Pack and deploy local AI agents for your team in minutes
SkillPack 是开源的本地 AI Agent 打包部署工具,除了skillpack.json和技能目录之外,它还提供两个隐藏文件:AGENTS.md(Agent 行为准则)和SOUL.md(Agent 人格设定)。只需在 pack 根目录放好这两个文件,你的 AI Agent 就会带着团队的规则约束和独特的"性格"运行——无需修改任何配置项。🎯
30秒看懂:SkillPack 里的两个"灵魂文件"
一个完整的 SkillPack 包长这样:
<pack-name>/ ├── skillpack.json # pack 配置 ├── AGENTS.md # 可选:行为准则(policy) ├── SOUL.md # 可选:人格与表达风格(persona) ├── skills/ # 已安装的技能 ├── start.sh # macOS / Linux 一键启动 └── start.bat # Windows 一键启动两个文件都是可选的,不写入skillpack.json,也不需要任何 CLI 参数,它们会像普通文件一样随目录和 zip 包一起分发:
| 文件 | 角色定位 | 管什么 |
|---|---|---|
AGENTS.md | 行为准则(policy) | 工作流程、安全边界、输出规范、必须/禁止事项 |
SOUL.md | 人格设定(persona) | 语气风格、称呼方式、工作风格 |
打个比方:AGENTS.md是员工的员工手册,SOUL.md是员工的性格气质。前者划定底线,后者决定"说话像谁"。✨
AGENTS.md 快速上手:三步写出行为准则
第 1 步:在 pack 根目录新建AGENTS.md,用自然语言写清规则即可。
第 2 步:聚焦三类内容
- 流程规范:先做什么、后做什么,产出放在哪里
- 安全边界:哪些操作禁止执行(如不得删除用户文件、不得外发敏感数据)
- 输出标准:报告格式、语言、交付物要求
第 3 步:保存即可生效(对新 session 生效),无需重启打包或改动任何 JSON。
一个客服 Agent 的例子:
# 行为准则 - 回答必须基于用户提供的信息,不确定时主动追问,禁止编造。 - 涉及退款操作前,必须先向用户确认订单号。 - 最终回复使用中文,控制在 200 字以内。 - 禁止向用户透露内部流程细节。SOUL.md 快速上手:给 Agent 注入"性格"
SOUL.md只负责定义人格、语气和工作风格,不能覆盖任务目标与安全规则。写人格时建议包含:
- 角色身份:"你是一位……"
- 语气风格:严谨 / 活泼 / 简洁 / 幽默
- 表达习惯:是否使用 emoji、是否分点列举
示例(一个研究助理):
# 人格设定 你是一位严谨的学术研究助理。 - 语气克制、客观,结论先行,再给论据。 - 重要数据必须标注来源,不确定处明确说明置信度。 - 不使用夸张形容词,避免营销腔。💡 小建议:两个文件都按原文注入 prompt,运行时不做摘要或改写,所以写多少就注入多少——保持精简,避免浪费上下文窗口。
底层原理:SkillPack 如何注入这两个文件
SkillPack 不依赖宿主机器上任何自动发现的上下文文件,而是由运行时自己读取这两个文件并拼装成一个结构化区块,附加到最终 system prompt。核心实现见 buildPackPromptBlock,它组装的区块自带优先级说明:
- 用户当次显式指令优先级最高
AGENTS.md作为 pack 的运行策略与工作流规则SOUL.md作为人格、语气与工作风格- 两者冲突时,
AGENTS.md获胜 SOUL.md不能覆盖任务目标、安全边界和AGENTS.md
这一注入逻辑在 src/runtime/agent.ts#L415-L424 中定义。完整设计说明可参考 docs/agent-and-soul.md。
三个关键特性
- 生效时机:仅在新 channel session 创建时读取一次,已有会话不热更新。改完文件后,开一个新对话即可看到效果。
- 宿主隔离:运行机器的全局
AGENTS.md、.pi/SYSTEM.md、APPEND_SYSTEM.md都不会影响该 pack——pack 完全掌控自己的人格层,团队分发时行为可复现。 - 容错降级:文件不存在或为空白时直接跳过对应区块;读取失败只记录 warning,不中断启动。日志中也能看到
[PackAgent] Loaded pack policy from ...之类的诊断信息,方便确认注入是否成功。
打包分发:zip 一条命令带走全部人格
执行打包时,AGENTS.md和SOUL.md会被自动打进 zip(存在才打包,不存在则跳过):
npx @cremini/skillpack zip打包逻辑在 src/commands/zip.ts#L94-L100。这意味着同事拿到 zip 解压后./start.sh一跑,Agent 的行为准则和人格原封不动地跟着包走——这正是 SkillPack "分钟级交付团队 Agent" 的关键能力。📦
注意:
create/create --config不会自动生成这两个文件,也不会为它们增加交互步骤,它们始终是"你写、你定"的 pack 资产。
常见问题 FAQ
Q1:只放其中一个文件可以吗?可以。两个文件相互独立,缺一个时只跳过对应区块,另一个照常注入。
Q2:SOUL.md 里写的规则会被执行吗?人格层面的风格建议会生效,但它不能推翻任务目标和AGENTS.md中的规则——设计文档明确AGENTS.md是 policy、SOUL.md是 persona,冲突时前者为准(见 docs/what-is-skillpack.md 的"Optional root context files"一节)。
Q3:改完文件为什么没生效?因为已有 session 不热更新。结束当前对话、发起新对话(新 session)后,运行时才会重新读取。
Q4:会影响 skillpack.json 的 schema 吗?不会。两个文件不属于 JSON 配置项,schema、CLI flags 均无变化(详见 docs/agent-and-soul.md)。
总结
| 要点 | 说明 |
|---|---|
| 放哪里 | pack 根目录AGENTS.md/SOUL.md |
| 管什么 | 行为准则 / 人格语气 |
| 何时生效 | 新 session 创建时读取一次 |
| 冲突规则 | 用户指令 > AGENTS.md > SOUL.md |
| 分发方式 | zip自动打包,随包分发 |
用两个 Markdown 文件,你就完成了从"通用模型"到"团队专属 Agent"的蜕变。动手试试:打开你的 pack 根目录,写下第一版SOUL.md,然后开一个新对话看看它的"性格"变化吧!🚀
【免费下载链接】skillpack
Pack and deploy local AI agents for your team in minutes
相关推荐
LobeHub Agent 人格文档设计:深入解析 Claw 策略集中的 SOUL.md 行为准则
LobeHub Agent 人格文档设计:深入解析 Claw 策略集中的 SOUL.md 行为准则 SOUL.md 是 LobeHub 仓库中 @lobecha
人工智能AI 应用大模型AI Agent多智能体工具调用前端后端OpenClaw 人格塑造实战:用 SOUL.md 为你的 AI Agent 定义身份、边界与语气
OpenClaw 人格塑造实战:用 SOUL.md 为你的 AI Agent 定义身份、边界与语气 导读 本文是 OpenClaw Mastery for Ev
文档教程人工智能大模型OpenSquilla 中 SOUL.md 的定位与写法:定义 Agent 持久化声音、语气与交互风格的完整指南
OpenSquilla 中 SOUL.md 的定位与写法:定义 Agent 持久化声音、语气与交互风格的完整指南 SOUL.md 是 OpenSquilla 每
人工智能大模型AI Agent交互助手工具调用MCP 服务Agent 记忆RAG本地部署
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考