mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-13 14:02:16 +00:00
* refactor(skills): clean up bundled skill set + add environments: relevance gate Bundled skills cleanup pass plus a new offer-time relevance gate. Removals (redundant / dead): - spotify (covered by the spotify plugin's 7 native tools) - linear (covered by `hermes mcp install linear`) - kanban-codex-lane, debugging-hermes-tui-commands - empty category markers: diagramming, gifs, inference-sh, mlops/training, mlops/vector-databases - domain (stale orphan dup of optional/research/domain-intel) Bundled -> optional: - baoyu-article-illustrator, baoyu-comic, creative-ideation, pixel-art - dspy, subagent-driven-development - minecraft-modpack-server, pokemon-player - hermes-s6-container-supervision (-> optional/devops) Consolidation: - webhook-subscriptions + native-mcp folded into the hermes-agent skill as references/webhooks.md + references/native-mcp.md with SKILL.md pointers - writing-plans merged into plan (v2.0.0); related_skills + prose refs updated New: environments: frontmatter gate (agent/skill_utils.skill_matches_environment) - Offer-time relevance filter (kanban / docker / s6), parallel to platforms:. - Wired into the 3 OFFER surfaces only (prompt_builder skills index, skills_tool.list_skills, skill_commands slash discovery). - Explicit loads (skill_view, --skills preload) intentionally BYPASS it, so load-bearing force-loads like the kanban dispatcher's `--skills kanban-worker` always resolve. Verified via E2E. - kanban-orchestrator/kanban-worker tagged environments: [kanban]; hermes-s6-container-supervision tagged environments: [s6] + platforms: [linux]. Validation: 8/8 E2E gating assertions (incl force-load invariant); 442 targeted tests green (agent, skills_tool, skill_commands, kanban worker). * docs: regenerate skill catalogs + pages for the bundled cleanup Regenerated per-skill doc pages, catalogs, and sidebar to match the skill moves/removals in the parent commit. Moved skills' pages relocate bundled -> optional (history preserved); removed skills' pages deleted; edited skills' pages refreshed (hermes-agent now embeds the webhook + native-mcp reference pointers). zh-Hans i18n mirror: stale bundled pages and catalog rows for moved/removed skills pruned (new optional translations land via the translation pipeline). * test: drop regression test for removed kanban-codex-lane skill The kanban-codex-lane skill was removed in the bundled-skills cleanup; its dedicated regression test read the now-deleted SKILL.md and failed with FileNotFoundError on CI shard 6.
54 lines
2.2 KiB
Markdown
54 lines
2.2 KiB
Markdown
# Attribution
|
|
|
|
This skill bundles code ported from a third-party MIT-licensed project.
|
|
All reuse is credited here.
|
|
|
|
## pixel-art-studio (Synero)
|
|
|
|
- Source: https://github.com/Synero/pixel-art-studio
|
|
- License: MIT
|
|
- Copyright: © Synero, MIT-licensed contributors
|
|
|
|
### What was ported
|
|
|
|
**`scripts/palettes.py`** — the `PALETTES` dict containing 23 named RGB
|
|
palettes (hardware and artistic). Values are reproduced verbatim from
|
|
`scripts/pixelart.py` of pixel-art-studio.
|
|
|
|
**`scripts/pixel_art_video.py`** — the 12 procedural animation init/draw pairs
|
|
(`stars`, `fireflies`, `leaves`, `dust_motes`, `sparkles`, `rain`,
|
|
`lightning`, `bubbles`, `embers`, `snowflakes`, `neon_pulse`, `heat_shimmer`)
|
|
and the `SCENES` → layer mapping. Ported from `scripts/pixelart_video.py`
|
|
with minor refactors:
|
|
- Names prefixed with `_` for private helpers (`_px`, `_pixel_cross`)
|
|
- `SCENE_ANIMATIONS` renamed to `SCENES` and restructured to hold layer
|
|
names (strings) instead of function-name strings resolved via `globals()`
|
|
- `generate_video()` split: the Pollinations text-to-image call was removed
|
|
(Hermes uses its own `image_generate` + `pixel_art()` pipeline for base
|
|
frames). Only the overlay + ffmpeg encoding remains.
|
|
- Frame directory is now a `tempfile.TemporaryDirectory` instead of
|
|
hand-managed cleanup.
|
|
- `ffmpeg` invocation switched from `os.system` to `subprocess.run(check=True)`
|
|
for safety.
|
|
|
|
### What was NOT ported
|
|
|
|
- Wu's Color Quantization (PIL's built-in `quantize` suffices)
|
|
- Sobel edge-aware downsampling (requires scipy; not worth the dep)
|
|
- Bayer / Atkinson dither (would need numpy reimplementation; kept scope tight)
|
|
- Pollinations text-to-image generation (`pixelart_image.py`,
|
|
`generate_base()` in `pixelart_video.py`) — Hermes has `image_generate`
|
|
|
|
### License compatibility
|
|
|
|
pixel-art-studio ships under the MIT License, which permits redistribution
|
|
with attribution. This skill preserves the original copyright notice here
|
|
and in the SKILL.md credits block. No code was relicensed.
|
|
|
|
---
|
|
|
|
## pixel-art skill itself
|
|
|
|
- License: MIT (inherits from hermes-agent repo)
|
|
- Original author of the skill shell: dodo-reach
|
|
- Expansion with palettes + video: Hermes Agent contributors
|