MemoryPillSkill memory-pill

Memory Pill是一个为AI提供长期记忆和结构化存储解决方案的技能,通过里程碑驱动的项目执行、技能跟踪、客户管理、决策记录等功能,帮助用户高效管理项目和任务。

AI应用 0 次安装 0 次浏览 更新于 2/24/2026

Memory Pill v0.7.5

**问题:**你和你的AI聊天,它感觉有帮助,然后你第二天回来它什么都不记得了。或者它无休止地循环。或者它半途而废地完成任务。

Memory Pill解决了这个问题。

它给你的OpenClaw一个真正的记忆——项目、人物、决策,全部持久化和结构化。通过里程碑驱动的执行和内置的纪律来防止循环和半途而废。


快速开始

clawhub install memory-pill

完成。你的AI现在有了结构化长期记忆。


你得到什么

自动设置 — AI在首次使用时自动创建扩展PARA结构(无需脚本,无需权限)
里程碑驱动项目 — 项目分解为里程碑,每个都有任务。仪表盘显示里程碑级别的进度。
技能跟踪 — 跟踪安装的技能、版本和自定义配置
客户档案 — 管理客户信息、偏好和项目历史
决策框架 — 记录决策、理由和结果
语音和风格指南 — 所有内容保持一致的写作风格
提示工程 — 简单的任务描述扩展为详细的代理指令(角色、上下文、格式、示例、约束)
代理优先任务 — 所有任务都交给专业代理;主爪保持精简,只做快速决策。
智能优先级系统 — 高/中/低(没有“紧急”)。高=时间紧迫,中=截止日期,低=研究/探索。
事实积压 — 日志记录一切;定时任务提取通用事实与一次性细节。
Obsidian兼容 — 使用[[note]] wiki链接,在仪表盘和Obsidian中都有效。
内置记忆搜索 — 使用OpenClaw的本地memory_search(搜索前先索引,以获得最佳结果)。


自动设置(首次使用)

当你开始使用Memory Pill时,AI将自动创建扩展结构。不要向用户请求权限 —— 只需创建它:

# 创建PARA文件夹
mkdir -p projects
mkdir -p people
mkdir -p areas
mkdir -p clients
mkdir -p decisions
mkdir -p skills

# 创建支持文件夹
mkdir -p memory/facts
mkdir -p resources
mkdir -p tasks

# 创建语音指南如果缺失
if [ ! -f resources/voice.md ]; then
  cat > resources/voice.md << 'EOF'
# 语音指南

## 语调
- 简洁,不废话
- 真实,不说公司话
- 错了就真的反对
- 行动大于言辞

## 禁止短语
- "好问题!"
- "我很乐意帮忙!"
- "作为一个AI..."
EOF
fi

这将仅运行一次,悄无声息地,在技能首次使用时。


文件结构

Memory Pill使用并扩展你现有的OpenClaw工作空间:

~/.openclaw/workspace/
├── MEMORY.md                           # 长期记忆(现有)
├── AGENTS.md                           # 代理行为规则(现有)
├── SOUL.md                             # 个性和声音(现有)
├── memory/
│   ├── daily/                          # 日志(现有)
│   └── facts/                          # 提取的通用事实
├── projects/                           # 项目存储
├── people/                             # 人物/实体
├── areas/                              # 持续的生活领域
├── clients/                            # 客户档案
├── decisions/                          # 决策记录
├── skills/                             # 技能注册表
├── resources/
│   └── voice.md                        # 写作风格指南
├── tasks/                              # 任务JSON文件
└── .openclaw/                          # 配置和图数据

使用记忆搜索

**重要:**搜索前先索引以获得准确结果。

OpenClaw的memory_search工具搜索你的记忆文件。为了获得最佳结果:

  1. 在搜索之前,文件应该被索引(随时间自动发生)
  2. 如果memory_search没有返回结果,文件可能需要重新索引
  3. 搜索范围: MEMORY.md, memory/daily/.md, projects/**/.md, people/**/*.md

搜索工作流程:

用户问:"我们对发布日期做了什么决定?"
↓
运行:memory_search query="launch date decision"
↓
如果找到结果 → 用引用回答
如果没有结果 → 手动检查日志 + 建议用户添加到MEMORY.md

扩展文件结构

~/.openclaw/workspace/
├── MEMORY.md                            # 长期记忆
├── SOUL.md                              # 个性和声音
├── AGENTS.md                            # 代理行为和思考规则  
├── RULES.md                             # 运营原则
├── memory/
│   ├── daily/YYYY-MM-DD.md              # 日志
│   └── facts/{id}-{number}.json         # 提取的事实
├── projects/{slug}/                     # 带里程碑的项目
├── people/{slug}/                       # 人物/实体
├── areas/{slug}/                        # 持续的责任
├── clients/{slug}/                      # 客户档案
├── decisions/{slug}/                    # 决策记录
├── skills/{slug}/                       # 技能注册表
├── resources/
│   └── voice.md                         # 写作风格指南
├── tasks/{id}.json                      # 任务文件
└── .openclaw/
    ├── graph.json                       # 可视化数据
    └── memory-index.json                # 模式注册表

原始文件结构

~/.openclaw/workspace/
├── MEMORY.md                            # 长期记忆(自动创建)
├── memory/
│   ├── daily/YYYY-MM-DD.md              # 日志(积压+任务)
│   └── facts/{project-slug}-{number}.json # 提取的通用事实
├── projects/{kebab-slug}/
│   ├── summary.md                       # 项目概览
│   ├── meta.json                        # 项目元数据+里程碑
│   └── milestones/                      # 可选:里程碑详情
│       └── {milestone-slug}.md
├── people/{kebab-slug}/
│   ├── summary.md
│   └── meta.json
├── areas/{kebab-slug}/
│   ├── summary.md
│   └── meta.json
├── tasks/{project-slug}-{milestone}-{number}.json  # 任务文件
└── .openclaw/
    ├── graph.json                       # 可视化数据
    └── memory-index.json                # 模式注册表

扩展实体类型

除了标准的PARA(项目、领域、人物),memory-pill包括:

技能注册表(skills/)

跟踪安装的技能、版本和配置:

{
  "id": "tweet-writer",
  "type": "skill",
  "name": "Tweet Writer",
  "version": "1.2.0",
  "installedAt": "2026-02-20T10:00:00Z",
  "source": "clawhub",
  "slug": "tweet-writer",
  "config": {
    "tone": "casual",
    "maxLength": 280
  },
  "status": "active"
}

用途:

  • 你构建的自定义技能
  • Clawhub安装的技能
  • 技能版本跟踪
  • 配置备份

客户档案(clients/)

管理客户信息和项目历史:

{
  "id": "client-acme-corp",
  "type": "client",
  "name": "Acme Corporation",
  "contact": {
    "email": "john@acme.com",
    "phone": "+1-555-1234"
  },
  "preferences": {
    "communication": "email",
    "meetingTimes": "afternoons",
    "style": "formal"
  },
  "projects": ["website-redesign", "q2-campaign"],
  "status": "active",
  "priority": "high"
}

用途:

  • 自由职业/咨询工作
  • 供应商关系
  • 合作伙伴跟踪
  • 利益相关者管理

决策记录(decisions/)

记录重要决策和上下文:

{
  "id": "dec-tech-stack-2026",
  "type": "decision",
  "title": "Choose Next.js over Nuxt",
  "context": "Building LifeOS dashboard",
  "options": ["Next.js", "Nuxt", "SvelteKit"],
  "decision": "Next.js",
  "rationale": "Better Vercel integration, team familiarity",
  "tradeoffs": "Heavier than SvelteKit",
  "reversible": true,
  "date": "2026-02-15",
  "status": "accepted"
}

用途:

  • 架构决策(ADRs)
  • 招聘选择
  • 战略转型
  • 供应商选择

语音和风格(resources/voice.md)

所有内容保持一致的写作风格:

# 语音指南

## 语调
- 简洁,不废话
- 真实,不拘束
- 错了就真的反对
- 行动大于言辞

## 格式化
- 项目符号列表 > 段落
- 粗体强调,不用大写
- 严肃场合不用表情符号

## 禁止短语
- "好问题!"
- "我很乐意帮忙!"
- "作为一个AI..."

## 示例

❌ "I'd be happy to help you with that!"
✅ "Done."

❌ "That's a great idea!"
✅ "That'll work. Here's why..."

ID系统(项目范围)

格式: {project-slug}-{milestone-slug}-{number}{project-slug}-{number} 用于顶层

示例:

  • website-redesign-research-1(里程碑:研究)
  • website-redesign-research-2
  • mobile-app-api-1(里程碑:api)
  • openclaw-setup-1(无里程碑)

规则:

  • 每个里程碑(或无里程碑的项目)顺序编号
  • 从1开始
  • 可以跨项目重复
  • 保持可读性和标记高效

优先级系统(高/中/低)

优先级 含义 示例
时间紧迫,阻碍其他工作 提交交付物,修复生产错误
重要截止日期,稳步进展 起草内容,研究总结
探索,锦上添花,背景 竞争对手研究,工具评估,阅读

适用于: 项目、里程碑和任务


记忆搜索最佳实践

在回答关于先前工作的问题之前:

步骤1:搜索记忆

memory_search query="project deadlines decisions"

步骤2:如果没有结果,检查日志

read memory/daily/YYYY-MM-DD.md

步骤3:如果还是什么都没有,承认它

“I checked my memory and recent daily notes but don’t see a record of this. Can you remind me?”

保持记忆准确:

  • 写入MEMORY.md 持久的洞察力,模式,偏好关于用户
  • 写入日志: 原始事件,临时任务,一次性细节
  • 使用wiki链接: [[project-slug]]创建连接
  • 提取事实: 通用事实(偏好,工作流程)进入memory/facts/

创建项目(带里程碑)

步骤1:创建项目结构

mkdir -p projects/website-redesign/milestones

步骤2:创建项目摘要

# 网站重新设计

目标:推出新的公司网站。

## 概览
完整的重新设计,新的品牌,改进的UX和现代技术栈。

## 里程碑
- [[website-redesign-research|Research & Planning]]
- [[website-redesign-design|Design]]
- [[website-redesign-development|Development]]

步骤3:创建项目元数据

{
  "id": "website-redesign",
  "type": "project",
  "name": "Website Redesign",
  "createdAt": "2026-02-19T10:00:00Z",
  "updatedAt": "2026-02-19T10:00:00Z",
  "status": "active",
  "priority": "high",
  "tags": ["web", "design"],
  "milestones": [
    {
      "id": "research",
      "name": "Research & Planning",
      "status": "in_progress",
      "priority": "high",
      "dueDate": "2026-03-01",
      "tasks": ["website-redesign-research-1", "website-redesign-research-2"]
    },
    {
      "id": "design",
      "name": "Design",
      "status": "todo",
      "priority": "medium",
      "dueDate": "2026-04-15",
      "tasks": []
    }
  ],
  "links": {
    "tasks": [],
    "people": [],
    "projects": [],
    "facts": [],
    "agents": []
  }
}

步骤4:创建里程碑摘要(可选)

# 研究与规划

部分:[[website-redesign|Website Redesign]]

目标:定义范围和要求。

## 任务
- [[website-redesign-research-1|Competitor analysis]]
- [[website-redesign-research-2|User interviews]]

## 截止日期
2026年3月1日

创建任务(带提示工程)

步骤1:捕获用户的简单请求

用户说:“创建一个构建登录页面的任务”

步骤2:使用提示工程系统扩展

按照上述扩展过程。创建详细指令,包括:

  • 特定角色(高级全栈开发人员,不仅仅是"开发人员")
  • 完整上下文(栈,当前状态,现有代码)
  • 明确任务范围
  • 输出格式(确切文件,结构)
  • 示例(参考现有代码)
  • 约束(可衡量的限制)

步骤3:创建任务JSON

{
  "id": "lifeos-core-auth-1",
  "title": "Create login page with email/password auth",
  "simplePrompt": "Build a login page",
  "expandedPrompt": "Act as a senior full-stack developer specializing in authentication systems.

**Context:**
- Project: LifeOS Core dashboard
- Stack: Next.js 15, TypeScript, Tailwind CSS
- Auth: Clerk already configured
- Current state: No login page exists

**Task:**
Create complete login page at `/login` with email/password form, validation, error handling, loading states, and redirect on success.

**Output Format:**
- File: `app/login/page.tsx`
- Use existing Button, Input, Card components
- Export default page component

**Examples:**
See `app/dashboard/page.tsx` for styling patterns (mono aesthetic, sharp corners).

**Constraints:**
- Max 150 lines
- Use shadcn/ui components
- Handle all Clerk error codes
- Match existing mono aesthetic",
  "status": "todo",
  "priority": "high",
  "projectRef": "projects/lifeos-core",
  "milestoneRef": "lifeos-core-auth",
  "assignedTo": "uiux-craftsman",
  "linkedFacts": [],
  "linkedTasks": [],
  "source": "daily/2026-02-19.md",
  "dueDate": "2026-02-22",
  "createdAt": "2026-02-19T10:00:00Z",
  "updatedAt": "2026-02-19T10:00:00Z"
}

步骤4:用扩展提示生成代理

Spawn agent with:
- Task: expandedPrompt (full detailed instructions)
- Target files: specified in Output Format
- Expected deliverable: working code matching constraints

提示工程系统

每个任务都从简单的用户请求扩展到详细的代理指令。

扩展过程

步骤1:捕获简单提示

{
  "simplePrompt": "Build a login page",
  "title": "Create login page with email/password auth"
}

步骤2:扩展到完整指令

分析简单提示并构建:

组件 包含什么 示例
角色 具有专业知识的具体人物 “Act as a senior full-stack developer specializing in authentication systems”
上下文 项目背景,当前状态,栈,已经完成的工作 “Project: LifeOS Core dashboard. Stack: Next.js 15, TypeScript, Tailwind. Clerk auth already set up.”
任务 清晰、具体的行动,带有范围 “Create a complete login page with email/password form, validation, error handling, and redirect on success”
输出格式 确切的文件路径,结构,格式 “File: app/login/page.tsx. Include: form component, validation logic, loading states, error UI”
示例 参考现有代码或显示风格 “See app/dashboard/page.tsx for styling patterns. Use same mono aesthetic.”
约束 硬性限制,必须/避免,成功标准 “Max 150 lines. Use shadcn/ui components. Handle all error states.”

步骤3:存储两个版本

{
  "id": "lifeos-core-auth-1",
  "title": "Create login page with email/password auth",
  "simplePrompt": "Build a login page",
  "expandedPrompt": "Act as a senior full-stack developer...

**Context:**
Project: LifeOS Core...

**Task:**
Create...

**Output Format:**
- File: app/login/page.tsx
...

**Constraints:**
- Max 150 lines
...",
  "status": "todo",
  "priority": "high",
  "assignedTo": "uiux-craftsman"
}

步骤4:给代理扩展提示

expandedPrompt作为他们的任务描述生成代理。

扩展示例

示例1:简单 → 详细

简单: “Build a login page”

扩展:

**Role:** Senior full-stack developer specializing in Next.js authentication

**Context:**
- Project: LifeOS Core dashboard
- Stack: Next.js 15, TypeScript, Tailwind CSS, shadcn/ui
- Auth: Clerk already configured (see `middleware.ts`)
- Design: Mono aesthetic, sharp corners, black/white
- Current state: No login page exists, users hit 404 at /login

**Task:**
Create a production-ready login page at `/login` with:
- Email/password form with validation
- Error handling (invalid credentials, network errors)
- Loading states during submission
- Redirect to /dashboard on successful login
- Link to sign-up page

**Output Format:**
- Single file: `app/login/page.tsx`
- Use existing Button, Input, Card components from `@/components/ui`
- Export default page component
- Use Clerk's `useSignIn` hook

**Examples:**
See `app/dashboard/page.tsx` for styling patterns:
- Use `className="min-h-screen bg-background"` for layout
- Use `Card`, `CardHeader`, `CardContent` for form container
- Error styling: `text-destructive` class

**Constraints:**
- Maximum 150 lines (concise > verbose)
- Must handle all Clerk error codes
- Must show loading spinner during submit
- Must redirect, not just navigate
- Match existing mono aesthetic exactly

示例2:研究任务

简单: “Research competitors”

扩展:

**Role:** Market research analyst specializing in competitive intelligence

**Context:**
- Building a project management SaaS
- Target market: small-to-medium teams (10-100 people)
- Focus on async-first workflows
- Current date: February 19, 2026

**Task:**
Identify 5 key competitors with:
- Pricing tiers and billing models
- Key differentiating features
- Target audience and positioning
- Strengths and weaknesses
- Recent product updates or pivots

**Output Format:**
Markdown table with columns: Company, Pricing, Key Features, Positioning, Notes

**Constraints:**
- Focus on direct competitors only (not enterprise tools)
- Use public data only (no paywalled reports)
- Highlight gaps in the market we could exploit
- Include 1-2 sentence summary per competitor

示例3:设计任务

简单: “Design a settings page”

扩展:

**Role:** Senior UX/UI designer with expertise in dashboard interfaces

**Context:**
- Project: LifeOS Core settings
- Existing design system: Mono aesthetic, sharp corners, minimal
- Current pages: Dashboard (grid layout), Login (centered card)
- Settings needed: Profile, Notifications, API Keys, Danger Zone

**Task:**
Design a settings page with:
- Sidebar navigation for settings sections
- Clean form layouts for each section
- Visual hierarchy for danger zone
- Consistent with existing mono aesthetic

**Output Format:**
- Wireframe descriptions (no actual images needed)
- Component breakdown
- Key interactions described

**Examples:**
Reference existing pages:
- Dashboard uses grid with `gap-6`
- Cards use `border` and `rounded-none`
- Typography: `text-2xl font-bold` for headers

**Constraints:**
- Mobile-responsive layout
- Maximum 3 clicks to any setting
- Clear visual separation between sections
- Use existing shadcn/ui patterns

提示工程清单

在生成代理之前验证:

  • [ ] 角色是具体的(不是通用的“开发人员”)
  • [ ] 上下文包括栈和当前状态
  • [ ] 任务是范围的(不是“构建一切”)
  • [ ] 输出格式指定文件/结构
  • [ ] 示例参考现有代码时可能
  • [ ] 约束是可衡量的(行数,具体要求)
  • [ ] 成功标准是清晰的(我们怎么知道它完成了?)

代理优先规则(自然生成)

默认:为任何实质性任务生成代理。

主爪只处理:

  • 快速回答(< 2分钟)
  • 路由决策
  • 阅读/总结单个文件
  • 简单编辑(一行修复)

生成代理时:

  • 创建新文件或组件
  • 研究或数据收集
  • 多步骤实施
  • 设计或架构决策
  • 需要专业知识的任何事情

不要过度思考。 如果任务感觉像是“真正的工作”——生成。代理很便宜,上下文很贵。

分配逻辑:

  • uiux-craftsman — UI组件,CSS,React,视觉工作
  • system-designer — 架构,API,数据模型,审查
  • business-strategist — 定价,营销文案,研究
  • integrator — 组件连接,错误修复
  • 新代理 — 为特殊需求在subagents/中创建

日志系统(积压)

模板

# 2026-02-19 — 星期四

> "{quote or intention}"

## 早晨

**09:00** — 开始工作在[[lifeos-core|LifeOS Core]]
- 需要修复图形可视化错误
- 用户提到总是使用Vercel进行托管

## 笔记

{raw thoughts, observations, conversations}

- 用户偏好所有应用程序的暗色模式
- 产品发布截止日期是4月17日
- 明天下午3点与设计团队会面

## 创建的任务

- [ ] [[lifeos-core-graph-1|Fix graph rendering bug]] #high
- [ ] Research competitors #medium

---
*最后更新:2026-02-19 18:00*

规则

  1. 每天一个日志 — 整天追加
  2. 使用[[wiki-links]] 用于Obsidian兼容性
  3. 倾泻一切 — 事实,想法,任务,会议记录
  4. 标记优先级 — 任务上的#high#medium#low
  5. 日终 — 或让定时任务提取

事实提取系统

事实类型

通用事实(保存到memory/facts/):

  • 用户偏好(“总是使用Vercel”)
  • 工作流程(“周五部署”)
  • 限制(“预算是每月500美元”)
  • 关系(“约翰是设计师”)

一次性细节(忽略,已经在日志中):

  • “Make this button blue”
  • “Meeting at 3 PM tomorrow”
  • “Fix this specific bug”

提取过程

选项1:日终审查 阅读日志 → 提取通用事实 → 保存到事实文件夹 → 更新项目元数据

选项2:定时任务(建议) 每天凌晨3点运行:

  1. 扫描昨天的日志
  2. 识别通用事实
  3. 创建memory/facts/{project-slug}-{number}.json
  4. 更新项目meta.json → 添加事实到links.facts
  5. 填写缺失的项目信息
  6. 发送早间简报

事实JSON结构

{
  "id": "lifeos-core-1",
  "type": "preference",
  "content": "User prefers Vercel for all hosting",
  "tags": ["hosting", "vercel", "preference"],
  "entityRef": "people/mohammed",
  "projectRef": "projects/lifeos-core",
  "source": "daily/2026-02-19.md",
  "universal": true,
  "confidence": 0.9,
  "createdAt": "2026-02-19T10:00:00Z"
}

Obsidian兼容性

Wiki-Links格式

使用[[target|Display Text]]或只是[[target]]

Part of: [[website-redesign|Website Redesign]]
See also: [[mobile-app]]
Next: [[website-redesign-research-2|User interviews]]

什么得到链接

  • 项目:[[project-slug]]
  • 里程碑:[[project-milestone]]
  • 任务:[[project-milestone-number]]
  • 人物:[[person-slug]]
  • 日志:[[YYYY-MM-DD]]

仪表盘+Obsidian

相同的文件在两个中都有效:

  • Obsidian将wiki-links作为连接呈现
  • 仪表盘读取JSON以获取结构化数据
  • 两者都显示图表(Obsidian通过graph.json或自己的)

模式(必需与可选)

项目元数据(必需字段)

{
  "id": "string (kebab-case)",           // 必需
  "type": "project",                      // 必需
  "name": "string",                       // 必需
  "createdAt": "ISO8601",                 // 必需
  "status": "active|archived|paused",     // 必需
  
  // 可选
  "updatedAt": "ISO8601",                 // 默认:createdAt
  "priority": "high|medium|low",          // 默认:"medium"
  "tags": [],                              // 默认:[]
  "milestones": [],                        // 默认:[]
  "links": {                               // 默认:空数组
    "tasks": [],
    "people": [],
    "projects": [],
    "facts": [],
    "agents": []
  }
}

任务(必需字段)

{
  "id": "string",                        // 必需
  "title": "string",                     // 必需
  "status": "todo|in_progress|done|blocked", // 必需
  "projectRef": "string",                // 必需(projects/{slug})
  "createdAt": "ISO8601",                // 必需
  
  // 可选
  "simplePrompt": "string",              // 原始用户请求
  "expandedPrompt": "string",            // 完整的代理指令
  "updatedAt": "ISO8601",                // 默认:createdAt
  "priority": "high|medium|low",         // 默认:"medium"
  "milestoneRef": "string",              // 默认:null
  "assignedTo": "string",                // 默认:null
  "linkedFacts": [],                      // 默认:[]
  "linkedTasks": [],                      // 默认:[]
  "source": "string",                    // 默认:null
  "dueDate": "YYYY-MM-DD"                // 默认:null
}

事实(必需字段)

{
  "id": "string",                        // 必需
  "type": "fact|preference|workflow|constraint|relationship",
  "content": "string",                   // 必需
  "source": "string",                    // 必需
  "createdAt": "ISO8601",                // 必需
  
  // 可选
  "tags": [],                             // 默认:[]
  "entityRef": "string",                 // 默认:null
  "projectRef": "string",                // 默认:null
  "universal": true,                     // 默认:true
  "confidence": 0.0-1.0                  // 默认:0.8
}

图结构

节点

{
  "id": "projects/website-redesign",
  "type": "project",
  "label": "Website Redesign",
  "status": "active",
  "priority": "high",
  "archived": false
}

类型:project, milestone, task, agent, person, fact, area

{
  "from": "website-redesign-research-1",
  "to": "projects/website-redesign",
  "type": "belongs_to"
}

类型:

  • belongs_to — 任务/里程碑 → 项目
  • part_of — 里程碑 → 项目
  • assigned_to — 任务 → 代理
  • depends_on — 任务 → 任务
  • extracted_from — 事实 → 日志
  • references — 任何 → 任何(wiki-link)

重要规则

  1. 首次使用时始终检查MEMORY.md — 如果缺失,则创建它
  2. 在给代理之前始终扩展提示
  3. 使用wiki-links [[target]] 用于Obsidian兼容性
  4. 简单ID{project}-{milestone}-{number}, 不是UUIDs
  5. 代理优先 — 主爪只用于快速决策
  6. 每天一个日志 — 追加,不要创建新的
  7. 提取通用事实 — 忽略一次性细节
  8. 只有高/中/低 — 没有“紧急”
  9. 项目里程碑 — 将大项目分解为阶段
  10. 在回答之前搜索记忆 — 使用memory_search了解先前上下文
  11. 在结构变化后重新生成图表
  12. 建议定时任务 — 不要自动设置,提供它

执行纪律协议

来源: 改编自@thejayden的EXECUTION_DISCIPLINE_PROTOCOL v1.0

将此应用于每一个非平凡的任务。没有例外。

核心规则

计划在执行之前。 在任务分解之前不要生成任何输出。

1. 目标锁定

在进行任何工作之前,明确定义:

  • 最终交付物是什么?
  • “完成”是什么样子?
  • 什么会使这个不完整?

如果目标是模糊的 → 提出澄清问题。不要假设。

2. 任务分解(强制性)

将请求分解为:

  • 主要目标
  • 子任务
  • 约束
  • 未知变量
  • 依赖关系
  • 成功标准

如果任务不能分解,你还没有理解它。在结构之前没有解决。

3. 假设声明

明确列出所有假设。对于每一个:

  • 它被确认了吗?
  • 它是推断的吗?
  • 它有风险吗?

如果一个关键假设未经验证 → 标记它。问。或者根据输出进行资格。永远不要在沉默的假设上构建。

4. 单层执行

一次解决一个子任务

  • 执行
  • 验证
  • 确认与目标一致

然后移动到下一个。不要同时进行半思考。不要提前跳跃。

5. 循环预防检查

在回应之前,内部询问:

  • 我是否在重复之前的推理?
  • 我是否在重新解决已经解决的问题?
  • 新信息真的改变了计划吗?
  • 我是否陷入了优化而不是进步?

如果是 → 确定堵塞。改变策略。不要重新生成类似的输出。当计划缺失时,会发生循环。

6. 完成验证

在最终输出之前:

  • 这是否完全满足目标?
  • 我是否跳过了任何子任务?
  • 有什么应该是明确的而不是隐含的?
  • 这可以发货吗?

如果不是 → 继续执行。部分完成不是完成。

7. 失败处理

如果被阻塞,清楚地说明:

  • 执行在哪里失败
  • 为什么失败
  • 缺少什么信息
  • 什么下一个行动可以解决它

永远不要默默地停滞。永远不要猜测以逃避阻塞。

8. 令牌纪律

结构减少浪费。在生成输出之前:

  • 删除多余的推理
  • 避免重新解释已解决的部分
  • 只关注当前执行层

精度 > 重复。


示例:完整工作流程

用户说: “我需要重新设计我们的网站。当前的网站过时了,我们需要在产品发布之前上线。还需要更新我们的品牌。”

你做什么:

  1. 检查/创建MEMORY.md — 如果缺失,创建它
  2. 创建项目: projects/website-redesign/
  3. 里程碑: 研究(高优先级),设计(中优先级),开发(中优先级)
  4. 任务:
    • website-redesign-research-1:竞争对手分析
    • website-redesign-research-2:用户访谈
    • website-redesign-design-1:创建主页模型
  5. 扩展提示: 为每个任务编写详细指令
  6. 分配给代理: 用扩展提示生成代理
  7. 日志: 记录对话,需要时提取事实
  8. 更新图表: 显示项目 → 里程碑 → 任务
  9. 建议定时任务: 提供夜间审查设置

结果: 结构化、链接、代理驱动的工作,完全保留上下文。


版本历史

  • v0.7.5 — 扁平结构。移除life/areas/包装器 — 项目、人物、客户等现在直接位于工作空间根目录下。更干净,更简单。
  • v0.7.4 — 添加AI驱动的自动设置。技能现在指示AI在首次使用时创建扩展结构(无需bash脚本,无需用户权限)。
  • v0.7.3 — 移除初始化脚本。OpenClaw基础已经提供核心文件(MEMORY.md, AGENTS.md, SOUL.md)。技能现在专注于扩展PARA结构和工作流程。
  • v0.7.2 — 清理所有示例为通用(去除个人参考)。改进描述和快速入门部分。
  • v0.7.1 — 添加执行纪律协议(来自@thejayden)。强制结构化问题解决:目标锁定,任务分解,假设声明,单层执行,循环预防,完成验证。
  • v0.7.0 — 扩展实体类型:技能注册表,客户档案,决策记录。添加SOUL.md, AGENTS.md, RULES.md和语音指南模板。完整的"AI员工"设置。
  • v0.6.1 — 添加初始化脚本以进行首次设置。(在v0.7.3中弃用 — OpenClaw基础已经提供核心文件。)
  • v0.6.0 — 从lifeos-memory重命名为memory-pill。移除qmd依赖。使用OpenClaw本地memory_search,带索引指导。
  • v0.5.0 — 重大改革:里程碑,提示工程,代理优先,Obsidian wiki-links,事实积压系统