myagent-ai 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 (486) hide show
  1. package/Dockerfile +30 -0
  2. package/README.md +333 -0
  3. package/agents/__init__.py +6 -0
  4. package/agents/__pycache__/main_agent.cpython-312.pyc +0 -0
  5. package/agents/base.py +115 -0
  6. package/agents/main_agent.py +695 -0
  7. package/agents/memory_agent.py +313 -0
  8. package/agents/tool_agent.py +248 -0
  9. package/chatbot/__init__.py +5 -0
  10. package/chatbot/base.py +124 -0
  11. package/chatbot/discord_bot.py +146 -0
  12. package/chatbot/feishu_bot.py +548 -0
  13. package/chatbot/manager.py +164 -0
  14. package/chatbot/qq_bot.py +189 -0
  15. package/chatbot/telegram_bot.py +167 -0
  16. package/chatbot/wechat_bot.py +558 -0
  17. package/communication/__init__.py +66 -0
  18. package/communication/channel.py +576 -0
  19. package/communication/crypto.py +347 -0
  20. package/communication/manager.py +397 -0
  21. package/communication/peer.py +156 -0
  22. package/config.py +464 -0
  23. package/core/__init__.py +10 -0
  24. package/core/config_broadcast.py +276 -0
  25. package/core/llm.py +878 -0
  26. package/core/logger.py +241 -0
  27. package/core/task_queue.py +362 -0
  28. package/core/utils.py +184 -0
  29. package/executor/__init__.py +4 -0
  30. package/executor/__pycache__/engine.cpython-312.pyc +0 -0
  31. package/executor/engine.py +1215 -0
  32. package/groups/__init__.py +15 -0
  33. package/groups/manager.py +724 -0
  34. package/knowledge/__init__.py +4 -0
  35. package/knowledge/rag.py +444 -0
  36. package/main.py +801 -0
  37. package/memory/__init__.py +4 -0
  38. package/memory/manager.py +840 -0
  39. package/organization/__init__.py +4 -0
  40. package/organization/manager.py +350 -0
  41. package/package.json +58 -0
  42. package/requirements.txt +59 -0
  43. package/setup.py +40 -0
  44. package/skills/ASR/LICENSE.txt +21 -0
  45. package/skills/ASR/SKILL.md +580 -0
  46. package/skills/ASR/scripts/asr.ts +27 -0
  47. package/skills/LLM/LICENSE.txt +21 -0
  48. package/skills/LLM/SKILL.md +856 -0
  49. package/skills/LLM/scripts/chat.ts +32 -0
  50. package/skills/TTS/LICENSE.txt +21 -0
  51. package/skills/TTS/SKILL.md +735 -0
  52. package/skills/TTS/tts.ts +25 -0
  53. package/skills/VLM/LICENSE.txt +21 -0
  54. package/skills/VLM/SKILL.md +588 -0
  55. package/skills/VLM/scripts/vlm.ts +57 -0
  56. package/skills/__init__.py +5 -0
  57. package/skills/agent-browser/SKILL.md +328 -0
  58. package/skills/ai-news-collectors/SKILL.md +157 -0
  59. package/skills/ai-news-collectors/_meta.json +6 -0
  60. package/skills/ai-news-collectors/references/sources.md +128 -0
  61. package/skills/aminer-open-academic/SKILL.md +312 -0
  62. package/skills/aminer-open-academic/_meta.json +6 -0
  63. package/skills/aminer-open-academic/evals/evals.json +46 -0
  64. package/skills/aminer-open-academic/references/api-catalog.md +1032 -0
  65. package/skills/aminer-open-academic/scripts/__pycache__/aminer_client.cpython-312.pyc +0 -0
  66. package/skills/aminer-open-academic/scripts/aminer_client.py +875 -0
  67. package/skills/auto-target-tracker/SKILL.md +317 -0
  68. package/skills/base.py +147 -0
  69. package/skills/blog-writer/2024-02-17-radical-transparency-sales.md +35 -0
  70. package/skills/blog-writer/2024-02-17-raycast-spotlight-superpowers.md +33 -0
  71. package/skills/blog-writer/2024-02-17-short-form-content-marketing.md +47 -0
  72. package/skills/blog-writer/2024-02-17-typing-speed-benefits.md +33 -0
  73. package/skills/blog-writer/2024-03-14-effective-ai-prompts.md +55 -0
  74. package/skills/blog-writer/2024-11-08-ai-revolutionizing-entry-level-sales.md +43 -0
  75. package/skills/blog-writer/2025-11-12-why-ai-art-is-useless.md +49 -0
  76. package/skills/blog-writer/README.md +2 -0
  77. package/skills/blog-writer/SKILL.md +158 -0
  78. package/skills/blog-writer/__pycache__/manage_examples.cpython-312.pyc +0 -0
  79. package/skills/blog-writer/_meta.json +6 -0
  80. package/skills/blog-writer/manage_examples.py +90 -0
  81. package/skills/blog-writer/style-guide.md +160 -0
  82. package/skills/browser_skill.py +146 -0
  83. package/skills/coding-agent/SKILL.md +120 -0
  84. package/skills/coding-agent/_meta.json +6 -0
  85. package/skills/coding-agent/criteria.md +48 -0
  86. package/skills/coding-agent/execution.md +42 -0
  87. package/skills/coding-agent/memory-template.md +38 -0
  88. package/skills/coding-agent/planning.md +31 -0
  89. package/skills/coding-agent/state.md +60 -0
  90. package/skills/coding-agent/verification.md +39 -0
  91. package/skills/content-strategy/SKILL.md +181 -0
  92. package/skills/content-strategy/_meta.json +6 -0
  93. package/skills/contentanalysis/ExtractWisdom/SKILL.md +229 -0
  94. package/skills/contentanalysis/ExtractWisdom/Workflows/Extract.md +60 -0
  95. package/skills/contentanalysis/SKILL.md +14 -0
  96. package/skills/docx/CHANGELOG.md +85 -0
  97. package/skills/docx/LICENSE.txt +30 -0
  98. package/skills/docx/SKILL.md +455 -0
  99. package/skills/docx/docx-js.md +681 -0
  100. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  101. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  102. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  103. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  104. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  105. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  106. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  107. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  108. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  109. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  110. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  111. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  112. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  113. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  114. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  115. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  116. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  117. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  118. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  119. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  120. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  121. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  122. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  123. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  124. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  125. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  126. package/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  127. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  128. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  129. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  130. package/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  131. package/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  132. package/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  133. package/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  134. package/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  135. package/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  136. package/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  137. package/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  138. package/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  139. package/skills/docx/ooxml/scripts/__pycache__/pack.cpython-312.pyc +0 -0
  140. package/skills/docx/ooxml/scripts/__pycache__/unpack.cpython-312.pyc +0 -0
  141. package/skills/docx/ooxml/scripts/__pycache__/validate.cpython-312.pyc +0 -0
  142. package/skills/docx/ooxml/scripts/pack.py +159 -0
  143. package/skills/docx/ooxml/scripts/unpack.py +29 -0
  144. package/skills/docx/ooxml/scripts/validate.py +69 -0
  145. package/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  146. package/skills/docx/ooxml/scripts/validation/__pycache__/__init__.cpython-312.pyc +0 -0
  147. package/skills/docx/ooxml/scripts/validation/__pycache__/base.cpython-312.pyc +0 -0
  148. package/skills/docx/ooxml/scripts/validation/__pycache__/docx.cpython-312.pyc +0 -0
  149. package/skills/docx/ooxml/scripts/validation/__pycache__/pptx.cpython-312.pyc +0 -0
  150. package/skills/docx/ooxml/scripts/validation/__pycache__/redlining.cpython-312.pyc +0 -0
  151. package/skills/docx/ooxml/scripts/validation/base.py +951 -0
  152. package/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  153. package/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  154. package/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  155. package/skills/docx/ooxml.md +615 -0
  156. package/skills/docx/scripts/__init__.py +1 -0
  157. package/skills/docx/scripts/__pycache__/__init__.cpython-312.pyc +0 -0
  158. package/skills/docx/scripts/__pycache__/add_toc_placeholders.cpython-312.pyc +0 -0
  159. package/skills/docx/scripts/__pycache__/document.cpython-312.pyc +0 -0
  160. package/skills/docx/scripts/__pycache__/utilities.cpython-312.pyc +0 -0
  161. package/skills/docx/scripts/add_toc_placeholders.py +220 -0
  162. package/skills/docx/scripts/document.py +1302 -0
  163. package/skills/docx/scripts/templates/comments.xml +3 -0
  164. package/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  165. package/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  166. package/skills/docx/scripts/templates/commentsIds.xml +3 -0
  167. package/skills/docx/scripts/templates/people.xml +3 -0
  168. package/skills/docx/scripts/utilities.py +374 -0
  169. package/skills/dream-interpreter/SKILL.md +88 -0
  170. package/skills/dream-interpreter/assets/example_asset.txt +24 -0
  171. package/skills/dream-interpreter/references/api_reference.md +34 -0
  172. package/skills/dream-interpreter/references/interpretation-guide.md +83 -0
  173. package/skills/dream-interpreter/references/output-schema.md +65 -0
  174. package/skills/dream-interpreter/references/questioning-strategy.md +62 -0
  175. package/skills/dream-interpreter/references/visual-mapping.md +81 -0
  176. package/skills/dream-interpreter/scripts/__pycache__/example.cpython-312.pyc +0 -0
  177. package/skills/dream-interpreter/scripts/example.py +19 -0
  178. package/skills/dream-interpreter/skill.json +7 -0
  179. package/skills/file_skill.py +246 -0
  180. package/skills/finance/Finance_API_Doc.md +445 -0
  181. package/skills/finance/SKILL.md +53 -0
  182. package/skills/fullstack-dev/SKILL.md +205 -0
  183. package/skills/get-fortune-analysis/SKILL.md +370 -0
  184. package/skills/get-fortune-analysis/lunar_python.py +91 -0
  185. package/skills/gift-evaluator/SKILL.md +83 -0
  186. package/skills/gift-evaluator/__pycache__/html_tools.cpython-312.pyc +0 -0
  187. package/skills/gift-evaluator/html_tools.py +268 -0
  188. package/skills/image-edit/LICENSE.txt +21 -0
  189. package/skills/image-edit/SKILL.md +896 -0
  190. package/skills/image-edit/scripts/image-edit.ts +36 -0
  191. package/skills/image-generation/LICENSE.txt +21 -0
  192. package/skills/image-generation/SKILL.md +583 -0
  193. package/skills/image-generation/scripts/image-generation.ts +28 -0
  194. package/skills/image-understand/LICENSE.txt +21 -0
  195. package/skills/image-understand/SKILL.md +855 -0
  196. package/skills/image-understand/scripts/image-understand.ts +41 -0
  197. package/skills/interview-designer/README.md +70 -0
  198. package/skills/interview-designer/SKILL.md +53 -0
  199. package/skills/interview-designer/_meta.json +6 -0
  200. package/skills/interview-designer/references/design_rationale.md +43 -0
  201. package/skills/interview-designer/templates/interview_guide_template.md +62 -0
  202. package/skills/market-research-reports/SKILL.md +901 -0
  203. package/skills/market-research-reports/assets/FORMATTING_GUIDE.md +428 -0
  204. package/skills/market-research-reports/assets/market_report_template.tex +1380 -0
  205. package/skills/market-research-reports/assets/market_research.sty +564 -0
  206. package/skills/market-research-reports/references/data_analysis_patterns.md +548 -0
  207. package/skills/market-research-reports/references/report_structure_guide.md +999 -0
  208. package/skills/market-research-reports/references/visual_generation_guide.md +1077 -0
  209. package/skills/market-research-reports/scripts/__pycache__/generate_market_visuals.cpython-312.pyc +0 -0
  210. package/skills/market-research-reports/scripts/generate_market_visuals.py +529 -0
  211. package/skills/marketing-mode/README.md +49 -0
  212. package/skills/marketing-mode/SKILL.md +693 -0
  213. package/skills/marketing-mode/_meta.json +6 -0
  214. package/skills/marketing-mode/mode-prompt.md +39 -0
  215. package/skills/marketing-mode/skill.json +51 -0
  216. package/skills/mindfulness-meditation/SKILL.md +65 -0
  217. package/skills/mindfulness-meditation/_meta.json +6 -0
  218. package/skills/multi-search-engine/CHANGELOG.md +15 -0
  219. package/skills/multi-search-engine/CHANNELLOG.md +48 -0
  220. package/skills/multi-search-engine/SKILL.md +78 -0
  221. package/skills/multi-search-engine/_meta.json +6 -0
  222. package/skills/multi-search-engine/config.json +14 -0
  223. package/skills/multi-search-engine/metadata.json +7 -0
  224. package/skills/multi-search-engine/references/international-search.md +651 -0
  225. package/skills/pdf/LICENSE.txt +30 -0
  226. package/skills/pdf/SKILL.md +1534 -0
  227. package/skills/pdf/forms.md +205 -0
  228. package/skills/pdf/reference.md +765 -0
  229. package/skills/pdf/scripts/__pycache__/add_zai_metadata.cpython-312.pyc +0 -0
  230. package/skills/pdf/scripts/__pycache__/check_bounding_boxes.cpython-312.pyc +0 -0
  231. package/skills/pdf/scripts/__pycache__/check_bounding_boxes_test.cpython-312.pyc +0 -0
  232. package/skills/pdf/scripts/__pycache__/check_fillable_fields.cpython-312.pyc +0 -0
  233. package/skills/pdf/scripts/__pycache__/convert_pdf_to_images.cpython-312.pyc +0 -0
  234. package/skills/pdf/scripts/__pycache__/create_validation_image.cpython-312.pyc +0 -0
  235. package/skills/pdf/scripts/__pycache__/extract_form_field_info.cpython-312.pyc +0 -0
  236. package/skills/pdf/scripts/__pycache__/fill_fillable_fields.cpython-312.pyc +0 -0
  237. package/skills/pdf/scripts/__pycache__/fill_pdf_form_with_annotations.cpython-312.pyc +0 -0
  238. package/skills/pdf/scripts/__pycache__/sanitize_code.cpython-312.pyc +0 -0
  239. package/skills/pdf/scripts/add_zai_metadata.py +172 -0
  240. package/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  241. package/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  242. package/skills/pdf/scripts/check_fillable_fields.py +12 -0
  243. package/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  244. package/skills/pdf/scripts/create_validation_image.py +41 -0
  245. package/skills/pdf/scripts/extract_form_field_info.py +152 -0
  246. package/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  247. package/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  248. package/skills/pdf/scripts/sanitize_code.py +110 -0
  249. package/skills/podcast-generate/LICENSE.txt +21 -0
  250. package/skills/podcast-generate/SKILL.md +198 -0
  251. package/skills/podcast-generate/generate.ts +661 -0
  252. package/skills/podcast-generate/package.json +30 -0
  253. package/skills/podcast-generate/readme.md +177 -0
  254. package/skills/podcast-generate/test_data/segments.jsonl +3 -0
  255. package/skills/podcast-generate/tsconfig.json +26 -0
  256. package/skills/pptx/LICENSE.txt +30 -0
  257. package/skills/pptx/SKILL.md +507 -0
  258. package/skills/pptx/html2pptx.md +625 -0
  259. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  260. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  261. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  262. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  263. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  264. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  265. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  266. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  267. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  268. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  269. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  270. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  271. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  272. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  273. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  274. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  275. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  276. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  277. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  278. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  279. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  280. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  281. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  282. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  283. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  284. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  285. package/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  286. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  287. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  288. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  289. package/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  290. package/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  291. package/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  292. package/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  293. package/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  294. package/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  295. package/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  296. package/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  297. package/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  298. package/skills/pptx/ooxml/scripts/__pycache__/pack.cpython-312.pyc +0 -0
  299. package/skills/pptx/ooxml/scripts/__pycache__/unpack.cpython-312.pyc +0 -0
  300. package/skills/pptx/ooxml/scripts/__pycache__/validate.cpython-312.pyc +0 -0
  301. package/skills/pptx/ooxml/scripts/pack.py +159 -0
  302. package/skills/pptx/ooxml/scripts/unpack.py +29 -0
  303. package/skills/pptx/ooxml/scripts/validate.py +69 -0
  304. package/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  305. package/skills/pptx/ooxml/scripts/validation/__pycache__/__init__.cpython-312.pyc +0 -0
  306. package/skills/pptx/ooxml/scripts/validation/__pycache__/base.cpython-312.pyc +0 -0
  307. package/skills/pptx/ooxml/scripts/validation/__pycache__/docx.cpython-312.pyc +0 -0
  308. package/skills/pptx/ooxml/scripts/validation/__pycache__/pptx.cpython-312.pyc +0 -0
  309. package/skills/pptx/ooxml/scripts/validation/__pycache__/redlining.cpython-312.pyc +0 -0
  310. package/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  311. package/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  312. package/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  313. package/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  314. package/skills/pptx/ooxml.md +427 -0
  315. package/skills/pptx/scripts/__pycache__/inventory.cpython-312.pyc +0 -0
  316. package/skills/pptx/scripts/__pycache__/inventory.cpython-313.pyc +0 -0
  317. package/skills/pptx/scripts/__pycache__/rearrange.cpython-312.pyc +0 -0
  318. package/skills/pptx/scripts/__pycache__/replace.cpython-312.pyc +0 -0
  319. package/skills/pptx/scripts/__pycache__/thumbnail.cpython-312.pyc +0 -0
  320. package/skills/pptx/scripts/html2pptx.js +1044 -0
  321. package/skills/pptx/scripts/inventory.py +1020 -0
  322. package/skills/pptx/scripts/rearrange.py +231 -0
  323. package/skills/pptx/scripts/replace.py +385 -0
  324. package/skills/pptx/scripts/thumbnail.py +450 -0
  325. package/skills/qingyan-research/SKILL.md +294 -0
  326. package/skills/qingyan-research/__pycache__/generate_html.cpython-312.pyc +0 -0
  327. package/skills/qingyan-research/generate_html.py +33 -0
  328. package/skills/registry.py +344 -0
  329. package/skills/search_skill.py +228 -0
  330. package/skills/seo-content-writer/SKILL.md +661 -0
  331. package/skills/seo-content-writer/_meta.json +6 -0
  332. package/skills/seo-content-writer/references/content-structure-templates.md +875 -0
  333. package/skills/seo-content-writer/references/title-formulas.md +339 -0
  334. package/skills/skill-creator/LICENSE.txt +202 -0
  335. package/skills/skill-creator/SKILL.md +485 -0
  336. package/skills/skill-creator/agents/analyzer.md +274 -0
  337. package/skills/skill-creator/agents/comparator.md +202 -0
  338. package/skills/skill-creator/agents/grader.md +223 -0
  339. package/skills/skill-creator/assets/eval_review.html +146 -0
  340. package/skills/skill-creator/eval-viewer/__pycache__/generate_review.cpython-312.pyc +0 -0
  341. package/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  342. package/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  343. package/skills/skill-creator/references/schemas.md +430 -0
  344. package/skills/skill-creator/scripts/__init__.py +0 -0
  345. package/skills/skill-creator/scripts/__pycache__/__init__.cpython-312.pyc +0 -0
  346. package/skills/skill-creator/scripts/__pycache__/aggregate_benchmark.cpython-312.pyc +0 -0
  347. package/skills/skill-creator/scripts/__pycache__/generate_report.cpython-312.pyc +0 -0
  348. package/skills/skill-creator/scripts/__pycache__/improve_description.cpython-312.pyc +0 -0
  349. package/skills/skill-creator/scripts/__pycache__/package_skill.cpython-312.pyc +0 -0
  350. package/skills/skill-creator/scripts/__pycache__/quick_validate.cpython-312.pyc +0 -0
  351. package/skills/skill-creator/scripts/__pycache__/run_eval.cpython-312.pyc +0 -0
  352. package/skills/skill-creator/scripts/__pycache__/run_loop.cpython-312.pyc +0 -0
  353. package/skills/skill-creator/scripts/__pycache__/utils.cpython-312.pyc +0 -0
  354. package/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  355. package/skills/skill-creator/scripts/generate_report.py +326 -0
  356. package/skills/skill-creator/scripts/improve_description.py +236 -0
  357. package/skills/skill-creator/scripts/package_skill.py +136 -0
  358. package/skills/skill-creator/scripts/quick_validate.py +103 -0
  359. package/skills/skill-creator/scripts/run_eval.py +310 -0
  360. package/skills/skill-creator/scripts/run_loop.py +328 -0
  361. package/skills/skill-creator/scripts/utils.py +47 -0
  362. package/skills/skill-finder-cn/SKILL.md +66 -0
  363. package/skills/skill-finder-cn/_meta.json +6 -0
  364. package/skills/skill-finder-cn/package.json +5 -0
  365. package/skills/skill-finder-cn/scripts/search.sh +15 -0
  366. package/skills/skill-vetter/SKILL.md +137 -0
  367. package/skills/stock-analysis-skill/SKILL.md +156 -0
  368. package/skills/stock-analysis-skill/package.json +21 -0
  369. package/skills/stock-analysis-skill/src/analyzer.ts +264 -0
  370. package/skills/stock-analysis-skill/src/dataFetcher.ts +130 -0
  371. package/skills/stock-analysis-skill/src/dividend.ts +226 -0
  372. package/skills/stock-analysis-skill/src/index.ts +327 -0
  373. package/skills/stock-analysis-skill/src/rumorScanner.ts +200 -0
  374. package/skills/stock-analysis-skill/src/types.ts +167 -0
  375. package/skills/stock-analysis-skill/src/watchlist.ts +292 -0
  376. package/skills/stock-analysis-skill/tsconfig.json +15 -0
  377. package/skills/storyboard-manager/SKILL.md +532 -0
  378. package/skills/storyboard-manager/index.js +9 -0
  379. package/skills/storyboard-manager/package.json +11 -0
  380. package/skills/storyboard-manager/references/character_development.md +232 -0
  381. package/skills/storyboard-manager/references/story_structures.md +148 -0
  382. package/skills/storyboard-manager/scripts/__pycache__/consistency_checker.cpython-312.pyc +0 -0
  383. package/skills/storyboard-manager/scripts/__pycache__/timeline_tracker.cpython-312.pyc +0 -0
  384. package/skills/storyboard-manager/scripts/consistency_checker.py +391 -0
  385. package/skills/storyboard-manager/scripts/timeline_tracker.py +352 -0
  386. package/skills/system_skill.py +249 -0
  387. package/skills/ui-ux-pro-max/SKILL.md +43 -0
  388. package/skills/ui-ux-pro-max/_meta.json +6 -0
  389. package/skills/ui-ux-pro-max/assets/data/charts.csv +26 -0
  390. package/skills/ui-ux-pro-max/assets/data/colors.csv +97 -0
  391. package/skills/ui-ux-pro-max/assets/data/icons.csv +101 -0
  392. package/skills/ui-ux-pro-max/assets/data/landing.csv +31 -0
  393. package/skills/ui-ux-pro-max/assets/data/products.csv +97 -0
  394. package/skills/ui-ux-pro-max/assets/data/react-performance.csv +45 -0
  395. package/skills/ui-ux-pro-max/assets/data/stacks/astro.csv +54 -0
  396. package/skills/ui-ux-pro-max/assets/data/stacks/flutter.csv +53 -0
  397. package/skills/ui-ux-pro-max/assets/data/stacks/html-tailwind.csv +56 -0
  398. package/skills/ui-ux-pro-max/assets/data/stacks/jetpack-compose.csv +53 -0
  399. package/skills/ui-ux-pro-max/assets/data/stacks/nextjs.csv +53 -0
  400. package/skills/ui-ux-pro-max/assets/data/stacks/nuxt-ui.csv +51 -0
  401. package/skills/ui-ux-pro-max/assets/data/stacks/nuxtjs.csv +59 -0
  402. package/skills/ui-ux-pro-max/assets/data/stacks/react-native.csv +52 -0
  403. package/skills/ui-ux-pro-max/assets/data/stacks/react.csv +54 -0
  404. package/skills/ui-ux-pro-max/assets/data/stacks/shadcn.csv +61 -0
  405. package/skills/ui-ux-pro-max/assets/data/stacks/svelte.csv +54 -0
  406. package/skills/ui-ux-pro-max/assets/data/stacks/swiftui.csv +51 -0
  407. package/skills/ui-ux-pro-max/assets/data/stacks/vue.csv +50 -0
  408. package/skills/ui-ux-pro-max/assets/data/styles.csv +68 -0
  409. package/skills/ui-ux-pro-max/assets/data/typography.csv +58 -0
  410. package/skills/ui-ux-pro-max/assets/data/ui-reasoning.csv +101 -0
  411. package/skills/ui-ux-pro-max/assets/data/ux-guidelines.csv +100 -0
  412. package/skills/ui-ux-pro-max/assets/data/web-interface.csv +31 -0
  413. package/skills/ui-ux-pro-max/data/charts.csv +26 -0
  414. package/skills/ui-ux-pro-max/data/colors.csv +97 -0
  415. package/skills/ui-ux-pro-max/data/icons.csv +101 -0
  416. package/skills/ui-ux-pro-max/data/landing.csv +31 -0
  417. package/skills/ui-ux-pro-max/data/products.csv +97 -0
  418. package/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  419. package/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  420. package/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  421. package/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  422. package/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  423. package/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  424. package/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  425. package/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  426. package/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  427. package/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  428. package/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  429. package/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  430. package/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  431. package/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  432. package/skills/ui-ux-pro-max/data/styles.csv +68 -0
  433. package/skills/ui-ux-pro-max/data/typography.csv +58 -0
  434. package/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  435. package/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  436. package/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
  437. package/skills/ui-ux-pro-max/references/upstream-README.md +488 -0
  438. package/skills/ui-ux-pro-max/references/upstream-skill-content.md +288 -0
  439. package/skills/ui-ux-pro-max/scripts/__init__.py +0 -0
  440. package/skills/ui-ux-pro-max/scripts/__pycache__/__init__.cpython-312.pyc +0 -0
  441. package/skills/ui-ux-pro-max/scripts/__pycache__/core.cpython-312.pyc +0 -0
  442. package/skills/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-312.pyc +0 -0
  443. package/skills/ui-ux-pro-max/scripts/__pycache__/search.cpython-312.pyc +0 -0
  444. package/skills/ui-ux-pro-max/scripts/core.py +253 -0
  445. package/skills/ui-ux-pro-max/scripts/design_system.py +1071 -0
  446. package/skills/ui-ux-pro-max/scripts/search.py +111 -0
  447. package/skills/video-generation/LICENSE.txt +21 -0
  448. package/skills/video-generation/SKILL.md +1082 -0
  449. package/skills/video-generation/scripts/video.ts +168 -0
  450. package/skills/video-understand/LICENSE.txt +21 -0
  451. package/skills/video-understand/SKILL.md +916 -0
  452. package/skills/video-understand/scripts/video-understand.ts +41 -0
  453. package/skills/visual-design-foundations/SKILL.md +318 -0
  454. package/skills/visual-design-foundations/references/color-systems.md +417 -0
  455. package/skills/visual-design-foundations/references/spacing-iconography.md +425 -0
  456. package/skills/visual-design-foundations/references/typography-systems.md +432 -0
  457. package/skills/web-reader/LICENSE.txt +21 -0
  458. package/skills/web-reader/SKILL.md +1140 -0
  459. package/skills/web-reader/scripts/web-reader.ts +37 -0
  460. package/skills/web-search/LICENSE.txt +21 -0
  461. package/skills/web-search/SKILL.md +912 -0
  462. package/skills/web-search/scripts/web_search.ts +44 -0
  463. package/skills/web-shader-extractor/SKILL.md +145 -0
  464. package/skills/web-shader-extractor/references/config-extraction.md +50 -0
  465. package/skills/web-shader-extractor/references/encoded-definitions.md +53 -0
  466. package/skills/web-shader-extractor/references/extraction-workflow.md +61 -0
  467. package/skills/web-shader-extractor/references/porting-strategy.md +164 -0
  468. package/skills/web-shader-extractor/references/shader-injection.md +126 -0
  469. package/skills/web-shader-extractor/references/shaders-com.md +190 -0
  470. package/skills/web-shader-extractor/references/tech-signatures.md +54 -0
  471. package/skills/web-shader-extractor/references/tsl-extraction.md +41 -0
  472. package/skills/web-shader-extractor/references/unicorn-studio.md +353 -0
  473. package/skills/web-shader-extractor/scripts/fetch-rendered-dom.mjs +153 -0
  474. package/skills/web-shader-extractor/scripts/scan-bundle.sh +76 -0
  475. package/skills/writing-plans/SKILL.md +116 -0
  476. package/skills/writing-plans/_meta.json +6 -0
  477. package/skills/xlsx/LICENSE.txt +30 -0
  478. package/skills/xlsx/SKILL.md +496 -0
  479. package/skills/xlsx/__pycache__/recalc.cpython-312.pyc +0 -0
  480. package/skills/xlsx/recalc.py +178 -0
  481. package/start.sh +36 -0
  482. package/web/__init__.py +1 -0
  483. package/web/__pycache__/api_server.cpython-312.pyc +0 -0
  484. package/web/api_server.py +2043 -0
  485. package/web/ui/chat.html +3235 -0
  486. package/web/ui/index.html +458 -0
@@ -0,0 +1,36 @@
1
+ import ZAI from 'z-ai-web-dev-sdk';
2
+ import fs from 'fs';
3
+
4
+ async function main(imageSource: string, prompt: string, size: '1024x1024' | '768x1344' | '864x1152' | '1344x768' | '1152x864' | '1440x720' | '720x1440', outFile: string) {
5
+ try {
6
+ const zai = await ZAI.create();
7
+
8
+ const response = await zai.images.generations.edit({
9
+ prompt,
10
+ images: [{ url: imageSource }], // Array of objects with url property
11
+ size
12
+ });
13
+
14
+ const base64 = response?.data?.[0]?.base64;
15
+ if (!base64) {
16
+ console.error('No image data returned by the API');
17
+ console.log('Full response:', JSON.stringify(response, null, 2));
18
+ return;
19
+ }
20
+
21
+ const buffer = Buffer.from(base64, 'base64');
22
+ fs.writeFileSync(outFile, buffer);
23
+ console.log(`Edited image saved to ${outFile}`);
24
+ } catch (err: any) {
25
+ console.error('Image editing failed:', err?.message || err);
26
+ }
27
+ }
28
+
29
+ // Example usage - Edit an image
30
+ // You can use either a URL or a base64 data URL for the imageSource
31
+ main(
32
+ 'https://example.com/photo.jpg', // or use: 'data:image/jpeg;base64,/9j/4AAQ...'
33
+ 'Transform this photo to have a sunset background with warm golden tones',
34
+ '1024x1024',
35
+ './output.png'
36
+ );
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 z-ai-web-dev-sdk Skills
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,583 @@
1
+ ---
2
+ name: image-generation
3
+ description: Implement AI image generation capabilities using the z-ai-web-dev-sdk. Use this skill when the user needs to create images from text descriptions, generate visual content, create artwork, design assets, or build applications with AI-powered image creation. Supports multiple image sizes and returns base64 encoded images. Also includes CLI tool for quick image generation.
4
+ license: MIT
5
+ ---
6
+
7
+ # Image Generation Skill
8
+
9
+ This skill guides the implementation of image generation functionality using the z-ai-web-dev-sdk package and CLI tool, enabling creation of high-quality images from text descriptions.
10
+
11
+ ## Skills Path
12
+
13
+ **Skill Location**: `{project_path}/skills/image-generation`
14
+
15
+ this skill is located at above path in your project.
16
+
17
+ **Reference Scripts**: Example test scripts are available in the `{Skill Location}/scripts/` directory for quick testing and reference. See `{Skill Location}/scripts/image-generation.ts` for a working example.
18
+
19
+ ## Overview
20
+
21
+ Image Generation allows you to build applications that create visual content from text prompts using AI models, enabling creative workflows, design automation, and visual content production.
22
+
23
+ **IMPORTANT**: z-ai-web-dev-sdk MUST be used in backend code only. Never use it in client-side code.
24
+
25
+ ## Prerequisites
26
+
27
+ The z-ai-web-dev-sdk package is already installed. Import it as shown in the examples below.
28
+
29
+ ## Basic Image Generation
30
+
31
+ ### Simple Image Creation
32
+
33
+ ```javascript
34
+ import ZAI from 'z-ai-web-dev-sdk';
35
+ import fs from 'fs';
36
+
37
+ async function generateImage(prompt, outputPath) {
38
+ const zai = await ZAI.create();
39
+
40
+ const response = await zai.images.generations.create({
41
+ prompt: prompt,
42
+ size: '1024x1024'
43
+ });
44
+
45
+ const imageBase64 = response.data[0].base64;
46
+
47
+ // Save image
48
+ const buffer = Buffer.from(imageBase64, 'base64');
49
+ fs.writeFileSync(outputPath, buffer);
50
+
51
+ console.log(`Image saved to ${outputPath}`);
52
+ return outputPath;
53
+ }
54
+
55
+ // Usage
56
+ await generateImage(
57
+ 'A cute cat playing in the garden',
58
+ './cat_image.png'
59
+ );
60
+ ```
61
+
62
+ ### Multiple Image Sizes
63
+
64
+ ```javascript
65
+ import ZAI from 'z-ai-web-dev-sdk';
66
+ import fs from 'fs';
67
+
68
+ // Supported sizes
69
+ const SUPPORTED_SIZES = [
70
+ '1024x1024', // Square
71
+ '768x1344', // Portrait
72
+ '864x1152', // Portrait
73
+ '1344x768', // Landscape
74
+ '1152x864', // Landscape
75
+ '1440x720', // Wide landscape
76
+ '720x1440' // Tall portrait
77
+ ];
78
+
79
+ async function generateImageWithSize(prompt, size, outputPath) {
80
+ if (!SUPPORTED_SIZES.includes(size)) {
81
+ throw new Error(`Unsupported size: ${size}. Use one of: ${SUPPORTED_SIZES.join(', ')}`);
82
+ }
83
+
84
+ const zai = await ZAI.create();
85
+
86
+ const response = await zai.images.generations.create({
87
+ prompt: prompt,
88
+ size: size
89
+ });
90
+
91
+ const imageBase64 = response.data[0].base64;
92
+ const buffer = Buffer.from(imageBase64, 'base64');
93
+ fs.writeFileSync(outputPath, buffer);
94
+
95
+ return {
96
+ path: outputPath,
97
+ size: size,
98
+ fileSize: buffer.length
99
+ };
100
+ }
101
+
102
+ // Usage - Different sizes
103
+ await generateImageWithSize(
104
+ 'A beautiful landscape',
105
+ '1344x768',
106
+ './landscape.png'
107
+ );
108
+
109
+ await generateImageWithSize(
110
+ 'A portrait of a person',
111
+ '768x1344',
112
+ './portrait.png'
113
+ );
114
+ ```
115
+
116
+ ## CLI Tool Usage
117
+
118
+ The z-ai CLI tool provides a convenient way to generate images directly from the command line.
119
+
120
+ ### Basic CLI Usage
121
+
122
+ ```bash
123
+ # Generate image with full options
124
+ z-ai image --prompt "A beautiful landscape" --output "./image.png"
125
+
126
+ # Short form
127
+ z-ai image -p "A cute cat" -o "./cat.png"
128
+
129
+ # Specify size
130
+ z-ai image -p "A sunset" -o "./sunset.png" -s 1344x768
131
+
132
+ # Portrait orientation
133
+ z-ai image -p "A portrait" -o "./portrait.png" -s 768x1344
134
+ ```
135
+
136
+ ### CLI Use Cases
137
+
138
+ ```bash
139
+ # Website hero image
140
+ z-ai image -p "Modern tech office with diverse team collaborating" -o "./hero.png" -s 1440x720
141
+
142
+ # Product image
143
+ z-ai image -p "Sleek smartphone on minimalist desk, professional product photography" -o "./product.png" -s 1024x1024
144
+
145
+ # Blog post illustration
146
+ z-ai image -p "Abstract visualization of data flowing through networks" -o "./blog_header.png" -s 1344x768
147
+
148
+ # Social media content
149
+ z-ai image -p "Vibrant illustration of community connection" -o "./social.png" -s 1024x1024
150
+
151
+ # Website favicon/logo
152
+ z-ai image -p "Simple geometric logo with blue gradient, minimal design" -o "./logo.png" -s 1024x1024
153
+
154
+ # Background pattern
155
+ z-ai image -p "Subtle geometric pattern, pastel colors, website background" -o "./bg_pattern.png" -s 1440x720
156
+ ```
157
+
158
+ ## Advanced Use Cases
159
+
160
+ ### Batch Image Generation
161
+
162
+ ```javascript
163
+ import ZAI from 'z-ai-web-dev-sdk';
164
+ import fs from 'fs';
165
+ import path from 'path';
166
+
167
+ async function generateImageBatch(prompts, outputDir, size = '1024x1024') {
168
+ const zai = await ZAI.create();
169
+
170
+ // Ensure output directory exists
171
+ if (!fs.existsSync(outputDir)) {
172
+ fs.mkdirSync(outputDir, { recursive: true });
173
+ }
174
+
175
+ const results = [];
176
+
177
+ for (let i = 0; i < prompts.length; i++) {
178
+ try {
179
+ const prompt = prompts[i];
180
+ const filename = `image_${i + 1}.png`;
181
+ const outputPath = path.join(outputDir, filename);
182
+
183
+ const response = await zai.images.generations.create({
184
+ prompt: prompt,
185
+ size: size
186
+ });
187
+
188
+ const imageBase64 = response.data[0].base64;
189
+ const buffer = Buffer.from(imageBase64, 'base64');
190
+ fs.writeFileSync(outputPath, buffer);
191
+
192
+ results.push({
193
+ success: true,
194
+ prompt: prompt,
195
+ path: outputPath,
196
+ size: buffer.length
197
+ });
198
+
199
+ console.log(`✓ Generated: ${filename}`);
200
+ } catch (error) {
201
+ results.push({
202
+ success: false,
203
+ prompt: prompts[i],
204
+ error: error.message
205
+ });
206
+
207
+ console.error(`✗ Failed: ${prompts[i]} - ${error.message}`);
208
+ }
209
+ }
210
+
211
+ return results;
212
+ }
213
+
214
+ // Usage
215
+ const prompts = [
216
+ 'A serene mountain landscape at sunset',
217
+ 'A futuristic city with flying cars',
218
+ 'An underwater coral reef teeming with life'
219
+ ];
220
+
221
+ const results = await generateImageBatch(prompts, './generated-images');
222
+ console.log(`Generated ${results.filter(r => r.success).length} images`);
223
+ ```
224
+
225
+ ### Image Generation Service
226
+
227
+ ```javascript
228
+ import ZAI from 'z-ai-web-dev-sdk';
229
+ import fs from 'fs';
230
+ import path from 'path';
231
+ import crypto from 'crypto';
232
+
233
+ class ImageGenerationService {
234
+ constructor(outputDir = './generated-images') {
235
+ this.outputDir = outputDir;
236
+ this.zai = null;
237
+ this.cache = new Map();
238
+ }
239
+
240
+ async initialize() {
241
+ this.zai = await ZAI.create();
242
+
243
+ if (!fs.existsSync(this.outputDir)) {
244
+ fs.mkdirSync(this.outputDir, { recursive: true });
245
+ }
246
+ }
247
+
248
+ generateCacheKey(prompt, size) {
249
+ return crypto
250
+ .createHash('md5')
251
+ .update(`${prompt}-${size}`)
252
+ .digest('hex');
253
+ }
254
+
255
+ async generate(prompt, options = {}) {
256
+ const {
257
+ size = '1024x1024',
258
+ useCache = true,
259
+ filename = null
260
+ } = options;
261
+
262
+ // Check cache
263
+ const cacheKey = this.generateCacheKey(prompt, size);
264
+
265
+ if (useCache && this.cache.has(cacheKey)) {
266
+ const cachedPath = this.cache.get(cacheKey);
267
+ if (fs.existsSync(cachedPath)) {
268
+ return {
269
+ path: cachedPath,
270
+ cached: true,
271
+ prompt: prompt,
272
+ size: size
273
+ };
274
+ }
275
+ }
276
+
277
+ // Generate new image
278
+ const response = await this.zai.images.generations.create({
279
+ prompt: prompt,
280
+ size: size
281
+ });
282
+
283
+ const imageBase64 = response.data[0].base64;
284
+ const buffer = Buffer.from(imageBase64, 'base64');
285
+
286
+ // Determine output path
287
+ const outputFilename = filename || `${cacheKey}.png`;
288
+ const outputPath = path.join(this.outputDir, outputFilename);
289
+
290
+ fs.writeFileSync(outputPath, buffer);
291
+
292
+ // Cache result
293
+ if (useCache) {
294
+ this.cache.set(cacheKey, outputPath);
295
+ }
296
+
297
+ return {
298
+ path: outputPath,
299
+ cached: false,
300
+ prompt: prompt,
301
+ size: size,
302
+ fileSize: buffer.length
303
+ };
304
+ }
305
+
306
+ clearCache() {
307
+ this.cache.clear();
308
+ }
309
+
310
+ getCacheSize() {
311
+ return this.cache.size;
312
+ }
313
+ }
314
+
315
+ // Usage
316
+ const service = new ImageGenerationService();
317
+ await service.initialize();
318
+
319
+ const result = await service.generate(
320
+ 'A modern office space',
321
+ { size: '1440x720' }
322
+ );
323
+
324
+ console.log('Generated:', result.path);
325
+ ```
326
+
327
+ ### Website Asset Generator
328
+
329
+ ```bash
330
+ # Using CLI for quick website asset generation
331
+ z-ai image -p "Modern tech hero banner, blue gradient" -o "./assets/hero.png" -s 1440x720
332
+ z-ai image -p "Team collaboration illustration" -o "./assets/team.png" -s 1344x768
333
+ z-ai image -p "Simple geometric logo" -o "./assets/logo.png" -s 1024x1024
334
+ ```
335
+
336
+ ## Best Practices
337
+
338
+ ### 1. Effective Prompt Engineering
339
+
340
+ ```javascript
341
+ function buildEffectivePrompt(subject, style, details = []) {
342
+ const components = [
343
+ subject,
344
+ style,
345
+ ...details,
346
+ 'high quality',
347
+ 'detailed'
348
+ ];
349
+
350
+ return components.filter(Boolean).join(', ');
351
+ }
352
+
353
+ // Usage
354
+ const prompt = buildEffectivePrompt(
355
+ 'mountain landscape',
356
+ 'oil painting style',
357
+ ['sunset lighting', 'dramatic clouds', 'reflection in lake']
358
+ );
359
+
360
+ // Result: "mountain landscape, oil painting style, sunset lighting, dramatic clouds, reflection in lake, high quality, detailed"
361
+ ```
362
+
363
+ ### 2. Size Selection Helper
364
+
365
+ ```javascript
366
+ function selectOptimalSize(purpose) {
367
+ const sizeMap = {
368
+ 'hero-banner': '1440x720',
369
+ 'blog-header': '1344x768',
370
+ 'social-square': '1024x1024',
371
+ 'portrait': '768x1344',
372
+ 'product': '1024x1024',
373
+ 'landscape': '1344x768',
374
+ 'mobile-banner': '720x1440',
375
+ 'thumbnail': '1024x1024'
376
+ };
377
+
378
+ return sizeMap[purpose] || '1024x1024';
379
+ }
380
+
381
+ // Usage
382
+ const size = selectOptimalSize('hero-banner');
383
+ await generateImage('website hero image', size, './hero.png');
384
+ ```
385
+
386
+ ### 3. Error Handling
387
+
388
+ ```javascript
389
+ import ZAI from 'z-ai-web-dev-sdk';
390
+ import fs from 'fs';
391
+
392
+ async function safeGenerateImage(prompt, size, outputPath, retries = 3) {
393
+ let lastError;
394
+
395
+ for (let attempt = 1; attempt <= retries; attempt++) {
396
+ try {
397
+ const zai = await ZAI.create();
398
+
399
+ const response = await zai.images.generations.create({
400
+ prompt: prompt,
401
+ size: size
402
+ });
403
+
404
+ if (!response.data || !response.data[0] || !response.data[0].base64) {
405
+ throw new Error('Invalid response from image generation API');
406
+ }
407
+
408
+ const imageBase64 = response.data[0].base64;
409
+ const buffer = Buffer.from(imageBase64, 'base64');
410
+ fs.writeFileSync(outputPath, buffer);
411
+
412
+ return {
413
+ success: true,
414
+ path: outputPath,
415
+ attempts: attempt
416
+ };
417
+ } catch (error) {
418
+ lastError = error;
419
+ console.error(`Attempt ${attempt} failed:`, error.message);
420
+
421
+ if (attempt < retries) {
422
+ // Wait before retry (exponential backoff)
423
+ await new Promise(resolve => setTimeout(resolve, 1000 * attempt));
424
+ }
425
+ }
426
+ }
427
+
428
+ return {
429
+ success: false,
430
+ error: lastError.message,
431
+ attempts: retries
432
+ };
433
+ }
434
+ ```
435
+
436
+ ## Common Use Cases
437
+
438
+ 1. **Website Design**: Generate hero images, backgrounds, and visual assets
439
+ 2. **Marketing Materials**: Create social media graphics and promotional images
440
+ 3. **Product Visualization**: Generate product mockups and variations
441
+ 4. **Content Creation**: Produce blog post illustrations and thumbnails
442
+ 5. **Brand Assets**: Create logos, icons, and brand imagery
443
+ 6. **UI/UX Design**: Generate interface elements and illustrations
444
+ 7. **Game Development**: Create concept art and game assets
445
+ 8. **E-commerce**: Generate product images and lifestyle shots
446
+
447
+ ## Integration Examples
448
+
449
+ ### Express.js API Endpoint
450
+
451
+ ```javascript
452
+ import express from 'express';
453
+ import ZAI from 'z-ai-web-dev-sdk';
454
+ import fs from 'fs';
455
+ import path from 'path';
456
+
457
+ const app = express();
458
+ app.use(express.json());
459
+ app.use('/images', express.static('generated-images'));
460
+
461
+ let zaiInstance;
462
+ const outputDir = './generated-images';
463
+
464
+ async function initZAI() {
465
+ zaiInstance = await ZAI.create();
466
+ if (!fs.existsSync(outputDir)) {
467
+ fs.mkdirSync(outputDir, { recursive: true });
468
+ }
469
+ }
470
+
471
+ app.post('/api/generate-image', async (req, res) => {
472
+ try {
473
+ const { prompt, size = '1024x1024' } = req.body;
474
+
475
+ if (!prompt) {
476
+ return res.status(400).json({ error: 'Prompt is required' });
477
+ }
478
+
479
+ const response = await zaiInstance.images.generations.create({
480
+ prompt: prompt,
481
+ size: size
482
+ });
483
+
484
+ const imageBase64 = response.data[0].base64;
485
+ const buffer = Buffer.from(imageBase64, 'base64');
486
+
487
+ const filename = `img_${Date.now()}.png`;
488
+ const filepath = path.join(outputDir, filename);
489
+ fs.writeFileSync(filepath, buffer);
490
+
491
+ res.json({
492
+ success: true,
493
+ imageUrl: `/images/${filename}`,
494
+ prompt: prompt,
495
+ size: size
496
+ });
497
+ } catch (error) {
498
+ res.status(500).json({
499
+ success: false,
500
+ error: error.message
501
+ });
502
+ }
503
+ });
504
+
505
+ initZAI().then(() => {
506
+ app.listen(3000, () => {
507
+ console.log('Image generation API running on port 3000');
508
+ });
509
+ });
510
+ ```
511
+
512
+ ## CLI Integration in Scripts
513
+
514
+ ### Shell Script Example
515
+
516
+ ```bash
517
+ #!/bin/bash
518
+
519
+ # Generate website assets using CLI
520
+ echo "Generating website assets..."
521
+
522
+ z-ai image -p "Modern tech hero banner, blue gradient" -o "./assets/hero.png" -s 1440x720
523
+ z-ai image -p "Team collaboration illustration" -o "./assets/team.png" -s 1344x768
524
+ z-ai image -p "Simple geometric logo" -o "./assets/logo.png" -s 1024x1024
525
+
526
+ echo "Assets generated successfully!"
527
+ ```
528
+
529
+ ## Troubleshooting
530
+
531
+ **Issue**: "SDK must be used in backend"
532
+ - **Solution**: Ensure z-ai-web-dev-sdk is only used in server-side code
533
+
534
+ **Issue**: Invalid size parameter
535
+ - **Solution**: Use only supported sizes: 1024x1024, 768x1344, 864x1152, 1344x768, 1152x864, 1440x720, 720x1440
536
+
537
+ **Issue**: Generated image doesn't match prompt
538
+ - **Solution**: Make prompts more specific and descriptive. Include style, details, and quality terms
539
+
540
+ **Issue**: CLI command not found
541
+ - **Solution**: Ensure z-ai CLI is properly installed and in PATH
542
+
543
+ **Issue**: Image file is corrupted
544
+ - **Solution**: Verify base64 decoding and file writing are correct
545
+
546
+ ## Prompt Engineering Tips
547
+
548
+ ### Good Prompts
549
+ - ✓ "Professional product photography of wireless headphones, white background, studio lighting, high quality"
550
+ - ✓ "Mountain landscape at golden hour, oil painting style, dramatic clouds, detailed"
551
+ - ✓ "Modern minimalist logo for tech company, blue and white, geometric shapes"
552
+
553
+ ### Poor Prompts
554
+ - ✗ "headphones"
555
+ - ✗ "picture of mountains"
556
+ - ✗ "logo"
557
+
558
+ ### Prompt Components
559
+ 1. **Subject**: What you want to see
560
+ 2. **Style**: Art style, photography style, etc.
561
+ 3. **Details**: Specific elements, colors, mood
562
+ 4. **Quality**: "high quality", "detailed", "professional"
563
+
564
+ ## Supported Image Sizes
565
+
566
+ - `1024x1024` - Square
567
+ - `768x1344` - Portrait
568
+ - `864x1152` - Portrait
569
+ - `1344x768` - Landscape
570
+ - `1152x864` - Landscape
571
+ - `1440x720` - Wide landscape
572
+ - `720x1440` - Tall portrait
573
+
574
+ ## Remember
575
+
576
+ - Always use z-ai-web-dev-sdk in backend code only
577
+ - The SDK is already installed - import as shown
578
+ - CLI tool is available for quick image generation
579
+ - Supported sizes are specific - use the provided list
580
+ - Base64 images need to be decoded before saving
581
+ - Consider caching for repeated prompts
582
+ - Implement retry logic for production applications
583
+ - Use descriptive prompts for better results
@@ -0,0 +1,28 @@
1
+ import ZAI from 'z-ai-web-dev-sdk';
2
+ import fs from 'fs';
3
+
4
+ async function main(prompt: string, size: '1024x1024' | '768x1344' | '864x1152' | '1344x768' | '1152x864' | '1440x720' | '720x1440', outFile: string) {
5
+ try {
6
+ const zai = await ZAI.create();
7
+
8
+ const response = await zai.images.generations.create({
9
+ prompt,
10
+ size
11
+ });
12
+
13
+ const base64 = response?.data?.[0]?.base64;
14
+ if (!base64) {
15
+ console.error('No image data returned by the API');
16
+ console.log('Full response:', JSON.stringify(response, null, 2));
17
+ return;
18
+ }
19
+
20
+ const buffer = Buffer.from(base64, 'base64');
21
+ fs.writeFileSync(outFile, buffer);
22
+ console.log(`Image saved to ${outFile}`);
23
+ } catch (err: any) {
24
+ console.error('Image generation failed:', err?.message || err);
25
+ }
26
+ }
27
+
28
+ main('A cute kitten', '1024x1024', './output.png');
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 z-ai-web-dev-sdk Skills
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.