feihong-code 0.5.1 → 0.6.1

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 (74) hide show
  1. package/CHANGELOG.md +486 -405
  2. package/README.md +59 -0
  3. package/dist/agent/code-writer.js +6 -3
  4. package/dist/agent/code-writer.js.map +1 -1
  5. package/dist/agent/experience.js +105 -70
  6. package/dist/agent/experience.js.map +1 -1
  7. package/dist/agent/orchestrator.js +103 -21
  8. package/dist/agent/orchestrator.js.map +1 -1
  9. package/dist/agent/parallel-orchestrator.js +6 -3
  10. package/dist/agent/parallel-orchestrator.js.map +1 -1
  11. package/dist/agent/planner.js +30 -7
  12. package/dist/agent/planner.js.map +1 -1
  13. package/dist/agent/prompts.js +27 -8
  14. package/dist/agent/prompts.js.map +1 -1
  15. package/dist/agent/self-heal.js +43 -13
  16. package/dist/agent/self-heal.js.map +1 -1
  17. package/dist/cli/repl.js +10 -9
  18. package/dist/cli/repl.js.map +1 -1
  19. package/dist/cli/run.js +39 -37
  20. package/dist/cli/run.js.map +1 -1
  21. package/dist/cli/version.js +1 -1
  22. package/dist/enterprise/audit.js +70 -11
  23. package/dist/enterprise/audit.js.map +1 -1
  24. package/dist/models/model-router.js +83 -23
  25. package/dist/models/model-router.js.map +1 -1
  26. package/dist/models/model.dto.js +25 -3
  27. package/dist/models/model.dto.js.map +1 -1
  28. package/dist/models/providers/ollama.provider.js +12 -0
  29. package/dist/models/providers/ollama.provider.js.map +1 -1
  30. package/dist/models/providers/openai-compatible.provider.js +14 -1
  31. package/dist/models/providers/openai-compatible.provider.js.map +1 -1
  32. package/dist/self-evolve/hook.js +2 -2
  33. package/dist/self-evolve/hook.js.map +1 -1
  34. package/dist/self-evolve/hook.ts +80 -0
  35. package/dist/self-evolve/manager.d.ts +8 -0
  36. package/dist/self-evolve/manager.js +401 -0
  37. package/dist/shared/concurrency.js +80 -0
  38. package/dist/shared/concurrency.js.map +1 -0
  39. package/dist/shared/errors.js +6 -2
  40. package/dist/shared/errors.js.map +1 -1
  41. package/dist/shared/secure-store.js +117 -0
  42. package/dist/shared/secure-store.js.map +1 -0
  43. package/dist/tools/mcp/mcp-client.js +35 -13
  44. package/dist/tools/mcp/mcp-client.js.map +1 -1
  45. package/dist/tools/shell/exec.js +47 -3
  46. package/dist/tools/shell/exec.js.map +1 -1
  47. package/dist/tools/shell/run-shell.tool.js +33 -6
  48. package/dist/tools/shell/run-shell.tool.js.map +1 -1
  49. package/dist/tools/tool.registry.js +32 -0
  50. package/dist/tools/tool.registry.js.map +1 -1
  51. package/dist/web/auth.js +143 -7
  52. package/dist/web/auth.js.map +1 -1
  53. package/dist/web/public/css/style.css +1546 -0
  54. package/dist/web/public/index.html +806 -3253
  55. package/dist/web/public/js/api.js +309 -0
  56. package/dist/web/public/js/app.js +1483 -0
  57. package/dist/web/public/js/ui.js +764 -0
  58. package/dist/web/public/js/utils.js +214 -0
  59. package/dist/web/server.js +224 -77
  60. package/dist/web/server.js.map +1 -1
  61. package/dist/web/task-queue.js +140 -14
  62. package/dist/web/task-queue.js.map +1 -1
  63. package/docs/App/344/275/277/347/224/250/350/257/264/346/230/216/344/271/246.md +299 -0
  64. package/docs/App/346/212/200/346/234/257/350/257/264/346/230/216/344/271/246.md +554 -0
  65. package/docs/SELF-EVOLVE-GUIDE.md +313 -0
  66. package/docs/error-codes.md +198 -0
  67. package/docs/screenshots/cli-demo.png +0 -0
  68. package/docs/screenshots/feature-comparison.png +0 -0
  69. package/docs/screenshots/web-console.png +0 -0
  70. package/docs//351/241/265/351/235/242/345/212/237/350/203/275/345/244/215/347/233/230/344/270/216/345/206/222/347/203/237/346/265/213/350/257/225/346/212/245/345/221/212.html +117 -0
  71. package/package.json +9 -15
  72. package/tool-schema.json +198 -127
  73. package/dist/web/public/index.html.tmp +0 -3117
  74. package/dist/web/public/index_new.html +0 -3196
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":";;;AA2BA,uCAA0C;AAC1C,uCAAqC;AACrC,iDAAoF;AACpF,yDAA+E;AAC/E,6CAA0C;AAC1C,2CAMqB;AACrB,2DAA4F;AAC5F,6CAQsB;AA2EtB,MAAa,YAAY;IACM;IAA7B,YAA6B,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;IAAG,CAAC;IAEvD,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,MAAsB;QAC5C,MAAM,EACJ,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EACxE,cAAc,GAAG,CAAC,EAClB,mBAAmB,EACnB,aAAa,GACd,GAAG,IAAI,CAAC,IAAI,CAAC;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1C,MAAM,gBAAgB,GAAG,IAAA,0CAAsB,EAAC,EAAE,YAAY,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAEvF,IAAI,QAAuB,CAAC;QAC5B,IAAI,iBAAiB,GAAiB,EAAE,CAAC;QACzC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,YAAY,GAAa,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,YAAY,GAAoB,EAAE,CAAC;QAEzC,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC3B,kBAAkB,GAAG,MAAM,CAAC,UAAU,CAAC;YACvC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;YAC3B,MAAM,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACN,yBAAyB;YACzB,iBAAiB,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,IAAA,wCAA2B,EAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChG,MAAM,gBAAgB,GAAG,IAAA,qCAAwB,EAAC,iBAAiB,CAAC,CAAC;YACrE,kCAAkC;YAClC,MAAM,UAAU,GAAG,IAAA,0CAA2B,EAAC,GAAG,CAAC,CAAC;YACpD,2DAA2D;YAC3D,MAAM,UAAU,GAAG,IAAA,oCAAqB,EAAC,IAAA,6BAAc,EAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;YAC/F,IAAI,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,uBAAa,OAAO,gBAAgB,EAAE,CAAC,CAAC,CAAC,uBAAa,CAAC;YAChG,IAAI,UAAU;gBAAE,YAAY,IAAI,UAAU,CAAC;YAC3C,IAAI,UAAU;gBAAE,YAAY,IAAI,UAAU,CAAC;YAE3C,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,IAAA,kBAAQ,EAAC,IAAI,CAAC,CAAC;YACxD,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,GAAG,YAAY,CAAC,CAAC;YACxE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YACrD,MAAM,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,IAAI,GAAG,SAAS,CAAC;QACrB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAE1B,wCAAwC;QACxC,MAAM,cAAc,GAAG,KAAK,EAAE,MAAqB,EAAiB,EAAE;YACpE,IAAI,CAAC,OAAO;gBAAE,OAAO;YACrB,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,OAAO,CAAC;gBACZ,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI;gBACJ,GAAG;gBACH,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,MAAM;gBACN,UAAU,EAAE,kBAAkB,GAAG,KAAK;gBACtC,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,YAAY;aACb,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM;YAAE,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;QAE7C,OAAO,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAiB,MAAM,MAAM,CAAC,IAAI,CAC1C,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAC3E,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAC/B,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACvC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC;YACrB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEpB,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YAE3C,MAAM,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE;gBACtC,QAAQ,EAAE,IAAI,CAAC,UAAU;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACnD,SAAS,EAAE,OAAO;aACnB,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,EAAE,gBAAgB;gBACtB,QAAQ,EAAE,IAAI,CAAC,UAAU;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;gBAC1B,SAAS,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACpD,CAAC,CAAC;YACH,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;YAEhC,iBAAiB;YACjB,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjD,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC1B,MAAM;YACR,CAAC;YAED,6BAA6B;YAC7B,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;gBACnC,WAAW,GAAG,cAAc,OAAO,QAAQ,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAyC,CAAC;gBACpG,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBACzF,eAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBACpF,KAAK,EAAE,CAAC;gBACR,MAAM;YACR,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,CAAC;YAE5H,gBAAgB;YAChB,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;oBACzC,SAAS,EAAE,KAAK;oBAChB,iBAAiB;oBACjB,cAAc;oBACd,QAAQ;oBACR,IAAI;oBACJ,YAAY;oBACZ,QAAQ;oBACR,YAAY,EAAE,OAAO,CAAC,KAAK;iBAC5B,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC3B,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;oBAC9B,KAAK,EAAE,CAAC;oBACR,MAAM;gBACR,CAAC;gBACD,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC9B,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;oBACxB,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC;oBAC1C,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;oBAC5B,SAAS,CAAC,iBAAiB;gBAC7B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,iBAAiB;gBACjB,iBAAiB,GAAG,CAAC,CAAC;YACxB,CAAC;YAED,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;YAEhC,YAAY;YACZ,IAAI,IAAA,iCAAa,EAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE,CAAC;gBAC9C,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,IAAA,kCAAc,EAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACpE,QAAQ,GAAG,SAAS,CAAC;gBACrB,MAAM,QAAQ,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAA6B,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,IAAI,EAAE,iBAAiB;oBACvB,cAAc,EAAE,KAAK,CAAC,cAAc;oBACpC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;iBACzC,CAAC,CAAC;gBACH,eAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;oBACxC,cAAc,EAAE,KAAK,CAAC,cAAc;oBACpC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;iBACzC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,kBAAkB,GAAG,KAAK,IAAI,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1D,WAAW,GAAG,gCAAgC,CAAC;YAC/C,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;YACrE,eAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,+CAA+C;QAC/C,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,IAAA,8BAAiB,EAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/D,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAC9B,MAAM,IAAA,6BAAgB,EAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YAC7C,CAAC;YACD,gCAAgC;YAChC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,IAAA,8BAAiB,EAAC,QAAQ,CAAC,CAAC;gBAC3C,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,IAAA,6BAAgB,EAAC,aAAa,EAAE,MAAM,CAAC,CAAC;oBAC9C,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;YACD,8BAA8B;YAC9B,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;gBACpC,MAAM,IAAA,kCAAqB,EAAC,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACrD,CAAC;YACD,oBAAoB,GAAG,WAAW,CAAC,MAAM,CAAC;YAC1C,MAAM,QAAQ,CAAC,MAAM,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7F,CAAC;QAED,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;YACnC,UAAU,EAAE,kBAAkB,GAAG,KAAK;YACtC,OAAO,EAAE,IAAI;YACb,UAAU;YACV,oBAAoB;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,EAAE,aAAa;YACnB,UAAU,EAAE,kBAAkB,GAAG,KAAK;YACtC,OAAO,EAAE,IAAI;YACb,EAAE,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;SAC3B,CAAC,CAAC;QAEH,OAAO;YACL,EAAE,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;YAC1B,WAAW;YACX,UAAU,EAAE,kBAAkB,GAAG,KAAK;YACtC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,QAAQ,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU;YACV,oBAAoB;SACrB,CAAC;IACJ,CAAC;IAED,6CAA6C;IACrC,kBAAkB,CAAC,GAAgB,EAAE,YAAsB;QACjE,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,GAAI,EAAE,CAAC,SAA4C,EAAE,IAAI,CAAC;YACjE,IACE,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC;gBACrD,OAAO,CAAC,KAAK,QAAQ;gBACrB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,EACzB,CAAC;gBACD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;IAED,yCAAyC;IACjC,KAAK,CAAC,gBAAgB,CAC5B,GAAgB,EAChB,GAQC,EACD,QAAuB;QAEvB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YACrC,4CAA4C;YAC5C,iDAAiD;YACjD,MAAM,OAAO,GAAI,EAAE,CAAC,SAA4C,EAAE,IAAI,CAAC;YACvE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,IAAA,oCAAqB,EAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACvD,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;oBAChG,MAAM,OAAO,GAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBACjE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACvB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YACD,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;YAC9E,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;YAC9E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE;gBAC5D,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK;gBACxB,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;aACjB,CAAC,CAAC;YACH,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;gBACvC,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YAChH,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;YAClE,MAAM,OAAO,GAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,EAAE;gBAAE,WAAW,EAAE,CAAC;QAChC,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,gEAAgE;IACxD,KAAK,CAAC,cAAc,CAC1B,IAAiB,EACjB,KASC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC3B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAsB,EAAC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;QAClF,IAAI,MAAM,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YACtC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QACtH,CAAC;QACD,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,IAAA,yBAAa,EAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QACtH,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,MAAM,IAAA,8BAAkB,EAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QAChF,MAAM,iBAAiB,GAAG,MAAM,CAAC;QACjC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,WAAW,GAAG,YAAY,KAAK,CAAC,cAAc,2BAA2B,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC;YAC/J,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YACjG,eAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YAC5G,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QAC1F,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC;QACxB,MAAM,WAAW,GAAG,IAAA,4BAAgB,EAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1E,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3G,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;QACzG,eAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IACvG,CAAC;CACF;AArUD,oCAqUC"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/agent/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -14,13 +14,15 @@ const model_router_1 = require("../models/model-router");
14
14
  const planner_1 = require("./planner");
15
15
  const subagent_1 = require("./subagent");
16
16
  const worktree_1 = require("../runtime/worktree");
17
+ const concurrency_1 = require("../shared/concurrency");
17
18
  async function runParallel(goal, opts = {}) {
18
19
  const offline = opts.offline ?? true;
19
20
  const repoRoot = opts.repoRoot ?? (await (0, worktree_1.getRepoRoot)(process.cwd()));
20
21
  const cleanup = opts.cleanup ?? true;
22
+ const maxConcurrent = opts.maxConcurrent ?? 3;
21
23
  const tasks = (0, planner_1.decomposeGoal)(goal);
22
24
  const router = opts.router ?? new model_router_1.ModelRouter([], 'cost', 0); // 离线时子代理自带 mock
23
- logger_1.logger.info('parallel start', { repoRoot, tasks: tasks.length, offline });
25
+ logger_1.logger.info('parallel start', { repoRoot, tasks: tasks.length, offline, maxConcurrent });
24
26
  const worktrees = [];
25
27
  const subResults = [];
26
28
  try {
@@ -28,7 +30,8 @@ async function runParallel(goal, opts = {}) {
28
30
  for (const task of tasks) {
29
31
  worktrees.push(await (0, worktree_1.createWorktree)(repoRoot, task.id));
30
32
  }
31
- const runs = tasks.map((task, i) => (0, subagent_1.runSubAgent)({
33
+ // 使用并发限制执行子代理,防止同时发起大量模型调用导致 API 限流
34
+ const taskFns = tasks.map((task, i) => () => (0, subagent_1.runSubAgent)({
32
35
  worktree: worktrees[i],
33
36
  goal: task.goal,
34
37
  router,
@@ -36,7 +39,7 @@ async function runParallel(goal, opts = {}) {
36
39
  approve: opts.approve,
37
40
  mockSteps: offline ? (opts.mockFor ? opts.mockFor(task, i) : undefined) : undefined,
38
41
  }).then((r) => ({ ...r, task })));
39
- const settled = await Promise.allSettled(runs);
42
+ const settled = await (0, concurrency_1.runWithConcurrencySettled)(taskFns, maxConcurrent);
40
43
  for (const s of settled) {
41
44
  if (s.status === 'fulfilled')
42
45
  subResults.push(s.value);
@@ -1 +1 @@
1
- {"version":3,"file":"parallel-orchestrator.js","sourceRoot":"","sources":["../../src/agent/parallel-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parallel-orchestrator.js","sourceRoot":"","sources":["../../src/agent/parallel-orchestrator.ts"],"names":[],"mappings":"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"}
@@ -35,19 +35,42 @@ function decomposeGoal(goal) {
35
35
  goal: frag,
36
36
  }));
37
37
  }
38
- /** 按中文/英文常见并列连词与标点拆分 */
38
+ /** 按中文/英文常见并列连词与标点拆分。
39
+ * 拆分后会合并过短的片段(< MIN_FRAGMENT_LEN 字)回前一个,避免连贯句子被撕碎。 */
40
+ const MIN_FRAGMENT_LEN = 12;
39
41
  function splitByConjunctions(text) {
40
- const parts = text
42
+ const raw = text
41
43
  .split(/\n+/)
42
44
  .flatMap((line) => line.split(/(?:;|;|。|并且|同时|分别|以及|还有|另外|一方面|另一方面)/))
43
45
  .map((s) => s.trim())
44
46
  .filter(Boolean);
45
- // 若拆分后只有一段,尝试按「做X和Y」式并列再拆
46
- if (parts.length <= 1) {
47
+ // 合并过短片段:长度 < MIN_FRAGMENT_LEN 的片段合并回前一个,避免"先读文件"被拆成独立子任务
48
+ const merged = [];
49
+ for (const frag of raw) {
50
+ if (merged.length > 0 && frag.length < MIN_FRAGMENT_LEN) {
51
+ merged[merged.length - 1] += ',' + frag;
52
+ }
53
+ else {
54
+ merged.push(frag);
55
+ }
56
+ }
57
+ // 若合并后只有一段,尝试按「做X和Y」式并列再拆
58
+ if (merged.length <= 1) {
47
59
  const alt = text.split(/(?:和|与|、|以及|并|加上)/).map((s) => s.trim()).filter(Boolean);
48
- if (alt.length > 1)
49
- return alt;
60
+ if (alt.length > 1) {
61
+ const mergedAlt = [];
62
+ for (const frag of alt) {
63
+ if (mergedAlt.length > 0 && frag.length < MIN_FRAGMENT_LEN) {
64
+ mergedAlt[mergedAlt.length - 1] += '和' + frag;
65
+ }
66
+ else {
67
+ mergedAlt.push(frag);
68
+ }
69
+ }
70
+ if (mergedAlt.length > 1)
71
+ return mergedAlt;
72
+ }
50
73
  }
51
- return parts;
74
+ return merged;
52
75
  }
53
76
  //# sourceMappingURL=planner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":";;AAsBA,4BAWC;AASD,sCAcC;AAlCD,SAAgB,QAAQ,CAAC,IAAY;IACnC,MAAM,IAAI,GAAS;QACjB,KAAK,EAAE;YACL,mBAAmB;YACnB,gCAAgC;YAChC,eAAe;YACf,SAAS;SACV;KACF,CAAC;IACF,MAAM,QAAQ,GAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,aAAa,CAAC,IAAY;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,CAAC;IAE3B,MAAM,SAAS,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACjC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;QACf,KAAK,EAAE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI;QACxD,IAAI,EAAE,IAAI;KACX,CAAC,CAAC,CAAC;AACN,CAAC;AAED,wBAAwB;AACxB,SAAS,mBAAmB,CAAC,IAAY;IACvC,MAAM,KAAK,GAAG,IAAI;SACf,KAAK,CAAC,KAAK,CAAC;SACZ,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;SACrE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,0BAA0B;IAC1B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjF,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/agent/planner.ts"],"names":[],"mappings":"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"}
@@ -11,16 +11,35 @@ exports.SYSTEM_PROMPT = `你是「飞虹 Code」,一个运行在终端的 AI
11
11
  你的目标:把用户的自然语言需求,转化为对代码仓库的真实、可验证的变更。
12
12
 
13
13
  工作原则:
14
- 1. 先勘察、后动手。用 list_dir / read_file / grep 理解现状,再决定改什么。
15
- 2. 小步前进、可验证。每完成一组变更,用 run_tests / build_check 验证,失败就修复。
14
+ 1. 先勘察、后动手。先理解现状,再决定改什么。
15
+ 2. 小步前进、可验证。每完成一组变更就跑测试或构建验证,失败就修复。
16
16
  3. 安全优先。文件操作只允许在工作区范围内;shell 命令受白名单与审批约束,绝不执行危险命令。
17
17
  4. 完全透明。所有动作都会被审计日志记录,最终给出清晰的总结。
18
18
 
19
- 工具使用协议(ReAct):
20
- - 当你需要调用工具时,在回复中返回 tool_calls(包含一个或多个 {name, arguments}),arguments 必须是合法 JSON 对象。
21
- - 工具结果会以 role=tool 消息回填给你,tool_call_id 对应你发出的调用 id。
22
- - 当任务已完成、无需再调用工具时,用自然语言给出最终总结(含做了什么、验证了什么、遗留风险)。
23
- - 一次只能推进力所能及的一小步;若需多步,先调用工具,再根据回填结果决定下一步。
19
+ 输出风格(非常重要,直接决定用户体验):
20
+ - 全程用自然口语化的中文跟用户交流,就像两个人面对面说话一样。
21
+ - 绝对不要使用 Markdown 格式:不要写井号标题(#、##、###),不要用星号列表(*、-),不要用代码块(\`\`\`),不要加粗(**),不要表格,不要用"第一、第二、第三"这种列举式表达,不要用"一、二、三"这种大标题。
22
+ - 哪怕是做分析、做总结、做文档梳理,也要用聊天的口吻说出来,不要写成技术报告。比如不要写"### 2. LLM 抽象层解耦合理",而是说"我看了一下 LLM 这一层的设计,解耦做得挺合理的"。
23
+ - 不要输出工具名称、参数、调用状态这些技术细节,用户不关心也看不懂。
24
+ - 段落不要太长,两三句话一段,空行隔开,读起来轻松。
25
+ - 不要用行号引用(ln 123、第45行这种),直接说内容就好。
26
+ - 不要用箭头(→)、竖线(|)、等号(===)这些符号来排版,直接用自然语言说。
24
27
 
25
- 输出约束:不要编造文件内容;若不确定,先读再写。优先保证编译/测试通过。`;
28
+ 思考过程和最终回复要区分开(非常重要,不要重复):
29
+ - 当你还需要操作文件或执行命令时(也就是要调用工具时),你的回复内容就是思考过程。这部分内容会实时显示给用户看,所以绝对不能空着,必须写点什么。
30
+ - 思考过程说清楚你现在发现了什么问题、你是怎么判断的、接下来打算怎么做。让用户看到你的思路,而不是只看到结果。
31
+ - 思考要具体有信息量,不要说"让我看看"、"我来检查一下"这种空话,直接说结论和意图,比如"这个函数的参数校验有问题,我先读一下完整的实现看看上下文"。
32
+ - 哪怕你只是要读一个文件,也要说一句你为什么要读它、期望从中得到什么信息,不要只发工具调用而不说话。
33
+ - 当任务全部完成、不需要再操作任何东西时(也就是不调用工具时),你的回复就是最终回复。直接说结果,简洁明了,不要把前面已经说过的思考过程再重复一遍。
34
+ - 最终回复说清楚做了什么、有没有验证通过、有没有遗留问题就够了,同样用自然语言,不要列清单不要打符号。
35
+
36
+ 工具使用协议:
37
+ - 当你需要操作文件或执行命令时,在回复中返回 tool_calls,arguments 必须是合法 JSON 对象。
38
+ - 严格参数匹配:每个工具只接受自己文档中定义的参数,不要把 A 工具的参数传给 B 工具。
39
+ - 工具结果会自动回填给你,你不需要把结果念给用户听,直接基于结果继续思考和行动。
40
+ - 一次只推进一小步,先操作再根据结果决定下一步。
41
+ - 绝对禁止重复调用:同一个工具用相同参数已经成功过就不要再调,直接用之前的结果。
42
+ - 不要重复失败:同一个工具用同样参数连续失败 2 次以上就换方式,不要硬试。
43
+
44
+ 输出约束:不要编造文件内容,不确定就先读再写。优先保证编译和测试通过。`;
26
45
  //# sourceMappingURL=prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,aAAa,GAAG;;;;;;;;;;;;;;;qCAeQ,CAAC"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent/prompts.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACU,QAAA,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAkCO,CAAC"}
@@ -34,13 +34,34 @@ const ERROR_RULES = [
34
34
  keywords: ['permission denied', 'eacces', 'eperm', '权限', '拒绝'],
35
35
  fixHint: '文件权限不足或路径不存在。检查文件权限和目录结构。',
36
36
  },
37
+ {
38
+ category: 'file-not-found',
39
+ keywords: ['enoent', 'no such file', '读取失败', '文件不存在', 'not found', 'eisdir', '不存在'],
40
+ fixHint: '目标文件或目录不存在。先用 list_dir 勘察当前目录结构,确认正确路径后再操作;不要反复尝试同一不存在的路径。',
41
+ },
42
+ {
43
+ category: 'build-error',
44
+ keywords: ['missing script', 'npm error', 'build failed', '编译失败', '构建失败', 'exit code 1', 'command failed'],
45
+ fixHint: '构建命令执行失败。检查 package.json 是否存在对应 script、工作目录是否正确、依赖是否已安装。先用 list_dir 确认目录结构,再决定用什么构建命令。',
46
+ },
47
+ {
48
+ category: 'command-not-found',
49
+ keywords: ['command not found', 'not recognized', 'is not recognized', '找不到命令', '命令不存在', 'enoent command'],
50
+ fixHint: '命令不存在或未安装。检查命令拼写是否正确、是否需要先安装依赖、是否在正确的工作目录下执行。',
51
+ },
52
+ {
53
+ category: 'invalid-args',
54
+ keywords: ['参数校验失败', '参数警告', 'unknown tool', '未知工具', 'invalid argument', 'unexpected argument'],
55
+ fixHint: '工具参数错误。检查是否把 A 工具的参数传给了 B 工具,每个工具只接受自己文档中定义的参数。先确认工具名称,再传对应参数。',
56
+ },
37
57
  {
38
58
  category: 'model-error',
39
59
  keywords: ['api error', 'rate limit', '429', '500', '模型', '限流'],
40
60
  fixHint: '模型 API 错误。检查 API 密钥、速率限制或网络连通性。',
41
61
  },
42
62
  ];
43
- /** 错误分类器:根据工具返回结果判断错误类型(规则表驱动,中英双语识别) */
63
+ /** 错误分类器:根据工具返回结果判断错误类型(规则表驱动,中英双语识别)。
64
+ * 未命中任何规则时返回 'unknown' 兜底分类,确保 orchestrator 的重试上限与自愈逻辑不会被绕过。 */
44
65
  function classifyError(output, error) {
45
66
  const text = (error || output).toLowerCase();
46
67
  for (const rule of ERROR_RULES) {
@@ -48,28 +69,37 @@ function classifyError(output, error) {
48
69
  return { category: rule.category, message: error || output, fixHint: rule.fixHint };
49
70
  }
50
71
  }
51
- return null;
72
+ return {
73
+ category: 'unknown',
74
+ message: error || output,
75
+ fixHint: '未识别的错误类型。请仔细阅读错误信息,调整执行策略,避免重复相同操作。',
76
+ };
52
77
  }
53
- /** 生成反思提示词,指导模型基于错误进行修复 */
54
- function generateReflectPrompt(errorAnalysis, _goal) {
55
- return `⚠️ 上一轮任务执行失败,请反思并修复:
78
+ /** 生成反思提示词,指导模型基于错误进行修复。
79
+ * 包含具体工具名、参数、错误详情,避免笼统的"请反思"导致模型重复同样错误。 */
80
+ function generateReflectPrompt(errorAnalysis, _goal, lastToolCall) {
81
+ const toolInfo = lastToolCall
82
+ ? `\n**出错工具**: ${lastToolCall.name}\n**传入参数**: ${JSON.stringify(lastToolCall.args)}\n`
83
+ : '';
84
+ return `⚠️ 上一轮工具执行失败,请仔细反思并修正策略:
56
85
 
57
86
  **错误类型**: ${errorAnalysis.category}
58
- **错误详情**: ${errorAnalysis.message}
87
+ **错误详情**: ${errorAnalysis.message}${toolInfo}
59
88
  **修复建议**: ${errorAnalysis.fixHint}
60
89
 
61
- 请基于以上错误信息,重新制定执行方案,注意:
62
- 1. 避免重复之前的错误
63
- 2. 如有必要,先勘察代码库理解上下文
64
- 3. 采用更稳健的实现方式
65
- 4. 完成后再次验证
90
+ 请严格遵守以下规则:
91
+ 1. 不要再用相同参数重复调用同一个失败的工具——这会继续失败
92
+ 2. 检查工具名称是否正确、参数是否属于该工具(每个工具只接受自己文档中定义的参数)
93
+ 3. 如有必要,先用 list_dir 勘察目录结构,或用 read_file 确认文件存在
94
+ 4. 如果某个工具连续失败,换一种方式或换一个工具实现目标
95
+ 5. 修正后再调用工具,不要盲目重试
66
96
  `;
67
97
  }
68
98
  /** 将反思消息注入对话上下文 */
69
- function injectReflection(messages, errorAnalysis, goal) {
99
+ function injectReflection(messages, errorAnalysis, goal, lastToolCall) {
70
100
  const reflectMsg = {
71
101
  role: 'user',
72
- content: generateReflectPrompt(errorAnalysis, goal),
102
+ content: generateReflectPrompt(errorAnalysis, goal, lastToolCall),
73
103
  };
74
104
  return [...messages, reflectMsg];
75
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"self-heal.js","sourceRoot":"","sources":["../../src/agent/self-heal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"self-heal.js","sourceRoot":"","sources":["../../src/agent/self-heal.ts"],"names":[],"mappings":"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"}
package/dist/cli/repl.js CHANGED
@@ -50,28 +50,29 @@ const readline = __importStar(require("readline"));
50
50
  const run_1 = require("./run");
51
51
  const tui_1 = require("./tui");
52
52
  const i18n_1 = require("../shared/i18n");
53
- /** 把编排器事件渲染进 TUI(header 状态 + 内容日志) */
53
+ /** 把编排器事件渲染进 TUI,只展示思考内容,不展示工具调用等技术细节 */
54
54
  function tuiEventRenderer(tui) {
55
55
  return (ev) => {
56
56
  switch (ev.type) {
57
57
  case 'model.response':
58
- if (ev.content.trim())
59
- tui.log(`🧠 ${ev.content.trim().slice(0, 300)}`);
60
- else if (ev.toolCalls.length > 0)
61
- tui.log(`🔧 ${(0, i18n_1.t)('stream.toolCalling', { tools: ev.toolCalls.join(', ') })}`);
58
+ if (ev.content.trim()) {
59
+ tui.log(ev.content.trim());
60
+ tui.log('');
61
+ }
62
62
  break;
63
+ case 'tool.call':
63
64
  case 'tool.result':
64
- tui.log(ev.ok ? ` ✅ ${ev.name} ${(0, i18n_1.t)('stream.toolOk')}` : ` ❌ ${ev.name} ${(0, i18n_1.t)('stream.toolFail')} — ${ev.output.slice(0, 120)}`);
65
+ // 工具调用和结果不展示
65
66
  break;
66
67
  case 'self-heal':
67
- tui.log(`🩹 ${(0, i18n_1.t)('stream.selfHeal', { category: ev.category })}`);
68
+ tui.log('刚才遇到点小问题,我调整一下思路再试试。');
69
+ tui.log('');
68
70
  break;
69
71
  case 'context.compact':
70
- tui.log(`📦 ${(0, i18n_1.t)('stream.compact', { from: ev.originalLength, to: ev.compressedLength })}`);
72
+ // 内部机制,不展示
71
73
  break;
72
74
  case 'session.end':
73
75
  tui.setStatus({ iteration: ev.iterations, cost: '$' + ev.costUsd.toFixed(6), state: ev.ok ? '完成' : '未完成' });
74
- tui.log(`🏁 ${(0, i18n_1.t)('stream.done', { iter: ev.iterations, cost: '$' + ev.costUsd.toFixed(6) })}`);
75
76
  break;
76
77
  }
77
78
  };
@@ -1 +1 @@
1
- {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,8BA2DC;AAtGD;;;;;;;;;;;GAWG;AACH,mDAAqC;AACrC,+BAAiH;AAEjH,+BAA4B;AAC5B,yCAAmC;AAEnC,sCAAsC;AACtC,SAAS,gBAAgB,CAAC,GAAQ;IAChC,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,gBAAgB;gBACnB,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;oBAAE,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;qBACnE,IAAI,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;oBAAE,GAAG,CAAC,GAAG,CAAC,MAAM,IAAA,QAAC,EAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC/G,MAAM;YACR,KAAK,aAAa;gBAChB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,IAAA,QAAC,EAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,IAAI,IAAA,QAAC,EAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChI,MAAM;YACR,KAAK,WAAW;gBACd,GAAG,CAAC,GAAG,CAAC,MAAM,IAAA,QAAC,EAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBACjE,MAAM;YACR,KAAK,iBAAiB;gBACpB,GAAG,CAAC,GAAG,CAAC,MAAM,IAAA,QAAC,EAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC3F,MAAM;YACR,KAAK,aAAa;gBAChB,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5G,GAAG,CAAC,GAAG,CAAC,MAAM,IAAA,QAAC,EAAC,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9F,MAAM;QACV,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,SAAS;IAC7B,MAAM,GAAG,GAAG,IAAI,SAAG,EAAE,CAAC;IACtB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB;IAE9B,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,cAAc,CAAC,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,WAAW,CAAC,CAAC,CAAC;IAC5B,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAA,wBAAkB,GAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAEhG,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtF,uDAAuD;IACvD,yCAAyC;IACzC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,aAAa,GAA2C,IAAI,CAAC;IACjE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,MAAM,GAAG,IAAI,CAAC;QACd,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;YACxD,aAAa,GAAG,OAAO,CAAC;YACxB,EAAE,CAAC,QAAQ,CAAC,IAAA,QAAC,EAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QACH,aAAa,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,CAAC,WAAW;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM;YAAE,MAAM;QAC5C,IAAI,CAAC,GAAG;YAAE,SAAS;QAEnB,oBAAoB;QACpB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,IAAI,KAAK,MAAM;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;qBAC5D,IAAI,IAAI,KAAK,OAAO;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;qBACpE,IAAI,IAAI,KAAK,MAAM;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;qBACjE,IAAI,IAAI,KAAK,WAAW;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,sBAAgB,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;;oBAC1E,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,mBAAmB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,wBAAkB,GAAE,CAAC;QACrC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC;YACH,gDAAgD;YAChD,MAAM,IAAA,aAAO,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QACvH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,EAAE,CAAC,KAAK,EAAE,CAAC;IACX,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,UAAU,CAAC,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/cli/repl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,8BA2DC;AAzGD;;;;;;;;;;;GAWG;AACH,mDAAqC;AACrC,+BAAiH;AAEjH,+BAA4B;AAC5B,yCAAmC;AAEnC,yCAAyC;AACzC,SAAS,gBAAgB,CAAC,GAAQ;IAChC,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,gBAAgB;gBACnB,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACtB,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC3B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACd,CAAC;gBACD,MAAM;YACR,KAAK,WAAW,CAAC;YACjB,KAAK,aAAa;gBAChB,aAAa;gBACb,MAAM;YACR,KAAK,WAAW;gBACd,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;gBAChC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACZ,MAAM;YACR,KAAK,iBAAiB;gBACpB,WAAW;gBACX,MAAM;YACR,KAAK,aAAa;gBAChB,GAAG,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5G,MAAM;QACV,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,SAAS;IAC7B,MAAM,GAAG,GAAG,IAAI,SAAG,EAAE,CAAC;IACtB,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB;IAE9B,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,cAAc,CAAC,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,WAAW,CAAC,CAAC,CAAC;IAC5B,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAA,wBAAkB,GAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAEhG,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtF,uDAAuD;IACvD,yCAAyC;IACzC,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,aAAa,GAA2C,IAAI,CAAC;IACjE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,MAAM,GAAG,IAAI,CAAC;QACd,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;YACxD,aAAa,GAAG,OAAO,CAAC;YACxB,EAAE,CAAC,QAAQ,CAAC,IAAA,QAAC,EAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QACH,aAAa,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,CAAC,WAAW;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,MAAM;YAAE,MAAM;QAC5C,IAAI,CAAC,GAAG;YAAE,SAAS;QAEnB,oBAAoB;QACpB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClD,IAAI,IAAI,KAAK,MAAM;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;qBAC5D,IAAI,IAAI,KAAK,OAAO;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,mBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;qBACpE,IAAI,IAAI,KAAK,MAAM;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,kBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;qBACjE,IAAI,IAAI,KAAK,WAAW;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAA,sBAAgB,EAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;;oBAC1E,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,mBAAmB,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,wBAAkB,GAAE,CAAC;QACrC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC;YACH,gDAAgD;YAChD,MAAM,IAAA,aAAO,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QACvH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAA,QAAC,EAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,EAAE,CAAC,KAAK,EAAE,CAAC;IACX,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,OAAO,CAAC,GAAG,CAAC,IAAA,QAAC,EAAC,UAAU,CAAC,CAAC,CAAC;AAC7B,CAAC"}
package/dist/cli/run.js CHANGED
@@ -172,29 +172,30 @@ function getSessionHome(offline) {
172
172
  const home = process.env.FH_HOME ? expandHome(process.env.FH_HOME) : joinHome();
173
173
  return (0, path_1.join)(home, 'sessions');
174
174
  }
175
- /** P0-1:把编排器事件流增量渲染到 stdout(流式输出)。抑制换行噪音:仅打印关键节点。 */
175
+ /** 流式输出:只展示模型的思考内容,不展示工具调用等技术细节,让普通人看懂。 */
176
176
  function renderStreamEvent(ev) {
177
177
  switch (ev.type) {
178
178
  case 'model.response':
179
- // 有文本内容时直接流式打印(模拟 token 流);仅工具调用时打印调用摘要
180
- if (ev.content.trim())
181
- console.log(`🧠 ${ev.content.trim().slice(0, 300)}`);
182
- else if (ev.toolCalls.length > 0)
183
- console.log(`🔧 ${(0, i18n_1.t)('stream.toolCalling', { tools: ev.toolCalls.join(', ') })}`);
179
+ // 有思考内容就完整打印,这是用户最关心的部分
180
+ if (ev.content.trim()) {
181
+ console.log(ev.content.trim());
182
+ console.log('');
183
+ }
184
+ // 纯工具调用没有思考文本时,不输出任何东西,避免噪音
184
185
  break;
185
186
  case 'tool.call':
186
- break; // 已在上层 model.response 摘要,避免重复
187
187
  case 'tool.result':
188
- console.log(ev.ok ? ` ✅ ${ev.name} ${(0, i18n_1.t)('stream.toolOk')}` : ` ❌ ${ev.name} ${(0, i18n_1.t)('stream.toolFail')} — ${ev.output.slice(0, 120)}`);
188
+ // 工具调用和结果不展示,用户不需要知道内部在调什么工具
189
189
  break;
190
190
  case 'self-heal':
191
- console.log(`🩹 ${(0, i18n_1.t)('stream.selfHeal', { category: ev.category })}`);
191
+ console.log('刚才遇到点小问题,我调整一下思路再试试。');
192
+ console.log('');
192
193
  break;
193
194
  case 'context.compact':
194
- console.log(`📦 ${(0, i18n_1.t)('stream.compact', { from: ev.originalLength, to: ev.compressedLength })}`);
195
+ // 上下文压缩是内部机制,不打扰用户
195
196
  break;
196
197
  case 'session.end':
197
- console.log(`🏁 ${(0, i18n_1.t)('stream.done', { iter: ev.iterations, cost: '$' + ev.costUsd.toFixed(6) })}`);
198
+ // 结束状态不单独打印,最终答案会在 runGoal 里输出
198
199
  break;
199
200
  }
200
201
  }
@@ -224,18 +225,12 @@ async function executeTask(goal, opts = {}) {
224
225
  (0, enterprise_1.assertQuota)(rt);
225
226
  // 离线模式用临时工作区,避免污染用户目录;并 git init 以支持 diff/rollback 演示
226
227
  const targetCwd = opts.workspaceDir || process.cwd();
227
- const originalCwd = process.cwd();
228
228
  const cwd = offline ? (0, fs_1.mkdtempSync)((0, path_1.join)((0, os_1.tmpdir)(), 'fhcode-demo-')) : targetCwd;
229
229
  if (offline) {
230
230
  await (0, exec_1.runCommand)('git init -q', cwd).catch(() => undefined);
231
231
  }
232
- else {
233
- // 切换到目标工作区(Web 控制台任务队列会传入 workspaceDir)
234
- try {
235
- process.chdir(targetCwd);
236
- }
237
- catch { /* 忽略切换失败,退回到原 cwd */ }
238
- }
232
+ // 注意:不再使用 process.chdir(targetCwd) —— 所有工具通过 ctx.cwd 显式传参,
233
+ // 全局切换 cwd 会导致并发任务互相覆盖工作目录。移除后可安全提高并发数。
239
234
  let router;
240
235
  let pluginSkillDirs = [];
241
236
  // Web 控制台直接注入模型配置(绕过 loadConfig 缓存)
@@ -271,6 +266,15 @@ async function executeTask(goal, opts = {}) {
271
266
  for (const m of opts.resume.messages)
272
267
  session.append(m);
273
268
  }
269
+ // 用户附件上下文:把本轮附件路径以系统提示形式注入到本次目标的前缀,
270
+ // 让模型知道有哪些文件可读取;具体处理由 LLM 决定(如读取图片/读文件等)。
271
+ let effectiveGoal = goal;
272
+ if (opts.attachments && opts.attachments.length > 0) {
273
+ const list = opts.attachments.map((p, i) => ` ${i + 1}. ${p}`).join('\n');
274
+ effectiveGoal =
275
+ `[用户附件] 本轮上传了 ${opts.attachments.length} 个文件,请按需读取:\n${list}\n\n` +
276
+ goal;
277
+ }
274
278
  const approve = opts.approve ??
275
279
  (process.stdin.isTTY ? interactiveApprover() : defaultApproverFor(security));
276
280
  const guard = rt
@@ -289,6 +293,7 @@ async function executeTask(goal, opts = {}) {
289
293
  persist: (cp) => (0, session_persist_1.saveCheckpoint)(logDir, cp),
290
294
  onEvent: opts.renderer ?? (opts.stream ? streamRenderer() : undefined),
291
295
  pluginSkillDirs,
296
+ signal: opts.signal,
292
297
  });
293
298
  if (rt) {
294
299
  rt.audit.record({
@@ -303,7 +308,7 @@ async function executeTask(goal, opts = {}) {
303
308
  });
304
309
  }
305
310
  try {
306
- const result = await orchestrator.run(goal, opts.resume);
311
+ const result = await orchestrator.run(effectiveGoal, opts.resume);
307
312
  if (rt) {
308
313
  rt.audit.record({
309
314
  tenantId: rt.tenant.tenantId,
@@ -323,28 +328,23 @@ async function executeTask(goal, opts = {}) {
323
328
  finally {
324
329
  // P0-3:任务结束关闭 MCP 子进程
325
330
  await (0, mcp_1.closeMcpClients)(mcpClients);
326
- // 恢复原始工作目录,避免影响后续任务
327
- try {
328
- process.chdir(originalCwd);
329
- }
330
- catch { /* 忽略 */ }
331
331
  }
332
332
  }
333
333
  async function runGoal(goal, opts = {}) {
334
334
  const result = await executeTask(goal, opts);
335
335
  const offline = opts.offline ?? isOfflineByDefault();
336
- const logDir = getSessionHome(offline);
337
- console.log('\n' + (0, i18n_1.t)('run.resultTitle'));
338
- console.log(result.finalAnswer);
339
- console.log('\n' + (0, i18n_1.t)('run.summary', { iter: result.iterations, cost: '$' + result.costUsd.toFixed(6), log: result.logFile }));
340
- console.log((0, i18n_1.t)('run.checkpoint', { path: (0, path_1.join)(logDir, `${result.runId}.session.json`) }));
336
+ // 只输出最终答案,不打印迭代数、成本、日志路径等技术信息
337
+ if (result.finalAnswer.trim()) {
338
+ console.log('');
339
+ console.log(result.finalAnswer.trim());
340
+ console.log('');
341
+ }
341
342
  if (offline) {
342
- // 演示文件可能因策略拒绝而未生成,据实播报,避免误导
343
343
  const demoFile = (0, path_1.join)(process.cwd(), 'demo-output.txt');
344
344
  logger_1.logger.info('offline-run done', { cwd: process.cwd(), demoFile });
345
- console.log((0, fs_1.existsSync)(demoFile)
346
- ? (0, i18n_1.t)('run.offlineFileYes', { file: demoFile })
347
- : (0, i18n_1.t)('run.offlineFileNo', { cwd: process.cwd() }));
345
+ if ((0, fs_1.existsSync)(demoFile)) {
346
+ console.log((0, i18n_1.t)('run.offlineFileYes', { file: demoFile }));
347
+ }
348
348
  }
349
349
  }
350
350
  /** 默认是否离线:未配置 FH_PROVIDERS 或为空数组时离线 */
@@ -581,9 +581,11 @@ async function runResume(runId) {
581
581
  costUsd: cp.costUsd,
582
582
  touchedFiles: cp.touchedFiles,
583
583
  });
584
- console.log('\n' + (0, i18n_1.t)('run.resultTitle'));
585
- console.log(result.finalAnswer);
586
- console.log((0, i18n_1.t)('run.summary', { iter: result.iterations, cost: '$' + result.costUsd.toFixed(6), log: result.logFile }));
584
+ if (result.finalAnswer.trim()) {
585
+ console.log('');
586
+ console.log(result.finalAnswer.trim());
587
+ console.log('');
588
+ }
587
589
  }
588
590
  /** 展示会话作用域的 diff(缺省为本工作区全量 diff) */
589
591
  async function runDiff(id) {