[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M698RRN2SD045RZZ8FK2ZTGV":3,"skill-same:01M698RRN2SD045RZZ8FK2ZTGV":80},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":39,"commitSha":40,"skillDirectory":41,"forksCount":42,"repositoryHtmlUrl":43,"repositoryHomepageUrl":44,"ownerHtmlUrl":45,"ownerBlogUrl":44,"ownerDescription":46,"updatedAt":47,"install":48,"resources":61},"01M698RRN2SD045RZZ8FK2ZTGV","plugin-sdk-impact",null,"Count Plugin SDK consumers across live ClawHub releases and bundled OpenClaw plugins before deprecation, removal, or behavior changes; supports public release-date filters.","openclaw\u002Fopenclaw","openclaw","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F252820863?v=4","01M698P3FSAZ6B4R928ZF19KPT","01M698PDMDRVH56MV30D253NFP",394352,"MIT","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002FSKILL.md",[],[18,19,20,21,22,9,23,24,25,26,27,28,29,30,31,32,33],"plugin sdk impact","sdk","plugin","impact","count","deprecation","changes","live","across","releases","filters","behavior","public","plugins","release","clawhub","2026-11-10 10:12:30",false,"---\nname: plugin-sdk-impact\ndescription: Count Plugin SDK consumers across live ClawHub releases and bundled OpenClaw plugins before deprecation, removal, or behavior changes; supports public release-date filters.\n---\n\n# Plugin SDK impact\n\nCombine current ClawHub inventories with a source scan of every bundled OpenClaw\nplugin, including plugins absent from ClawHub, to inform compatibility decisions.\nStatic usage identifies dependencies; it does not prove execution or reliance on a\nparticular behavior. Keep the approval and deprecation rules in\n[the SDK boundary guide](..\u002F..\u002F..\u002Fsrc\u002Fplugin-sdk\u002FAGENTS.md) authoritative.\n\n## Investigate\n\n1. Identify every affected public surface from source, including alternate SDK\n   exports and runtime paths. Verify spelling against the definition and known\n   callers; an incorrect key can return a convincing zero. Trace grouped facades,\n   SDK helpers, and registration readers as well: a flat alias can have zero direct\n   plugin calls while implementing a supported grouped method.\n2. Scan every bundled plugin in a clean OpenClaw checkout using Plugin Inspector's\n   static source analysis. Reuse an installed Inspector 0.4.3 or newer; otherwise\n   install it in a separate temporary directory, without lifecycle scripts:\n\n   ```sh\n   inspector_dir=$(mktemp -d)\n   npm install --prefix \"$inspector_dir\" --ignore-scripts @openclaw\u002Fplugin-inspector@0.4.3\n   node {baseDir}\u002Fscripts\u002Fscan-bundled.mjs \\\n     --inspector \"$inspector_dir\u002Fnode_modules\u002F@openclaw\u002Fplugin-inspector\" \\\n     --out \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json\n   ```\n\n   The scanner defaults to this skill's checkout; `--root \u003Ccheckout>` selects\n   another. It discovers `extensions\u002F*\u002Fopenclaw.plugin.json`, never executes\n   plugin code, and records the commit, input fingerprint, Inspector version,\n   every plugin, and incomplete analyses. A failed or timed-out scan remains a\n   gap. Plugins without declared entrypoints also remain coverage gaps, because\n   Inspector may miss implicit entrypoints. An interrupted corpus scan cannot be\n   used as a finished inventory. Reuse the report for multiple queries while its\n   source remains unchanged. A changed commit, plugin roster, or uncommitted source\n   invalidates it; rescan instead of editing the receipt.\n\n3. Query each canonical key with both sources:\n\n   ```sh\n   node {baseDir}\u002Fscripts\u002Fquery.mjs 'api-member:api.registerTool' \\\n     --bundled \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json\n   ```\n\n   For “updated within the last three months”, add `--months 3`. This means the\n   latest eligible public release was uploaded within three calendar months of\n   now, measured in UTC (month ends are clamped). Listing edits and rescans do not\n   count as updates. The stored release date is its creation\u002Fupload time; public\n   approval can happen later. `--since 2026-07-16T12:00:00Z` accepts an explicit cutoff.\n   Report the exact inclusive cutoff from `releaseWindow`, not a guessed date.\n   Public consumers and coverage use the same window on every page. Bundled\n   source has no comparable upload date: report it separately, unfiltered, even\n   for a recent-release question. The combined count is the union of that public\n   release window and current bundled source, not a count of recent releases.\n\n   The helper follows all usage and coverage pages, including empty intermediate\n   pages. Counts and coverage include every result; `items`, `gaps`, and `warnings`\n   contain bounded examples with omitted counts in `output.omitted`. Mixed\n   references count in both runtime and type totals. For an investigation needing\n   every consumer or gap, save `--full` output to a file and read it in sections:\n\n   ```sh\n   node {baseDir}\u002Fscripts\u002Fquery.mjs 'api-member:api.registerTool' \\\n     --bundled \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json --full > sdk-usage.json\n   ```\n\n   `--help` documents local endpoint and traversal limits.\n\n4. Inspect matched evidence against the proposed change. A method call may not use\n   the behavior being changed. Type-only consumers still matter for type\u002Fexport\n   removal. Query related members separately; a module import does not prove use\n   of every export. Repeated references in a plugin count as one consumer.\n5. For a usage-count question, report the key, query time, exact release window\n   (if requested), ClawHub and bundled counts, their combined count, bundled commit,\n   and both coverage gaps. Top-level `distinctPlugins` and `coverage` remain\n   ClawHub-only; `bundled` describes source results; `combined` merges exact package\n   identities once. Some bundled plugins have no package name: when they could\n   overlap public matches, `combined.distinctPlugins` is null and\n   `distinctPluginBounds` reports the possible range. `observedPluginIdentities`\n   counts source identities before that uncertain overlap. Report the range,\n   not its upper bound as an exact count. Different names remain distinct; never\n   guess aliases from display names. Missing bundled evidence makes combined\n   impact unavailable.\n   For a proposed SDK change, also report matched evidence, indirect callers,\n   and your compatibility recommendation. Finish change investigations with the maintainer's decision:\n   preserve behavior, deprecate with migration, or proceed under existing policy.\n   Never infer permission from the count.\n\n## Canonical keys\n\n| Surface             | Example                                                        |\n| ------------------- | -------------------------------------------------------------- |\n| SDK module          | `sdk-module:openclaw\u002Fplugin-sdk\u002Fcore`                          |\n| Named SDK export    | `sdk-export:openclaw\u002Fplugin-sdk\u002Fcore#OpenClawPluginApi`        |\n| Plugin API method   | `api-member:api.registerTool`                                  |\n| Host runtime member | `runtime-member:runtime.channel.reply.dispatchReplyFromConfig` |\n| Named hook          | `hook:hook.before_agent_start`                                 |\n| Manifest contract   | `manifest-contract:manifest.contracts.tools:example_tool`      |\n\nKeys describe SDK identities, not local aliases. `api.runtime` members normalize\nto `runtime.*`. The inventory includes supported and deprecated references;\nnonempty `deprecationCodes` selects entries associated with existing warnings.\nPer-plugin inspection is available at\n`https:\u002F\u002Fclawhub.ai\u002Fapi\u002Fv1\u002Fsdk-usage\u002Fplugin?package=\u003Cencoded-name>`; follow its\n`nextCursor` until null to obtain the full inventory.\n\n## Interpret the result\n\n| Result                                                          | Report                                                                                                                                                                                               |\n| --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Observed consumers                                              | Report public, bundled, and combined counts with their separate scopes. Inspect evidence before judging a behavior change.                                                                           |\n| No observed consumers, complete coverage                        | “No static references detected across N public\u002Fbundled plugin identities.” Requires both scans; excludes private non-bundled plugins and unbundled dependencies. Not proof that nobody uses the API. |\n| Partial, failed, missing, incompatible, or unresolved analysis  | State observed matches, gap counts, and representative gaps. Zero matches leaves impact unknown.                                                                                                     |\n| Empty corpus                                                    | No eligible plugins were observed; this provides no ecosystem assurance.                                                                                                                             |\n| Unavailable endpoint, malformed result, or incomplete traversal | Impact is unknown. Preserve the error and use local evidence; never substitute zero.                                                                                                                 |\n\nCoverage is tied to current release\u002Fartifact and analysis versions. Eligible\nClawHub reports have `inputKind: \"artifact\"`; bundled reports use `\"source\"`. A\nsource-checkout benchmark cannot establish what a published package contains. Source-only type references still matter for\nSDK type and export removal; preserve the source of each match. An old scan\ntimestamp alone does not make an immutable artifact stale. Evidence is sampled;\neach scan reports its evidence\u002Funknown limits. Pages are live reads, not one\nsnapshot: rerun if releases or visibility change during the investigation. The\nhelper flags changes it observes but cannot establish a transaction-wide snapshot.\n\nDo not dismiss a security issue just because no consumers were observed. Describe\nhow usage evidence affects compatibility risk; security and SDK owners still\ndecide the fix and any exception to the normal migration window.\n","# Plugin SDK impact\n\nCombine current ClawHub inventories with a source scan of every bundled OpenClaw\nplugin, including plugins absent from ClawHub, to inform compatibility decisions.\nStatic usage identifies dependencies; it does not prove execution or reliance on a\nparticular behavior. Keep the approval and deprecation rules in\n[the SDK boundary guide](..\u002F..\u002F..\u002Fsrc\u002Fplugin-sdk\u002FAGENTS.md) authoritative.\n\n## Investigate\n\n1. Identify every affected public surface from source, including alternate SDK\n   exports and runtime paths. Verify spelling against the definition and known\n   callers; an incorrect key can return a convincing zero. Trace grouped facades,\n   SDK helpers, and registration readers as well: a flat alias can have zero direct\n   plugin calls while implementing a supported grouped method.\n2. Scan every bundled plugin in a clean OpenClaw checkout using Plugin Inspector's\n   static source analysis. Reuse an installed Inspector 0.4.3 or newer; otherwise\n   install it in a separate temporary directory, without lifecycle scripts:\n\n   ```sh\n   inspector_dir=$(mktemp -d)\n   npm install --prefix \"$inspector_dir\" --ignore-scripts @openclaw\u002Fplugin-inspector@0.4.3\n   node {baseDir}\u002Fscripts\u002Fscan-bundled.mjs \\\n     --inspector \"$inspector_dir\u002Fnode_modules\u002F@openclaw\u002Fplugin-inspector\" \\\n     --out \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json\n   ```\n\n   The scanner defaults to this skill's checkout; `--root \u003Ccheckout>` selects\n   another. It discovers `extensions\u002F*\u002Fopenclaw.plugin.json`, never executes\n   plugin code, and records the commit, input fingerprint, Inspector version,\n   every plugin, and incomplete analyses. A failed or timed-out scan remains a\n   gap. Plugins without declared entrypoints also remain coverage gaps, because\n   Inspector may miss implicit entrypoints. An interrupted corpus scan cannot be\n   used as a finished inventory. Reuse the report for multiple queries while its\n   source remains unchanged. A changed commit, plugin roster, or uncommitted source\n   invalidates it; rescan instead of editing the receipt.\n\n3. Query each canonical key with both sources:\n\n   ```sh\n   node {baseDir}\u002Fscripts\u002Fquery.mjs 'api-member:api.registerTool' \\\n     --bundled \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json\n   ```\n\n   For “updated within the last three months”, add `--months 3`. This means the\n   latest eligible public release was uploaded within three calendar months of\n   now, measured in UTC (month ends are clamped). Listing edits and rescans do not\n   count as updates. The stored release date is its creation\u002Fupload time; public\n   approval can happen later. `--since 2026-07-16T12:00:00Z` accepts an explicit cutoff.\n   Report the exact inclusive cutoff from `releaseWindow`, not a guessed date.\n   Public consumers and coverage use the same window on every page. Bundled\n   source has no comparable upload date: report it separately, unfiltered, even\n   for a recent-release question. The combined count is the union of that public\n   release window and current bundled source, not a count of recent releases.\n\n   The helper follows all usage and coverage pages, including empty intermediate\n   pages. Counts and coverage include every result; `items`, `gaps`, and `warnings`\n   contain bounded examples with omitted counts in `output.omitted`. Mixed\n   references count in both runtime and type totals. For an investigation needing\n   every consumer or gap, save `--full` output to a file and read it in sections:\n\n   ```sh\n   node {baseDir}\u002Fscripts\u002Fquery.mjs 'api-member:api.registerTool' \\\n     --bundled \u002Ftmp\u002Fopenclaw-bundled-sdk-usage.json --full > sdk-usage.json\n   ```\n\n   `--help` documents local endpoint and traversal limits.\n\n4. Inspect matched evidence against the proposed change. A method call may not use\n   the behavior being changed. Type-only consumers still matter for type\u002Fexport\n   removal. Query related members separately; a module import does not prove use\n   of every export. Repeated references in a plugin count as one consumer.\n5. For a usage-count question, report the key, query time, exact release window\n   (if requested), ClawHub and bundled counts, their combined count, bundled commit,\n   and both coverage gaps. Top-level `distinctPlugins` and `coverage` remain\n   ClawHub-only; `bundled` describes source results; `combined` merges exact package\n   identities once. Some bundled plugins have no package name: when they could\n   overlap public matches, `combined.distinctPlugins` is null and\n   `distinctPluginBounds` reports the possible range. `observedPluginIdentities`\n   counts source identities before that uncertain overlap. Report the range,\n   not its upper bound as an exact count. Different names remain distinct; never\n   guess aliases from display names. Missing bundled evidence makes combined\n   impact unavailable.\n   For a proposed SDK change, also report matched evidence, indirect callers,\n   and your compatibility recommendation. Finish change investigations with the maintainer's decision:\n   preserve behavior, deprecate with migration, or proceed under existing policy.\n   Never infer permission from the count.\n\n## Canonical keys\n\n| Surface             | Example                                                        |\n| ------------------- | -------------------------------------------------------------- |\n| SDK module          | `sdk-module:openclaw\u002Fplugin-sdk\u002Fcore`                          |\n| Named SDK export    | `sdk-export:openclaw\u002Fplugin-sdk\u002Fcore#OpenClawPluginApi`        |\n| Plugin API method   | `api-member:api.registerTool`                                  |\n| Host runtime member | `runtime-member:runtime.channel.reply.dispatchReplyFromConfig` |\n| Named hook          | `hook:hook.before_agent_start`                                 |\n| Manifest contract   | `manifest-contract:manifest.contracts.tools:example_tool`      |\n\nKeys describe SDK identities, not local aliases. `api.runtime` members normalize\nto `runtime.*`. The inventory includes supported and deprecated references;\nnonempty `deprecationCodes` selects entries associated with existing warnings.\nPer-plugin inspection is available at\n`https:\u002F\u002Fclawhub.ai\u002Fapi\u002Fv1\u002Fsdk-usage\u002Fplugin?package=\u003Cencoded-name>`; follow its\n`nextCursor` until null to obtain the full inventory.\n\n## Interpret the result\n\n| Result                                                          | Report                                                                                                                                                                                               |\n| --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Observed consumers                                              | Report public, bundled, and combined counts with their separate scopes. Inspect evidence before judging a behavior change.                                                                           |\n| No observed consumers, complete coverage                        | “No static references detected across N public\u002Fbundled plugin identities.” Requires both scans; excludes private non-bundled plugins and unbundled dependencies. Not proof that nobody uses the API. |\n| Partial, failed, missing, incompatible, or unresolved analysis  | State observed matches, gap counts, and representative gaps. Zero matches leaves impact unknown.                                                                                                     |\n| Empty corpus                                                    | No eligible plugins were observed; this provides no ecosystem assurance.                                                                                                                             |\n| Unavailable endpoint, malformed result, or incomplete traversal | Impact is unknown. Preserve the error and use local evidence; never substitute zero.                                                                                                                 |\n\nCoverage is tied to current release\u002Fartifact and analysis versions. Eligible\nClawHub reports have `inputKind: \"artifact\"`; bundled reports use `\"source\"`. A\nsource-checkout benchmark cannot establish what a published package contains. Source-only type references still matter for\nSDK type and export removal; preserve the source of each match. An old scan\ntimestamp alone does not make an immutable artifact stale. Evidence is sampled;\neach scan reports its evidence\u002Funknown limits. Pages are live reads, not one\nsnapshot: rerun if releases or visibility change during the investigation. The\nhelper flags changes it observes but cannot establish a transaction-wide snapshot.\n\nDo not dismiss a security issue just because no consumers were observed. Describe\nhow usage evidence affects compatibility risk; security and SDK owners still\ndecide the fix and any exception to the normal migration window.\n",{"name":5,"description":7},"main","f1c93577085244aa96aa87b53a2df9b59d293bd7",".agents\u002Fskills\u002Fplugin-sdk-impact",82861,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw","https:\u002F\u002Fopenclaw.ai","https:\u002F\u002Fgithub.com\u002Fopenclaw","Your personal, open source AI assistant.","2026-11-12 03:01:25",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add openclaw\u002Fopenclaw --skill plugin-sdk-impact",{"tool":54,"command":55},"bunx","bunx skills add openclaw\u002Fopenclaw --skill plugin-sdk-impact",{"tool":57,"command":58},"pnpm","pnpm dlx skills add openclaw\u002Fopenclaw --skill plugin-sdk-impact","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002FSKILL.md",true,[62,68,72,76],{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"scripts\u002Fquery.mjs","SCRIPT","脚本",16553,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002Fscripts\u002Fquery.mjs",{"path":69,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":70,"sourceHtmlUrl":71},"scripts\u002Fquery.test.mjs",16070,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002Fscripts\u002Fquery.test.mjs",{"path":73,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":74,"sourceHtmlUrl":75},"scripts\u002Fscan-bundled.mjs",12194,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002Fscripts\u002Fscan-bundled.mjs",{"path":77,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":78,"sourceHtmlUrl":79},"scripts\u002Fscan-bundled.test.mjs",4570,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fplugin-sdk-impact\u002Fscripts\u002Fscan-bundled.test.mjs",[81,87,110,128,150,174],{"skillNo":82,"name":83,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":34},"01M698VP84FNM6G9MR1HPX7MF7","lobster","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fextensions\u002Flobster\u002FSKILL.md",[],[83],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":34},"01M698YY8QGQ7S8TJNKJG6VTPH","xurl","xurl CLI for authenticated X posts, replies, reads\u002Fsearch, DMs, media upload, followers, auth status, or raw v2 API calls.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fxurl\u002FSKILL.md",[],[89,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109],"for","api","calls","replies","posts","upload","tap","install","brew","node","Media","search","npm","status","auth","cli",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":34},"01M698YWT1CJ0WK88WB909R9RT","weather","Current weather and forecasts with web_fetch, falling back to wttr.in curl for locations, rain, temperature, travel planning.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fweather\u002FSKILL.md",[],[112,117,118,101,119,102,120,121,122,123,124,125,94,126,127],"travel planning","travel","fetch","curl","https","help","planning","web","back","temperature","with",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":139,"publishedAt":34},"01M698YV2Q0R0JJKAWGFS21K0N","visualize","Create inline visuals for code and explanations, or author persistent OpenClaw dashboard widgets with show_widget.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fvisualize\u002FSKILL.md",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[130,140,141,142,143,94,127,144,145,146,147,148,9,149],"widgets","openclaw dashboard","author","inline","show","code","create","visuals","dashboard","widget",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":164,"publishedAt":34},"01M698YS2TRJH9ENG28HD9CD87","trello","Manage Trello boards, lists, and cards via the Trello REST API.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Ftrello\u002FSKILL.md",[156,161],{"categoryNo":157,"categoryName":158,"taxonomyType":159,"taxonomyTypeDesc":160},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":162,"categoryName":163,"taxonomyType":137,"taxonomyTypeDesc":138},"01JBSEEDCAT000000000000030","开发工程师",[152,121,165,166,167,168,169,170,101,102,171,120,95,172,173],"cloud","manage","via","rest api","token","atlassian","jq","REST","developer",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":180,"publishedAt":34},"01M698YQ9Q3M4W78EWV2KSCSVW","tmux","Control tmux sessions\u002Fpanes for interactive CLIs: list, capture output, send keys, paste text, monitor prompts.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Ftmux\u002FSKILL.md",[],[176,101,181,182,94,183,184,185,186,187,188,189,102,190,191,192,193,194,195],"send","darwin","keys","paste","output","control","prompts","interactive","list","capture","panes","text","monitor","sessions","linux"]