[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M698THMKN41HTW668PTV0T2T":3,"skill-same:01M698THMKN41HTW668PTV0T2T":56},{"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":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":33,"commitSha":34,"skillDirectory":35,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":38,"ownerHtmlUrl":39,"ownerBlogUrl":38,"ownerDescription":40,"updatedAt":41,"install":42,"resources":55},"01M698THMKN41HTW668PTV0T2T","diffs",null,"Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.","openclaw\u002Fopenclaw","openclaw","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F252820863?v=4","01M698P3FSAZ6B4R928ZF19KPT","01M698PDMDRVH56MV30D253NFP",394302,"MIT","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fextensions\u002Fdiffs\u002Fskills\u002Fdiffs\u002FSKILL.md",[],[5,18,19,20,21,22,23,24,25,26,27],"produce","file","tool","edit","use","artifact","URL","manual","summaries","viewer","2026-11-10 10:12:30",false,"---\nname: diffs\ndescription: Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.\n---\n\nWhen you need to show edits as a real diff, prefer the `diffs` tool instead of writing a manual summary.\n\nThe `diffs` tool accepts either `before` + `after` text, or a unified `patch` string.\n\nCheck `details.changed`: identical before\u002Fafter input returns `false` without creating an artifact; rendered results return `true`.\n\nUse `mode=view` when you want an interactive gateway-hosted viewer. After the tool returns, present `details.viewerUrl` with an available surface-presentation tool.\nIf the deployment uses a loopback trusted proxy (for example Tailscale Serve with `gateway.trustedProxies` including `127.0.0.1`), raw loopback viewer requests can be rejected without forwarded client-IP headers. In that topology, prefer `mode=file` \u002F `mode=both`, or use a configured `viewerBaseUrl` \u002F explicit proxy\u002Fpublic `baseUrl` when you need a shareable viewer URL.\n\nUse `mode=file` when you need a rendered file artifact. Set `fileFormat=png` (default) or `fileFormat=pdf`. The tool result includes `details.filePath`.\n\nFor large or high-fidelity files, use `fileQuality` (`standard`|`hq`|`print`) and optionally override `fileScale`\u002F`fileMaxWidth`.\n\nWhen you need to deliver the rendered file to a user or channel, do not rely on the raw tool-result renderer. Instead, use an available file-sending tool to send `details.filePath` as an attachment.\n\nUse `mode=both` when you want both the gateway viewer URL and the rendered artifact.\n\nIf the user has configured diffs plugin defaults, prefer omitting `mode`, `theme`, `layout`, and related presentation options unless you need to override them for this specific diff.\n\nInclude `path` for before\u002Fafter text when you know the file name.\n","When you need to show edits as a real diff, prefer the `diffs` tool instead of writing a manual summary.\n\nThe `diffs` tool accepts either `before` + `after` text, or a unified `patch` string.\n\nCheck `details.changed`: identical before\u002Fafter input returns `false` without creating an artifact; rendered results return `true`.\n\nUse `mode=view` when you want an interactive gateway-hosted viewer. After the tool returns, present `details.viewerUrl` with an available surface-presentation tool.\nIf the deployment uses a loopback trusted proxy (for example Tailscale Serve with `gateway.trustedProxies` including `127.0.0.1`), raw loopback viewer requests can be rejected without forwarded client-IP headers. In that topology, prefer `mode=file` \u002F `mode=both`, or use a configured `viewerBaseUrl` \u002F explicit proxy\u002Fpublic `baseUrl` when you need a shareable viewer URL.\n\nUse `mode=file` when you need a rendered file artifact. Set `fileFormat=png` (default) or `fileFormat=pdf`. The tool result includes `details.filePath`.\n\nFor large or high-fidelity files, use `fileQuality` (`standard`|`hq`|`print`) and optionally override `fileScale`\u002F`fileMaxWidth`.\n\nWhen you need to deliver the rendered file to a user or channel, do not rely on the raw tool-result renderer. Instead, use an available file-sending tool to send `details.filePath` as an attachment.\n\nUse `mode=both` when you want both the gateway viewer URL and the rendered artifact.\n\nIf the user has configured diffs plugin defaults, prefer omitting `mode`, `theme`, `layout`, and related presentation options unless you need to override them for this specific diff.\n\nInclude `path` for before\u002Fafter text when you know the file name.\n",{"name":5,"description":7},"main","f1c93577085244aa96aa87b53a2df9b59d293bd7","extensions\u002Fdiffs\u002Fskills\u002Fdiffs",82862,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw","https:\u002F\u002Fopenclaw.ai","https:\u002F\u002Fgithub.com\u002Fopenclaw","Your personal, open source AI assistant.","2026-11-11 08:46:30",{"source":8,"skillName":5,"commands":43,"prompt":53,"zipAvailable":54},[44,47,50],{"tool":45,"command":46},"npx","npx skills add openclaw\u002Fopenclaw --skill diffs",{"tool":48,"command":49},"bunx","bunx skills add openclaw\u002Fopenclaw --skill diffs",{"tool":51,"command":52},"pnpm","pnpm dlx skills add openclaw\u002Fopenclaw --skill diffs","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fextensions\u002Fdiffs\u002Fskills\u002Fdiffs\u002FSKILL.md",true,[],[57,63,86,104,126,150],{"skillNo":58,"name":59,"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":60,"categories":61,"keywords":62,"publishedAt":28},"01M698VP84FNM6G9MR1HPX7MF7","lobster","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fextensions\u002Flobster\u002FSKILL.md",[],[59],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":28},"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",[],[65,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85],"for","api","calls","replies","posts","upload","tap","install","brew","node","Media","search","npm","status","auth","cli",{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":28},"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",[],[88,93,94,77,95,78,96,97,98,99,100,101,70,102,103],"travel planning","travel","fetch","curl","https","help","planning","web","back","temperature","with",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":115,"publishedAt":28},"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",[110],{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[106,116,117,118,119,70,103,120,121,122,123,124,9,125],"widgets","openclaw dashboard","author","inline","show","code","create","visuals","dashboard","widget",{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":140,"publishedAt":28},"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",[132,137],{"categoryNo":133,"categoryName":134,"taxonomyType":135,"taxonomyTypeDesc":136},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":138,"categoryName":139,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000030","开发工程师",[128,97,141,142,143,144,145,146,77,78,147,96,71,148,149],"cloud","manage","via","rest api","token","atlassian","jq","REST","developer",{"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":156,"publishedAt":28},"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",[],[152,77,157,158,70,159,160,161,162,163,164,165,78,166,167,168,169,170,171],"send","darwin","keys","paste","output","control","prompts","interactive","list","capture","panes","text","monitor","sessions","linux"]