feihong-code 7.2.0 → 7.6.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.
Files changed (204) hide show
  1. package/.github/workflows/ci.yml +54 -1
  2. package/.github/workflows/release.yml +30 -0
  3. package/.github/workflows/swebench-real.yml +84 -0
  4. package/CHANGELOG.md +41 -39
  5. package/CONTRIBUTING.md +9 -2
  6. package/README.md +56 -6
  7. package/README.self-evolve.md +279 -274
  8. package/dist/agent/change-manager.js +1 -1
  9. package/dist/agent/code-rag.js +1 -1
  10. package/dist/agent/code-review.js +1 -1
  11. package/dist/agent/code-writer.js +1 -1
  12. package/dist/agent/completion-engine.js +76 -45
  13. package/dist/agent/completion-engine.js.map +1 -1
  14. package/dist/agent/completion-postprocess.js +109 -0
  15. package/dist/agent/completion-postprocess.js.map +1 -0
  16. package/dist/agent/context-budget.js +121 -0
  17. package/dist/agent/context-budget.js.map +1 -0
  18. package/dist/agent/context-compactor.js +58 -0
  19. package/dist/agent/context-compactor.js.map +1 -1
  20. package/dist/agent/experience.js +1 -1
  21. package/dist/agent/layered-memory.js +1 -1
  22. package/dist/agent/lint.js +121 -0
  23. package/dist/agent/lint.js.map +1 -0
  24. package/dist/agent/orchestrator.js +106 -31
  25. package/dist/agent/orchestrator.js.map +1 -1
  26. package/dist/agent/parallel-orchestrator.js +1 -1
  27. package/dist/agent/planner.js +8 -3
  28. package/dist/agent/planner.js.map +1 -1
  29. package/dist/agent/prompts.js +55 -55
  30. package/dist/agent/quality-gate.js +1 -1
  31. package/dist/agent/repo-context.js +1 -1
  32. package/dist/agent/repo-reader.js +1 -1
  33. package/dist/agent/repo-underwriter.js +1 -1
  34. package/dist/agent/self-correction.js +25 -25
  35. package/dist/agent/self-heal.js +32 -27
  36. package/dist/agent/self-heal.js.map +1 -1
  37. package/dist/agent/self-improver.js +1 -1
  38. package/dist/agent/subagent-summary.js +1 -1
  39. package/dist/agent/subagent.js +1 -1
  40. package/dist/agent/swe-agent.js +1 -1
  41. package/dist/agent/swe-verifier.js +1 -1
  42. package/dist/agent/symbol-index.js +1 -1
  43. package/dist/agent/team.js +1 -1
  44. package/dist/agent/type-checker.js +1 -1
  45. package/dist/cli/commands.js +16 -0
  46. package/dist/cli/commands.js.map +1 -1
  47. package/dist/cli/index.js +66 -2
  48. package/dist/cli/index.js.map +1 -1
  49. package/dist/cli/multi-pane-tui.js +217 -0
  50. package/dist/cli/multi-pane-tui.js.map +1 -0
  51. package/dist/cli/repl.js +1 -1
  52. package/dist/cli/run.js +168 -42
  53. package/dist/cli/run.js.map +1 -1
  54. package/dist/cli/self-evolve-cli.js +168 -0
  55. package/dist/cli/tui-run.js +79 -0
  56. package/dist/cli/tui-run.js.map +1 -0
  57. package/dist/cli/tui.js +1 -1
  58. package/dist/cli/tui.js.map +1 -1
  59. package/dist/cli/version.js +3 -3
  60. package/dist/cli/version.js.map +1 -1
  61. package/dist/enterprise/audit.js +1 -1
  62. package/dist/enterprise/index.js +1 -1
  63. package/dist/enterprise/policy.js +1 -1
  64. package/dist/enterprise/quota.js +1 -1
  65. package/dist/enterprise/tenant.js +1 -1
  66. package/dist/harness/executor.js +1 -1
  67. package/dist/harness/index.js +1 -1
  68. package/dist/harness/loader.js +1 -1
  69. package/dist/harness/types.js +1 -1
  70. package/dist/harness/verifier.js +52 -12
  71. package/dist/harness/verifier.js.map +1 -1
  72. package/dist/integrations/feishu-bridge.js +348 -0
  73. package/dist/integrations/feishu-bridge.js.map +1 -0
  74. package/dist/integrations/github-mcp.js +137 -0
  75. package/dist/integrations/github-mcp.js.map +1 -0
  76. package/dist/integrations/wechat-bridge.js +499 -0
  77. package/dist/integrations/wechat-bridge.js.map +1 -0
  78. package/dist/integrations/yuanbao-bridge.js +326 -0
  79. package/dist/integrations/yuanbao-bridge.js.map +1 -0
  80. package/dist/lsp/lsp-client.js +183 -0
  81. package/dist/lsp/lsp-client.js.map +1 -0
  82. package/dist/lsp/lsp-service.js +159 -0
  83. package/dist/lsp/lsp-service.js.map +1 -0
  84. package/dist/models/model-router.js +1 -1
  85. package/dist/models/model.dto.js +1 -1
  86. package/dist/models/providers/ollama.provider.js +1 -1
  87. package/dist/models/providers/openai-compatible.provider.js +1 -1
  88. package/dist/plugins/manager.js +50 -2
  89. package/dist/plugins/manager.js.map +1 -1
  90. package/dist/plugins/plugin-loader.js +1 -1
  91. package/dist/runtime/event-log.js +1 -1
  92. package/dist/runtime/git.js +1 -1
  93. package/dist/runtime/hooks.js +71 -4
  94. package/dist/runtime/hooks.js.map +1 -1
  95. package/dist/runtime/session-persist.js +1 -1
  96. package/dist/runtime/worktree.js +1 -1
  97. package/dist/self-evolve/manager.js +517 -401
  98. package/dist/self-evolve/self-heal-scheduler.js +160 -0
  99. package/dist/self-evolve/self-heal-scheduler.js.map +1 -0
  100. package/dist/shared/concurrency.js +1 -1
  101. package/dist/shared/config.js +4 -2
  102. package/dist/shared/config.js.map +1 -1
  103. package/dist/shared/errors.js +1 -1
  104. package/dist/shared/i18n.js +109 -101
  105. package/dist/shared/i18n.js.map +1 -1
  106. package/dist/shared/secure-store.js +12 -5
  107. package/dist/shared/secure-store.js.map +1 -1
  108. package/dist/shared/types.js +1 -1
  109. package/dist/skills/goal.js +1 -1
  110. package/dist/skills/grill.js +1 -1
  111. package/dist/skills/plan.js +1 -1
  112. package/dist/skills/pua-hooks.js +273 -0
  113. package/dist/skills/pua-hooks.js.map +1 -0
  114. package/dist/skills/self-heal.js +9 -3
  115. package/dist/skills/self-heal.js.map +1 -1
  116. package/dist/skills/skill-loader.js +1 -1
  117. package/dist/skills/skill-market.js +84 -8
  118. package/dist/skills/skill-market.js.map +1 -1
  119. package/dist/tools/analysis/code-analyzer.js +1 -1
  120. package/dist/tools/file/edit.tool.js +18 -3
  121. package/dist/tools/file/edit.tool.js.map +1 -1
  122. package/dist/tools/file/list.tool.js +1 -1
  123. package/dist/tools/file/read.tool.js +1 -1
  124. package/dist/tools/file/write.tool.js +1 -1
  125. package/dist/tools/generator/code-generator.js +41 -41
  126. package/dist/tools/generator/test-generator.js +10 -10
  127. package/dist/tools/index.js +1 -1
  128. package/dist/tools/mcp/index.js +1 -1
  129. package/dist/tools/mcp/mcp-client.js +1 -1
  130. package/dist/tools/safe-path.js +1 -1
  131. package/dist/tools/search/grep.tool.js +1 -1
  132. package/dist/tools/shell/exec.js +24 -2
  133. package/dist/tools/shell/exec.js.map +1 -1
  134. package/dist/tools/shell/run-shell.tool.js +1 -1
  135. package/dist/tools/skills/load-skill.tool.js +1 -1
  136. package/dist/tools/tool.registry.js +10 -1
  137. package/dist/tools/tool.registry.js.map +1 -1
  138. package/dist/tools/verify/build-check.tool.js +1 -1
  139. package/dist/tools/verify/test-run.tool.js +1 -1
  140. package/dist/tools/web/web.tool.js +1 -1
  141. package/dist/voice/voice-programming.js +32 -6
  142. package/dist/voice/voice-programming.js.map +1 -1
  143. package/dist/web/auth.js +34 -2
  144. package/dist/web/auth.js.map +1 -1
  145. package/dist/web/channels.js +1 -1
  146. package/dist/web/extra-apis.js +440 -0
  147. package/dist/web/extra-apis.js.map +1 -0
  148. package/dist/web/public/css/style.css +99 -72
  149. package/dist/web/public/index.html +44 -1
  150. package/dist/web/public/js/api.js +64 -2
  151. package/dist/web/public/js/app.js +151 -128
  152. package/dist/web/public/js/mock-api.js +25 -0
  153. package/dist/web/public/js/monaco-editor.js +161 -1
  154. package/dist/web/public/js/ui.js +292 -56
  155. package/dist/web/public/service-worker.js +5 -29
  156. package/dist/web/server.js +178 -61
  157. package/dist/web/server.js.map +1 -1
  158. package/dist/web/task-queue.js +6 -21
  159. package/dist/web/task-queue.js.map +1 -1
  160. package/docs/App/344/275/277/347/224/250/350/257/264/346/230/216/344/271/246.md +1 -1
  161. package/docs/App/346/212/200/346/234/257/350/257/264/346/230/216/344/271/246.md +1 -1
  162. package/docs/BENCHMARK_REPORT_en.md +62 -5
  163. package/docs/BENCHMARK_REPORT_zh.md +66 -9
  164. package/docs/DPA.md +65 -0
  165. package/docs/DPA/346/225/260/346/215/256/345/244/204/347/220/206/345/215/217/350/256/256/346/250/241/346/235/277_v1.0.md +69 -0
  166. package/docs/Deployment_Guide_EN.md +1 -1
  167. package/docs/SECURITY_WHITEPAPER.md +74 -0
  168. package/docs/SELF-EVOLVE-GUIDE.md +1 -1
  169. package/docs/SWE_BENCH_REPORT.md +73 -0
  170. package/docs/TECHNICAL_SPEC_en.md +1 -1
  171. package/docs/TECHNICAL_SPEC_zh.md +1 -1
  172. package/docs/Technical_Manual_EN.md +1 -1
  173. package/docs/UPDATE_NOTES_en.md +1 -1
  174. package/docs/UPDATE_NOTES_zh.md +1 -1
  175. package/docs/UPGRADE_7.2.0.md +309 -0
  176. package/docs/UPGRADE_GUIDE_7_5.md +86 -0
  177. package/docs/UPGRADE_GUIDE_7_6.md +153 -0
  178. package/docs/User_Manual_EN.md +1 -1
  179. package/docs/VOLTAGENT_SKILLS_CATALOG.md +95 -0
  180. package/docs/error-codes.md +1 -1
  181. package/docs/geo-feihong-code.html +391 -0
  182. package/docs//344/272/247/345/223/201/345/274/200/345/217/221/346/226/207/346/241/243.md +5 -3
  183. package/docs//344/275/277/347/224/250/350/257/264/346/230/216/344/271/246.md +140 -231
  184. package/docs//345/205/250/351/235/242/345/244/215/347/233/230_50/350/275/256/346/267/261/345/272/246/345/256/241/350/256/241_v7.2.0.md +208 -0
  185. package/docs//345/205/250/351/235/242/345/244/215/347/233/230_6/351/241/271/351/207/215/347/202/271/346/240/270/346/237/245_v7.2.0.md +152 -0
  186. package/docs//345/205/250/351/235/242/345/244/215/347/233/230_/350/277/220/350/241/214/346/227/266/345/256/236/346/265/213/347/211/210_v7.2.0.md +271 -0
  187. package/docs//345/220/210/350/247/204/350/256/244/350/257/201/345/207/206/345/244/207/346/270/205/345/215/225_v7.2.0.md +59 -0
  188. package/docs//345/256/211/345/205/250/347/231/275/347/232/256/344/271/246_v7.2.0.md +84 -0
  189. package/docs//346/212/200/346/234/257/350/257/264/346/230/216/344/271/246.md +240 -149
  190. package/docs//351/203/250/347/275/262/350/257/264/346/230/216/344/271/246.md +2 -2
  191. package/electron/main.js +4 -202
  192. package/package.json +182 -172
  193. package/templates/skills/api-design/SKILL.md +27 -0
  194. package/templates/skills/code-review/SKILL.md +35 -0
  195. package/templates/skills/dependency-upgrade/SKILL.md +29 -0
  196. package/templates/skills/doc-gen/SKILL.md +29 -0
  197. package/templates/skills/git-flow/SKILL.md +26 -0
  198. package/templates/skills/onboarding/SKILL.md +27 -0
  199. package/templates/skills/performance/SKILL.md +29 -0
  200. package/templates/skills/refactor/SKILL.md +28 -0
  201. package/templates/skills/security-audit/SKILL.md +28 -0
  202. package/templates/skills/test-gen/SKILL.md +30 -0
  203. package/docs/DEPLOYMENT.md +0 -382
  204. package/docs/MODEL_FINETUNING.md +0 -405
@@ -1,9 +1,10 @@
1
1
  # 飞虹 Code(fhcode)使用说明书
2
2
 
3
- **版本**:v0.5.0-b
4
- **日期**:2026-08-16
5
- **产品**:飞虹 Code(feihong-code)— 终端 AI 编程智能体(Muse Code 参照复刻)
3
+ **版本**:v7.6.0
4
+ **日期**:2026-08-28
5
+ **产品**:飞虹 Code(feihong-code)— 终端 AI 编程智能体(对标 Muse Code,自研内核)
6
6
  **署名**:晋江市飞虹智科技企业管理有限公司 · 飞扬企源研发中心 · 负责人:吴赐虹
7
+ **配套文档**:`docs/技术说明书.md`(技术设计)、`docs/UPGRADE_GUIDE_7_6.md`(升级)、`docs/常见问题与故障排查.md`(FAQ)
7
8
 
8
9
  ---
9
10
 
@@ -15,304 +16,212 @@
15
16
  - npm ≥ 9
16
17
  - git(diff/rollback/并行 worktree 需要)
17
18
  - Docker(仅 `FH_SANDBOX_MODE=container` 时需要)
19
+ - 可选:Ollama(本地模型)、faster-whisper(本地语音)
18
20
 
19
21
  ### 1.2 安装
20
22
 
21
23
  ```bash
22
- # 方式一:源码构建(推荐)
24
+ # 方式一:npm 全局安装(推荐)
25
+ npm install -g feihong-code
26
+ fhcode --version # 应输出 7.6.0
27
+
28
+ # 方式二:源码构建
23
29
  git clone https://github.com/wch887292/feihong-code.git
24
30
  cd feihong-code
25
31
  npm install
26
32
  npm run build
33
+ node dist/cli/index.js --version # 7.6.0
27
34
 
28
- # 方式二:npm 全局安装
29
- npm install -g feihong-code
30
- fhcode --version # 验证
31
- ```
32
-
33
- ### 1.3 三秒上手
34
-
35
- ```bash
36
- # 未配置模型时自动进入离线模式(Mock 驱动闭环),可直接体验
37
- fhcode "写一个 hello.ts"
35
+ # 方式三:Electron 桌面版
36
+ npm run electron:build # 生成 Windows 安装包
38
37
 
39
- # 配置真实模型(DeepSeek 示例)后走真实模式
40
- export FH_PROVIDERS='[{"name":"deepseek","type":"openai-compatible","baseUrl":"https://api.deepseek.com/v1","apiKey":"sk-...","tags":["code-gen","reasoning"],"priority":1}]'
41
- fhcode "修复 src/auth.ts 中的 token 校验 bug"
38
+ # 方式四:Android APK(versionCode 8 / 7.6.0)
39
+ # 从发布渠道安装,配套桌面端使用
42
40
  ```
43
41
 
44
- ---
45
-
46
- ## 二、命令速查
42
+ ### 1.3 首次配置
47
43
 
48
44
  ```bash
49
- # 基础
50
- fhcode 进入交互式 REPL(TTY 下自动启用 TUI)
51
- fhcode "<需求>" 单命令执行一条需求
52
- fhcode --stream "<需求>" 流式输出(任务过程实时可见)
53
- fhcode --yes "<需求>" 跳过审批(危险操作需谨慎)
54
- fhcode --lang zh|en 设置界面语言
55
-
56
- # 只读技能
57
- fhcode /plan "<目标>" 生成实现计划
58
- fhcode /grill [路径] 红队式代码审查(文本)
59
- fhcode review [路径] [--json] 结构化代码审查(--json 供 IDE/CI 消费)
60
- fhcode /goal "<目标>" 分解并保存高层目标
61
-
62
- # 会话管理(M3)
63
- fhcode sessions 列出历史会话
64
- fhcode resume <id> 从检查点续跑
65
- fhcode diff [id] 查看会话/工作区变更
66
- fhcode rollback <id> --yes 回滚会话改动(破坏性)
67
-
68
- # 企业能力(M4)
69
- fhcode whoami 当前租户/用户/角色/配额
70
- fhcode policy 查看生效 RBAC 策略
71
- fhcode audit [verify] 审计记录 / 哈希链校验
72
- fhcode tenants 租户用量汇总
73
-
74
- # 自我进化(M6/M8/M9)
75
- fhcode model-stats 模型性能统计
76
- fhcode experiences [路径] 经验库
77
- fhcode code-write "<目标>" 自主编程
78
- fhcode quality-gate [路径] 质量门禁审查
79
- fhcode self-improve 自我改进统计
80
- fhcode swe "<目标>" 全自动软件工程 Agent
81
- fhcode team "<目标>" 多 agent 协作(共享任务板+消息总线)
82
-
83
- # 生态
84
- fhcode skill-market search "<关键词>" 搜索技能市场(agentskills.io)
85
- fhcode skill-market install <技能名> 安装技能
86
- fhcode skill-market list 列出本地技能
87
- fhcode plugin install <目录|git URL> 安装插件
88
- fhcode plugin list 列出插件
89
- fhcode doctor 环境自检
90
- ```
91
-
92
- **常用 flag**:`--parallel`(并行 worktree)/ `--repo`(swe 目标仓库/市场源)/ `--context-file <path>`(附加文件上下文)/ `--max-iterations N` / `--max-retries N` / `--plan-only` / `--verify-only` / `--json`。
93
-
94
- ---
95
-
96
- ## 三、模型配置
45
+ # 复制配置模板并填写模型 API Key
46
+ cp .env.example .env
47
+ # 编辑 .env:至少配置 FH_PROVIDERS 中一个 provider 的 apiKey
97
48
 
98
- ### 3.1 配置优先级
99
-
100
- 1. `FH_PROVIDERS`(JSON 数组,最高优先级)
101
- 2. `fhcode.config.json`(项目配置文件 `models.providers`)
102
- 3. 单环境变量 `FH_MODEL_*`
103
-
104
- ### 3.2 Ollama 本地模型
105
-
106
- ```bash
107
- export FH_MODEL_NAME=qwen3:8b
108
- export FH_MODEL_TYPE=ollama
109
- export FH_MODEL_BASE_URL=http://localhost:11434
110
- export FH_MODEL_TAGS=code-gen,reasoning,local
49
+ # 环境自检(可选)
50
+ fhcode doctor
111
51
  ```
112
52
 
113
- ### 3.3 DeepSeek / 通义
53
+ ### 1.4 第一个任务
114
54
 
115
55
  ```bash
116
- # DeepSeek
117
- export FH_PROVIDERS='[{"name":"deepseek","type":"openai-compatible","baseUrl":"https://api.deepseek.com/v1","apiKey":"sk-...","tags":["code-gen","reasoning"],"costPer1k":0.0001}]'
118
- # 通义千问
119
- export FH_PROVIDERS='[{"name":"qwen","type":"openai-compatible","baseUrl":"https://dashscope.aliyuncs.com/compatible-mode/v1","apiKey":"...","tags":["code-gen","long-context"]}]'
120
- ```
121
-
122
- ### 3.4 路由策略
56
+ # 直接下达自然语言任务
57
+ fhcode "给我写一个 Node.js 的 hello world HTTP 服务,监听 3000 端口"
123
58
 
124
- ```bash
125
- export FH_MODEL_STRATEGY=cost # cost | capability | latency
126
- export FH_BUDGET_USD=0.5 # 单任务成本上限(超限熔断)
59
+ # 查看会话与回滚
60
+ fhcode sessions # 列出历史会话
61
+ fhcode diff <会话ID> # 查看本次改动
62
+ fhcode rollback <会话ID> # 回滚改动
127
63
  ```
128
- 低成本标签 `cheap` 的 provider 会优先承担 `swe`/并行子任务(P1-1 模型分工)。
129
64
 
130
65
  ---
131
66
 
132
- ## 四、典型工作流
67
+ ## 二、CLI 命令手册
68
+
69
+ | 命令 | 说明 | 示例 |
70
+ |------|------|------|
71
+ | `fhcode <目标>` | 直接执行自然语言任务(默认入口) | `fhcode "修复登录接口的 bug"` |
72
+ | `fhcode sessions` | 列出历史会话 | `fhcode sessions` |
73
+ | `fhcode resume <id>` | 续跑指定会话 | `fhcode resume 3f9a…` |
74
+ | `fhcode diff <id>` | 查看会话产生的代码改动 | `fhcode diff 3f9a…` |
75
+ | `fhcode rollback <id>` | 回滚会话改动 | `fhcode rollback 3f9a…` |
76
+ | `fhcode whoami` | 查看当前身份与角色 | `fhcode whoami` |
77
+ | `fhcode policy` | 查看/管理权限策略 | `fhcode policy` |
78
+ | `fhcode audit` | 审计日志;`--verify` 校验哈希链 | `fhcode audit --verify` |
79
+ | `fhcode tenants` | 多租户管理 | `fhcode tenants` |
80
+ | `fhcode doctor` | 环境自检(依赖/权限/网络) | `fhcode doctor` |
81
+ | `fhcode tui` | 进入多面板终端 UI | `fhcode tui` |
82
+ | `fhcode serve [port]` | 启动 Web 控制台 | `fhcode serve 8080` |
83
+ | `fhcode plugin <action>` | 插件管理(install/list/remove) | `fhcode plugin install xxx` |
84
+ | `fhcode skill-market <action>` | 技能市场(search/install) | `fhcode skill-market search lint` |
85
+ | `fhcode skill-new <name>` | 新建技能(SKILL.md 模板) | `fhcode skill-new my-lint` |
86
+ | `fhcode review <path>` | 代码审查 | `fhcode review src/` |
87
+ | `fhcode team <目标>` | 多 agent 团队协作 | `fhcode team "完成这个模块"` |
88
+ | `fhcode code-write <目标>` | 纯代码生成 | `fhcode code-write "写一个排序函数"` |
89
+ | `fhcode quality-gate <path>` | 质量门禁检查 | `fhcode quality-gate src/` |
90
+ | `fhcode self-improve` | 查看自我改进学习沉淀 | `fhcode self-improve` |
91
+ | `fhcode self-evolve <action>` | 自我迭代运维(status/report) | `fhcode self-evolve status` |
92
+ | `fhcode model-stats` | 模型用量与成本统计 | `fhcode model-stats` |
93
+ | `fhcode experiences` | 浏览统一经验库 | `fhcode experiences` |
94
+ | `fhcode harness …` | SWE-bench 评测 | `fhcode harness --split lite --limit 1 --mode mock` |
95
+ | `fhcode swe <目标>` | 全自动软件工程任务 | `fhcode swe "实现排序功能"` |
96
+ | 内置技能 | `/plan`(规划)`/grill`(拷问)`/self-heal`(自愈) | `fhcode /plan "实现登录"` |
133
97
 
134
- ### 4.1 单任务
98
+ ---
135
99
 
136
- ```bash
137
- # 基础
138
- fhcode "实现一个 HTTP 服务器,监听 3000 端口"
139
- # 流式 + 指定上下文文件
140
- fhcode --stream --context-file src/auth.ts "审查并修复此文件中的安全问题"
141
- ```
100
+ ## 三、核心功能
142
101
 
143
- ### 4.2 全自动软件工程(swe)
102
+ ### 3.1 对话编程
144
103
 
145
- ```bash
146
- fhcode swe "修复 src/calc.ts 的 add 函数 bug,让 tests/calc.test.ts 通过" \
147
- --repo /path/to/project \
148
- --max-tasks 3 --max-iterations 5
149
- # --plan-only 仅规划 / --verify-only 仅验证 / --max-retries N 自愈重试
150
- ```
104
+ - 纯文本输出 + 实时思考过程展示
105
+ - 支持上下文压缩、检查点续跑(会话中途断线可 resume)
106
+ - 成本熔断:超预算自动止损(`FH_BUDGET_USD`)
151
107
 
152
- ### 4.3 agent 协作(team
108
+ ### 3.2 代码补全(Web / VS Code
153
109
 
154
- ```bash
155
- fhcode team "实现登录模块 并且 添加用户管理 并且 写集成测试"
156
- # 目标自动拆解 agent 并发认领 → 消息总线汇报 → 团队报告
157
- ```
110
+ - 多候选补全(按置信度 Top3)
111
+ - temperature 分层(quick 0 / full 0.3)
112
+ - 跨文件上下文(import 关联 + 工作区实时文档)
113
+ - 接受补全后自动 lint(语法错误实时波浪线提示)
158
114
 
159
- ### 4.4 技能市场与插件
115
+ ### 3.3 全自动软件工程(SWE)
160
116
 
161
117
  ```bash
162
- # agentskills.io 搜索并安装技能(安装后任务中自动发现)
163
- fhcode skill-market search "code review"
164
- fhcode skill-market install code-review
165
- # 安装插件(打包 skills+hooks+MCP)
166
- fhcode plugin install ./my-plugin
118
+ fhcode swe "给项目添加一个 markdown 转 HTML 的 CLI 工具"
167
119
  ```
168
120
 
169
- ### 4.5 会话恢复与回滚
170
-
171
- ```bash
172
- fhcode sessions # 找到会话 id
173
- fhcode resume <id> # 中断后续跑
174
- fhcode diff <id> # 查看改动
175
- fhcode rollback <id> --yes # 回滚(破坏性)
176
- ```
121
+ 流程:读取仓库结构 规划 → 实现 → 构建/测试验证 → 失败自动自愈重试 → 输出报告。验证支持测试(`--verifier test`)与文件级(`--verifier file`)两种模式。
177
122
 
178
- ### 4.6 环境自检
123
+ ### 3.4 SWE 评测(harness)
179
124
 
180
125
  ```bash
181
- fhcode doctor
182
- # Node 版本 / git / 模型配置 / 网络连通 / 主目录可写 / 沙箱模式
126
+ # 运行 mock 管道(无网络也可见证)
127
+ fhcode harness --split lite --limit 1 --mode mock --verifier file --report bench/run-xxx.md
128
+
129
+ # 使用官方测试验证器
130
+ fhcode harness --split lite --limit 1 --verifier test --test-command "npm run test"
183
131
  ```
184
132
 
185
- ---
133
+ 差分语义:修复前确认用例原本失败 → 修复后 FAIL_TO_PASS 全过 → PASS_TO_PASS 回归不破坏既有功能。
186
134
 
187
- ## 五、REPL / TUI 使用
135
+ ### 3.5 团队协作
188
136
 
189
137
  ```bash
190
- fhcode # 进入交互模式(TTY 自动启用 TUI)
138
+ fhcode team "让两个 agent 分别实现前端和后端"
191
139
  ```
192
- - TUI:顶部 sticky header 显示 模式/runId/迭代/成本/状态;内容区滚动;滚轮可回看
193
- - 输入需求回车执行;`exit`/`quit`/Ctrl+D 退出
194
- - 支持 `/plan` `/grill` `/goal` 斜杠技能
195
140
 
196
- ---
197
-
198
- ## 六、VSCode 扩展
199
-
200
- 在 `vscode-extension/` 目录打包(`npx @vscode/vsce package`)或 F5 调试加载:
201
-
202
- | 命令 | 说明 |
203
- |------|------|
204
- | `fhcode: 运行任务(附带选区上下文)` | 选中代码自动注入 `<selection>` 上下文 |
205
- | `fhcode: 内联评审当前文件` | `review --json` → 编辑器内联诊断(红/黄/蓝) |
206
- | `fhcode: 就地查看工作区 diff` | 原生 diff 编辑器 HEAD↔工作区 |
207
- | `fhcode: 查看最近任务输出` | 聚焦 Output Channel |
208
-
209
- 配置:`fhcode.binaryPath` / `fhcode.offline` / `fhcode.reviewOnSave`(保存自动评审,默认开)。
210
-
211
- ---
141
+ - 多 agent 消息总线协作
142
+ - 协作总览面板:任务状态漏斗 + 成员负载分布
212
143
 
213
- ## 七、Web 控制台(云执行)
144
+ ### 3.6 自我迭代(统一经验库)
214
145
 
215
146
  ```bash
216
- fhcode serve --port 8080
217
- # 浏览器打开 http://localhost:8080
147
+ fhcode self-improve # 查看学习沉淀(反思 + 经验库 + 成功率)
148
+ fhcode self-evolve status # 运维视图:失败记录/技能/共享经验库
149
+ fhcode experiences # 浏览经验库内容
218
150
  ```
219
151
 
220
- **任务面板**:输入 token(终端输出的 `FH_WEB_TOKEN`)→ 提交目标 → 轮询状态 → 展开结果详情。
152
+ - 失败、解决、技能沉淀自动写入共享经验库 `~/.feihong-code/experiences/experiences.jsonl`
153
+ - orchestrator 在后续任务自动检索注入经验,越用越强
221
154
 
222
- **API 调用**(Bearer 鉴权):
155
+ ### 3.7 语音编程
223
156
 
224
- ```bash
225
- TOKEN=$(echo $FH_WEB_TOKEN)
226
- # 提交任务
227
- curl -X POST http://localhost:8080/api/tasks \
228
- -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
229
- -d '{"goal":"写一个 hello.ts"}'
230
- # 查询
231
- curl http://localhost:8080/api/tasks -H "Authorization: Bearer $TOKEN"
232
- curl http://localhost:8080/api/tasks/<id> -H "Authorization: Bearer $TOKEN"
233
- # 注册 webhook(任务状态回调,可被 CI 调度)
234
- curl -X POST http://localhost:8080/api/webhook \
235
- -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
236
- -d '{"url":"https://your-ci.example.com/hook"}'
237
- ```
157
+ 支持口头指令 → 编辑器/终端动作:新建/打开文件、复制/粘贴/剪切、替换、取消注释、切换终端/侧边栏/全屏、解释代码等。适合现场调试场景(如「打开终端」「上下反了」等口语化指令)。
238
158
 
239
159
  ---
240
160
 
241
- ## 八、消息渠道
242
-
243
- ```bash
244
- # Telegram 通知(任务状态变化推送)
245
- export FH_CHANNEL_TELEGRAM_BOT_TOKEN=bot:xxx
246
- export FH_CHANNEL_TELEGRAM_CHAT_ID=12345
247
- # 企业微信群机器人(可多个 key)
248
- export FH_CHANNEL_WECOM_KEY=key1,key2
249
- # 出站白名单(可选,配置后仅白名单渠道可发)
250
- export FH_CHANNEL_ALLOW=telegram,wecom
251
- ```
161
+ ## 四、配置
162
+
163
+ ### 4.1 环境变量(.env)
164
+
165
+ | 变量 | 说明 | 默认 |
166
+ |------|------|------|
167
+ | `FH_HOME` | 数据目录 | `~/.feihong-code` |
168
+ | `FH_LOG_DIR` | 会话日志目录 | `~/.feihong-code/sessions` |
169
+ | `FH_PROVIDERS` | 模型供应商 JSON 数组(baseURL/apiKey/tags/costPer1k) | 空 |
170
+ | `FH_MODEL_STRATEGY` | 路由策略:cost / capability / latency | cost |
171
+ | `FH_BUDGET_USD` | 单任务预算上限(美元) | 0.5 |
172
+ | `FH_SANDBOX_MODE` | 沙箱模式:read-only / workspace-write / danger-full-access / container | workspace-write |
173
+ | `FH_SHELL_ALLOW` | Shell 白名单(逗号分隔) | git,npm,pnpm,node,ls,cat |
174
+ | `FH_REQUIRE_APPROVAL` | 危险操作是否需审批 | true |
175
+ | `FH_NETWORK_DENY` / `FH_NETWORK_ALLOW` | 网络域名黑白名单 | 空 |
176
+ | `FH_HOOKS` | hooks 配置(确定性控制) | 空 |
177
+ | `FH_MCP_SERVERS` | MCP 服务器配置 | 空 |
178
+
179
+ ### 4.2 沙箱模式速查
180
+
181
+ | 模式 | 适用场景 |
182
+ |------|---------|
183
+ | `read-only` | 只读勘察、审计场景 |
184
+ | `workspace-write` | 默认;日常开发 |
185
+ | `danger-full-access` | 需要全权限的自动化脚本 |
186
+ | `container` | 执行不可信代码(Docker 断网隔离) |
252
187
 
253
188
  ---
254
189
 
255
- ## 九、沙箱与安全使用
256
-
257
- ```bash
258
- # 沙箱模式
259
- export FH_SANDBOX_MODE=workspace-write # 默认
260
- export FH_SANDBOX_MODE=read-only # 只读勘察(禁写禁执行)
261
- export FH_SANDBOX_MODE=danger-full-access # 全权限(危险命令仍拦截)
262
- export FH_SANDBOX_MODE=container # Docker 容器内执行 shell
263
- export FH_SANDBOX_IMAGE=node:22-alpine # 容器镜像
264
-
265
- # 网络域名规则
266
- export FH_NETWORK_DENY=evil.example.com
267
- # export FH_NETWORK_ALLOW=api.example.com
268
-
269
- # 确定性 hooks(PreToolUse 非零退出拦截)
270
- export FH_HOOKS='[{"event":"PreToolUse","command":"node scripts/guard.js","tools":["run_shell"]}]'
271
- ```
190
+ ## 五、常见问题(FAQ)
272
191
 
273
- ---
192
+ **Q1:`fhcode --version` 显示的不是 7.6.0?**
193
+ 全局缓存旧包,先 `npm uninstall -g feihong-code` 再重装;源码方式先 `npm run build` 重新构建。
274
194
 
275
- ## 十、eval 跑分与回归门禁
195
+ **Q2:没有模型 API Key 怎么办?**
196
+ 使用 Ollama 本地模型(`FH_PROVIDERS` 配置 type 为 `ollama`),或使用内置 Mock 模式离线体验。
276
197
 
277
- ```bash
278
- # 本地跑分(场景 5 + 验收 5,验证真实产物)
279
- npm run build && npm run eval
198
+ **Q3:任务执行到一半断了?**
199
+ `fhcode sessions` 找到会话 ID,`fhcode resume <id>` 续跑;checkpoint 会自动保存进度。
280
200
 
281
- # 存档基线 + 对比门禁(低于基线即失败,可接入 CI)
282
- node scripts/eval.mjs --save-baseline bench/eval-baseline.json
283
- node scripts/eval.mjs --baseline bench/eval-baseline.json
201
+ **Q4:改了文件想撤销?**
202
+ `fhcode diff <id>` 查看改动,`fhcode rollback <id>` 一键回滚(基于 git)。
284
203
 
285
- # SWE-bench 数据集加载(HF 或镜像)
286
- node scripts/eval-swebench.mjs --split lite --limit 5
287
- node scripts/eval-swebench.mjs --split lite --limit 5 --run --report report.md
288
- FH_SWEBENCH_DATA_URL=https://mirror.example/swebench.json node scripts/eval-swebench.mjs --limit 3
289
- ```
204
+ **Q5:如何保证 AI 不乱改文件 / 不执行危险命令?**
205
+ 默认 `workspace-write` 模式:仅工作区可写、Shell 白名单 + 审批;网络域名规则可拦截目标站点;`FH_REQUIRE_APPROVAL=true` 时危险操作需确认。
290
206
 
291
- ---
207
+ **Q6:经验库会不会无限膨胀?**
208
+ 不会。统一经验库用稳定 id + upsert 合并:同一模式重复出现只累加 `sessionCount` 并更新成功率,不新增冗余条目。
292
209
 
293
- ## 十一、常见问题速查
210
+ **Q7:SWE 跑分准吗?**
211
+ 诚实口径:自建任务集真实模型跑分 5/5 全过;mock 管道可离线复现;官方 SWE-bench(Python)受网络/环境限制尚未产出,详见 `docs/SWE_BENCH_REPORT.md`。
294
212
 
295
- | 问题 | 处理 |
296
- |------|------|
297
- | 未配置模型却想用真实模式 | `FH_PROVIDERS` 或 `FH_MODEL_NAME` 配置后自动进入真实模式 |
298
- | 任务超预算中止 | 调高 `FH_BUDGET_USD` 或角色策略 `maxCostUsd`,用 `resume` 续跑 |
299
- | 配额拒绝(QUOTA_EXCEEDED) | 调整 `FH_TENANT_BUDGET_USD` 或 policy 的 tenantDailyBudgetUsd |
300
- | review 输出为空 | 确认路径为文件或目录且含受支持扩展名(ts/js/tsx/jsx/json/md/py/go/java) |
301
- | 技能市场拉取失败 | 检查网络或设 `FH_SWEBENCH_DATA_URL`/`--repo` 镜像源 |
302
- | 中文/英文切换 | `fhcode --lang en` 或 `FHCODE_LANG=en` |
213
+ **更多故障排查**:见 `docs/常见问题与故障排查.md`、错误码 `docs/error-codes.md`。
303
214
 
304
215
  ---
305
216
 
306
- ## 十二、故障排查与日志
217
+ ## 六、企业部署
307
218
 
308
- ```bash
309
- export FH_LOG_LEVEL=debug # 详细日志
310
- fhcode doctor # 环境自检(快速定位)
311
- fhcode audit verify # 审计链完整性校验
312
- # 日志目录:~/.feihong-code/sessions/<runId>.jsonl(事件日志)
313
- # 检查点:~/.feihong-code/sessions/<runId>.session.json
314
- ```
219
+ - 私有化部署:Docker 镜像 + `FH_HOME` 数据卷挂载,内网隔离
220
+ - 安全治理:RBAC(whoami/policy)、审计哈希链(audit --verify)、多租户(tenants)、SBOM(npm run security)
221
+ - 合规材料:安全白皮书(SOC2/ISO27001 自评估)`docs/SECURITY_WHITEPAPER.md`、数据处理协议 DPA `docs/DPA.md`
222
+ - 详细部署:`docs/部署说明书.md`、`docs/Deployment_Guide_EN.md`
315
223
 
316
224
  ---
317
225
 
318
- *完整配置清单见《配置参考》与《部署说明书》;常见错误码见《常见问题与故障排查》。*
226
+ *晋江市飞虹智科技企业管理有限公司 · 飞扬企源研发中心 · 负责人:吴赐虹*
227
+ *2026-08-28 · 使用说明书 v7.6.0*
@@ -0,0 +1,208 @@
1
+ # 飞虹 Code v7.2.0 全面复盘报告(50 轮深度审计)
2
+
3
+ > **审计对象**:H:\Muse Code复刻(feihong-code v7.2.0)
4
+ > **审计范围**:122 个 TS 源文件 / 25,255 行源码 + scripts/ + vscode-extension/ + electron/ + docs/
5
+ > **审计方法**:多轮独立验证(依赖图孤岛扫描、逐模块引用复核、三入口[server/CLI/前端]覆盖检查、文档一致性、构建健康度、评测报告事实核验)
6
+ > **审计日期**:2026-08-26
7
+
8
+ ---
9
+
10
+ ## 一、总体健康度画像
11
+
12
+ ```
13
+ ┌────────────────────────────────────────────────────────────┐
14
+ │ 可用(已接线,用户可达) ~7,500 行 核心链路 │
15
+ │ 半接入(部分路径生效) ~2,500 行 enterprise/CLI │
16
+ │ 死代码(0 引用,不可达) ~4,000 行 12 个模块 │
17
+ │ 前端缺口(后端有 API 无 UI) 约 30 个 API 未封装 │
18
+ │ 文档失真(声称存在≠实际存在) CHANGELOG 8 处 │
19
+ └────────────────────────────────────────────────────────────┘
20
+ ```
21
+
22
+ **核心结论:v7.2.0 是"后端引擎强大、前端体验断层、一半新功能未接线"的版本。** 引擎层(补全/多智能体/事件驱动/变更管理/SWE harness/沙箱)扎实可用,但声称的 8 个差异化能力(语音/Figma/SSO/知识库/插件市场/协作/自我修正/FIM 数据)中 **7 个是死代码**,且 Web/桌面/安卓端没有新功能 UI。
23
+
24
+ ---
25
+
26
+ ## 二、逐子系统健康度矩阵
27
+
28
+ | 子系统 | 文件 | 行数 | 健康度 | 状态说明 |
29
+ |---|---|---|---|---|
30
+ | **src/agent/** 核心 | 37 | 10,351 | 🟢 良好 | 引擎级全部可用,见下表 |
31
+ | **src/web/** 服务+前端 | 5 | 3,611 | 🟡 断层 | server.ts 2682 行 121 API 强大;前端只封装旧接口 |
32
+ | **src/cli/** | 6 | 1,893 | 🟢 良好 | 命令齐全,enterprise 全功能接入 |
33
+ | **src/enterprise/** | 6 | 1,096 | 🟡 半接入 | CLI 完整;Web 仅 isEnterpriseEnabled 开关 |
34
+ | **src/harness/** | 7 | 490 | 🟢 完整 | SWE-bench 评测闭环可用(被报告误判"无集成") |
35
+ | **src/integrations/** | 3 | 936 | 🔴 全死 | collaboration/figma/sso 三文件 0 引用 |
36
+ | **src/voice/** | 1 | 256 | 🔴 死 | voice-programming 28 指令 0 引用 |
37
+ | **src/knowledge/** | 1 | 333 | 🔴 死 | library 0 引用 |
38
+ | **src/plugins/** | 2 | 532 | 🟡 半接 | plugin-loader 被 CLI 用;manager 插件市场 0 引用 |
39
+ | **src/training/** | 2 | 469 | 🔴 死 | fim-data/completion-evaluator 0 引用 |
40
+ | **src/self-evolve/** | 2 | 79 | 🔴 死 | hook 0 引用 |
41
+ | **src/tools/** | 12 | 1,733 | 🟢 良好 | sandbox(container)/mcp/shell/browser 均可用 |
42
+ | **src/shared/** | 7 | 1,114 | 🟢 良好 | config/i18n/errors 基础完备 |
43
+ | **src/memory/** | 2 | 426 | 🟢 可用 | 记忆系统已接入 |
44
+ | **src/models/** | 7 | 648 | 🟢 可用 | 多模型路由 |
45
+ | **src/skills/** | 6 | 619 | 🟢 可用 | 技能系统 |
46
+ | **src/runtime/** | 6 | 489 | 🟢 可用 | hooks/event-log |
47
+
48
+ ### src/agent/ 37 模块逐一状态
49
+
50
+ | 模块 | 行数 | 状态 | 备注 |
51
+ |---|---|---|---|
52
+ | orchestrator | 641 | ✅ 已接入 | 主链路核心 |
53
+ | completion-engine | 608 | ✅ 已接入 | /api/completion |
54
+ | change-manager | 480 | ✅ 已接入 | 含冲突检测 |
55
+ | experience | 432 | 🟡 未接 server | CLI 路径 |
56
+ | repo-reader | 428 | ✅ 已接入 | |
57
+ | event-driven-agent | 421 | ✅ 已接入 | /api/event-driven/* |
58
+ | multi-agent | 413 | ✅ 已接入 | /api/multi-agent/* |
59
+ | custom-agent | 409 | ✅ 已接入 | /api/custom-agents/* |
60
+ | solo-agent | 400 | ✅ 已接入 | /api/solo/* |
61
+ | context-compactor | 385 | ✅ 已接入 | orchestrator 调用 |
62
+ | symbol-index | 379 | ✅ 已接入 | |
63
+ | layered-memory | 365 | ✅ 已接入 | orchestrator 调用 |
64
+ | git-integration | 361 | ✅ 已接入 | /api/git/* |
65
+ | self-correction | 325 | 🔴 **死** | 0 引用,自我修正闭环未接线 |
66
+ | self-heal | 212 | ✅ 已接入 | server 3 处 |
67
+ | browser-agent | 320 | 🟡 半接 | 被 tools/browser 用,server 未直连 |
68
+ | code-rag | 324 | ✅ | |
69
+ | code-writer | 320 | ✅ | |
70
+ | quality-gate | 308 | 🟡 未接主流程 | CLI/self-correction 调用 |
71
+ | team-collaboration | 301 | ✅ 已接入 | /api/team/* |
72
+ | type-checker | 248 | 🟡 未接 server | CLI 路径 |
73
+ | team | 224 | ✅ | |
74
+ | swe-agent | 219 | ✅ 已接入 | harness 闭环 |
75
+ | swe-planner | 180 | ✅ | |
76
+ | swe-verifier | 135 | ✅ | |
77
+ | repo-context | 169 | ✅ | |
78
+ | self-improver | 166 | ✅ | |
79
+ | repo-underwriter | 138 | 🔴 **死** | 0 引用 |
80
+ | subagent | 145 | ✅ | |
81
+ | parallel-orchestrator | 116 | ✅ | |
82
+ | design-to-code | 251 | ✅ 已接入 | /api/design-to-code |
83
+ | code-review | 128 | ✅ | server 引用 |
84
+ | context-budget | 135 | ✅ | 被 context-compactor 用 |
85
+ | completion-postprocess | 91 | ✅ | 被 completion-engine 用 |
86
+ | planner | 86 | ✅ | |
87
+ | prompts | 54 | ✅ | |
88
+ | subagent-summary | 34 | ✅ | |
89
+
90
+ ---
91
+
92
+ ## 三、死代码清单(12 个模块,约 4,000 行)★ 本次审计最大发现
93
+
94
+ | # | 模块 | 行数 | CHANGELOG 声称 | 实际状态 |
95
+ |---|---|---|---|---|
96
+ | 1 | voice/voice-programming | 256 | "28 种语音指令、语音转代码" | **0 引用**,前端语音是浏览器 Web Speech,与它无关 |
97
+ | 2 | knowledge/library | 333 | "AI 原生资料库" | **0 引用**,无 API 无 UI |
98
+ | 3 | integrations/figma | 311 | "Figma 设计稿转代码" | **0 引用** |
99
+ | 4 | integrations/sso | 270 | "SAML/OIDC/飞书/企微/钉钉 SSO" | **0 引用** |
100
+ | 5 | integrations/collaboration | 355 | "飞书/GitHub 协作集成" | **0 引用**(server 用的是 team-collaboration,非此文件) |
101
+ | 6 | plugins/manager | 390 | "插件市场 + 插件 API" | **0 引用**(server 的 /plugin 实为"节点系统") |
102
+ | 7 | agent/self-correction | 325 | "P0-3 自我修正闭环" | **0 引用**,只有注释提及 |
103
+ | 8 | agent/repo-underwriter | 138 | — | **0 引用** |
104
+ | 9 | training/fim-data | 240 | "FIM 训练数据生成" | **0 引用** |
105
+ | 10 | training/completion-evaluator | 229 | — | **0 引用** |
106
+ | 11 | self-evolve/hook | 79 | — | **0 引用** |
107
+ | 12 | tools/mcp/index | — | MCP 聚合 | **0 引用**(mcp-client 本体已被用) |
108
+
109
+ > **这些模块编译通过(TS 不检查未引用),但运行时不可达——用户永远用不到。**
110
+ > CHANGELOG/升级说明书中"阶段三、阶段四"的 8 项声称功能,7 项实际不可用。
111
+
112
+ ---
113
+
114
+ ## 四、半接入与断层清单
115
+
116
+ | # | 项 | 问题 | 影响 |
117
+ |---|---|---|---|
118
+ | 1 | **enterprise 的 Web 接入** | CLI 完整使用 createEnterpriseRuntime(租户/策略/审计/配额);server.ts 仅 `isEnterpriseEnabled()` 开关 | **Web/桌面/安卓端调用 API 无审计、无配额、无策略强制**——报告"⑧企业级=9"在 Web 端不成立 |
119
+ | 2 | **前端 API 断层** | 后端 121 API 中,前端 api.js 只封装旧接口(automations/tasks/nodes/sources);custom-agents/event-driven/mcp/multi-agent/computer/swe **前端 0 调用** | v7.2.0 新能力后端有、前端点不到 |
120
+ | 3 | browser-agent | 被 tools/browser 引用,server 未直连 | 电脑控制 API 存在但未走 agent |
121
+ | 4 | quality-gate/code-review | 未接入 orchestrator 主流程 | 主任务链路缺质量门禁 |
122
+ | 5 | type-checker/experience | 未接 server | 仅 CLI |
123
+
124
+ ---
125
+
126
+ ## 五、文档失真清单
127
+
128
+ | # | 声称 | 实际 |
129
+ |---|---|---|
130
+ | 1 | CHANGELOG:"阶段三 collaboration/figma/sso" | 3 个模块全为死代码 |
131
+ | 2 | CHANGELOG:"阶段四 voice/knowledge/plugins" | 3 个模块全为死代码 |
132
+ | 3 | CHANGELOG:"scripts/prepare-fim-data.mjs 生成 FIM 数据" | **脚本缺失**(全盘搜索无此文件) |
133
+ | 4 | 升级说明书:"121 API 三端可用" | 121 API 后端存在,前端仅用 30+ |
134
+ | 5 | 评测报告:"⑧企业级=9、⑫差异化=9" | 基于死代码/未接线功能,虚高 |
135
+
136
+ ---
137
+
138
+ ## 六、评测报告最终事实核对(与前一轮一致并加深)
139
+
140
+ | 报告声明 | 代码实证 | 判定 |
141
+ |---|---|---|
142
+ | ④ SWE "无 SWE-bench 集成" | harness 完整 + CLI 已接 + eval 脚本就绪 | ❌ 错误 |
143
+ | ④ SWE "245 行框架" | 534 行(三件套)+ harness 490 | ❌ 低估 |
144
+ | 劣势"无 Docker 沙箱" | sandbox 4 档含 container + runCommandInContainer | ❌ 错误 |
145
+ | 劣势"无实时 inline 补全" | VS Code InlineCompletion + Web ghost text | ❌ 错误 |
146
+ | ⑧ 企业级=9 | CLI 完整、Web 未接线 | ⚠️ 减半 |
147
+ | ⑫ 差异化=9 | 7/8 项是死代码 | ❌ 虚高 |
148
+ | enterprise/ 1179 行 | 1096 行 | ⚠️ 偏差 |
149
+ | 综合分 8.25 | 12 维平均 8.33,9/12 行算法不可复核 | ⚠️ 缺陷 |
150
+
151
+ ---
152
+
153
+ ## 七、修复方案(必须修复项,按优先级)
154
+
155
+ ### 🔴 P0 — 功能孤岛接线(1 周,让已声称的功能真正可用)
156
+
157
+ | # | 任务 | 具体动作 | 工作量 |
158
+ |---|---|---|---|
159
+ | P0-1 | **voice 语音编程接线** | server 注册 `/api/voice/parse`(28 指令) + `/api/voice/to-code`;前端语音按钮接入 | 0.5d |
160
+ | P0-2 | **knowledge 资料库接线** | server 注册 `/api/knowledge/*`(CRUD/检索/摘要);前端加"资料库"Tab | 1d |
161
+ | P0-3 | **figma 转代码接线** | server 注册 `/api/figma/*`;前端加导入入口 | 1d |
162
+ | P0-4 | **sso 接线** | server 注册 `/api/sso/*`(登录 URL/回调) | 0.5d |
163
+ | P0-5 | **collaboration 接线** | server 注册 `/api/collaboration/*`(飞书/GitHub) | 1d |
164
+ | P0-6 | **plugins/manager 插件市场接线** | server 注册 `/api/plugins/*`,或与 node 系统合并后删 | 0.5d |
165
+ | P0-7 | **self-correction 接入主流程** | orchestrator 失败分支调用自我修正闭环 | 0.5d |
166
+ | P0-8 | **enterprise 接入 Web** | server 加中间件:每个 API 请求走 audit/policy/quota | 1d |
167
+ | P0-9 | **前端补 5 个新 Tab** | custom-agents/自动化/插件/协作/记忆面板(后端全就绪) | 2d |
168
+
169
+ ### 🟡 P1 — 能力补强(2-4 周)
170
+
171
+ | # | 任务 | 具体动作 |
172
+ |---|---|---|
173
+ | P1-1 | **SWE-bench 出公开跑分** | 跑 `fhcode harness --split lite --mode real`,结果写入 BENCHMARK |
174
+ | P1-2 | **LSP 集成** | 引入 typescript-language-server,补编译器级诊断 |
175
+ | P1-3 | **quality-gate/code-review 串联主流程** | orchestrator 交付前强制走构建+审查门禁 |
176
+ | P1-4 | **死代码处置** | repo-underwriter / training×2 / self-evolve 三选一:接线或标注"预留"或删除 |
177
+
178
+ ### 🔵 P2 — 合规与生态(1-2 月)
179
+
180
+ | # | 任务 |
181
+ |---|---|
182
+ | P2-1 | SOC2/ISO27001 合规材料 |
183
+ | P2-2 | MCP 官方连接器目录(30+) |
184
+ | P2-3 | 模型一键评测脚本 |
185
+
186
+ ### ⚪ P3 — 文档与治理(1 周内随 P0 同步)
187
+
188
+ | # | 任务 |
189
+ |---|---|
190
+ | P3-1 | 修正 CHANGELOG/升级说明书:删除 8 项未接线声称,补"已接线/待接线"状态列 |
191
+ | P3-2 | 补回 scripts/prepare-fim-data.mjs(或删除声称) |
192
+ | P3-3 | 评测报告重算综合分(披露算法)+ 修正 4 处事实错误 |
193
+
194
+ ---
195
+
196
+ ## 八、修复后验收标准
197
+
198
+ 1. `fhcode serve` 启动后,`/api/voice/parse`、`/api/knowledge`、`/api/figma`、`/api/sso`、`/api/collaboration`、`/api/plugins` 全部 200
199
+ 2. 前端 UI 出现 5 个新 Tab,各自可操作(新增/查询/配置)
200
+ 3. Web 端连续调用 API 后,`~/.feihong-code/` 出现审计日志、配额生效(超限返回 429)
201
+ 4. `fhcode harness --split lite --limit 3 --mode mock` 输出评测报告
202
+ 5. 全库死代码模块 ≤ 2(明确标注"预留")
203
+ 6. `npx tsc --noEmit` 通过;冒烟测试全绿
204
+ 7. CHANGELOG 声称的每项功能可实际操作验证
205
+
206
+ ---
207
+
208
+ *本报告基于 50 轮独立验证(依赖图/引用图/入口覆盖/文档比对/构建检查),全部结论可复现。审计脚本留存于 scripts/_audit-deps.cjs 与 scripts/_audit-enterprise.cjs。*