[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6HKAMSTDFX4BGNSFZ5BZENX":3,"skill-same:01M6HKAMSTDFX4BGNSFZ5BZENX":56},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":30,"linkOnly":31,"markdownContent":32,"markdownBody":33,"frontMatter":34,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":14,"repositoryHtmlUrl":38,"repositoryHomepageUrl":39,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":41,"install":42,"resources":55},"01M6HKAMSTDFX4BGNSFZ5BZENX","app-plugin-create",null,"制作可独立安装与分发的 Matcha 插件，按任务选择工程、工具、界面和验收路径。Use when 用户要求创建 reader 文件阅读器、connector 连接器或 application 应用，或继续开发尚未安装的插件；不用于读取已安装插件源码、修改或覆盖已安装插件。","hellowKeyzj\u002FMatcha-claw","hellowKeyzj","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F87715193?v=4","01M6CHXTQXRBAJ7F9PY43J24DS","Matcha","01M6CHXTW38RCBHRG3SESSBMNB",0,"MIT","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fapp-plugin-create\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29],"app","create","plugin","app plugin create","文件","reader","use","application","Connector","工具","when","2026-11-10 10:12:30",false,"---\nname: app-plugin-create\ndescription: 制作可独立安装与分发的 Matcha 插件，按任务选择工程、工具、界面和验收路径。Use when 用户要求创建 reader 文件阅读器、connector 连接器或 application 应用，或继续开发尚未安装的插件；不用于读取已安装插件源码、修改或覆盖已安装插件。\n---\n\n# Matcha 插件制作\n\n目标是让用户在兼容的 Matcha 中完成所需任务，而不只是得到源码、页面或工具清单。统一工程与体验质量，不统一技术栈、目录、数据库、页面模板或工具数量；简单任务走短路径，复杂业务保留必要的状态和验证。\n在当前对话复用原生文件、终端、网络工具与独立 SDK。原生权限始终有效，被拒绝时不换入口绕过；不增加制作向导、限时授权、runtime scope 选择、强制新会话或重复安装确认。\n\n## 1. 确定任务与能力边界\n\n- 从需求和上下文确定使用者、真实输入、最终产物及可观察的完成动作。多步骤任务在已有记录维护简表：用户任务｜完成判据｜真实依赖｜实现状态｜验证证据／缺口，逐项覆盖原需求并随实现更新；微型任务直接核对，不强制建文档。删减或延期先取得用户同意，不自行把自动流程改成手动操作。只有改变功能、权限或验收的歧义才问用户；方法与技术选择自行按事实判断。\n- 选择 reader（Files 内阅读文件）、connector（已有连接界面的 MCP HTTP 配置贡献）或 application（界面及可选后台），需要时组合合法贡献。只有 application 需要时才选择 TypeScript、Python 或 Rust 后台，具体版本以 SDK 为准。\n- 下文 `app_plugins_*` 是逻辑名：先从当前 peer 的工具发现取得真实名称与 schema；deferred 工具加载后调用，不猜跨 peer 前缀。调用 `app_plugins_list` 避开已安装 ID，只创建新 ID 或继续尚未安装工程；不读取已安装源码、不覆盖或卸载来绕过 new-only。\n- 核对 SDK 是否提供任务所需能力。已有能力足够时只改插件；真实缺口单列所需公共能力、兼容条件和宿主改动范围，取得授权后处理，不在插件中另造专用宿主桥。需独立 Agent／团队执行时核当前 SDK 的 execution 与后台启动合同，不用当前聊天草稿或直接模型调用冒充执行；开发预览不可用的正式能力不得加后门。\n\n## 2. 建立独立工程与开发连接\n\n1. 调用 `app_plugins_sdk({})` 创建实例；继续已知活跃实例用 `app_plugins_sdk({developmentId})` 重连，不为每次修改新建实例。\n2. 将返回的 `development` 原样保存为私有连接 JSON：`{developmentId,baseUrl,token}`。CLI 使用 `--connection \u003Cfile>`，也接受外层 `{development:...}`；不拼旧 grant 或 CLI UUID。连接只认证该 loopback HTTP 实例，不授予聊天身份或审批权限。\n3. 用实际 `sdk.url` 和本次 Bearer token 下载 SDK `.tgz`，不寻找主 MCP token、不索取宿主源码、不猜远端同名 npm 版本。下载与解包各放新空目录，从其目录之外执行工具。\n4. 先读包内 README、所需公共声明和 CLI 帮助，再在权限允许的新空工程目录按真实命令初始化、安装本地 SDK tgz。构建、协议与平台规则以该 SDK 为准，不重写 SDK 或维护第二份接口说明。\n5. 连接文件放工程外，不入源码、manifest、日志、命令回显或包。POSIX 限当前用户读写，Windows 核对 ACL；最终回答不含 token。\n\n依赖及锁文件归插件项目；普通依赖可按原生权限从可信包源安装并锁定。默认不加入宿主 workspace、不改宿主锁文件、不内置主程序，运行不依赖宿主内部 import 或仓库相对路径。同仓开发是明确的工程选择，不是插件机制前提。\n\n## 3. 先闭合一条真实流程，再扩展\n\n- 小插件直接实现；复杂插件先简短确定业务 owner、公开输入输出、状态和关键不变量。尽早跑通“真实输入 → 同一业务 owner → 结果 → 实际呈现”，发现 SDK／运行时／外部服务缺口，再扩展其他功能，不必为每阶段建文档。\n- 按业务职责组织模块，入口只组合与分派，UI 和模型工具调用同一业务语义；插件持有自己的事实，宿主提供公开通用能力。规则与 I\u002FO 分开，资源有明确 owner；数据库、类或抽象须有当前用途，不为目录整齐预建框架。\n- 优先复用现有模块、标准库和原生能力。每块保留唯一执行路径，改动与旧入口清理一并收口；没有明确兼容要求不保留临时桥、旧名别名或双写。先读当前对象的真实输入、调用方与消费者，再改它的拥有者。\n\n## 4. 按条件应用质量规则\n\n只应用实际命中的条件；这些是判断与验收要求，不规定唯一实现。\n\n| 条件 | 实现与检查 |\n| --- | --- |\n| 有后台或不可信输入 | 边界先 schema 再语义校验，预期错误给可行动信息，调试日志可定位且脱敏。复用实际 SDK 类型／校验器，不让 UI、工具和业务约束分叉。 |\n| 有持久状态、并发编辑或异步结果 | 事实由业务 owner 单写，关键状态显式；编辑内容和观察到的 revision 共用完整基线，保存采纳返回事实，外部更新不悄悄覆盖草稿。复核迟到响应归属，实际核连续保存、冲突后载入再保存及重开恢复，不只核旧写入被拒。 |\n| 有模型生成／分析／提取 | 模型处理需要判断的部分，确定性计算由代码完成；输入有来源、输出核结构与业务语义。复用上游时保留适用原文、规则与例子，只适配真实差异，并核最终组装输入及输出消费者。 |\n| 有秘密或敏感资料 | 只在必要私有边界使用，不流入无关公共结果、模型上下文或日志。ID 是归属、visibility 是调用表面；二者不提供授权，本地后台也不是 OS 沙箱。 |\n| 有付费、发送、发布等高影响动作 | 准备与执行分清，按当前 SDK 发起可信人工确认，完整展示对象、内容、费用和精确版本，确认后由 owner 复核。后台待决定由插件持久保存，重开后复用可信确认；自动策略须批准明确范围、阈值、目标和期限，配置变化失效。模型、iframe、approved 参数不能批准；无确认能力时报告限制，不降级执行。 |\n| 有外部写入或可能重复收费 | 请求限时且取消贯穿；按实际执行阶段和服务合同区分未执行、确定失败、受理与未知，不把取消一律判失败或未知。保留原请求标识／回执，超时或 unknown 先查询／对账，不盲重发；取消不证明撤销或退款。 |\n| 有订阅、句柄、缓存、临时目录或子进程 | 取得资源的 owner 负责清理；缓存明确上限和失效条件。只清理本次持有的资源，UI 关闭不等于正式后台停止，不杀未知进程或抢用户 profile 锁。 |\n| 有大数据或重任务 | 按真实负载消除不可见重内容的首次构建、重复读取和无界并发；测数据、正文与主要操作全部可用，不以壳首屏或 bridge ready 代替。重型构建按资源限额执行，守卫终止不降门槛盲重跑。 |\n| 使用 Python、Rust 或 native 依赖 | 按 SDK 编译／锁定真实运行依赖；Python 不带开发环境路径，Rust 核真实目标工件及 platform／arch。检查必需库、首用下载／离线限制和再分发许可，不只改标签称跨平台。 |\n| 确需多 Agent | 共享类型与合同先冻结，再按独占文件／模块派发就绪任务；主线程合并、去重并集中验证。任务不能低冲突拆分时直接完成，不为展示并发而拆任务。 |\n\n### 暴露模型或 UI 工具时\n\n按 Agent 领域任务划工具，不把内部方法目录全部注册；相关动作可分组，无关领域不塞万能 action，独立高风险动作有清晰入口。纯 UI 辅助操作按实际 SDK 声明 app-only，并检查整套目录的重名、歧义和选择负担，不擅改宿主发现机制。\n分组 action 使用实际 SDK 支持的闭合分支 schema，参数／结果与业务 owner 一致，不用 `action:string + args:any`；用真实校验器核对，但不把 schema 通过当成工具选择或参数正确率证明。\n\n| 说明位置 | 应交代的内容 |\n| --- | --- |\n| 工具 | 用途、选择时机及与相邻工具的边界。 |\n| action | 前置条件、修改范围、必须保留的内容及副作用。 |\n| 字段 | 含义、单位、值的来源，以及省略／null／空值有区别时的具体语义。 |\n| 结果 | 实际返回结构、成功与未知状态的读取位置。 |\n\n表达直接、信息充分、必要条件不省、同一规则不反复说。简单操作直接交代目标与参数；复杂操作允许长说明，不按字符数压缩条件，也不把一种动作的字段说明机械套给其他动作。工具数量和定义尺寸不能证明质量或 token 收益。\n\n### 有界面时\n\n- 按真实任务选编辑器、画布、表格、列表详情或表单；用层次、排版、对齐和主次动作组织信息。清爽不靠删功能、巨量留白或空卡片，精致不靠装饰堆叠。\n- 为每个 `contributes.applications[]` 按任务声明 `scope`，不是每次打开询问用户：`session`（省略时默认）保留会话／草稿身份、compose 与草稿晋升；独立业务页用 `workspace`，切会话保留实例且不获取当前会话身份、草稿、compose 或会话媒体／文件权限。`placement` 只控制入口；scope 不替代后台显式目标与原生授权，imageEditor 仍沿点击图片的明确会话身份。开发预览可按声明保活，但始终无聊天身份／compose。\n- 按当前任务分组，多类设置按类别进入，不把所有完整表单纵向堆叠；次要细节渐进披露。标题足够就不加副标题，同一提示只说一次，短文案不加句号；决策所需正文、对象、费用、依据与风险完整可读，必要条件就近显示。空态给下一步，示例显式加载并持续标记，状态来自事实。\n- 接宿主公开主题／语言合同，使用语义样式变量，不另建宿主主题 owner。编写时覆盖 zh／en／ja／ru 的可见文案、错误与无障碍标签，日期／数字按语言格式化。\n- 适配实际承载的独立页／聊天容器，保留原生语义、键盘焦点、对比度、状态播报与减少动态效果。数据图服务实际比较／趋势任务，包含单位、来源与可核查数据；在真实界面检查呈现，不靠代码自评。\n\n## 5. 构建、观察、修正\n\n使用 SDK 模板及 build 配置。`build --connection` 构建、验包、上传后请求 preview；持续修改用 `watch`／`dev --connection`，首次成功上传请求一次预览，后续热更新不抢焦点，需要重开用 `preview`。无连接的 build／watch 只在本地；Rust 先按 README 编译，SDK 不代跑 cargo。\n使用 `status` 核当前 revision、后台、脱敏日志及事件，区分上一成功包与本次构建／启动失败。较大包走 SDK ZIP 上传，不塞模型消息或 base64；小型 UTF-8 工程才按真实 schema 用 `app_plugins_build({developmentId,manifest,files})`。\n\n| 类型 | 需要的实际证据 |\n| --- | --- |\n| application | 真实预览操作主要流程，核 DOM、工具结果和业务产物；有后台用 call 验声明工具。inspect 须实际挂载，act 仅用最新快照的 opaque ID 执行 click／fill；DOM 改变后重取，不猜 selector、不 eval。 |\n| reader | 安装后从实际 Files reader 打开代表性文件，核内容与错误反馈；不能用 application DOM 或自报 ready 代替。 |\n| connector | 安装后沿既有连接流程区分表单贡献、连接配置、实际请求／工具可用；没有凭据时明确未验，安装不等于连通。 |\n\n逐项对约定任务做“操作 → 观察结果 → 定位差异 → 修正 → 重验”，一条流程跑通不能替代其余任务交付；覆盖实际涉及的无数据、无配置、无效输入、冲突恢复、拒绝／取消及未知结果。复用现有检查和真实 owner，不 mock 业务规则；未明确要求不新增测试文件或框架。\n有 UI 则核实际尺寸、四语、明暗主题及关键键盘路径，截图须读取；applied 不是业务成功或可信用户手势。开发预览没有聊天身份，不假定可 compose；标准 MCP Apps 只用宿主实际广告的能力，审批等正式能力从正式 surface 核验或列为未验，不加预览后门。\n编译、验包、上传、enabled／ready 分别只证明各自边界；缺凭据、surface 或权限时记录限制，不降低功能验收。先区分产品、验证工具和环境失败，再决定修改处；付费模型评估、发送、发布及外部写入另遵用户意图与原生权限，不因验证自动获得授权。\n\n## 6. 按意图交付与停止\n\n### 用户任务交付检查表\n\n逐项核对约定范围，按当前任务填写结果／证据；不适用注明原因，不为打勾补需求外功能。复杂任务复用第1节简表，分别记录实现状态与验证状态，不另建检查文档。约定任务仍未实现或验证失败时，在授权与资源边界内继续收口；缺关键输入或权限则指出阻塞，不能只补状态表就称交付完成。\n\n- [ ] **范围完整**：原需求逐项有结果，删减／延期已经用户同意；页面、按钮、工具数量不抵功能完成\n- [ ] **流程闭合**：从实际入口输入，经处理到保存、交付／执行和结果可查；手动操作不抵自动运行，生成不抵交付，受理不抵完成\n- [ ] **依赖落地**：区分适配器已写、服务已部署／配置、真实接入已验证；按钮、协议或需用户另建的网关不抵平台接入完成\n- [ ] **操作可恢复**：实际涉及的连续操作、外部更新、冲突后恢复、拒绝／取消与重开均有结果，不只验证首次成功\n- [ ] **界面可用**：在目标容器完成真实任务，入口可发现、主次清楚、必要条件就近可读，无表单堆叠和重复说明；截图／不溢出不抵任务可完成\n- [ ] **证据对应结论**：每项实现与验证状态分开，证据绑定当前工件；合成服务只证明对应边界，缺凭据／权限／正式入口则明确未验，不越权验证或报全量完成\n\n- 构建后核真实 ZIP、版本／平台／digest，以及构建依赖、随包依赖、宿主能力和使用方配置。UI 资源自包含，后台 external／native 依赖逐项有去向；秘密、开发缓存、业务数据库及源码绝对路径不入包，连接／账号／业务数据不随包迁移。\n- 最后源码改动后重新构建、验包，才称最新版；正式同版本不同内容遵安装规则升版，工件用新输出保留。分发兼容要求写清；只有在无源码／开发依赖的兼容环境核过关键流程，才称跨电脑可用已验证。\n- 用户已要求安装：application 先核真实预览；reader／connector 先构建、验包、核声明。然后直接以最新成功上传且已核对的精确 digest 调 `install --connection ... --digest ...` 或 `app_plugins_install({developmentId,digest})`，不追加安装确认；后两类安装后验正式入口，缺条件如实标记。\n- 只要求试做／效果则保留 preview，只要求分发则交独立包，不自动安装、发布或内置。安装后用 `app_plugins_list`／`app_plugins_status({pluginId})` 核事实，正式运行应脱离 watch；安装终结开发预览，不能把预览成绩直接当正式运行成绩。\n- 安装或外部写入结果未知时先查状态及目标事实，不盲重试。退出 watcher 不会安装或停止开发实例；不再需要时按 SDK stop 关闭本次实例，只清理 owned 资源，不删用户工程。\n- 简短交付工程位置、ID／版本／digest、兼容与外部配置、通过／失败／未验、安装／预览状态和清理结果；必要说明存简短 README 与工件验证记录，微型插件不写重复文档。目标已达到或确认缺少关键条件时停止，不把未验写成全量完成。\n\n示例：“回显应用并安装”核真实输入回显后装精确 digest；“试做阅读器”先交合法包，不擅自安装；“付费发送应用”先完成准备与可信确认链，未知结果查询原请求，不以重新发送验成功。这些只说明不同路径，不规定插件模板。\n","# Matcha 插件制作\n\n目标是让用户在兼容的 Matcha 中完成所需任务，而不只是得到源码、页面或工具清单。统一工程与体验质量，不统一技术栈、目录、数据库、页面模板或工具数量；简单任务走短路径，复杂业务保留必要的状态和验证。\n在当前对话复用原生文件、终端、网络工具与独立 SDK。原生权限始终有效，被拒绝时不换入口绕过；不增加制作向导、限时授权、runtime scope 选择、强制新会话或重复安装确认。\n\n## 1. 确定任务与能力边界\n\n- 从需求和上下文确定使用者、真实输入、最终产物及可观察的完成动作。多步骤任务在已有记录维护简表：用户任务｜完成判据｜真实依赖｜实现状态｜验证证据／缺口，逐项覆盖原需求并随实现更新；微型任务直接核对，不强制建文档。删减或延期先取得用户同意，不自行把自动流程改成手动操作。只有改变功能、权限或验收的歧义才问用户；方法与技术选择自行按事实判断。\n- 选择 reader（Files 内阅读文件）、connector（已有连接界面的 MCP HTTP 配置贡献）或 application（界面及可选后台），需要时组合合法贡献。只有 application 需要时才选择 TypeScript、Python 或 Rust 后台，具体版本以 SDK 为准。\n- 下文 `app_plugins_*` 是逻辑名：先从当前 peer 的工具发现取得真实名称与 schema；deferred 工具加载后调用，不猜跨 peer 前缀。调用 `app_plugins_list` 避开已安装 ID，只创建新 ID 或继续尚未安装工程；不读取已安装源码、不覆盖或卸载来绕过 new-only。\n- 核对 SDK 是否提供任务所需能力。已有能力足够时只改插件；真实缺口单列所需公共能力、兼容条件和宿主改动范围，取得授权后处理，不在插件中另造专用宿主桥。需独立 Agent／团队执行时核当前 SDK 的 execution 与后台启动合同，不用当前聊天草稿或直接模型调用冒充执行；开发预览不可用的正式能力不得加后门。\n\n## 2. 建立独立工程与开发连接\n\n1. 调用 `app_plugins_sdk({})` 创建实例；继续已知活跃实例用 `app_plugins_sdk({developmentId})` 重连，不为每次修改新建实例。\n2. 将返回的 `development` 原样保存为私有连接 JSON：`{developmentId,baseUrl,token}`。CLI 使用 `--connection \u003Cfile>`，也接受外层 `{development:...}`；不拼旧 grant 或 CLI UUID。连接只认证该 loopback HTTP 实例，不授予聊天身份或审批权限。\n3. 用实际 `sdk.url` 和本次 Bearer token 下载 SDK `.tgz`，不寻找主 MCP token、不索取宿主源码、不猜远端同名 npm 版本。下载与解包各放新空目录，从其目录之外执行工具。\n4. 先读包内 README、所需公共声明和 CLI 帮助，再在权限允许的新空工程目录按真实命令初始化、安装本地 SDK tgz。构建、协议与平台规则以该 SDK 为准，不重写 SDK 或维护第二份接口说明。\n5. 连接文件放工程外，不入源码、manifest、日志、命令回显或包。POSIX 限当前用户读写，Windows 核对 ACL；最终回答不含 token。\n\n依赖及锁文件归插件项目；普通依赖可按原生权限从可信包源安装并锁定。默认不加入宿主 workspace、不改宿主锁文件、不内置主程序，运行不依赖宿主内部 import 或仓库相对路径。同仓开发是明确的工程选择，不是插件机制前提。\n\n## 3. 先闭合一条真实流程，再扩展\n\n- 小插件直接实现；复杂插件先简短确定业务 owner、公开输入输出、状态和关键不变量。尽早跑通“真实输入 → 同一业务 owner → 结果 → 实际呈现”，发现 SDK／运行时／外部服务缺口，再扩展其他功能，不必为每阶段建文档。\n- 按业务职责组织模块，入口只组合与分派，UI 和模型工具调用同一业务语义；插件持有自己的事实，宿主提供公开通用能力。规则与 I\u002FO 分开，资源有明确 owner；数据库、类或抽象须有当前用途，不为目录整齐预建框架。\n- 优先复用现有模块、标准库和原生能力。每块保留唯一执行路径，改动与旧入口清理一并收口；没有明确兼容要求不保留临时桥、旧名别名或双写。先读当前对象的真实输入、调用方与消费者，再改它的拥有者。\n\n## 4. 按条件应用质量规则\n\n只应用实际命中的条件；这些是判断与验收要求，不规定唯一实现。\n\n| 条件 | 实现与检查 |\n| --- | --- |\n| 有后台或不可信输入 | 边界先 schema 再语义校验，预期错误给可行动信息，调试日志可定位且脱敏。复用实际 SDK 类型／校验器，不让 UI、工具和业务约束分叉。 |\n| 有持久状态、并发编辑或异步结果 | 事实由业务 owner 单写，关键状态显式；编辑内容和观察到的 revision 共用完整基线，保存采纳返回事实，外部更新不悄悄覆盖草稿。复核迟到响应归属，实际核连续保存、冲突后载入再保存及重开恢复，不只核旧写入被拒。 |\n| 有模型生成／分析／提取 | 模型处理需要判断的部分，确定性计算由代码完成；输入有来源、输出核结构与业务语义。复用上游时保留适用原文、规则与例子，只适配真实差异，并核最终组装输入及输出消费者。 |\n| 有秘密或敏感资料 | 只在必要私有边界使用，不流入无关公共结果、模型上下文或日志。ID 是归属、visibility 是调用表面；二者不提供授权，本地后台也不是 OS 沙箱。 |\n| 有付费、发送、发布等高影响动作 | 准备与执行分清，按当前 SDK 发起可信人工确认，完整展示对象、内容、费用和精确版本，确认后由 owner 复核。后台待决定由插件持久保存，重开后复用可信确认；自动策略须批准明确范围、阈值、目标和期限，配置变化失效。模型、iframe、approved 参数不能批准；无确认能力时报告限制，不降级执行。 |\n| 有外部写入或可能重复收费 | 请求限时且取消贯穿；按实际执行阶段和服务合同区分未执行、确定失败、受理与未知，不把取消一律判失败或未知。保留原请求标识／回执，超时或 unknown 先查询／对账，不盲重发；取消不证明撤销或退款。 |\n| 有订阅、句柄、缓存、临时目录或子进程 | 取得资源的 owner 负责清理；缓存明确上限和失效条件。只清理本次持有的资源，UI 关闭不等于正式后台停止，不杀未知进程或抢用户 profile 锁。 |\n| 有大数据或重任务 | 按真实负载消除不可见重内容的首次构建、重复读取和无界并发；测数据、正文与主要操作全部可用，不以壳首屏或 bridge ready 代替。重型构建按资源限额执行，守卫终止不降门槛盲重跑。 |\n| 使用 Python、Rust 或 native 依赖 | 按 SDK 编译／锁定真实运行依赖；Python 不带开发环境路径，Rust 核真实目标工件及 platform／arch。检查必需库、首用下载／离线限制和再分发许可，不只改标签称跨平台。 |\n| 确需多 Agent | 共享类型与合同先冻结，再按独占文件／模块派发就绪任务；主线程合并、去重并集中验证。任务不能低冲突拆分时直接完成，不为展示并发而拆任务。 |\n\n### 暴露模型或 UI 工具时\n\n按 Agent 领域任务划工具，不把内部方法目录全部注册；相关动作可分组，无关领域不塞万能 action，独立高风险动作有清晰入口。纯 UI 辅助操作按实际 SDK 声明 app-only，并检查整套目录的重名、歧义和选择负担，不擅改宿主发现机制。\n分组 action 使用实际 SDK 支持的闭合分支 schema，参数／结果与业务 owner 一致，不用 `action:string + args:any`；用真实校验器核对，但不把 schema 通过当成工具选择或参数正确率证明。\n\n| 说明位置 | 应交代的内容 |\n| --- | --- |\n| 工具 | 用途、选择时机及与相邻工具的边界。 |\n| action | 前置条件、修改范围、必须保留的内容及副作用。 |\n| 字段 | 含义、单位、值的来源，以及省略／null／空值有区别时的具体语义。 |\n| 结果 | 实际返回结构、成功与未知状态的读取位置。 |\n\n表达直接、信息充分、必要条件不省、同一规则不反复说。简单操作直接交代目标与参数；复杂操作允许长说明，不按字符数压缩条件，也不把一种动作的字段说明机械套给其他动作。工具数量和定义尺寸不能证明质量或 token 收益。\n\n### 有界面时\n\n- 按真实任务选编辑器、画布、表格、列表详情或表单；用层次、排版、对齐和主次动作组织信息。清爽不靠删功能、巨量留白或空卡片，精致不靠装饰堆叠。\n- 为每个 `contributes.applications[]` 按任务声明 `scope`，不是每次打开询问用户：`session`（省略时默认）保留会话／草稿身份、compose 与草稿晋升；独立业务页用 `workspace`，切会话保留实例且不获取当前会话身份、草稿、compose 或会话媒体／文件权限。`placement` 只控制入口；scope 不替代后台显式目标与原生授权，imageEditor 仍沿点击图片的明确会话身份。开发预览可按声明保活，但始终无聊天身份／compose。\n- 按当前任务分组，多类设置按类别进入，不把所有完整表单纵向堆叠；次要细节渐进披露。标题足够就不加副标题，同一提示只说一次，短文案不加句号；决策所需正文、对象、费用、依据与风险完整可读，必要条件就近显示。空态给下一步，示例显式加载并持续标记，状态来自事实。\n- 接宿主公开主题／语言合同，使用语义样式变量，不另建宿主主题 owner。编写时覆盖 zh／en／ja／ru 的可见文案、错误与无障碍标签，日期／数字按语言格式化。\n- 适配实际承载的独立页／聊天容器，保留原生语义、键盘焦点、对比度、状态播报与减少动态效果。数据图服务实际比较／趋势任务，包含单位、来源与可核查数据；在真实界面检查呈现，不靠代码自评。\n\n## 5. 构建、观察、修正\n\n使用 SDK 模板及 build 配置。`build --connection` 构建、验包、上传后请求 preview；持续修改用 `watch`／`dev --connection`，首次成功上传请求一次预览，后续热更新不抢焦点，需要重开用 `preview`。无连接的 build／watch 只在本地；Rust 先按 README 编译，SDK 不代跑 cargo。\n使用 `status` 核当前 revision、后台、脱敏日志及事件，区分上一成功包与本次构建／启动失败。较大包走 SDK ZIP 上传，不塞模型消息或 base64；小型 UTF-8 工程才按真实 schema 用 `app_plugins_build({developmentId,manifest,files})`。\n\n| 类型 | 需要的实际证据 |\n| --- | --- |\n| application | 真实预览操作主要流程，核 DOM、工具结果和业务产物；有后台用 call 验声明工具。inspect 须实际挂载，act 仅用最新快照的 opaque ID 执行 click／fill；DOM 改变后重取，不猜 selector、不 eval。 |\n| reader | 安装后从实际 Files reader 打开代表性文件，核内容与错误反馈；不能用 application DOM 或自报 ready 代替。 |\n| connector | 安装后沿既有连接流程区分表单贡献、连接配置、实际请求／工具可用；没有凭据时明确未验，安装不等于连通。 |\n\n逐项对约定任务做“操作 → 观察结果 → 定位差异 → 修正 → 重验”，一条流程跑通不能替代其余任务交付；覆盖实际涉及的无数据、无配置、无效输入、冲突恢复、拒绝／取消及未知结果。复用现有检查和真实 owner，不 mock 业务规则；未明确要求不新增测试文件或框架。\n有 UI 则核实际尺寸、四语、明暗主题及关键键盘路径，截图须读取；applied 不是业务成功或可信用户手势。开发预览没有聊天身份，不假定可 compose；标准 MCP Apps 只用宿主实际广告的能力，审批等正式能力从正式 surface 核验或列为未验，不加预览后门。\n编译、验包、上传、enabled／ready 分别只证明各自边界；缺凭据、surface 或权限时记录限制，不降低功能验收。先区分产品、验证工具和环境失败，再决定修改处；付费模型评估、发送、发布及外部写入另遵用户意图与原生权限，不因验证自动获得授权。\n\n## 6. 按意图交付与停止\n\n### 用户任务交付检查表\n\n逐项核对约定范围，按当前任务填写结果／证据；不适用注明原因，不为打勾补需求外功能。复杂任务复用第1节简表，分别记录实现状态与验证状态，不另建检查文档。约定任务仍未实现或验证失败时，在授权与资源边界内继续收口；缺关键输入或权限则指出阻塞，不能只补状态表就称交付完成。\n\n- [ ] **范围完整**：原需求逐项有结果，删减／延期已经用户同意；页面、按钮、工具数量不抵功能完成\n- [ ] **流程闭合**：从实际入口输入，经处理到保存、交付／执行和结果可查；手动操作不抵自动运行，生成不抵交付，受理不抵完成\n- [ ] **依赖落地**：区分适配器已写、服务已部署／配置、真实接入已验证；按钮、协议或需用户另建的网关不抵平台接入完成\n- [ ] **操作可恢复**：实际涉及的连续操作、外部更新、冲突后恢复、拒绝／取消与重开均有结果，不只验证首次成功\n- [ ] **界面可用**：在目标容器完成真实任务，入口可发现、主次清楚、必要条件就近可读，无表单堆叠和重复说明；截图／不溢出不抵任务可完成\n- [ ] **证据对应结论**：每项实现与验证状态分开，证据绑定当前工件；合成服务只证明对应边界，缺凭据／权限／正式入口则明确未验，不越权验证或报全量完成\n\n- 构建后核真实 ZIP、版本／平台／digest，以及构建依赖、随包依赖、宿主能力和使用方配置。UI 资源自包含，后台 external／native 依赖逐项有去向；秘密、开发缓存、业务数据库及源码绝对路径不入包，连接／账号／业务数据不随包迁移。\n- 最后源码改动后重新构建、验包，才称最新版；正式同版本不同内容遵安装规则升版，工件用新输出保留。分发兼容要求写清；只有在无源码／开发依赖的兼容环境核过关键流程，才称跨电脑可用已验证。\n- 用户已要求安装：application 先核真实预览；reader／connector 先构建、验包、核声明。然后直接以最新成功上传且已核对的精确 digest 调 `install --connection ... --digest ...` 或 `app_plugins_install({developmentId,digest})`，不追加安装确认；后两类安装后验正式入口，缺条件如实标记。\n- 只要求试做／效果则保留 preview，只要求分发则交独立包，不自动安装、发布或内置。安装后用 `app_plugins_list`／`app_plugins_status({pluginId})` 核事实，正式运行应脱离 watch；安装终结开发预览，不能把预览成绩直接当正式运行成绩。\n- 安装或外部写入结果未知时先查状态及目标事实，不盲重试。退出 watcher 不会安装或停止开发实例；不再需要时按 SDK stop 关闭本次实例，只清理 owned 资源，不删用户工程。\n- 简短交付工程位置、ID／版本／digest、兼容与外部配置、通过／失败／未验、安装／预览状态和清理结果；必要说明存简短 README 与工件验证记录，微型插件不写重复文档。目标已达到或确认缺少关键条件时停止，不把未验写成全量完成。\n\n示例：“回显应用并安装”核真实输入回显后装精确 digest；“试做阅读器”先交合法包，不擅自安装；“付费发送应用”先完成准备与可信确认链，未知结果查询原请求，不以重新发送验成功。这些只说明不同路径，不规定插件模板。\n",{"name":5,"description":7},"main","caba46cf16b37ca6e342c530fdef9e08e196cac4","resources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fapp-plugin-create","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw","https:\u002F\u002Fclawx.dev","https:\u002F\u002Fgithub.com\u002FhellowKeyzj","2026-11-11 21:59:58",{"source":8,"skillName":5,"commands":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add hellowKeyzj\u002FMatcha-claw --skill app-plugin-create",{"tool":48,"command":49},"bunx","bunx skills add hellowKeyzj\u002FMatcha-claw --skill app-plugin-create",{"tool":51,"command":52},"pnpm","pnpm dlx skills add hellowKeyzj\u002FMatcha-claw --skill app-plugin-create","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fapp-plugin-create\u002FSKILL.md",true,[],[57,76,86,100,116,138],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":63,"publishedAt":30},"01M6CHZC6R2NYY9C6185K573KB","web-extract","获取社交\u002F内容网站数据，Bilibili\u002F知乎\u002F微博\u002FReddit\u002FHN\u002FV2EX\u002F雪球\u002F微信读书\u002FBOSS直聘\u002FarXiv 等 60+ 站点的结构化数据，自动复用Chrome登录态，零风险。","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fweb-extract\u002FSKILL.md",[],[64,65,66,67,68,69,70,71,72,73,74,75],"web","extract","web extract","python","Bash","数据","arxiv","hn","reddit","bilibili","微信","社交",{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":30},"01M6WN2D7GFEWE0F7JPA9HC4FJ","openclaw-maintenance","诊断和维护 Matcha 托管的本地 OpenClaw，按证据申请最小修复并核实恢复。Use when 用户说 OpenClaw 起不来、启动失败、运行异常，要求检查配置、日志、数据库或进行维护修复；不用于创建 Agent、通用系统管理或后台巡检。","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fopenclaw-maintenance\u002FSKILL.md",[],[83,84,85,29,69,25],"openclaw maintenance","openclaw","maintenance",{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":97,"publishedAt":30},"01M6CHZ9CZVSNDE5Z6KTF5DKF6","nuwa-skill","女娲造人：输入人名\u002F主题\u002F甚至只是模糊需求，自动深度调研→思维框架提炼→生成可运行的人物Skill。\n两种入口：(1)明确人名→直接蒸馏 (2)模糊需求→诊断推荐→再蒸馏。\n触发词：「造skill」「蒸馏XX」「女娲」「造人」「XX的思维方式」「做个XX视角」「更新XX的skill」。\n模糊需求也触发：「我想提升决策质量」「有没有一种思维方式能帮我...」「我需要一个思维顾问」。","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fnuwa-skill\u002FSKILL.md",[92],{"categoryNo":93,"categoryName":94,"taxonomyType":95,"taxonomyTypeDesc":96},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[98,99],"nuwa skill","生成",{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":30},"01M6CHZ733GZM4JPT1Z5C8CCK8","multi-search-engine","凡是需要使用 web_search 搜索任何信息时必须优先激活。覆盖所有联网查询场景：新闻、资讯、事件、价格、人物、公司、热点等。结合多引擎覆盖（百度\u002F微信\u002F集思录等中文源），并自动读取原文确认内容完整性。适用于任何需要联网查询的场景。","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fmulti-search-engine\u002FSKILL.md",[],[107,108,109,110,111,112,113,114,115,74,64],"search","engine","multi search engine","multi","search engine","中文","搜索","百度","多引擎",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":123,"publishedAt":30},"01M6CHZ58AVDD6Y725GTEK50FE","llm-wiki","通过 Matcha 共用 MCP 服务器 matcha 查询用户的 LLM Wiki 知识库，支持页面检索、正文读取、目录、知识图谱和源文件任务查看。仅在用户明确提到 LLM Wiki、我的 wiki、我的知识库 \u002F knowledge base，或要求查询 wiki 页面、知识图谱、扫描 wiki 源文件时触发；不用于泛指笔记、本地文件、Obsidian、Notion、Apple Notes、Logseq 等其他工具或开放网络检索。自动使用用户在 Wiki 页或 Chat 输入框选择的全局当前库，不绑定会话。默认只读；导入、刷新、扫描、写入、删除与嵌入仅在用户明确要求时执行。","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fllm-wiki\u002FSKILL.md",[122],{"categoryNo":93,"categoryName":94,"taxonomyType":95,"taxonomyTypeDesc":96},[124,125,28,126,127,128,129,130,131,132,133,134,135,23,136,137],"llm wiki","wiki","MCP","apple notes","notion","obsidian","notes","knowledge","base","chat","knowledge base","apple","logseq","笔记",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":144,"publishedAt":30},"01M6CHZ27CZEKECX878YNJ59BD","daily-news-briefing","Universal daily news briefing generator. Aggregates and summarizes the latest news on ANY topic the user specifies (AI, finance, geopolitics, sports, tech, science, etc.) from multiple sources. Activates when user asks for today's news, daily briefing, or latest updates on any subject — e.g. '给我今天的AI资讯', '帮我整理一下美股新闻', '科技行业有什么新动态', '今日财经简报'.","https:\u002F\u002Fgithub.com\u002FhellowKeyzj\u002FMatcha-claw\u002Fblob\u002Fmain\u002Fresources\u002Fskills\u002Fpreinstalled-skill-sources\u002Fdaily-news-briefing\u002FSKILL.md",[],[145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,29,163],"news briefing","briefing","daily","daily news briefing","news","finance","science","user","aggregates","tech","sources","财经","generator","整理","latest","updates","for","sports","daily briefing"]