/diffs
Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
Claude Code
$ npx -y skills add openclaw/openclaw --skill diffs --agent claude-code
Codex
$ npx skills add openclaw/openclaw --skill diffs -a codex -y
Cursor
$ npx skills add openclaw/openclaw --skill diffs -a cursor -y
Gemini CLI
$ npx skills add openclaw/openclaw --skill diffs -a gemini-cli -y
GitHub Copilot
$ npx skills add openclaw/openclaw --skill diffs -a github-copilot -y
OpenCode
$ npx skills add openclaw/openclaw --skill diffs -a opencode -y
Windsurf
$ npx skills add openclaw/openclaw --skill diffs -a windsurf -y
SKILL.md
diffs.SKILL.mdname: diffs
description: Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
When you need to show edits as a real diff, prefer the `diffs` tool instead of writing a manual summary.
The `diffs` tool accepts either `before` + `after` text, or a unified `patch` string.
Check `details.changed`: identical before/after input returns `false` without creating an artifact; rendered results return `true`.
Use `mode=view` when you want an interactive gateway-hosted viewer. After the tool returns, present `details.viewerUrl` with an available surface-presentation tool. If 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` / `mode=both`, or use a configured `viewerBaseUrl` / explicit proxy/public `baseUrl` when you need a shareable viewer URL.
Use `mode=file` when you need a rendered file artifact. Set `fileFormat=png` (default) or `fileFormat=pdf`. The tool result includes `details.filePath`.
For large or high-fidelity files, use `fileQuality` (`standard`|`hq`|`print`) and optionally override `fileScale`/`fileMaxWidth`.
When 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.
Use `mode=both` when you want both the gateway viewer URL and the rendered artifact.
If 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.
Include `path` for before/after text when you know the file name.
Read more
name: diffs description: Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
When you need to show edits as a real diff, prefer the `diffs` tool instead of writing a manual summary.
The `diffs` tool accepts either `before` + `after` text, or a unified `patch` string.
Check `details.changed`: identical before/after input returns `false` without creating an artifact; rendered results return `true`.
Use `mode=view` when you want an interactive gateway-hosted viewer. After the tool returns, present `details.viewerUrl` with an available surface-presentation tool. If 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` / `mode=both`, or use a configured `viewerBaseUrl` / explicit proxy/public `baseUrl` when you need a shareable viewer URL.
Use `mode=file` when you need a rendered file artifact. Set `fileFormat=png` (default) or `fileFormat=pdf`. The tool result includes `details.filePath`.
For large or high-fidelity files, use `fileQuality` (`standard`|`hq`|`print`) and optionally override `fileScale`/`fileMaxWidth`.
When 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.
Use `mode=both` when you want both the gateway viewer URL and the rendered artifact.
If 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.
Include `path` for before/after text when you know the file name.
OpenClaw is an open-source AI assistant that runs on your own computer and meets you in the channels you already use: Discord, iMessage, Slack, Teams, Telegram, WhatsApp, and 20+ more, plus native apps for macOS, iOS, Android, Windows, and Linux.
Other skills on openclaw.
More skills from other plugins.
karpathy-guidelines
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid…
agent-builder
Design and build AI agents for any domain. Use when users: (1) ask to "create an agent", "build an assistant", or "design an AI…
Questions about diffs.
- Which coding agents can use diffs?
- diffs installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

