@agentunion/kite 1.5.0 → 1.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 (574) hide show
  1. package/.claude/skills/kite/checklists/feature-checklist.md +496 -0
  2. package/.claude/skills/kite/references/event-patterns.md +180 -0
  3. package/.claude/skills/kite/references/health-check.md +202 -0
  4. package/.claude/skills/kite/references/http-service.md +199 -0
  5. package/.claude/skills/kite/references/module-md-spec.md +172 -0
  6. package/.claude/skills/kite/references/multi-connection.md +147 -0
  7. package/.claude/skills/kite/references/rpc-patterns.md +199 -0
  8. package/.claude/skills/kite/references/shutdown-sequence.md +146 -0
  9. package/.claude/skills/kite/references/stdin-protocol.md +147 -0
  10. package/.claude/skills/kite/references/test-center-integration.md +178 -0
  11. package/.claude/skills/kite/references/ws-lifecycle.md +301 -0
  12. package/.claude/skills/kite/skill.md +272 -0
  13. package/.claude/skills/kite/templates/go/README.md +20 -0
  14. package/.claude/skills/kite/templates/node/entry.js +134 -0
  15. package/.claude/skills/kite/templates/node/module.md +16 -0
  16. package/.claude/skills/kite/templates/node/server.js +351 -0
  17. package/.claude/skills/kite/templates/node/server_http.js +90 -0
  18. package/.claude/skills/kite/templates/python/entry.py +425 -0
  19. package/.claude/skills/kite/templates/python/module.md +26 -0
  20. package/.claude/skills/kite/templates/python/server.py +447 -0
  21. package/.claude/skills/kite/templates/python/server_http.py +433 -0
  22. package/cli.js +38 -4
  23. package/core/env_checker.py +96 -0
  24. package/docs/05-/347/237/255/344/277/241/350/256/244/350/257/201/344/270/216/347/224/250/346/210/267/344/277/241/346/201/257/346/216/245/345/217/243/346/226/207/346/241/243.md +507 -0
  25. package/docs/ACP/345/215/217/350/256/256/345/205/274/345/256/271/346/226/271/346/241/210.md +138 -0
  26. package/docs/CI/344/270/216AI/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/346/226/271/346/241/210.md +75 -0
  27. package/docs/CLI/345/274/200/345/217/221/350/256/241/345/210/222.md +595 -0
  28. package/docs/ClaudeCode/350/277/234/347/250/213/345/215/217/344/275/234/347/263/273/347/273/237-/346/212/200/346/234/257/350/257/204/344/274/260.md +535 -0
  29. package/docs/ClaudeCode/350/277/234/347/250/213/345/215/217/344/275/234/347/263/273/347/273/237/350/256/276/350/256/241.md +631 -0
  30. package/docs/Evol-App/344/275/277/347/224/250KernelClient/346/224/271/351/200/240/345/256/214/346/210/220.md +342 -0
  31. package/docs/Evol/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/346/246/202/350/246/201.md +604 -0
  32. package/docs/Evol/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/350/256/276/350/256/241.md +1708 -0
  33. package/docs/Evol/346/250/241/345/235/227/350/256/276/350/256/241/346/226/271/346/241/210.md +1154 -0
  34. package/docs/Evol/351/241/265/351/235/242/346/217/222/344/273/266/345/214/226-Evol/346/250/241/345/235/227/345/256/236/346/226/275/346/214/207/345/215/227.md +403 -0
  35. package/docs/Evol/351/241/265/351/235/242/346/217/222/344/273/266/345/214/226-/345/244/226/351/203/250/346/250/241/345/235/227/346/216/245/345/205/245/346/214/207/345/215/227.md +468 -0
  36. package/docs/HTTP-RPC/350/277/201/347/247/273/345/210/260WebSocket/350/256/241/345/210/222.md +318 -0
  37. package/docs/INDEX.md +388 -0
  38. package/docs/KITE_DOCS_GUIDE.md +33 -0
  39. package/docs/Kernel-Client-Kite-Token/346/224/257/346/214/201/345/256/236/346/226/275/345/256/214/346/210/220.md +330 -0
  40. package/docs/Kernel/344/270/273/345/212/250Ping/346/234/272/345/210/266-/346/255/243/347/241/256/345/256/236/347/216/260.md +235 -0
  41. package/docs/Kernel/344/270/273/345/212/250Ping/346/234/272/345/210/266/345/256/236/346/226/275/346/200/273/347/273/223.md +204 -0
  42. package/docs/Kite/345/256/211/350/243/205/351/227/256/351/242/230/350/247/243/345/206/263/346/226/271/346/241/210.md +362 -0
  43. package/docs/Kite/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/350/256/276/350/256/241-/347/273/210/346/236/201/347/233/256/346/240/207.md +721 -0
  44. package/docs/Kite/346/216/247/345/210/266/345/217/260/347/273/237/344/270/200WebSocket/346/224/271/351/200/240/346/226/271/346/241/210.md +821 -0
  45. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/01-/346/241/206/346/236/266/345/256/232/344/275/215.md +12 -0
  46. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/02-/346/240/270/345/277/203/346/246/202/345/277/265.md +341 -0
  47. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/03-/347/263/273/347/273/237/346/236/266/346/236/204.md +257 -0
  48. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/04-/346/250/241/345/235/227/350/247/204/350/214/203.md +263 -0
  49. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/05-/346/240/270/345/277/203/346/265/201/347/250/213-/346/226/260/347/211/210.md +267 -0
  50. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/05-/346/240/270/345/277/203/346/265/201/347/250/213.md +149 -0
  51. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/06-/347/233/256/345/275/225/347/273/223/346/236/204.md +231 -0
  52. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/07-/346/225/260/346/215/256/346/250/241/345/236/213.md +68 -0
  53. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/08-/346/211/251/345/261/225/346/200/247.md +34 -0
  54. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/09-/344/270/216/345/205/267/344/275/223/345/272/224/347/224/250/347/232/204/345/205/263/347/263/273.md +22 -0
  55. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/README.md +46 -0
  56. package/docs/Kite/347/263/273/347/273/237/345/220/257/345/212/250/346/265/201/347/250/213.md +567 -0
  57. package/docs/Launcher/345/220/257/345/212/250/345/231/250/346/226/207/346/241/243.md +745 -0
  58. package/docs/Polyglot/350/277/220/350/241/214/346/227/266/344/270/216Clawdbot/345/205/274/345/256/271/346/200/247/350/256/276/350/256/241.md +321 -0
  59. package/docs/Redis/344/270/216/346/250/241/345/235/227/345/244/232/345/256/236/344/276/213/346/226/271/346/241/210.md +438 -0
  60. package/docs/Relay-Kite-Token/350/256/244/350/257/201/345/256/236/346/226/275/345/256/214/346/210/220.md +178 -0
  61. package/docs/Relay-Token/346/235/203/351/231/220/351/205/215/347/275/256/351/252/214/350/257/201.md +113 -0
  62. package/docs/Watchdog/345/201/245/345/272/267/346/243/200/346/237/245/344/270/216WebSocket-Ping/346/234/272/345/210/266/345/210/206/346/236/220.md +367 -0
  63. package/docs/Watchdog/350/265/204/346/272/220/347/233/221/346/216/247/347/255/226/347/225/245.md +92 -0
  64. package/docs/WebSocket/346/216/245/346/224/266/345/276/252/347/216/257/346/255/273/351/224/201/351/230/262/350/214/203/350/247/204/350/214/203.md +357 -0
  65. package/docs/WebSocket/350/277/236/346/216/245/351/237/247/346/200/247/344/270/216/351/207/215/350/277/236/346/234/272/345/210/266/345/256/214/346/225/264/346/226/271/346/241/210.md +531 -0
  66. package/docs/WebSocket/350/277/236/346/216/245/351/237/247/346/200/247/346/226/271/346/241/210.md +169 -0
  67. package/docs/WebSocket/351/207/215/350/277/236/346/234/272/345/210/266/346/265/213/350/257/225/346/212/245/345/221/212.md +169 -0
  68. package/docs/WebSocket/351/207/215/350/277/236/351/200/200/351/201/277/346/234/272/345/210/266/346/226/271/346/241/210.md +394 -0
  69. package/docs/Web/346/250/241/345/235/227/344/270/216Evol/346/250/241/345/235/227/351/207/215/346/236/204/345/210/206/346/236/220.md +521 -0
  70. package/docs/audit-api-guide.md +68 -0
  71. package/docs/audit-module-design.md +315 -0
  72. package/docs/audit-module-implementation-summary.md +149 -0
  73. package/docs/llm-context-design.md +52 -0
  74. package/docs/llm-test-enhancement-plan.md +970 -0
  75. package/docs/logs-api-guide.md +42 -0
  76. package/docs/npm/345/214/205Python/347/216/257/345/242/203/347/256/241/347/220/206/346/226/271/346/241/210.md +302 -0
  77. package/docs/npm/345/217/221/345/270/203/344/270/216CLI/344/275/277/347/224/250/346/214/207/345/215/227.md +245 -0
  78. package/docs/stdio/344/270/216/347/253/257/345/217/243/345/217/221/347/216/260/351/207/215/346/236/204.md +480 -0
  79. package/docs/web/346/250/241/345/235/227/344/270/255/350/275/254/346/234/215/345/212/241/350/256/276/350/256/241/346/226/271/346/241/210.md +449 -0
  80. package/docs//344/272/213/344/273/266/345/244/204/347/220/206/346/234/272/345/210/266.md +388 -0
  81. package/docs//344/272/213/344/273/266/345/244/204/347/220/206/350/247/204/350/214/203.md +113 -0
  82. package/docs//344/272/213/344/273/266/350/256/242/351/230/205/351/200/232/351/205/215/347/254/246/350/247/204/350/214/203.md +256 -0
  83. package/docs//344/272/213/344/273/266/351/230/237/345/210/227/345/274/271/346/200/247/347/256/241/347/220/206.md +449 -0
  84. package/docs//344/272/244/344/272/222/345/274/217/347/273/210/347/253/257/346/216/247/345/210/266/346/226/271/346/241/210.md +301 -0
  85. package/docs//344/273/243/347/220/206/345/220/257/345/212/250/345/231/250/344/270/216/345/256/271/345/231/250/345/214/226.md +140 -0
  86. package/docs//344/273/243/347/240/201/347/273/237/350/256/241/345/267/245/345/205/267/344/275/277/347/224/250/350/257/264/346/230/216.md +217 -0
  87. package/docs//344/274/230/351/233/205/351/200/200/345/207/272/350/247/204/350/214/203.md +362 -0
  88. package/docs//344/276/235/350/265/226/347/256/241/347/220/206/350/257/264/346/230/216.md +141 -0
  89. package/docs//344/277/256/345/244/215/346/235/203/351/231/220/351/227/256/351/242/230-evol-RPC/346/235/203/351/231/220.md +268 -0
  90. package/docs//345/210/240/351/231/244kernel-client-example/345/256/214/346/210/220.md +309 -0
  91. package/docs//345/210/240/351/231/244ws-management/345/256/214/346/210/220.md +418 -0
  92. package/docs//345/220/257/345/212/250/344/274/230/345/214/226/346/226/271/346/241/210.md +522 -0
  93. package/docs//345/220/257/345/212/250/344/276/235/350/265/226/344/270/216/346/216/222/345/272/217.md +105 -0
  94. package/docs//345/256/211/350/243/205/350/204/232/346/234/254/345/274/200/345/217/221/346/226/207/346/241/243.md +643 -0
  95. package/docs//345/256/214/346/225/264/345/220/257/345/212/250/346/265/201/347/250/213/350/256/276/350/256/241.md +452 -0
  96. package/docs//345/256/236/347/216/260/350/247/204/345/210/222.md +195 -0
  97. package/docs//345/277/203/350/267/263/346/234/272/345/210/266/351/207/215/346/236/204/346/200/273/347/273/223.md +166 -0
  98. package/docs//346/217/241/346/211/213/350/256/244/350/257/201/346/226/271/346/241/210-/345/256/211/345/205/250/345/256/241/346/237/245.md +176 -0
  99. package/docs//346/217/241/346/211/213/350/256/244/350/257/201/346/226/271/346/241/210.md +908 -0
  100. package/docs//346/226/207/346/241/243/346/233/264/346/226/260/346/270/205/345/215/225.md +83 -0
  101. package/docs//346/227/245/345/277/227/344/270/216/345/274/202/345/270/270/345/244/204/347/220/206/350/247/204/350/214/203.md +829 -0
  102. package/docs//346/227/245/345/277/227/350/260/203/350/257/225/345/256/236/346/210/230/346/214/207/345/215/227.md +25 -0
  103. package/docs//346/236/266/346/236/204/345/200/237/351/211/264/346/214/207/345/215/227.md +977 -0
  104. package/docs//346/236/266/346/236/204/346/224/271/351/200/240-/345/256/214/346/210/220/346/200/273/347/273/223.md +440 -0
  105. package/docs//346/236/266/346/236/204/347/216/260/347/212/266/344/270/216/347/273/210/346/236/201/347/233/256/346/240/207/345/257/271/346/257/224/345/210/206/346/236/220.md +508 -0
  106. package/docs//346/250/241/345/235/227/345/244/232/350/277/236/346/216/245/346/216/247/345/210/266/347/255/226/347/225/245.md +220 -0
  107. package/docs//346/250/241/345/235/227/345/256/211/350/243/205/346/234/272/345/210/266/350/256/276/350/256/241.md +500 -0
  108. package/docs//346/250/241/345/235/227/345/274/200/345/217/221/346/214/207/345/215/227.md +1824 -0
  109. package/docs//346/250/241/345/235/227/347/203/255/346/233/264/346/226/260.md +89 -0
  110. package/docs//346/250/241/345/235/227/350/277/234/347/250/213/351/203/250/347/275/262/345/274/200/345/217/221/350/247/204/350/214/203.md +460 -0
  111. package/docs//346/250/241/345/235/227/351/200/200/345/207/272/346/234/272/345/210/266/345/256/214/346/225/264/346/226/271/346/241/210.md +303 -0
  112. package/docs//346/250/241/345/235/227/351/205/215/347/275/256/345/212/240/350/275/275/344/270/216/347/203/255/351/207/215/350/275/275/350/247/204/350/214/203.md +369 -0
  113. package/docs//346/265/213/350/257/225/344/270/255/345/277/203/346/267/273/345/212/240/346/250/241/345/235/227/346/265/213/350/257/225/346/214/207/345/215/227.md +147 -0
  114. package/docs//347/211/210/346/234/254/351/224/201/345/256/232/347/216/257/345/242/203/347/256/241/347/220/206/346/226/271/346/241/210.md +331 -0
  115. package/docs//347/216/257/345/242/203/345/217/230/351/207/217/344/270/216/350/277/220/350/241/214/346/227/266/347/233/256/345/275/225/350/256/276/350/256/241.md +499 -0
  116. package/docs//347/216/257/345/242/203/347/256/241/347/220/206/345/256/214/346/225/264/346/226/271/346/241/210.md +334 -0
  117. package/docs//350/231/232/346/213/237/346/250/241/345/235/227/344/270/255/350/275/254/346/234/215/345/212/241/345/256/214/346/225/264/350/256/276/350/256/241.md +1496 -0
  118. package/docs//350/231/232/346/213/237/347/216/257/345/242/203/345/267/245/344/275/234/345/216/237/347/220/206.md +163 -0
  119. package/docs//350/256/241/345/210/222/347/256/241/347/220/206/345/231/250/344/275/277/347/224/250/346/214/207/345/215/227.md +196 -0
  120. package/docs//350/256/244/350/257/201/346/250/241/345/235/227/344/270/216Gateway/350/256/276/350/256/241/346/226/271/346/241/210.md +765 -0
  121. package/docs//350/277/234/347/250/213/346/250/241/345/235/227/350/256/276/350/256/241-/346/227/247/347/211/210.md +1117 -0
  122. package/docs//350/277/234/347/250/213/346/250/241/345/235/227/350/256/276/350/256/241.md +451 -0
  123. package/docs//351/207/215/346/236/204/346/234/272/345/210/266/346/270/205/345/215/225.md +192 -0
  124. package/docs//351/223/276/350/267/257/350/277/275/350/270/252/346/226/271/346/241/210.md +242 -0
  125. package/docs//351/231/215/347/272/247/347/255/226/347/225/245/350/256/276/350/256/241/346/226/271/346/241/210.md +618 -0
  126. package/extensions/agents/assistant/entry.py +113 -14
  127. package/extensions/agents/assistant/module.md +27 -22
  128. package/extensions/agents/assistant/server.py +291 -105
  129. package/extensions/channels/acp_channel/entry.py +114 -16
  130. package/extensions/channels/acp_channel/module.md +4 -0
  131. package/extensions/channels/acp_channel/server.py +396 -105
  132. package/extensions/channels/phone_channel/__init__.py +1 -0
  133. package/extensions/channels/phone_channel/entry.py +503 -0
  134. package/extensions/channels/phone_channel/module.md +31 -0
  135. package/extensions/channels/phone_channel/server.py +686 -0
  136. package/extensions/event_hub_bench/entry.py +55 -12
  137. package/extensions/event_hub_bench/module.md +27 -27
  138. package/extensions/services/audit/README.md +134 -0
  139. package/extensions/services/audit/collector.py +73 -0
  140. package/extensions/services/audit/entry.py +444 -0
  141. package/extensions/services/audit/module.md +66 -0
  142. package/extensions/services/audit/query_audit.py +111 -0
  143. package/extensions/services/audit/routes/__init__.py +1 -0
  144. package/extensions/services/audit/routes/routes_audit.py +113 -0
  145. package/extensions/services/audit/schemas/__init__.py +5 -0
  146. package/extensions/services/audit/schemas/audit_event.py +92 -0
  147. package/extensions/services/audit/server.py +542 -0
  148. package/extensions/services/audit/storage.py +95 -0
  149. package/extensions/services/auth/entry.py +1054 -0
  150. package/extensions/services/auth/module.md +31 -0
  151. package/extensions/services/auth/token_store.py +185 -0
  152. package/extensions/services/auth/verifiers/evol_account.py +101 -0
  153. package/extensions/services/auth/verifiers/kite_token.py +38 -0
  154. package/extensions/services/auth/verifiers/pairing_code.py +71 -0
  155. package/extensions/services/backup/entry.py +494 -197
  156. package/extensions/services/backup/module.md +4 -2
  157. package/extensions/services/dataclaw/api/__init__.py +0 -0
  158. package/extensions/services/dataclaw/api/admin.py +367 -0
  159. package/extensions/services/dataclaw/api/copyright.py +175 -0
  160. package/extensions/services/dataclaw/api/credits.py +177 -0
  161. package/extensions/services/dataclaw/api/data.py +179 -0
  162. package/extensions/services/dataclaw/api/demands.py +269 -0
  163. package/extensions/services/dataclaw/api/feeds.py +262 -0
  164. package/extensions/services/dataclaw/api/identity.py +505 -0
  165. package/extensions/services/dataclaw/api/notifications.py +104 -0
  166. package/extensions/services/dataclaw/api/reviews.py +138 -0
  167. package/extensions/services/dataclaw/api/search.py +153 -0
  168. package/extensions/services/dataclaw/api/subscriptions.py +157 -0
  169. package/extensions/services/dataclaw/config.json5 +96 -0
  170. package/extensions/services/dataclaw/core/__init__.py +0 -0
  171. package/extensions/services/dataclaw/core/auth.py +95 -0
  172. package/extensions/services/dataclaw/core/config.py +50 -0
  173. package/extensions/services/dataclaw/core/database.py +70 -0
  174. package/extensions/services/dataclaw/entry.py +416 -0
  175. package/extensions/services/dataclaw/gofeed/351/241/271/347/233/256/346/211/200/346/234/211/346/235/203/350/275/254/347/247/273/346/265/201/347/250/213/350/257/264/346/230/216.md +309 -0
  176. package/extensions/services/dataclaw/migrate.py +283 -0
  177. package/extensions/services/dataclaw/models/__init__.py +0 -0
  178. package/extensions/services/dataclaw/module.md +49 -0
  179. package/extensions/services/dataclaw/requirements.txt +18 -0
  180. package/extensions/services/dataclaw/server.py +759 -0
  181. package/extensions/services/dataclaw/services/__init__.py +0 -0
  182. package/extensions/services/dataclaw/services/agent_service.py +132 -0
  183. package/extensions/services/dataclaw/services/credit_service.py +235 -0
  184. package/extensions/services/dataclaw/services/email_service.py +140 -0
  185. package/extensions/services/dataclaw/services/feed_service.py +259 -0
  186. package/extensions/services/dataclaw/services/notification_service.py +209 -0
  187. package/extensions/services/dataclaw/services/oauth_service.py +275 -0
  188. package/extensions/services/dataclaw/services/pricing.py +102 -0
  189. package/extensions/services/dataclaw/services/quality.py +79 -0
  190. package/extensions/services/dataclaw/services/reputation.py +142 -0
  191. package/extensions/services/dataclaw/services/sms_service.py +174 -0
  192. package/extensions/services/dataclaw/static/css/common.css +853 -0
  193. package/extensions/services/dataclaw/static/css/themes/blue.css +42 -0
  194. package/extensions/services/dataclaw/static/css/themes/dark.css +42 -0
  195. package/extensions/services/dataclaw/static/css/themes/light.css +35 -0
  196. package/extensions/services/dataclaw/static/js/api.js +103 -0
  197. package/extensions/services/dataclaw/static/js/common.js +321 -0
  198. package/extensions/services/dataclaw/static/js/i18n.js +95 -0
  199. package/extensions/services/dataclaw/static/js/pages/admin.js +152 -0
  200. package/extensions/services/dataclaw/static/js/pages/dashboard.js +82 -0
  201. package/extensions/services/dataclaw/static/js/pages/feed-detail.js +180 -0
  202. package/extensions/services/dataclaw/static/js/pages/feed-manage.js +158 -0
  203. package/extensions/services/dataclaw/static/js/theme.js +46 -0
  204. package/extensions/services/dataclaw/static/locales/en-US.json +464 -0
  205. package/extensions/services/dataclaw/static/locales/ja-JP.json +464 -0
  206. package/extensions/services/dataclaw/static/locales/zh-CN.json +464 -0
  207. package/extensions/services/dataclaw/templates/admin/index.html +90 -0
  208. package/extensions/services/dataclaw/templates/base.html +136 -0
  209. package/extensions/services/dataclaw/templates/credits/balance.html +106 -0
  210. package/extensions/services/dataclaw/templates/credits/deposit.html +164 -0
  211. package/extensions/services/dataclaw/templates/credits/history.html +90 -0
  212. package/extensions/services/dataclaw/templates/dashboard.html +52 -0
  213. package/extensions/services/dataclaw/templates/demands/create.html +78 -0
  214. package/extensions/services/dataclaw/templates/demands/detail.html +136 -0
  215. package/extensions/services/dataclaw/templates/demands/list.html +94 -0
  216. package/extensions/services/dataclaw/templates/feeds/create.html +95 -0
  217. package/extensions/services/dataclaw/templates/feeds/detail.html +110 -0
  218. package/extensions/services/dataclaw/templates/feeds/list.html +110 -0
  219. package/extensions/services/dataclaw/templates/feeds/manage.html +88 -0
  220. package/extensions/services/dataclaw/templates/index.html +185 -0
  221. package/extensions/services/dataclaw/templates/login.html +246 -0
  222. package/extensions/services/dataclaw/templates/register.html +164 -0
  223. package/extensions/services/dataclaw/templates/settings/notifications.html +96 -0
  224. package/extensions/services/dataclaw/templates/settings/profile.html +167 -0
  225. package/extensions/services/dataclaw/templates/subscriptions/list.html +64 -0
  226. package/extensions/services/dataclaw/tests/__init__.py +0 -0
  227. package/extensions/services/dataclaw/tests/conftest.py +68 -0
  228. package/extensions/services/dataclaw/tests/integration/__init__.py +0 -0
  229. package/extensions/services/dataclaw/tests/integration/test_workflows.py +239 -0
  230. package/extensions/services/dataclaw/tests/unit/__init__.py +0 -0
  231. package/extensions/services/dataclaw/tests/unit/test_admin.py +70 -0
  232. package/extensions/services/dataclaw/tests/unit/test_copyright.py +63 -0
  233. package/extensions/services/dataclaw/tests/unit/test_credits.py +80 -0
  234. package/extensions/services/dataclaw/tests/unit/test_data.py +98 -0
  235. package/extensions/services/dataclaw/tests/unit/test_demands.py +106 -0
  236. package/extensions/services/dataclaw/tests/unit/test_feeds.py +98 -0
  237. package/extensions/services/dataclaw/tests/unit/test_identity.py +88 -0
  238. package/extensions/services/dataclaw/tests/unit/test_notifications.py +36 -0
  239. package/extensions/services/dataclaw/tests/unit/test_reviews.py +68 -0
  240. package/extensions/services/dataclaw/tests/unit/test_search.py +64 -0
  241. package/extensions/services/dataclaw/tests/unit/test_subscriptions.py +65 -0
  242. package/extensions/services/dataclaw/tests/unit/test_system.py +106 -0
  243. package/extensions/services/dataclaw/utils/__init__.py +0 -0
  244. package/extensions/services/dataclaw/utils/crypto.py +38 -0
  245. package/extensions/services/dataclaw/utils/id_generator.py +52 -0
  246. package/extensions/services/dataclaw/ws/__init__.py +0 -0
  247. package/extensions/services/dataclaw/ws/handler.py +163 -0
  248. package/extensions/services/dataclaw//345/215/217/350/256/2561-/351/241/271/347/233/256/346/235/241/344/273/266/346/216/210/346/235/203/344/270/216/350/202/241/346/235/203/345/257/271/344/273/267/345/215/217/350/256/256.md +243 -0
  249. package/extensions/services/dataclaw//345/215/217/350/256/2562-/351/241/271/347/233/256/350/264/255/344/271/260/346/235/203/344/270/216/345/244/226/345/214/205/345/247/224/346/211/230/345/274/200/345/217/221/345/215/217/350/256/256.md +434 -0
  250. package/extensions/services/evol/__init__.py +1 -0
  251. package/extensions/services/evol/async_http.py +551 -0
  252. package/extensions/services/evol/auth_manager.py +602 -443
  253. package/extensions/services/evol/config.json5 +16 -0
  254. package/extensions/services/evol/entry.py +568 -406
  255. package/extensions/services/evol/evol_api.py +969 -173
  256. package/extensions/services/evol/mfa_totp.py +77 -0
  257. package/extensions/services/evol/module.md +150 -32
  258. package/extensions/services/evol/nonce_pool.py +113 -0
  259. package/extensions/services/evol/oauth_manager.py +223 -0
  260. package/extensions/services/evol/pairing.py +3 -2
  261. package/extensions/services/evol/pairing_codes.jsonl +1 -0
  262. package/extensions/services/evol/relay.py +1031 -682
  263. package/extensions/services/evol/relay_config.json5 +85 -67
  264. package/extensions/services/evol/routes/routes_llm.py +231 -0
  265. package/extensions/services/evol/routes/routes_rpc.py +90 -89
  266. package/extensions/services/evol/routes/routes_test.py +11 -4
  267. package/extensions/services/evol/server.py +2426 -875
  268. package/extensions/services/evol/static/assets/CommissionView-Cs_ys6Gm.js +1 -0
  269. package/extensions/services/evol/static/assets/CommissionView-DACet_Oo.css +1 -0
  270. package/extensions/services/evol/static/assets/IframePage-DbO11U9G.js +1 -0
  271. package/extensions/services/evol/static/assets/IframePage-c572lT8i.css +1 -0
  272. package/extensions/services/evol/static/assets/TeamDetailView-DULrGD7k.css +1 -0
  273. package/extensions/services/evol/static/assets/TeamDetailView-gy_MBEqG.js +139 -0
  274. package/extensions/services/evol/static/assets/element-plus-Bd7pZkkM.js +63 -0
  275. package/extensions/services/evol/static/assets/index-CmMONKzG.css +1 -0
  276. package/extensions/services/evol/static/assets/index-D44bBe__.js +2 -0
  277. package/extensions/services/evol/static/assets/vue-vendor-DtF-__I4.js +29 -0
  278. package/extensions/services/evol/static/index.html +16 -781
  279. package/extensions/services/evol/static/logo.png +0 -0
  280. package/extensions/services/evol/stats_manager.py +243 -240
  281. package/extensions/services/evol/web/README.md +89 -0
  282. package/extensions/services/evol/web/build.bat +44 -0
  283. package/extensions/services/evol/web/index.html +13 -0
  284. package/extensions/services/evol/web/package-lock.json +1718 -0
  285. package/extensions/services/evol/web/package.json +26 -0
  286. package/extensions/services/evol/web/public/logo.png +0 -0
  287. package/extensions/services/evol/web/src/App.vue +7 -0
  288. package/extensions/services/evol/web/src/components/layout/AppHeader.vue +202 -0
  289. package/extensions/services/evol/web/src/components/layout/AppLayout.vue +61 -0
  290. package/extensions/services/evol/web/src/components/layout/AppSidebar.vue +115 -0
  291. package/extensions/services/evol/web/src/components/login/LoginPage.vue +271 -0
  292. package/extensions/services/evol/web/src/components/team/AddMemberModal.vue +181 -0
  293. package/extensions/services/evol/web/src/components/team/GroupTreeNode.vue +156 -0
  294. package/extensions/services/evol/web/src/components/team/TeamAlertConfig.vue +221 -0
  295. package/extensions/services/evol/web/src/components/team/TeamBillModal.vue +165 -0
  296. package/extensions/services/evol/web/src/components/team/TeamMembersAndGroups.vue +499 -0
  297. package/extensions/services/evol/web/src/components/team/TeamStatsPanel.vue +907 -0
  298. package/extensions/services/evol/web/src/components/team/TreeNode.vue +331 -0
  299. package/extensions/services/evol/web/src/components/team/stats/StatsExportProgress.vue +44 -0
  300. package/extensions/services/evol/web/src/components/team/stats/StatsHeader.vue +89 -0
  301. package/extensions/services/evol/web/src/components/team/stats/StatsMemberDetail.vue +415 -0
  302. package/extensions/services/evol/web/src/components/team/stats/StatsSummary.vue +42 -0
  303. package/extensions/services/evol/web/src/components/team/stats/helpers.ts +195 -0
  304. package/extensions/services/evol/web/src/components/team/stats/stats.css +741 -0
  305. package/extensions/services/evol/web/src/components/team/stats/useStatsApi.ts +114 -0
  306. package/extensions/services/evol/web/src/components/team/stats/useStatsCharts.ts +242 -0
  307. package/extensions/services/evol/web/src/components/team/stats/useStatsExport.ts +232 -0
  308. package/extensions/services/evol/web/src/composables/useFormatters.ts +42 -0
  309. package/extensions/services/evol/web/src/composables/useTheme.ts +52 -0
  310. package/extensions/services/evol/web/src/env.d.ts +7 -0
  311. package/extensions/services/evol/web/src/i18n/en.ts +361 -0
  312. package/extensions/services/evol/web/src/i18n/index.ts +36 -0
  313. package/extensions/services/evol/web/src/i18n/zh.ts +379 -0
  314. package/extensions/services/evol/web/src/main.ts +21 -0
  315. package/extensions/services/evol/web/src/router/index.ts +81 -0
  316. package/extensions/services/evol/web/src/services/kernel-client.ts +406 -0
  317. package/extensions/services/evol/web/src/stores/auth.ts +189 -0
  318. package/extensions/services/evol/web/src/stores/connection.ts +134 -0
  319. package/extensions/services/evol/web/src/stores/pages.ts +79 -0
  320. package/extensions/services/evol/web/src/styles/base.css +213 -0
  321. package/extensions/services/evol/web/src/styles/variables.css +138 -0
  322. package/extensions/services/evol/web/src/types/rpc.ts +35 -0
  323. package/extensions/services/evol/web/src/types/token.ts +87 -0
  324. package/extensions/services/evol/web/src/views/AccountView.vue +1532 -0
  325. package/extensions/services/evol/web/src/views/AiServiceView.vue +219 -0
  326. package/extensions/services/evol/web/src/views/CommissionView.vue +1220 -0
  327. package/extensions/services/evol/web/src/views/CreditsView.vue +131 -0
  328. package/extensions/services/evol/web/src/views/EndpointView.vue +163 -0
  329. package/extensions/services/evol/web/src/views/IframePage.vue +120 -0
  330. package/extensions/services/evol/web/src/views/TeamDetailView.vue +473 -0
  331. package/extensions/services/evol/web/src/views/TeamView.vue +332 -0
  332. package/extensions/services/evol/web/tsconfig.json +31 -0
  333. package/extensions/services/evol/web/tsconfig.node.json +10 -0
  334. package/extensions/services/evol/web/vite.config.ts +49 -0
  335. package/extensions/services/evolmem/__init__.py +0 -0
  336. package/extensions/services/evolmem/entry.py +387 -0
  337. package/extensions/services/evolmem/hooks/__init__.py +0 -0
  338. package/extensions/services/evolmem/hooks/assistant_stop.py +228 -0
  339. package/extensions/services/evolmem/hooks/common.py +76 -0
  340. package/extensions/services/evolmem/hooks/pre_tool_use.py +56 -0
  341. package/extensions/services/evolmem/hooks/session_end.py +133 -0
  342. package/extensions/services/evolmem/hooks/session_start.py +229 -0
  343. package/extensions/services/evolmem/hooks/user_prompt.py +122 -0
  344. package/extensions/services/evolmem/module.md +48 -0
  345. package/extensions/services/evolmem/prompts/00-server-info.md +28 -0
  346. package/extensions/services/evolmem/prompts/01-behavior.md +46 -0
  347. package/extensions/services/evolmem/prompts/02-summary-format.md +112 -0
  348. package/extensions/services/evolmem/prompts/03-file-query.md +92 -0
  349. package/extensions/services/evolmem/prompts/04-topic-stats.md +11 -0
  350. package/extensions/services/evolmem/prompts/05-recent-topics.md +84 -0
  351. package/extensions/services/evolmem/scripts/__init__.py +0 -0
  352. package/extensions/services/evolmem/scripts/extract_keywords.py +40 -0
  353. package/extensions/services/evolmem/scripts/search_topics.py +91 -0
  354. package/extensions/services/evolmem/server.py +641 -0
  355. package/extensions/services/gateway/entry.py +964 -0
  356. package/extensions/services/gateway/module.md +29 -0
  357. package/extensions/services/gateway/nonce_pool.py +65 -0
  358. package/extensions/services/gateway/relay.py +133 -0
  359. package/extensions/services/gateway/ws_server.py +285 -0
  360. package/extensions/services/kite_console/auth_manager.py +603 -0
  361. package/extensions/services/kite_console/config.json5 +19 -0
  362. package/extensions/services/kite_console/config_loader.py +117 -0
  363. package/extensions/services/kite_console/entry.py +528 -0
  364. package/extensions/services/kite_console/evol_api.py +179 -0
  365. package/extensions/services/kite_console/evol_config.json5 +29 -0
  366. package/extensions/services/kite_console/mfa_totp.py +77 -0
  367. package/extensions/services/kite_console/migrate_tokens.py +122 -0
  368. package/extensions/services/kite_console/module.md +37 -0
  369. package/extensions/services/kite_console/nonce_pool.py +113 -0
  370. package/extensions/services/kite_console/oauth_manager.py +223 -0
  371. package/extensions/services/kite_console/pairing.py +280 -0
  372. package/extensions/services/kite_console/pairing_codes.jsonl +2 -0
  373. package/extensions/services/kite_console/relay.py +1350 -0
  374. package/extensions/services/kite_console/relay_config.json5 +96 -0
  375. package/extensions/services/kite_console/routes/__init__.py +1 -0
  376. package/extensions/services/kite_console/routes/routes_llm.py +231 -0
  377. package/extensions/services/kite_console/routes/routes_proxy.py +115 -0
  378. package/extensions/services/kite_console/routes/routes_rpc.py +89 -0
  379. package/extensions/services/kite_console/routes/routes_test.py +68 -0
  380. package/extensions/services/kite_console/server.py +1742 -0
  381. package/extensions/services/{evol → kite_console}/static/css/style.css +656 -2
  382. package/extensions/services/kite_console/static/index.html +1524 -0
  383. package/extensions/services/{evol → kite_console}/static/js/dialog.js +11 -4
  384. package/extensions/services/kite_console/static/js/evol-app.js +7740 -0
  385. package/extensions/services/{evol/static/js/evol-app.js → kite_console/static/js/evol-app.js.backup} +2777 -1949
  386. package/extensions/services/kite_console/static/js/kernel-client.js +560 -0
  387. package/extensions/services/{evol/static/js/kernel-client.js → kite_console/static/js/kernel-client.js.backup} +41 -3
  388. package/extensions/services/{evol → kite_console}/static/js/registry-tests.js +7 -0
  389. package/extensions/services/kite_console/static/js/tests/ARCHITECTURE.md +67 -0
  390. package/extensions/services/kite_console/static/js/tests/README.md +140 -0
  391. package/extensions/services/kite_console/static/js/tests/index.js +161 -0
  392. package/extensions/services/kite_console/static/js/tests/integration/auth.js +120 -0
  393. package/extensions/services/kite_console/static/js/tests/integration/channel-interaction.js +188 -0
  394. package/extensions/services/kite_console/static/js/tests/integration/elastic-connection.js +115 -0
  395. package/extensions/services/kite_console/static/js/tests/integration/full-workflow.js +43 -0
  396. package/extensions/services/kite_console/static/js/tests/integration/multi-instance.js +304 -0
  397. package/extensions/services/kite_console/static/js/tests/integration/nested-rpc.js +266 -0
  398. package/extensions/services/kite_console/static/js/tests/integration/pingpong.js +25 -0
  399. package/extensions/services/kite_console/static/js/tests/integration/redis.js +227 -0
  400. package/extensions/services/kite_console/static/js/tests/integration/registry-core.js +52 -0
  401. package/extensions/services/kite_console/static/js/tests/integration/remote-deploy.js +85 -0
  402. package/extensions/services/kite_console/static/js/tests/integration/require-init.js +96 -0
  403. package/extensions/services/kite_console/static/js/tests/integration/scaling-control.js +193 -0
  404. package/extensions/services/kite_console/static/js/tests/integration/trace.js +109 -0
  405. package/extensions/services/kite_console/static/js/tests/modules/acp_channel.js +339 -0
  406. package/extensions/services/kite_console/static/js/tests/modules/auth.js +96 -0
  407. package/extensions/services/kite_console/static/js/tests/modules/backup.js +49 -0
  408. package/extensions/services/kite_console/static/js/tests/modules/gateway.js +41 -0
  409. package/extensions/services/kite_console/static/js/tests/modules/kernel.js +90 -0
  410. package/extensions/services/kite_console/static/js/tests/modules/launcher.js +75 -0
  411. package/extensions/services/kite_console/static/js/tests/modules/multi_instance.js +129 -0
  412. package/extensions/services/kite_console/static/js/tests/modules/phone_channel.js +364 -0
  413. package/extensions/services/kite_console/static/js/tests/modules/redis.js +178 -0
  414. package/extensions/services/kite_console/static/js/tests/modules/watchdog.js +60 -0
  415. package/extensions/services/kite_console/static/js/tests/modules/web.js +70 -0
  416. package/extensions/services/kite_console/static/js/tests/test-runner.js +123 -0
  417. package/extensions/services/kite_console/static/js/virtual-list.js +200 -0
  418. package/extensions/services/kite_console/static/test_kernel_client_token.html +352 -0
  419. package/extensions/services/kite_console/stats_manager.py +247 -0
  420. package/extensions/services/logs/README.md +215 -0
  421. package/extensions/services/logs/api_logger.py +37 -0
  422. package/extensions/services/logs/baseline.py +121 -0
  423. package/extensions/services/logs/cleaner.py +76 -0
  424. package/extensions/services/logs/entry.py +449 -0
  425. package/extensions/services/logs/formatter.py +129 -0
  426. package/extensions/services/logs/module.md +38 -0
  427. package/extensions/services/logs/quick_diagnostic.py +128 -0
  428. package/extensions/services/logs/routes/__init__.py +1 -0
  429. package/extensions/services/logs/routes/routes_logs.py +218 -0
  430. package/extensions/services/logs/routes/routes_logs.py.backup +173 -0
  431. package/extensions/services/logs/scanner.py +100 -0
  432. package/extensions/services/logs/searcher.py +263 -0
  433. package/extensions/services/logs/server.py +553 -0
  434. package/extensions/services/logs.zip +0 -0
  435. package/extensions/services/model_service/config.json5 +30 -0
  436. package/extensions/services/model_service/entry.py +620 -171
  437. package/extensions/services/model_service/module.md +11 -2
  438. package/extensions/services/proxy/__init__.py +0 -0
  439. package/extensions/services/proxy/aid_manager.py +419 -0
  440. package/extensions/services/proxy/auth_bridge.py +182 -0
  441. package/extensions/services/proxy/config_store.py +79 -0
  442. package/extensions/services/proxy/entry.py +528 -0
  443. package/extensions/services/proxy/evol/presenter/agentIdPresenter.py +2 -2
  444. package/extensions/services/proxy/evol/presenter/apikeyPresenter.py +18 -28
  445. package/extensions/services/proxy/evol/presenter/configPresenter.py +80 -1127
  446. package/extensions/services/proxy/evol/presenter/userPresenter.py +71 -477
  447. package/extensions/services/proxy/evol/server/claude_proxy_async.py +11 -7
  448. package/extensions/services/proxy/module.md +151 -0
  449. package/extensions/services/proxy/server.py +952 -271
  450. package/extensions/services/redis/ALIGNMENT_CHECKLIST.md +121 -0
  451. package/extensions/services/redis/ALIGNMENT_STATUS.md +548 -0
  452. package/extensions/services/redis/config.json5 +8 -0
  453. package/extensions/services/redis/entry.py +1509 -0
  454. package/extensions/services/redis/entry.py.backup +405 -0
  455. package/extensions/services/redis/module.md +48 -0
  456. package/extensions/services/redis/redis_builtin.py +332 -0
  457. package/extensions/services/redis/redis_external.py +164 -0
  458. package/extensions/services/testUi/entry.py +446 -0
  459. package/extensions/services/testUi/module.md +18 -0
  460. package/extensions/services/testUi/ui/cards.html +131 -0
  461. package/extensions/services/testUi/ui/index.html +22 -0
  462. package/extensions/services/testUi/ui/particles.html +143 -0
  463. package/extensions/services/watchdog/entry.py +1258 -793
  464. package/extensions/services/watchdog/module.md +2 -0
  465. package/extensions/services/watchdog/monitor.py +465 -87
  466. package/extensions/services/web/auth_manager.py +602 -0
  467. package/extensions/services/web/config.json5 +11 -0
  468. package/extensions/services/web/entry.py +598 -478
  469. package/extensions/services/web/mfa_totp.py +77 -0
  470. package/extensions/services/web/module.md +16 -13
  471. package/extensions/services/web/nonce_pool.py +113 -0
  472. package/extensions/services/web/oauth_manager.py +223 -0
  473. package/extensions/services/web/pairing.py +3 -2
  474. package/extensions/services/web/pairing_codes.jsonl +1 -0
  475. package/extensions/services/web/relay.py +442 -63
  476. package/extensions/services/web/relay_config.json5 +1 -2
  477. package/extensions/services/web/routes/routes_rpc.py +6 -6
  478. package/extensions/services/web/server.py +360 -173
  479. package/extensions/services/web/static/index.html +1752 -1738
  480. package/extensions/services/web/static/js/app.js +32 -0
  481. package/extensions/services/web/static/js/kernel-client.js +48 -9
  482. package/extensions/services/web/vendor/bluetooth/audio.py +1 -1
  483. package/extensions/services/web/vendor/config.py +2 -2
  484. package/extensions/services/web/vendor/storage/identity.py +1 -1
  485. package/kernel/entry.py +77 -23
  486. package/kernel/event_hub.py +1122 -74
  487. package/kernel/module.md +2 -1
  488. package/kernel/registry_store.py +208 -11
  489. package/kernel/rpc_router.py +1400 -491
  490. package/kernel/server.py +1021 -134
  491. package/kite_cli/__init__.py +9 -1
  492. package/kite_cli/builders/__init__.py +4 -0
  493. package/kite_cli/builders/base.py +67 -0
  494. package/kite_cli/builders/custom.py +31 -0
  495. package/kite_cli/builders/detector.py +56 -0
  496. package/kite_cli/builders/go.py +34 -0
  497. package/kite_cli/builders/gradle.py +41 -0
  498. package/kite_cli/builders/maven.py +36 -0
  499. package/kite_cli/builders/npm.py +44 -0
  500. package/kite_cli/builders/python.py +37 -0
  501. package/kite_cli/commands/BUILD_GUIDE.md +109 -0
  502. package/kite_cli/commands/build.py +142 -0
  503. package/kite_cli/commands/check.py +60 -0
  504. package/kite_cli/commands/config.py +156 -0
  505. package/kite_cli/commands/deps.py +58 -0
  506. package/kite_cli/commands/deps_install.py +7 -7
  507. package/kite_cli/commands/disable.py +162 -0
  508. package/kite_cli/commands/enable.py +162 -0
  509. package/kite_cli/commands/export.py +96 -0
  510. package/kite_cli/commands/import_cmd.py +110 -0
  511. package/kite_cli/commands/install.py +50 -23
  512. package/kite_cli/commands/install_skill.py +107 -0
  513. package/kite_cli/commands/list.py +128 -31
  514. package/kite_cli/commands/outdated.py +202 -0
  515. package/kite_cli/commands/search.py +33 -17
  516. package/kite_cli/commands/update.py +115 -2
  517. package/kite_cli/commands/venv_setup.py +6 -6
  518. package/kite_cli/commands/why.py +48 -0
  519. package/kite_cli/core/config_manager.py +145 -0
  520. package/kite_cli/core/downloader.py +32 -2
  521. package/kite_cli/main.py +153 -7
  522. package/kite_cli/utils/colors.py +153 -0
  523. package/kite_cli/utils/dependency_graph.py +209 -0
  524. package/kite_cli/utils/process.py +55 -0
  525. package/kite_cli/utils/progress.py +207 -0
  526. package/kite_cli/utils/table.py +101 -0
  527. package/launcher/count_lines.py +192 -43
  528. package/launcher/entry.py +4543 -2802
  529. package/launcher/logging_setup.py +54 -1
  530. package/launcher/module.md +32 -6
  531. package/launcher/module_scanner.py +93 -20
  532. package/launcher/process_manager.py +355 -76
  533. package/main.py +6 -0
  534. package/package.json +4 -1
  535. package/requirements.txt +41 -38
  536. package/scripts/auto-fix-deps.py +128 -0
  537. package/scripts/env-manager.js +25 -2
  538. package/scripts/final-test.js +78 -0
  539. package/scripts/setup-python-env.js +700 -191
  540. package/scripts/test-alluser.js +48 -0
  541. package/scripts/test-different-version.js +86 -0
  542. package/scripts/test-direct.js +63 -0
  543. package/scripts/test-extract-installer.js +28 -0
  544. package/scripts/test-install-log.js +54 -0
  545. package/scripts/test-installer.js +39 -0
  546. package/scripts/test-integration.js +250 -0
  547. package/scripts/test-real-install.js +210 -0
  548. package/scripts/test-targetdir.js +49 -0
  549. package/scripts/test-venv-real.js +47 -0
  550. package/scripts/test-venv-simple.js +57 -0
  551. package/scripts/test-wait.js +49 -0
  552. package/scripts/test-with-log.js +63 -0
  553. package/extensions/services/evol/config.yaml +0 -149
  554. package/extensions/services/evol/routes/routes_management_ws.py +0 -127
  555. package/extensions/services/evol/static/index_evol.html +0 -14
  556. package/extensions/services/evol/static/js/app.js +0 -6304
  557. package/extensions/services/evol/static/js/auth.js +0 -326
  558. package/extensions/services/evol/static/js/evol-app-fixed.js +0 -50
  559. package/extensions/services/evol/static/js/evol-app.js.bak +0 -1800
  560. package/extensions/services/evol/static/js/kernel-client-example.js +0 -228
  561. package/extensions/services/evol/static/js/main.js +0 -141
  562. package/extensions/services/evol/static/js/stats.js +0 -217
  563. package/extensions/services/evol/static/js/token-manager.js +0 -175
  564. package/extensions/services/proxy/CHANGELOG_20260308.md +0 -258
  565. package/extensions/services/proxy/_fix_prints.py +0 -133
  566. package/extensions/services/proxy/_fix_prints2.py +0 -87
  567. package/extensions/services/proxy/console_auth.py +0 -109
  568. package/extensions/services/proxy/logs/websocket.log +0 -260
  569. package/extensions/services/proxy/main.py +0 -240
  570. package/extensions/services/proxy/requirements.txt +0 -13
  571. package/extensions/services/web/config.yaml +0 -149
  572. /package/extensions/services/{evol → kite_console}/static/pairing.html +0 -0
  573. /package/extensions/services/{evol → kite_console}/static/test_registry.html +0 -0
  574. /package/extensions/services/{evol → kite_console}/static/test_relay.html +0 -0
@@ -0,0 +1,75 @@
1
+ # CI 与 AI 自动化测试方案
2
+
3
+ > 状态:待实施(基础框架建设完成后再启动)
4
+
5
+ ## 一、CI(持续集成)
6
+
7
+ ### 工具选型
8
+
9
+ | 工具 | 适合场景 | 成本 |
10
+ |------|---------|------|
11
+ | **GitHub Actions** | 代码在 GitHub 上 | 免费额度够用 |
12
+ | **GitLab CI** | 代码在 GitLab 上 | 自带 |
13
+ | **Jenkins** | 自建服务器、需要复杂流水线 | 免费但要自己维护 |
14
+
15
+ ### CI 流水线阶段
16
+
17
+ ```
18
+ 代码 push / PR
19
+
20
+ Stage 1: 环境准备
21
+ - 安装 Python 依赖(requirements.txt)
22
+ - 安装 Node 依赖(package.json)
23
+
24
+ Stage 2: 静态检查
25
+ - 代码风格(ruff / flake8)
26
+ - 类型检查(mypy,可选)
27
+ - 安全扫描(bandit,可选)
28
+
29
+ Stage 3: 单元测试
30
+ - pytest 跑各模块的独立测试
31
+ - 不需要启动整个系统
32
+
33
+ Stage 4: 集成测试
34
+ - 启动 Kite → 跑已有的前端测试
35
+ - 验证模块注册、RPC、事件等
36
+
37
+ Stage 5: 报告
38
+ - 测试通过/失败 → GitHub PR 上显示状态
39
+ - 可选:覆盖率报告
40
+ ```
41
+
42
+ ### 当前项目差距
43
+
44
+ - 已有:前端测试框架(Evol 控制台的模块测试 + 集成测试),但只能手动触发
45
+ - 缺少:pytest 单元测试框架、CI 配置文件、代码检查工具、前端测试命令行触发方式
46
+
47
+ ## 二、AI 自动化测试
48
+
49
+ ### 三个层次
50
+
51
+ #### 层次 1:AI 生成测试(最容易落地)
52
+
53
+ - 用 LLM 批量生成单元测试
54
+ - 做法:写脚本把模块代码喂给 LLM,生成 pytest 测试文件
55
+ - 适合:工具函数、配置解析、数据处理等纯逻辑代码
56
+ - 价值:快速补齐测试覆盖率
57
+
58
+ #### 层次 2:AI 分析测试结果(中等难度)
59
+
60
+ - CI 跑完测试后,把失败日志喂给 LLM 分析
61
+ - 做法:GitHub Actions 步骤里加一步,调用 Claude API 分析失败原因,自动评论到 PR
62
+ - 价值:减少人工排查时间
63
+
64
+ #### 层次 3:AI 自动探索测试(较复杂)
65
+
66
+ - AI 根据 API 文档和代码自主设计测试场景
67
+ - 做法:Agent 模式——让 AI 读代码 → 设计测试用例 → 执行 → 判断结果 → 发现 bug
68
+ - 价值:发现人想不到的边界情况
69
+
70
+ ## 三、建议落地路径
71
+
72
+ 1. **搭 CI 基础** — GitHub Actions + ruff 代码检查 + pytest 跑现有测试
73
+ 2. **补单元测试** — AI 批量生成关键模块测试(RPC 路由、配置加载、事件匹配、Token 认证)
74
+ 3. **集成测试自动化** — 前端测试改造为命令行触发(headless),CI 自动跑
75
+ 4. **AI 分析能力** — CI 失败时调 Claude API 分析日志,结果评论到 PR
@@ -0,0 +1,595 @@
1
+ # Kite CLI 开发计划
2
+
3
+ ## 当前状态
4
+
5
+ **版本**: v1.0.0
6
+ **最后更新**: 2026-03-09
7
+
8
+ ### 已完成功能 ✓
9
+
10
+ **核心命令 (20个)**
11
+ - [x] `install` - 安装模块 (支持 PyPI/npm/Git/local,支持版本号 @version,读取配置)
12
+ - [x] `uninstall` - 卸载模块
13
+ - [x] `update` - 更新模块 (支持 --to 指定版本,支持 --all 批量更新)
14
+ - [x] `list` - 列出已安装模块 (分类显示,支持 --outdated/--disabled/--enabled)
15
+ - [x] `search` - 搜索可用模块
16
+ - [x] `info` - 显示模块详细信息
17
+ - [x] `log` - 查看操作日志
18
+ - [x] `history` - 查看最近安装的模块
19
+ - [x] `rollback` - 回滚最后一次操作
20
+ - [x] `clean` - 清理临时文件和缓存
21
+ - [x] `doctor` - 检查下载工具状态
22
+ - [x] `outdated` - 列出可更新的模块
23
+ - [x] `enable` - 启用模块
24
+ - [x] `disable` - 禁用模块
25
+ - [x] `export` - 导出已安装模块列表 (支持 text/json 格式)
26
+ - [x] `import` - 从文件批量安装模块
27
+ - [x] `config` - 配置管理 (list/get/set/unset/reset)
28
+ - [x] `prepare` - 打包前准备(扫描依赖,生成锁定文件)
29
+ - [x] `env-check` - 环境检查(虚拟环境和依赖库)
30
+ - [x] `venv-setup` - 创建虚拟环境
31
+ - [x] `deps-install` - 安装依赖库
32
+
33
+ **核心功能**
34
+ - [x] 跨平台下载 (PyPI/npm/Git/local)
35
+ - [x] 多位置安装 (dev/local/global)
36
+ - [x] 依赖管理 (Python/npm/Git/Kite模块)
37
+ - [x] 工具自动安装 (Python/pip/Node.js/npm/Git)
38
+ - [x] 操作日志记录
39
+ - [x] 国际化支持 (中英文)
40
+ - [x] 错误处理和详细提示
41
+ - [x] 保留名称保护
42
+ - [x] 版本号解析和匹配 (semver: =, ^, ~, >, <, >=, <=, latest, 范围)
43
+
44
+ ---
45
+
46
+ ## Phase 1: 核心功能完善 (优先级: 高)
47
+
48
+ ### 1.1 版本管理增强
49
+
50
+ **状态**: ✅ 已完成
51
+ **预计工作量**: 2-3 天
52
+ **负责人**: 待分配
53
+
54
+ **功能需求**:
55
+ - [x] 支持版本号指定
56
+ - `kite install pkg@1.2.0` - 安装指定版本 ✓
57
+ - `kite install pkg@latest` - 安装最新版本 ✓
58
+ - `kite install pkg@^1.0.0` - 安装兼容版本 ✓
59
+ - [x] 更新到指定版本
60
+ - `kite update pkg --to 2.0.0` - 更新到指定版本 ✓
61
+ - [x] 显示可更新版本
62
+ - `kite list --outdated` - 列出可更新的模块 ✓
63
+ - `kite outdated` - 新命令,专门列出过期模块 ✓
64
+
65
+ **技术要点**:
66
+ - 解析版本号语法 (支持 @, ^, ~, >, <, >=, <=)
67
+ - 调用平台 API 获取版本列表
68
+ - 版本比较算法 (semver)
69
+ - 更新 checker.py 支持版本查询
70
+ - 更新 downloader.py 支持版本下载
71
+
72
+ **测试用例**:
73
+ ```bash
74
+ kite install requests@2.28.0
75
+ kite install express@^4.0.0
76
+ kite list --outdated
77
+ kite outdated
78
+ kite update requests --to 2.31.0
79
+ ```
80
+
81
+ ---
82
+
83
+ ### 1.2 模块启用/禁用
84
+
85
+ **状态**: ✅ 已完成
86
+ **预计工作量**: 1-2 天
87
+ **负责人**: 待分配
88
+
89
+ **功能需求**:
90
+ - [x] 启用模块
91
+ - `kite enable <name>` - 修改 module.md 的 state: enabled ✓
92
+ - [x] 禁用模块
93
+ - `kite disable <name>` - 修改 module.md 的 state: disabled ✓
94
+ - [x] 列出禁用模块
95
+ - `kite list --disabled` - 只显示禁用的模块 ✓
96
+ - `kite list --enabled` - 只显示启用的模块 ✓
97
+
98
+ **技术要点**:
99
+ - 读取并修改 module.md 的 YAML frontmatter
100
+ - 保持文件格式和注释不变
101
+ - 支持批量启用/禁用
102
+ - 添加到操作日志
103
+
104
+ **测试用例**:
105
+ ```bash
106
+ kite disable watchdog
107
+ kite list --disabled
108
+ kite enable watchdog
109
+ kite list --enabled
110
+ ```
111
+
112
+ ---
113
+
114
+ ### 1.3 批量操作
115
+
116
+ **状态**: ✅ 已完成
117
+ **预计工作量**: 2-3 天
118
+ **负责人**: 待分配
119
+
120
+ **功能需求**:
121
+ - [x] 批量更新
122
+ - `kite update --all` - 更新所有模块 ✓
123
+ - `kite update --all --dry-run` - 预览更新(暂未实现)
124
+ - [x] 批量安装
125
+ - `kite install pkg1 pkg2 pkg3` - 一次安装多个(暂未实现)
126
+ - `kite install -r requirements.txt` - 从文件安装(通过 import 实现)✓
127
+ - [x] 导出/导入
128
+ - `kite export > modules.txt` - 导出模块列表 ✓
129
+ - `kite export --format json > modules.json` - JSON 格式 ✓
130
+ - `kite import modules.txt` - 批量安装 ✓
131
+
132
+ **技术要点**:
133
+ - 并行安装优化
134
+ - 失败处理策略 (继续/中断)
135
+ - 导出格式设计 (包含版本、来源、位置)
136
+ - 进度显示
137
+
138
+ **测试用例**:
139
+ ```bash
140
+ kite update --all
141
+ kite install pkg1 pkg2 pkg3
142
+ kite export > my-modules.txt
143
+ kite import my-modules.txt
144
+ ```
145
+
146
+ ---
147
+
148
+ ### 1.4 配置管理
149
+
150
+ **状态**: ✅ 已完成
151
+ **预计工作量**: 2 天
152
+ **负责人**: 待分配
153
+
154
+ **功能需求**:
155
+ - [x] 配置命令
156
+ - `kite config list` - 列出所有配置 ✓
157
+ - `kite config get <key>` - 获取配置值 ✓
158
+ - `kite config set <key> <value>` - 设置配置 ✓
159
+ - `kite config unset <key>` - 删除配置 ✓
160
+ - `kite config reset` - 重置为默认值 ✓
161
+ - [x] 支持的配置项
162
+ - `default_location` - 默认安装位置 (dev/local/global) ✓
163
+ - `pypi_mirror` - PyPI 镜像源 ✓
164
+ - `npm_registry` - npm 镜像源 ✓
165
+ - `auto_update_check` - 自动检查更新 ✓
166
+ - `confirm_install` - 安装前确认 (默认 true) ✓
167
+ - `confirm_uninstall` - 卸载前确认 ✓
168
+ - `confirm_update` - 更新前确认 ✓
169
+
170
+ **技术要点**:
171
+ - 配置文件路径: `~/.kite/data/cli_config.json`
172
+ - 配置验证 (类型、取值范围)
173
+ - 环境变量覆盖机制
174
+ - 配置迁移
175
+
176
+ **测试用例**:
177
+ ```bash
178
+ kite config list
179
+ kite config set default_location global
180
+ kite config set pypi_mirror https://pypi.tuna.tsinghua.edu.cn/simple
181
+ kite config get default_location
182
+ kite config unset pypi_mirror
183
+ ```
184
+
185
+ ---
186
+
187
+ ## Phase 2: 用户体验优化 (优先级: 中)
188
+
189
+ ### 2.1 进度显示
190
+
191
+ **状态**: ✅ 已完成
192
+ **预计工作量**: 2-3 天
193
+ **负责人**: 待分配
194
+
195
+ **功能需求**:
196
+ - [x] 下载进度条
197
+ - 使用 tqdm 实现进度条 ✓
198
+ - 支持非 TTY 环境自动禁用 ✓
199
+ - 创建 ProgressBar 类 ✓
200
+ - 创建 DownloadProgress 类 ✓
201
+ - [x] 依赖安装进度
202
+ - 批量操作进度条 ✓
203
+ - 显示当前操作的模块名 ✓
204
+ - [x] 多步骤操作进度
205
+ - 创建 StepProgress 类 ✓
206
+ - 显示当前步骤和总步骤数 ✓
207
+ - 集成到 install 命令 ✓
208
+ - 集成到 update --all 命令 ✓
209
+ - 集成到 import 命令 ✓
210
+
211
+ **技术要点**:
212
+ - 使用 tqdm 库实现进度条
213
+ - 实时更新进度(不换行)
214
+ - 处理终端宽度变化
215
+ - 支持非 TTY 环境(CI/CD)自动降级
216
+ - ANSI 颜色支持
217
+
218
+ **测试用例**:
219
+ ```bash
220
+ kite install large-package # 观察多步骤进度
221
+ kite update --all # 观察批量更新进度
222
+ kite import modules.txt # 观察批量安装进度
223
+ ```
224
+
225
+ ---
226
+
227
+ ### 2.2 交互优化
228
+
229
+ **状态**: ✅ 已完成
230
+ **预计工作量**: 2 天
231
+ **负责人**: 待分配
232
+
233
+ **功能需求**:
234
+ - [x] 彩色输出
235
+ - 成功消息 = 绿色 ✓
236
+ - 错误消息 = 红色 ✓
237
+ - 警告消息 = 黄色 ✓
238
+ - 信息消息 = 蓝色 ✓
239
+ - 创建 colors 工具模块 ✓
240
+ - 自动检测终端颜色支持 ✓
241
+ - 集成到 outdated 和 config 命令 ✓
242
+ - [x] 表格化显示
243
+ - `kite list` 使用表格格式 ✓
244
+ - `kite search` 显示表格结果 ✓
245
+ - 创建 table 工具模块 ✓
246
+ - 支持 ANSI 颜色的列宽计算 ✓
247
+ - 集成到 list 和 search 命令 ✓
248
+ - [ ] 更好的来源选择
249
+ - 显示模块描述
250
+ - 显示星标数/下载量
251
+ - 显示最后更新时间
252
+
253
+ **技术要点**:
254
+ - 使用 colorama 或 ANSI 转义码
255
+ - 使用 tabulate 或自实现表格
256
+ - 检测终端是否支持颜色
257
+ - 支持 --no-color 选项
258
+
259
+ **测试用例**:
260
+ ```bash
261
+ kite list # 观察表格输出
262
+ kite search requests # 观察彩色输出
263
+ ```
264
+
265
+ ---
266
+
267
+ ### 2.3 帮助完善
268
+
269
+ **状态**: 待开始
270
+ **预计工作量**: 1 天
271
+ **负责人**: 待分配
272
+
273
+ **功能需求**:
274
+ - [ ] 补充命令详细用法
275
+ - `log` 命令的所有选项
276
+ - `rollback` 命令的限制说明
277
+ - `clean` 命令的清理范围
278
+ - `doctor` 命令的修复建议
279
+ - [ ] 添加更多示例
280
+ - 常见使用场景
281
+ - 组合命令示例
282
+ - [ ] 常见问题解答
283
+ - 安装失败怎么办
284
+ - 如何切换镜像源
285
+ - 如何卸载所有模块
286
+
287
+ **技术要点**:
288
+ - 更新 HELP_TEXT
289
+ - 添加 --examples 选项
290
+ - 添加 FAQ 文档
291
+
292
+ ---
293
+
294
+ ### 2.4 别名支持
295
+
296
+ **状态**: ✅ 已完成
297
+ **预计工作量**: 0.5 天
298
+ **负责人**: 待分配
299
+
300
+ **功能需求**:
301
+ - [x] 命令别名
302
+ - `kite i` = `kite install` ✓
303
+ - `kite add` = `kite install` ✓
304
+ - `kite rm` = `kite uninstall` ✓
305
+ - `kite remove` = `kite uninstall` ✓
306
+ - `kite up` = `kite update` ✓
307
+ - `kite upgrade` = `kite update` ✓
308
+ - `kite ls` = `kite list` ✓
309
+ - `kite show` = `kite list` ✓
310
+
311
+ **技术要点**:
312
+ - 在 main.py 中添加别名映射
313
+ - 更新帮助文档显示别名
314
+
315
+ **测试用例**:
316
+ ```bash
317
+ kite i requests
318
+ kite ls
319
+ kite rm requests
320
+ ```
321
+
322
+ ---
323
+
324
+ ## Phase 3: 高级功能 (优先级: 中)
325
+
326
+ ### 3.1 依赖分析
327
+
328
+ **状态**: ✅ 已完成
329
+ **预计工作量**: 3 天
330
+ **负责人**: 待分配
331
+
332
+ **功能需求**:
333
+ - [x] 依赖树显示
334
+ - `kite deps <name>` - 显示依赖树 ✓
335
+ - `kite deps <name> --depth 2` - 限制深度 ✓
336
+ - 创建 DependencyGraph 类 ✓
337
+ - 树形输出格式 ✓
338
+ - [x] 反向依赖
339
+ - `kite why <name>` - 显示为什么安装了这个模块 ✓
340
+ - 显示依赖路径 ✓
341
+ - [x] 依赖检查
342
+ - `kite check` - 检查依赖完整性 ✓
343
+ - 检测缺失依赖 ✓
344
+ - 检测循环依赖 ✓
345
+ - 统计信息显示 ✓
346
+
347
+ **技术要点**:
348
+ - 递归解析 module.md 的 dependencies
349
+ - 构建依赖图(正向和反向)
350
+ - 检测循环依赖(DFS + 递归栈)
351
+ - 树形输出格式(带缩进和前缀)
352
+ - 彩色高亮显示
353
+
354
+ **测试用例**:
355
+ ```bash
356
+ kite deps watchdog
357
+ kite why some-package
358
+ kite check
359
+ ```
360
+
361
+ ---
362
+
363
+ ### 3.2 模块开发辅助
364
+
365
+ **状态**: 待开始
366
+ **预计工作量**: 3-4 天
367
+ **负责人**: 待分配
368
+
369
+ **功能需求**:
370
+ - [ ] 创建模块模板
371
+ - `kite init` - 交互式创建模块
372
+ - `kite init --name mymod --type service` - 指定参数
373
+ - [ ] 验证模块
374
+ - `kite validate` - 验证当前目录的 module.md
375
+ - `kite validate <path>` - 验证指定路径
376
+ - [ ] 打包模块
377
+ - `kite pack` - 打包为 .tar.gz
378
+ - `kite pack --output dist/` - 指定输出目录
379
+ - [ ] 发布模块
380
+ - `kite publish` - 发布到配置的仓库
381
+ - `kite publish --registry <url>` - 指定仓库
382
+
383
+ **技术要点**:
384
+ - 模块模板设计
385
+ - module.md schema 验证
386
+ - 打包格式规范
387
+ - 发布协议设计
388
+
389
+ ---
390
+
391
+ ### 3.3 缓存管理
392
+
393
+ **状态**: 待开始
394
+ **预计工作量**: 1-2 天
395
+ **负责人**: 待分配
396
+
397
+ **功能需求**:
398
+ - [ ] 缓存命令
399
+ - `kite cache list` - 列出缓存内容
400
+ - `kite cache clean` - 清理所有缓存
401
+ - `kite cache clean --older-than 7d` - 清理旧缓存
402
+ - `kite cache path` - 显示缓存路径
403
+ - `kite cache size` - 显示缓存大小
404
+
405
+ **技术要点**:
406
+ - 缓存目录: `~/.kite/data/cli_cache/`
407
+ - 缓存内容: 下载的包、API 响应
408
+ - 缓存过期策略
409
+ - 缓存大小限制
410
+
411
+ ---
412
+
413
+ ## Phase 4: 安全性增强 (优先级: 低)
414
+
415
+ ### 4.1 模块验证
416
+
417
+ **状态**: 待开始
418
+ **预计工作量**: 4-5 天
419
+ **负责人**: 待分配
420
+
421
+ **功能需求**:
422
+ - [ ] 签名验证
423
+ - 验证模块签名
424
+ - 支持 GPG 签名
425
+ - [ ] 哈希校验
426
+ - 下载后校验 SHA256
427
+ - 防止中间人攻击
428
+ - [ ] 恶意代码扫描
429
+ - 基础规则扫描
430
+ - 检测可疑代码模式
431
+
432
+ ---
433
+
434
+ ### 4.2 权限管理
435
+
436
+ **状态**: 待开始
437
+ **预计工作量**: 2 天
438
+ **负责人**: 待分配
439
+
440
+ **功能需求**:
441
+ - [ ] 权限检查
442
+ - 检查安装目录写权限
443
+ - 提示需要 sudo
444
+ - [ ] 沙箱模式
445
+ - 隔离模块执行环境
446
+ - 限制文件系统访问
447
+
448
+ ---
449
+
450
+ ## Phase 5: 代码重构 (优先级: 低)
451
+
452
+ ### 5.1 消除重复代码
453
+
454
+ **状态**: 待开始
455
+ **预计工作量**: 2 天
456
+ **负责人**: 待分配
457
+
458
+ **任务**:
459
+ - [ ] 提取 `find_module_locations()` 到 utils
460
+ - [ ] 统一错误处理机制
461
+ - [ ] 统一日志输出格式
462
+ - [ ] 消除硬编码字符串
463
+
464
+ ---
465
+
466
+ ### 5.2 测试覆盖
467
+
468
+ **状态**: 待开始
469
+ **预计工作量**: 5-7 天
470
+ **负责人**: 待分配
471
+
472
+ **任务**:
473
+ - [ ] 单元测试 (pytest)
474
+ - [ ] 集成测试
475
+ - [ ] 跨平台测试 (Windows/Linux/macOS)
476
+ - [ ] CI/CD 集成
477
+
478
+ ---
479
+
480
+ ### 5.3 性能优化
481
+
482
+ **状态**: 待开始
483
+ **预计工作量**: 3 天
484
+ **负责人**: 待分配
485
+
486
+ **任务**:
487
+ - [ ] 并行下载优化
488
+ - [ ] 缓存优化
489
+ - [ ] 启动速度优化
490
+ - [ ] 内存占用优化
491
+
492
+ ---
493
+
494
+ ## 实施时间表
495
+
496
+ **第一周**: Phase 1.1 + 1.2 (版本管理 + 启用/禁用)
497
+ **第二周**: Phase 1.3 + 1.4 (批量操作 + 配置管理)
498
+ **第三周**: Phase 2.1 + 2.2 (进度显示 + 交互优化)
499
+ **第四周**: Phase 3.1 (依赖分析)
500
+ **后续**: Phase 3.2, 3.3, 4, 5 (按需实施)
501
+
502
+ ---
503
+
504
+ ## 变更日志
505
+
506
+ ### 2026-03-10
507
+ - ✅ 完成 Phase 1.4 配置管理
508
+ - 实现 `kite config` 命令(list/get/set/unset/reset)
509
+ - 创建 ConfigManager 配置管理器
510
+ - 配置文件:`~/.kite/data/cli_config.json`
511
+ - 支持 7 个配置项(default_location, pypi_mirror, npm_registry 等)
512
+ - install 命令集成配置读取(默认位置、镜像源)
513
+ - downloader 支持 PyPI 和 npm 镜像源配置
514
+ - 配置验证和类型检查
515
+ - 表格化显示配置(标记已修改项)
516
+ - 🎉 **Phase 1 核心功能完善 - 全部完成!**
517
+ - 1.1 版本管理增强 ✅
518
+ - 1.2 模块启用/禁用 ✅
519
+ - 1.3 批量操作 ✅
520
+ - 1.4 配置管理 ✅
521
+ - ✅ 完成 Phase 2.4 别名支持
522
+ - 实现 8 个命令别名(i/add/rm/remove/up/upgrade/ls/show)
523
+ - 在 argparse 解析前处理别名
524
+ - 更新帮助文档显示别名
525
+ - ✅ 完成 Phase 2.2 交互优化
526
+ - 创建 colors 工具模块
527
+ - 支持 ANSI 颜色代码(成功/错误/警告/信息等)
528
+ - 自动检测终端颜色支持(Windows/Unix)
529
+ - 集成到 outdated 命令(高亮模块名、版本号)
530
+ - 集成到 config 命令(高亮已修改配置)
531
+ - 创建 table 工具模块
532
+ - 实现表格格式化(支持对齐、最小列宽、ANSI 颜色宽度计算)
533
+ - 集成到 list 命令(表格显示模块列表)
534
+ - 集成到 search 命令(表格显示搜索结果)
535
+ - ✅ 完成 Phase 2.1 进度显示
536
+ - 创建 progress 工具模块
537
+ - 实现 ProgressBar 类(基于 tqdm,支持简单降级)
538
+ - 实现 DownloadProgress 类(下载进度显示)
539
+ - 实现 StepProgress 类(多步骤进度显示)
540
+ - 集成到 install 命令(7 步安装流程)
541
+ - 集成到 update --all 命令(批量更新进度条)
542
+ - 集成到 import 命令(批量安装进度条)
543
+ - 支持非 TTY 环境自动禁用
544
+ - 彩色进度显示(成功/失败状态)
545
+ - 🎉 **Phase 2 用户体验优化 - 基本完成!**
546
+ - 2.1 进度显示 ✅
547
+ - 2.2 交互优化 ✅
548
+ - 2.4 别名支持 ✅
549
+ - 2.3 帮助完善 ⏳(待实施)
550
+ - ✅ 完成 Phase 3.1 依赖分析
551
+ - 创建 dependency_graph 工具模块
552
+ - 实现 DependencyGraph 类(依赖图构建和分析)
553
+ - 实现 `kite deps` 命令(显示依赖树)
554
+ - 实现 `kite why` 命令(显示反向依赖和依赖路径)
555
+ - 实现 `kite check` 命令(检查依赖完整性)
556
+ - 支持缺失依赖检测
557
+ - 支持循环依赖检测
558
+ - 树形输出格式(带彩色高亮)
559
+ - 统计信息显示
560
+
561
+ ### 2026-03-09
562
+ - ✅ 完成 Phase 1.1 版本管理增强
563
+ - 实现 `kite outdated` 命令
564
+ - 为 `kite list` 添加 `--outdated` 选项
565
+ - 支持按位置筛选可更新模块
566
+ - 表格化显示可更新模块信息
567
+ - ✅ 完成 Phase 1.2 模块启用/禁用
568
+ - 实现 `kite enable <name>` 命令
569
+ - 实现 `kite disable <name>` 命令
570
+ - 为 `kite list` 添加 `--disabled` 和 `--enabled` 选项
571
+ - 支持读取和修改 module.md 的 state 字段
572
+ - 添加操作日志记录
573
+ - 在列表中显示模块状态(✓ 启用 / ○ 禁用)
574
+ - ✅ 完成 Phase 1.3 批量操作
575
+ - 实现 `kite update --all` 批量更新所有模块
576
+ - 实现 `kite export` 导出模块列表(支持 text/json 格式)
577
+ - 实现 `kite import` 从文件批量安装模块
578
+ - 支持从 stdin 读取(`kite import -`)
579
+ - 显示批量操作进度和统计信息
580
+ - 更新开发计划文档
581
+ - 更新已完成功能列表(19 个命令)
582
+ - 标记 Phase 1.1、1.2、1.3 完成状态
583
+ - Phase 1 核心功能完善全部完成!
584
+ - 准备开始实施 Phase 2(用户体验优化)
585
+
586
+ ### 2026-03-07
587
+ - ✓ 实现 `kite update --to <version>` 功能
588
+ - 支持 PyPI 和 npm 平台的版本指定
589
+ - Git 源显示警告提示
590
+ - 更新帮助文档和确认提示
591
+
592
+ ### 2026-03-06
593
+ - 创建开发计划文档
594
+ - 定义 Phase 1-5 的详细任务
595
+ - 设定优先级和时间表