Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/echoo19/hearthnpx agentmods add skills/echoo19/hearth/hearth-artWrote 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/echoo19/hearth/hearth-art)<a href="https://agentmods.dev/skills/echoo19/hearth/hearth-art"><img src="https://agentmods.dev/badge/skills/echoo19/hearth/hearth-art/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/echoo19/hearth/hearth-art"><img src="https://agentmods.dev/badge/skills/echoo19/hearth/hearth-art.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Data Exfiltration · line 141 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
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.00089 | $0.03366 |
| Opus 5.5 | $0.00036 | $0.01346 |
| Sonnet 5.5 | $0.00018 | $0.00673 |
| Haiku 4.5 | $0.00009 | $0.00337 |
Grade A, and why
hearth-art scanned grade A with 1 finding 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 1mo 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
# 1. Fetch (plain shell — curl/wget; respect the site's terms). How it starts
The opening of the file, as written. The whole thing — 212 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Art and sound in Hearth
This skill covers making the game look and sound real — sourcing, importing,
and using assets correctly. Where tiles get painted (tilemaps, autotile
binding) is the hearth-build skill; layered-sound design and juice are
hearth-feel; the operating loop (snapshot → change → validate → playtest) is
the core hearth skill.
Assets: import, slice, animate, sound
hearth import asset ./art/walk-sheet.png --name walk-sheet --json
hearth import asset ./art/tileset/ --recursive --json # atomic batch; check data.skipped
hearth create asset sprite hero --shape rectangle --color "#f4a460" --width 24 --height 24
hearth create asset slice walk-sheet --frame-size 16x16 --prefix walk --json
hearth create asset anim-from-sheet walk-cycle --sheet walk-sheet --frames walk_0,walk_1,walk_2,walk_3 --duration 0.12 --json
hearth create animation blink --frames sprite-a sprite-b --frame-duration 0.4 # multi-file flipbook
hearth create sound pickup --preset coin # presets: coin jump hit laser powerup explosion blip
Procedural sprites/sounds make a game playable and audible before real art
exists. Fonts: import a .ttf/.otf/.woff and reference it from Text.fontFamily
by the asset's name verbatim. Music is a separate channel — set
AudioSource.music:true, autoplay:true for a soundtrack that survives scene
switches. Full pipeline: docs/assets.md.
Never stretch pixel art — tile or slice it
A SpriteRenderer fills its width×height box one of three ways, set by
renderMode (default stretch):
stretch— scales one texture to the box. Only correct when the box keeps the texture's own aspect ratio at a whole-number scale (e.g. an 18×18 tile at 18×18, 36×36, 54×54). Any other size distorts the art — a smear.tile— repeats the texture at its native pixel size to fill the box. This is how a wide platform/floor/wall built from one small tile should render: connected tiles, no smear.hearth set "Level 1" Ground SpriteRenderer.renderMode tile.sliced— 9-slice:sliceinsets ({top,right,bottom,left}px) keep the corners un-stretched while edges/center scale. For panels, bars, and platforms with distinct end-caps.
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.
- 1mo ago First seen · 212 lines · 89 tokens per session scan A d2d2a9855f22
hearth-art is a skill published in the GitHub repository echoo19/hearth (49 stars, last pushed 18d ago), licensed MIT. It adds 89 tokens to every session and 3,366 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
self-evolve
Capture reusable patterns from a finished project and lift them into framework-level priors (contracts, modules, skeletons) that future projects inherit. Run only when the user explicitly requests self-evolution; the orchestrator executes the workflow.
artist-self-evolve
Distill stable art-generation patterns from a completed project, so future projects produce comparable assets without re-discovering the prompts. Lead-dispatched only — orchestrator invokes this skill from its self-evolve flow with a game-slug message; do not self-trigger.
vibegame-build
Run VibeGame's standard end-to-end game development workflow with reviewer gates. Use when the user wants to create a game from zero or evolve an existing game across multiple stages.
vibegame-start
Resume a VibeGame orchestrator session after vibegame start. Use at the beginning of a Claude or Codex session to inspect team runtime state, repair missing persistent members, load goal and GDD context, inspect tasks, and ask the user what to do next.
vibegame-edit
Iterate broadly on an existing game, on top of vibegame-build. Use when the user asks to change an existing game's art style, genre, or core rules. Not for local tuning such as numbers or game feel. Orchestrator only.
design-npc
Use when the user wants to design an enemy, NPC, boss, companion, civilian, or wave-spawned mob's behavior. Walks perception, personality knobs, intent layer, action state machine, telegraphs, defeat handling, and group emergence — outputs a state-machine GDScript stub plus the recommended node tree. Trigger on…