chatcut-annotate

Renders video annotations as HyperFrames transparent layers composited onto footage.

Updated Jul 3, 2026
One-click install
npx skills add https://github.com/LYGOLANG/fufan-cc-flow --skill chatcut-annotate-lygolang
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: chatcut-annotate
Source: https://github.com/LYGOLANG/fufan-cc-flow/tree/main/bundled-plugins/chatcut/skills/chatcut-annotate
Command: npx skills add https://github.com/LYGOLANG/fufan-cc-flow --skill chatcut-annotate-lygolang

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires hyperframes.

What problem does it solve? Adding highlights, arrows, zoom focus, and callout cards to video footage normally requires manual motion-graphics work in an editor. This Skill turns user-selected screen regions into timed annotation definitions and renders them as transparent overlay layers composited onto the final video, with caching so unchanged annotations are not re-rendered. ## Core Features & Use Cases - Four annotation styles: highlight-rect, arrow, zoom-focus, and callout-card, defined with normalized bounding boxes and start/end times so they survive resolution changes and timeline re-edits. - Incremental rendering with caching: unchanged annotations hit the cache and are skipped, so fixing one misplaced highlight box does not trigger a full re-render. - Workbench request handling: claims pending "generate annotation layer" requests from the UI queue via request_claim and reports long render jobs through job_status. - Dependency recovery: detects a missing HyperFrames installation, quotes the download size and install location, and completes the dependency_fetch flow before rendering. - Use Case: A user框 selects a save button in a screen recording, asks to circle it from 2 to 3 seconds, and the Skill defines the annotation, renders the transparent layer, and composites it onto the footage at the exact frames. ## Quick Start Circle the save button in the current clip from second 2 to second 3 and render the annotation layer onto the video.

Frequently Asked Questions about chatcut-annotate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add highlight boxes and arrows to a video?▼

Select the region in the workbench so the Skill can read normalized coordinates via get_current_selection, then it defines the annotation with annotation_define and renders it with annotation_render. Four styles are available: highlight-rect, arrow, zoom-focus, and callout-card.

How do I re-render only changed video annotations?▼

Run annotation_render again after editing the misplaced annotation. Unchanged annotations hit the render cache and are skipped automatically, so fixing one offset highlight box does not trigger a full re-render of the batch.

Why is the annotation render button in the UI stuck on in-progress?▼

UI clicks enter a request queue and are not automatic tool calls. The Skill must first call request_claim to claim the pending request and pass that requestId to annotation_render, otherwise the queue entry stays pending until its lease expires.

What happens when HyperFrames is not installed for annotation rendering?▼

The dependency_check reports feature:annotation as blocked. The Skill quotes the roughly 369 MB download from registry.npmjs.org, installs it after user confirmation via dependency_fetch, then re-checks before rendering. First render also pulls about 272 MB of chrome-headless-shell.

What are the performance limits of batch video annotation rendering?▼

Each annotation costs about 9 seconds of fixed overhead with 6-way parallelism, and the soft cap is 30 annotations (about 2 minutes cold). Beyond that, time grows roughly linearly, and zoom-focus costs more because it renders the full dimmed frame.