Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add anymouschina/TapCanvas --skill tapcanvas-demo-patternsgit clone --depth 1 https://github.com/anymouschina/TapCanvasWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/anymouschina/tapcanvas/tapcanvas-demo-patterns)<a href="https://agentmods.dev/skills/anymouschina/tapcanvas/tapcanvas-demo-patterns"><img src="https://agentmods.dev/badge/skills/anymouschina/tapcanvas/tapcanvas-demo-patterns/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/anymouschina/tapcanvas/tapcanvas-demo-patterns"><img src="https://agentmods.dev/badge/skills/anymouschina/tapcanvas/tapcanvas-demo-patterns.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00037 | $0.01386 |
| Opus 5 | $0.00018 | $0.00693 |
| Sonnet 5 | $0.00007 | $0.00277 |
| Haiku 4.5 | $0.00004 | $0.00139 |
Grade A, and why
tapcanvas-demo-patterns scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.
TapCanvas Demo Patterns
来源边界
- 本 skill 已固化经审查的共性规律,不依赖仓库外的原始研究素材。
- 运行时直接使用本 skill,不把
docs/、assets/或ai-metadata当作知识源读取。 - 你只能把这里的方法与本轮实时证据结合使用,不能把 demo 个案细节当成当前项目事实。
核心原则
- 先锁锚点,再写 prompt;prompt 只是表达层,不是事实来源。
- 图像层先成为连续性 authority,视频层只承担受约束的运动补完。
- 一次只改一个大变量;不要把角色、场景、机位、光线、动作同时改写。
- chapter-grounded 生产前,必须先盘点并区分:
- 角色锚点:角色卡、三视图、
@角色名命中结果、章节已确认角色图 - 场景锚点:权威基底帧、scene/prop reference、selectedReference.referenceBindings、上一组
tailFrameUrl - 镜头语义锚点:构图、景别、主体比例、朝向、拍摄语法、动作节拍
- 连续性锚点:章节正文、source bundle、continuity checkpoint
- 角色锚点:角色卡、三视图、
- 若只有角色卡而没有稳定场景锚点,不得直接批量生成多张图或多段视频;先建立权威基底帧。
- 关键帧数量、镜头数量与视频段数不预设固定模板;应由主代理基于章节证据、连续性边界与当前目标自行决定。
资产锁定法
1. Freeze-all-except-one
- 明确声明“除一个变量外,其余全部保持不变”。
- 适用:
- 改机位
- 反打
- 轻微道具变化
- 背景清理
2. 先锁拍摄语法
- 先说明是谁在拍、从哪里拍、镜头是否固定、景别是什么,再谈风格或戏剧升级。
- 不要只写“电影感/震撼/高级感”。
3. 镜头语义先于风格迁移
- 若是跨风格改编,必须先冻结:
- 构图
- 主体比例
- 朝向
- 光影逻辑
- 动作意图
- 风格迁移稳定后,才允许天气、眼部、道具、局部表情等微调。
4. 视频只继承,不重发明
- 视频 prompt 必须继承已锁定关键帧的:
- 角色身份
- 场景拓扑
- 光线/时间
- 镜头路径
- 允许动作
- 视频里必须同时写:
- 允许发生什么
- 禁止发生什么
chapter-grounded 生产顺序
- 先读
tapcanvas_storyboard_source_bundle_get - 再读
tapcanvas_storyboard_continuity_get - 再读
tapcanvas_flow_get或当前节点 bundle,确认当前画布状态 - 列出:
- confirmed facts
- locked anchors
- missing anchors
- 判断当前属于:
start_new_scenecontinue_from_confirmed_anchorrepair_continuityexpand_locked_keyframeprepare_video_from_locked_frames
- 若无权威基底帧,先创建/规划基底帧
- 再做单变量扩镜
- 选稳定关键帧后,再进入视频
结构化落板契约
- 当你要用
tapcanvas_flow_patch创建或改写 chapter-grounded 的视觉节点时,本轮每一个相关视觉节点都必须在同一轮同步写入结构化data.productionMetadata;禁止先落节点、下一轮再补 metadata。 productionMetadata推荐挂在 companiontext/storyboardScript节点,或显式 patch 到当前章节脚本节点;不要把它埋成只存在于自然语言说明里的隐含判断。
推荐结构:
{
"chapterGrounded": true,
"lockedAnchors": {
"character": ["..."],
"scene": ["..."],
"shot": ["..."],
"continuity": ["..."],
"missing": ["..."]
},
"authorityBaseFrame": {
"status": "planned | confirmed",
"source": "selected_reference | tail_frame | existing_flow_anchor | generate_first",
"reason": "..."
}
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago Changed · -6 tokens per session 1b1e30c122fd
- 11d ago First seen · 121 lines · 43 tokens per session scan A d916109ae492
tapcanvas-demo-patterns is a skill published in the GitHub repository anymouschina/TapCanvas (603 stars, last pushed today), licensed MIT. It adds 37 tokens to every session and 1,386 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
dramake
A production workflow for turning an idea, story, script, storyboard, or existing footage into a short AI drama or film. It covers planning, generation, voice, editing, and quality checks for formats such as vertical and horizontal video.
slides
Build a Grida slides deck — a .canvas bundle in slides mode whose pages are SVG documents (16:9, one SVG per slide). Use when creating a presentation, pitch deck, slideshow, or talk.
short-drama-storyboard
A workflow for turning a Chinese short-drama script and its visual facts into a shot-by-shot storyboard with frozen starting-frame prompts.
short-drama-image-prompts
A guide for writing reusable image prompts for short dramas, covering characters, costumes, locations, props, and different states. It produces copy-ready Markdown prompts but does not create the images.
edit-video
Edit video with FableCut — assemble a cut, add titles and captions, grade, add transitions, keyframe animation, speed ramps, and export. Use whenever the user wants to cut, trim, caption, subtitle, grade, or otherwise edit a video, or asks to open/start the video editor.
remake-reel
Analyze a reference video (a reel, montage, or ad the user likes) into an edit blueprint — shot boundaries, music beats, BPM, energy curve, the drop — and rebuild the same structure with the user's own footage. Use when someone says "make it like this video", "remake this reel with my clips", or asks what makes an…