Agent Skills › espressif/esp-claw › app_creator

app_creator

GitHub

用于在用户明确请求时,创建、更新或移除可见的运行时 Launcher App。通过解析根目录、遵循包规范编写脚本和清单,并调用发布工具完成应用管理。

components/claw_capabilities/cap_app_mgr/skills/app_creator/SKILL.md espressif/esp-claw

触发场景

用户明确要求创建新的 Launcher App 用户要求更新现有的 Launcher App 用户要求移除指定的 Launcher App

安装

npx skills add espressif/esp-claw --skill app_creator -g -y
更多选项

非标准路径

npx skills add https://github.com/espressif/esp-claw/tree/master/components/claw_capabilities/cap_app_mgr/skills/app_creator -g -y

不安装直接使用

npx skills use espressif/esp-claw@app_creator

指定 Agent (Claude Code)

npx skills add espressif/esp-claw --skill app_creator -a claude-code -g -y

安装 repo 全部 skill

npx skills add espressif/esp-claw --all -g -y

预览 repo 内 skill

npx skills add espressif/esp-claw --list

SKILL.md

Frontmatter
{
    "name": "app_creator",
    "metadata": {
        "cap_groups": [
            "cap_files",
            "cap_lua",
            "cap_app_manage"
        ]
    },
    "description": "Create, update, publish, or remove an on-device launcher App when the user explicitly requests a launcher-visible Lua application; not for Skills or generic Lua scripts."
}

App Creator

Use this skill only when the user explicitly requests creation, update, or removal of a launcher-visible runtime App. Apps are independent packages consumed by the System UI Launcher; they are not Skills. Use skill_creator when the requested behavior should be invoked conversationally by the model instead of launched from the UI.

This workflow manages runtime Apps under the writable DATA root. It does not edit firmware-baked SYSTEM Apps or create native capabilities.

Resolve The Runtime Apps Root

Before reading or writing a runtime App, run:

{"path":"{CUR_SKILL_DIR}/scripts/resolve_apps_root.lua","args":{}}

Treat the returned absolute path as <APPS_ROOT>. Do not assume /fatfs; DATA may be mounted on an SD card. If the path cannot be resolved, report the error and stop.

App Contract

Before creating or updating an App, read {CUR_SKILL_DIR}/references/app-package-spec.md and follow the complete package contract. Do not load the reference for removal-only requests.

Store each runtime App under <APPS_ROOT>/<app_id>/. Do not overwrite an existing App unless the user explicitly requested an update to that id.

Minimal manifest:

{
  "schema_version": 1,
  "id": "example_app",
  "display_name": "Example App",
  "entry": "scripts/main.lua",
  "visible": true
}

Create Or Update

  1. Resolve <APPS_ROOT> and inspect the exact target package before changing it.
  2. Read the package spec, then activate lua_package_authoring and follow its App-script rules.
  3. Write scripts and existing accessible assets first, then write launcher.json last. Do not fabricate binary JPEG data through a text file tool; omit the icon when no valid asset is available.
  4. Read the completed text files back and verify the manifest types, id, relative paths, entry existence, Lua imports, and packaged asset references.
  5. Call publish_app with only the final id:
{"app_id":"example_app"}
  1. Treat the tool result as authoritative. Report publication errors directly and do not claim success when publication fails.

The Launcher starts the App entry asynchronously with manifest args, a stable job name derived from the App id, and exclusive display ownership. Do not run a long-lived UI App merely to validate its package.

Remove

Remove an App only when the user explicitly requests deletion of that exact runtime App. Inspect the target first, then call remove_app with only its app_id. If the tool reports readonly_app, explain that firmware-baked SYSTEM Apps cannot be removed at runtime.

版本历史

  • 36b377f 当前 2026-11-02 21:36

同 Skill 集合

components/claw_capabilities/cap_http_request/skills/cap_http_request/SKILL.md
components/claw_capabilities/cap_im_platform/skills/cap_im_platform/SKILL.md
components/claw_capabilities/cap_router_mgr/skills/cap_router_mgr/SKILL.md
components/claw_capabilities/cap_scheduler/skills/cap_scheduler/SKILL.md
components/claw_capabilities/cap_skill_mgr/skills/skills_lab_downloader/SKILL.md
components/claw_capabilities/cap_skill_mgr/skills/skills_lab_search/SKILL.md
components/claw_capabilities/cap_web_search/skills/cap_web_search/SKILL.md
components/claw_modules/claw_memory/skills/memory_ops/SKILL.md
components/claw_modules/claw_memory/skills/profile_memory_ops/SKILL.md
components/common/lua_module_builder/skills/lua_package_authoring/SKILL.md
components/common/skill_builder/skills/skill_creator/SKILL.md
components/common/skill_builder/skills/skills_lab_downloader/SKILL.md
components/common/skill_builder/skills/skills_lab_search/SKILL.md
components/lua_modules/lua_driver_touch/skills/read_touch/SKILL.md
components/lua_modules/lua_module_ble_hid/skills/ble_hid/SKILL.md
components/lua_modules/lua_module_ble/skills/ble/SKILL.md
components/lua_modules/lua_module_camera/skills/take_picture/SKILL.md
components/lua_modules/lua_module_display/skills/bdf_font_converter/SKILL.md
components/lua_modules/lua_module_http_server/skills/http_server_lua_demo/SKILL.md
components/claw_capabilities/cap_llm_inspect/skills/cap_llm_inspect_image/SKILL.md

元信息

文件数
0
版本
36b377f
Hash
6ecfbc7b
收录时间
2026-11-02 21:36

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.156.0. UTC+08:00, 2026-11-06 22:21
浙ICP备14020137号-1