一键导入
canvas-code-review
Recipe for rendering a code review as a Canvas — compose findings with evidence and actions into a scannable page instead of a long text answer.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Recipe for rendering a code review as a Canvas — compose findings with evidence and actions into a scannable page instead of a long text answer.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when the user asks to create a short drama from a prompt — e.g. "生成短剧", "制作微短剧", "make a short drama", "turn this script into a short drama", "ショートドラマを生成", "숏드라마를 만들어". Orchestrates script, storyboard, optional character images, per-shot video clips, and ffmpeg composition through the existing media tools.
Configure Gmail Browser with /connect and use Gmail ConnectorAct actions through the global Puffer browser profile.
Authenticate Lark with /connect (delegated to the official lark-cli), then send/react/reply through the connector and consume incoming Lark messages as a stream. Two connectors mirror Telegram — lark-login (your user account; monitor + act as you) and lark-bot (the app bot; auto-reply). Use lark-cli directly from Bash for chat/user lookup and any API not exposed as a connector action.
Configure SlackApp or SlackLogin with /connect, then resolve Slack users/channels and search/read Slack messages through the internal CLI.
Configure Telegram with /connect, then resolve Telegram user/group ids and search Telegram messages through the internal Telegram CLI.
Use when the user asks to create, generate, or render images through the internal media CLI.
| name | canvas-code-review |
| description | Recipe for rendering a code review as a Canvas — compose findings with evidence and actions into a scannable page instead of a long text answer. |
| allowed-tools | ["Canvas"] |
| argument-hint | [what to review] |
| user-invocable | true |
| disable-model-invocation | false |
A recipe for the Canvas tool: how to structure a code review as a Canvas
page. Canvas is a design system — the Canvas tool description documents the
component vocabulary and geometry (the repo's resources/canvas/components.md
holds the full catalog). This recipe is the task-level rule for code review
specifically.
After reviewing a diff/PR/branch, when the result is easier to act on as a
scannable page than as prose. Call Canvas once with the composed tree.
title = "Code review · "; meta = ["PR #…", "N files", "+x −y"].summary (what changed + overall verdict). Then a
single metrics strip: total findings and the per-severity counts
(color high/crit). Do not also add a decorative KPI grid.section{title:"Findings"} containing finding
nodes, highest severity first. Every finding must:
severity and a precise title;locations:[{path,line}];evidence with the actual diff/code (use -/+ lines),
not a paraphrase;actions — a fix intent ("Suggest change") for
fixable issues, test ("Add test") where coverage is missing, explain
when the reader may need rationale.callout (at most one, near the top) for the single highest-
priority thing to address before merge.{
"title": "Code review · feat/x",
"meta": ["PR #123", "4 files", "+120 −18"],
"summary": "Adds X. Solid overall; 2 issues before merge, 1 a security note.",
"body": [
{ "type": "metrics", "items": [
{ "value": "2", "label": "findings" },
{ "value": "1", "label": "high", "tone": "high" } ] },
{ "type": "section", "title": "Findings", "children": [
{ "type": "finding", "severity": "high", "title": "...",
"locations": [{ "path": "src/x.rs", "line": 42 }],
"evidence": "- old line\n+ new line",
"actions": [{ "id": "fix", "label": "Suggest change", "intent": "fix" }] }
]}
]
}
Action buttons are wired on both surfaces: clicking one bundles the finding (title, severity, locations, diff evidence) plus an intent-specific instruction into a message and continues the conversation as a new agent turn — inline in Puffer Desktop, or through the daemon bridge from the HTML fallback (degrading to clipboard copy when no daemon is reachable).