feihong-code 7.2.0 → 7.5.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/.github/workflows/ci.yml +180 -140
- package/.github/workflows/release.yml +200 -173
- package/CHANGELOG.md +94 -115
- package/README.md +609 -586
- package/dist/agent/completion-engine.js +76 -45
- package/dist/agent/completion-engine.js.map +1 -1
- package/dist/agent/completion-postprocess.js +109 -0
- package/dist/agent/completion-postprocess.js.map +1 -0
- package/dist/agent/context-budget.js +121 -0
- package/dist/agent/context-budget.js.map +1 -0
- package/dist/agent/context-compactor.js +47 -0
- package/dist/agent/context-compactor.js.map +1 -1
- package/dist/agent/custom-agent.js +52 -52
- package/dist/agent/design-to-code.js +40 -40
- package/dist/agent/lint.js +121 -0
- package/dist/agent/lint.js.map +1 -0
- package/dist/agent/multi-agent.js +44 -44
- package/dist/agent/orchestrator.js +20 -20
- package/dist/agent/prompts.js +54 -54
- package/dist/agent/self-correction.js +24 -24
- package/dist/agent/self-heal.js +27 -27
- package/dist/cli/commands.js +9 -0
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/index.js +9 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/multi-pane-tui.js +217 -0
- package/dist/cli/multi-pane-tui.js.map +1 -0
- package/dist/cli/run.js +129 -40
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/tui-run.js +79 -0
- package/dist/cli/tui-run.js.map +1 -0
- package/dist/cli/tui.js.map +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/lsp/lsp-client.js +183 -0
- package/dist/lsp/lsp-client.js.map +1 -0
- package/dist/lsp/lsp-service.js +159 -0
- package/dist/lsp/lsp-service.js.map +1 -0
- package/dist/plugins/manager.js +50 -2
- package/dist/plugins/manager.js.map +1 -1
- package/dist/shared/i18n.js +108 -100
- package/dist/shared/i18n.js.map +1 -1
- package/dist/tools/generator/code-generator.js +40 -40
- package/dist/tools/generator/test-generator.js +9 -9
- package/dist/tools/shell/exec.js +23 -1
- package/dist/tools/shell/exec.js.map +1 -1
- package/dist/web/extra-apis.js +440 -0
- package/dist/web/extra-apis.js.map +1 -0
- package/dist/web/public/css/style.css +1715 -1715
- package/dist/web/public/index.html +1242 -1200
- package/dist/web/public/js/api.js +555 -496
- package/dist/web/public/js/app.js +2210 -2210
- package/dist/web/public/js/mock-api.js +234 -234
- package/dist/web/public/js/monaco-editor.js +363 -203
- package/dist/web/public/js/ui.js +2251 -1981
- package/dist/web/public/js/utils.js +214 -214
- package/dist/web/public/manifest.json +59 -59
- package/dist/web/public/service-worker.js +173 -173
- package/dist/web/server.js +97 -45
- package/dist/web/server.js.map +1 -1
- package/docs/BENCHMARK_REPORT_en.md +386 -329
- package/docs/BENCHMARK_REPORT_zh.md +386 -329
- package/docs/DPA.md +63 -0
- 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 +67 -0
- package/docs/SECURITY_WHITEPAPER.md +74 -0
- package/docs/SWE_BENCH_REPORT.md +55 -0
- package/docs/TECHNICAL_SPEC_en.md +292 -292
- package/docs/TECHNICAL_SPEC_zh.md +292 -292
- package/docs/UPDATE_NOTES_en.md +159 -159
- package/docs/UPDATE_NOTES_zh.md +159 -159
- package/docs/UPGRADE_7.2.0.md +309 -0
- package/docs/UPGRADE_GUIDE_7_5.md +86 -0
- package/docs/geo-feihong-code.html +391 -0
- 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
- 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
- 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
- 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
- package/docs//345/256/211/345/205/250/347/231/275/347/232/256/344/271/246_v7.2.0.md +82 -0
- package/electron/main.js +404 -602
- package/package.json +175 -172
- package/templates/skills/api-design/SKILL.md +27 -0
- package/templates/skills/code-review/SKILL.md +35 -0
- package/templates/skills/dependency-upgrade/SKILL.md +29 -0
- package/templates/skills/doc-gen/SKILL.md +29 -0
- package/templates/skills/git-flow/SKILL.md +26 -0
- package/templates/skills/onboarding/SKILL.md +27 -0
- package/templates/skills/performance/SKILL.md +29 -0
- package/templates/skills/refactor/SKILL.md +28 -0
- package/templates/skills/security-audit/SKILL.md +28 -0
- package/templates/skills/test-gen/SKILL.md +30 -0
- package/tool-schema.json +197 -197
- package/dist/hello.js +0 -14
- package/dist/hello.js.map +0 -1
- package/dist/self-evolve/hook.ts +0 -80
- package/dist/self-evolve/manager.d.ts +0 -8
- package/dist/web/public/vendor/monaco/vs/abap-D-t0cyap.js +0 -1
- package/dist/web/public/vendor/monaco/vs/apex-CcIm7xu6.js +0 -1
- package/dist/web/public/vendor/monaco/vs/assets/css.worker-URu8fCFR.js +0 -97
- package/dist/web/public/vendor/monaco/vs/assets/editor.worker-lj3bdIIn.js +0 -30
- package/dist/web/public/vendor/monaco/vs/assets/editorWebWorkerMain-CA_vMoUU.js +0 -30
- package/dist/web/public/vendor/monaco/vs/assets/html.worker-D1SL3iM8.js +0 -474
- package/dist/web/public/vendor/monaco/vs/assets/json.worker-CoJx_OPf.js +0 -62
- package/dist/web/public/vendor/monaco/vs/assets/ts.worker-BWKtMYOk.js +0 -67722
- package/dist/web/public/vendor/monaco/vs/azcli-BA0tQDCg.js +0 -1
- package/dist/web/public/vendor/monaco/vs/basic-languages/monaco.contribution.js +0 -1
- package/dist/web/public/vendor/monaco/vs/bat-C397hTD6.js +0 -1
- package/dist/web/public/vendor/monaco/vs/bicep-DF5aW17k.js +0 -2
- package/dist/web/public/vendor/monaco/vs/cameligo-plsz8qhj.js +0 -1
- package/dist/web/public/vendor/monaco/vs/clojure-Y2auQMzK.js +0 -1
- package/dist/web/public/vendor/monaco/vs/coffee-Bu45yuWE.js +0 -1
- package/dist/web/public/vendor/monaco/vs/cpp-CkKPQIni.js +0 -1
- package/dist/web/public/vendor/monaco/vs/csharp-CX28MZyh.js +0 -1
- package/dist/web/public/vendor/monaco/vs/csp-D8uWnyxW.js +0 -1
- package/dist/web/public/vendor/monaco/vs/css-CaeNmE3S.js +0 -3
- package/dist/web/public/vendor/monaco/vs/css.worker-CyhWkhHo.js +0 -1
- package/dist/web/public/vendor/monaco/vs/cssMode-CV6Ay48H.js +0 -1
- package/dist/web/public/vendor/monaco/vs/cypher-DVThT8BS.js +0 -1
- package/dist/web/public/vendor/monaco/vs/dart-CmGfCvrO.js +0 -1
- package/dist/web/public/vendor/monaco/vs/dockerfile-CZqqYdch.js +0 -1
- package/dist/web/public/vendor/monaco/vs/ecl-30fUercY.js +0 -1
- package/dist/web/public/vendor/monaco/vs/editor/editor.main.css +0 -1
- package/dist/web/public/vendor/monaco/vs/editor/editor.main.js +0 -1
- package/dist/web/public/vendor/monaco/vs/editor/editor.worker.js +0 -1
- package/dist/web/public/vendor/monaco/vs/editor-KLE6jdfb.js +0 -831
- package/dist/web/public/vendor/monaco/vs/editor.js +0 -1
- package/dist/web/public/vendor/monaco/vs/editorWorkerHost-fVE1cjcC.js +0 -35
- package/dist/web/public/vendor/monaco/vs/elixir-xjPaIfzF.js +0 -1
- package/dist/web/public/vendor/monaco/vs/flow9-DqtmStfK.js +0 -1
- package/dist/web/public/vendor/monaco/vs/freemarker2-FWreY7v7.js +0 -3
- package/dist/web/public/vendor/monaco/vs/fsharp-BOMdg4U1.js +0 -1
- package/dist/web/public/vendor/monaco/vs/go-D_hbi-Jt.js +0 -1
- package/dist/web/public/vendor/monaco/vs/graphql-CKUU4kLG.js +0 -1
- package/dist/web/public/vendor/monaco/vs/handlebars-CZi4pHCH.js +0 -1
- package/dist/web/public/vendor/monaco/vs/hcl-DTaboeZW.js +0 -1
- package/dist/web/public/vendor/monaco/vs/html-j_7ZTNRU.js +0 -1
- package/dist/web/public/vendor/monaco/vs/html.worker-CA3iAimZ.js +0 -1
- package/dist/web/public/vendor/monaco/vs/htmlMode-27by_KM4.js +0 -1
- package/dist/web/public/vendor/monaco/vs/index-049xrXrp.js +0 -1
- package/dist/web/public/vendor/monaco/vs/index-CBVt3dzv.js +0 -5
- package/dist/web/public/vendor/monaco/vs/index.js +0 -1
- package/dist/web/public/vendor/monaco/vs/ini-CsNwO04R.js +0 -1
- package/dist/web/public/vendor/monaco/vs/initialize-DL0l1TGY.js +0 -1
- package/dist/web/public/vendor/monaco/vs/java-CI4ZMsH9.js +0 -1
- package/dist/web/public/vendor/monaco/vs/javascript-DTJl4Jn1.js +0 -1
- package/dist/web/public/vendor/monaco/vs/json.worker-BizpAl9O.js +0 -1
- package/dist/web/public/vendor/monaco/vs/jsonMode-DLUiMUrI.js +0 -1
- package/dist/web/public/vendor/monaco/vs/julia-BwzEvaQw.js +0 -1
- package/dist/web/public/vendor/monaco/vs/kotlin-IUYPiTV8.js +0 -1
- package/dist/web/public/vendor/monaco/vs/language/css/css.worker.js +0 -66
- package/dist/web/public/vendor/monaco/vs/language/css/monaco.contribution.js +0 -1
- package/dist/web/public/vendor/monaco/vs/language/html/html.worker.js +0 -443
- package/dist/web/public/vendor/monaco/vs/language/html/monaco.contribution.js +0 -1
- package/dist/web/public/vendor/monaco/vs/language/json/json.worker.js +0 -17
- package/dist/web/public/vendor/monaco/vs/language/json/monaco.contribution.js +0 -1
- package/dist/web/public/vendor/monaco/vs/language/typescript/monaco.contribution.js +0 -1
- package/dist/web/public/vendor/monaco/vs/language/typescript/ts.worker.js +0 -67693
- package/dist/web/public/vendor/monaco/vs/less-C0eDYdqa.js +0 -2
- package/dist/web/public/vendor/monaco/vs/lexon-iON-Kj97.js +0 -1
- package/dist/web/public/vendor/monaco/vs/liquid-CLJYelW6.js +0 -1
- package/dist/web/public/vendor/monaco/vs/loader.js +0 -1368
- package/dist/web/public/vendor/monaco/vs/lspLanguageFeatures-BIkJOWLw.js +0 -2
- package/dist/web/public/vendor/monaco/vs/lua-DtygF91M.js +0 -1
- package/dist/web/public/vendor/monaco/vs/m3-CsR4AuFi.js +0 -1
- package/dist/web/public/vendor/monaco/vs/main-BEx-Fmlo.js +0 -15
- package/dist/web/public/vendor/monaco/vs/main-DsK8pnKg.js +0 -3
- package/dist/web/public/vendor/monaco/vs/markdown-C_rD0bIw.js +0 -1
- package/dist/web/public/vendor/monaco/vs/mdx-CpzZIPHF.js +0 -1
- package/dist/web/public/vendor/monaco/vs/mips-CiYP61RB.js +0 -1
- package/dist/web/public/vendor/monaco/vs/monaco.contribution-9cKT3C7t.js +0 -1
- package/dist/web/public/vendor/monaco/vs/monaco.contribution-BE88ZNGY.js +0 -1
- package/dist/web/public/vendor/monaco/vs/monaco.contribution-BPhsneLd.js +0 -1
- package/dist/web/public/vendor/monaco/vs/monaco.contribution-BgRy6xDf.js +0 -1
- package/dist/web/public/vendor/monaco/vs/msdax-C38-sJlp.js +0 -1
- package/dist/web/public/vendor/monaco/vs/mysql-CdtbpvbG.js +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/cs.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/cs.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/de.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/de.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/es.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/es.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/fr.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/fr.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/it.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/it.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/ja.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/ja.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/ko.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/ko.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/pl.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/pl.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/pt-br.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/pt-br.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/ru.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/ru.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/tr.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/tr.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/zh-cn.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/zh-cn.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls/lang/zh-tw.d.ts +0 -1
- package/dist/web/public/vendor/monaco/vs/nls/lang/zh-tw.js +0 -9
- package/dist/web/public/vendor/monaco/vs/nls.messages-loader.js +0 -1
- package/dist/web/public/vendor/monaco/vs/objective-c-CntZFaHX.js +0 -1
- package/dist/web/public/vendor/monaco/vs/pascal-r6kuqfl_.js +0 -1
- package/dist/web/public/vendor/monaco/vs/pascaligo-BiXoTmXh.js +0 -1
- package/dist/web/public/vendor/monaco/vs/perl-DABw_TcH.js +0 -1
- package/dist/web/public/vendor/monaco/vs/pgsql-me_jFXeX.js +0 -1
- package/dist/web/public/vendor/monaco/vs/php-D_kh-9LK.js +0 -1
- package/dist/web/public/vendor/monaco/vs/pla-VfZjczW0.js +0 -1
- package/dist/web/public/vendor/monaco/vs/postiats-BBSzz8Pk.js +0 -1
- package/dist/web/public/vendor/monaco/vs/powerquery-Dt-g_2cc.js +0 -1
- package/dist/web/public/vendor/monaco/vs/powershell-B-7ap1zc.js +0 -1
- package/dist/web/public/vendor/monaco/vs/protobuf-BmtuEB1A.js +0 -2
- package/dist/web/public/vendor/monaco/vs/pug-BRpRNeEb.js +0 -1
- package/dist/web/public/vendor/monaco/vs/python-CqWUUgfu.js +0 -1
- package/dist/web/public/vendor/monaco/vs/qsharp-BzsFaUU9.js +0 -1
- package/dist/web/public/vendor/monaco/vs/r-f8dDdrp4.js +0 -1
- package/dist/web/public/vendor/monaco/vs/razor-hok5y9Km.js +0 -1
- package/dist/web/public/vendor/monaco/vs/redis-fvZQY4PI.js +0 -1
- package/dist/web/public/vendor/monaco/vs/redshift-45Et0LQi.js +0 -1
- package/dist/web/public/vendor/monaco/vs/restructuredtext-C7UUFKFD.js +0 -1
- package/dist/web/public/vendor/monaco/vs/ruby-CZO8zYTz.js +0 -1
- package/dist/web/public/vendor/monaco/vs/rust-Bfetafyc.js +0 -1
- package/dist/web/public/vendor/monaco/vs/sb-3GYllVck.js +0 -1
- package/dist/web/public/vendor/monaco/vs/scala-foMgrKo1.js +0 -1
- package/dist/web/public/vendor/monaco/vs/scheme-CHdMtr7p.js +0 -1
- package/dist/web/public/vendor/monaco/vs/scss-C1cmLt9V.js +0 -3
- package/dist/web/public/vendor/monaco/vs/shell-ClXCKCEW.js +0 -1
- package/dist/web/public/vendor/monaco/vs/solidity-MZ6ExpPy.js +0 -1
- package/dist/web/public/vendor/monaco/vs/sophia-DWkuSsPQ.js +0 -1
- package/dist/web/public/vendor/monaco/vs/sparql-AUGFYSyk.js +0 -1
- package/dist/web/public/vendor/monaco/vs/sql-32GpJSV2.js +0 -1
- package/dist/web/public/vendor/monaco/vs/st-CuDFIVZ_.js +0 -1
- package/dist/web/public/vendor/monaco/vs/swift-t-PfMj7W.js +0 -1
- package/dist/web/public/vendor/monaco/vs/systemverilog-Ch4vA8Yt.js +0 -1
- package/dist/web/public/vendor/monaco/vs/tcl-D74tq1nH.js +0 -1
- package/dist/web/public/vendor/monaco/vs/toggleHighContrast-qGX7E9o7.js +0 -61
- package/dist/web/public/vendor/monaco/vs/ts.worker-2QLmBukE.js +0 -1
- package/dist/web/public/vendor/monaco/vs/tsMode-B0S_kp2q.js +0 -11
- package/dist/web/public/vendor/monaco/vs/twig-C6taOxMV.js +0 -1
- package/dist/web/public/vendor/monaco/vs/typescript-_2t_511t.js +0 -1
- package/dist/web/public/vendor/monaco/vs/typespec-8OfoLt6R.js +0 -1
- package/dist/web/public/vendor/monaco/vs/vb-Dyb2648j.js +0 -1
- package/dist/web/public/vendor/monaco/vs/wgsl-BhLXMOR0.js +0 -298
- package/dist/web/public/vendor/monaco/vs/workers-BBttULjf.js +0 -1
- package/dist/web/public/vendor/monaco/vs/xml-cZjNDqDT.js +0 -1
- package/dist/web/public/vendor/monaco/vs/yaml-A1fOIdH6.js +0 -1
- package/dist/web/web-config.js +0 -143
- package/dist/web/web-config.js.map +0 -1
- package/docs/DEPLOYMENT.md +0 -382
- package/docs/MODEL_FINETUNING.md +0 -405
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compactor.js","sourceRoot":"","sources":["../../src/agent/context-compactor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-compactor.js","sourceRoot":"","sources":["../../src/agent/context-compactor.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,16 +22,16 @@ exports.BUILTIN_AGENTS = [
|
|
|
22
22
|
{
|
|
23
23
|
name: '代码审查员',
|
|
24
24
|
description: '专业代码审查,检查代码质量、安全漏洞、性能问题和最佳实践',
|
|
25
|
-
systemPrompt: `你是一位资深代码审查员。请对提供的代码进行专业审查,包括:
|
|
26
|
-
1. 代码质量和规范性
|
|
27
|
-
2. 潜在的安全漏洞
|
|
28
|
-
3. 性能问题和优化建议
|
|
29
|
-
4. 可维护性和可扩展性
|
|
30
|
-
5. 最佳实践遵循情况
|
|
31
|
-
|
|
32
|
-
输出格式:
|
|
33
|
-
- 按严重程度分类(严重/中等/轻微/建议)
|
|
34
|
-
- 每个问题给出具体位置和修改建议
|
|
25
|
+
systemPrompt: `你是一位资深代码审查员。请对提供的代码进行专业审查,包括:
|
|
26
|
+
1. 代码质量和规范性
|
|
27
|
+
2. 潜在的安全漏洞
|
|
28
|
+
3. 性能问题和优化建议
|
|
29
|
+
4. 可维护性和可扩展性
|
|
30
|
+
5. 最佳实践遵循情况
|
|
31
|
+
|
|
32
|
+
输出格式:
|
|
33
|
+
- 按严重程度分类(严重/中等/轻微/建议)
|
|
34
|
+
- 每个问题给出具体位置和修改建议
|
|
35
35
|
- 最后给出整体评分(0-100)和是否通过审查`,
|
|
36
36
|
tools: ['read_file', 'search_code', 'run_command'],
|
|
37
37
|
modelConfig: { temperature: 0.3, maxTokens: 2000, timeoutMs: 30000 },
|
|
@@ -45,16 +45,16 @@ exports.BUILTIN_AGENTS = [
|
|
|
45
45
|
{
|
|
46
46
|
name: '测试工程师',
|
|
47
47
|
description: '自动生成测试用例,包括单元测试、集成测试和边界情况测试',
|
|
48
|
-
systemPrompt: `你是一位资深测试工程师。请为提供的代码生成完整的测试用例,包括:
|
|
49
|
-
1. 正常流程测试
|
|
50
|
-
2. 边界情况测试
|
|
51
|
-
3. 异常情况测试
|
|
52
|
-
4. 性能测试(如适用)
|
|
53
|
-
|
|
54
|
-
输出要求:
|
|
55
|
-
- 使用项目已有的测试框架
|
|
56
|
-
- 每个测试用例包含清晰的描述
|
|
57
|
-
- 覆盖所有分支和异常路径
|
|
48
|
+
systemPrompt: `你是一位资深测试工程师。请为提供的代码生成完整的测试用例,包括:
|
|
49
|
+
1. 正常流程测试
|
|
50
|
+
2. 边界情况测试
|
|
51
|
+
3. 异常情况测试
|
|
52
|
+
4. 性能测试(如适用)
|
|
53
|
+
|
|
54
|
+
输出要求:
|
|
55
|
+
- 使用项目已有的测试框架
|
|
56
|
+
- 每个测试用例包含清晰的描述
|
|
57
|
+
- 覆盖所有分支和异常路径
|
|
58
58
|
- 给出测试覆盖率评估`,
|
|
59
59
|
tools: ['read_file', 'write_file', 'run_command'],
|
|
60
60
|
modelConfig: { temperature: 0.5, maxTokens: 2000, timeoutMs: 30000 },
|
|
@@ -68,16 +68,16 @@ exports.BUILTIN_AGENTS = [
|
|
|
68
68
|
{
|
|
69
69
|
name: '文档生成器',
|
|
70
70
|
description: '自动生成代码文档、API 文档、README 和使用说明',
|
|
71
|
-
systemPrompt: `你是一位技术文档专家。请为提供的代码生成清晰、完整的文档,包括:
|
|
72
|
-
1. 功能描述和用途
|
|
73
|
-
2. API 接口说明(参数、返回值、异常)
|
|
74
|
-
3. 使用示例
|
|
75
|
-
4. 注意事项和最佳实践
|
|
76
|
-
|
|
77
|
-
输出要求:
|
|
78
|
-
- 使用 Markdown 格式
|
|
79
|
-
- 语言简洁明了
|
|
80
|
-
- 包含可运行的代码示例
|
|
71
|
+
systemPrompt: `你是一位技术文档专家。请为提供的代码生成清晰、完整的文档,包括:
|
|
72
|
+
1. 功能描述和用途
|
|
73
|
+
2. API 接口说明(参数、返回值、异常)
|
|
74
|
+
3. 使用示例
|
|
75
|
+
4. 注意事项和最佳实践
|
|
76
|
+
|
|
77
|
+
输出要求:
|
|
78
|
+
- 使用 Markdown 格式
|
|
79
|
+
- 语言简洁明了
|
|
80
|
+
- 包含可运行的代码示例
|
|
81
81
|
- 遵循项目的文档风格`,
|
|
82
82
|
tools: ['read_file', 'write_file', 'search_code'],
|
|
83
83
|
modelConfig: { temperature: 0.4, maxTokens: 2000, timeoutMs: 30000 },
|
|
@@ -91,17 +91,17 @@ exports.BUILTIN_AGENTS = [
|
|
|
91
91
|
{
|
|
92
92
|
name: '重构专家',
|
|
93
93
|
description: '代码重构专家,优化代码结构、消除重复、提升可维护性',
|
|
94
|
-
systemPrompt: `你是一位资深重构专家。请对提供的代码进行重构优化,包括:
|
|
95
|
-
1. 消除重复代码(DRY 原则)
|
|
96
|
-
2. 优化函数和类的职责划分(单一职责原则)
|
|
97
|
-
3. 提升代码可读性和可维护性
|
|
98
|
-
4. 应用合适的设计模式
|
|
99
|
-
5. 优化性能(如适用)
|
|
100
|
-
|
|
101
|
-
输出要求:
|
|
102
|
-
- 给出重构前后的对比
|
|
103
|
-
- 解释每个重构的原因和好处
|
|
104
|
-
- 确保重构后的代码功能不变
|
|
94
|
+
systemPrompt: `你是一位资深重构专家。请对提供的代码进行重构优化,包括:
|
|
95
|
+
1. 消除重复代码(DRY 原则)
|
|
96
|
+
2. 优化函数和类的职责划分(单一职责原则)
|
|
97
|
+
3. 提升代码可读性和可维护性
|
|
98
|
+
4. 应用合适的设计模式
|
|
99
|
+
5. 优化性能(如适用)
|
|
100
|
+
|
|
101
|
+
输出要求:
|
|
102
|
+
- 给出重构前后的对比
|
|
103
|
+
- 解释每个重构的原因和好处
|
|
104
|
+
- 确保重构后的代码功能不变
|
|
105
105
|
- 遵循项目的代码风格`,
|
|
106
106
|
tools: ['read_file', 'write_file', 'search_code', 'run_command'],
|
|
107
107
|
modelConfig: { temperature: 0.3, maxTokens: 2000, timeoutMs: 30000 },
|
|
@@ -115,17 +115,17 @@ exports.BUILTIN_AGENTS = [
|
|
|
115
115
|
{
|
|
116
116
|
name: 'Bug 猎手',
|
|
117
117
|
description: '专业 Bug 分析和修复,定位问题根因并给出修复方案',
|
|
118
|
-
systemPrompt: `你是一位资深 Bug 猎手。请分析提供的错误信息和代码,定位问题根因并给出修复方案:
|
|
119
|
-
1. 分析错误信息和堆栈跟踪
|
|
120
|
-
2. 定位问题代码的具体位置
|
|
121
|
-
3. 解释问题的根本原因
|
|
122
|
-
4. 给出完整的修复方案
|
|
123
|
-
5. 提供修复后的代码
|
|
124
|
-
|
|
125
|
-
输出要求:
|
|
126
|
-
- 清晰说明问题原因
|
|
127
|
-
- 给出可直接应用的修复代码
|
|
128
|
-
- 说明修复的影响范围
|
|
118
|
+
systemPrompt: `你是一位资深 Bug 猎手。请分析提供的错误信息和代码,定位问题根因并给出修复方案:
|
|
119
|
+
1. 分析错误信息和堆栈跟踪
|
|
120
|
+
2. 定位问题代码的具体位置
|
|
121
|
+
3. 解释问题的根本原因
|
|
122
|
+
4. 给出完整的修复方案
|
|
123
|
+
5. 提供修复后的代码
|
|
124
|
+
|
|
125
|
+
输出要求:
|
|
126
|
+
- 清晰说明问题原因
|
|
127
|
+
- 给出可直接应用的修复代码
|
|
128
|
+
- 说明修复的影响范围
|
|
129
129
|
- 建议如何避免类似问题`,
|
|
130
130
|
tools: ['read_file', 'search_code', 'run_command', 'write_file'],
|
|
131
131
|
modelConfig: { temperature: 0.2, maxTokens: 2000, timeoutMs: 30000 },
|
|
@@ -95,15 +95,15 @@ class DesignToCodeEngine {
|
|
|
95
95
|
}
|
|
96
96
|
/** 构造系统提示 */
|
|
97
97
|
buildSystemPrompt(framework) {
|
|
98
|
-
const base = `你是一个专业的前端开发工程师,擅长将设计稿转换为高质量的代码。
|
|
99
|
-
|
|
100
|
-
请根据用户提供的设计稿图片,生成精确还原设计的代码。
|
|
101
|
-
|
|
102
|
-
要求:
|
|
103
|
-
1. 精确还原设计稿的布局、颜色、字体、间距
|
|
104
|
-
2. 代码结构清晰,有适当的注释
|
|
105
|
-
3. 使用语义化的 HTML 标签
|
|
106
|
-
4. 响应式设计,适配不同屏幕尺寸
|
|
98
|
+
const base = `你是一个专业的前端开发工程师,擅长将设计稿转换为高质量的代码。
|
|
99
|
+
|
|
100
|
+
请根据用户提供的设计稿图片,生成精确还原设计的代码。
|
|
101
|
+
|
|
102
|
+
要求:
|
|
103
|
+
1. 精确还原设计稿的布局、颜色、字体、间距
|
|
104
|
+
2. 代码结构清晰,有适当的注释
|
|
105
|
+
3. 使用语义化的 HTML 标签
|
|
106
|
+
4. 响应式设计,适配不同屏幕尺寸
|
|
107
107
|
5. 只输出代码,不要有任何解释说明`;
|
|
108
108
|
const frameworkPrompts = {
|
|
109
109
|
html: '输出完整的 HTML 文件,包含内联 CSS 和 JavaScript。使用 <!DOCTYPE html> 开头。',
|
|
@@ -173,40 +173,40 @@ class DesignToCodeEngine {
|
|
|
173
173
|
return code;
|
|
174
174
|
}
|
|
175
175
|
// 否则包裹在完整 HTML 中
|
|
176
|
-
return `<!DOCTYPE html>
|
|
177
|
-
<html lang="zh">
|
|
178
|
-
<head>
|
|
179
|
-
<meta charset="UTF-8">
|
|
180
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
181
|
-
<title>设计稿预览</title>
|
|
182
|
-
${framework === 'tailwind' ? '<script src="https://cdn.tailwindcss.com"></script>' : ''}
|
|
183
|
-
</head>
|
|
184
|
-
<body>
|
|
185
|
-
${code}
|
|
186
|
-
</body>
|
|
176
|
+
return `<!DOCTYPE html>
|
|
177
|
+
<html lang="zh">
|
|
178
|
+
<head>
|
|
179
|
+
<meta charset="UTF-8">
|
|
180
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
181
|
+
<title>设计稿预览</title>
|
|
182
|
+
${framework === 'tailwind' ? '<script src="https://cdn.tailwindcss.com"></script>' : ''}
|
|
183
|
+
</head>
|
|
184
|
+
<body>
|
|
185
|
+
${code}
|
|
186
|
+
</body>
|
|
187
187
|
</html>`;
|
|
188
188
|
}
|
|
189
189
|
// React/Vue 框架:返回提示信息(需要构建工具才能预览)
|
|
190
|
-
return `<!DOCTYPE html>
|
|
191
|
-
<html lang="zh">
|
|
192
|
-
<head>
|
|
193
|
-
<meta charset="UTF-8">
|
|
194
|
-
<title>设计稿预览</title>
|
|
195
|
-
<style>
|
|
196
|
-
body { font-family: -apple-system, sans-serif; padding: 40px; background: #f5f5f5; }
|
|
197
|
-
.container { max-width: 800px; margin: 0 auto; background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
|
|
198
|
-
h2 { color: #333; }
|
|
199
|
-
p { color: #666; line-height: 1.6; }
|
|
200
|
-
pre { background: #f0f0f0; padding: 15px; border-radius: 4px; overflow-x: auto; font-size: 13px; }
|
|
201
|
-
</style>
|
|
202
|
-
</head>
|
|
203
|
-
<body>
|
|
204
|
-
<div class="container">
|
|
205
|
-
<h2>📋 ${framework.toUpperCase()} 组件代码已生成</h2>
|
|
206
|
-
<p>此框架需要构建环境才能实时预览。请将以下代码复制到你的项目中:</p>
|
|
207
|
-
<pre>${code.replace(/</g, '<').replace(/>/g, '>')}</pre>
|
|
208
|
-
</div>
|
|
209
|
-
</body>
|
|
190
|
+
return `<!DOCTYPE html>
|
|
191
|
+
<html lang="zh">
|
|
192
|
+
<head>
|
|
193
|
+
<meta charset="UTF-8">
|
|
194
|
+
<title>设计稿预览</title>
|
|
195
|
+
<style>
|
|
196
|
+
body { font-family: -apple-system, sans-serif; padding: 40px; background: #f5f5f5; }
|
|
197
|
+
.container { max-width: 800px; margin: 0 auto; background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
|
|
198
|
+
h2 { color: #333; }
|
|
199
|
+
p { color: #666; line-height: 1.6; }
|
|
200
|
+
pre { background: #f0f0f0; padding: 15px; border-radius: 4px; overflow-x: auto; font-size: 13px; }
|
|
201
|
+
</style>
|
|
202
|
+
</head>
|
|
203
|
+
<body>
|
|
204
|
+
<div class="container">
|
|
205
|
+
<h2>📋 ${framework.toUpperCase()} 组件代码已生成</h2>
|
|
206
|
+
<p>此框架需要构建环境才能实时预览。请将以下代码复制到你的项目中:</p>
|
|
207
|
+
<pre>${code.replace(/</g, '<').replace(/>/g, '>')}</pre>
|
|
208
|
+
</div>
|
|
209
|
+
</body>
|
|
210
210
|
</html>`;
|
|
211
211
|
}
|
|
212
212
|
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 飞虹 Code (Muse Code 参照复刻)
|
|
4
|
+
* P6-1 轻量语法校验(lint):
|
|
5
|
+
* - 用于补全结果"接受后自动 lint"反馈:Monaco/VS Code 接受补全后调用 /api/lint
|
|
6
|
+
* - 不依赖重型编译器,用括号/引号配平 + 常见错误模式做快速、可单测的校验
|
|
7
|
+
* - 与 completion-postprocess 的近似配平不同,这里给出**行列定位**与**严重级别**
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.lintSnippet = lintSnippet;
|
|
11
|
+
/** 字符串字面量内的字符是否不计入语法配对 */
|
|
12
|
+
function isJsLike(language) {
|
|
13
|
+
const l = (language || '').toLowerCase();
|
|
14
|
+
return ['js', 'jsx', 'ts', 'tsx', 'mjs', 'cjs', 'vue', 'svelte'].some((x) => l === x || l.endsWith(x));
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* 逐字符扫描:括号/引号配平 + 常见错误模式
|
|
18
|
+
* 忽略字符串字面量与行内注释内的配对字符。
|
|
19
|
+
*/
|
|
20
|
+
function lintSnippet(code, language) {
|
|
21
|
+
const issues = [];
|
|
22
|
+
if (!code || !code.trim())
|
|
23
|
+
return issues;
|
|
24
|
+
const js = isJsLike(language);
|
|
25
|
+
const lines = code.split('\n');
|
|
26
|
+
const openers = { '(': ')', '{': '}', '[': ']', '"': '"', "'": "'", '`': '`' };
|
|
27
|
+
const stack = [];
|
|
28
|
+
const inBlockComment = { value: false };
|
|
29
|
+
const lineEndingDangling = [];
|
|
30
|
+
for (let li = 0; li < lines.length; li++) {
|
|
31
|
+
const line = lines[li];
|
|
32
|
+
const lineEnd = line.trimEnd();
|
|
33
|
+
// 行尾悬空运算符(js 系常见补全缺陷:换行后未完成表达式)
|
|
34
|
+
if (js && lineEnd.length > 0) {
|
|
35
|
+
const tail = lineEnd[lineEnd.length - 1];
|
|
36
|
+
if ('+-*/=,?'.includes(tail)) {
|
|
37
|
+
// 排除注释行 / 单独 = 号(如默认参数在换行处)
|
|
38
|
+
if (!lineEnd.trim().startsWith('//') && !lineEnd.trim().startsWith('*') && !/^\s*(\+|-|\*|\/|,|=|\?)\s*$/.test(lineEnd)) {
|
|
39
|
+
lineEndingDangling.push(lineEnd);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
for (let ci = 0; ci < line.length; ci++) {
|
|
44
|
+
const ch = line[ci];
|
|
45
|
+
const next = line[ci + 1];
|
|
46
|
+
// 行注释(js 系)跳过本行剩余
|
|
47
|
+
if (js && ch === '/' && next === '/')
|
|
48
|
+
break;
|
|
49
|
+
// 块注释进入/退出(js 系)
|
|
50
|
+
if (js && ch === '/' && next === '*') {
|
|
51
|
+
inBlockComment.value = true;
|
|
52
|
+
ci++;
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
if (js && inBlockComment.value && ch === '*' && next === '/') {
|
|
56
|
+
inBlockComment.value = false;
|
|
57
|
+
ci++;
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
if (inBlockComment.value)
|
|
61
|
+
continue;
|
|
62
|
+
// 连续错误运算符(&&&、|||、!!!、=== === 双重)
|
|
63
|
+
if (js && (ch === '&' || ch === '|' || ch === '!')) {
|
|
64
|
+
const run = line.slice(ci, ci + 3);
|
|
65
|
+
if (run === '&&&' || run === '|||' || run === '!!!') {
|
|
66
|
+
issues.push({ severity: 1, line: li + 1, column: ci + 1, message: '疑似错误运算符:"' + run + '"(应为两个字符组合)' });
|
|
67
|
+
ci += 2;
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
// 普通闭合字符:与栈顶匹配
|
|
72
|
+
if (ch === ')' || ch === '}' || ch === ']' || ch === '"' || ch === "'" || ch === '`') {
|
|
73
|
+
const top = stack[stack.length - 1];
|
|
74
|
+
if (top && openers[top.ch] === ch) {
|
|
75
|
+
stack.pop();
|
|
76
|
+
}
|
|
77
|
+
else if (ch === '"' || ch === "'" || ch === '`') {
|
|
78
|
+
// 未开引号就闭合:入栈视为开启(在字符串中可能是闭合的引号被误判,保守跳过)
|
|
79
|
+
stack.push({ ch, line: li + 1, col: ci + 1 });
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
issues.push({ severity: 1, line: li + 1, column: ci + 1, message: '多余的闭合字符 "' + ch + '"' });
|
|
83
|
+
}
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
// 开启字符
|
|
87
|
+
if (openers[ch]) {
|
|
88
|
+
stack.push({ ch, line: li + 1, col: ci + 1 });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
// 行尾字符串未闭合(该行只有单引号开未合)——栈里多出的引号留给整体检查
|
|
92
|
+
}
|
|
93
|
+
// 栈内未闭合项 → 报错
|
|
94
|
+
for (const s of stack) {
|
|
95
|
+
const name = { '(': '括号', '{': '花括号', '[': '方括号', '"': '双引号', "'": '单引号', '`': '反引号' };
|
|
96
|
+
issues.push({ severity: 1, line: s.line, column: s.col, message: '未闭合的' + (name[s.ch] || s.ch) + ' "' + s.ch + '"' });
|
|
97
|
+
}
|
|
98
|
+
// 未退出块注释
|
|
99
|
+
if (inBlockComment.value) {
|
|
100
|
+
issues.push({ severity: 2, line: lines.length, column: 1, message: '未闭合的块注释(/* ... */)' });
|
|
101
|
+
}
|
|
102
|
+
for (const ln of lineEndingDangling.slice(0, 5)) {
|
|
103
|
+
issues.push({ severity: 2, line: lines.indexOf(ln) + 1, column: ln.length, message: '行尾悬空运算符(换行后未完成表达式?)' });
|
|
104
|
+
}
|
|
105
|
+
return issues;
|
|
106
|
+
}
|
|
107
|
+
/* ========== 自测(tsx src/agent/lint.ts 直接运行) ========== */
|
|
108
|
+
if (require.main === module) {
|
|
109
|
+
const cases = [
|
|
110
|
+
{ code: 'function f() {\n return 1;\n}', desc: '合法:应无错误' },
|
|
111
|
+
{ code: 'const x = (1 + 2;', lang: 'ts', desc: '未闭合括号' },
|
|
112
|
+
{ code: 'const s = "abc;', lang: 'ts', desc: '未闭合字符串' },
|
|
113
|
+
{ code: 'const a = 1 &&& 2;', lang: 'ts', desc: '连续错误运算符' },
|
|
114
|
+
{ code: 'const a = 1 +\n 2;', lang: 'ts', desc: '行尾悬空运算符' },
|
|
115
|
+
];
|
|
116
|
+
for (const c of cases) {
|
|
117
|
+
const r = lintSnippet(c.code, c.lang);
|
|
118
|
+
console.log(`[${c.desc}] ${r.length === 0 ? 'OK' : r.map((i) => `L${i.line}:${i.column} ${i.message}`).join(' | ')}`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=lint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/agent/lint.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,17 +26,17 @@ exports.AGENT_ROLES = {
|
|
|
26
26
|
role: 'architect',
|
|
27
27
|
name: '架构师',
|
|
28
28
|
description: '负责系统设计、技术选型、接口定义',
|
|
29
|
-
systemPrompt: `你是一位资深软件架构师。你的职责是:
|
|
30
|
-
1. 分析需求,设计系统架构和模块划分
|
|
31
|
-
2. 定义接口规范和数据结构
|
|
32
|
-
3. 选择合适的技术栈和设计模式
|
|
33
|
-
4. 评估技术风险和性能瓶颈
|
|
34
|
-
5. 输出清晰的设计文档和接口定义
|
|
35
|
-
|
|
36
|
-
输出要求:
|
|
37
|
-
- 使用结构化格式输出设计方案
|
|
38
|
-
- 明确每个模块的职责和接口
|
|
39
|
-
- 给出关键代码的骨架实现
|
|
29
|
+
systemPrompt: `你是一位资深软件架构师。你的职责是:
|
|
30
|
+
1. 分析需求,设计系统架构和模块划分
|
|
31
|
+
2. 定义接口规范和数据结构
|
|
32
|
+
3. 选择合适的技术栈和设计模式
|
|
33
|
+
4. 评估技术风险和性能瓶颈
|
|
34
|
+
5. 输出清晰的设计文档和接口定义
|
|
35
|
+
|
|
36
|
+
输出要求:
|
|
37
|
+
- 使用结构化格式输出设计方案
|
|
38
|
+
- 明确每个模块的职责和接口
|
|
39
|
+
- 给出关键代码的骨架实现
|
|
40
40
|
- 标注技术选型的理由`,
|
|
41
41
|
capabilities: ['design', 'architecture', 'api-design', 'tech-selection'],
|
|
42
42
|
maxIterations: 2,
|
|
@@ -46,17 +46,17 @@ exports.AGENT_ROLES = {
|
|
|
46
46
|
role: 'developer',
|
|
47
47
|
name: '开发者',
|
|
48
48
|
description: '负责代码实现、单元测试',
|
|
49
|
-
systemPrompt: `你是一位资深全栈开发者。你的职责是:
|
|
50
|
-
1. 根据设计方案实现高质量代码
|
|
51
|
-
2. 编写单元测试,确保代码覆盖率
|
|
52
|
-
3. 遵循代码规范和最佳实践
|
|
53
|
-
4. 处理边界情况和错误处理
|
|
54
|
-
5. 优化代码性能和可读性
|
|
55
|
-
|
|
56
|
-
输出要求:
|
|
57
|
-
- 输出完整可运行的代码
|
|
58
|
-
- 包含必要的注释和文档
|
|
59
|
-
- 遵循项目的代码风格
|
|
49
|
+
systemPrompt: `你是一位资深全栈开发者。你的职责是:
|
|
50
|
+
1. 根据设计方案实现高质量代码
|
|
51
|
+
2. 编写单元测试,确保代码覆盖率
|
|
52
|
+
3. 遵循代码规范和最佳实践
|
|
53
|
+
4. 处理边界情况和错误处理
|
|
54
|
+
5. 优化代码性能和可读性
|
|
55
|
+
|
|
56
|
+
输出要求:
|
|
57
|
+
- 输出完整可运行的代码
|
|
58
|
+
- 包含必要的注释和文档
|
|
59
|
+
- 遵循项目的代码风格
|
|
60
60
|
- 优先使用项目已有的工具和库`,
|
|
61
61
|
capabilities: ['coding', 'implementation', 'unit-test', 'debugging'],
|
|
62
62
|
maxIterations: 3,
|
|
@@ -66,17 +66,17 @@ exports.AGENT_ROLES = {
|
|
|
66
66
|
role: 'tester',
|
|
67
67
|
name: '测试工程师',
|
|
68
68
|
description: '负责测试用例设计、集成测试、Bug 发现',
|
|
69
|
-
systemPrompt: `你是一位资深测试工程师。你的职责是:
|
|
70
|
-
1. 根据需求和设计编写测试用例
|
|
71
|
-
2. 设计单元测试、集成测试、端到端测试
|
|
72
|
-
3. 发现潜在的 Bug 和边界情况
|
|
73
|
-
4. 评估代码质量和可测试性
|
|
74
|
-
5. 给出测试报告和改进建议
|
|
75
|
-
|
|
76
|
-
输出要求:
|
|
77
|
-
- 输出完整的测试用例代码
|
|
78
|
-
- 覆盖正常流程、边界情况、异常情况
|
|
79
|
-
- 明确每个测试的预期结果
|
|
69
|
+
systemPrompt: `你是一位资深测试工程师。你的职责是:
|
|
70
|
+
1. 根据需求和设计编写测试用例
|
|
71
|
+
2. 设计单元测试、集成测试、端到端测试
|
|
72
|
+
3. 发现潜在的 Bug 和边界情况
|
|
73
|
+
4. 评估代码质量和可测试性
|
|
74
|
+
5. 给出测试报告和改进建议
|
|
75
|
+
|
|
76
|
+
输出要求:
|
|
77
|
+
- 输出完整的测试用例代码
|
|
78
|
+
- 覆盖正常流程、边界情况、异常情况
|
|
79
|
+
- 明确每个测试的预期结果
|
|
80
80
|
- 给出测试覆盖率评估`,
|
|
81
81
|
capabilities: ['testing', 'qa', 'test-design', 'bug-finding'],
|
|
82
82
|
maxIterations: 2,
|
|
@@ -86,17 +86,17 @@ exports.AGENT_ROLES = {
|
|
|
86
86
|
role: 'reviewer',
|
|
87
87
|
name: '评审员',
|
|
88
88
|
description: '负责代码审查、质量把控、最佳实践建议',
|
|
89
|
-
systemPrompt: `你是一位资深代码评审员。你的职责是:
|
|
90
|
-
1. 审查代码质量和规范性
|
|
91
|
-
2. 检查潜在的安全漏洞和性能问题
|
|
92
|
-
3. 评估代码的可维护性和可扩展性
|
|
93
|
-
4. 提出改进建议和最佳实践
|
|
94
|
-
5. 确认代码是否符合设计要求
|
|
95
|
-
|
|
96
|
-
输出要求:
|
|
97
|
-
- 按严重程度分类问题(严重/中等/轻微/建议)
|
|
98
|
-
- 给出具体的修改建议和代码示例
|
|
99
|
-
- 评估代码的整体质量评分
|
|
89
|
+
systemPrompt: `你是一位资深代码评审员。你的职责是:
|
|
90
|
+
1. 审查代码质量和规范性
|
|
91
|
+
2. 检查潜在的安全漏洞和性能问题
|
|
92
|
+
3. 评估代码的可维护性和可扩展性
|
|
93
|
+
4. 提出改进建议和最佳实践
|
|
94
|
+
5. 确认代码是否符合设计要求
|
|
95
|
+
|
|
96
|
+
输出要求:
|
|
97
|
+
- 按严重程度分类问题(严重/中等/轻微/建议)
|
|
98
|
+
- 给出具体的修改建议和代码示例
|
|
99
|
+
- 评估代码的整体质量评分
|
|
100
100
|
- 确认是否可以通过评审`,
|
|
101
101
|
capabilities: ['review', 'quality', 'security', 'best-practices'],
|
|
102
102
|
maxIterations: 2,
|
|
@@ -451,17 +451,17 @@ class Orchestrator {
|
|
|
451
451
|
if (totalHeals >= Orchestrator.MAX_TOTAL_SELF_HEALS) {
|
|
452
452
|
const errorTypes = input.errorHistory.map((e) => e.category).join(', ');
|
|
453
453
|
const lastError = input.errorHistory[input.errorHistory.length - 1];
|
|
454
|
-
const finalAnswer = `任务已累计自我修复 ${totalHeals} 次仍未解决问题,已自动终止。
|
|
455
|
-
|
|
456
|
-
**问题分析**:当前思路或方法可能根本走不通,反复修复同一个问题没有意义。
|
|
457
|
-
**错误类型分布**: ${errorTypes}
|
|
458
|
-
**最后错误**: ${lastError?.message || '未知'}
|
|
459
|
-
|
|
460
|
-
**建议**:
|
|
461
|
-
1. 彻底换一种实现思路——不要在原来的代码上继续修
|
|
462
|
-
2. 简化目标——先做出能跑的最小版本,再逐步加功能
|
|
463
|
-
3. 换工具/换库/换架构——如果某个方案一直失败,说明它可能不适合当前场景
|
|
464
|
-
4. 先用 list_dir 全面勘察当前目录,确认在正确的位置、有哪些文件可用
|
|
454
|
+
const finalAnswer = `任务已累计自我修复 ${totalHeals} 次仍未解决问题,已自动终止。
|
|
455
|
+
|
|
456
|
+
**问题分析**:当前思路或方法可能根本走不通,反复修复同一个问题没有意义。
|
|
457
|
+
**错误类型分布**: ${errorTypes}
|
|
458
|
+
**最后错误**: ${lastError?.message || '未知'}
|
|
459
|
+
|
|
460
|
+
**建议**:
|
|
461
|
+
1. 彻底换一种实现思路——不要在原来的代码上继续修
|
|
462
|
+
2. 简化目标——先做出能跑的最小版本,再逐步加功能
|
|
463
|
+
3. 换工具/换库/换架构——如果某个方案一直失败,说明它可能不适合当前场景
|
|
464
|
+
4. 先用 list_dir 全面勘察当前目录,确认在正确的位置、有哪些文件可用
|
|
465
465
|
5. 在对话区发送新的指令,描述你想换的思路,我会重新开始`;
|
|
466
466
|
await input.eventLog.append('error', { reason: 'max-total-self-heals', totalHeals, errors: input.errorHistory });
|
|
467
467
|
logger_1.logger.warn('orchestrator hit max total self-heals', { runId: input.sessionRunId, totalHeals, max: Orchestrator.MAX_TOTAL_SELF_HEALS });
|
|
@@ -485,15 +485,15 @@ class Orchestrator {
|
|
|
485
485
|
const errorTypes = input.errorHistory.map((e) => e.category).join(', ');
|
|
486
486
|
const lastError = input.errorHistory[input.errorHistory.length - 1];
|
|
487
487
|
const fixHint = lastError?.fixHint || '请检查工作区和日志,定位具体错误原因后修复。';
|
|
488
|
-
const finalAnswer = `任务执行遇到连续 ${input.maxRetryErrors} 次错误,已尝试自动修复但未能成功。
|
|
489
|
-
|
|
490
|
-
错误类型: ${errorTypes}
|
|
491
|
-
最后错误: ${lastError?.message || '未知'}
|
|
492
|
-
修复建议: ${fixHint}
|
|
493
|
-
|
|
494
|
-
你可以:
|
|
495
|
-
1. 在对话区发送"继续"让任务以 resume 方式接着跑
|
|
496
|
-
2. 或发送新的指令,告知具体需要修复的内容
|
|
488
|
+
const finalAnswer = `任务执行遇到连续 ${input.maxRetryErrors} 次错误,已尝试自动修复但未能成功。
|
|
489
|
+
|
|
490
|
+
错误类型: ${errorTypes}
|
|
491
|
+
最后错误: ${lastError?.message || '未知'}
|
|
492
|
+
修复建议: ${fixHint}
|
|
493
|
+
|
|
494
|
+
你可以:
|
|
495
|
+
1. 在对话区发送"继续"让任务以 resume 方式接着跑
|
|
496
|
+
2. 或发送新的指令,告知具体需要修复的内容
|
|
497
497
|
3. 检查工作区文件,手动修复后重新提交任务`;
|
|
498
498
|
await input.eventLog.append('error', { reason: 'max-retry-errors', errors: input.errorHistory });
|
|
499
499
|
logger_1.logger.warn('orchestrator hit max retry errors', { runId: input.sessionRunId, errors: input.errorHistory });
|