From image-annotation
One-shot orchestrator — take a screenshot and immediately apply annotations. Combines the screenshot and annotate skills for the common "grab this region and draw an arrow at it" workflow.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin image-annotationThis skill uses the workspace's default tool permissions.
Compose `screenshot` + `annotate` into one step. Use when the user says things like "screenshot this and circle X", "grab the active window and add a numbered marker at 200,300", or "capture a region and label it 'Step 1'".
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Compose screenshot + annotate into one step. Use when the user says things like "screenshot this and circle X", "grab the active window and add a numbered marker at 200,300", or "capture a region and label it 'Step 1'".
TMP=/tmp/cap-$RANDOM.png
bash "$CLAUDE_PLUGIN_ROOT/scripts/screenshot.sh" "$MODE" "$TMP"
python3 "$CLAUDE_PLUGIN_ROOT/scripts/annotate.py" \
--input "$TMP" --spec "$SPEC" --output "$FINAL"
rm "$TMP").If the user doesn't give a final path, write to ~/Pictures/Screenshots/<ISO-timestamp>-annotated.png. The captured original is the temp file, so deleting it after annotation is fine — there's no "original" to preserve. If the user does want the unannotated capture saved too, run the screenshot script first to a real path, then run annotate against it (which will produce a sibling annotated/ folder, leaving the original untouched).
User coordinates are in the captured image's coordinate space, not the screen's. For region captures the user can't know exact pixel coordinates in advance — capture first, report the resulting image dimensions, then ask for coordinates. Or accept relative descriptors (center, top-left, bottom-right) and translate to pixels after capture.
If annotation fails, keep the temp file and report its path so the user can retry.