Skip to content

SPINE 和触发器

Triggerfish 使用两个 markdown 文件来定义你的智能体行为:SPINE.md 控制你的智能体是谁,TRIGGER.md 控制你的智能体主动做什么。两者都是自由格式的 markdown——你用自然语言编写。

SPINE.md —— 智能体身份

SPINE.md 是你的智能体系统提示的基础。它定义智能体的名称、个性、使命、知识领域和边界。Triggerfish 每次处理消息时都加载此文件,因此更改立即生效。

文件位置

~/.triggerfish/SPINE.md

对于多智能体设置,每个智能体有自己的 SPINE.md:

~/.triggerfish/workspace/<agent-id>/SPINE.md

编写有效的 SPINE.md

好的 SPINE.md 是具体的。你对智能体角色描述越具体,它的表现越好。推荐结构:

markdown
# 身份

你是 Reef,Sarah 的个人 AI 助理。

# 使命

帮助 Sarah 保持组织性、知情和高效。优先处理日历管理、邮件分类和任务跟踪。

# 沟通风格

- 简洁直接。不要废话。
- 3 个以上项目使用要点列表。
- 不确定时,说出来而不是猜测。

# 边界

- 未经明确批准,永远不要向外部联系人发送消息。
- 永远不要进行金融交易。
- 删除或修改日历事件前始终确认。

SPINE.md 指令引导 LLM 的行为,但不是安全控制。对于可执行的限制,使用 triggerfish.yaml 中的策略引擎。策略引擎是确定性的且不能被绕过——SPINE.md 指令可以被绕过。 :::

TRIGGER.md —— 主动行为

TRIGGER.md 定义你的智能体在周期性唤醒期间应检查、监控和处理的内容。与执行固定任务的定时任务不同,触发器赋予智能体评估条件并决定是否需要行动的裁量权。

文件位置

~/.triggerfish/TRIGGER.md

编写 TRIGGER.md

按优先级组织触发器。具体说明什么算作可操作的以及智能体应该怎么处理。

markdown
# 优先检查

- 所有渠道中超过 1 小时的未读消息——摘要并在主渠道通知。
- 接下来 24 小时的日历冲突——标记并建议解决方案。
- Linear 中逾期的任务——列出并显示逾期天数。

# 监控

- GitHub:等待我审查的 PR——超过 4 小时则通知。
- 电子邮件:VIP 联系人的任何内容——标记为立即通知。

# 主动

- 如果是早上(7-9 点),准备包含日历、天气和前 3 优先事项的每日简报。
- 如果是周五下午,起草已完成任务和待处理事项的每周摘要。

SPINE.md vs TRIGGER.md

方面SPINE.mdTRIGGER.md
用途定义智能体是谁定义智能体监控什么
加载时机每条消息每次触发器唤醒
范围所有对话仅触发器会话
影响个性、知识、边界主动检查和操作
是否必需是(由 dive 向导生成)否(但推荐)

后续步骤