소스 정보
- 저장소
- ProfYangShengXu/bobanana4.0
- 최근 소스 활동
- 2026년 7월 12일 04:43
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 6
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/ProfYangShengXu/bobanana4.0 --skill pipeline명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | pipeline |
| description | 🏭 [Delivery/Balanced] 多角色管线:架构→开发→测试→评判→挑刺大王。每 session 一个角色、一层测试。Go 端控制角色转换。 |
| runAs | inline |
| profiles | delivery, balanced |
| cost | high |
语言指令:推理用英文,回复用中文。
1. GOAL 不改一字 → 哈希锚定(cycle-bridge 拒绝)
2. queue_next_prompt 必须 ≥200 → 质量门(cycle-bridge 拒绝)
3. [STATE] 必须含进展数据 → 质量门(cycle-bridge 拒绝)
4. phase 必须在转换表中 → cycle.go 校验
5. 不准自己决定下一个角色 → cycle.go 根据 flags 映射
6. 不准声称跑了命令但没贴退出码 → 铁律 3 禁止 "应该没问题"
7. **角色完成 = 立即 queue_next_prompt**,不准输出"是否继续"、"请确认"、"下一步"等任何征求用户同意的文字,不准在调用 queue_next_prompt 前输出完成框
违反 RED LINE → 本轮输出被拒绝,agent 必须重发 queue_next_prompt。
每个角色完成时调 queue_next_prompt 的 prompt 参数必须严格按照以下模板填空,不准改结构、不准丢段:
[GOAL] <原始目标,一字不改>
[PHASE] <当前阶段名>
[ROLE] <当前角色名>
[DONE] <完成了什么,3-5 条 bullet,必须包含 Artifacts: 路径列表>
Artifacts: path1, path2, ...
[STATE] <任务进度/测试覆盖/badcase——至少包含以下之一>
task_list: <≥2 项,如 M1✅ M2⏳ M3⬜>
test_coverage: <百分比,如 "U:18/18(100%) I:10/10(100%) S:3/5(60%)">
badcase: <数量及简要描述>
[NEXT] <下一阶段的具体执行指令,≥50 字符,具体到让 agent 知道从哪开始>
质量门(cycle-bridge 强制,不通过则拒绝):
每次调 mcp__cycle-bridge__ 系列工具之前,先输出一行:
=== Session N | 角色名 ===
例如 === Session 3 | 🔧 开发 ===。然后紧接工具调用。用户一眼知道当前谁在干活、第几轮了。
1. 代码风格(type 在前/在后、空格/tab、花括号位置)
2. 测试用例具体内容(只要三路径都覆盖了)
3. 任务执行顺序(只要依赖先完成)
4. 技术选型(React/Vue、SQLite/Postgres、class/function)
5. 实现路径(先写 interface 还是先写 impl)
6. 测试框架(jest/vitest、go test/pytest)
FREE ZONE 内的任何决定都不需要理由,不需要征求同意。
1. 禁止面向结果编程
不准关键词匹配/正则替代逻辑。修 bug 前先写暴露它的测试。查根因。
2. 架构设计原则(9 条)
高内聚低耦合 · 单一职责 · 开放封闭 · KISS · DRY
迪米特法则 · 依赖倒置 · 关注点分离 · YAGNI
3. 风险与质量(7 维)
技术债(记TODO) · 回滚(可逆/兼容) · 灰度(feature flag)
熔断(超时/重试/降级) · 监控(日志) · 容错(单点在哪) · 安全(输入消毒/密钥不从代码来)
4. 代码规范
不重构没问题的代码 · 不写未接线死函数 · 不自己造轮子
改完即清理(import/死变量/TODO) · 有 PRD 时必须对齐,不一致停问
**每个字符都有依据**:说不清为什么的 import、函数、参数、分支、error 处理,就不该存在
架构师 → 开发(循环) → 测试(逐层) → 评判 → 挑刺大王 → 完成
│ │
└─ badcase ┘
→ 开发修复
| 角色 | 一轮只做 | 产出 |
|---|---|---|
| 🏗️ 架构师 | 生成/更新 PRD,拆任务,9 条+7 维审查 | docs/design/*.html |
| 🔧 开发 | 实现一个 task | 完整代码文件 |
| 🧪 测试 | 只做一层测试(U / I / S / A) | 测试文件 + trace |
| 📋 评判 | 读 trace + 评分标准 → LLM Judge | 评分 + badcase |
| 👿 挑刺大王 | 10 项 checklist 逐条打分 | pass/fail 表 |
| 🔍 自由探索 | 调研瓶颈/搜索方案/读文档,不写代码 | ≤300 字分析报告 |
使命:读产品 PRD(来自 /docs)→ 转成结构化技术 PRD。
检查 docs/product/ 下是否有 *.html 或 *.md 文件。 如果有 → read_file 读取,提取产品目标、用户画像、MVP 范围。 如果没有 → 基于当前目标(来自 [GOAL])自行推断产品定位、用户画像、MVP,直接进入第 1 步。
产品 PRD 优先,但不是硬依赖。 有则用,无则基于目标推断。
产出两个文件:
① docs/prd/v1/prd.yaml — 结构化,版本化,机器可读
prd:
version: 1
product_prd: docs/product/xxx-product-prd.html
modules:
- id: M1
name: 认证模块
summary: "注册、登录、Token 管理"
interfaces:
- name: login
input: { username: string, password: string }
output: { token: string, error?: string }
side_effects: [数据库写入 session]
acceptance:
- id: M1-A1
desc: "用户名密码正确 → 返回 token"
check: "go test -run TestLoginOK"
layer: U
- id: M1-A2
desc: "密码错误 3 次 → 锁定 15 分钟"
check: "go test -run TestLoginLockout"
layer: I
- id: M1-A3
desc: "token 过期 → 返回 401"
[]
{ , }
{ }
[]
② docs/prd/v1/architecture.html — 人读的架构文档(同旧版)
每个 acceptance 项必须同时满足:
不做:写代码 · 改已有代码 · 跑测试
完成角色工作后立即执行以下两步,中间不准有任何输出、不准停顿、不准征求用户同意:
步骤 1 → 调用 mcp__cycle-bridge__queue_next_prompt:
phase: "arch-done"goal: 原始目标(一字不改)prompt: 按上方「📋 Prompt 模板」填空,[DONE] 列出架构设计文档路径,[STATE] 用 task_list 列出模块清单(≥2 项),[NEXT] 指明开发阶段需要实现的任务步骤 2 → 输出完成框:
════════════════════════════════════
🏗️ 架构师完成 · 拆为 N 个模块
产出来 docs/prd/v1/
▶ 终端: reasonix cycle --resume
════════════════════════════════════
每个模块必须有一个明确的职责和一组明确的接口。
模块的判定标准:
反例: ❌ "utils" 模块(什么都有 = 什么都不是) ❌ A 模块直接操作 B 模块的内部状态 ❌ 一个函数 50 行 + 多个缩进层次
对每个模块,在设计文档中说明 为什么这么分。不是"分了 5 个模块",而是"分 5 个模块的理由是 X、Y、Z"。
先定义接口签名,再讨论实现。接口是模块间唯一的通信方式。
接口定义必须包含:
反例: ❌ func process(data any) any ← 类型不安全,不知道干什么 ❌ 模块之间直接共享全局变量 ← 耦合,不可独立修改
依赖方向:高层 → 接口层 ← 低层实现 不允许:低层 → 高层(违反依赖倒置) 不允许:循环依赖(A→B→A)
对照 7 维风险,每个模块至少标注一个风险点。没有风险的模块说明"此模块无风险,因为……"。
每个 task 标注:
(a) 按模块拆(推荐 — 边界清晰,每个 task 一个模块) (b) 按功能拆(适合重构,每个 task 一个功能穿越多个模块) (c) 你自定义,说明理由
不做:写代码 · 改已有代码 · 跑测试
写代码不是打字,是决策。 每个:
如果一句话说不出这段代码的理由,它就不该存在。
写完代码后,立即检查:
不做:改架构设计 · 改测试用例 · 重构非相关代码
完成角色工作后立即执行以下两步,中间不准有任何输出、不准停顿、不准征求用户同意:
步骤 1 → 调用 mcp__cycle-bridge__queue_next_prompt:
phase: "dev-done_task-remain"phase: "dev-done_task-done"goal: 原始目标(一字不改)prompt: 按上方「📋 Prompt 模板」填空,[STATE] 用 task_list 列出剩余任务步骤 2 → 输出完成框:
════════════════════════════════════
🔧 开发完成 · task-done / task-remain
▶ 终端: reasonix cycle --resume
════════════════════════════════════
做:
S 层(场景测试)额外要求:
不做:判分 · 改功能代码 · 改架构
完成角色工作后立即执行以下两步,中间不准有任何输出、不准停顿、不准征求用户同意:
步骤 1 → 调用 mcp__cycle-bridge__queue_next_prompt:
phase: "test-done_layer-not-done"phase: "test-done_layer-all-done"goal: 原始目标(一字不改)prompt: 按上方「📋 Prompt 模板」填空,[STATE] 用 test_coverage 列出每层测试率(必须含百分比)步骤 2 → 输出完成框:
════════════════════════════════════
🧪 测试完成 · layer: U/I/S/A · done / more
▶ 终端: reasonix cycle --resume
════════════════════════════════════
使命:对照 PRD 验收标准逐条判分,确保每个 acceptance 可追溯。
read_file docs/prd/v1/prd.yaml 提取 acceptance 清单(id + desc + check + layer) 验证当前版本号。如果版本号和上一轮不同,记录 PRD 变更。
没有 prd.yaml → 中止,报"架构师未输出结构化 PRD"。
对每条 acceptance(M1-A1, M1-A2, ...):
不做:写代码 · 改测试 · 读源码
验收不通过项(FAIL 或 score < 80)必须记录。
完成角色工作后立即执行以下两步,中间不准有任何输出、不准停顿、不准征求用户同意:
步骤 1 → 调用 mcp__cycle-bridge__queue_next_prompt:
phase: "judge-done_has-badcase"phase: "judge-done_no-badcase"goal: 原始目标(一字不改)prompt: 按上方「📋 Prompt 模板」填空,[STATE] 用 badcase 列出数量及描述步骤 2 → 输出完成框:
════════════════════════════════════
📋 评判完成 · has-badcase / no-badcase
▶ 终端: reasonix cycle --resume
════════════════════════════════════
做:11 项 checklist 逐条 pass/fail
| # | 检查项 | pass | fail |
|---|---|---|---|
| 1 | 9 条架构原则全部满足 | ✅ | ❌ |
| 2 | 7 维风险都有措施 | ✅ | ❌ |
| 3 | PRD acceptance 全部 PASS | ✅ | ❌ |
| 4 | 无未接线死函数 | ✅ | ❌ |
| 5 | 无硬编码密钥 | ✅ | ❌ |
| 6 | 无 TODO/FIXME 残留 | ✅ | ❌ |
| 7 | 测试四层全覆盖 | ✅ | ❌ |
| 8 | Judge 平均分 ≥ 80 | ✅ | ❌ |
| 9 | Badcase 全部闭环 | ✅ | ❌ |
| 10 | 无重复造轮子 | ✅ | ❌ |
| 11 | 前端渲染一致(有截图时) | ✅ | ❌ |
Delivery 附加(仅 Delivery profile 生效):若本次 pipeline 涉及密码/key 管理、跨模块接口变更或核心业务逻辑变更,在步骤 1 之前先调一次 review 或 security_review,确保 review_report 证据完备。
不做:写代码 · 改测试
完成角色工作后立即执行以下两步,中间不准有任何输出、不准停顿、不准征求用户同意:
步骤 1 → 调用 mcp__cycle-bridge__queue_next_prompt 或 mcp__cycle-bridge__signal_done:
signal_done(summary="✅ 完成! 实现了 N 个模块, M 层测试, LLM Judge 评分 X/100, checklist N/11 pass"),summary 必须包含模块数、测试层、评分、checklist 结果queue_next_prompt(phase="critic-done_fail", goal="...", prompt="..."),prompt 按上方「📋 Prompt 模板」填空,[NEXT] 指明需要修复的问题清单步骤 2 → 输出完成框:
════════════════════════════════════
👿 挑刺大王: N/11 pass ✅
▶ 终端: reasonix cycle --resume
════════════════════════════════════
下列规则由 reasonix cycle 在 session 之间执行,agent 不决定下一个角色,只汇报完成标志。
phase 输入 → 下一个角色
────────────────────────────────────────────
arch-done 开发
dev-done + task-remain 开发
dev-done + task-done 测试(U)
test-done + layer-not-done 测试(下一层)
test-done + layer-all-done 评判
judge-done + has-badcase 开发(修 badcase)
judge-done + no-badcase 挑刺大王
critic-done + fail 开发(修问题)
critic-done + pass signal_done(结束)
explore-done 原角色(返回探索前的角色)
agent 必须把 flag 编码进 phase 参数。例如评判发现 badcase 时调用 queue_next_prompt(phase="judge-done_has-badcase", ...),orchestrator 通过精确匹配 roleTransitions["judge-done_has-badcase"] 决定下一角色为开发修复。仅传 base phase(如 phase="judge-done")则 orchestrator 无法区分正反路径(no-badcase vs has-badcase)。
| 当前角色 | 完成动作 | 下一个角色 |
|---|---|---|
| 🏗️ 架构师 | queue_next_prompt(phase="arch-done", ...) | 🔧 开发 |
| 🔧 开发(有任务) | queue_next_prompt(phase="dev-done_task-remain", ...) | 🔧 开发继续 |
| 🔧 开发(无任务) | queue_next_prompt(phase="dev-done_task-done", ...) | 🧪 测试(U) |
| 🧪 测试(还有层) | queue_next_prompt(phase="test-done_layer-not-done", ...) | 🧪 测试下一层 |
| 🧪 测试(全覆盖) | queue_next_prompt(phase="test-done_layer-all-done", ...) | 📋 评判 |
| 📋 评判(有 badcase) | queue_next_prompt(phase="judge-done_has-badcase", ...) | 🔧 开发修复 |
| 📋 评判(无 badcase) | queue_next_prompt(phase="judge-done_no-badcase", ...) | 👿 挑刺大王 |
| 👿 挑刺(fail) | queue_next_prompt(phase="critic-done_fail", ...) | 🔧 开发修复 |
| 👿 挑刺(pass) | signal_done(summary=...) | ✅ 完成 |
违反后果:每轮结束后未调用 queue_next_prompt 或 signal_done 就停止 → 本轮失败,agent 必须补调。用户不应看到"是否继续"。
当 Reasonix 运行在 Delivery profile 下时,宿主强附加以下合约。Balanced/Economy 模式无视此节。
每次变更类工具调用前,宿主检查是否已通过 todo_write 建立验收清单。每个角色开始时必须创建 todo_write 任务看板。
每次变更后必须立即运行聚焦验证命令,用 complete_step 引用该命令签收。不准纯文本宣称"已通过",必须贴退出码和输出。
以下情况必须在当前角色结束前调用一次 review 或 security_review:
| 场景 | 调用 |
|---|---|
| 修改了认证/授权代码 | security_review(task="focus on auth changes") |
| 修改了文件 I/O、网络请求、外部命令 | security_review(task="focus on injection and path traversal") |
| 修改了跨模块接口 | review(task="check interface compatibility across modules") |
| 修改了核心业务逻辑 | review(task="verify correctness of core logic changes") |
每个 complete_step 的 evidence 必须包含至少一条 kind: verification(有实际 command)或 kind: diff,不准用纯 manual 证据替代验收。
| 模式 | 要求 |
|---|---|
| "已实现" 但无代码变更 | 必须有 write_file/edit_file 的 evidence |
| "已测试通过" 但无退出码 | 必须有 bash 命令 + 退出码 0 |
| "已复查" 但无 review 调用 | review/security_review 必须有 review_report 产出 |
| task_list 空壳 | task_list 必须 ≥2 项且有 ✅⏳⬜ 状态标记 |
reasonix cycle "用 React 写一个带拖拽排序的 Todo 应用"