Borrowing it
Nothing to install: this file belongs to alfadur7/llm-wiki-newsroom. 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/alfadur7/llm-wiki-newsroom/main/.claude/skills/journalism-writing/SKILL.mdgit clone --depth 1 https://github.com/alfadur7/llm-wiki-newsroomWrote 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/alfadur7/llm-wiki-newsroom/journalism-writing)<a href="https://agentmods.dev/skills/alfadur7/llm-wiki-newsroom/journalism-writing"><img src="https://agentmods.dev/badge/skills/alfadur7/llm-wiki-newsroom/journalism-writing/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/alfadur7/llm-wiki-newsroom/journalism-writing"><img src="https://agentmods.dev/badge/skills/alfadur7/llm-wiki-newsroom/journalism-writing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00095 | $0.02054 |
| Opus 5 | $0.00048 | $0.01027 |
| Sonnet 5 | $0.00019 | $0.00411 |
| Haiku 4.5 | $0.00010 | $0.00205 |
Grade A, and why
journalism-writing 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 12d 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 — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
journalism-writing
Writing craft drawn from news/explanatory journalism and argumentation traditions — narrative lead (Lede→Nut graph→Kicker), dialectical structure (thesis·antithesis·synthesis), argument quality (Toulmin), and fairness (BBC due impartiality). criteria.json is the SoT for each criterion's definition, comparator, and source. The shared parsing and wiki-global state that the deterministic checks (judge=A) rely on are injected by the orchestrator (the skill is content-type-agnostic). Examples are illustrative of the target English prose.
Dialectic structure (jrn.thesis-antithesis · jrn.c-section-size · jrn.c-stance-naming · jrn.monitoring-balance)
Develop an issue as Hegelian thesis → antithesis → synthesis. State thesis and antithesis with explicit Position A / Position B bold labels (ko rendering: A 입장 / B 입장); add a C — Mediation label (ko: C 중재) only when a genuine convergence exists. The C paragraph must not run longer than the longer of A and B, so the convergence is not mistaken for the main clash. If C is not a synthesis but a meta-critique (weakening both sides at once, flagging interest bias), move it out of the dialectic frame — a meta-critique in the C slot breaks the three-part structure.
Synthesis does not pick a winner. In Hegel's terms it sublates — cancels and preserves — identifying what each side correctly grasps. Concretely, place each side's monitoring point (what one would observe if that side were right) symmetrically (jrn.monitoring-balance); a monitor skewed to one side hides an editorial verdict under hedged wording (combine with BBC due impartiality). e.g. ✅ "If tighter regulation is right, we would observe reduced consumer harm; if looser regulation is right, increased new entry" (winning conditions symmetric on both sides) / ❌ "Regulation blocks innovation, so abolishing it is right" (one-sided verdict).
Argument quality (jrn.toulmin-claim · jrn.rebuttal · jrn.qualifier)
Check each side's support structure with the Toulmin model (claim · grounds/data · warrant · qualifier · rebuttal · backing).
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 12d ago First seen · 57 lines · 95 tokens per session scan A 8dae0c619494
journalism-writing is a skill published in the GitHub repository alfadur7/llm-wiki-newsroom (85 stars, last pushed yesterday), licensed MIT. It adds 95 tokens to every session and 2,054 once invoked, about $0.0005 per session on Opus 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-08-30.
Other skills, from other repositories
binder-modeling
Binder data modeling — define entity types, fields, relations, constraints, views, and navigation. Use when asked to "create a type", "add a field", "define a schema", "set up relations", "model entities", "create a view", "set up navigation", "render entities as files", or design a binder workspace schema.
binder-app
Build a small HTTP app (dashboard, kanban board, admin panel, custom UI) on top of an existing Binder workspace. Use when asked to "create an app", "build a dashboard", "show records in a chart", "make a kanban/board", "build an admin panel", or "add a UI on top of binder".
binder-import
Import external data into a Binder workspace. Handles CSV, JSON, YAML, Markdown files, and directories of Markdown. Use when asked to "import data", "load records from a file", "ingest documents", "migrate data into binder", or bulk-create records from an external source.
binder-cli
Binder CLI for knowledge graph operations — CRUD, search, schema inspection, transaction import, docs rendering. Use when asked to "query binder", "search records", "create a record", "check the schema", "import transactions", "undo changes", or work with a binder workspace.
capture-task
Capture a new task — create a draft or pending Task record from a rough idea or detailed spec. Use when asked to "add a task", "log a bug", "create a task", or "add to backlog".
refine-backlog
Refine the backlog — screen drafts, remove duplicates, fill in missing details, classify, link, and move to pending.