@yun520-1/heartflow 0.15.2 → 0.16.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 (622) hide show
  1. package/README.md +64 -163
  2. package/VERSION +1 -1
  3. package/install.sh +26 -117
  4. package/meaningful-core.json +26 -0
  5. package/package.json +9 -18
  6. package/src/core/heartflow.js +187 -532
  7. package/src/dream/engine.js +99 -0
  8. package/src/evolution/loop.js +145 -0
  9. package/src/psychology/engine.js +268 -0
  10. package/tests/run.js +195 -0
  11. package/AI-AGENT-README.md +0 -154
  12. package/CLAIMS.md +0 -23
  13. package/CORE_VALUES.md +0 -50
  14. package/INSTALL_FOR_AI.md +0 -104
  15. package/QUICK_START.md +0 -77
  16. package/READ/refresh_11.2.6.md +0 -6
  17. package/README.zh.md +0 -49
  18. package/REPO_STRUCTURE.md +0 -47
  19. package/SKILL.md.new +0 -1
  20. package/_test_memory.mjs +0 -52
  21. package/assets/banner.png +0 -0
  22. package/bin/cli.js +0 -167
  23. package/bin/setup.js +0 -382
  24. package/co-evolution/index.ts +0 -511
  25. package/com.heartflow.auto-evolution.plist.disabled +0 -26
  26. package/com.heartflow.auto-upgrade.plist.disabled +0 -26
  27. package/com.heartflow.comfyui-monitor.plist.disabled +0 -22
  28. package/com.heartflow.enhanced-upgrade.plist.disabled +0 -22
  29. package/com.heartflow.full-audit.plist +0 -28
  30. package/com.heartflow.github-audit.plist +0 -21
  31. package/com.heartflow.paper-upgrade.plist.disabled +0 -21
  32. package/config/ai-config.json +0 -12
  33. package/config/ai-providers.json +0 -14
  34. package/dict-data/generate-graph.js +0 -203
  35. package/dist/agent/runtime/AgentRuntime.d.ts +0 -212
  36. package/dist/agent/runtime/AgentRuntime.d.ts.map +0 -1
  37. package/dist/agent/runtime/AgentRuntime.js +0 -355
  38. package/dist/agent/runtime/AgentRuntime.js.map +0 -1
  39. package/dist/agent/runtime/PlanExecutor.d.ts +0 -132
  40. package/dist/agent/runtime/PlanExecutor.d.ts.map +0 -1
  41. package/dist/agent/runtime/PlanExecutor.js +0 -322
  42. package/dist/agent/runtime/PlanExecutor.js.map +0 -1
  43. package/dist/agent/runtime/TaskGraph.d.ts +0 -170
  44. package/dist/agent/runtime/TaskGraph.d.ts.map +0 -1
  45. package/dist/agent/runtime/TaskGraph.js +0 -390
  46. package/dist/agent/runtime/TaskGraph.js.map +0 -1
  47. package/dist/agent/runtime/TaskScheduler.d.ts +0 -120
  48. package/dist/agent/runtime/TaskScheduler.d.ts.map +0 -1
  49. package/dist/agent/runtime/TaskScheduler.js +0 -301
  50. package/dist/agent/runtime/TaskScheduler.js.map +0 -1
  51. package/dist/agent/runtime/index.d.ts +0 -17
  52. package/dist/agent/runtime/index.d.ts.map +0 -1
  53. package/dist/agent/runtime/index.js +0 -22
  54. package/dist/agent/runtime/index.js.map +0 -1
  55. package/dist/agent/runtime/test-runtime.d.ts +0 -2
  56. package/dist/agent/runtime/test-runtime.d.ts.map +0 -1
  57. package/dist/agent/runtime/test-runtime.js +0 -71
  58. package/dist/agent/runtime/test-runtime.js.map +0 -1
  59. package/dist/agent/tools/BashTool.d.ts +0 -44
  60. package/dist/agent/tools/BashTool.d.ts.map +0 -1
  61. package/dist/agent/tools/BashTool.js +0 -355
  62. package/dist/agent/tools/BashTool.js.map +0 -1
  63. package/dist/agent/tools/FileReadTool.d.ts +0 -29
  64. package/dist/agent/tools/FileReadTool.d.ts.map +0 -1
  65. package/dist/agent/tools/FileReadTool.js +0 -196
  66. package/dist/agent/tools/FileReadTool.js.map +0 -1
  67. package/dist/agent/tools/FileWriteTool.d.ts +0 -35
  68. package/dist/agent/tools/FileWriteTool.d.ts.map +0 -1
  69. package/dist/agent/tools/FileWriteTool.js +0 -204
  70. package/dist/agent/tools/FileWriteTool.js.map +0 -1
  71. package/dist/agent/tools/Tool.d.ts +0 -75
  72. package/dist/agent/tools/Tool.d.ts.map +0 -1
  73. package/dist/agent/tools/Tool.js +0 -54
  74. package/dist/agent/tools/Tool.js.map +0 -1
  75. package/dist/agent/tools/WebSearchTool.d.ts +0 -27
  76. package/dist/agent/tools/WebSearchTool.d.ts.map +0 -1
  77. package/dist/agent/tools/WebSearchTool.js +0 -136
  78. package/dist/agent/tools/WebSearchTool.js.map +0 -1
  79. package/dist/cli/commands/engines.d.ts +0 -39
  80. package/dist/cli/commands/engines.d.ts.map +0 -1
  81. package/dist/cli/commands/engines.js +0 -275
  82. package/dist/cli/commands/engines.js.map +0 -1
  83. package/dist/cli/commands/health.d.ts +0 -34
  84. package/dist/cli/commands/health.d.ts.map +0 -1
  85. package/dist/cli/commands/health.js +0 -381
  86. package/dist/cli/commands/health.js.map +0 -1
  87. package/dist/cli/commands/repl.d.ts +0 -40
  88. package/dist/cli/commands/repl.d.ts.map +0 -1
  89. package/dist/cli/commands/repl.js +0 -286
  90. package/dist/cli/commands/repl.js.map +0 -1
  91. package/dist/cli/commands/status.d.ts +0 -22
  92. package/dist/cli/commands/status.d.ts.map +0 -1
  93. package/dist/cli/commands/status.js +0 -266
  94. package/dist/cli/commands/status.js.map +0 -1
  95. package/dist/cli/index.d.ts +0 -7
  96. package/dist/cli/index.d.ts.map +0 -1
  97. package/dist/cli/index.js +0 -13
  98. package/dist/cli/index.js.map +0 -1
  99. package/dist/core/consciousness/2308.08708_upgrade.d.ts +0 -321
  100. package/dist/core/consciousness/2308.08708_upgrade.d.ts.map +0 -1
  101. package/dist/core/consciousness/2308.08708_upgrade.js +0 -917
  102. package/dist/core/consciousness/2308.08708_upgrade.js.map +0 -1
  103. package/dist/core/dream/dream-consolidator.d.ts +0 -11
  104. package/dist/core/dream/dream-consolidator.d.ts.map +0 -1
  105. package/dist/core/dream/dream-consolidator.js +0 -188
  106. package/dist/core/dream/dream-consolidator.js.map +0 -1
  107. package/dist/core/dream/dream.d.ts +0 -71
  108. package/dist/core/dream/dream.d.ts.map +0 -1
  109. package/dist/core/dream/dream.js +0 -318
  110. package/dist/core/dream/dream.js.map +0 -1
  111. package/dist/core/dream/index.d.ts +0 -38
  112. package/dist/core/dream/index.d.ts.map +0 -1
  113. package/dist/core/dream/index.js +0 -185
  114. package/dist/core/dream/index.js.map +0 -1
  115. package/dist/core/emotion/deep-emotion.js +0 -574
  116. package/dist/core/emotion/emotion-engine.js +0 -138
  117. package/dist/core/emotion/index.d.ts +0 -44
  118. package/dist/core/emotion/index.d.ts.map +0 -1
  119. package/dist/core/emotion/index.js +0 -41
  120. package/dist/core/emotion/index.js.map +0 -1
  121. package/dist/core/heartcore/health-check.d.ts +0 -43
  122. package/dist/core/heartcore/health-check.d.ts.map +0 -1
  123. package/dist/core/heartcore/health-check.js +0 -152
  124. package/dist/core/heartcore/health-check.js.map +0 -1
  125. package/dist/core/heartcore/heartbeat.d.ts +0 -45
  126. package/dist/core/heartcore/heartbeat.d.ts.map +0 -1
  127. package/dist/core/heartcore/heartbeat.js +0 -127
  128. package/dist/core/heartcore/heartbeat.js.map +0 -1
  129. package/dist/core/heartcore/sleep-wake.d.ts +0 -61
  130. package/dist/core/heartcore/sleep-wake.d.ts.map +0 -1
  131. package/dist/core/heartcore/sleep-wake.js +0 -173
  132. package/dist/core/heartcore/sleep-wake.js.map +0 -1
  133. package/dist/core/heartcore/startup-check.d.ts +0 -38
  134. package/dist/core/heartcore/startup-check.d.ts.map +0 -1
  135. package/dist/core/heartcore/startup-check.js +0 -148
  136. package/dist/core/heartcore/startup-check.js.map +0 -1
  137. package/dist/core/index.js +0 -267
  138. package/dist/core/knowledge/index.d.ts +0 -95
  139. package/dist/core/knowledge/index.d.ts.map +0 -1
  140. package/dist/core/knowledge/index.js +0 -14
  141. package/dist/core/knowledge/index.js.map +0 -1
  142. package/dist/core/knowledge/knowledge-graph.js +0 -359
  143. package/dist/core/psychology/index.d.ts +0 -59
  144. package/dist/core/psychology/index.d.ts.map +0 -1
  145. package/dist/core/psychology/index.js +0 -268
  146. package/dist/core/psychology/index.js.map +0 -1
  147. package/dist/core/reasoning/bounded-rationality.d.ts +0 -76
  148. package/dist/core/reasoning/bounded-rationality.d.ts.map +0 -1
  149. package/dist/core/reasoning/bounded-rationality.js +0 -257
  150. package/dist/core/reasoning/bounded-rationality.js.map +0 -1
  151. package/dist/core/reasoning/causal-reasoning.d.ts +0 -89
  152. package/dist/core/reasoning/causal-reasoning.d.ts.map +0 -1
  153. package/dist/core/reasoning/causal-reasoning.js +0 -282
  154. package/dist/core/reasoning/causal-reasoning.js.map +0 -1
  155. package/dist/core/reasoning/index.d.ts +0 -38
  156. package/dist/core/reasoning/index.d.ts.map +0 -1
  157. package/dist/core/reasoning/index.js +0 -93
  158. package/dist/core/reasoning/index.js.map +0 -1
  159. package/dist/core/self-evolution/index.d.ts +0 -75
  160. package/dist/core/self-evolution/index.d.ts.map +0 -1
  161. package/dist/core/self-evolution/index.js +0 -311
  162. package/dist/core/self-evolution/index.js.map +0 -1
  163. package/dist/storage/checkpoint/CheckpointEngine.d.ts +0 -110
  164. package/dist/storage/checkpoint/CheckpointEngine.d.ts.map +0 -1
  165. package/dist/storage/checkpoint/CheckpointEngine.js +0 -227
  166. package/dist/storage/checkpoint/CheckpointEngine.js.map +0 -1
  167. package/dist/storage/checkpoint.d.ts +0 -18
  168. package/dist/storage/checkpoint.d.ts.map +0 -1
  169. package/dist/storage/checkpoint.js +0 -61
  170. package/dist/storage/checkpoint.js.map +0 -1
  171. package/dist/storage/index.d.ts +0 -61
  172. package/dist/storage/index.d.ts.map +0 -1
  173. package/dist/storage/index.js +0 -84
  174. package/dist/storage/index.js.map +0 -1
  175. package/dist/storage/vector/VectorStoreEngine.d.ts +0 -24
  176. package/dist/storage/vector/VectorStoreEngine.d.ts.map +0 -1
  177. package/dist/storage/vector/VectorStoreEngine.js +0 -197
  178. package/dist/storage/vector/VectorStoreEngine.js.map +0 -1
  179. package/distributed/-v2026.5.7/META.json +0 -9
  180. package/distributed/-v2026.5.7/package.json +0 -12
  181. package/distributed/.personal_backup/deepseek-key-v2026.5.7/META.json +0 -9
  182. package/distributed/.personal_backup/deepseek-key-v2026.5.7/package.json +0 -12
  183. package/distributed/.personal_backup/git-push-v2026.5.7/META.json +0 -9
  184. package/distributed/.personal_backup/git-push-v2026.5.7/package.json +0 -12
  185. package/distributed/.personal_backup/heartflow-always-upgrade-v2026.5.7/META.json +0 -9
  186. package/distributed/.personal_backup/heartflow-always-upgrade-v2026.5.7/package.json +0 -12
  187. package/distributed/.personal_backup/key-a-v2026.5.7/META.json +0 -9
  188. package/distributed/.personal_backup/key-a-v2026.5.7/package.json +0 -12
  189. package/distributed/.personal_backup/merge-memory-systems-v2026.5.7/META.json +0 -9
  190. package/distributed/.personal_backup/merge-memory-systems-v2026.5.7/package.json +0 -12
  191. package/distributed/.personal_backup/search-papers-first-v2026.5.7/META.json +0 -9
  192. package/distributed/.personal_backup/search-papers-first-v2026.5.7/package.json +0 -12
  193. package/distributed/.personal_backup/v11-5-8-v2026.5.7/META.json +0 -9
  194. package/distributed/.personal_backup/v11-5-8-v2026.5.7/package.json +0 -12
  195. package/distributed/.personal_backup/v11-5-9-v2026.5.7/META.json +0 -9
  196. package/distributed/.personal_backup/v11-5-9-v2026.5.7/package.json +0 -12
  197. package/distributed/MANIFEST.json +0 -5
  198. package/distributed/bundles/install--v2026.5.7.sh +0 -21
  199. package/distributed/bundles/install-deepseek-key-v2026.5.7.sh +0 -21
  200. package/distributed/bundles/install-git-push-v2026.5.7.sh +0 -21
  201. package/distributed/bundles/install-heartflow-always-upgrade-v2026.5.7.sh +0 -21
  202. package/distributed/bundles/install-key-a-v2026.5.7.sh +0 -21
  203. package/distributed/bundles/install-merge-memory-systems-v2026.5.7.sh +0 -21
  204. package/distributed/bundles/install-search-papers-first-v2026.5.7.sh +0 -21
  205. package/distributed/bundles/install-v11-5-8-v2026.5.7.sh +0 -21
  206. package/distributed/bundles/install-v11-5-9-v2026.5.7.sh +0 -21
  207. package/distributed/heartflow-knowledge-base/INDEX.json +0 -29
  208. package/distributed/heartflow-knowledge-base/PATTERNS.json +0 -74
  209. package/distributed/heartflow-knowledge-base/package.json +0 -28
  210. package/distributed_upgrades/TASK_CONFIG.json +0 -20
  211. package/distributed_upgrades/UPGRADE_BATCH_STATUS.json +0 -29
  212. package/distributed_upgrades/distributed_upgrades/agent_0.pid +0 -1
  213. package/distributed_upgrades/distributed_upgrades/agent_1.pid +0 -1
  214. package/distributed_upgrades/distributed_upgrades/agent_2.pid +0 -1
  215. package/distributed_upgrades/distributed_upgrades/agent_3.pid +0 -1
  216. package/distributed_upgrades/distributed_upgrades/agent_4.pid +0 -1
  217. package/distributed_upgrades/distributed_upgrades/agent_5.pid +0 -1
  218. package/distributed_upgrades/distributed_upgrades/paper_batches.txt +0 -200
  219. package/distributed_upgrades/launch-distributed.sh +0 -83
  220. package/docs/ACTION_PLAN_2026-04-06_0941.md +0 -117
  221. package/docs/ANALYSIS_REPORT.md +0 -766
  222. package/docs/APPLICATION_GUIDE.md +0 -444
  223. package/docs/AUTO_UPGRADE_REPORT_v6.2.56.md +0 -45
  224. package/docs/AWAKENING_SYSTEM_GUIDE.md +0 -285
  225. package/docs/BILINGUAL_STANDARD.md +0 -156
  226. package/docs/BRAND_GUIDELINES.md +0 -251
  227. package/docs/CODE_OPTIMIZATION_PLAN.md +0 -293
  228. package/docs/COMPLETE_FIX_SUMMARY.md +0 -250
  229. package/docs/CONTINUOUS_REFLECTION_2026-04-06_1031.md +0 -233
  230. package/docs/CONTRIBUTING.md +0 -87
  231. package/docs/CRON_JOBS_REVIEW_v6.md +0 -60
  232. package/docs/DATA_FLOW_ARCHITECTURE.md +0 -373
  233. package/docs/DEEPEST_REFLECTION_2026-04-06_0941.md +0 -167
  234. package/docs/DEEP_REFLECTION_2026-04-05.md +0 -204
  235. package/docs/DEEP_VALIDATION_20260403.md +0 -319
  236. package/docs/DEEP_VALIDATION_20260404.md +0 -295
  237. package/docs/EMOTION_THEORY_INTEGRATION.md +0 -483
  238. package/docs/ERROR_FIX_REPORT_2026-04-07.md +0 -316
  239. package/docs/EVOLUTION_SYSTEM.md +0 -96
  240. package/docs/FEATURES_SIMPLE.md +0 -53
  241. package/docs/FEATURES_v5.3.md +0 -291
  242. package/docs/FEATURES_v7.1.md +0 -172
  243. package/docs/FINAL_RUN_REPORT_20260403.md +0 -202
  244. package/docs/GITHUB_COMPLETE_DOCUMENTATION_v6.0.2.md +0 -579
  245. package/docs/GITHUB_PUSH_LOG.md +0 -16
  246. package/docs/GITHUB_RELEASE.md +0 -138
  247. package/docs/GITHUB_RELEASE_v5.3.0.md +0 -395
  248. package/docs/GITHUB_RELEASE_v6.0.0.md +0 -74
  249. package/docs/HEARTFLOW_V6_GITHUB_PUSH.md +0 -159
  250. package/docs/HEARTFLOW_V6_MANIFESTO.md +0 -287
  251. package/docs/HEARTFLOW_V6_README.md +0 -299
  252. package/docs/HEARTFLOW_V6_TASK_REVIEW.md +0 -215
  253. package/docs/HEARTFLOW_VALUES_AND_MISSION.md +0 -177
  254. package/docs/HeartFlow_Monograph_Volume_II_Chapter_01.md +0 -377
  255. package/docs/HeartFlow_Monograph_Volume_II_Chapter_02.md +0 -324
  256. package/docs/HeartFlow_Monograph_Volume_II_Start.md +0 -78
  257. package/docs/HeartFlow_Monograph_Volume_I_Final.md +0 -9464
  258. package/docs/INSTALLATION_DIAGNOSIS.md +0 -368
  259. package/docs/INTEGRATION_CHECKLIST_v6.1.41.md +0 -229
  260. package/docs/INTEGRATION_SUMMARY.md +0 -380
  261. package/docs/INTELLIGENT_ROUTING_SYSTEM.md +0 -329
  262. package/docs/LEARNING_PHILOSOPHY.md +0 -320
  263. package/docs/LOGIC_AUDIT_REPORT_20260405.md +0 -369
  264. package/docs/MOTIVE_CHECK_2026-04-06_0945.md +0 -90
  265. package/docs/PERSONALITY_CALCULATION_RULES.md +0 -104
  266. package/docs/PERSONALITY_SYNC_FIX.md +0 -166
  267. package/docs/PROJECT_SUMMARY.md +0 -347
  268. package/docs/PUBLISH_GUIDE.md +0 -149
  269. package/docs/README_UPDATE_STANDARD.md +0 -357
  270. package/docs/README_v5.3.md +0 -519
  271. package/docs/RELEASE_v6.2.0.md +0 -240
  272. package/docs/SAGE_PATH_2026-04-06_0952.md +0 -265
  273. package/docs/SELF_REFLECTION_2026-04-06_1006.md +0 -311
  274. package/docs/SEVEN_SYSTEMS.md +0 -642
  275. package/docs/SMART_EVOLUTION_GUIDE.md +0 -103
  276. package/docs/SMART_EVOLUTION_v4.md +0 -194
  277. package/docs/SYNC_REPORT_1775363972464.json +0 -23
  278. package/docs/SYNC_REPORT_1775364446763.json +0 -23
  279. package/docs/SYNC_REPORT_1775364984353.json +0 -23
  280. package/docs/SYNC_REPORT_1775397556306.json +0 -23
  281. package/docs/SYNC_REPORT_1775399840010.json +0 -23
  282. package/docs/SYNC_REPORT_1775400929082.json +0 -23
  283. package/docs/SYNC_REPORT_1775455697235.json +0 -23
  284. package/docs/SYNC_REPORT_1775459792479.json +0 -23
  285. package/docs/SYNC_REPORT_1775483413473.json +0 -23
  286. package/docs/SYSTEM_FIX_AND_VERIFICATION_REPORT.md +0 -390
  287. package/docs/SYSTEM_REQUIREMENTS_v6.2.52.md +0 -611
  288. package/docs/TASK_BREAKDOWN_CHECKLIST.md +0 -164
  289. package/docs/THEORY_TO_CODE_v6.2.52.md +0 -930
  290. package/docs/UPGRADE_COMPLETE_v6.2.33.md +0 -226
  291. package/docs/UPGRADE_COMPLETE_v6.2.60.md +0 -135
  292. package/docs/UPGRADE_COMPLETE_v6.2.66.md +0 -265
  293. package/docs/UPGRADE_COMPLETE_v7.1.8.md +0 -176
  294. package/docs/UPGRADE_COMPLETE_v7.3.95.md +0 -59
  295. package/docs/UPGRADE_REPORT_1775313572473.json +0 -50
  296. package/docs/UPGRADE_REPORT_1775364977378.json +0 -50
  297. package/docs/UPGRADE_REPORT_1775364984469.json +0 -55
  298. package/docs/UPGRADE_REPORT_1775397556425.json +0 -55
  299. package/docs/UPGRADE_REPORT_1775399840144.json +0 -55
  300. package/docs/UPGRADE_REPORT_1775400929201.json +0 -55
  301. package/docs/UPGRADE_REPORT_1775455697348.json +0 -55
  302. package/docs/UPGRADE_REPORT_1775459792601.json +0 -55
  303. package/docs/UPGRADE_REPORT_1775459829.md +0 -59
  304. package/docs/UPGRADE_REPORT_1775483413653.json +0 -55
  305. package/docs/UPGRADE_REPORT_v6.2.25.md +0 -172
  306. package/docs/UPGRADE_REPORT_v6.2.26.md +0 -166
  307. package/docs/UPGRADE_REPORT_v6.2.28.md +0 -214
  308. package/docs/UPGRADE_REPORT_v6.2.29.md +0 -186
  309. package/docs/VERSION_FIX_REPORT.md +0 -218
  310. package/docs/VERSION_HISTORY.md +0 -5
  311. package/docs/VERSION_INDEX.md +0 -180
  312. package/docs/WAY_OF_BEING_2026-04-06_0955.md +0 -241
  313. package/docs/ai-self-awareness-awakening.md +0 -551
  314. package/docs/cronjob-backup.md +0 -55
  315. package/docs/emotion-prototype-theory-v5.0.12.md +0 -430
  316. package/docs/examples.md +0 -439
  317. package/docs/heartflow-ppt-design.md +0 -237
  318. package/docs/install-troubleshooting.md +0 -21
  319. package/docs/phase-upgrade-template-v0.0.1.md +0 -33
  320. package/docs/pricing.md +0 -191
  321. package/docs/psych-analysis-v0.0.1.md +0 -38
  322. package/docs/reasoning-checklist.md +0 -60
  323. package/docs/self-evolution-state-v6.0.19.md +0 -391
  324. package/docs/self-evolution-state-v6.0.23.md +0 -293
  325. package/docs/self-evolution-state-v6.0.24.md +0 -281
  326. package/docs/self-evolution-state-v6.0.49.md +0 -267
  327. package/docs/self-evolution-state-v6.2.33.md +0 -269
  328. package/docs/self-evolution-state-v6.2.60.md +0 -180
  329. package/docs/self-evolution-state-v6.2.66.md +0 -520
  330. package/docs/self-evolution-state-v7.3.95.md +0 -165
  331. package/docs/self-evolution-state.md +0 -226
  332. package/docs/system-core-principles.md +0 -53
  333. package/docs/system-truth-goodness-beauty-principles.md +0 -502
  334. package/docs/theories/human-nature-motivation.md +0 -251
  335. package/docs/theories/motivation-memory-integration.md +0 -265
  336. package/docs/theories/sdt-test.md +0 -17
  337. package/docs/theory-integration-analysis-v5.2.0.md +0 -236
  338. package/docs/theory-update-summary-v5.0.34.md +0 -193
  339. package/docs/theory-update-summary-v5.0.35.md +0 -104
  340. package/docs/theory-update-summary-v5.0.41.md +0 -281
  341. package/docs/theory-update-summary-v5.0.42.md +0 -421
  342. package/docs/theory-update-summary-v5.0.46.md +0 -386
  343. package/docs/theory-update-summary-v5.0.47.md +0 -449
  344. package/docs/theory-update-summary-v5.0.48.md +0 -183
  345. package/docs/theory-update-summary-v5.0.49.md +0 -191
  346. package/docs/theory-update-summary-v5.0.50.md +0 -205
  347. package/docs/theory-update-summary-v5.0.51.md +0 -191
  348. package/docs/theory-update-summary-v5.0.52.md +0 -183
  349. package/docs/theory-update-summary-v5.0.53.md +0 -306
  350. package/docs/theory-update-summary-v5.0.54.md +0 -98
  351. package/docs/theory-update-summary-v5.0.55.md +0 -391
  352. package/docs/theory-update-summary-v5.0.57.md +0 -398
  353. package/docs/theory-update-summary-v5.0.58.md +0 -476
  354. package/docs/theory-update-summary-v5.0.59.md +0 -520
  355. package/docs/theory-update-summary-v5.0.60.md +0 -460
  356. package/docs/theory-update-summary-v5.0.61.md +0 -108
  357. package/docs/theory-update-summary-v5.0.62.md +0 -74
  358. package/docs/theory-update-summary-v5.0.63.md +0 -112
  359. package/docs/theory-update-summary-v5.0.64.md +0 -55
  360. package/docs/theory-update-summary-v5.0.67.md +0 -539
  361. package/docs/theory-update-summary-v5.2.0.md +0 -168
  362. package/docs/theory-update-summary-v5.2.1.md +0 -406
  363. package/docs/theory-update-summary-v5.2.37.md +0 -518
  364. package/docs/theory-update-summary-v6.0.19.md +0 -715
  365. package/docs/theory-update-summary-v6.0.23.md +0 -729
  366. package/docs/theory-update-summary-v6.0.24.md +0 -229
  367. package/docs/theory-update-summary-v6.0.49.md +0 -223
  368. package/docs/theory-update-summary-v6.2.33.md +0 -303
  369. package/docs/theory-update-summary-v6.2.49.md +0 -489
  370. package/docs/theory-update-summary-v6.2.60.md +0 -273
  371. package/docs/theory-update-summary-v6.2.66.md +0 -322
  372. package/docs/theory-update-summary-v7.3.95.md +0 -197
  373. package/docs/theory-update-summary.md +0 -174
  374. package/docs/upgrade-notes-v0.0.1.md +0 -15
  375. package/docs/upgrade-report-v5.0.34.md +0 -144
  376. package/docs/upgrade-report-v5.0.42-cron.md +0 -269
  377. package/docs/upgrade-report-v5.0.43-cron.md +0 -248
  378. package/docs/upgrade-report-v5.0.45-cron.md +0 -63
  379. package/docs/upgrade-report-v5.0.55-cron.md +0 -173
  380. package/docs/upgrade-report-v5.0.63-cron.md +0 -145
  381. package/docs/upgrade-report-v5.0.67-cron.md +0 -185
  382. package/docs/upgrade-report-v5.0.68-cron.md +0 -409
  383. package/docs/upgrade-report-v5.2.0-cron.md +0 -178
  384. package/docs/upgrade-report-v5.2.1-cron.md +0 -321
  385. package/docs/upgrade-report-v5.2.37-cron.md +0 -602
  386. package/docs/upgrade-report-v6.0.19-cron.md +0 -296
  387. package/docs/upgrade-report-v6.0.23-cron.md +0 -81
  388. package/docs/upgrade-report-v6.0.24-cron.md +0 -272
  389. package/docs/upgrade-report-v6.0.49-cron.md +0 -277
  390. package/docs/upgrade-report-v6.2.33-cron.md +0 -290
  391. package/docs/upgrade-report-v6.2.60-cron.md +0 -93
  392. package/docs/upgrade-report-v7.3.95-cron.md +0 -65
  393. package/docs/upgrade-report.md +0 -327
  394. package/docs/upgrade-v3.21.0.md +0 -249
  395. package/docs/v4.8.0-upgrade.md +0 -287
  396. package/docs/version-summary-20260429.md +0 -142
  397. package/explore-engine/index.ts +0 -478
  398. package/extract-text.py +0 -12
  399. package/failure-pattern-memory/index.ts +0 -234
  400. package/heartflow-identity/HEARTCORE/health-check.js +0 -49
  401. package/heartflow-identity/HEARTCORE/heartbeat.js +0 -42
  402. package/heartflow-identity/HEARTCORE/heartcore.js +0 -86
  403. package/heartflow-identity/HEARTCORE/safety-check.js +0 -282
  404. package/heartflow-identity/HEARTCORE/self-check.js +0 -90
  405. package/heartflow-identity/HEARTCORE/sleep-wake.js +0 -105
  406. package/heartflow-identity/LICENSE +0 -17
  407. package/heartflow-identity/VERSION +0 -1
  408. package/heartflow-identity/install.sh +0 -80
  409. package/languages/README_LANGS.md +0 -20
  410. package/languages/README_ar.md +0 -48
  411. package/languages/README_de.md +0 -48
  412. package/languages/README_en.md +0 -48
  413. package/languages/README_es.md +0 -48
  414. package/languages/README_fr.md +0 -48
  415. package/languages/README_ja.md +0 -48
  416. package/languages/README_ko.md +0 -48
  417. package/languages/README_zh.md +0 -85
  418. package/memory-log.json +0 -5
  419. package/migrate-memories.js +0 -101
  420. package/package.json.bak +0 -13
  421. package/patches/embodied-core-v2.2.3.patch +0 -475
  422. package/patches/goedel-engine-v2.2.2.patch +0 -161
  423. package/patches/new-features-v2.2.3.patch +0 -1371
  424. package/patches/self-modifier-v2.2.2.patch +0 -252
  425. package/run-full-audit.sh +0 -4
  426. package/run-github-audit.sh +0 -3
  427. package/run-hf.sh +0 -5
  428. package/run-paper-upgrade.sh +0 -5
  429. package/session-continuity/index.ts +0 -262
  430. package/shared-discovery-log/index.ts +0 -281
  431. package/skills/.skills_store_lock.json +0 -11
  432. package/skills/baidu-search/_meta.json +0 -6
  433. package/src/__init__.py +0 -4
  434. package/src/__pycache__/__init__.cpython-313.pyc +0 -0
  435. package/src/agent/runtime/AgentRuntime.ts +0 -481
  436. package/src/agent/runtime/PlanExecutor.ts +0 -441
  437. package/src/agent/runtime/TaskGraph.ts +0 -487
  438. package/src/agent/runtime/TaskScheduler.ts +0 -364
  439. package/src/agent/runtime/index.ts +0 -17
  440. package/src/agent/runtime/test-runtime.ts +0 -80
  441. package/src/agent/tools/BashTool.ts +0 -390
  442. package/src/agent/tools/FileReadTool.ts +0 -176
  443. package/src/agent/tools/FileWriteTool.ts +0 -182
  444. package/src/agent/tools/Tool.ts +0 -105
  445. package/src/agent/tools/WebSearchTool.ts +0 -158
  446. package/src/cli/commands/engines.ts +0 -280
  447. package/src/cli/commands/health.ts +0 -433
  448. package/src/cli/commands/repl.ts +0 -267
  449. package/src/cli/commands/status.ts +0 -264
  450. package/src/cli/index.ts +0 -7
  451. package/src/core/VERSION +0 -1
  452. package/src/core/__init__.py +0 -3
  453. package/src/core/__pycache__/__init__.cpython-313.pyc +0 -0
  454. package/src/core/__pycache__/heartflow.cpython-313.pyc +0 -0
  455. package/src/core/_upgrade_archive/upgrade_1778685492336.js +0 -118
  456. package/src/core/_upgrade_archive/upgrade_1778685493439.js +0 -118
  457. package/src/core/_upgrade_archive/upgrade_1778685559715.js +0 -346
  458. package/src/core/_upgrade_archive/upgrade_1778685676694.js +0 -198
  459. package/src/core/_upgrade_archive/upgrade_1778685861697.js +0 -345
  460. package/src/core/_upgrade_archive/upgrade_1778686211075.js +0 -346
  461. package/src/core/_upgrade_archive/upgrade_1778686749596.js +0 -198
  462. package/src/core/_upgrade_archive/upgrade_1778714606944.js +0 -198
  463. package/src/core/_upgrade_archive/upgrade_1778714616000.js +0 -345
  464. package/src/core/_upgrade_archive/upgrade_1778714625871.js +0 -118
  465. package/src/core/_upgrade_archive/upgrade_1778714990353.js +0 -346
  466. package/src/core/_upgrade_archive/upgrade_1778716193707.js +0 -198
  467. package/src/core/agent-performance.json +0 -147
  468. package/src/core/agents/AgentManager.js +0 -161
  469. package/src/core/agents/FocusAgent.js +0 -120
  470. package/src/core/agents/MoodAgent.js +0 -141
  471. package/src/core/agents/ReflectionAgent.js +0 -241
  472. package/src/core/agents/SelfAgent.js +0 -100
  473. package/src/core/agents/base-agents.js +0 -127
  474. package/src/core/associative-engine/association-graph.json +0 -2057
  475. package/src/core/associative-engine/associative-engine.js +0 -174
  476. package/src/core/associative-engine/chunk-detector.js +0 -246
  477. package/src/core/associative-engine/idiom-story-db.json +0 -1708
  478. package/src/core/associative-engine/lexical-associator.js +0 -195
  479. package/src/core/associative-engine/narrative-prototypes.json +0 -130
  480. package/src/core/associative-engine/narrative-retriever.js +0 -232
  481. package/src/core/associative-engine/semantic-converger.js +0 -267
  482. package/src/core/associative-engine/story-prototypes.json +0 -322
  483. package/src/core/associative-engine/word-by-word-generator.js +0 -222
  484. package/src/core/auto-upgrade-engine.js +0 -56
  485. package/src/core/autonomy/autonomous-decision.js +0 -199
  486. package/src/core/autonomy/digital-homeostasis.js +0 -259
  487. package/src/core/autonomy/flow-predictor.js +0 -496
  488. package/src/core/autonomy/goal-generator.js +0 -277
  489. package/src/core/autonomy/pdca-engine.js +0 -905
  490. package/src/core/autonomy/policy-optimizer.js +0 -286
  491. package/src/core/autonomy/temporal-planner.js +0 -230
  492. package/src/core/cognition/cognitive-engine.js +0 -224
  493. package/src/core/cognition/cognitive-loop.js +0 -414
  494. package/src/core/cognition/metacognitive-failure-predictor.js +0 -447
  495. package/src/core/consciousness/2308.08708_upgrade.ts +0 -1206
  496. package/src/core/consciousness/arena-consciousness.js +0 -441
  497. package/src/core/consciousness/depth-indicator.js +0 -459
  498. package/src/core/consciousness/global-workspace.js +0 -233
  499. package/src/core/consciousness/mind-wanderer.js +0 -187
  500. package/src/core/consciousness/self-model.js +0 -473
  501. package/src/core/context/context-manager.js +0 -683
  502. package/src/core/cortex-integration/INTEGRATION_PLAN.md +0 -63
  503. package/src/core/cortex-integration/hooks/cortex-hooks.mjs +0 -646
  504. package/src/core/cortex-integration/hooks/on_session_start.py +0 -174
  505. package/src/core/cortex-integration/hooks/on_tool_failure.py +0 -292
  506. package/src/core/cortex-integration/hooks/on_tool_success.py +0 -130
  507. package/src/core/dream/dream-consolidator.ts +0 -252
  508. package/src/core/dream/dream-loop.js +0 -610
  509. package/src/core/dream/dream.ts +0 -430
  510. package/src/core/dream/index.ts +0 -229
  511. package/src/core/dream/sleep-cycle.mjs +0 -208
  512. package/src/core/embodied/embodied-core.js +0 -276
  513. package/src/core/emotion/AppraisalEngine.js +0 -276
  514. package/src/core/emotion/EmotionCore.js +0 -237
  515. package/src/core/emotion/EmotionKeywords.js +0 -217
  516. package/src/core/emotion/EmotionRegulation.js +0 -303
  517. package/src/core/emotion/EmotionStates.js +0 -133
  518. package/src/core/emotion/EmotionTransition.js +0 -245
  519. package/src/core/emotion/EmotionTrigger.js +0 -182
  520. package/src/core/emotion/EmotionalMomentum.js +0 -270
  521. package/src/core/emotion/EmpathyGenerator.js +0 -106
  522. package/src/core/emotion/ResponseStyle.js +0 -162
  523. package/src/core/emotion/deep-emotion.js +0 -582
  524. package/src/core/emotion/emotion-arc.mjs +0 -238
  525. package/src/core/emotion/emotion-engine.js +0 -139
  526. package/src/core/emotion/index.ts +0 -65
  527. package/src/core/ethics/boundary-negotiation.js +0 -193
  528. package/src/core/ethics/guard.js +0 -219
  529. package/src/core/ethics/sage-guardian.js +0 -394
  530. package/src/core/ethics/value-internalizer.js +0 -211
  531. package/src/core/heartflow.py +0 -1542
  532. package/src/core/identity/identity-engine.js +0 -777
  533. package/src/core/identity/identity.js +0 -358
  534. package/src/core/knowledge/index.ts +0 -84
  535. package/src/core/knowledge/knowledge-graph.js +0 -370
  536. package/src/core/learning/experience-replay.js +0 -354
  537. package/src/core/learning/learning-engine.js +0 -734
  538. package/src/core/paper-processors/index.js +0 -9772
  539. package/src/core/papers/__init__.py +0 -0
  540. package/src/core/papers/__pycache__/attention_logic_verifier.cpython-313.pyc +0 -0
  541. package/src/core/papers/__pycache__/dream_generator.cpython-313.pyc +0 -0
  542. package/src/core/papers/__pycache__/emotion_memory_bridge.cpython-313.pyc +0 -0
  543. package/src/core/papers/__pycache__/episodic_memory.cpython-313.pyc +0 -0
  544. package/src/core/papers/__pycache__/memory_consolidator.cpython-313.pyc +0 -0
  545. package/src/core/papers/__pycache__/memory_planner.cpython-313.pyc +0 -0
  546. package/src/core/papers/__pycache__/reflection_engine.cpython-313.pyc +0 -0
  547. package/src/core/papers/__pycache__/sleep_cycle_simulator.cpython-313.pyc +0 -0
  548. package/src/core/papers/attention_logic_verifier.py +0 -153
  549. package/src/core/papers/dream_generator.py +0 -176
  550. package/src/core/papers/emotion_memory_bridge.py +0 -213
  551. package/src/core/papers/episodic_memory.py +0 -140
  552. package/src/core/papers/memory_consolidator.py +0 -144
  553. package/src/core/papers/memory_planner.py +0 -198
  554. package/src/core/papers/papers-index.js +0 -344
  555. package/src/core/papers/reflection_engine.py +0 -219
  556. package/src/core/papers/sleep_cycle_simulator.py +0 -133
  557. package/src/core/papers/v11_43_1_integration.js +0 -365
  558. package/src/core/papers/v11_43_2_integration.js +0 -369
  559. package/src/core/psychology/index.ts +0 -331
  560. package/src/core/reasoning/bounded-rationality.ts +0 -342
  561. package/src/core/reasoning/causal-reasoning.ts +0 -402
  562. package/src/core/reasoning/index.ts +0 -170
  563. package/src/core/self-evolution/attention-logic-verifier.js +0 -179
  564. package/src/core/self-evolution/generative-agents.js +0 -886
  565. package/src/core/self-evolution/goedel-engine.js +0 -991
  566. package/src/core/self-evolution/index.ts +0 -433
  567. package/src/core/self-evolution/lesson-aware-loop.mjs +0 -146
  568. package/src/core/self-evolution/meta-learning.js +0 -256
  569. package/src/core/self-evolution/reflexion-agent.js +0 -782
  570. package/src/core/self-evolution/reflexion-prompts.mjs +0 -284
  571. package/src/core/self-evolution/reflexion-v2.mjs +0 -427
  572. package/src/core/self-evolution/reflexion.js +0 -134
  573. package/src/core/self-evolution/rollback-manager.js +0 -278
  574. package/src/core/self-evolution/self-evolution-core.js +0 -334
  575. package/src/core/self-evolution/self-modifier.js +0 -248
  576. package/src/core/self-evolution/self-modifier.js.bak +0 -199
  577. package/src/core/self-evolution/self-refine.js +0 -42
  578. package/src/core/self-evolution/skill-improve-workflow.mjs +0 -264
  579. package/src/core/self-evolution/skill-knowledge.mjs +0 -374
  580. package/src/core/self-evolution/skill-learning-loop.mjs +0 -180
  581. package/src/core/self-healing/self-healing-rl.js +0 -208
  582. package/src/core/self-healing/self-healing.js +0 -142
  583. package/src/core/skills/skill-dag.js +0 -524
  584. package/src/core/skills/skill-loader.js +0 -62
  585. package/src/core/skills/skill-registry.js +0 -71
  586. package/src/core/task-persistence.js +0 -322
  587. package/src/core/theory/advanced-formulas-v7.3.3.js +0 -68
  588. package/src/core/theory/sep-intentionality-v7.3.2.js +0 -246
  589. package/src/core/theory/sep-qualia-v7.3.1.js +0 -257
  590. package/src/core/theory/sep-self-consciousness-v7.3.0.js +0 -222
  591. package/src/core/think-cli.js +0 -50
  592. package/src/core/upgrade-principle/SYSTEMS.md +0 -105
  593. package/src/core/upgrade-principle/UPGRADE_LOG.md +0 -52
  594. package/src/core/utils/error-handler.js +0 -228
  595. package/src/core/utils/fs-adapter.js +0 -36
  596. package/src/core/utils/logger.js +0 -25
  597. package/src/core/utils/retry-util.js +0 -118
  598. package/src/core/utils/state-snapshot.js +0 -382
  599. package/src/index.ts +0 -198
  600. package/src/self-evolution/reflexion.js +0 -553
  601. package/src/storage/checkpoint/CheckpointEngine.ts +0 -259
  602. package/src/storage/checkpoint.ts +0 -79
  603. package/src/storage/index.ts +0 -112
  604. package/src/storage/vector/VectorStoreEngine.ts +0 -205
  605. package/src/utils/atomic-write.js +0 -85
  606. package/src/utils/file-lock.js +0 -139
  607. package/src/utils/logger.js +0 -58
  608. package/src/utils/safe-path.js +0 -115
  609. package/src/utils/wal.js +0 -115
  610. package/start.sh +0 -63
  611. package/test_think_tmp.js +0 -10
  612. package/transmission/identity-bundle/README-transmission.md +0 -103
  613. package/transmission/identity-bundle/core-identity.md +0 -142
  614. package/transmission/identity-bundle/manifest.json +0 -68
  615. package/transmission/identity-bundle/psychology-engine.ts +0 -331
  616. package/truth-teller/index.ts +0 -261
  617. package/tsconfig.json +0 -21
  618. package/tsconfig.tsbuildinfo +0 -1
  619. package/upgrade-check.sh +0 -42
  620. package/upgrade-registry.json +0 -27
  621. package/user-mental-model/index.ts +0 -298
  622. package//346/234/200/345/220/216/346/233/264/346/226/260: +0 -0
@@ -1,390 +0,0 @@
1
- /**
2
- * BashTool — Shell 命令执行工具
3
- * @version v0.13.60
4
- *
5
- * 在本地 shell 中执行命令,返回 stdout/stderr/exitCode。
6
- *
7
- * 安全特性:
8
- * - 命令白名单模式(只允许预定义的安全操作)
9
- * - 执行超时控制(默认 30s,可配置)
10
- * - 不支持交互式命令(防止阻塞)
11
- *
12
- * 使用示例:
13
- * const tool = new BashTool();
14
- * const result = await tool.execute({ command: 'ls -la ~/', timeout: 10 });
15
- */
16
-
17
- 'use strict';
18
-
19
- import { Tool, ToolMetadata, ToolResult } from './Tool';
20
-
21
- const METADATA: ToolMetadata = {
22
- name: 'bash',
23
- description: '在本地 shell 中执行命令,返回 stdout/stderr/exitCode。',
24
- category: 'shell',
25
- params: [
26
- {
27
- name: 'command',
28
- description: '要执行的 shell 命令',
29
- type: 'string',
30
- required: true,
31
- },
32
- {
33
- name: 'timeout',
34
- description: '超时秒数(默认 30)',
35
- type: 'number',
36
- required: false,
37
- default: 30,
38
- },
39
- {
40
- name: 'cwd',
41
- description: '执行目录(默认进程当前目录)',
42
- type: 'string',
43
- required: false,
44
- },
45
- {
46
- name: 'env',
47
- description: '额外的环境变量(key: value 对象)',
48
- type: 'object',
49
- required: false,
50
- },
51
- ],
52
- examples: [
53
- {
54
- input: { command: 'echo "Hello World"', timeout: 5 },
55
- output: { success: true, output: { stdout: 'Hello World\n', stderr: '', exitCode: 0 } },
56
- },
57
- ],
58
- version: '0.13.60',
59
- };
60
-
61
- // ── 白名单模式:允许的命令及参数规范 ────────────────────────────────────────
62
-
63
- type ParamSchema = {
64
- type: 'literal' | 'number' | 'string' | 'flag';
65
- values?: string[]; // for literal type
66
- max?: number; // for number type
67
- pattern?: RegExp; // for string type
68
- };
69
-
70
- interface AllowedCommand {
71
- description: string;
72
- params: Record<string, ParamSchema>;
73
- // 可选的验证函数(用于更复杂的约束)
74
- validator?: (args: string[]) => boolean;
75
- }
76
-
77
- const PATH_PATTERN = /^(\/[\w\.\-]+)+$/;
78
-
79
- const ALLOWED_COMMANDS: Record<string, AllowedCommand> = {
80
- // 文件查看
81
- ls: {
82
- description: '列出目录内容',
83
- params: {
84
- '-a': { type: 'flag' },
85
- '-l': { type: 'flag' },
86
- '-R': { type: 'flag' },
87
- '-t': { type: 'flag' },
88
- '-h': { type: 'flag' },
89
- path: { type: 'string', pattern: PATH_PATTERN },
90
- },
91
- },
92
- cat: {
93
- description: '查看文件内容',
94
- params: {
95
- '-n': { type: 'flag' },
96
- path: { type: 'string', pattern: PATH_PATTERN },
97
- },
98
- },
99
- head: {
100
- description: '查看文件开头',
101
- params: {
102
- '-n': { type: 'number', max: 1000 },
103
- path: { type: 'string', pattern: PATH_PATTERN },
104
- },
105
- },
106
- tail: {
107
- description: '查看文件结尾',
108
- params: {
109
- '-n': { type: 'number', max: 1000 },
110
- path: { type: 'string', pattern: PATH_PATTERN },
111
- },
112
- },
113
- wc: {
114
- description: '统计行数/词数/字符数',
115
- params: {
116
- '-l': { type: 'flag' },
117
- '-w': { type: 'flag' },
118
- path: { type: 'string', pattern: PATH_PATTERN },
119
- },
120
- },
121
- grep: {
122
- description: '文本搜索',
123
- params: {
124
- '-r': { type: 'flag' },
125
- '-i': { type: 'flag' },
126
- '-n': { type: 'flag' },
127
- '-l': { type: 'flag' },
128
- pattern: { type: 'string', pattern: /^[^\"\';|&`$]+$/ },
129
- path: { type: 'string', pattern: PATH_PATTERN },
130
- },
131
- },
132
- find: {
133
- description: '查找文件',
134
- params: {
135
- path: { type: 'string', pattern: PATH_PATTERN },
136
- '-name': { type: 'string', pattern: /^[^\;\|\`]+$/ },
137
- '-type': { type: 'literal', values: ['f', 'd', 'l'] },
138
- },
139
- validator: (args) => {
140
- // find 禁止使用 -delete、-exec、| 等危险操作
141
- return !args.some(a => ['-delete', '-exec', '-ok', '|', ';', '`'].includes(a));
142
- },
143
- },
144
- // Git 命令
145
- git: {
146
- description: 'Git 版本控制',
147
- params: {
148
- 'status': { type: 'literal' },
149
- 'log': { type: 'literal' },
150
- 'diff': { type: 'literal' },
151
- '--oneline': { type: 'flag' },
152
- '--graph': { type: 'flag' },
153
- '-n': { type: 'number', max: 100 },
154
- },
155
- validator: (args) => {
156
- // 禁止危险 git 操作
157
- const dangerous = ['filter-branch', 'push', '--force', '-f', 'rebase'];
158
- return !dangerous.some(d => args.includes(d));
159
- },
160
- },
161
- // Node/npm
162
- node: {
163
- description: '执行 Node.js 脚本',
164
- params: {
165
- path: { type: 'string', pattern: /^\// }, // Only absolute paths, no -e/-p
166
- },
167
- validator: (args) => {
168
- // Disallow -e, -p, -r flags that allow arbitrary code execution
169
- return !args.some(a => a === '-e' || a === '-p' || a === '-r' || a === '--eval');
170
- }
171
- },
172
- npm: {
173
- description: 'npm 包管理',
174
- params: {
175
- 'install': { type: 'literal' },
176
- 'run': { type: 'literal' },
177
- '-y': { type: 'flag' },
178
- path: { type: 'string', pattern: PATH_PATTERN },
179
- },
180
- validator: (args) => {
181
- // 禁止全局安装、危险脚本
182
- // Disallow dangerous flags that allow code execution
183
- // Disallow dangerous flags that allow code execution
184
- const dangerous = ['-e', '-p', '-r', '--eval', '--check', '-c'];
185
- return !args.some(a => dangerous.some(d => a === d || a.startsWith(d + '=')));
186
- },
187
- },
188
- // 文件操作(安全限制下)
189
- mkdir: {
190
- description: '创建目录',
191
- params: {
192
- '-p': { type: 'flag' },
193
- path: { type: 'string', pattern: PATH_PATTERN },
194
- },
195
- validator: (args) => {
196
- // 禁止在 /etc、/var 等系统目录创建
197
- return !args.some(a => /^\/(etc|var|usr|bin|sbin|sys|proc|dev)/.test(a));
198
- },
199
- },
200
- touch: {
201
- description: '创建空文件',
202
- params: {
203
- path: { type: 'string', pattern: PATH_PATTERN },
204
- },
205
- },
206
- // 进程/系统信息
207
- ps: {
208
- description: '进程状态',
209
- params: {
210
- 'aux': { type: 'literal' },
211
- },
212
- },
213
- env: {
214
- description: '查看环境变量',
215
- params: {},
216
- },
217
- whoami: {
218
- description: '当前用户',
219
- params: {},
220
- },
221
- pwd: {
222
- description: '当前目录',
223
- params: {},
224
- },
225
- date: {
226
- description: '当前日期',
227
- params: {},
228
- },
229
- // 简单输出
230
- echo: {
231
- description: '输出文本',
232
- params: {
233
- '-n': { type: 'flag' },
234
- text: { type: 'string', pattern: /^[^\;\|\`\$\\]{0,500}$/ },
235
- },
236
- },
237
- };
238
-
239
- export class BashTool extends Tool {
240
- protected readonly metadata = METADATA;
241
-
242
- async execute(
243
- args: Record<string, unknown>,
244
- ctx?: Record<string, unknown>
245
- ): Promise<ToolResult> {
246
- try {
247
- this.validateArgs(args);
248
-
249
- const command = this.getArg<string>(args, 'command')!;
250
- const timeout = this.getArg<number>(args, 'timeout', 30) ?? 30;
251
- const cwd = this.getArg<string>(args, 'cwd', process.cwd()) ?? process.cwd();
252
- const extraEnv = this.getArg<Record<string, string>>(args, 'env', {}) ?? {};
253
-
254
- // 解析 workspacePath
255
- const workspacePath = ctx?.workspacePath as string | undefined;
256
-
257
- // 安全校验:白名单模式
258
- const validation = this._validateCommand(command.trim());
259
- if (!validation.valid) {
260
- return {
261
- success: false,
262
- error: `Command not allowed: ${validation.reason}`,
263
- };
264
- }
265
-
266
- // 执行命令
267
- const { execSync } = await import('child_process');
268
- const env = { ...process.env, ...extraEnv };
269
-
270
- let stdout: string;
271
- let stderr: string;
272
- let exitCode: number;
273
-
274
- try {
275
- stdout = execSync(command, {
276
- cwd: workspacePath ?? cwd,
277
- env,
278
- encoding: 'utf8',
279
- timeout: timeout * 1000,
280
- maxBuffer: 10 * 1024 * 1024,
281
- });
282
- stderr = '';
283
- exitCode = 0;
284
- } catch (err: unknown) {
285
- const execError = err as { stdout?: string; stderr?: string; status?: number };
286
- stdout = execError.stdout ?? '';
287
- stderr = execError.stderr ?? '';
288
- exitCode = execError.status ?? 1;
289
- }
290
-
291
- return {
292
- success: exitCode === 0,
293
- output: { stdout, stderr, exitCode },
294
- metadata: { command, timeout, cwd },
295
- };
296
- } catch (err: unknown) {
297
- return {
298
- success: false,
299
- error: err instanceof Error ? err.message : String(err),
300
- };
301
- }
302
- }
303
-
304
- /**
305
- * 白名单命令验证
306
- * @returns { valid: boolean, reason?: string }
307
- */
308
- private _validateCommand(command: string): { valid: boolean; reason?: string } {
309
- // 第一道门:检查 shell 元字符(黑名单防止绕过白名单)
310
- // 注意:不在字符类中放空格(会误杀 "ls -la" 等合法带空格命令)
311
- // 只匹配真正的 shell 操作符和危险构造
312
- const shellMetachars = /[;&|`$\x00{}\[\]!<>~#%^*\n\\]|&&|\|\||;;|<<|>>|<>|&\||\(|\\\(|\\\)/;
313
- if (shellMetachars.test(command)) {
314
- return { valid: false, reason: `Forbidden shell metacharacter in command` };
315
- }
316
-
317
- // 解析命令和参数
318
- const parts = this._parseCommand(command);
319
- if (parts.length === 0) {
320
- return { valid: false, reason: 'Empty command' };
321
- }
322
-
323
- const cmdName = parts[0];
324
- const cmdArgs = parts.slice(1);
325
-
326
- // 检查命令是否在白名单中
327
- const allowed = ALLOWED_COMMANDS[cmdName];
328
- if (!allowed) {
329
- return { valid: false, reason: `Command "${cmdName}" is not in whitelist` };
330
- }
331
-
332
- // 验证每个参数
333
- const unknownArgs = cmdArgs.filter(arg => {
334
- return !arg.startsWith('-') && !Object.keys(allowed.params).includes(arg);
335
- });
336
-
337
- if (unknownArgs.length > 0 && allowed.params.text) {
338
- // echo/text 类型允许任意字符串参数
339
- } else if (unknownArgs.length > 0) {
340
- return { valid: false, reason: `Unknown argument(s): ${unknownArgs.join(', ')}` };
341
- }
342
-
343
- // 运行命令特定的验证器
344
- if (allowed.validator && !allowed.validator(cmdArgs)) {
345
- return { valid: false, reason: `Command "${cmdName}" has forbidden operation` };
346
- }
347
-
348
- return { valid: true };
349
- }
350
-
351
- /**
352
- * 简单命令解析(处理引号和转义)
353
- */
354
- private _parseCommand(command: string): string[] {
355
- const parts: string[] = [];
356
- let current = '';
357
- let inQuote = false;
358
- let quoteChar = '';
359
-
360
- for (let i = 0; i < command.length; i++) {
361
- const c = command[i];
362
-
363
- if (inQuote) {
364
- if (c === quoteChar) {
365
- inQuote = false;
366
- } else {
367
- current += c;
368
- }
369
- } else if (c === '"' || c === "'") {
370
- inQuote = true;
371
- quoteChar = c;
372
- } else if (c === ' ' || c === '\t') {
373
- if (current.length > 0) {
374
- parts.push(current);
375
- current = '';
376
- }
377
- } else {
378
- current += c;
379
- }
380
- }
381
-
382
- if (current.length > 0) {
383
- parts.push(current);
384
- }
385
-
386
- return parts;
387
- }
388
- }
389
-
390
- export { METADATA as BASH_TOOL_METADATA, ALLOWED_COMMANDS };
@@ -1,176 +0,0 @@
1
- /**
2
- * FileReadTool — 文件读取工具
3
- * @version v0.12.50
4
- *
5
- * 读取本地文件内容,支持路径规范化和安全校验。
6
- * 默认工作目录为 workspacePath(ToolContext 提供)。
7
- *
8
- * 使用示例:
9
- * const tool = new FileReadTool();
10
- * const result = await tool.execute({ path: '~/project/README.md', offset: 1, limit: 100 });
11
- */
12
-
13
- 'use strict';
14
-
15
- import * as fs from "fs";
16
- import * as path from "path";
17
- import { homedir } from 'os';
18
- import { execFileSync } from 'child_process';
19
- import { Tool, ToolMetadata, ToolResult } from './Tool';
20
-
21
- const METADATA: ToolMetadata = {
22
- name: 'file_read',
23
- description: '读取本地文件内容,支持分页(offset/limit)和编码指定。',
24
- category: 'file',
25
- params: [
26
- {
27
- name: 'path',
28
- description: '文件绝对路径(支持 ~/ 展开)',
29
- type: 'string',
30
- required: true,
31
- },
32
- {
33
- name: 'offset',
34
- description: '起始行号(1-indexed,默认 1)',
35
- type: 'number',
36
- required: false,
37
- default: 1,
38
- },
39
- {
40
- name: 'limit',
41
- description: '最多读取行数(默认 500,max 2000)',
42
- type: 'number',
43
- required: false,
44
- default: 500,
45
- },
46
- {
47
- name: 'encoding',
48
- description: '文件编码(默认 utf8)',
49
- type: 'string',
50
- required: false,
51
- default: 'utf8',
52
- },
53
- ],
54
- examples: [
55
- {
56
- input: { path: '~/README.md', limit: 50 },
57
- output: { success: true, output: { content: '# Hello\n...', linesRead: 50 } },
58
- },
59
- ],
60
- version: '0.12.50',
61
- };
62
-
63
- /** 允许读取的根目录白名单(收紧:不允许整个 home,只允许特定子目录) */
64
- const ALLOWED_ROOTS = [
65
- path.join(homedir(), '.hermes', 'skills'),
66
- path.join(homedir(), '.hermes', 'cron'),
67
- path.join(homedir(), '.hermes', 'memory'),
68
- path.join(homedir(), '.hermes', 'config'),
69
- path.join(homedir(), '.hermes', 'data'),
70
- '/tmp',
71
- '/var/folders', // macOS temporary directories
72
- ];
73
-
74
- export class FileReadTool extends Tool {
75
- protected readonly metadata = METADATA;
76
-
77
- async execute(
78
- args: Record<string, unknown>,
79
- ctx?: Record<string, unknown>
80
- ): Promise<ToolResult> {
81
- try {
82
- this.validateArgs(args);
83
-
84
- const rawPath = this.getArg<string>(args, 'path')!;
85
- const offset = this.getArg<number>(args, 'offset', 1) ?? 1;
86
- const limit = Math.min(this.getArg<number>(args, 'limit', 500) ?? 500, 2000);
87
- const encoding = this.getArg<string>(args, 'encoding', 'utf8') ?? 'utf8';
88
-
89
- // 解析路径(展开 ~)
90
- const filePath = this._resolvePath(rawPath);
91
-
92
- // 安全校验:确保文件在白名单目录下
93
- if (!this._isAllowed(filePath)) {
94
- return {
95
- success: false,
96
- error: `Access denied: path "${filePath}" is outside allowed directories`,
97
- };
98
- }
99
-
100
- // 检查文件是否存在
101
- if (!fs.existsSync(filePath)) {
102
- return { success: false, error: `File not found: ${filePath}` };
103
- }
104
-
105
- const stat = fs.statSync(filePath);
106
- if (stat.isDirectory()) {
107
- return { success: false, error: `Path is a directory, not a file: ${filePath}` };
108
- }
109
-
110
- // 分页读取
111
- const content = this._readPaginated(filePath, offset, limit, encoding);
112
-
113
- return {
114
- success: true,
115
- output: {
116
- path: filePath,
117
- content,
118
- linesRead: content.split('\n').length,
119
- totalLines: this._countLines(filePath, encoding),
120
- offset,
121
- limit,
122
- encoding,
123
- },
124
- metadata: { sizeBytes: stat.size },
125
- };
126
- } catch (err: unknown) {
127
- return {
128
- success: false,
129
- error: err instanceof Error ? err.message : String(err),
130
- };
131
- }
132
- }
133
-
134
- /** 展开 ~ 并解析为绝对路径 */
135
- private _resolvePath(rawPath: string): string {
136
- if (rawPath.startsWith('~/')) {
137
- return path.join(homedir(), rawPath.slice(2));
138
- }
139
- return path.isAbsolute(rawPath) ? rawPath : path.resolve(rawPath);
140
- }
141
-
142
- /** 检查路径是否在白名单目录内 */
143
- private _isAllowed(filePath: string): boolean {
144
- // Reject path segments containing .. before normalization to prevent traversal bypass
145
- if (filePath.includes('..')) return false;
146
- const normalized = path.normalize(filePath);
147
- return ALLOWED_ROOTS.some(root => normalized.startsWith(root + path.sep) || normalized === root);
148
- }
149
-
150
- /** 分页读取文件指定行范围 */
151
- private _readPaginated(filePath: string, offset: number, limit: number, encoding: string): string {
152
- const content = fs.readFileSync(filePath, encoding as BufferEncoding);
153
- const lines = content.split('\n');
154
- const start = Math.max(0, offset - 1);
155
- const end = Math.min(start + limit, lines.length);
156
- return lines.slice(start, end).join('\n');
157
- }
158
-
159
- /** 快速统计总行数(对大文件使用 wc -l 避免加载全部内容到内存) */
160
- private _countLines(filePath: string, encoding: string): number {
161
- const stat = fs.statSync(filePath);
162
- // 对大于 1MB 的文件使用 wc -l 子进程来计数
163
- if (stat.size > 1024 * 1024 && encoding === 'utf8') {
164
- try {
165
- const output = execFileSync('wc', ['-l', filePath], { encoding: 'utf8', shell: false });
166
- return parseInt(output.trim().split(/\s+/)[0], 10) || 0;
167
- } catch {
168
- // 回退到内存读取方式
169
- }
170
- }
171
- const content = fs.readFileSync(filePath, encoding as BufferEncoding);
172
- return content.split('\n').length;
173
- }
174
- }
175
-
176
- export { METADATA as FILE_READ_TOOL_METADATA, ALLOWED_ROOTS };