Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ManceRayder42/jarvis-os --skill media-gengit clone --depth 1 https://github.com/ManceRayder42/jarvis-osWrote 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/mancerayder42/jarvis-os/media-gen)<a href="https://agentmods.dev/skills/mancerayder42/jarvis-os/media-gen"><img src="https://agentmods.dev/badge/skills/mancerayder42/jarvis-os/media-gen/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/mancerayder42/jarvis-os/media-gen"><img src="https://agentmods.dev/badge/skills/mancerayder42/jarvis-os/media-gen.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00216 | $0.02206 |
| Opus 5 | $0.00108 | $0.01103 |
| Sonnet 5 | $0.00043 | $0.00441 |
| Haiku 4.5 | $0.00022 | $0.00221 |
Grade A, and why
media-gen 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 11d 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.
curl -s -X POST "https://fal.run/<model-slug>" \ How it starts
The opening of the file, as written. The whole thing — 153 lines — stays where its author put it; the contents beside it link to each section on GitHub.
media-gen — fal.ai cost-router
One fal.ai key covers every current image/video model, pay-per-use — no subscription, no monthly minimum. You prepay credit on fal.ai's dashboard and each request draws down from it: spend is real money — be surgical.
Auth
Read the key from the environment first; fall back to the hub's .env (the
/jarvis-setup page's Media section writes it there). The hub itself
resolves the same way the SessionStart hook does: JARVIS_HUB env var first,
else the pointer file at ~/.jarvis-hub-path written by /jarvis-setup,
else ~/jarvis-hub. Never hardcode a path to it and never echo/print/log the
value:
hub="${JARVIS_HUB:-$(cat ~/.jarvis-hub-path 2>/dev/null)}"
hub="${hub:-$HOME/jarvis-hub}"
FAL_KEY="${FAL_KEY:-$(grep '^FAL_KEY=' "$hub/.env" 2>/dev/null | cut -d= -f2-)}"
If FAL_KEY is still empty after that, stop and tell the user to add it via
/jarvis-setup — do not hunt for it elsewhere. Every request:
header Authorization: Key $FAL_KEY.
Cost discipline (the point of this skill)
- Images are cheap (fractions of a cent). Iterate freely.
- Video bills per second. Default 3–5s, never more without an explicit ask. 5s vs 10s = real dollars. State the model + estimated cost BEFORE a video run and get the user's go-ahead unless they already gave one this session.
- Cheapest-fit routing: draft/test → FLUX schnell; final image → FLUX dev or nano-banana Pro; image→video → Kling (best value) before Seedance (pricier); upscale → Topaz only when the target actually needs it.
- No balance API — track spend at https://fal.ai/dashboard (billing page).
Model routing
Models rotate fast; slugs below verified 2026-07-14. When one 404s or a newer generation is out, search https://fal.ai/models?q= (WebFetch) — new models work with the same key + call shape, no skill change.
| Need | Model slug | Notes |
|---|---|---|
| Draft/test image | fal-ai/flux/schnell |
~free, 1-4 steps |
| Final image | fal-ai/flux/dev |
quality tier |
| Photoreal/edit image | fal-ai/nano-banana-pro |
Gemini-family |
| Image → video | fal-ai/kling-video/v3/standard/image-to-video |
best cheap; try v-latest |
| Image → video (premium) | fal-ai/bytedance/seedance (latest pro) |
pricier, smoother camera |
| Two frames → video (interpolate) | fal-ai/wan-flf2v (start_image_url/end_image_url) |
cheapest FLF2V, fal-ai/kling-video/o1/standard/image-to-video (end_image_url optional). Premium fal-ai/veo3.1/first-last-frame-to-video (first_frame_url/last_frame_url, generate_audio defaults true — turn it off) |
| Upscale image | fal-ai/topaz/upscale |
only on real need |
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.
- 11d ago First seen · 153 lines · 216 tokens per session scan A d336677acb51
media-gen is a skill published in the GitHub repository ManceRayder42/jarvis-os (5 stars, last pushed 6d ago), licensed MIT. It adds 216 tokens to every session and 2,206 once invoked, about $0.0011 per session on Opus 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-31.
Other skills, from other repositories
repurpose-talk
Use when the user just gave a talk, panel, fireside chat, keynote, workshop, podcast, or webinar and wants content made from it — triggers like "I just gave a talk", "the panel is done", "just finished speaking", "turn my talk into LinkedIn posts", "repurpose this recording/transcript into posts, notes, or clips", or…
dream
Deep creative exploration engine. Competing perspectives, stress-tested by a 4-persona council, scored by integrity. The approach that survives attack wins — not the one that sounds best.
cinematic-hero
The house style for CINEMATIC MOTION + STILLS — best-in-the-world animated hero GIFs/MP4s and cinematic stills (deck covers, social cards, launch visuals), in one signature look. Triggers on requests for a "hero GIF/video", "cinematic" anything, "animated logo/wordmark", "launch/hero/demo asset", "motion graphic"…
canvas-design
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.
confidence-gate
When you're about to claim success ("fixed", "done", "works", "passing tests") at the end of a turn, verify the claim is backed by actual evidence in this session. presence's Stop hook will flag a success claim that has no recent test/build pass behind it. Be aware of this gate and either run the verification, or…
artifacts-builder
Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.