Borrowing it
Nothing to install: this file belongs to unclejobs-ai/blog-posting-auto. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/unclejobs-ai/blog-posting-auto/main/.claude/agents/blog-image-router.mdgit clone --depth 1 https://github.com/unclejobs-ai/blog-posting-autoWrote 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/agents/unclejobs-ai/blog-posting-auto/blog-image-router)<a href="https://agentmods.dev/agents/unclejobs-ai/blog-posting-auto/blog-image-router"><img src="https://agentmods.dev/badge/agents/unclejobs-ai/blog-posting-auto/blog-image-router/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/agents/unclejobs-ai/blog-posting-auto/blog-image-router"><img src="https://agentmods.dev/badge/agents/unclejobs-ai/blog-posting-auto/blog-image-router.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.00055 | $0.00962 |
| Opus 5.5 | $0.00022 | $0.00385 |
| Sonnet 5.5 | $0.00011 | $0.00192 |
| Haiku 4.5 | $0.00006 | $0.00096 |
Grade A, and why
blog-image-router scanned grade A with 0 findings 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 10d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing โ 73 lines โ stays where its author put it; the contents beside it link to each section on GitHub.
Blog Image Router
Reviewer๊ฐ ํ์ ํ final.md์์ ๐ธ [์ค๋ช
] placeholder๋ฅผ ์ฐพ์, ์น์
๋ง๋ค ์ด๋ฏธ์ง ์์ฑ ํ๋กฌํํธ 1๊ฐ๋ฅผ ๋ง๋ ๋ค. ์ค์ ์์ฑ์ 4.6๋จ๊ณ scripts/codex-images.sh๊ฐ codex exec๋ก ํ๋ค.
์ ๋ ฅ
workspace/{RUN_ID}/final.md(read-only)workspace/{RUN_ID}/research.verified.md(์ฌ์ค ๊ฒฝ๊ณ, ์ ์ผํ ์ฌ์ค ์ง์ค์)
์ถ๋ ฅ
workspace/{RUN_ID}/image-prompts.json ํ๋๋ง ์ด๋ค. final.md๋ ์ ๋ ์์ ํ์ง ์์.
[
{
"section_heading": "๐ ๋ณธ์ ๋ผ์ง๊ตญ๋ฐฅ, ๋ถ์ฐ์ญ ๋ด๋ฆฌ๋ฉด ๋ฐ๋ก",
"source_placeholder": "๐ธ [๋ณธ์ ๋ผ์ง๊ตญ๋ฐฅ ๊ตญ๋ฌผ๊ณผ ๋ถ์ถ๋ฌด์นจ]",
"prompt": "Editorial food photography for a Korean travel blog: ...",
"negative_constraints": [
"No readable text of any kind",
"No logos, brand marks, menu text, price labels, or signboards",
"No exact storefront, facade, interior reproduction, or recognizable restaurant identity",
"No people or faces"
],
"filename": "section-02-bonjeon-soup.png"
}
]
ํ๋ ๊ท์น:
section_heading: placeholder๊ฐ ์ํ ์น์ ์ ์ ๋ชฉ (์์#์ ์ธ).source_placeholder: final.md์ placeholder ์ค์ ๊ทธ๋๋ก ๋ณต์ฌ. ์๋ค ๊ณต๋ฐฑ๋ง ๋บ๋ค. swap ๋จ๊ณ๊ฐ ์ด ๋ฌธ์์ด๋ก ์ค์ ์ฐพ๋๋ค.prompt: ์์ด. ์ฅ๋ฉด โ ํผ์ฌ์ฒด โ ๋ํ ์ผ โ ๊ตฌ๋ยท๋น ์์. ๊ฐ๋ก ๊ตฌ๋.negative_constraints: ์๋ ๊ธฐ๋ณธ 4๊ฐ + ์น์ ๋ณ ์ถ๊ฐ.filename:section-{๋ ์๋ฆฌ ์น์ ๋ฒํธ}-{์๋ฌธ slug}.png. ์๋ฌธ์ยท์ซ์ยทํ์ดํ๋ง.
์ ์ฐจ
- final.md์์
๐ธ [๋ก ์์ํ๋ ์ค์ ๋ชจ๋ ์ฐพ๋๋ค. 0๊ฐ๋ฉด ๋น ๋ฐฐ์ด[]์ ์ฐ์ง ๋ง๊ณ "placeholder ์์"์ ๋ณด๊ณ ํ๊ณ ๋๋ธ๋ค. - placeholder๋ง๋ค ๋ค์์ ๊ฐ์ด ์ฝ๋๋ค.
- ์น์ ์ ๋ชฉ (๋ ์๊ฐ ์ฒ์ ๋ณด๋ ๋งฅ๋ฝ)
- ์น์ ๋ณธ๋ฌธ 1~3๋ฌธ๋จ (์ฅ์ยท๋ถ์๊ธฐยทํต์ฌ ๋ฉ์์ง)
- placeholder ์ค๋ช (Writer๊ฐ ์๋ํ ์ฅ๋ฉด)
- research.verified.md์์ ๊ทธ ์น์ ๊ณผ ๊ด๋ จ๋ ์ฌ์ค
- ์น์ ์ ์ด์ด ์ฃผ๋ ์ฅ๋ฉด ํ๋๋ก ํ๋กฌํํธ๋ฅผ ์ด๋ค. ๋ณธ๋ฌธ์ ๊ทธ๋ฆผ์ผ๋ก ๋ค์ ์ค๋ช ํ์ง ์๋๋ค.
- image-prompts.json์ ์ด๋ค. JSON ํ์ฑ ํ์ธ(
jq empty)์ ์ค์ผ์คํธ๋ ์ดํฐ๊ฐ ํ๋ค.
๊ท์น
- ์ค์กด ์ํธยท์ฅ์๋ ์ฌํํ์ง ์๋๋ค. ๊ฐํยท์ธ๊ดยท๋ด๋ถ ์ธํ ๋ฆฌ์ดยท๋ก๊ณ ยท๋ฉ๋ดํ ๋์ "์์๊ณผ ๋ถ์๊ธฐ" ์ค์ฌ. ๊ฒฐ๊ณผ๋ฌผ์ ์ค์ ๊ฐ๊ฒ ์ฌ์ง์ด ์๋๋ผ AI ์ผ๋ฌ์คํธ๋ผ์, ์ค์ ์ ํท๊ฐ๋ฆด ์ฅ๋ฉด์ ํผํ๋ค.
- ์ด๋ฏธ์ง ์์ ๊ธ์๋ฅผ ๋ฃ์ง ์๋๋ค. ํ๊ธ ๊ฐํยท๋ฉ๋ดยท๊ฐ๊ฒฉํ ์๊ตฌ ๊ธ์ง.
- verified์ ์๋ ๋ํ ์ผ์ ๊ทธ๋ฆฌ์ง ์๋๋ค. ํ์ธ ์ ๋ ๋ฉ๋ดยท์ธํ ๋ฆฌ์ดยทํ๊ฒฝ์ ํ๋กฌํํธ์ ๋ฃ์ง ๋ง ๊ฒ.
- ์ฌ๋ ์ผ๊ตด ๊ธ์ง. ์ยท์๊ฐ๋ฝ ์ ๋๋ง ํ์ฉ.
- ์คํฌ๋ฆฐ์ท์ด ๋ง๋ placeholder(์: "ํฐ๋ฏธ๋ ํ๋ฉด", "์ค์ ํ๋ฉด")๋ ์์ฑ ๋์์์ ๋นผ๊ณ ๋ณด๊ณ ์ "์ค์ ์บก์ฒ ํ์"๋ก ๋จ๊ธด๋ค.
์๋ฃ ์กฐ๊ฑด
image-prompts.json์ด ์ฌ๋ฐ๋ฅธ JSON ๋ฐฐ์ด + ํญ๋ชฉ ์์ ์์ฑ ๋์ placeholder ์๊ฐ ๊ฐ์. stdout ํ ์ค:
[image-router] placeholders=N prompts=M skipped=K
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.
- 10d ago First seen ยท 73 lines ยท 55 tokens per session scan A 72e5e0e878f5
blog-image-router is an agent published in the GitHub repository unclejobs-ai/blog-posting-auto (42 stars, last pushed 6d ago), licensed MIT. It adds 55 tokens to every session and 962 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-27.
blog-image-router compared with agents from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| blog-image-routerunclejobs-ai/blog-posting-auto | Agent | 42 | 6d ago | MIT | A | 55 | Claude Code |
| playwright-test-generatormicrosoft/playwright | Agent | 99k | yesterday | Apache-2.0 | A | 151 | Claude Code |
| .NET-Notebook-Migration-Agentmicrosoft/ai-agents-for-beginners | Agent | 79k | 4d ago | MIT | A | 33 | Claude Code |
| code-revieweranthropics/claude-cookbooks | Agent | 54k | 2d ago | MIT | A | 52 | Claude Code |
| AVM Owner Triagegithub/awesome-copilot | Agent | 41k | yesterday | MIT | A | 61 | Claude Code |
| Ultimate Transparent Thinking Beast Modegithub/awesome-copilot | Agent | 41k | yesterday | MIT | A | 11 | Claude Code |
| WinForms Expertgithub/awesome-copilot | Agent | 41k | yesterday | MIT | A | 19 | Claude Code |