@baimingtao/lbs-agent 1.0.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 (1114) hide show
  1. package/AGENTS.md +54 -0
  2. package/README.md +181 -0
  3. package/SOUL.md +31 -0
  4. package/application/__init__.py +1 -0
  5. package/application/container.py +376 -0
  6. package/application/contracts/__init__.py +5 -0
  7. package/application/contracts/result.py +84 -0
  8. package/application/onboarding.py +243 -0
  9. package/application/runtime_factory.py +198 -0
  10. package/application/runtime_paths.py +61 -0
  11. package/application/services/__init__.py +1 -0
  12. package/application/services/agent_service.py +159 -0
  13. package/application/services/cron_service.py +49 -0
  14. package/application/services/gateway_service.py +156 -0
  15. package/application/services/interactive_service.py +275 -0
  16. package/application/services/mcp_service.py +102 -0
  17. package/application/services/model_service.py +519 -0
  18. package/application/services/orchestration_service.py +169 -0
  19. package/application/services/session_service.py +130 -0
  20. package/application/services/skill_service.py +369 -0
  21. package/application/services/tool_service.py +165 -0
  22. package/bin/lbs.js +109 -0
  23. package/config/__init__.py +2 -0
  24. package/config/config.py +453 -0
  25. package/config/config_contract.py +198 -0
  26. package/config/mcp.yaml +30 -0
  27. package/config/state_root.py +28 -0
  28. package/extensions/mcps/optional/linear/manifest.yaml +38 -0
  29. package/extensions/mcps/optional/n8n/manifest.yaml +77 -0
  30. package/extensions/mcps/optional/unreal-engine/manifest.yaml +54 -0
  31. package/extensions/prompts/agents/audit.md +46 -0
  32. package/extensions/prompts/agents/auditor.md +71 -0
  33. package/extensions/prompts/agents/browser_worker.md +56 -0
  34. package/extensions/prompts/agents/chat.md +23 -0
  35. package/extensions/prompts/agents/code.md +52 -0
  36. package/extensions/prompts/agents/data_analyst.md +39 -0
  37. package/extensions/prompts/agents/document.md +19 -0
  38. package/extensions/prompts/agents/email_agent.md +30 -0
  39. package/extensions/prompts/agents/github_agent.md +33 -0
  40. package/extensions/prompts/agents/planner.md +40 -0
  41. package/extensions/prompts/agents/research.md +50 -0
  42. package/extensions/prompts/agents/security.md +28 -0
  43. package/extensions/prompts/agents/verifier.md +28 -0
  44. package/extensions/prompts/agents/vision.md +27 -0
  45. package/extensions/skills/builtin/autonomous-ai-agents/DESCRIPTION.md +3 -0
  46. package/extensions/skills/builtin/autonomous-ai-agents/claude-code/SKILL.md +669 -0
  47. package/extensions/skills/builtin/autonomous-ai-agents/codex/SKILL.md +138 -0
  48. package/extensions/skills/builtin/autonomous-ai-agents/hermes-agent/SKILL.md +728 -0
  49. package/extensions/skills/builtin/autonomous-ai-agents/hermes-agent/references/native-mcp.md +344 -0
  50. package/extensions/skills/builtin/autonomous-ai-agents/hermes-agent/references/webhooks.md +193 -0
  51. package/extensions/skills/builtin/autonomous-ai-agents/opencode/SKILL.md +219 -0
  52. package/extensions/skills/builtin/browser-use/SKILL.md +152 -0
  53. package/extensions/skills/builtin/computer-use/SKILL.md +242 -0
  54. package/extensions/skills/builtin/creative/DESCRIPTION.md +3 -0
  55. package/extensions/skills/builtin/creative/architecture-diagram/SKILL.md +148 -0
  56. package/extensions/skills/builtin/creative/architecture-diagram/templates/template.html +319 -0
  57. package/extensions/skills/builtin/creative/ascii-art/SKILL.md +322 -0
  58. package/extensions/skills/builtin/creative/ascii-video/README.md +290 -0
  59. package/extensions/skills/builtin/creative/ascii-video/SKILL.md +241 -0
  60. package/extensions/skills/builtin/creative/ascii-video/references/architecture.md +568 -0
  61. package/extensions/skills/builtin/creative/ascii-video/references/composition.md +662 -0
  62. package/extensions/skills/builtin/creative/ascii-video/references/effects.md +640 -0
  63. package/extensions/skills/builtin/creative/ascii-video/references/inputs.md +685 -0
  64. package/extensions/skills/builtin/creative/ascii-video/references/optimization.md +688 -0
  65. package/extensions/skills/builtin/creative/ascii-video/references/scenes.md +741 -0
  66. package/extensions/skills/builtin/creative/ascii-video/references/shaders.md +683 -0
  67. package/extensions/skills/builtin/creative/ascii-video/references/troubleshooting.md +367 -0
  68. package/extensions/skills/builtin/creative/baoyu-infographic/PORT_NOTES.md +43 -0
  69. package/extensions/skills/builtin/creative/baoyu-infographic/SKILL.md +237 -0
  70. package/extensions/skills/builtin/creative/baoyu-infographic/references/analysis-framework.md +182 -0
  71. package/extensions/skills/builtin/creative/baoyu-infographic/references/base-prompt.md +43 -0
  72. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/bento-grid.md +41 -0
  73. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/binary-comparison.md +48 -0
  74. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/bridge.md +41 -0
  75. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/circular-flow.md +41 -0
  76. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/comic-strip.md +41 -0
  77. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/comparison-matrix.md +41 -0
  78. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/dashboard.md +41 -0
  79. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/dense-modules.md +72 -0
  80. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/funnel.md +41 -0
  81. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/hierarchical-layers.md +48 -0
  82. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/hub-spoke.md +41 -0
  83. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/iceberg.md +41 -0
  84. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/isometric-map.md +41 -0
  85. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/jigsaw.md +41 -0
  86. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/linear-progression.md +48 -0
  87. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/periodic-table.md +41 -0
  88. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/story-mountain.md +41 -0
  89. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/structural-breakdown.md +48 -0
  90. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/tree-branching.md +41 -0
  91. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/venn-diagram.md +41 -0
  92. package/extensions/skills/builtin/creative/baoyu-infographic/references/layouts/winding-roadmap.md +41 -0
  93. package/extensions/skills/builtin/creative/baoyu-infographic/references/structured-content-template.md +244 -0
  94. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/aged-academia.md +36 -0
  95. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/bold-graphic.md +36 -0
  96. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/chalkboard.md +61 -0
  97. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/claymation.md +29 -0
  98. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/corporate-memphis.md +29 -0
  99. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/craft-handmade.md +44 -0
  100. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/cyberpunk-neon.md +29 -0
  101. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/hand-drawn-edu.md +63 -0
  102. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/ikea-manual.md +29 -0
  103. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/kawaii.md +29 -0
  104. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/knolling.md +29 -0
  105. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/lego-brick.md +29 -0
  106. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/morandi-journal.md +60 -0
  107. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/origami.md +29 -0
  108. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/pixel-art.md +29 -0
  109. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/pop-laboratory.md +48 -0
  110. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/retro-pop-grid.md +47 -0
  111. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/storybook-watercolor.md +29 -0
  112. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/subway-map.md +29 -0
  113. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/technical-schematic.md +36 -0
  114. package/extensions/skills/builtin/creative/baoyu-infographic/references/styles/ui-wireframe.md +29 -0
  115. package/extensions/skills/builtin/creative/claude-design/SKILL.md +591 -0
  116. package/extensions/skills/builtin/creative/comfyui/SKILL.md +609 -0
  117. package/extensions/skills/builtin/creative/comfyui/references/official-cli.md +252 -0
  118. package/extensions/skills/builtin/creative/comfyui/references/rest-api.md +297 -0
  119. package/extensions/skills/builtin/creative/comfyui/references/template-integrity.md +227 -0
  120. package/extensions/skills/builtin/creative/comfyui/references/workflow-format.md +205 -0
  121. package/extensions/skills/builtin/creative/comfyui/scripts/_common.py +835 -0
  122. package/extensions/skills/builtin/creative/comfyui/scripts/auto_fix_deps.py +225 -0
  123. package/extensions/skills/builtin/creative/comfyui/scripts/check_deps.py +437 -0
  124. package/extensions/skills/builtin/creative/comfyui/scripts/comfyui_setup.sh +286 -0
  125. package/extensions/skills/builtin/creative/comfyui/scripts/extract_schema.py +315 -0
  126. package/extensions/skills/builtin/creative/comfyui/scripts/fetch_logs.py +157 -0
  127. package/extensions/skills/builtin/creative/comfyui/scripts/hardware_check.py +497 -0
  128. package/extensions/skills/builtin/creative/comfyui/scripts/health_check.py +223 -0
  129. package/extensions/skills/builtin/creative/comfyui/scripts/run_batch.py +243 -0
  130. package/extensions/skills/builtin/creative/comfyui/scripts/run_workflow.py +796 -0
  131. package/extensions/skills/builtin/creative/comfyui/scripts/ws_monitor.py +267 -0
  132. package/extensions/skills/builtin/creative/comfyui/tests/README.md +44 -0
  133. package/extensions/skills/builtin/creative/comfyui/tests/conftest.py +64 -0
  134. package/extensions/skills/builtin/creative/comfyui/tests/pytest.ini +5 -0
  135. package/extensions/skills/builtin/creative/comfyui/tests/test_check_deps.py +68 -0
  136. package/extensions/skills/builtin/creative/comfyui/tests/test_cloud_integration.py +95 -0
  137. package/extensions/skills/builtin/creative/comfyui/tests/test_common.py +443 -0
  138. package/extensions/skills/builtin/creative/comfyui/tests/test_extract_schema.py +184 -0
  139. package/extensions/skills/builtin/creative/comfyui/tests/test_run_workflow.py +210 -0
  140. package/extensions/skills/builtin/creative/comfyui/workflows/README.md +86 -0
  141. package/extensions/skills/builtin/creative/comfyui/workflows/animatediff_video.json +64 -0
  142. package/extensions/skills/builtin/creative/comfyui/workflows/flux_dev_txt2img.json +78 -0
  143. package/extensions/skills/builtin/creative/comfyui/workflows/sd15_txt2img.json +49 -0
  144. package/extensions/skills/builtin/creative/comfyui/workflows/sdxl_img2img.json +54 -0
  145. package/extensions/skills/builtin/creative/comfyui/workflows/sdxl_inpaint.json +59 -0
  146. package/extensions/skills/builtin/creative/comfyui/workflows/sdxl_txt2img.json +49 -0
  147. package/extensions/skills/builtin/creative/comfyui/workflows/upscale_4x.json +27 -0
  148. package/extensions/skills/builtin/creative/comfyui/workflows/wan_video_t2v.json +69 -0
  149. package/extensions/skills/builtin/creative/design-md/SKILL.md +171 -0
  150. package/extensions/skills/builtin/creative/design-md/templates/starter.md +92 -0
  151. package/extensions/skills/builtin/creative/excalidraw/SKILL.md +195 -0
  152. package/extensions/skills/builtin/creative/excalidraw/references/colors.md +44 -0
  153. package/extensions/skills/builtin/creative/excalidraw/references/dark-mode.md +67 -0
  154. package/extensions/skills/builtin/creative/excalidraw/references/examples.md +140 -0
  155. package/extensions/skills/builtin/creative/excalidraw/scripts/upload.py +133 -0
  156. package/extensions/skills/builtin/creative/humanizer/LICENSE +21 -0
  157. package/extensions/skills/builtin/creative/humanizer/SKILL.md +578 -0
  158. package/extensions/skills/builtin/creative/manim-video/README.md +23 -0
  159. package/extensions/skills/builtin/creative/manim-video/SKILL.md +269 -0
  160. package/extensions/skills/builtin/creative/manim-video/references/animation-design-thinking.md +161 -0
  161. package/extensions/skills/builtin/creative/manim-video/references/animations.md +282 -0
  162. package/extensions/skills/builtin/creative/manim-video/references/camera-and-3d.md +135 -0
  163. package/extensions/skills/builtin/creative/manim-video/references/decorations.md +202 -0
  164. package/extensions/skills/builtin/creative/manim-video/references/equations.md +216 -0
  165. package/extensions/skills/builtin/creative/manim-video/references/graphs-and-data.md +163 -0
  166. package/extensions/skills/builtin/creative/manim-video/references/mobjects.md +333 -0
  167. package/extensions/skills/builtin/creative/manim-video/references/paper-explainer.md +255 -0
  168. package/extensions/skills/builtin/creative/manim-video/references/production-quality.md +190 -0
  169. package/extensions/skills/builtin/creative/manim-video/references/rendering.md +185 -0
  170. package/extensions/skills/builtin/creative/manim-video/references/scene-planning.md +118 -0
  171. package/extensions/skills/builtin/creative/manim-video/references/troubleshooting.md +135 -0
  172. package/extensions/skills/builtin/creative/manim-video/references/updaters-and-trackers.md +260 -0
  173. package/extensions/skills/builtin/creative/manim-video/references/visual-design.md +124 -0
  174. package/extensions/skills/builtin/creative/manim-video/scripts/setup.sh +14 -0
  175. package/extensions/skills/builtin/creative/p5js/README.md +64 -0
  176. package/extensions/skills/builtin/creative/p5js/SKILL.md +555 -0
  177. package/extensions/skills/builtin/creative/p5js/references/animation.md +439 -0
  178. package/extensions/skills/builtin/creative/p5js/references/color-systems.md +352 -0
  179. package/extensions/skills/builtin/creative/p5js/references/core-api.md +410 -0
  180. package/extensions/skills/builtin/creative/p5js/references/export-pipeline.md +566 -0
  181. package/extensions/skills/builtin/creative/p5js/references/interaction.md +398 -0
  182. package/extensions/skills/builtin/creative/p5js/references/shapes-and-geometry.md +300 -0
  183. package/extensions/skills/builtin/creative/p5js/references/troubleshooting.md +532 -0
  184. package/extensions/skills/builtin/creative/p5js/references/typography.md +302 -0
  185. package/extensions/skills/builtin/creative/p5js/references/visual-effects.md +895 -0
  186. package/extensions/skills/builtin/creative/p5js/references/webgl-and-3d.md +423 -0
  187. package/extensions/skills/builtin/creative/p5js/scripts/export-frames.js +179 -0
  188. package/extensions/skills/builtin/creative/p5js/scripts/render.sh +108 -0
  189. package/extensions/skills/builtin/creative/p5js/scripts/serve.sh +28 -0
  190. package/extensions/skills/builtin/creative/p5js/scripts/setup.sh +87 -0
  191. package/extensions/skills/builtin/creative/p5js/templates/viewer.html +395 -0
  192. package/extensions/skills/builtin/creative/popular-web-designs/SKILL.md +202 -0
  193. package/extensions/skills/builtin/creative/popular-web-designs/templates/airbnb.md +259 -0
  194. package/extensions/skills/builtin/creative/popular-web-designs/templates/airtable.md +102 -0
  195. package/extensions/skills/builtin/creative/popular-web-designs/templates/apple.md +326 -0
  196. package/extensions/skills/builtin/creative/popular-web-designs/templates/bmw.md +193 -0
  197. package/extensions/skills/builtin/creative/popular-web-designs/templates/cal.md +272 -0
  198. package/extensions/skills/builtin/creative/popular-web-designs/templates/claude.md +325 -0
  199. package/extensions/skills/builtin/creative/popular-web-designs/templates/clay.md +317 -0
  200. package/extensions/skills/builtin/creative/popular-web-designs/templates/clickhouse.md +294 -0
  201. package/extensions/skills/builtin/creative/popular-web-designs/templates/cohere.md +279 -0
  202. package/extensions/skills/builtin/creative/popular-web-designs/templates/coinbase.md +142 -0
  203. package/extensions/skills/builtin/creative/popular-web-designs/templates/composio.md +320 -0
  204. package/extensions/skills/builtin/creative/popular-web-designs/templates/cursor.md +322 -0
  205. package/extensions/skills/builtin/creative/popular-web-designs/templates/elevenlabs.md +278 -0
  206. package/extensions/skills/builtin/creative/popular-web-designs/templates/expo.md +294 -0
  207. package/extensions/skills/builtin/creative/popular-web-designs/templates/figma.md +233 -0
  208. package/extensions/skills/builtin/creative/popular-web-designs/templates/framer.md +259 -0
  209. package/extensions/skills/builtin/creative/popular-web-designs/templates/hashicorp.md +291 -0
  210. package/extensions/skills/builtin/creative/popular-web-designs/templates/ibm.md +345 -0
  211. package/extensions/skills/builtin/creative/popular-web-designs/templates/intercom.md +159 -0
  212. package/extensions/skills/builtin/creative/popular-web-designs/templates/kraken.md +138 -0
  213. package/extensions/skills/builtin/creative/popular-web-designs/templates/linear.app.md +380 -0
  214. package/extensions/skills/builtin/creative/popular-web-designs/templates/lovable.md +311 -0
  215. package/extensions/skills/builtin/creative/popular-web-designs/templates/minimax.md +270 -0
  216. package/extensions/skills/builtin/creative/popular-web-designs/templates/mintlify.md +339 -0
  217. package/extensions/skills/builtin/creative/popular-web-designs/templates/miro.md +121 -0
  218. package/extensions/skills/builtin/creative/popular-web-designs/templates/mistral.ai.md +274 -0
  219. package/extensions/skills/builtin/creative/popular-web-designs/templates/mongodb.md +279 -0
  220. package/extensions/skills/builtin/creative/popular-web-designs/templates/notion.md +322 -0
  221. package/extensions/skills/builtin/creative/popular-web-designs/templates/nvidia.md +306 -0
  222. package/extensions/skills/builtin/creative/popular-web-designs/templates/ollama.md +280 -0
  223. package/extensions/skills/builtin/creative/popular-web-designs/templates/opencode.ai.md +294 -0
  224. package/extensions/skills/builtin/creative/popular-web-designs/templates/pinterest.md +243 -0
  225. package/extensions/skills/builtin/creative/popular-web-designs/templates/posthog.md +269 -0
  226. package/extensions/skills/builtin/creative/popular-web-designs/templates/raycast.md +281 -0
  227. package/extensions/skills/builtin/creative/popular-web-designs/templates/replicate.md +274 -0
  228. package/extensions/skills/builtin/creative/popular-web-designs/templates/resend.md +316 -0
  229. package/extensions/skills/builtin/creative/popular-web-designs/templates/revolut.md +198 -0
  230. package/extensions/skills/builtin/creative/popular-web-designs/templates/runwayml.md +257 -0
  231. package/extensions/skills/builtin/creative/popular-web-designs/templates/sanity.md +370 -0
  232. package/extensions/skills/builtin/creative/popular-web-designs/templates/sentry.md +275 -0
  233. package/extensions/skills/builtin/creative/popular-web-designs/templates/spacex.md +207 -0
  234. package/extensions/skills/builtin/creative/popular-web-designs/templates/spotify.md +259 -0
  235. package/extensions/skills/builtin/creative/popular-web-designs/templates/stripe.md +335 -0
  236. package/extensions/skills/builtin/creative/popular-web-designs/templates/supabase.md +268 -0
  237. package/extensions/skills/builtin/creative/popular-web-designs/templates/superhuman.md +265 -0
  238. package/extensions/skills/builtin/creative/popular-web-designs/templates/together.ai.md +276 -0
  239. package/extensions/skills/builtin/creative/popular-web-designs/templates/uber.md +308 -0
  240. package/extensions/skills/builtin/creative/popular-web-designs/templates/vercel.md +323 -0
  241. package/extensions/skills/builtin/creative/popular-web-designs/templates/voltagent.md +336 -0
  242. package/extensions/skills/builtin/creative/popular-web-designs/templates/warp.md +265 -0
  243. package/extensions/skills/builtin/creative/popular-web-designs/templates/webflow.md +105 -0
  244. package/extensions/skills/builtin/creative/popular-web-designs/templates/wise.md +186 -0
  245. package/extensions/skills/builtin/creative/popular-web-designs/templates/x.ai.md +270 -0
  246. package/extensions/skills/builtin/creative/popular-web-designs/templates/zapier.md +341 -0
  247. package/extensions/skills/builtin/creative/pretext/SKILL.md +220 -0
  248. package/extensions/skills/builtin/creative/pretext/references/patterns.md +258 -0
  249. package/extensions/skills/builtin/creative/pretext/templates/donut-orbit.html +1468 -0
  250. package/extensions/skills/builtin/creative/pretext/templates/hello-orb-flow.html +95 -0
  251. package/extensions/skills/builtin/creative/sketch/SKILL.md +218 -0
  252. package/extensions/skills/builtin/creative/songwriting-and-ai-music/SKILL.md +273 -0
  253. package/extensions/skills/builtin/creative/touchdesigner-mcp/SKILL.md +356 -0
  254. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/3d-scene.md +275 -0
  255. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/animation.md +221 -0
  256. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/audio-reactive.md +175 -0
  257. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/dat-scripting.md +352 -0
  258. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/external-data.md +322 -0
  259. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/geometry-comp.md +121 -0
  260. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/glsl.md +151 -0
  261. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/layout-compositor.md +131 -0
  262. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/mcp-tools.md +382 -0
  263. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/midi-osc.md +210 -0
  264. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/network-patterns.md +767 -0
  265. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/operator-tips.md +106 -0
  266. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/operators.md +239 -0
  267. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/panel-ui.md +281 -0
  268. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/particles.md +245 -0
  269. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/pitfalls.md +568 -0
  270. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/postfx.md +183 -0
  271. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/projection-mapping.md +211 -0
  272. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/python-api.md +463 -0
  273. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/replicator.md +197 -0
  274. package/extensions/skills/builtin/creative/touchdesigner-mcp/references/troubleshooting.md +244 -0
  275. package/extensions/skills/builtin/creative/touchdesigner-mcp/scripts/setup.sh +115 -0
  276. package/extensions/skills/builtin/data-science/DESCRIPTION.md +3 -0
  277. package/extensions/skills/builtin/data-science/jupyter-live-kernel/SKILL.md +152 -0
  278. package/extensions/skills/builtin/dogfood/SKILL.md +162 -0
  279. package/extensions/skills/builtin/dogfood/references/issue-taxonomy.md +109 -0
  280. package/extensions/skills/builtin/dogfood/templates/dogfood-report-template.md +86 -0
  281. package/extensions/skills/builtin/email/DESCRIPTION.md +3 -0
  282. package/extensions/skills/builtin/email/himalaya/SKILL.md +302 -0
  283. package/extensions/skills/builtin/email/himalaya/references/configuration.md +216 -0
  284. package/extensions/skills/builtin/email/himalaya/references/message-composition.md +199 -0
  285. package/extensions/skills/builtin/github/DESCRIPTION.md +3 -0
  286. package/extensions/skills/builtin/github/codebase-inspection/SKILL.md +116 -0
  287. package/extensions/skills/builtin/github/github-auth/SKILL.md +247 -0
  288. package/extensions/skills/builtin/github/github-auth/scripts/gh-env.sh +66 -0
  289. package/extensions/skills/builtin/github/github-code-review/SKILL.md +481 -0
  290. package/extensions/skills/builtin/github/github-code-review/references/review-output-template.md +74 -0
  291. package/extensions/skills/builtin/github/github-issues/SKILL.md +370 -0
  292. package/extensions/skills/builtin/github/github-issues/templates/bug-report.md +35 -0
  293. package/extensions/skills/builtin/github/github-issues/templates/feature-request.md +31 -0
  294. package/extensions/skills/builtin/github/github-pr-workflow/SKILL.md +367 -0
  295. package/extensions/skills/builtin/github/github-pr-workflow/references/ci-troubleshooting.md +183 -0
  296. package/extensions/skills/builtin/github/github-pr-workflow/references/conventional-commits.md +71 -0
  297. package/extensions/skills/builtin/github/github-pr-workflow/templates/pr-body-bugfix.md +35 -0
  298. package/extensions/skills/builtin/github/github-pr-workflow/templates/pr-body-feature.md +33 -0
  299. package/extensions/skills/builtin/github/github-repo-management/SKILL.md +516 -0
  300. package/extensions/skills/builtin/github/github-repo-management/references/github-api-cheatsheet.md +161 -0
  301. package/extensions/skills/builtin/index-cache/anthropics_skills_skills_.json +1 -0
  302. package/extensions/skills/builtin/index-cache/claude_marketplace_anthropics_skills.json +1 -0
  303. package/extensions/skills/builtin/index-cache/lobehub_index.json +1 -0
  304. package/extensions/skills/builtin/index-cache/openai_skills_skills_.json +1 -0
  305. package/extensions/skills/builtin/media/DESCRIPTION.md +3 -0
  306. package/extensions/skills/builtin/media/gif-search/SKILL.md +91 -0
  307. package/extensions/skills/builtin/media/heartmula/SKILL.md +171 -0
  308. package/extensions/skills/builtin/media/songsee/SKILL.md +83 -0
  309. package/extensions/skills/builtin/media/youtube-content/SKILL.md +75 -0
  310. package/extensions/skills/builtin/media/youtube-content/references/output-formats.md +56 -0
  311. package/extensions/skills/builtin/media/youtube-content/scripts/fetch_transcript.py +124 -0
  312. package/extensions/skills/builtin/mlops/DESCRIPTION.md +3 -0
  313. package/extensions/skills/builtin/mlops/evaluation/DESCRIPTION.md +3 -0
  314. package/extensions/skills/builtin/mlops/evaluation/lm-evaluation-harness/SKILL.md +495 -0
  315. package/extensions/skills/builtin/mlops/evaluation/lm-evaluation-harness/references/api-evaluation.md +490 -0
  316. package/extensions/skills/builtin/mlops/evaluation/lm-evaluation-harness/references/benchmark-guide.md +488 -0
  317. package/extensions/skills/builtin/mlops/evaluation/lm-evaluation-harness/references/custom-tasks.md +602 -0
  318. package/extensions/skills/builtin/mlops/evaluation/lm-evaluation-harness/references/distributed-eval.md +519 -0
  319. package/extensions/skills/builtin/mlops/evaluation/weights-and-biases/SKILL.md +592 -0
  320. package/extensions/skills/builtin/mlops/evaluation/weights-and-biases/references/artifacts.md +584 -0
  321. package/extensions/skills/builtin/mlops/evaluation/weights-and-biases/references/integrations.md +700 -0
  322. package/extensions/skills/builtin/mlops/evaluation/weights-and-biases/references/sweeps.md +846 -0
  323. package/extensions/skills/builtin/mlops/huggingface-hub/SKILL.md +81 -0
  324. package/extensions/skills/builtin/mlops/inference/DESCRIPTION.md +3 -0
  325. package/extensions/skills/builtin/mlops/inference/llama-cpp/SKILL.md +249 -0
  326. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/advanced-usage.md +504 -0
  327. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/hub-discovery.md +168 -0
  328. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/optimization.md +89 -0
  329. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/quantization.md +243 -0
  330. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/server.md +150 -0
  331. package/extensions/skills/builtin/mlops/inference/llama-cpp/references/troubleshooting.md +442 -0
  332. package/extensions/skills/builtin/mlops/inference/vllm/SKILL.md +369 -0
  333. package/extensions/skills/builtin/mlops/inference/vllm/references/optimization.md +226 -0
  334. package/extensions/skills/builtin/mlops/inference/vllm/references/quantization.md +284 -0
  335. package/extensions/skills/builtin/mlops/inference/vllm/references/server-deployment.md +255 -0
  336. package/extensions/skills/builtin/mlops/inference/vllm/references/troubleshooting.md +448 -0
  337. package/extensions/skills/builtin/mlops/models/DESCRIPTION.md +3 -0
  338. package/extensions/skills/builtin/mlops/models/audiocraft/SKILL.md +568 -0
  339. package/extensions/skills/builtin/mlops/models/audiocraft/references/advanced-usage.md +666 -0
  340. package/extensions/skills/builtin/mlops/models/audiocraft/references/troubleshooting.md +504 -0
  341. package/extensions/skills/builtin/mlops/models/segment-anything/SKILL.md +506 -0
  342. package/extensions/skills/builtin/mlops/models/segment-anything/references/advanced-usage.md +589 -0
  343. package/extensions/skills/builtin/mlops/models/segment-anything/references/troubleshooting.md +484 -0
  344. package/extensions/skills/builtin/note-taking/DESCRIPTION.md +3 -0
  345. package/extensions/skills/builtin/note-taking/obsidian/SKILL.md +61 -0
  346. package/extensions/skills/builtin/productivity/DESCRIPTION.md +3 -0
  347. package/extensions/skills/builtin/productivity/airtable/SKILL.md +229 -0
  348. package/extensions/skills/builtin/productivity/google-workspace/SKILL.md +314 -0
  349. package/extensions/skills/builtin/productivity/google-workspace/references/gmail-search-syntax.md +63 -0
  350. package/extensions/skills/builtin/productivity/google-workspace/scripts/_hermes_home.py +42 -0
  351. package/extensions/skills/builtin/productivity/google-workspace/scripts/google_api.py +1225 -0
  352. package/extensions/skills/builtin/productivity/google-workspace/scripts/gws_bridge.py +111 -0
  353. package/extensions/skills/builtin/productivity/google-workspace/scripts/setup.py +481 -0
  354. package/extensions/skills/builtin/productivity/maps/SKILL.md +182 -0
  355. package/extensions/skills/builtin/productivity/maps/scripts/maps_client.py +1297 -0
  356. package/extensions/skills/builtin/productivity/nano-pdf/SKILL.md +52 -0
  357. package/extensions/skills/builtin/productivity/notion/SKILL.md +448 -0
  358. package/extensions/skills/builtin/productivity/notion/references/block-types.md +112 -0
  359. package/extensions/skills/builtin/productivity/ocr-and-documents/DESCRIPTION.md +3 -0
  360. package/extensions/skills/builtin/productivity/ocr-and-documents/SKILL.md +172 -0
  361. package/extensions/skills/builtin/productivity/ocr-and-documents/scripts/extract_marker.py +87 -0
  362. package/extensions/skills/builtin/productivity/ocr-and-documents/scripts/extract_pymupdf.py +98 -0
  363. package/extensions/skills/builtin/productivity/petdex/SKILL.md +76 -0
  364. package/extensions/skills/builtin/productivity/powerpoint/LICENSE.txt +30 -0
  365. package/extensions/skills/builtin/productivity/powerpoint/SKILL.md +237 -0
  366. package/extensions/skills/builtin/productivity/powerpoint/editing.md +205 -0
  367. package/extensions/skills/builtin/productivity/powerpoint/pptxgenjs.md +420 -0
  368. package/extensions/skills/builtin/productivity/powerpoint/scripts/__init__.py +0 -0
  369. package/extensions/skills/builtin/productivity/powerpoint/scripts/add_slide.py +195 -0
  370. package/extensions/skills/builtin/productivity/powerpoint/scripts/clean.py +286 -0
  371. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/helpers/__init__.py +0 -0
  372. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/helpers/merge_runs.py +199 -0
  373. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/helpers/simplify_redlines.py +197 -0
  374. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/pack.py +159 -0
  375. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  376. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  377. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  378. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  379. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  380. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  381. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  382. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  383. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  384. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  385. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  386. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  387. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  388. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  389. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  390. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  391. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  392. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  393. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  394. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  395. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  396. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  397. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  398. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  399. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  400. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  401. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  402. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-contentTypes.xsd +42 -0
  403. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-coreProperties.xsd +50 -0
  404. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-digSig.xsd +49 -0
  405. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/ecma/fourth-edition/opc-relationships.xsd +33 -0
  406. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/mce/mc.xsd +75 -0
  407. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  408. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  409. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  410. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  411. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  412. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  413. package/extensions/skills/builtin/productivity/powerpoint/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  414. package/extensions/skills/builtin/productivity/teams-meeting-pipeline/SKILL.md +116 -0
  415. package/extensions/skills/builtin/research/DESCRIPTION.md +3 -0
  416. package/extensions/skills/builtin/research/arxiv/SKILL.md +282 -0
  417. package/extensions/skills/builtin/research/arxiv/scripts/search_arxiv.py +114 -0
  418. package/extensions/skills/builtin/research/blogwatcher/SKILL.md +137 -0
  419. package/extensions/skills/builtin/research/llm-wiki/SKILL.md +449 -0
  420. package/extensions/skills/builtin/research/polymarket/SKILL.md +75 -0
  421. package/extensions/skills/builtin/research/polymarket/references/api-endpoints.md +220 -0
  422. package/extensions/skills/builtin/research/polymarket/scripts/polymarket.py +284 -0
  423. package/extensions/skills/builtin/research/research-paper-writing/SKILL.md +813 -0
  424. package/extensions/skills/builtin/research/research-paper-writing/references/autoreason-methodology.md +394 -0
  425. package/extensions/skills/builtin/research/research-paper-writing/references/checklists.md +434 -0
  426. package/extensions/skills/builtin/research/research-paper-writing/references/citation-workflow.md +564 -0
  427. package/extensions/skills/builtin/research/research-paper-writing/references/experiment-patterns.md +728 -0
  428. package/extensions/skills/builtin/research/research-paper-writing/references/human-evaluation.md +476 -0
  429. package/extensions/skills/builtin/research/research-paper-writing/references/paper-types.md +481 -0
  430. package/extensions/skills/builtin/research/research-paper-writing/references/reviewer-guidelines.md +433 -0
  431. package/extensions/skills/builtin/research/research-paper-writing/references/sources.md +191 -0
  432. package/extensions/skills/builtin/research/research-paper-writing/references/writing-guide.md +474 -0
  433. package/extensions/skills/builtin/research/research-paper-writing/templates/README.md +251 -0
  434. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/README.md +534 -0
  435. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  436. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  437. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  438. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  439. package/extensions/skills/builtin/research/research-paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  440. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/README.md +48 -0
  441. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/acl.sty +312 -0
  442. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/acl_latex.tex +377 -0
  443. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/acl_lualatex.tex +101 -0
  444. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/acl_natbib.bst +1940 -0
  445. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/anthology.bib.txt +26 -0
  446. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/custom.bib +70 -0
  447. package/extensions/skills/builtin/research/research-paper-writing/templates/acl/formatting.md +322 -0
  448. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/README.md +3 -0
  449. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  450. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  451. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  452. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  453. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  454. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  455. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/math_commands.tex +508 -0
  456. package/extensions/skills/builtin/research/research-paper-writing/templates/colm2025/natbib.sty +1246 -0
  457. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  458. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  459. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  460. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  461. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  462. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  463. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/math_commands.tex +508 -0
  464. package/extensions/skills/builtin/research/research-paper-writing/templates/iclr2026/natbib.sty +1246 -0
  465. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/algorithm.sty +79 -0
  466. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/algorithmic.sty +201 -0
  467. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/example_paper.bib +75 -0
  468. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/example_paper.pdf +0 -0
  469. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/example_paper.tex +662 -0
  470. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  471. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/icml2026.bst +1443 -0
  472. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/icml2026.sty +767 -0
  473. package/extensions/skills/builtin/research/research-paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  474. package/extensions/skills/builtin/research/research-paper-writing/templates/neurips2025/Makefile +36 -0
  475. package/extensions/skills/builtin/research/research-paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  476. package/extensions/skills/builtin/research/research-paper-writing/templates/neurips2025/main.tex +38 -0
  477. package/extensions/skills/builtin/research/research-paper-writing/templates/neurips2025/neurips.sty +382 -0
  478. package/extensions/skills/builtin/research/web-research/SKILL.md +10 -0
  479. package/extensions/skills/builtin/smart-home/DESCRIPTION.md +3 -0
  480. package/extensions/skills/builtin/smart-home/openhue/SKILL.md +109 -0
  481. package/extensions/skills/builtin/social-media/DESCRIPTION.md +3 -0
  482. package/extensions/skills/builtin/social-media/xurl/SKILL.md +429 -0
  483. package/extensions/skills/builtin/software-development/hermes-agent-skill-authoring/SKILL.md +196 -0
  484. package/extensions/skills/builtin/software-development/node-inspect-debugger/SKILL.md +319 -0
  485. package/extensions/skills/builtin/software-development/plan/SKILL.md +338 -0
  486. package/extensions/skills/builtin/software-development/python-debugpy/SKILL.md +375 -0
  487. package/extensions/skills/builtin/software-development/requesting-code-review/SKILL.md +275 -0
  488. package/extensions/skills/builtin/software-development/simplify-code/SKILL.md +118 -0
  489. package/extensions/skills/builtin/software-development/spike/SKILL.md +197 -0
  490. package/extensions/skills/builtin/software-development/systematic-debugging/SKILL.md +411 -0
  491. package/extensions/skills/builtin/software-development/test-driven-development/SKILL.md +362 -0
  492. package/extensions/skills/builtin/yuanbao/SKILL.md +108 -0
  493. package/extensions/skills/optional/DESCRIPTION.md +22 -0
  494. package/extensions/skills/optional/autonomous-ai-agents/DESCRIPTION.md +1 -0
  495. package/extensions/skills/optional/autonomous-ai-agents/antigravity-cli/SKILL.md +197 -0
  496. package/extensions/skills/optional/autonomous-ai-agents/antigravity-cli/references/cli-docs.md +64 -0
  497. package/extensions/skills/optional/autonomous-ai-agents/blackbox/SKILL.md +144 -0
  498. package/extensions/skills/optional/autonomous-ai-agents/grok/SKILL.md +246 -0
  499. package/extensions/skills/optional/autonomous-ai-agents/honcho/SKILL.md +431 -0
  500. package/extensions/skills/optional/autonomous-ai-agents/openhands/SKILL.md +149 -0
  501. package/extensions/skills/optional/creative/baoyu-article-illustrator/PORT_NOTES.md +48 -0
  502. package/extensions/skills/optional/creative/baoyu-article-illustrator/SKILL.md +207 -0
  503. package/extensions/skills/optional/creative/baoyu-article-illustrator/prompts/system.md +32 -0
  504. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/palettes/macaron.md +33 -0
  505. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/palettes/mono-ink.md +42 -0
  506. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/palettes/neon.md +33 -0
  507. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/palettes/warm.md +32 -0
  508. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/prompt-construction.md +426 -0
  509. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/style-presets.md +80 -0
  510. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/blueprint.md +57 -0
  511. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/chalkboard.md +62 -0
  512. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/editorial.md +59 -0
  513. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/elegant.md +56 -0
  514. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/fantasy-animation.md +58 -0
  515. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/flat-doodle.md +61 -0
  516. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/flat.md +59 -0
  517. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/ink-notes.md +90 -0
  518. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/intuition-machine.md +57 -0
  519. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/minimal.md +58 -0
  520. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/nature.md +58 -0
  521. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/notion.md +58 -0
  522. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/pixel-art.md +57 -0
  523. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/playful.md +59 -0
  524. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/retro.md +59 -0
  525. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/scientific.md +59 -0
  526. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/screen-print.md +70 -0
  527. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/sketch-notes.md +56 -0
  528. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/sketch.md +57 -0
  529. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/vector-illustration.md +57 -0
  530. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/vintage.md +59 -0
  531. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/warm.md +58 -0
  532. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles/watercolor.md +58 -0
  533. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/styles.md +223 -0
  534. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/usage.md +50 -0
  535. package/extensions/skills/optional/creative/baoyu-article-illustrator/references/workflow.md +332 -0
  536. package/extensions/skills/optional/creative/baoyu-comic/PORT_NOTES.md +77 -0
  537. package/extensions/skills/optional/creative/baoyu-comic/SKILL.md +247 -0
  538. package/extensions/skills/optional/creative/baoyu-comic/references/analysis-framework.md +176 -0
  539. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/chalk.md +101 -0
  540. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/ink-brush.md +97 -0
  541. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/ligne-claire.md +75 -0
  542. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/manga.md +93 -0
  543. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/minimalist.md +84 -0
  544. package/extensions/skills/optional/creative/baoyu-comic/references/art-styles/realistic.md +89 -0
  545. package/extensions/skills/optional/creative/baoyu-comic/references/auto-selection.md +71 -0
  546. package/extensions/skills/optional/creative/baoyu-comic/references/base-prompt.md +98 -0
  547. package/extensions/skills/optional/creative/baoyu-comic/references/character-template.md +180 -0
  548. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/cinematic.md +23 -0
  549. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/dense.md +23 -0
  550. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/four-panel.md +40 -0
  551. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/mixed.md +23 -0
  552. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/splash.md +23 -0
  553. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/standard.md +23 -0
  554. package/extensions/skills/optional/creative/baoyu-comic/references/layouts/webtoon.md +30 -0
  555. package/extensions/skills/optional/creative/baoyu-comic/references/ohmsha-guide.md +85 -0
  556. package/extensions/skills/optional/creative/baoyu-comic/references/partial-workflows.md +106 -0
  557. package/extensions/skills/optional/creative/baoyu-comic/references/presets/concept-story.md +121 -0
  558. package/extensions/skills/optional/creative/baoyu-comic/references/presets/four-panel.md +107 -0
  559. package/extensions/skills/optional/creative/baoyu-comic/references/presets/ohmsha.md +114 -0
  560. package/extensions/skills/optional/creative/baoyu-comic/references/presets/shoujo.md +116 -0
  561. package/extensions/skills/optional/creative/baoyu-comic/references/presets/wuxia.md +110 -0
  562. package/extensions/skills/optional/creative/baoyu-comic/references/storyboard-template.md +142 -0
  563. package/extensions/skills/optional/creative/baoyu-comic/references/tones/action.md +110 -0
  564. package/extensions/skills/optional/creative/baoyu-comic/references/tones/dramatic.md +95 -0
  565. package/extensions/skills/optional/creative/baoyu-comic/references/tones/energetic.md +105 -0
  566. package/extensions/skills/optional/creative/baoyu-comic/references/tones/neutral.md +63 -0
  567. package/extensions/skills/optional/creative/baoyu-comic/references/tones/romantic.md +100 -0
  568. package/extensions/skills/optional/creative/baoyu-comic/references/tones/vintage.md +104 -0
  569. package/extensions/skills/optional/creative/baoyu-comic/references/tones/warm.md +94 -0
  570. package/extensions/skills/optional/creative/baoyu-comic/references/workflow.md +401 -0
  571. package/extensions/skills/optional/creative/blender-mcp/SKILL.md +117 -0
  572. package/extensions/skills/optional/creative/concept-diagrams/SKILL.md +362 -0
  573. package/extensions/skills/optional/creative/concept-diagrams/examples/apartment-floor-plan-conversion.md +244 -0
  574. package/extensions/skills/optional/creative/concept-diagrams/examples/automated-password-reset-flow.md +276 -0
  575. package/extensions/skills/optional/creative/concept-diagrams/examples/autonomous-llm-research-agent-flow.md +240 -0
  576. package/extensions/skills/optional/creative/concept-diagrams/examples/banana-journey-tree-to-smoothie.md +161 -0
  577. package/extensions/skills/optional/creative/concept-diagrams/examples/commercial-aircraft-structure.md +209 -0
  578. package/extensions/skills/optional/creative/concept-diagrams/examples/cpu-ooo-microarchitecture.md +236 -0
  579. package/extensions/skills/optional/creative/concept-diagrams/examples/electricity-grid-flow.md +182 -0
  580. package/extensions/skills/optional/creative/concept-diagrams/examples/feature-film-production-pipeline.md +172 -0
  581. package/extensions/skills/optional/creative/concept-diagrams/examples/hospital-emergency-department-flow.md +165 -0
  582. package/extensions/skills/optional/creative/concept-diagrams/examples/ml-benchmark-grouped-bar-chart.md +114 -0
  583. package/extensions/skills/optional/creative/concept-diagrams/examples/place-order-uml-sequence.md +325 -0
  584. package/extensions/skills/optional/creative/concept-diagrams/examples/smart-city-infrastructure.md +173 -0
  585. package/extensions/skills/optional/creative/concept-diagrams/examples/smartphone-layer-anatomy.md +154 -0
  586. package/extensions/skills/optional/creative/concept-diagrams/examples/sn2-reaction-mechanism.md +247 -0
  587. package/extensions/skills/optional/creative/concept-diagrams/examples/wind-turbine-structure.md +338 -0
  588. package/extensions/skills/optional/creative/concept-diagrams/references/dashboard-patterns.md +43 -0
  589. package/extensions/skills/optional/creative/concept-diagrams/references/infrastructure-patterns.md +144 -0
  590. package/extensions/skills/optional/creative/concept-diagrams/references/physical-shape-cookbook.md +42 -0
  591. package/extensions/skills/optional/creative/concept-diagrams/templates/template.html +174 -0
  592. package/extensions/skills/optional/creative/creative-ideation/SKILL.md +177 -0
  593. package/extensions/skills/optional/creative/creative-ideation/references/anti-slop.md +106 -0
  594. package/extensions/skills/optional/creative/creative-ideation/references/exercises.md +71 -0
  595. package/extensions/skills/optional/creative/creative-ideation/references/full-prompt-library.md +180 -0
  596. package/extensions/skills/optional/creative/creative-ideation/references/heuristics.md +85 -0
  597. package/extensions/skills/optional/creative/creative-ideation/references/method-catalog.md +88 -0
  598. package/extensions/skills/optional/creative/creative-ideation/references/methods/affinity-diagrams.md +67 -0
  599. package/extensions/skills/optional/creative/creative-ideation/references/methods/analogy-and-blending.md +83 -0
  600. package/extensions/skills/optional/creative/creative-ideation/references/methods/biomimicry.md +58 -0
  601. package/extensions/skills/optional/creative/creative-ideation/references/methods/chance-and-remix.md +75 -0
  602. package/extensions/skills/optional/creative/creative-ideation/references/methods/compression-progress.md +64 -0
  603. package/extensions/skills/optional/creative/creative-ideation/references/methods/creative-discipline.md +82 -0
  604. package/extensions/skills/optional/creative/creative-ideation/references/methods/defamiliarization.md +58 -0
  605. package/extensions/skills/optional/creative/creative-ideation/references/methods/derive-and-mapping.md +76 -0
  606. package/extensions/skills/optional/creative/creative-ideation/references/methods/first-principles.md +63 -0
  607. package/extensions/skills/optional/creative/creative-ideation/references/methods/jobs-to-be-done.md +73 -0
  608. package/extensions/skills/optional/creative/creative-ideation/references/methods/lateral-provocations.md +81 -0
  609. package/extensions/skills/optional/creative/creative-ideation/references/methods/leverage-points.md +70 -0
  610. package/extensions/skills/optional/creative/creative-ideation/references/methods/oblique-strategies.md +87 -0
  611. package/extensions/skills/optional/creative/creative-ideation/references/methods/oulipo.md +75 -0
  612. package/extensions/skills/optional/creative/creative-ideation/references/methods/pataphysics.md +64 -0
  613. package/extensions/skills/optional/creative/creative-ideation/references/methods/pattern-languages.md +78 -0
  614. package/extensions/skills/optional/creative/creative-ideation/references/methods/polya.md +77 -0
  615. package/extensions/skills/optional/creative/creative-ideation/references/methods/premortem-and-inversion.md +71 -0
  616. package/extensions/skills/optional/creative/creative-ideation/references/methods/scamper.md +63 -0
  617. package/extensions/skills/optional/creative/creative-ideation/references/methods/story-skeletons.md +100 -0
  618. package/extensions/skills/optional/creative/creative-ideation/references/methods/triz-principles.md +95 -0
  619. package/extensions/skills/optional/creative/creative-ideation/references/methods/volume-generation.md +74 -0
  620. package/extensions/skills/optional/creative/hyperframes/SKILL.md +191 -0
  621. package/extensions/skills/optional/creative/hyperframes/references/cli.md +185 -0
  622. package/extensions/skills/optional/creative/hyperframes/references/composition.md +129 -0
  623. package/extensions/skills/optional/creative/hyperframes/references/features.md +289 -0
  624. package/extensions/skills/optional/creative/hyperframes/references/gsap.md +136 -0
  625. package/extensions/skills/optional/creative/hyperframes/references/troubleshooting.md +137 -0
  626. package/extensions/skills/optional/creative/hyperframes/references/website-to-video.md +145 -0
  627. package/extensions/skills/optional/creative/hyperframes/scripts/setup.sh +135 -0
  628. package/extensions/skills/optional/creative/kanban-video-orchestrator/SKILL.md +158 -0
  629. package/extensions/skills/optional/creative/kanban-video-orchestrator/assets/brief.md.tmpl +79 -0
  630. package/extensions/skills/optional/creative/kanban-video-orchestrator/assets/setup.sh.tmpl +186 -0
  631. package/extensions/skills/optional/creative/kanban-video-orchestrator/assets/soul.md.tmpl +38 -0
  632. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/examples.md +203 -0
  633. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/intake.md +142 -0
  634. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/kanban-setup.md +271 -0
  635. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/monitoring.md +155 -0
  636. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/role-archetypes.md +234 -0
  637. package/extensions/skills/optional/creative/kanban-video-orchestrator/references/tool-matrix.md +281 -0
  638. package/extensions/skills/optional/creative/kanban-video-orchestrator/scripts/bootstrap_pipeline.py +499 -0
  639. package/extensions/skills/optional/creative/kanban-video-orchestrator/scripts/monitor.py +195 -0
  640. package/extensions/skills/optional/creative/meme-generation/EXAMPLES.md +46 -0
  641. package/extensions/skills/optional/creative/meme-generation/SKILL.md +130 -0
  642. package/extensions/skills/optional/creative/meme-generation/scripts/generate_meme.py +470 -0
  643. package/extensions/skills/optional/creative/meme-generation/scripts/templates.json +97 -0
  644. package/extensions/skills/optional/creative/pixel-art/ATTRIBUTION.md +48 -0
  645. package/extensions/skills/optional/creative/pixel-art/SKILL.md +199 -0
  646. package/extensions/skills/optional/creative/pixel-art/references/palettes.md +49 -0
  647. package/extensions/skills/optional/creative/pixel-art/scripts/__init__.py +0 -0
  648. package/extensions/skills/optional/creative/pixel-art/scripts/palettes.py +167 -0
  649. package/extensions/skills/optional/creative/pixel-art/scripts/pixel_art.py +162 -0
  650. package/extensions/skills/optional/creative/pixel-art/scripts/pixel_art_video.py +345 -0
  651. package/extensions/skills/optional/devops/cli/SKILL.md +156 -0
  652. package/extensions/skills/optional/devops/cli/references/app-discovery.md +111 -0
  653. package/extensions/skills/optional/devops/cli/references/authentication.md +59 -0
  654. package/extensions/skills/optional/devops/cli/references/cli-reference.md +104 -0
  655. package/extensions/skills/optional/devops/cli/references/running-apps.md +171 -0
  656. package/extensions/skills/optional/devops/docker-management/SKILL.md +281 -0
  657. package/extensions/skills/optional/devops/hermes-s6-container-supervision/SKILL.md +178 -0
  658. package/extensions/skills/optional/devops/pinggy-tunnel/SKILL.md +309 -0
  659. package/extensions/skills/optional/devops/watchers/SKILL.md +111 -0
  660. package/extensions/skills/optional/devops/watchers/scripts/_watermark.py +148 -0
  661. package/extensions/skills/optional/devops/watchers/scripts/watch_github.py +169 -0
  662. package/extensions/skills/optional/devops/watchers/scripts/watch_http_json.py +131 -0
  663. package/extensions/skills/optional/devops/watchers/scripts/watch_rss.py +121 -0
  664. package/extensions/skills/optional/dogfood/DESCRIPTION.md +3 -0
  665. package/extensions/skills/optional/dogfood/adversarial-ux-test/SKILL.md +191 -0
  666. package/extensions/skills/optional/finance/3-statement-model/SKILL.md +430 -0
  667. package/extensions/skills/optional/finance/3-statement-model/references/formatting.md +118 -0
  668. package/extensions/skills/optional/finance/3-statement-model/references/formulas.md +292 -0
  669. package/extensions/skills/optional/finance/3-statement-model/references/sec-filings.md +125 -0
  670. package/extensions/skills/optional/finance/comps-analysis/SKILL.md +662 -0
  671. package/extensions/skills/optional/finance/dcf-model/SKILL.md +850 -0
  672. package/extensions/skills/optional/finance/dcf-model/TROUBLESHOOTING.md +40 -0
  673. package/extensions/skills/optional/finance/dcf-model/requirements.txt +7 -0
  674. package/extensions/skills/optional/finance/dcf-model/scripts/validate_dcf.py +291 -0
  675. package/extensions/skills/optional/finance/excel-author/SKILL.md +244 -0
  676. package/extensions/skills/optional/finance/excel-author/scripts/recalc.py +88 -0
  677. package/extensions/skills/optional/finance/lbo-model/SKILL.md +290 -0
  678. package/extensions/skills/optional/finance/merger-model/SKILL.md +144 -0
  679. package/extensions/skills/optional/finance/pptx-author/SKILL.md +173 -0
  680. package/extensions/skills/optional/finance/stocks/SKILL.md +88 -0
  681. package/extensions/skills/optional/finance/stocks/scripts/stocks_client.py +755 -0
  682. package/extensions/skills/optional/mcp/DESCRIPTION.md +3 -0
  683. package/extensions/skills/optional/mcp/fastmcp/SKILL.md +300 -0
  684. package/extensions/skills/optional/mcp/fastmcp/references/fastmcp-cli.md +110 -0
  685. package/extensions/skills/optional/mcp/fastmcp/scripts/scaffold_fastmcp.py +56 -0
  686. package/extensions/skills/optional/mcp/fastmcp/templates/api_wrapper.py +54 -0
  687. package/extensions/skills/optional/mcp/fastmcp/templates/database_server.py +77 -0
  688. package/extensions/skills/optional/mcp/fastmcp/templates/file_processor.py +55 -0
  689. package/extensions/skills/optional/mcp/mcporter/SKILL.md +123 -0
  690. package/extensions/skills/optional/migration/DESCRIPTION.md +1 -0
  691. package/extensions/skills/optional/migration/openclaw-migration/SKILL.md +298 -0
  692. package/extensions/skills/optional/migration/openclaw-migration/scripts/openclaw_to_hermes.py +3136 -0
  693. package/extensions/skills/optional/mlops/accelerate/SKILL.md +333 -0
  694. package/extensions/skills/optional/mlops/accelerate/references/custom-plugins.md +453 -0
  695. package/extensions/skills/optional/mlops/accelerate/references/megatron-integration.md +489 -0
  696. package/extensions/skills/optional/mlops/accelerate/references/performance.md +525 -0
  697. package/extensions/skills/optional/mlops/chroma/SKILL.md +408 -0
  698. package/extensions/skills/optional/mlops/chroma/references/integration.md +38 -0
  699. package/extensions/skills/optional/mlops/clip/SKILL.md +255 -0
  700. package/extensions/skills/optional/mlops/clip/references/applications.md +207 -0
  701. package/extensions/skills/optional/mlops/faiss/SKILL.md +223 -0
  702. package/extensions/skills/optional/mlops/faiss/references/index_types.md +280 -0
  703. package/extensions/skills/optional/mlops/flash-attention/SKILL.md +364 -0
  704. package/extensions/skills/optional/mlops/flash-attention/references/benchmarks.md +215 -0
  705. package/extensions/skills/optional/mlops/flash-attention/references/transformers-integration.md +293 -0
  706. package/extensions/skills/optional/mlops/guidance/SKILL.md +574 -0
  707. package/extensions/skills/optional/mlops/guidance/references/backends.md +553 -0
  708. package/extensions/skills/optional/mlops/guidance/references/constraints.md +674 -0
  709. package/extensions/skills/optional/mlops/guidance/references/examples.md +767 -0
  710. package/extensions/skills/optional/mlops/huggingface-tokenizers/SKILL.md +518 -0
  711. package/extensions/skills/optional/mlops/huggingface-tokenizers/references/algorithms.md +653 -0
  712. package/extensions/skills/optional/mlops/huggingface-tokenizers/references/integration.md +637 -0
  713. package/extensions/skills/optional/mlops/huggingface-tokenizers/references/pipeline.md +723 -0
  714. package/extensions/skills/optional/mlops/huggingface-tokenizers/references/training.md +565 -0
  715. package/extensions/skills/optional/mlops/inference/outlines/SKILL.md +654 -0
  716. package/extensions/skills/optional/mlops/inference/outlines/references/backends.md +615 -0
  717. package/extensions/skills/optional/mlops/inference/outlines/references/examples.md +773 -0
  718. package/extensions/skills/optional/mlops/inference/outlines/references/json_generation.md +649 -0
  719. package/extensions/skills/optional/mlops/instructor/SKILL.md +742 -0
  720. package/extensions/skills/optional/mlops/instructor/references/examples.md +107 -0
  721. package/extensions/skills/optional/mlops/instructor/references/providers.md +70 -0
  722. package/extensions/skills/optional/mlops/instructor/references/validation.md +606 -0
  723. package/extensions/skills/optional/mlops/lambda-labs/SKILL.md +549 -0
  724. package/extensions/skills/optional/mlops/lambda-labs/references/advanced-usage.md +611 -0
  725. package/extensions/skills/optional/mlops/lambda-labs/references/troubleshooting.md +530 -0
  726. package/extensions/skills/optional/mlops/llava/SKILL.md +306 -0
  727. package/extensions/skills/optional/mlops/llava/references/training.md +197 -0
  728. package/extensions/skills/optional/mlops/modal/SKILL.md +345 -0
  729. package/extensions/skills/optional/mlops/modal/references/advanced-usage.md +503 -0
  730. package/extensions/skills/optional/mlops/modal/references/troubleshooting.md +494 -0
  731. package/extensions/skills/optional/mlops/nemo-curator/SKILL.md +384 -0
  732. package/extensions/skills/optional/mlops/nemo-curator/references/deduplication.md +87 -0
  733. package/extensions/skills/optional/mlops/nemo-curator/references/filtering.md +102 -0
  734. package/extensions/skills/optional/mlops/obliteratus/SKILL.md +342 -0
  735. package/extensions/skills/optional/mlops/obliteratus/references/analysis-modules.md +160 -0
  736. package/extensions/skills/optional/mlops/obliteratus/references/methods-guide.md +139 -0
  737. package/extensions/skills/optional/mlops/obliteratus/templates/abliteration-config.yaml +33 -0
  738. package/extensions/skills/optional/mlops/obliteratus/templates/analysis-study.yaml +40 -0
  739. package/extensions/skills/optional/mlops/obliteratus/templates/batch-abliteration.yaml +41 -0
  740. package/extensions/skills/optional/mlops/peft/SKILL.md +435 -0
  741. package/extensions/skills/optional/mlops/peft/references/advanced-usage.md +514 -0
  742. package/extensions/skills/optional/mlops/peft/references/troubleshooting.md +480 -0
  743. package/extensions/skills/optional/mlops/pinecone/SKILL.md +360 -0
  744. package/extensions/skills/optional/mlops/pinecone/references/deployment.md +181 -0
  745. package/extensions/skills/optional/mlops/pytorch-fsdp/SKILL.md +85 -0
  746. package/extensions/skills/optional/mlops/pytorch-fsdp/references/index.md +7 -0
  747. package/extensions/skills/optional/mlops/pytorch-fsdp/references/other.md +3297 -0
  748. package/extensions/skills/optional/mlops/pytorch-lightning/SKILL.md +348 -0
  749. package/extensions/skills/optional/mlops/pytorch-lightning/references/callbacks.md +436 -0
  750. package/extensions/skills/optional/mlops/pytorch-lightning/references/distributed.md +490 -0
  751. package/extensions/skills/optional/mlops/pytorch-lightning/references/hyperparameter-tuning.md +556 -0
  752. package/extensions/skills/optional/mlops/qdrant/SKILL.md +497 -0
  753. package/extensions/skills/optional/mlops/qdrant/references/advanced-usage.md +648 -0
  754. package/extensions/skills/optional/mlops/qdrant/references/troubleshooting.md +631 -0
  755. package/extensions/skills/optional/mlops/research/DESCRIPTION.md +3 -0
  756. package/extensions/skills/optional/mlops/research/dspy/SKILL.md +592 -0
  757. package/extensions/skills/optional/mlops/research/dspy/references/examples.md +663 -0
  758. package/extensions/skills/optional/mlops/research/dspy/references/modules.md +475 -0
  759. package/extensions/skills/optional/mlops/research/dspy/references/optimizers.md +566 -0
  760. package/extensions/skills/optional/mlops/saelens/SKILL.md +390 -0
  761. package/extensions/skills/optional/mlops/saelens/references/README.md +69 -0
  762. package/extensions/skills/optional/mlops/saelens/references/api.md +333 -0
  763. package/extensions/skills/optional/mlops/saelens/references/tutorials.md +318 -0
  764. package/extensions/skills/optional/mlops/simpo/SKILL.md +220 -0
  765. package/extensions/skills/optional/mlops/simpo/references/datasets.md +478 -0
  766. package/extensions/skills/optional/mlops/simpo/references/hyperparameters.md +452 -0
  767. package/extensions/skills/optional/mlops/simpo/references/loss-functions.md +350 -0
  768. package/extensions/skills/optional/mlops/slime/SKILL.md +467 -0
  769. package/extensions/skills/optional/mlops/slime/references/api-reference.md +392 -0
  770. package/extensions/skills/optional/mlops/slime/references/troubleshooting.md +386 -0
  771. package/extensions/skills/optional/mlops/stable-diffusion/SKILL.md +523 -0
  772. package/extensions/skills/optional/mlops/stable-diffusion/references/advanced-usage.md +716 -0
  773. package/extensions/skills/optional/mlops/stable-diffusion/references/troubleshooting.md +555 -0
  774. package/extensions/skills/optional/mlops/tensorrt-llm/SKILL.md +189 -0
  775. package/extensions/skills/optional/mlops/tensorrt-llm/references/multi-gpu.md +298 -0
  776. package/extensions/skills/optional/mlops/tensorrt-llm/references/optimization.md +242 -0
  777. package/extensions/skills/optional/mlops/tensorrt-llm/references/serving.md +470 -0
  778. package/extensions/skills/optional/mlops/torchtitan/SKILL.md +361 -0
  779. package/extensions/skills/optional/mlops/torchtitan/references/checkpoint.md +181 -0
  780. package/extensions/skills/optional/mlops/torchtitan/references/custom-models.md +258 -0
  781. package/extensions/skills/optional/mlops/torchtitan/references/float8.md +133 -0
  782. package/extensions/skills/optional/mlops/torchtitan/references/fsdp.md +126 -0
  783. package/extensions/skills/optional/mlops/training/axolotl/SKILL.md +164 -0
  784. package/extensions/skills/optional/mlops/training/axolotl/references/api.md +1535 -0
  785. package/extensions/skills/optional/mlops/training/axolotl/references/dataset-formats.md +843 -0
  786. package/extensions/skills/optional/mlops/training/axolotl/references/index.md +15 -0
  787. package/extensions/skills/optional/mlops/training/axolotl/references/other.md +2367 -0
  788. package/extensions/skills/optional/mlops/training/trl-fine-tuning/SKILL.md +460 -0
  789. package/extensions/skills/optional/mlops/training/trl-fine-tuning/references/dpo-variants.md +227 -0
  790. package/extensions/skills/optional/mlops/training/trl-fine-tuning/references/grpo-training.md +504 -0
  791. package/extensions/skills/optional/mlops/training/trl-fine-tuning/references/online-rl.md +82 -0
  792. package/extensions/skills/optional/mlops/training/trl-fine-tuning/references/reward-modeling.md +122 -0
  793. package/extensions/skills/optional/mlops/training/trl-fine-tuning/references/sft-training.md +168 -0
  794. package/extensions/skills/optional/mlops/training/trl-fine-tuning/templates/basic_grpo_training.py +228 -0
  795. package/extensions/skills/optional/mlops/training/unsloth/SKILL.md +81 -0
  796. package/extensions/skills/optional/mlops/training/unsloth/references/index.md +7 -0
  797. package/extensions/skills/optional/mlops/training/unsloth/references/llms-full.md +381 -0
  798. package/extensions/skills/optional/mlops/training/unsloth/references/llms-txt.md +382 -0
  799. package/extensions/skills/optional/mlops/training/unsloth/references/llms.md +82 -0
  800. package/extensions/skills/optional/mlops/whisper/SKILL.md +319 -0
  801. package/extensions/skills/optional/mlops/whisper/references/languages.md +189 -0
  802. package/extensions/skills/optional/productivity/canvas/SKILL.md +98 -0
  803. package/extensions/skills/optional/productivity/canvas/scripts/canvas_api.py +160 -0
  804. package/extensions/skills/optional/productivity/here-now/SKILL.md +217 -0
  805. package/extensions/skills/optional/productivity/here-now/scripts/drive.sh +406 -0
  806. package/extensions/skills/optional/productivity/here-now/scripts/publish.sh +445 -0
  807. package/extensions/skills/optional/productivity/memento-flashcards/SKILL.md +324 -0
  808. package/extensions/skills/optional/productivity/memento-flashcards/scripts/memento_cards.py +353 -0
  809. package/extensions/skills/optional/productivity/memento-flashcards/scripts/youtube_quiz.py +88 -0
  810. package/extensions/skills/optional/productivity/shop/SKILL.md +224 -0
  811. package/extensions/skills/optional/productivity/shop/references/catalog-mcp.md +236 -0
  812. package/extensions/skills/optional/productivity/shop/references/direct-api.md +265 -0
  813. package/extensions/skills/optional/productivity/shop/references/legal.md +3 -0
  814. package/extensions/skills/optional/productivity/shop/references/safety.md +36 -0
  815. package/extensions/skills/optional/productivity/shopify/SKILL.md +373 -0
  816. package/extensions/skills/optional/productivity/siyuan/SKILL.md +298 -0
  817. package/extensions/skills/optional/productivity/telephony/SKILL.md +418 -0
  818. package/extensions/skills/optional/productivity/telephony/scripts/telephony.py +1343 -0
  819. package/extensions/skills/optional/research/bioinformatics/SKILL.md +235 -0
  820. package/extensions/skills/optional/research/darwinian-evolver/SKILL.md +161 -0
  821. package/extensions/skills/optional/research/darwinian-evolver/scripts/parrot_openrouter.py +218 -0
  822. package/extensions/skills/optional/research/darwinian-evolver/scripts/show_snapshot.py +92 -0
  823. package/extensions/skills/optional/research/darwinian-evolver/templates/custom_problem_template.py +240 -0
  824. package/extensions/skills/optional/research/domain-intel/SKILL.md +97 -0
  825. package/extensions/skills/optional/research/domain-intel/scripts/domain_intel.py +397 -0
  826. package/extensions/skills/optional/research/drug-discovery/SKILL.md +218 -0
  827. package/extensions/skills/optional/research/drug-discovery/references/ADMET_REFERENCE.md +66 -0
  828. package/extensions/skills/optional/research/drug-discovery/scripts/chembl_target.py +53 -0
  829. package/extensions/skills/optional/research/drug-discovery/scripts/ro5_screen.py +44 -0
  830. package/extensions/skills/optional/research/duckduckgo-search/SKILL.md +238 -0
  831. package/extensions/skills/optional/research/duckduckgo-search/scripts/duckduckgo.sh +28 -0
  832. package/extensions/skills/optional/research/gitnexus-explorer/SKILL.md +196 -0
  833. package/extensions/skills/optional/research/gitnexus-explorer/scripts/proxy.mjs +92 -0
  834. package/extensions/skills/optional/research/osint-investigation/SKILL.md +227 -0
  835. package/extensions/skills/optional/research/osint-investigation/references/sources/courtlistener.md +92 -0
  836. package/extensions/skills/optional/research/osint-investigation/references/sources/gdelt.md +94 -0
  837. package/extensions/skills/optional/research/osint-investigation/references/sources/icij-offshore.md +79 -0
  838. package/extensions/skills/optional/research/osint-investigation/references/sources/nyc-acris.md +85 -0
  839. package/extensions/skills/optional/research/osint-investigation/references/sources/ofac-sdn.md +84 -0
  840. package/extensions/skills/optional/research/osint-investigation/references/sources/opencorporates.md +88 -0
  841. package/extensions/skills/optional/research/osint-investigation/references/sources/sec-edgar.md +80 -0
  842. package/extensions/skills/optional/research/osint-investigation/references/sources/senate-ld.md +85 -0
  843. package/extensions/skills/optional/research/osint-investigation/references/sources/usaspending.md +90 -0
  844. package/extensions/skills/optional/research/osint-investigation/references/sources/wayback.md +87 -0
  845. package/extensions/skills/optional/research/osint-investigation/references/sources/wikipedia.md +96 -0
  846. package/extensions/skills/optional/research/osint-investigation/scripts/_http.py +82 -0
  847. package/extensions/skills/optional/research/osint-investigation/scripts/_normalize.py +67 -0
  848. package/extensions/skills/optional/research/osint-investigation/scripts/build_findings.py +221 -0
  849. package/extensions/skills/optional/research/osint-investigation/scripts/entity_resolution.py +228 -0
  850. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_courtlistener.py +149 -0
  851. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_gdelt.py +161 -0
  852. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_icij_offshore.py +234 -0
  853. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_nyc_acris.py +203 -0
  854. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_ofac_sdn.py +175 -0
  855. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_opencorporates.py +191 -0
  856. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_sec_edgar.py +184 -0
  857. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_senate_ld.py +146 -0
  858. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_usaspending.py +170 -0
  859. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_wayback.py +142 -0
  860. package/extensions/skills/optional/research/osint-investigation/scripts/fetch_wikipedia.py +266 -0
  861. package/extensions/skills/optional/research/osint-investigation/scripts/timing_analysis.py +252 -0
  862. package/extensions/skills/optional/research/osint-investigation/templates/source-template.md +57 -0
  863. package/extensions/skills/optional/research/parallel-cli/SKILL.md +391 -0
  864. package/extensions/skills/optional/research/qmd/SKILL.md +417 -0
  865. package/extensions/skills/optional/research/scrapling/SKILL.md +336 -0
  866. package/extensions/skills/optional/research/searxng-search/SKILL.md +212 -0
  867. package/extensions/skills/optional/research/searxng-search/scripts/searxng.sh +22 -0
  868. package/extensions/skills/optional/security/DESCRIPTION.md +3 -0
  869. package/extensions/skills/optional/software-development/code-wiki/SKILL.md +442 -0
  870. package/extensions/skills/optional/software-development/code-wiki/templates/README.md +31 -0
  871. package/extensions/skills/optional/software-development/code-wiki/templates/architecture.md +30 -0
  872. package/extensions/skills/optional/software-development/code-wiki/templates/getting-started.md +47 -0
  873. package/extensions/skills/optional/software-development/code-wiki/templates/module.md +38 -0
  874. package/extensions/skills/optional/software-development/rest-graphql-debug/SKILL.md +514 -0
  875. package/extensions/skills/optional/software-development/subagent-driven-development/SKILL.md +352 -0
  876. package/extensions/skills/optional/software-development/subagent-driven-development/references/context-budget-discipline.md +53 -0
  877. package/extensions/skills/optional/software-development/subagent-driven-development/references/gates-taxonomy.md +93 -0
  878. package/extensions/skills/optional/web-development/DESCRIPTION.md +5 -0
  879. package/extensions/skills/optional/web-development/cloudflare-temporary-deploy/SKILL.md +127 -0
  880. package/extensions/skills/optional/web-development/cloudflare-temporary-deploy/scripts/parse_deploy_output.py +122 -0
  881. package/extensions/skills/optional/web-development/page-agent/SKILL.md +190 -0
  882. package/interfaces/__init__.py +1 -0
  883. package/interfaces/api/__init__.py +1 -0
  884. package/interfaces/api/_impl/_models.py +105 -0
  885. package/interfaces/api/_impl/server.py +1480 -0
  886. package/interfaces/cli/__init__.py +1 -0
  887. package/interfaces/cli/_impl/__init__.py +1 -0
  888. package/interfaces/cli/_impl/commands/__init__.py +1 -0
  889. package/interfaces/cli/_impl/commands/agents.py +106 -0
  890. package/interfaces/cli/_impl/commands/architecture.py +63 -0
  891. package/interfaces/cli/_impl/commands/chat_repl.py +291 -0
  892. package/interfaces/cli/_impl/commands/common.py +17 -0
  893. package/interfaces/cli/_impl/commands/cron.py +145 -0
  894. package/interfaces/cli/_impl/commands/doctor.py +201 -0
  895. package/interfaces/cli/_impl/commands/gateway.py +111 -0
  896. package/interfaces/cli/_impl/commands/llm.py +113 -0
  897. package/interfaces/cli/_impl/commands/models.py +578 -0
  898. package/interfaces/cli/_impl/commands/orchestrator.py +71 -0
  899. package/interfaces/cli/_impl/commands/run_agent.py +102 -0
  900. package/interfaces/cli/_impl/commands/sessions.py +237 -0
  901. package/interfaces/cli/_impl/commands/skill.py +121 -0
  902. package/interfaces/cli/_impl/commands/smoke_test.py +193 -0
  903. package/interfaces/cli/_impl/commands/soul.py +106 -0
  904. package/interfaces/cli/_impl/commands/tools.py +249 -0
  905. package/interfaces/cli/_impl/handlers/__init__.py +1 -0
  906. package/interfaces/cli/_impl/main.py +727 -0
  907. package/interfaces/cli/_impl/parser/__init__.py +1 -0
  908. package/interfaces/cli/_impl/renderers/__init__.py +23 -0
  909. package/interfaces/cli/_impl/result.py +81 -0
  910. package/interfaces/gateway/__init__.py +1 -0
  911. package/interfaces/gateway/_impl/__init__.py +163 -0
  912. package/interfaces/gateway/_impl/adapters/dingtalk/__init__.py +8 -0
  913. package/interfaces/gateway/_impl/adapters/dingtalk/adapter.py +100 -0
  914. package/interfaces/gateway/_impl/adapters/feishu/__init__.py +8 -0
  915. package/interfaces/gateway/_impl/adapters/feishu/adapter.py +575 -0
  916. package/interfaces/gateway/_impl/adapters/qq/__init__.py +8 -0
  917. package/interfaces/gateway/_impl/adapters/qq/adapter.py +266 -0
  918. package/interfaces/gateway/_impl/adapters/slack/__init__.py +8 -0
  919. package/interfaces/gateway/_impl/adapters/slack/adapter.py +72 -0
  920. package/interfaces/gateway/_impl/adapters/wechat/__init__.py +8 -0
  921. package/interfaces/gateway/_impl/adapters/wechat/adapter.py +239 -0
  922. package/interfaces/gateway/_impl/middleware/__init__.py +1 -0
  923. package/interfaces/gateway/_impl/routes/__init__.py +1 -0
  924. package/interfaces/web/__init__.py +1 -0
  925. package/interfaces/web/frontend/.oxlintrc.json +8 -0
  926. package/interfaces/web/frontend/README.md +32 -0
  927. package/interfaces/web/frontend/index.html +13 -0
  928. package/interfaces/web/frontend/package-lock.json +5179 -0
  929. package/interfaces/web/frontend/package.json +48 -0
  930. package/interfaces/web/frontend/postcss.config.js +6 -0
  931. package/interfaces/web/frontend/public/cat-spritesheet.webp +0 -0
  932. package/interfaces/web/frontend/public/favicon.svg +1 -0
  933. package/interfaces/web/frontend/public/icons.svg +24 -0
  934. package/interfaces/web/frontend/run-5173.cmd +3 -0
  935. package/interfaces/web/frontend/src/App.css +184 -0
  936. package/interfaces/web/frontend/src/App.tsx +272 -0
  937. package/interfaces/web/frontend/src/api/client.ts +115 -0
  938. package/interfaces/web/frontend/src/assets/hero.png +0 -0
  939. package/interfaces/web/frontend/src/assets/react.svg +1 -0
  940. package/interfaces/web/frontend/src/assets/vite.svg +1 -0
  941. package/interfaces/web/frontend/src/components/AgentAvatar.tsx +59 -0
  942. package/interfaces/web/frontend/src/components/CatSpirit.tsx +248 -0
  943. package/interfaces/web/frontend/src/components/ChatFlow.tsx +587 -0
  944. package/interfaces/web/frontend/src/components/DateTimePicker.tsx +170 -0
  945. package/interfaces/web/frontend/src/components/MarkdownView.tsx +20 -0
  946. package/interfaces/web/frontend/src/components/NiceSelect.tsx +166 -0
  947. package/interfaces/web/frontend/src/components/PagePanel.tsx +68 -0
  948. package/interfaces/web/frontend/src/components/PixelCat.tsx +150 -0
  949. package/interfaces/web/frontend/src/components/RichEditor.tsx +129 -0
  950. package/interfaces/web/frontend/src/components/SakuraParticles.tsx +70 -0
  951. package/interfaces/web/frontend/src/components/SidebarLeft.tsx +100 -0
  952. package/interfaces/web/frontend/src/components/SidebarRight.tsx +333 -0
  953. package/interfaces/web/frontend/src/components/Toggle.tsx +19 -0
  954. package/interfaces/web/frontend/src/contexts/ThemeContext.tsx +230 -0
  955. package/interfaces/web/frontend/src/contexts/ThemeContextCore.ts +14 -0
  956. package/interfaces/web/frontend/src/contexts/useTheme.ts +8 -0
  957. package/interfaces/web/frontend/src/hooks/useAgent.ts +507 -0
  958. package/interfaces/web/frontend/src/hooks/useDashboardData.ts +160 -0
  959. package/interfaces/web/frontend/src/index.css +1903 -0
  960. package/interfaces/web/frontend/src/main.tsx +11 -0
  961. package/interfaces/web/frontend/src/mock/data.ts +3 -0
  962. package/interfaces/web/frontend/src/pages/AgentsPage.tsx +156 -0
  963. package/interfaces/web/frontend/src/pages/CronPage.tsx +80 -0
  964. package/interfaces/web/frontend/src/pages/FilesPage.tsx +57 -0
  965. package/interfaces/web/frontend/src/pages/McpPage.tsx +143 -0
  966. package/interfaces/web/frontend/src/pages/ModelsPage.tsx +170 -0
  967. package/interfaces/web/frontend/src/pages/SessionsPage.tsx +135 -0
  968. package/interfaces/web/frontend/src/pages/SkillsPage.tsx +4 -0
  969. package/interfaces/web/frontend/src/pages/SoulsPage.tsx +109 -0
  970. package/interfaces/web/frontend/src/pages/ToolsPage.tsx +3 -0
  971. package/interfaces/web/frontend/src/pages/UsagePage.tsx +132 -0
  972. package/interfaces/web/frontend/src/pages/WorkersPage.tsx +198 -0
  973. package/interfaces/web/frontend/src/types/index.ts +138 -0
  974. package/interfaces/web/frontend/tailwind.config.js +52 -0
  975. package/interfaces/web/frontend/tsconfig.app.json +26 -0
  976. package/interfaces/web/frontend/tsconfig.json +7 -0
  977. package/interfaces/web/frontend/tsconfig.node.json +23 -0
  978. package/interfaces/web/frontend/vite.config.ts +16 -0
  979. package/interfaces/web/frontend/yarn.lock +2281 -0
  980. package/interfaces/web/legacy_web/index.html +1259 -0
  981. package/lbs.py +6 -0
  982. package/package.json +53 -0
  983. package/requirements.txt +98 -0
  984. package/runtime/__init__.py +1 -0
  985. package/runtime/context/__init__.py +26 -0
  986. package/runtime/context/compression/strategies/__init__.py +1 -0
  987. package/runtime/context/compression/token_counter.py +62 -0
  988. package/runtime/context/compressor.py +594 -0
  989. package/runtime/context/management/__init__.py +1 -0
  990. package/runtime/context/management/context_builder.py +67 -0
  991. package/runtime/context/management/context_manager.py +1008 -0
  992. package/runtime/context/trimming/__init__.py +1 -0
  993. package/runtime/context/trimming/priority.py +58 -0
  994. package/runtime/context/trimming/window.py +56 -0
  995. package/runtime/core/__init__.py +1 -0
  996. package/runtime/core/llm/__init__.py +24 -0
  997. package/runtime/core/llm/auxiliary_client.py +279 -0
  998. package/runtime/core/llm/builtins.py +300 -0
  999. package/runtime/core/llm/client/__init__.py +699 -0
  1000. package/runtime/core/llm/credential.py +334 -0
  1001. package/runtime/core/llm/error_classifier.py +158 -0
  1002. package/runtime/core/llm/factory/__init__.py +1 -0
  1003. package/runtime/core/llm/health.py +106 -0
  1004. package/runtime/core/llm/model_router.py +592 -0
  1005. package/runtime/core/llm/provider.py +120 -0
  1006. package/runtime/core/llm/redact.py +142 -0
  1007. package/runtime/core/llm/registry/__init__.py +50 -0
  1008. package/runtime/core/llm/registry/models.yaml +233 -0
  1009. package/runtime/core/llm/think_scrubber.py +232 -0
  1010. package/runtime/core/llm/tokenizer.py +150 -0
  1011. package/runtime/core/llm/usage_pricing.py +373 -0
  1012. package/runtime/core/sub_agents/__init__.py +11 -0
  1013. package/runtime/core/sub_agents/agents.yaml +477 -0
  1014. package/runtime/core/sub_agents/base.py +28 -0
  1015. package/runtime/core/sub_agents/builtin/__init__.py +1 -0
  1016. package/runtime/core/sub_agents/registry.py +96 -0
  1017. package/runtime/core/tokenizer.py +146 -0
  1018. package/runtime/gateway.py +14 -0
  1019. package/runtime/memory/__init__.py +11 -0
  1020. package/runtime/memory/context_memory.py +249 -0
  1021. package/runtime/memory/long_term/knowledge_graph/__init__.py +1 -0
  1022. package/runtime/memory/long_term/sqlite/__init__.py +104 -0
  1023. package/runtime/memory/long_term/vector_store/__init__.py +1 -0
  1024. package/runtime/memory/manager.py +144 -0
  1025. package/runtime/memory/provider.py +97 -0
  1026. package/runtime/memory/providers/long_term.py +143 -0
  1027. package/runtime/memory/providers/working.py +53 -0
  1028. package/runtime/memory/session/__init__.py +4 -0
  1029. package/runtime/memory/session/identity.py +48 -0
  1030. package/runtime/memory/session/session_context.py +23 -0
  1031. package/runtime/memory/session/session_store.py +1118 -0
  1032. package/runtime/memory/short_term/__init__.py +8 -0
  1033. package/runtime/memory/short_term/buffer.py +8 -0
  1034. package/runtime/memory/short_term/working.py +93 -0
  1035. package/runtime/memory/task_contracts/__init__.py +115 -0
  1036. package/runtime/orchestration/__init__.py +8 -0
  1037. package/runtime/orchestration/auto_cycle/__init__.py +486 -0
  1038. package/runtime/orchestration/auto_cycle/trigger.py +8 -0
  1039. package/runtime/orchestration/background_review.py +470 -0
  1040. package/runtime/orchestration/display.py +206 -0
  1041. package/runtime/orchestration/iteration_budget.py +98 -0
  1042. package/runtime/orchestration/loop/__init__.py +17 -0
  1043. package/runtime/orchestration/loop/completion_gate.py +156 -0
  1044. package/runtime/orchestration/loop/context_window.py +71 -0
  1045. package/runtime/orchestration/loop/main_loop.py +2014 -0
  1046. package/runtime/orchestration/loop/message_history.py +71 -0
  1047. package/runtime/orchestration/loop/progress_tracker.py +211 -0
  1048. package/runtime/orchestration/loop/run_trace.py +70 -0
  1049. package/runtime/orchestration/loop/tool_call_executor.py +214 -0
  1050. package/runtime/orchestration/loop/tool_execution_contract.py +134 -0
  1051. package/runtime/orchestration/loop/types.py +282 -0
  1052. package/runtime/orchestration/retry_engine.py +241 -0
  1053. package/runtime/orchestration/runtime/__init__.py +20 -0
  1054. package/runtime/orchestration/runtime/arbiter.py +85 -0
  1055. package/runtime/orchestration/runtime/checkpoint.py +148 -0
  1056. package/runtime/orchestration/runtime/error_policy.py +55 -0
  1057. package/runtime/orchestration/runtime/events.py +92 -0
  1058. package/runtime/orchestration/runtime/process_registry.py +605 -0
  1059. package/runtime/orchestration/runtime/resume_manager.py +283 -0
  1060. package/runtime/orchestration/runtime/retry_policy.py +26 -0
  1061. package/runtime/orchestration/runtime/status.py +60 -0
  1062. package/runtime/orchestration/runtime/types.py +74 -0
  1063. package/runtime/orchestration/scheduler/__init__.py +8 -0
  1064. package/runtime/orchestration/scheduler/master_scheduler.py +36 -0
  1065. package/runtime/orchestration/scheduler/task_graph.py +67 -0
  1066. package/runtime/orchestration/supervisor_loop.py +1041 -0
  1067. package/runtime/orchestration/tool_guardrails.py +249 -0
  1068. package/runtime/orchestration/tracer.py +403 -0
  1069. package/runtime/orchestration/verification/__init__.py +14 -0
  1070. package/runtime/orchestration/verification/completion.py +248 -0
  1071. package/runtime/orchestration/verification/task_acceptance.py +87 -0
  1072. package/runtime/orchestration/verification/tool_result.py +38 -0
  1073. package/runtime/orchestration/verification/worker_result.py +54 -0
  1074. package/runtime/perception/README.md +24 -0
  1075. package/runtime/perception/__init__.py +5 -0
  1076. package/runtime/perception/detectors/__init__.py +1 -0
  1077. package/runtime/perception/detectors/entity.py +86 -0
  1078. package/runtime/perception/detectors/intent.py +103 -0
  1079. package/runtime/perception/input/multimodal/__init__.py +1 -0
  1080. package/runtime/perception/input/streaming/__init__.py +1 -0
  1081. package/runtime/perception/input/text/__init__.py +1 -0
  1082. package/runtime/perception/preprocess/__init__.py +1 -0
  1083. package/scripts/check_llm_layer.py +16 -0
  1084. package/scripts/check_orchestration_layer.py +15 -0
  1085. package/scripts/clean-pycache.js +56 -0
  1086. package/scripts/init.js +187 -0
  1087. package/tools/__init__.py +1 -0
  1088. package/tools/mcp/clients/__init__.py +368 -0
  1089. package/tools/mcp/registry.py +538 -0
  1090. package/tools/mcp/servers/__init__.py +46 -0
  1091. package/tools/skill/__init__.py +4 -0
  1092. package/tools/skill/curator.py +368 -0
  1093. package/tools/skill/registry/__init__.py +11 -0
  1094. package/tools/skill/registry/registry.py +367 -0
  1095. package/tools/skill/registry/source_config.py +101 -0
  1096. package/tools/skill/skills/__init__.py +1 -0
  1097. package/tools/tool/__init__.py +12 -0
  1098. package/tools/tool/advanced_tools.py +307 -0
  1099. package/tools/tool/approval_workflow.py +216 -0
  1100. package/tools/tool/builtin.py +656 -0
  1101. package/tools/tool/config.py +191 -0
  1102. package/tools/tool/hermes_migrated.py +190 -0
  1103. package/tools/tool/implementations/__init__.py +1 -0
  1104. package/tools/tool/implementations/browser_use_provider.py +691 -0
  1105. package/tools/tool/implementations/extended_tools.py +260 -0
  1106. package/tools/tool/mcp_provider.py +95 -0
  1107. package/tools/tool/policy.py +65 -0
  1108. package/tools/tool/providers/base.py +115 -0
  1109. package/tools/tool/registry/__init__.py +183 -0
  1110. package/tools/tool/runtime.py +87 -0
  1111. package/tools/tool/schema.py +99 -0
  1112. package/tools/tool/skill_provider.py +164 -0
  1113. package/tools/tool/todo_provider.py +161 -0
  1114. package/tools/tool/tools.yaml +115 -0
@@ -0,0 +1,1259 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>🐾 Neko Orchestrator</title>
7
+ <style>
8
+ /* ═══ CSS Variables ═══ */
9
+ :root {
10
+ --sakura: #FFB7C5;
11
+ --sakura-light: #FFD4DE;
12
+ --sakura-dark: #E89AA8;
13
+ --mint: #98D8C8;
14
+ --mint-light: #B8E8DC;
15
+ --mint-dark: #6FC4B0;
16
+ --cream: #FFF7FA;
17
+ --berry: #2B1828;
18
+ --berry-light: #4A2F45;
19
+ --violet: #6E5AA8;
20
+ --violet-light: #9080C8;
21
+ --honey: #FFB86B;
22
+ --green: #45D6A3;
23
+ --gray: #8A7A85;
24
+ --white: #FFFFFF;
25
+
26
+ --radius-card: 24px;
27
+ --radius-btn: 14px;
28
+ --radius-input: 16px;
29
+ --shadow-soft: 0 4px 20px rgba(255,183,197,0.15);
30
+ --shadow-mint: 0 4px 20px rgba(152,216,200,0.2);
31
+ --shadow-glow-sakura: 0 0 16px rgba(255,183,197,0.4);
32
+ --shadow-glow-mint: 0 0 16px rgba(152,216,200,0.4);
33
+ --transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
34
+ --font-display: 'ZCOOL KuaiLe', 'Microsoft YaHei', sans-serif;
35
+ --font-body: 'Inter', 'MiSans', 'HarmonyOS Sans', 'Microsoft YaHei', sans-serif;
36
+ --font-mono: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', 'Consolas', monospace;
37
+ }
38
+
39
+ * { margin: 0; padding: 0; box-sizing: border-box; }
40
+
41
+ body {
42
+ font-family: var(--font-body);
43
+ background: linear-gradient(135deg, var(--cream) 0%, #FFF0F5 50%, #F0FFF8 100%);
44
+ color: var(--berry);
45
+ overflow: hidden;
46
+ height: 100vh;
47
+ }
48
+
49
+ /* ═══ Sakura Particles Background ═══ */
50
+ #sakura-canvas {
51
+ position: fixed;
52
+ top: 0; left: 0;
53
+ width: 100%; height: 100%;
54
+ pointer-events: none;
55
+ z-index: 0;
56
+ opacity: 0.5;
57
+ }
58
+
59
+ /* ═══ Three-column Layout ═══ */
60
+ .app {
61
+ display: flex;
62
+ height: 100vh;
63
+ position: relative;
64
+ z-index: 1;
65
+ }
66
+
67
+ /* ═══ Left Sidebar ═══ */
68
+ .sidebar-left {
69
+ width: 280px;
70
+ min-width: 280px;
71
+ background: rgba(255,255,255,0.7);
72
+ backdrop-filter: blur(20px);
73
+ -webkit-backdrop-filter: blur(20px);
74
+ border-right: 1px solid rgba(255,183,197,0.2);
75
+ display: flex;
76
+ flex-direction: column;
77
+ overflow-y: auto;
78
+ }
79
+
80
+ .logo {
81
+ padding: 20px 24px 16px;
82
+ display: flex;
83
+ align-items: center;
84
+ gap: 10px;
85
+ }
86
+ .logo-icon { font-size: 28px; }
87
+ .logo-text {
88
+ font-family: var(--font-display);
89
+ font-size: 18px;
90
+ color: var(--berry);
91
+ letter-spacing: 0.5px;
92
+ }
93
+
94
+ .search-box {
95
+ margin: 0 16px 16px;
96
+ position: relative;
97
+ }
98
+ .search-box input {
99
+ width: 100%;
100
+ padding: 10px 14px 10px 36px;
101
+ border: 1.5px solid rgba(255,183,197,0.3);
102
+ border-radius: var(--radius-input);
103
+ background: rgba(255,255,255,0.6);
104
+ font-size: 13px;
105
+ color: var(--berry);
106
+ outline: none;
107
+ transition: var(--transition);
108
+ }
109
+ .search-box input:focus {
110
+ border-color: var(--mint);
111
+ box-shadow: var(--shadow-glow-mint);
112
+ }
113
+ .search-box input::placeholder { color: var(--gray); }
114
+ .search-icon {
115
+ position: absolute;
116
+ left: 12px;
117
+ top: 50%;
118
+ transform: translateY(-50%);
119
+ font-size: 14px;
120
+ opacity: 0.5;
121
+ }
122
+
123
+ .cmd-groups {
124
+ flex: 1;
125
+ padding: 0 12px 16px;
126
+ }
127
+ .cmd-group-title {
128
+ font-size: 11px;
129
+ font-weight: 700;
130
+ color: var(--gray);
131
+ text-transform: uppercase;
132
+ letter-spacing: 1px;
133
+ padding: 12px 12px 8px;
134
+ }
135
+
136
+ .cmd-pill {
137
+ display: flex;
138
+ align-items: center;
139
+ gap: 8px;
140
+ padding: 8px 14px;
141
+ margin: 2px 0;
142
+ border-radius: var(--radius-btn);
143
+ cursor: pointer;
144
+ transition: var(--transition);
145
+ border: 1.5px solid transparent;
146
+ position: relative;
147
+ }
148
+ .cmd-pill:hover {
149
+ background: rgba(152,216,200,0.12);
150
+ box-shadow: var(--shadow-glow-mint);
151
+ }
152
+ .cmd-pill.active {
153
+ background: linear-gradient(135deg, var(--mint) 0%, var(--mint-light) 100%);
154
+ color: var(--berry);
155
+ font-weight: 600;
156
+ box-shadow: var(--shadow-mint);
157
+ }
158
+ .cmd-pill.active::before {
159
+ content: '';
160
+ position: absolute;
161
+ left: -2px;
162
+ top: 50%;
163
+ transform: translateY(-50%);
164
+ width: 6px;
165
+ height: 6px;
166
+ border-radius: 50%;
167
+ background: var(--green);
168
+ box-shadow: 0 0 8px var(--green);
169
+ }
170
+ .cmd-icon { font-size: 16px; min-width: 20px; }
171
+ .cmd-name { font-size: 13px; flex: 1; }
172
+ .cmd-key {
173
+ font-family: var(--font-mono);
174
+ font-size: 10px;
175
+ background: rgba(110,90,168,0.1);
176
+ color: var(--violet);
177
+ padding: 2px 6px;
178
+ border-radius: 4px;
179
+ }
180
+
181
+ /* ═══ Main Area ═══ */
182
+ .main-area {
183
+ flex: 1;
184
+ display: flex;
185
+ flex-direction: column;
186
+ overflow: hidden;
187
+ }
188
+
189
+ .global-bar {
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: space-between;
193
+ padding: 12px 24px;
194
+ border-bottom: 1px solid rgba(255,183,197,0.15);
195
+ }
196
+ .breadcrumb {
197
+ font-size: 12px;
198
+ color: var(--gray);
199
+ }
200
+ .breadcrumb span { color: var(--sakura-dark); }
201
+ .bar-actions {
202
+ display: flex;
203
+ gap: 12px;
204
+ align-items: center;
205
+ }
206
+ .bar-icon {
207
+ width: 32px; height: 32px;
208
+ display: flex;
209
+ align-items: center;
210
+ justify-content: center;
211
+ border-radius: 50%;
212
+ cursor: pointer;
213
+ transition: var(--transition);
214
+ font-size: 16px;
215
+ }
216
+ .bar-icon:hover { background: rgba(255,183,197,0.15); }
217
+ .avatar {
218
+ width: 32px; height: 32px;
219
+ border-radius: 50%;
220
+ background: linear-gradient(135deg, var(--sakura) 0%, var(--mint) 100%);
221
+ display: flex;
222
+ align-items: center;
223
+ justify-content: center;
224
+ color: white;
225
+ font-size: 14px;
226
+ font-weight: 700;
227
+ }
228
+
229
+ /* ═══ Hero + Cat Spirit ═══ */
230
+ .hero {
231
+ display: flex;
232
+ align-items: center;
233
+ justify-content: center;
234
+ gap: 24px;
235
+ padding: 20px 24px;
236
+ background: rgba(255,255,255,0.3);
237
+ }
238
+ .hero-text {
239
+ text-align: right;
240
+ }
241
+ .hero-title {
242
+ font-family: var(--font-display);
243
+ font-size: 20px;
244
+ color: var(--berry);
245
+ }
246
+ .hero-sub {
247
+ font-size: 12px;
248
+ color: var(--gray);
249
+ margin-top: 4px;
250
+ }
251
+
252
+ .cat-spirit {
253
+ position: relative;
254
+ width: 120px;
255
+ height: 120px;
256
+ display: flex;
257
+ align-items: center;
258
+ justify-content: center;
259
+ }
260
+ .cat-svg {
261
+ width: 80px;
262
+ height: 80px;
263
+ filter: drop-shadow(0 4px 12px rgba(255,183,197,0.3));
264
+ }
265
+ .cat-spirit.running .cat-svg {
266
+ animation: catBounce 1.5s ease-in-out infinite;
267
+ }
268
+ @keyframes catBounce {
269
+ 0%, 100% { transform: translateY(0); }
270
+ 50% { transform: translateY(-4px); }
271
+ }
272
+ .cat-spirit.running .ear-left { animation: earGlowL 2s ease-in-out infinite; }
273
+ .cat-spirit.running .ear-right { animation: earGlowR 2s ease-in-out infinite; }
274
+ @keyframes earGlowL {
275
+ 0%, 100% { fill: var(--sakura); filter: drop-shadow(0 0 4px var(--sakura)); }
276
+ 50% { fill: var(--mint); filter: drop-shadow(0 0 12px var(--mint)); }
277
+ }
278
+ @keyframes earGlowR {
279
+ 0%, 100% { fill: var(--mint); filter: drop-shadow(0 0 4px var(--mint)); }
280
+ 50% { fill: var(--sakura); filter: drop-shadow(0 0 12px var(--sakura)); }
281
+ }
282
+ .cat-status-capsules {
283
+ position: absolute;
284
+ display: flex;
285
+ flex-wrap: wrap;
286
+ gap: 4px;
287
+ justify-content: center;
288
+ width: 160px;
289
+ top: -8px;
290
+ left: 50%;
291
+ transform: translateX(-50%);
292
+ }
293
+ .capsule {
294
+ font-family: var(--font-mono);
295
+ font-size: 9px;
296
+ padding: 2px 8px;
297
+ border-radius: 20px;
298
+ background: rgba(255,255,255,0.8);
299
+ border: 1px solid rgba(255,183,197,0.3);
300
+ color: var(--berry);
301
+ white-space: nowrap;
302
+ }
303
+ .capsule.running { color: var(--green); border-color: var(--green); }
304
+ .capsule.error { color: var(--honey); border-color: var(--honey); }
305
+
306
+ /* ═══ Chat Flow ═══ */
307
+ .chat-flow {
308
+ flex: 1;
309
+ overflow-y: auto;
310
+ padding: 16px 24px;
311
+ display: flex;
312
+ flex-direction: column;
313
+ gap: 16px;
314
+ }
315
+
316
+ .msg-user {
317
+ align-self: flex-end;
318
+ max-width: 70%;
319
+ background: linear-gradient(135deg, var(--sakura-light) 0%, var(--sakura) 100%);
320
+ color: var(--berry);
321
+ padding: 12px 18px;
322
+ border-radius: 20px 20px 4px 20px;
323
+ font-size: 14px;
324
+ box-shadow: var(--shadow-soft);
325
+ }
326
+
327
+ .agent-card {
328
+ align-self: flex-start;
329
+ max-width: 85%;
330
+ background: rgba(255,255,255,0.75);
331
+ backdrop-filter: blur(10px);
332
+ border: 1px solid rgba(152,216,200,0.25);
333
+ border-radius: 20px 20px 20px 4px;
334
+ padding: 16px 20px;
335
+ box-shadow: var(--shadow-soft);
336
+ animation: fadeInUp 0.4s ease-out;
337
+ }
338
+ @keyframes fadeInUp {
339
+ from { opacity: 0; transform: translateY(10px); }
340
+ to { opacity: 1; transform: translateY(0); }
341
+ }
342
+
343
+ .cmd-header {
344
+ display: flex;
345
+ align-items: center;
346
+ gap: 10px;
347
+ margin-bottom: 12px;
348
+ padding-bottom: 10px;
349
+ border-bottom: 1px solid rgba(255,183,197,0.15);
350
+ }
351
+ .cmd-badge {
352
+ font-family: var(--font-mono);
353
+ font-size: 12px;
354
+ font-weight: 600;
355
+ color: var(--violet);
356
+ background: rgba(110,90,168,0.08);
357
+ padding: 3px 10px;
358
+ border-radius: 8px;
359
+ }
360
+ .cmd-status {
361
+ font-size: 11px;
362
+ color: var(--green);
363
+ margin-left: auto;
364
+ }
365
+ .cmd-time {
366
+ font-family: var(--font-mono);
367
+ font-size: 11px;
368
+ color: var(--gray);
369
+ }
370
+
371
+ .tool-timeline {
372
+ margin: 12px 0;
373
+ padding-left: 20px;
374
+ border-left: 2px solid var(--mint);
375
+ }
376
+ .timeline-node {
377
+ position: relative;
378
+ padding: 6px 0 6px 16px;
379
+ }
380
+ .timeline-node::before {
381
+ content: '';
382
+ position: absolute;
383
+ left: -27px;
384
+ top: 12px;
385
+ width: 10px;
386
+ height: 10px;
387
+ border-radius: 50%;
388
+ background: var(--mint);
389
+ border: 2px solid white;
390
+ box-shadow: 0 0 6px rgba(152,216,200,0.5);
391
+ }
392
+ .timeline-node.thinking::before { background: var(--gray); }
393
+ .timeline-node.streaming::before { background: var(--sakura); }
394
+ .timeline-label {
395
+ font-size: 12px;
396
+ font-weight: 600;
397
+ color: var(--berry);
398
+ }
399
+ .timeline-desc {
400
+ font-size: 11px;
401
+ color: var(--gray);
402
+ margin-top: 2px;
403
+ }
404
+ .timeline-tag {
405
+ font-family: var(--font-mono);
406
+ font-size: 10px;
407
+ color: var(--violet);
408
+ background: rgba(110,90,168,0.06);
409
+ padding: 1px 6px;
410
+ border-radius: 4px;
411
+ margin-left: 6px;
412
+ }
413
+
414
+ .terminal-block {
415
+ background: var(--berry);
416
+ border-radius: 16px;
417
+ padding: 16px;
418
+ margin-top: 12px;
419
+ position: relative;
420
+ overflow: hidden;
421
+ }
422
+ .terminal-dots {
423
+ display: flex;
424
+ gap: 6px;
425
+ margin-bottom: 10px;
426
+ }
427
+ .terminal-dot {
428
+ width: 10px; height: 10px;
429
+ border-radius: 50%;
430
+ }
431
+ .terminal-dot:nth-child(1) { background: #FF5F56; }
432
+ .terminal-dot:nth-child(2) { background: #FFBD2E; }
433
+ .terminal-dot:nth-child(3) { background: #27C93F; }
434
+ .terminal-copy {
435
+ position: absolute;
436
+ top: 12px;
437
+ right: 12px;
438
+ font-size: 10px;
439
+ color: rgba(255,255,255,0.4);
440
+ cursor: pointer;
441
+ padding: 4px 8px;
442
+ border-radius: 6px;
443
+ transition: var(--transition);
444
+ }
445
+ .terminal-copy:hover { color: rgba(255,255,255,0.8); background: rgba(255,255,255,0.1); }
446
+ .terminal-code {
447
+ font-family: var(--font-mono);
448
+ font-size: 12px;
449
+ line-height: 1.7;
450
+ color: #E0D0D8;
451
+ }
452
+ .term-cmd { color: var(--sakura); }
453
+ .term-str { color: var(--mint); }
454
+ .term-comment { color: rgba(255,255,255,0.3); }
455
+ .term-keyword { color: var(--honey); }
456
+ .term-number { color: var(--green); }
457
+
458
+ /* ═══ Input Area ═══ */
459
+ .input-area {
460
+ padding: 12px 24px 20px;
461
+ display: flex;
462
+ gap: 10px;
463
+ }
464
+ .input-main {
465
+ flex: 1;
466
+ display: flex;
467
+ align-items: center;
468
+ background: rgba(255,255,255,0.7);
469
+ backdrop-filter: blur(10px);
470
+ border: 1.5px solid rgba(255,183,197,0.25);
471
+ border-radius: var(--radius-input);
472
+ padding: 4px 4px 4px 18px;
473
+ transition: var(--transition);
474
+ }
475
+ .input-main:focus-within {
476
+ border-color: var(--mint);
477
+ box-shadow: var(--shadow-glow-mint);
478
+ }
479
+ .input-main input {
480
+ flex: 1;
481
+ border: none;
482
+ background: transparent;
483
+ font-size: 14px;
484
+ color: var(--berry);
485
+ outline: none;
486
+ padding: 10px 0;
487
+ }
488
+ .input-main input::placeholder { color: var(--gray); }
489
+ .btn-send, .btn-run-cmd {
490
+ border: none;
491
+ border-radius: 12px;
492
+ padding: 10px 18px;
493
+ font-size: 13px;
494
+ font-weight: 600;
495
+ cursor: pointer;
496
+ transition: var(--transition);
497
+ }
498
+ .btn-send {
499
+ background: linear-gradient(135deg, var(--sakura) 0%, var(--sakura-dark) 100%);
500
+ color: white;
501
+ }
502
+ .btn-send:hover { box-shadow: var(--shadow-glow-sakura); transform: translateY(-1px); }
503
+ .btn-run-cmd {
504
+ background: linear-gradient(135deg, var(--mint) 0%, var(--mint-dark) 100%);
505
+ color: white;
506
+ }
507
+ .btn-run-cmd:hover { box-shadow: var(--shadow-glow-mint); transform: translateY(-1px); }
508
+
509
+ /* ═══ Right Sidebar ═══ */
510
+ .sidebar-right {
511
+ width: 340px;
512
+ min-width: 340px;
513
+ background: rgba(255,255,255,0.5);
514
+ backdrop-filter: blur(20px);
515
+ -webkit-backdrop-filter: blur(20px);
516
+ border-left: 1px solid rgba(255,183,197,0.2);
517
+ overflow-y: auto;
518
+ padding: 16px;
519
+ display: flex;
520
+ flex-direction: column;
521
+ gap: 12px;
522
+ }
523
+
524
+ .status-card {
525
+ background: rgba(255,255,255,0.65);
526
+ border: 1px solid rgba(255,183,197,0.15);
527
+ border-radius: var(--radius-card);
528
+ padding: 16px;
529
+ box-shadow: var(--shadow-soft);
530
+ }
531
+ .card-title {
532
+ font-size: 12px;
533
+ font-weight: 700;
534
+ color: var(--berry);
535
+ margin-bottom: 12px;
536
+ display: flex;
537
+ align-items: center;
538
+ gap: 6px;
539
+ }
540
+ .card-title-icon { font-size: 14px; }
541
+
542
+ .model-row {
543
+ display: flex;
544
+ align-items: center;
545
+ justify-content: space-between;
546
+ padding: 6px 0;
547
+ }
548
+ .model-name {
549
+ font-family: var(--font-mono);
550
+ font-size: 12px;
551
+ color: var(--berry);
552
+ }
553
+ .model-health {
554
+ display: flex;
555
+ align-items: center;
556
+ gap: 6px;
557
+ }
558
+ .health-dot {
559
+ width: 8px; height: 8px;
560
+ border-radius: 50%;
561
+ }
562
+ .health-dot.excellent { background: var(--green); box-shadow: 0 0 6px var(--green); }
563
+ .health-dot.good { background: var(--mint); }
564
+ .health-dot.warn { background: var(--honey); }
565
+ .health-pct {
566
+ font-family: var(--font-mono);
567
+ font-size: 11px;
568
+ color: var(--gray);
569
+ }
570
+
571
+ .worker-row {
572
+ display: flex;
573
+ align-items: center;
574
+ gap: 8px;
575
+ padding: 5px 0;
576
+ }
577
+ .worker-dot {
578
+ width: 7px; height: 7px;
579
+ border-radius: 50%;
580
+ }
581
+ .worker-dot.active { background: var(--green); box-shadow: 0 0 5px var(--green); }
582
+ .worker-dot.idle { background: var(--gray); opacity: 0.4; }
583
+ .worker-name {
584
+ font-family: var(--font-mono);
585
+ font-size: 12px;
586
+ flex: 1;
587
+ }
588
+ .worker-rate {
589
+ font-family: var(--font-mono);
590
+ font-size: 10px;
591
+ color: var(--mint-dark);
592
+ }
593
+
594
+ .session-info {
595
+ font-size: 12px;
596
+ }
597
+ .session-name {
598
+ font-weight: 600;
599
+ color: var(--berry);
600
+ }
601
+ .session-meta {
602
+ font-family: var(--font-mono);
603
+ font-size: 10px;
604
+ color: var(--gray);
605
+ margin-top: 2px;
606
+ }
607
+
608
+ .cron-item {
609
+ display: flex;
610
+ align-items: center;
611
+ justify-content: space-between;
612
+ padding: 5px 0;
613
+ }
614
+ .cron-time {
615
+ font-family: var(--font-mono);
616
+ font-size: 11px;
617
+ color: var(--sakura-dark);
618
+ }
619
+ .cron-name {
620
+ font-size: 12px;
621
+ color: var(--berry);
622
+ }
623
+ .cron-countdown {
624
+ font-family: var(--font-mono);
625
+ font-size: 10px;
626
+ color: var(--gray);
627
+ }
628
+
629
+ .soul-card {
630
+ text-align: center;
631
+ }
632
+ .soul-avatar {
633
+ width: 48px; height: 48px;
634
+ margin: 0 auto 8px;
635
+ border-radius: 50%;
636
+ background: linear-gradient(135deg, var(--sakura) 0%, var(--mint) 100%);
637
+ display: flex;
638
+ align-items: center;
639
+ justify-content: center;
640
+ font-size: 24px;
641
+ }
642
+ .soul-name {
643
+ font-family: var(--font-display);
644
+ font-size: 14px;
645
+ color: var(--berry);
646
+ }
647
+ .soul-tags {
648
+ display: flex;
649
+ gap: 4px;
650
+ justify-content: center;
651
+ flex-wrap: wrap;
652
+ margin: 6px 0;
653
+ }
654
+ .soul-tag {
655
+ font-size: 10px;
656
+ padding: 2px 8px;
657
+ border-radius: 10px;
658
+ background: rgba(152,216,200,0.15);
659
+ color: var(--mint-dark);
660
+ }
661
+ .soul-desc {
662
+ font-size: 11px;
663
+ color: var(--gray);
664
+ margin-top: 4px;
665
+ }
666
+
667
+ .usage-ring-container {
668
+ display: flex;
669
+ align-items: center;
670
+ justify-content: center;
671
+ margin: 8px 0;
672
+ }
673
+ #token-ring-canvas {
674
+ width: 120px;
675
+ height: 120px;
676
+ }
677
+ .usage-cost {
678
+ text-align: center;
679
+ font-family: var(--font-mono);
680
+ font-size: 18px;
681
+ font-weight: 700;
682
+ color: var(--sakura-dark);
683
+ margin-top: 4px;
684
+ }
685
+ .usage-detail {
686
+ display: flex;
687
+ justify-content: space-around;
688
+ margin-top: 8px;
689
+ }
690
+ .usage-item {
691
+ text-align: center;
692
+ }
693
+ .usage-label {
694
+ font-size: 10px;
695
+ color: var(--gray);
696
+ }
697
+ .usage-value {
698
+ font-family: var(--font-mono);
699
+ font-size: 12px;
700
+ font-weight: 600;
701
+ color: var(--berry);
702
+ }
703
+ .usage-dot {
704
+ display: inline-block;
705
+ width: 8px; height: 8px;
706
+ border-radius: 50%;
707
+ margin-right: 4px;
708
+ }
709
+
710
+ /* ═══ Responsive ═══ */
711
+ @media (max-width: 1024px) {
712
+ .sidebar-right { display: none; }
713
+ }
714
+ @media (max-width: 768px) {
715
+ .sidebar-left {
716
+ position: absolute;
717
+ z-index: 10;
718
+ height: 100%;
719
+ transform: translateX(-100%);
720
+ transition: transform 0.3s;
721
+ }
722
+ .sidebar-left.open { transform: translateX(0); }
723
+ .hero { display: none; }
724
+ }
725
+
726
+ @media (prefers-reduced-motion: reduce) {
727
+ *, *::before, *::after {
728
+ animation-duration: 0.01ms !important;
729
+ transition-duration: 0.01ms !important;
730
+ }
731
+ }
732
+ </style>
733
+ </head>
734
+ <body>
735
+
736
+ <canvas id="sakura-canvas"></canvas>
737
+
738
+ <div class="app">
739
+ <!-- ═══ Left Sidebar ═══ -->
740
+ <aside class="sidebar-left" id="sidebar">
741
+ <div class="logo">
742
+ <span class="logo-icon">🐱</span>
743
+ <span class="logo-text">Neko Orchestrator</span>
744
+ </div>
745
+ <div class="search-box">
746
+ <span class="search-icon">🔍</span>
747
+ <input type="text" id="search-input" placeholder="搜索命令、skill、session…" />
748
+ </div>
749
+ <div class="cmd-groups" id="cmd-groups"></div>
750
+ </aside>
751
+
752
+ <!-- ═══ Main Area ═══ -->
753
+ <div class="main-area">
754
+ <div class="global-bar">
755
+ <div class="breadcrumb">Workspace / <span>Local</span> / Orchestrator</div>
756
+ <div class="bar-actions">
757
+ <div class="bar-icon" title="主题">🌙</div>
758
+ <div class="bar-icon" title="通知">🔔</div>
759
+ <div class="avatar">涛</div>
760
+ </div>
761
+ </div>
762
+
763
+ <div class="hero">
764
+ <div class="hero-text">
765
+ <div class="hero-title">把命令变成可点击的魔法阵 ✨</div>
766
+ <div class="hero-sub">实时观察 Agent 的每一次调用、迭代和输出</div>
767
+ </div>
768
+ <div class="cat-spirit" id="cat-spirit">
769
+ <div class="cat-status-capsules" id="cat-capsules"></div>
770
+ <svg class="cat-svg" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
771
+ <!-- Left ear -->
772
+ <path class="ear-left" d="M20,30 L15,10 L35,22 Z" fill="#FFB7C5" stroke="#E89AA8" stroke-width="0.5"/>
773
+ <!-- Right ear -->
774
+ <path class="ear-right" d="M80,30 L85,10 L65,22 Z" fill="#98D8C8" stroke="#6FC4B0" stroke-width="0.5"/>
775
+ <!-- Head -->
776
+ <circle cx="50" cy="50" r="28" fill="#FFF0F5" stroke="#FFB7C5" stroke-width="1.5"/>
777
+ <!-- Eyes -->
778
+ <ellipse cx="40" cy="48" rx="4" ry="5" fill="#2B1828" id="left-eye"/>
779
+ <ellipse cx="60" cy="48" rx="4" ry="5" fill="#2B1828" id="right-eye"/>
780
+ <!-- Eye shine -->
781
+ <circle cx="41" cy="46" r="1.5" fill="white"/>
782
+ <circle cx="61" cy="46" r="1.5" fill="white"/>
783
+ <!-- Nose -->
784
+ <path d="M48,55 L52,55 L50,58 Z" fill="#FFB7C5"/>
785
+ <!-- Mouth -->
786
+ <path d="M50,58 Q45,63 42,60" fill="none" stroke="#FFB7C5" stroke-width="1.2" stroke-linecap="round"/>
787
+ <path d="M50,58 Q55,63 58,60" fill="none" stroke="#FFB7C5" stroke-width="1.2" stroke-linecap="round"/>
788
+ <!-- Blush -->
789
+ <circle cx="35" cy="58" r="4" fill="#FFB7C5" opacity="0.4"/>
790
+ <circle cx="65" cy="58" r="4" fill="#FFB7C5" opacity="0.4"/>
791
+ <!-- Tail -->
792
+ <path d="M75,70 Q90,60 85,40" fill="none" stroke="#98D8C8" stroke-width="4" stroke-linecap="round" id="cat-tail"/>
793
+ </svg>
794
+ </div>
795
+ </div>
796
+
797
+ <div class="chat-flow" id="chat-flow"></div>
798
+
799
+ <div class="input-area">
800
+ <div class="input-main">
801
+ <input type="text" id="chat-input" placeholder="输入自然语言,或点击左侧命令启动…" />
802
+ </div>
803
+ <button class="btn-send" id="btn-send">发送 📤</button>
804
+ <button class="btn-run-cmd" id="btn-run-cmd">运行选中命令 ▶</button>
805
+ </div>
806
+ </div>
807
+
808
+ <!-- ═══ Right Sidebar ═══ -->
809
+ <aside class="sidebar-right" id="sidebar-right">
810
+ <!-- Model Health -->
811
+ <div class="status-card">
812
+ <div class="card-title"><span class="card-title-icon">💚</span> Model Health</div>
813
+ <div id="model-health-list"></div>
814
+ </div>
815
+ <!-- Workers -->
816
+ <div class="status-card">
817
+ <div class="card-title"><span class="card-title-icon">⚡</span> Workers</div>
818
+ <div style="font-size:11px;color:var(--gray);margin-bottom:8px;">
819
+ <span id="worker-active-count">3</span> active / <span id="worker-idle-count">7</span> idle
820
+ </div>
821
+ <div id="workers-list"></div>
822
+ </div>
823
+ <!-- Sessions -->
824
+ <div class="status-card">
825
+ <div class="card-title"><span class="card-title-icon">📝</span> Sessions</div>
826
+ <div class="session-info" id="session-info"></div>
827
+ </div>
828
+ <!-- Cron Queue -->
829
+ <div class="status-card">
830
+ <div class="card-title"><span class="card-title-icon">⏰</span> Cron Queue</div>
831
+ <div id="cron-queue-list"></div>
832
+ </div>
833
+ <!-- Soul Profile -->
834
+ <div class="status-card soul-card">
835
+ <div class="card-title" style="justify-content:center;"><span class="card-title-icon">🌸</span> Soul Profile</div>
836
+ <div class="soul-avatar">🐾</div>
837
+ <div class="soul-name" id="soul-name">小爪</div>
838
+ <div class="soul-tags" id="soul-tags"></div>
839
+ <div class="soul-desc" id="soul-desc"></div>
840
+ </div>
841
+ <!-- Usage -->
842
+ <div class="status-card">
843
+ <div class="card-title"><span class="card-title-icon">📊</span> Usage</div>
844
+ <div class="usage-ring-container">
845
+ <canvas id="token-ring-canvas" width="120" height="120"></canvas>
846
+ </div>
847
+ <div class="usage-cost" id="usage-cost">$0.00</div>
848
+ <div class="usage-detail" id="usage-detail"></div>
849
+ </div>
850
+ </aside>
851
+ </div>
852
+
853
+ <script>
854
+ // ═══ Mock Data ═══
855
+ const COMMANDS = {
856
+ 'Core': [
857
+ {icon:'🤖',name:'models',key:'Ctrl+M'},
858
+ {icon:'🔀',name:'model',key:'Ctrl+Shift+M'},
859
+ {icon:'🧠',name:'llm',key:'Ctrl+L'},
860
+ {icon:'▶️',name:'run',key:'Ctrl+R'},
861
+ {icon:'🎯',name:'run-agent',key:'Ctrl+A'},
862
+ {icon:'📊',name:'status',key:'Ctrl+S'},
863
+ {icon:'🩺',name:'doctor',key:'Ctrl+D'},
864
+ ],
865
+ 'Control': [
866
+ {icon:'🎼',name:'orchestrator',key:'Ctrl+O'},
867
+ {icon:'👥',name:'agents',key:''},
868
+ {icon:'🔧',name:'workers',key:''},
869
+ {icon:'🛠️',name:'tools',key:''},
870
+ {icon:'📚',name:'skills',key:''},
871
+ {icon:'🔌',name:'mcp',key:''},
872
+ ],
873
+ 'Memory': [
874
+ {icon:'💾',name:'sessions',key:''},
875
+ {icon:'🗜️',name:'compress',key:''},
876
+ {icon:'🏗️',name:'architecture',key:''},
877
+ ],
878
+ 'Automation': [
879
+ {icon:'⏰',name:'cron',key:'Ctrl+C'},
880
+ {icon:'🎭',name:'soul',key:''},
881
+ {icon:'📈',name:'usage',key:''},
882
+ {icon:'💬',name:'chat',key:''},
883
+ ],
884
+ };
885
+
886
+ const MOCK = {
887
+ models: [
888
+ {name:'gpt-5.4', health:'excellent', pct:'98.7%'},
889
+ {name:'gpt-5.4-mini', health:'good', pct:'96.1%'},
890
+ {name:'glm-5.2', health:'good', pct:'93.4%'},
891
+ ],
892
+ workers: [
893
+ {name:'sakura-01', status:'active', rate:'847 tok/s'},
894
+ {name:'sakura-02', status:'active', rate:'1.2k tok/s'},
895
+ {name:'sakura-03', status:'active', rate:'632 tok/s'},
896
+ {name:'sakura-04', status:'idle', rate:''},
897
+ {name:'sakura-05', status:'idle', rate:''},
898
+ ],
899
+ session: {name:'cron-debug', status:'Active', id:'sess_8f3a...c9e1', tokens:'12.8k'},
900
+ cronQueue: [
901
+ {time:'10:30', name:'sync-metrics', countdown:'14m 32s'},
902
+ {time:'11:00', name:'cache-warmup', countdown:'44m 32s'},
903
+ {time:'12:00', name:'daily-report', countdown:'1h 44m'},
904
+ ],
905
+ soul: {name:'小爪 🐾', tags:['可爱','高效','温和','专注'], desc:'白明涛的数字幽灵,住在系统里的猫咪助手'},
906
+ usage: {input:65.3, output:58.1, cache:5.3, cost:'$2.43'},
907
+ catState: {status:'RUNNING', iteration:'03 / 08', worker:'sakura-02', latency:'243ms', tokens:'12.8k'},
908
+ };
909
+
910
+ // ═══ State ═══
911
+ let selectedCmd = 'cron';
912
+ let catState = 'idle'; // idle | running | success | error
913
+
914
+ // ═══ Init Left Sidebar ═══
915
+ function renderCommands() {
916
+ const container = document.getElementById('cmd-groups');
917
+ container.innerHTML = '';
918
+ for (const [group, cmds] of Object.entries(COMMANDS)) {
919
+ const groupDiv = document.createElement('div');
920
+ groupDiv.innerHTML = '<div class="cmd-group-title">' + group + '</div>';
921
+ cmds.forEach(cmd => {
922
+ const pill = document.createElement('div');
923
+ pill.className = 'cmd-pill' + (cmd.name === selectedCmd ? ' active' : '');
924
+ pill.dataset.cmd = cmd.name;
925
+ pill.innerHTML = '<span class="cmd-icon">'+cmd.icon+'</span>' +
926
+ '<span class="cmd-name">'+cmd.name+'</span>' +
927
+ (cmd.key ? '<span class="cmd-key">'+cmd.key+'</span>' : '');
928
+ pill.onclick = () => selectCommand(cmd.name);
929
+ groupDiv.appendChild(pill);
930
+ });
931
+ container.appendChild(groupDiv);
932
+ }
933
+ }
934
+
935
+ function selectCommand(name) {
936
+ selectedCmd = name;
937
+ document.querySelectorAll('.cmd-pill').forEach(p => {
938
+ p.classList.toggle('active', p.dataset.cmd === name);
939
+ });
940
+ document.getElementById('chat-input').placeholder = '输入自然语言运行 ' + name + ',或直接点"运行选中命令" ▶';
941
+ }
942
+
943
+ // ═══ Chat Flow ═══
944
+ function addMessage(text, isUser) {
945
+ const flow = document.getElementById('chat-flow');
946
+ if (isUser) {
947
+ const msg = document.createElement('div');
948
+ msg.className = 'msg-user';
949
+ msg.textContent = text;
950
+ flow.appendChild(msg);
951
+ } else {
952
+ // Agent response card
953
+ const card = document.createElement('div');
954
+ card.className = 'agent-card';
955
+ card.innerHTML = makeAgentResponse(text);
956
+ flow.appendChild(card);
957
+ }
958
+ flow.scrollTop = flow.scrollHeight;
959
+ }
960
+
961
+ function makeAgentResponse(userText) {
962
+ const cmd = selectedCmd || 'cron';
963
+ return ''+
964
+ '<div class="cmd-header">'+
965
+ '<span class="cmd-badge">$ '+cmd+'</span>'+
966
+ '<span class="cmd-status">✓ 已完成</span>'+
967
+ '<span class="cmd-time">243ms</span>'+
968
+ '</div>'+
969
+ '<div class="tool-timeline">'+
970
+ '<div class="timeline-node thinking">'+
971
+ '<div class="timeline-label">Thinking <span class="timeline-tag">iteration 03/08</span></div>'+
972
+ '<div class="timeline-desc">分析请求,准备执行 '+cmd+' 命令…</div>'+
973
+ '</div>'+
974
+ '<div class="timeline-node">'+
975
+ '<div class="timeline-label">Tool call <span class="timeline-tag">worker: sakura-02</span></div>'+
976
+ '<div class="timeline-desc">调用工具:'+cmd+'.execute()</div>'+
977
+ '</div>'+
978
+ '<div class="timeline-node streaming">'+
979
+ '<div class="timeline-label">Streaming output <span class="timeline-tag">tokens: 12.8k</span></div>'+
980
+ '<div class="timeline-desc">正在流式输出结果…</div>'+
981
+ '</div>'+
982
+ '</div>'+
983
+ '<div class="terminal-block">'+
984
+ '<div class="terminal-dots"><div class="terminal-dot"></div><div class="terminal-dot"></div><div class="terminal-dot"></div></div>'+
985
+ '<div class="terminal-copy">📋 复制</div>'+
986
+ '<pre class="terminal-code"><span class="term-cmd">$ '+cmd+'</span>\n\n'+
987
+ '<span class="term-comment"># '+MOCK.session.name+' — '+MOCK.session.status+'</span>\n'+
988
+ '<span class="term-keyword">Schedule</span> Status: <span class="term-str">Active</span>\n'+
989
+ '<span class="term-keyword">Timezone</span>: Asia/Shanghai\n\n'+
990
+ '<span class="term-keyword">Total</span> Jobs: <span class="term-number">8</span>\n'+
991
+ '<span class="term-keyword">Enabled</span>: <span class="term-number">6</span>\n'+
992
+ '<span class="term-keyword">Paused</span>: <span class="term-number">2</span>\n\n'+
993
+ 'ID Name Schedule Next Run Status\n'+
994
+ '<span class="term-number">1</span> <span class="term-str">daily-report</span> <span class="term-number">0 9 * * *</span> today 09:00 <span class="term-str">Active</span>\n'+
995
+ '<span class="term-number">2</span> <span class="term-str">sync-metrics</span> <span class="term-number">*/15 * * * *</span> in 14m 32s <span class="term-str">Active</span>\n'+
996
+ '<span class="term-number">3</span> <span class="term-str">cleanup-temp</span> <span class="term-number">0 3 * * 0</span> Sunday 03:00 <span class="term-comment">Paused</span>\n\n'+
997
+ '<span class="term-comment">Next Upcoming:</span>\n'+
998
+ '<span class="term-str">sync-metrics</span> in <span class="term-number">14m 32s</span></pre>'+
999
+ '</div>';
1000
+ }
1001
+
1002
+ // ═══ Cat Spirit ═══
1003
+ function updateCatState(state) {
1004
+ catState = state;
1005
+ const spirit = document.getElementById('cat-spirit');
1006
+ const capsules = document.getElementById('cat-capsules');
1007
+ spirit.className = 'cat-spirit ' + (state === 'running' ? 'running' : '');
1008
+
1009
+ const caps = MOCK.catState;
1010
+ let html = '';
1011
+ const statusClass = state === 'error' ? 'error' : (state === 'running' ? 'running' : '');
1012
+ html += '<span class="capsule '+statusClass+'">'+(state==='running'?'● RUNNING':state==='success'?'✓ DONE':state==='error'?'✗ ERROR':'○ IDLE')+'</span>';
1013
+ if (state === 'running' || state === 'success') {
1014
+ html += '<span class="capsule">iteration '+caps.iteration+'</span>';
1015
+ html += '<span class="capsule">worker: '+caps.worker+'</span>';
1016
+ html += '<span class="capsule">'+caps.latency+'</span>';
1017
+ html += '<span class="capsule">'+caps.tokens+' tokens</span>';
1018
+ }
1019
+ capsules.innerHTML = html;
1020
+
1021
+ // Update eye expression
1022
+ const leftEye = document.getElementById('left-eye');
1023
+ const rightEye = document.getElementById('right-eye');
1024
+ if (state === 'success') {
1025
+ leftEye.setAttribute('ry','2'); rightEye.setAttribute('ry','2');
1026
+ } else if (state === 'error') {
1027
+ leftEye.setAttribute('ry','6'); rightEye.setAttribute('ry','6');
1028
+ } else {
1029
+ leftEye.setAttribute('ry','5'); rightEye.setAttribute('ry','5');
1030
+ }
1031
+ }
1032
+
1033
+ // ═══ Right Panel Render ═══
1034
+ function renderModels() {
1035
+ const list = document.getElementById('model-health-list');
1036
+ list.innerHTML = MOCK.models.map(m =>
1037
+ '<div class="model-row">'+
1038
+ '<span class="model-name">'+m.name+'</span>'+
1039
+ '<span class="model-health"><span class="health-dot '+m.health+'"></span><span class="health-pct">'+m.pct+'</span></span>'+
1040
+ '</div>'
1041
+ ).join('');
1042
+ }
1043
+
1044
+ function renderWorkers() {
1045
+ const list = document.getElementById('workers-list');
1046
+ list.innerHTML = MOCK.workers.map(w =>
1047
+ '<div class="worker-row">'+
1048
+ '<span class="worker-dot '+w.status+'"></span>'+
1049
+ '<span class="worker-name">'+w.name+'</span>'+
1050
+ '<span class="worker-rate">'+(w.rate||'')+'</span>'+
1051
+ '</div>'
1052
+ ).join('');
1053
+ document.getElementById('worker-active-count').textContent = MOCK.workers.filter(w=>w.status==='active').length;
1054
+ document.getElementById('worker-idle-count').textContent = MOCK.workers.filter(w=>w.status==='idle').length;
1055
+ }
1056
+
1057
+ function renderSession() {
1058
+ const s = MOCK.session;
1059
+ document.getElementById('session-info').innerHTML =
1060
+ '<div class="session-name">'+s.name+' <span style="color:var(--green);font-size:11px;">● '+s.status+'</span></div>'+
1061
+ '<div class="session-meta">ID: '+s.id+'</div>'+
1062
+ '<div class="session-meta">tokens: '+s.tokens+'</div>';
1063
+ }
1064
+
1065
+ function renderCronQueue() {
1066
+ const list = document.getElementById('cron-queue-list');
1067
+ list.innerHTML = MOCK.cronQueue.map(c =>
1068
+ '<div class="cron-item">'+
1069
+ '<div><span class="cron-time">'+c.time+'</span> <span class="cron-name">'+c.name+'</span></div>'+
1070
+ '<span class="cron-countdown">'+c.countdown+'</span>'+
1071
+ '</div>'
1072
+ ).join('');
1073
+ }
1074
+
1075
+ function renderSoul() {
1076
+ document.getElementById('soul-name').textContent = MOCK.soul.name;
1077
+ document.getElementById('soul-tags').innerHTML = MOCK.soul.tags.map(t=>'<span class="soul-tag">'+t+'</span>').join('');
1078
+ document.getElementById('soul-desc').textContent = MOCK.soul.desc;
1079
+ }
1080
+
1081
+ function renderUsage() {
1082
+ const u = MOCK.usage;
1083
+ document.getElementById('usage-cost').textContent = u.cost;
1084
+ const colors = {input:'#FFB7C5', output:'#98D8C8', cache:'#6E5AA8'};
1085
+ document.getElementById('usage-detail').innerHTML = [
1086
+ {label:'Input', val:u.input+'k', color:colors.input},
1087
+ {label:'Output', val:u.output+'k', color:colors.output},
1088
+ {label:'Cache', val:u.cache+'k', color:colors.cache},
1089
+ ].map(d =>
1090
+ '<div class="usage-item">'+
1091
+ '<div class="usage-label"><span class="usage-dot" style="background:'+d.color+';"></span>'+d.label+'</div>'+
1092
+ '<div class="usage-value">'+d.val+'</div>'+
1093
+ '</div>'
1094
+ ).join('');
1095
+ drawTokenRing(u);
1096
+ }
1097
+
1098
+ function drawTokenRing(u) {
1099
+ const canvas = document.getElementById('token-ring-canvas');
1100
+ const ctx = canvas.getContext('2d');
1101
+ const cx = 60, cy = 60;
1102
+ const total = u.input + u.output + u.cache;
1103
+ const segments = [
1104
+ {val: u.input, color: '#FFB7C5'},
1105
+ {val: u.output, color: '#98D8C8'},
1106
+ {val: u.cache, color: '#6E5AA8'},
1107
+ ];
1108
+ let startAngle = -Math.PI / 2;
1109
+ const radii = [50, 40, 30];
1110
+ segments.forEach((seg, i) => {
1111
+ const angle = (seg.val / total) * Math.PI * 2;
1112
+ ctx.beginPath();
1113
+ ctx.arc(cx, cy, radii[i], startAngle, startAngle + angle);
1114
+ ctx.strokeStyle = seg.color;
1115
+ ctx.lineWidth = 8;
1116
+ ctx.lineCap = 'round';
1117
+ ctx.stroke();
1118
+ startAngle += angle;
1119
+ });
1120
+ ctx.fillStyle = '#2B1828';
1121
+ ctx.font = 'bold 12px monospace';
1122
+ ctx.textAlign = 'center';
1123
+ ctx.fillText(u.cost, cx, cy + 5);
1124
+ }
1125
+
1126
+ // ═══ Sakura Particles ═══
1127
+ function initSakuraParticles() {
1128
+ const canvas = document.getElementById('sakura-canvas');
1129
+ const ctx = canvas.getContext('2d');
1130
+ let particles = [];
1131
+
1132
+ function resize() {
1133
+ canvas.width = window.innerWidth;
1134
+ canvas.height = window.innerHeight;
1135
+ }
1136
+ resize();
1137
+ window.addEventListener('resize', resize);
1138
+
1139
+ for (let i = 0; i < 35; i++) {
1140
+ particles.push({
1141
+ x: Math.random() * canvas.width,
1142
+ y: Math.random() * canvas.height,
1143
+ size: Math.random() * 8 + 6,
1144
+ speedY: Math.random() * 0.5 + 0.3,
1145
+ speedX: Math.random() * 0.4 - 0.2,
1146
+ rotation: Math.random() * Math.PI * 2,
1147
+ rotSpeed: (Math.random() - 0.5) * 0.02,
1148
+ opacity: Math.random() * 0.3 + 0.15,
1149
+ });
1150
+ }
1151
+
1152
+ function drawPetal(x, y, size, rotation, opacity) {
1153
+ ctx.save();
1154
+ ctx.translate(x, y);
1155
+ ctx.rotate(rotation);
1156
+ ctx.globalAlpha = opacity;
1157
+ ctx.fillStyle = '#FFB7C5';
1158
+ ctx.beginPath();
1159
+ ctx.moveTo(0, 0);
1160
+ ctx.bezierCurveTo(size/2, -size/3, size, 0, 0, size);
1161
+ ctx.bezierCurveTo(-size, 0, -size/2, -size/3, 0, 0);
1162
+ ctx.fill();
1163
+ ctx.restore();
1164
+ }
1165
+
1166
+ function animate() {
1167
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
1168
+ particles.forEach(p => {
1169
+ p.y += p.speedY;
1170
+ p.x += p.speedX + Math.sin(p.y * 0.01) * 0.3;
1171
+ p.rotation += p.rotSpeed;
1172
+ if (p.y > canvas.height + 20) {
1173
+ p.y = -20;
1174
+ p.x = Math.random() * canvas.width;
1175
+ }
1176
+ drawPetal(p.x, p.y, p.size, p.rotation, p.opacity);
1177
+ });
1178
+ requestAnimationFrame(animate);
1179
+ }
1180
+ animate();
1181
+ }
1182
+
1183
+ // ═══ Event Handlers ═══
1184
+ document.getElementById('btn-send').onclick = () => {
1185
+ const input = document.getElementById('chat-input');
1186
+ const text = input.value.trim();
1187
+ if (!text) return;
1188
+ addMessage(text, true);
1189
+ input.value = '';
1190
+ setCatRunning();
1191
+ setTimeout(() => {
1192
+ addMessage(text, false);
1193
+ updateCatState('success');
1194
+ }, 1200);
1195
+ };
1196
+
1197
+ document.getElementById('btn-run-cmd').onclick = () => {
1198
+ addMessage('运行 ' + selectedCmd + ' 命令', true);
1199
+ setCatRunning();
1200
+ setTimeout(() => {
1201
+ addMessage('$ ' + selectedCmd, false);
1202
+ updateCatState('success');
1203
+ }, 1200);
1204
+ };
1205
+
1206
+ document.getElementById('chat-input').addEventListener('keydown', (e) => {
1207
+ if (e.key === 'Enter') {
1208
+ document.getElementById('btn-send').click();
1209
+ }
1210
+ });
1211
+
1212
+ function setCatRunning() {
1213
+ updateCatState('running');
1214
+ setTimeout(() => updateCatState('running'), 600); // keep running
1215
+ }
1216
+
1217
+ // Search
1218
+ document.getElementById('search-input').addEventListener('input', (e) => {
1219
+ const q = e.target.value.toLowerCase();
1220
+ document.querySelectorAll('.cmd-pill').forEach(pill => {
1221
+ const name = pill.dataset.cmd.toLowerCase();
1222
+ pill.style.display = name.includes(q) ? '' : 'none';
1223
+ });
1224
+ });
1225
+
1226
+ // Keyboard shortcuts
1227
+ document.addEventListener('keydown', (e) => {
1228
+ if (e.ctrlKey && e.key === 'k') {
1229
+ e.preventDefault();
1230
+ document.getElementById('search-input').focus();
1231
+ }
1232
+ if (e.ctrlKey && e.key === 'Enter') {
1233
+ e.preventDefault();
1234
+ document.getElementById('btn-run-cmd').click();
1235
+ }
1236
+ if (e.key === 'Escape') {
1237
+ updateCatState('idle');
1238
+ }
1239
+ });
1240
+
1241
+ // ═══ Init ═══
1242
+ renderCommands();
1243
+ renderModels();
1244
+ renderWorkers();
1245
+ renderSession();
1246
+ renderCronQueue();
1247
+ renderSoul();
1248
+ renderUsage();
1249
+ updateCatState('idle');
1250
+ initSakuraParticles();
1251
+
1252
+ // Welcome message
1253
+ setTimeout(() => {
1254
+ addMessage('欢迎回来,涛!🐾 猫耳终端已就绪,点击左侧命令或输入自然语言开始~', false);
1255
+ }, 300);
1256
+ </script>
1257
+
1258
+ </body>
1259
+ </html>