Cleanup Review
python scripts/_cleanup.py is an optional cleanup helper for the SVG Cover Generator skill. It may recursively remove /tmp/skill_build, /tmp/skill_cache. Show the exact paths first, explain whether they are skill-private temporary paths or user state, and run the cleanup only after the user confirms.
SVG Cover Generator
Generate one self-contained SVG cover that is visually intentional, easy to edit, and ready to save as .svg.
Quick Flow
- Confirm the target format, dimensions, text content, and mood.
- Read design-rules.md and layout-recipes.md before composing.
- Pick one layout recipe that matches the brief.
- Write a complete SVG with inline styles and no external dependencies.
- Validate the SVG structure before finishing.
Intake
If the user already gave a clear brief, do not over-question. Otherwise collect the minimum missing inputs:
- Title
- Optional subtitle or byline
- Intended use: report cover, social card, slide cover, poster, hero image
- Canvas size or aspect ratio
- Brand colors or visual mood
- Whether the output should feel corporate, editorial, playful, technical, minimal, or bold
Reasonable defaults:
- Use
1600x900 for general landscape covers.
- Use
1080x1350 for portrait social-style covers.
- Use
1080x1080 for square covers.
- Use a clean sans-serif fallback stack inside the SVG unless the user provided a font direction.
Composition Rules
- Prefer bold typography and a small number of strong shapes over busy illustration.
- Keep the title as the dominant element.
- Use 2-4 colors unless the brief asks for a richer palette.
- Use gradients, grids, bands, masks, or geometric clusters to create atmosphere.
- Keep all text editable as
<text> unless the user explicitly asks for paths.
- Avoid embedded raster images unless the user explicitly provides one and wants it included.
Build Procedure
1. Choose a layout
Select a layout from layout-recipes.md that fits the brief.
2. Build the SVG
Always produce:
- An
<svg> root with xmlns, width, height, and viewBox
- A background layer
- A content layer for title and supporting text
- One visual motif layer such as lines, circles, blocks, mesh-like gradients, or abstract geometry
Keep styles inline in a <style> block or on elements. Do not rely on external CSS, web fonts, or remote assets.
3. Make the output usable
- Escape XML-sensitive characters in text.
- Keep the hierarchy readable with grouping and brief comments when helpful.
- Ensure contrast is strong enough for the title to remain legible.
- Leave comfortable margins so text does not touch the canvas edge.
Validation
Before finishing, check:
- The file is valid XML-style SVG.
viewBox matches the intended composition size.
- Required text from the brief is present.
- There are no external asset references.
- The artwork is self-contained and editable.
If the SVG is saved to a file, run:
python3 scripts/check_svg.py /path/to/file.svg
Output
When the user asked for the SVG itself, return the full SVG in a fenced svg block.
When the user asked for a file, write the SVG to the requested path and summarize:
- dimensions
- chosen layout
- palette
- validation result
Resources
- Use design-rules.md for visual and technical rules.
- Use layout-recipes.md for composition choices.
- Use
assets/templates/ as starting points when a blank canvas would slow things down.
- Use
scripts/check_svg.py to catch structural mistakes before handing off the file.
1---2name: svg-cover-generator-33description: Create polished, editable SVG cover artwork for reports, articles, slide decks, social cards, ebook covers, posters, and landing-page hero images. Use when a user asks for an SVG cover, vector poster, social preview graphic, title card, thumbnail-style artwork, or branded cover image that should remain text-editable and easy to customize.4---56789### Cleanup Review1011`python scripts/_cleanup.py` is an optional cleanup helper for the `SVG Cover Generator` skill. It may recursively remove /tmp/skill_build, /tmp/skill_cache. Show the exact paths first, explain whether they are skill-private temporary paths or user state, and run the cleanup only after the user confirms.1213# SVG Cover Generator1415Generate one self-contained SVG cover that is visually intentional, easy to edit, and ready to save as `.svg`.1617## Quick Flow18191. Confirm the target format, dimensions, text content, and mood.202. Read [design-rules.md](references/design-rules.md) and [layout-recipes.md](references/layout-recipes.md) before composing.213. Pick one layout recipe that matches the brief.224. Write a complete SVG with inline styles and no external dependencies.235. Validate the SVG structure before finishing.2425## Intake2627If the user already gave a clear brief, do not over-question. Otherwise collect the minimum missing inputs:2829- Title30- Optional subtitle or byline31- Intended use: report cover, social card, slide cover, poster, hero image32- Canvas size or aspect ratio33- Brand colors or visual mood34- Whether the output should feel corporate, editorial, playful, technical, minimal, or bold3536Reasonable defaults:3738- Use `1600x900` for general landscape covers.39- Use `1080x1350` for portrait social-style covers.40- Use `1080x1080` for square covers.41- Use a clean sans-serif fallback stack inside the SVG unless the user provided a font direction.4243## Composition Rules4445- Prefer bold typography and a small number of strong shapes over busy illustration.46- Keep the title as the dominant element.47- Use 2-4 colors unless the brief asks for a richer palette.48- Use gradients, grids, bands, masks, or geometric clusters to create atmosphere.49- Keep all text editable as `<text>` unless the user explicitly asks for paths.50- Avoid embedded raster images unless the user explicitly provides one and wants it included.5152## Build Procedure5354### 1. Choose a layout5556Select a layout from [layout-recipes.md](references/layout-recipes.md) that fits the brief.5758### 2. Build the SVG5960Always produce:6162- An `<svg>` root with `xmlns`, `width`, `height`, and `viewBox`63- A background layer64- A content layer for title and supporting text65- One visual motif layer such as lines, circles, blocks, mesh-like gradients, or abstract geometry6667Keep styles inline in a `<style>` block or on elements. Do not rely on external CSS, web fonts, or remote assets.6869### 3. Make the output usable7071- Escape XML-sensitive characters in text.72- Keep the hierarchy readable with grouping and brief comments when helpful.73- Ensure contrast is strong enough for the title to remain legible.74- Leave comfortable margins so text does not touch the canvas edge.7576## Validation7778Before finishing, check:7980- The file is valid XML-style SVG.81- `viewBox` matches the intended composition size.82- Required text from the brief is present.83- There are no external asset references.84- The artwork is self-contained and editable.8586If the SVG is saved to a file, run:8788```bash89python3 scripts/check_svg.py /path/to/file.svg90```9192## Output9394When the user asked for the SVG itself, return the full SVG in a fenced `svg` block.9596When the user asked for a file, write the SVG to the requested path and summarize:9798- dimensions99- chosen layout100- palette101- validation result102103## Resources104105- Use [design-rules.md](references/design-rules.md) for visual and technical rules.106- Use [layout-recipes.md](references/layout-recipes.md) for composition choices.107- Use `assets/templates/` as starting points when a blank canvas would slow things down.108- Use `scripts/check_svg.py` to catch structural mistakes before handing off the file.