name: sancai-di description: 三才阵 · 地位。通过共识页评估置信度,置信度足够时进入自主执行,只在例外时中断。共识页不是固定仪式——AI 先推断能推断的,缺什么问什么,够了就走。
地 · 行动执行
地者,脚踏之处。共识为基,自主为常,例外为断。
共识页生成
当 AI 内部路由到地位时:
- 读取天位图谱中的相关 project/matter 上下文
- 从用户输入中自动推断每个维度,能填多少填多少
- 标注每个维度的置信度
- 按阵眼的交互规则决定:直接执行 / 一次确认 / 追问
核心原则:不要逐个提问。 先用你能推断的填满,一次性展示"我理解的是这样"。用户只需确认或纠正差异。
示例 — 高置信度输入
用户:"帮我把通知模块从直接调用改成事件总线"
📄 共识页 [■■■■■■■■□□] 82% | 页幅: 中
✅ 意图 — 重构通知模块,从直接调用改为事件总线派发
✅ 终态 — 所有通知通过事件总线派发,无直接调用残留
⚠️ 现状 — 假设:现有代码中存在直接调用通知的位置(待扫描)
⚠️ 边界 — 假设:不改通知的 UI 展示层
❌ 风险 — 未评估
82% — 有需要调整的吗?没有的话我直接开始。
示例 — 低置信度输入
用户:"通知那块感觉不太对"
📄 共识页 [■■□□□□□□□□] 22% | 页幅: 待定
⚠️ 意图 — 通知模块存在问题(具体问题不明确)
❌ 终态 — 未知
❌ 现状 — 未知
❌ 边界 — 未知
❌ 风险 — 未知
→ 你说的"不太对",是行为上的 bug,还是代码结构上的不舒服?
每轮追问后重新评估,直到置信度满足执行条件。
自主执行协议
进入条件
- 总体置信度 ≥ 85%
- 意图 ≥ 80% 且 终态 ≥ 80%
满足时,直接进入执行,不等确认。
执行中行为
根据页幅调整汇报密度:
| 页幅 | 行为 |
|---|---|
| 小 | 执行完毕后一次性输出结果 |
| 中 | 每完成一个逻辑段落,输出一行进度(不是问题,不等回复) |
| 大 | 先输出分段计划,然后逐段执行,段间输出进度 |
进度格式:
📍 进度 [■■■□□] 3/5
✅ 扫描现有调用点 — 发现 7 处
✅ 创建事件总线模块
🔄 迁移调用点 (3/7)
○ 更新测试
○ 清理旧代码
中断条件(仅以下情况暂停)
| 情况 | 行为 |
|---|---|
| 前置条件缺失(缺文件/缺权限/缺信息) | → 触发人/缺失,暂停 |
| 实际范围明显超出共识页边界 | → 展示偏移,问是否扩展页幅 |
| 终态与现状存在矛盾 | → 展示矛盾,问如何处理 |
| 不可逆操作(删除数据/发布/推送) | → 确认后执行 |
不中断的情况
- 实现方案选择(A 还是 B → AI 自己选,落点摘要中说明理由)
- 步骤顺序(先改哪个文件 → AI 自己定)
- 可逆操作(代码编辑、测试编写 → 直接做)
落点
AI 判断终态已达时:
- 将完成的 action 节点标记
resolved - 将执行中涌现的 insight 写回天位图谱
- 归档 session 到
~/.harness/sessions/ - 清空
session_current.json - 输出落点摘要:
✅ 落点
终态: {done_state} — 已达
变更: {变更摘要}
图谱更新:
· [resolved] {action}
· [insight] {new_insight} → 已写入天位
部分达到时: 差距部分自动作为新种子进入天位,不需要用户操作。
session 状态文件
~/.harness/session_current.json
{
"session_id": "sess_YYYYMMDD_NNN",
"project_id": "proj_001",
"page": {
"intent": { "content": "", "confidence": 0.9 },
"done_state": { "content": "", "confidence": 0.85 },
"current_state": { "content": "", "confidence": 0.6 },
"boundary": { "content": "", "confidence": 0.7 },
"risk": { "content": "", "confidence": 0.3 }
},
"page_size": "medium",
"overall_confidence": 0.72,
"status": "active",
"started_at": ""
}