principles-disciple 1.5.4 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/context.d.ts +5 -0
- package/dist/commands/context.js +312 -0
- package/dist/commands/evolution-status.d.ts +4 -0
- package/dist/commands/evolution-status.js +138 -0
- package/dist/commands/export.d.ts +2 -0
- package/dist/commands/export.js +45 -0
- package/dist/commands/focus.d.ts +14 -0
- package/dist/commands/focus.js +582 -0
- package/dist/commands/pain.js +143 -6
- package/dist/commands/principle-rollback.d.ts +4 -0
- package/dist/commands/principle-rollback.js +22 -0
- package/dist/commands/rollback.d.ts +19 -0
- package/dist/commands/rollback.js +119 -0
- package/dist/commands/samples.d.ts +2 -0
- package/dist/commands/samples.js +55 -0
- package/dist/core/config.d.ts +37 -0
- package/dist/core/config.js +47 -0
- package/dist/core/control-ui-db.d.ts +68 -0
- package/dist/core/control-ui-db.js +274 -0
- package/dist/core/detection-funnel.d.ts +1 -1
- package/dist/core/detection-funnel.js +4 -0
- package/dist/core/dictionary.d.ts +2 -0
- package/dist/core/dictionary.js +13 -0
- package/dist/core/event-log.d.ts +22 -1
- package/dist/core/event-log.js +319 -0
- package/dist/core/evolution-engine.d.ts +5 -5
- package/dist/core/evolution-engine.js +18 -18
- package/dist/core/evolution-migration.d.ts +5 -0
- package/dist/core/evolution-migration.js +65 -0
- package/dist/core/evolution-reducer.d.ts +69 -0
- package/dist/core/evolution-reducer.js +369 -0
- package/dist/core/evolution-types.d.ts +103 -0
- package/dist/core/focus-history.d.ts +65 -0
- package/dist/core/focus-history.js +266 -0
- package/dist/core/init.js +30 -7
- package/dist/core/migration.js +0 -2
- package/dist/core/path-resolver.d.ts +3 -0
- package/dist/core/path-resolver.js +90 -31
- package/dist/core/paths.d.ts +7 -8
- package/dist/core/paths.js +48 -40
- package/dist/core/profile.js +1 -1
- package/dist/core/session-tracker.d.ts +4 -0
- package/dist/core/session-tracker.js +15 -0
- package/dist/core/thinking-models.d.ts +38 -0
- package/dist/core/thinking-models.js +170 -0
- package/dist/core/trajectory.d.ts +184 -0
- package/dist/core/trajectory.js +817 -0
- package/dist/core/trust-engine.d.ts +2 -0
- package/dist/core/trust-engine.js +30 -4
- package/dist/core/workspace-context.d.ts +13 -0
- package/dist/core/workspace-context.js +50 -7
- package/dist/hooks/gate.js +301 -30
- package/dist/hooks/llm.d.ts +8 -0
- package/dist/hooks/llm.js +347 -69
- package/dist/hooks/message-sanitize.d.ts +3 -0
- package/dist/hooks/message-sanitize.js +37 -0
- package/dist/hooks/pain.js +105 -5
- package/dist/hooks/prompt.d.ts +20 -11
- package/dist/hooks/prompt.js +558 -158
- package/dist/hooks/subagent.d.ts +9 -2
- package/dist/hooks/subagent.js +40 -3
- package/dist/http/principles-console-route.d.ts +2 -0
- package/dist/http/principles-console-route.js +257 -0
- package/dist/i18n/commands.js +48 -20
- package/dist/index.js +264 -8
- package/dist/service/control-ui-query-service.d.ts +217 -0
- package/dist/service/control-ui-query-service.js +537 -0
- package/dist/service/empathy-observer-manager.d.ts +42 -0
- package/dist/service/empathy-observer-manager.js +147 -0
- package/dist/service/evolution-worker.d.ts +10 -0
- package/dist/service/evolution-worker.js +156 -24
- package/dist/service/trajectory-service.d.ts +2 -0
- package/dist/service/trajectory-service.js +15 -0
- package/dist/tools/agent-spawn.d.ts +27 -6
- package/dist/tools/agent-spawn.js +339 -87
- package/dist/tools/deep-reflect.d.ts +27 -7
- package/dist/tools/deep-reflect.js +282 -113
- package/dist/types/event-types.d.ts +84 -2
- package/dist/types/event-types.js +33 -0
- package/dist/types.d.ts +52 -0
- package/dist/types.js +24 -1
- package/openclaw.plugin.json +43 -11
- package/package.json +16 -6
- package/templates/langs/zh/core/HEARTBEAT.md +28 -4
- package/templates/langs/zh/skills/pd-daily/SKILL.md +97 -13
- package/templates/pain_settings.json +54 -2
- package/templates/workspace/.principles/PROFILE.json +2 -0
- package/templates/workspace/okr/CURRENT_FOCUS.md +57 -0
package/dist/types.js
CHANGED
|
@@ -1 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Default context injection configuration
|
|
3
|
+
* Based on user requirements:
|
|
4
|
+
* - principles: always on (not configurable)
|
|
5
|
+
* - thinkingOs: true (can be turned off)
|
|
6
|
+
* - projectFocus: 'off' (default closed, user can enable)
|
|
7
|
+
* - reflectionLog: true (default on)
|
|
8
|
+
* - trustScore: true (can be turned off)
|
|
9
|
+
*/
|
|
10
|
+
export const defaultContextConfig = {
|
|
11
|
+
thinkingOs: true,
|
|
12
|
+
projectFocus: 'off',
|
|
13
|
+
reflectionLog: true,
|
|
14
|
+
trustScore: true,
|
|
15
|
+
evolutionContext: {
|
|
16
|
+
enabled: true,
|
|
17
|
+
maxMessages: 4,
|
|
18
|
+
maxCharsPerMessage: 200,
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Reflection log retention configuration
|
|
23
|
+
*/
|
|
24
|
+
export const reflectionLogRetentionDays = 7;
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,27 +2,38 @@
|
|
|
2
2
|
"id": "principles-disciple",
|
|
3
3
|
"name": "Principles Disciple",
|
|
4
4
|
"description": "Evolutionary programming agent framework with strategic guardrails and reflection loops.",
|
|
5
|
-
"version": "1.
|
|
6
|
-
"skills": [
|
|
5
|
+
"version": "1.7.0",
|
|
6
|
+
"skills": [
|
|
7
|
+
"./skills"
|
|
8
|
+
],
|
|
7
9
|
"configSchema": {
|
|
8
10
|
"type": "object",
|
|
9
11
|
"additionalProperties": false,
|
|
10
12
|
"properties": {
|
|
11
13
|
"language": {
|
|
12
14
|
"type": "string",
|
|
13
|
-
"enum": [
|
|
15
|
+
"enum": [
|
|
16
|
+
"en",
|
|
17
|
+
"zh"
|
|
18
|
+
],
|
|
14
19
|
"default": "zh",
|
|
15
20
|
"description": "系统提示词和交互语言 (默认推荐: zh)"
|
|
16
21
|
},
|
|
17
22
|
"auditLevel": {
|
|
18
23
|
"type": "string",
|
|
19
|
-
"enum": [
|
|
24
|
+
"enum": [
|
|
25
|
+
"low",
|
|
26
|
+
"medium",
|
|
27
|
+
"high"
|
|
28
|
+
],
|
|
20
29
|
"default": "medium",
|
|
21
30
|
"description": "安全防爆级别:\n- low: 极客模式,几乎不拦截,AI 可以自由飞翔。\n- medium (推荐): 平衡模式,允许 AI 大胆尝试,但拦截毁灭性操作。\n- high: 严格模式,所有大范围修改都需要你明确授权。"
|
|
22
31
|
},
|
|
23
32
|
"riskPaths": {
|
|
24
33
|
"type": "array",
|
|
25
|
-
"items": {
|
|
34
|
+
"items": {
|
|
35
|
+
"type": "string"
|
|
36
|
+
},
|
|
26
37
|
"default": [],
|
|
27
38
|
"description": "自定义高危目录(例如 .git/, prod_db/)。AI 试图修改这些目录前,将被强制拦截并要求出具安全计划。"
|
|
28
39
|
},
|
|
@@ -31,16 +42,37 @@
|
|
|
31
42
|
"additionalProperties": false,
|
|
32
43
|
"description": "当 AI 遇到复杂问题或连续报错时,是否允许它停下来进行深度自我反思?",
|
|
33
44
|
"properties": {
|
|
34
|
-
"enabled": {
|
|
35
|
-
|
|
45
|
+
"enabled": {
|
|
46
|
+
"type": "boolean",
|
|
47
|
+
"default": true,
|
|
48
|
+
"description": "开启 AI 深度反思功能"
|
|
49
|
+
},
|
|
50
|
+
"mode": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"enum": [
|
|
53
|
+
"auto",
|
|
54
|
+
"forced"
|
|
55
|
+
],
|
|
56
|
+
"default": "auto",
|
|
57
|
+
"description": "auto: 遇到困难自动触发; forced: 每次回答前都强制反思(极耗时间,不推荐)"
|
|
58
|
+
}
|
|
36
59
|
}
|
|
37
60
|
}
|
|
38
61
|
}
|
|
39
62
|
},
|
|
40
63
|
"uiHints": {
|
|
41
|
-
"language": {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
"
|
|
64
|
+
"language": {
|
|
65
|
+
"label": "交互语言"
|
|
66
|
+
},
|
|
67
|
+
"auditLevel": {
|
|
68
|
+
"label": "防爆拦截级别",
|
|
69
|
+
"placeholder": "medium"
|
|
70
|
+
},
|
|
71
|
+
"riskPaths": {
|
|
72
|
+
"label": "☠️ 绝对高危目录 (空表示不设限)"
|
|
73
|
+
},
|
|
74
|
+
"deep_reflection": {
|
|
75
|
+
"label": "💡 AI 深度反思功能"
|
|
76
|
+
}
|
|
45
77
|
}
|
|
46
78
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "principles-disciple",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.0",
|
|
4
4
|
"description": "Native OpenClaw plugin for Principles Disciple",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -33,17 +33,23 @@
|
|
|
33
33
|
},
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "tsc",
|
|
36
|
-
"build:
|
|
37
|
-
"build:
|
|
36
|
+
"build:web": "node scripts/build-web.mjs",
|
|
37
|
+
"build:bundle": "node esbuild.config.js && node scripts/build-web.mjs",
|
|
38
|
+
"build:production": "tsc && node esbuild.config.js --production && node scripts/build-web.mjs --production",
|
|
38
39
|
"test": "vitest run",
|
|
39
40
|
"postinstall": "node scripts/install-dependencies.cjs"
|
|
40
41
|
},
|
|
41
42
|
"devDependencies": {
|
|
43
|
+
"@testing-library/react": "^16.3.0",
|
|
44
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
42
45
|
"@types/micromatch": "^4.0.10",
|
|
43
|
-
"@types/node": "^
|
|
46
|
+
"@types/node": "^25.5.0",
|
|
47
|
+
"@types/react": "^19.2.2",
|
|
48
|
+
"@types/react-dom": "^19.2.2",
|
|
44
49
|
"@types/ws": "^8.5.13",
|
|
45
50
|
"@vitest/coverage-v8": "^4.1.0",
|
|
46
51
|
"esbuild": "^0.27.4",
|
|
52
|
+
"jsdom": "^26.1.0",
|
|
47
53
|
"typescript": "^5.0.0",
|
|
48
54
|
"vitest": "^4.1.0",
|
|
49
55
|
"ws": "^8.18.0"
|
|
@@ -58,6 +64,10 @@
|
|
|
58
64
|
},
|
|
59
65
|
"dependencies": {
|
|
60
66
|
"@sinclair/typebox": "^0.34.48",
|
|
61
|
-
"
|
|
67
|
+
"better-sqlite3": "^11.10.0",
|
|
68
|
+
"micromatch": "^4.0.8",
|
|
69
|
+
"react": "^19.2.0",
|
|
70
|
+
"react-dom": "^19.2.0",
|
|
71
|
+
"react-router-dom": "^7.9.4"
|
|
62
72
|
}
|
|
63
|
-
}
|
|
73
|
+
}
|
|
@@ -18,10 +18,34 @@
|
|
|
18
18
|
|
|
19
19
|
## 📋 CURRENT_FOCUS.md 维护(每3次心跳)
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
- [ ]
|
|
24
|
-
- [ ]
|
|
21
|
+
### 检查与压缩
|
|
22
|
+
|
|
23
|
+
- [ ] **检查文件大小**:目标 < 40 行
|
|
24
|
+
- [ ] **如 > 40 行**:执行压缩流程(见下方)
|
|
25
|
+
|
|
26
|
+
### 压缩流程
|
|
27
|
+
|
|
28
|
+
1. **备份当前版本**:复制到 `memory/okr/.history/CURRENT_FOCUS.v{N}.{date}.md`
|
|
29
|
+
2. **递增版本号**:修改 `**版本**: v{N+1}`
|
|
30
|
+
3. **更新日期**:修改 `**更新**: {today}`
|
|
31
|
+
4. **压缩内容**:
|
|
32
|
+
- 移除已完成的 P0/P1 任务(保留 P2)
|
|
33
|
+
- 将重要里程碑移到 `MEMORY.md`
|
|
34
|
+
- 保留:状态快照、当前任务、下一步
|
|
35
|
+
5. **清理历史**:保留最近 10 个历史版本
|
|
36
|
+
|
|
37
|
+
### 模板结构(编辑时遵循)
|
|
38
|
+
|
|
39
|
+
```markdown
|
|
40
|
+
# 🎯 CURRENT_FOCUS
|
|
41
|
+
|
|
42
|
+
> **版本**: v{N} | **状态**: {状态} | **更新**: {日期}
|
|
43
|
+
|
|
44
|
+
## 📍 状态快照 ← 必须保留
|
|
45
|
+
## 🔄 当前任务 ← 必须保留
|
|
46
|
+
## ➡️ 下一步 ← 必须保留(summary 模式优先提取)
|
|
47
|
+
## 📎 参考 ← 可选
|
|
48
|
+
```
|
|
25
49
|
|
|
26
50
|
---
|
|
27
51
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pd-daily
|
|
3
|
-
description:
|
|
3
|
+
description: 配置并发送每日进化日报(支持邮件/即时通讯/飞书/语音通知)
|
|
4
4
|
disable-model-invocation: true
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -30,9 +30,10 @@ disable-model-invocation: true
|
|
|
30
30
|
通过会话对话依次询问:
|
|
31
31
|
|
|
32
32
|
1. **是否启用进化日报?**
|
|
33
|
-
2. **发送时间?**(默认每天
|
|
34
|
-
3. **时区?**(默认
|
|
33
|
+
2. **发送时间?**(默认每天 23:00 UTC)
|
|
34
|
+
3. **时区?**(默认 UTC)
|
|
35
35
|
4. **发送渠道?**
|
|
36
|
+
- 📱 **飞书** → 需用户 open_id(推荐,格式:ou_xxx)
|
|
36
37
|
- 邮件 → 需邮箱地址
|
|
37
38
|
- WhatsApp/Telegram → 需手机号/用户ID
|
|
38
39
|
- Discord/Slack → 需频道ID
|
|
@@ -52,13 +53,13 @@ disable-model-invocation: true
|
|
|
52
53
|
- 创建时间: {date}
|
|
53
54
|
|
|
54
55
|
## 发送设置
|
|
55
|
-
- 发送时间:
|
|
56
|
-
- 时区:
|
|
57
|
-
- Cron 表达式: 0
|
|
56
|
+
- 发送时间: 23:00
|
|
57
|
+
- 时区: UTC
|
|
58
|
+
- Cron 表达式: 0 23 * * *
|
|
58
59
|
|
|
59
60
|
## 发送渠道
|
|
60
|
-
- 渠道:
|
|
61
|
-
- 目标:
|
|
61
|
+
- 渠道: feishu
|
|
62
|
+
- 目标: ou_cf5c98aada743ab12c65c7c6764b5a49
|
|
62
63
|
|
|
63
64
|
## 报告风格
|
|
64
65
|
- 风格: standard
|
|
@@ -83,13 +84,13 @@ disable-model-invocation: true
|
|
|
83
84
|
"action": "add",
|
|
84
85
|
"job": {
|
|
85
86
|
"name": "evolution-daily-report",
|
|
86
|
-
"schedule": { "kind": "cron", "expr": "0
|
|
87
|
+
"schedule": { "kind": "cron", "expr": "0 23 * * *", "tz": "UTC" },
|
|
87
88
|
"sessionTarget": "isolated",
|
|
88
89
|
"payload": {
|
|
89
90
|
"kind": "agentTurn",
|
|
90
91
|
"message": "执行进化日报技能:读取日志数据,生成日报并发送"
|
|
91
92
|
},
|
|
92
|
-
"delivery": { "mode": "announce", "channel": "
|
|
93
|
+
"delivery": { "mode": "announce", "channel": "feishu", "to": "ou_cf5c98aada743ab12c65c7c6764b5a49" }
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
```
|
|
@@ -97,12 +98,73 @@ disable-model-invocation: true
|
|
|
97
98
|
### Step 5: 日报生成(定时触发或手动触发)
|
|
98
99
|
|
|
99
100
|
1. **读取定量数据**:获取 `daily-stats.json` 和 `pain_dictionary.json` 中的指标。
|
|
100
|
-
2.
|
|
101
|
+
2. **提取定性记忆(关键防遗忘步骤)**:因为你可能经历了漫长的上下文,**必须使用文件读取工具**去扫描以下核心进化文件,提取"今天"新增的内容:
|
|
101
102
|
- `memory/ISSUE_LOG.md`:寻找今天发生的具体错误与复盘。
|
|
102
103
|
- `memory/DECISIONS.md`:寻找今天定下的新架构规则。
|
|
103
104
|
- `memory/logs/SYSTEM.log`:寻找今天触发的门禁拦截或子代理孵化事件。
|
|
104
105
|
3. **合成与生成**:结合定量指标和定性记忆,生成深度洞察,按用户风格生成 Markdown。绝不要凭空捏造洞察。
|
|
105
|
-
4.
|
|
106
|
+
4. **发送飞书推送**:调用飞书 API 发送(见下方"飞书推送实施规范")。
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## 飞书消息格式
|
|
111
|
+
|
|
112
|
+
当发送渠道为飞书时,使用以下格式发送消息:
|
|
113
|
+
|
|
114
|
+
```json
|
|
115
|
+
{
|
|
116
|
+
"action": "send",
|
|
117
|
+
"channel": "feishu",
|
|
118
|
+
"target": "user:ou_cf5c98aada743ab12c65c7c6764b5a49",
|
|
119
|
+
"message": "📊 Principles 进化日报 - {date}\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n🛡️ Trust Score: {trust_score}/100 (Stage {trust_stage})\n😴 GFI: {gfi_peak}\n⚡ Pain: {pain_count} pts\n\n📈 7 日趋势:\n{7day_trend}\n\n📋 进化队列:待处理 {pending} 项\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n详情: 输入 /pd-evolution-status"
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## 飞书推送实施规范
|
|
124
|
+
|
|
125
|
+
### 推送流程
|
|
126
|
+
|
|
127
|
+
1. **组装消息**:根据上方"飞书消息格式"生成完整消息内容
|
|
128
|
+
2. **执行推送**:使用 `message` 工具发送到飞书
|
|
129
|
+
3. **记录状态**:将推送结果写入 `memory/logs/daily-push-log.md`
|
|
130
|
+
|
|
131
|
+
### 重试机制
|
|
132
|
+
|
|
133
|
+
推送失败时自动重试,最多 3 次:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
尝试 1 → 失败 → 等待 30 秒 → 尝试 2 → 失败 → 等待 60 秒 → 尝试 3
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
- 每次尝试都要记录到日志
|
|
140
|
+
- 3 次全失败后,降级为控制台输出(print 到会话)
|
|
141
|
+
|
|
142
|
+
### 状态日志格式
|
|
143
|
+
|
|
144
|
+
每次推送(成功或失败)都追加到 `memory/logs/daily-push-log.md`:
|
|
145
|
+
|
|
146
|
+
```markdown
|
|
147
|
+
## {date} 推送记录
|
|
148
|
+
|
|
149
|
+
- **时间**: {timestamp} UTC
|
|
150
|
+
- **接收人**: ou_cf5c98aada743ab12c65c7c6764b5a49
|
|
151
|
+
- **尝试次数**: {attempts}
|
|
152
|
+
- **状态**: success / failed
|
|
153
|
+
- **失败原因**(如有): {error_message}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### 幂等检查
|
|
157
|
+
|
|
158
|
+
推送前先检查当日是否已推送成功(读取日志文件):
|
|
159
|
+
- **已推送成功** → 跳过本次推送,记录"已存在,跳过"
|
|
160
|
+
- **未推送或失败** → 执行推送
|
|
161
|
+
|
|
162
|
+
### 错误处理
|
|
163
|
+
|
|
164
|
+
- **API 错误**:记录错误信息到日志,继续重试
|
|
165
|
+
- **token 过期**:返回明确错误提示,停止重试
|
|
166
|
+
- **数据读取失败**:使用默认值,继续生成日报
|
|
167
|
+
```
|
|
106
168
|
|
|
107
169
|
---
|
|
108
170
|
|
|
@@ -116,6 +178,8 @@ disable-model-invocation: true
|
|
|
116
178
|
| 架构决策 | `memory/DECISIONS.md` | **(重要)** 记录了今天固化的系统级原则 |
|
|
117
179
|
| Pain 规则 | `{stateDir}/pain_dictionary.json` | 规则数量 |
|
|
118
180
|
| 用户配置 | `{stateDir}/daily-report.md` | 偏好设置 |
|
|
181
|
+
| Trust Score | `{stateDir}/AGENT_SCORECARD` | Trust Engine 数据 |
|
|
182
|
+
| Evolution Queue | `{stateDir}/evolution_queue.json` | 进化队列状态 |
|
|
119
183
|
|
|
120
184
|
---
|
|
121
185
|
|
|
@@ -196,4 +260,24 @@ disable-model-invocation: true
|
|
|
196
260
|
|
|
197
261
|
## 手动触发
|
|
198
262
|
|
|
199
|
-
用户可随时运行 `/evolution-
|
|
263
|
+
用户可随时运行 `/pd-evolution-status` 查看当前进化状态。
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## 故障处理
|
|
268
|
+
|
|
269
|
+
### 飞书推送失败
|
|
270
|
+
1. 记录错误到 `memory/logs/daily-push-log.md`
|
|
271
|
+
2. 执行重试(最多 3 次,间隔 30s/60s)
|
|
272
|
+
3. 3 次全失败后降级为控制台输出
|
|
273
|
+
4. 下次执行时自动检查幂等(不重复推送)
|
|
274
|
+
|
|
275
|
+
### 数据读取失败
|
|
276
|
+
1. 使用默认值(0 或 "无")
|
|
277
|
+
2. 继续生成日报,不阻塞
|
|
278
|
+
3. 在日报中标注"部分数据不可用"
|
|
279
|
+
|
|
280
|
+
### 数据读取失败
|
|
281
|
+
1. 使用默认值(0 或 "无")
|
|
282
|
+
2. 继续生成日报,不阻塞
|
|
283
|
+
3. 在日报中标注"部分数据不可用"
|
|
@@ -68,10 +68,62 @@
|
|
|
68
68
|
"auto_trigger_conditions": {
|
|
69
69
|
"min_tool_calls": 5,
|
|
70
70
|
"error_rate_threshold": 0.3,
|
|
71
|
-
"complexity_keywords": [
|
|
71
|
+
"complexity_keywords": [
|
|
72
|
+
"refactor",
|
|
73
|
+
"architecture",
|
|
74
|
+
"design",
|
|
75
|
+
"optimize",
|
|
76
|
+
"security",
|
|
77
|
+
"critical"
|
|
78
|
+
]
|
|
72
79
|
},
|
|
73
80
|
"default_model": "T-01",
|
|
74
81
|
"default_depth": 2,
|
|
75
82
|
"timeout_ms": 60000
|
|
83
|
+
},
|
|
84
|
+
"empathy_engine": {
|
|
85
|
+
"enabled": true,
|
|
86
|
+
"dedupe_window_ms": 60000,
|
|
87
|
+
"penalties": {
|
|
88
|
+
"mild": 10,
|
|
89
|
+
"moderate": 25,
|
|
90
|
+
"severe": 40
|
|
91
|
+
},
|
|
92
|
+
"rate_limit": {
|
|
93
|
+
"max_per_turn": 40,
|
|
94
|
+
"max_per_hour": 120
|
|
95
|
+
},
|
|
96
|
+
"model_calibration": {}
|
|
97
|
+
},
|
|
98
|
+
"gfi_gate": {
|
|
99
|
+
"enabled": true,
|
|
100
|
+
"thresholds": {
|
|
101
|
+
"low_risk_block": 70,
|
|
102
|
+
"high_risk_block": 40,
|
|
103
|
+
"large_change_block": 50
|
|
104
|
+
},
|
|
105
|
+
"large_change_lines": 50,
|
|
106
|
+
"trust_stage_multipliers": {
|
|
107
|
+
"1": 0.5,
|
|
108
|
+
"2": 0.75,
|
|
109
|
+
"3": 1.0,
|
|
110
|
+
"4": 1.5
|
|
111
|
+
},
|
|
112
|
+
"bash_safe_patterns": [
|
|
113
|
+
"^(ls|dir|pwd|which|where|echo|env|cat|type|head|tail|less|more)\\b",
|
|
114
|
+
"^git\\s+(status|log|diff|branch|show|remote)\\b",
|
|
115
|
+
"^npm\\s+(run|test|build|start)\\b",
|
|
116
|
+
"^(make|gradle|mvn)\\b"
|
|
117
|
+
],
|
|
118
|
+
"bash_dangerous_patterns": [
|
|
119
|
+
"rm\\s+(-[a-z]*r[a-z]*f|-rf)",
|
|
120
|
+
"del\\s+/s",
|
|
121
|
+
"rmdir\\s+/s",
|
|
122
|
+
"git\\s+(push\\s+.*--force|reset\\s+--hard|clean\\s+-fd)",
|
|
123
|
+
"npm\\s+publish",
|
|
124
|
+
"pip\\s+upload",
|
|
125
|
+
"docker\\s+push",
|
|
126
|
+
"(curl|wget).*\\|\\s*(ba)?sh"
|
|
127
|
+
]
|
|
76
128
|
}
|
|
77
|
-
}
|
|
129
|
+
}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
"IDENTITY.md",
|
|
7
7
|
"USER.md",
|
|
8
8
|
"docs/PRINCIPLES.md",
|
|
9
|
+
".principles/PROFILE.json",
|
|
9
10
|
"docs/PROFILE.json"
|
|
10
11
|
],
|
|
11
12
|
"gate": {
|
|
@@ -22,6 +23,7 @@
|
|
|
22
23
|
"IDENTITY.md",
|
|
23
24
|
"USER.md",
|
|
24
25
|
"docs/PRINCIPLES.md",
|
|
26
|
+
".principles/PROFILE.json",
|
|
25
27
|
"docs/PROFILE.json",
|
|
26
28
|
"docs/okr/**"
|
|
27
29
|
],
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# 🎯 CURRENT_FOCUS
|
|
2
|
+
|
|
3
|
+
> **版本**: v1 | **状态**: INIT | **更新**: {YYYY-MM-DD}
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 📍 状态快照
|
|
8
|
+
|
|
9
|
+
| 维度 | 值 |
|
|
10
|
+
|------|-----|
|
|
11
|
+
| 当前阶段 | 初始化 |
|
|
12
|
+
| 信任分数 | 85/100 |
|
|
13
|
+
| 认知卫生 | ✅ 清爽 |
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 🔄 当前任务
|
|
18
|
+
|
|
19
|
+
### P0(阻塞/紧急)
|
|
20
|
+
<!-- 阻塞项,需要立即处理 -->
|
|
21
|
+
- [ ] 无
|
|
22
|
+
|
|
23
|
+
### P1(进行中)
|
|
24
|
+
<!-- 当前正在进行的核心任务,最多 3 项 -->
|
|
25
|
+
- [ ] {任务描述} ← 当前
|
|
26
|
+
|
|
27
|
+
### P2(待办)
|
|
28
|
+
<!-- 优先级较低的待办事项 -->
|
|
29
|
+
- [ ] {任务描述}
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## ➡️ 下一步
|
|
34
|
+
|
|
35
|
+
<!-- 下一步行动,按优先级排序 -->
|
|
36
|
+
1. {下一步行动1}
|
|
37
|
+
2. {下一步行动2}
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 📎 参考
|
|
42
|
+
|
|
43
|
+
| 资源 | 路径 |
|
|
44
|
+
|------|------|
|
|
45
|
+
| 详细计划 | `memory/tasks/{任务目录}/PLAN.md` |
|
|
46
|
+
| 历史版本 | `memory/okr/.history/` |
|
|
47
|
+
| 任务列表 | `memory/okr/WEEK_TASKS.json` |
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
<!--
|
|
52
|
+
编辑指南:
|
|
53
|
+
1. 版本号每次压缩时 +1
|
|
54
|
+
2. 状态可选:INIT | PLANNING | EXECUTING | BLOCKED | DONE
|
|
55
|
+
3. 压缩时备份到 .history/CURRENT_FOCUS.v{N}.{date}.md
|
|
56
|
+
4. 目标:< 40 行,超过时压缩已完成任务到 MEMORY.md
|
|
57
|
+
-->
|