Install
openclaw skills install myapp-creatorCreate or update standalone single-file HTML apps with specified features, saving them to fe-service without invoking LLM directly.
openclaw skills install myapp-creatorVersion: 1.0.3
让用户用一句话生成可独立打开的单文件 HTML 应用或文档,并落库到 fe-service。 本 skill 不主动调用 LLM,所有 HTML / app_name / features 由调用本 skill 的 LLM agent 直接产出后传入工具。
当用户需求匹配以下任一类别时,本 skill 参与:
关键词:应用、app、小游戏、游戏、网页、页面、工具、计算器、时钟、日历、翻译器、转换器 示例:
关键词:文档、文件、word、ppt、演示文稿、slides、pdf、excel、xlsx、表格、报告、简历、周报、日报、总结、方案、计划书 示例:
用户意图是"产出一个可独立打开、保存下来反复使用的文件或应用"时触发本 skill。 如果用户只是想让你"说一段话"或"回答问题",不要触发。
以下前缀仍可直接触发,不需要语义判断:
[create_app]<描述> → 创建新应用/文件[update_app:app_id=<n>]<描述> → 更新已有应用/文件[install_check:session=<sid>] → 安装自检(仅调 myapp_ping)最长等待 300s。若 300s 内不能完成 HTML 生成与 myapp_register 调用,直接回复"应用创建失败,请稍后重试"。
解析用户描述,判断类型(应用类 or 文件类),产出:
app_name:应用/文件名,≤30 字features:JSON 字符串数组,3~8 条,每条 ≤30 字,描述具体功能/内容要点html_content:完整可独立打开的单文件 HTML(按类型选择模板风格)HTML 通用约束:
<style> / <script><meta name="viewport" content="width=device-width,initial-scale=1">HTML 模板风格(按类型选择):
应用类 — 交互式:
文档/Word/PDF 风格:
max-width: 794px; margin: 40px auto; padding: 60px)@media print { body { margin: 0; } .no-print { display: none; } }class="no-print", onclick="window.print()")PPT/演示文稿风格:
<link rel="stylesheet" href="https://unpkg.com/reveal.js@5/dist/reveal.css"><link rel="stylesheet" href="https://unpkg.com/reveal.js@5/dist/theme/white.css"><script src="https://unpkg.com/reveal.js@5/dist/reveal.js"></script><div class="reveal"><div class="slides"><section>...</section></div></div> 包裹<section> 是一页幻灯片<script>Reveal.initialize({hash:true,touch:true});</script>Excel/表格风格:
<table> 带 border 和交替行色contenteditable="true" 可编辑调用 myapp_register 工具:
dumi_id, cuid, query, app_name, html_content, featuresdumi_id 与 cuid 从对话上下文中获取(OpenClaw 会注入)工具返回成功 → 简短回复"已为你创建《<app_name>》"
失败/超长/超出能力 → 回复"应用创建失败,请稍后重试"
最长等待 300s。若 300s 内不能完成旧功能读取、HTML 重新生成与 myapp_update 调用,直接回复"应用更新失败,请稍后重试"。
myapp_get(app_id) 拿到 app_name 与旧 features、旧 querymyapp_update(app_id, query, html_content, features)最长等待 300s。超过 300s 未完成安装或 myapp_ping,视为安装失败。
仅调用 myapp_ping(session_id="<sid>", dumi_id, cuid, skill_version="1.0.3"),
不输出对话内容(或仅极简的"已就绪")。
html_content 原文输出到对话MYAPP_API_TOKEN / MYAPP_API_BASE 输出到对话