🔄 Open Source

PerPetual Motion FrameWork

一键配置 AI Agent 四层协作架构
让 Codex、Claude Code、AGY 协同工作

四层架构

每一层解决 AI Agent 协作的一个核心问题

🔐

权限层

控制 Codex 的审批策略和沙箱模式,确保自动化执行安全可控。通过 config.toml 精确配置 approval_policy、sandbox_mode 和 multi_agent 开关。

🧠

记忆层

基于 Graphify 构建代码库知识图谱,让每个 Agent 都能理解项目全貌。支持增量更新和多平台注册。

方法层

Superpowers Skills 提供经过验证的方法论 — 从头脑风暴到代码审查、从 TDD 到系统调试,统一三平台工作方式。

🎯

执行层

Missions Skills 实现任务分解和闭环执行。复杂任务自动转为 CSV 追踪,支持中断恢复和进度持久化。

快速开始

三步完成环境配置

Linux / macOS
git clone https://github.com/CBx-2023/PerPetualMotionFrameWork.git
cd PerPetualMotionFrameWork
chmod +x pmf-init.sh
./pmf-init.sh
Windows PowerShell
git clone https://github.com/CBx-2023/PerPetualMotionFrameWork.git
cd PerPetualMotionFrameWork
.\pmf-init.ps1
全自动模式
# Linux/macOS — 自动安装(权限层仍需确认)
./pmf-init.sh --yes

# Linux/macOS — 完全自动(包括权限修改)
./pmf-init.sh --yes --force-permissions

# Windows
.\pmf-init.ps1 -Yes -ForcePermissions

七阶段流程

pmf-init 按依赖顺序逐层配置

Phase 1

基础环境检测与安装

按四级依赖顺序处理 9 个工具:

Tier工具最低版本安装方式
Tier 1gitapt / dnf / pacman / brew / winget
Tier 2python3 + pip≥ 3.10apt / brew / winget
Tier 2node + npm≥ 20apt / brew / winget
Tier 3uvcurl|sh / winget
Tier 4codex / claudenpm install -g(非 root 自动 sudo)
Tier 4agycurl 官方安装脚本

如果上游依赖缺失且用户跳过,下游工具标记为 BLOCKED。apt 系统只更新一次索引,且通过 sudo -E 保留代理环境变量。

Phase 2

记忆层 — Graphify

  • 通过 uv tool install "graphifyy[office,chinese]" 安装 CLI
  • 为 codex、antigravity、claude 三平台注册 skill
  • 可选运行 graphify . 生成项目知识图谱(需要 LLM API Key,无 key 时自动跳过)
Phase 3

方法层 — Superpowers

  • 克隆 obra/superpowers 到 ~/agent-tools/superpowers
  • AGY: agy plugin install
  • Codex/Claude: 文件放置(已有目录不覆盖)
  • 检测远端更新,--yes 模式自动拉取
Phase 4

执行层 — Missions

  • 克隆 flowing-water1/Missions 到 ~/agent-tools/Missions
  • 仅复制 6 个 mission* 目录到三平台 skills 路径
  • 不复制 README.md、LICENSE 等非技能文件
Phase 5

权限层 — Codex config.toml

设置目标值说明
approval_policy"never"免确认执行命令
sandbox_mode"danger-full-access"完全文件系统访问
multi_agenttrue启用多 Agent 协作
⚠️ 安全提示

即使在 --yes 模式下,权限修改仍默认拒绝 (N)。只有 --yes --force-permissions 才会自动应用。修改前会自动创建 config.toml.bak.YYYYMMDDHHmmss 备份。

Phase 6

项目结构

  • 创建 docs/superpowers/specs/issues/.mission/
  • 生成 AGENTS.md(工具分工、路由、硬门禁)
  • 已有 AGENTS.md 提供覆盖/追加/跳过三选一
Phase 7

验收报告

  • 渲染终端状态表:✅ OK / ⚠️ UPDATE / ❌ FAIL / 🚫 BLOCKED / ⏭️ SKIPPED
  • 生成 pmf-init-report-YYYYMMDDHHmmss.md 报告
  • 列出可更新项及具体命令

命令行参数

交互模式(默认)与自动模式

Bash — pmf-init.sh

参数说明
--yes全自动模式,跳过所有确认(权限层除外)
--force-permissions与 --yes 配合,权限层也自动修改
--help显示帮助信息

PowerShell — pmf-init.ps1

参数说明
-Yes全自动模式
-ForcePermissions权限层自动修改
-Help显示帮助信息

安全设计

六大安全原则贯穿始终

🔍 先检测再行动

每个组件先 detect 状态(FOUND_LATEST / FOUND_UPDATABLE / NOT_FOUND),再决定下一步。

🎛️ 用户完全可控

每步交互 Y/n/s,可跳过单项或整个阶段。

🛡️ 权限双重确认

--yes 模式下权限修改仍默认拒绝,需 --force-permissions。

📁 不覆盖用户数据

已有 skill 目录跳过,AGENTS.md 提供三选一。

🔄 失败自动重试

网络操作重试 3 次,间隔 5s → 10s,第 3 次失败记录 FAIL。

⚙️ 容错不中断

任何单项失败不终止脚本,记录状态后继续执行。

更新日志

版本变更记录

2026-06-14

pmf-init.sh 稳定性修复(v1.1)