Agent skill

Content Model

by guardana in guardana/guardana

Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule…

Apache-2.0Auto-check passedDevelopment

Install Content Model

skills CLI
$ npx skills add guardana/guardana --skill content-model -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install guardana/guardana content-model --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/guardana/guardana.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/content-model .claude/skills/content-model && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
content-model
GitHub stars
129
Token cost
~1.2k tokens
SKILL.md length
649 words
Files
1
Skills in repo
16
Repo updated
First seen
Licence
Apache-2.0

At a glance

Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule…

  • Works in 6 steps: Prompt file (scratchpad or cache/text/):… → Inputs as files (--input): the page or… → Schema whenever code or a checklist… → …
  • A task would produce
  • SKILL.md covers The door, Cost discipline and A job that works
  • Calls uv, gemini and codex

What it does

Content Model is an agent skill from guardana/guardana. Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule, release-note phrasing, and any verdict about such text (which sentences are stale, which draft reads better, is this page clear). Use whenever a task would produce or judge prose a reader of this project sees.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Changelog and release notes, Copywriting and Plain language and style rules. The repository describes itself as: Open-source AI security verification for model artifacts, live endpoints, MCP servers, and recorded agent traces. Reproducible evidence for release decisions. The licence is Apache-2.0.

When your agent uses it

  • A task would produce
  • Judge prose a reader of this project sees

Example prompts

  • “/content-model”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Prompt file (scratchpad or cache/text/): who reads this project's pages (an engineer
  2. Inputs as files (--input): the page or prompts to work on, the neighbouring pages it
  3. Schema whenever code or a checklist consumes the answer. Closed objects only
  4. Validate mechanically: parses, one answer per input id, every code span / path / count /
  5. A rewrite of an existing page is compared with git show main: before it is wired
  6. Wire it in through the gates: a docs page through test_docs_consistency.py and

What it can do on your machine

Read from SKILL.md and the folder at commit ae7ee8b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv
    • gemini
    • codex
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv and git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Content Model loads about 1.2k tokens when it runs. Until then it costs about 105 tokens; SKILL.md has 649 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~105
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from guardana/guardana at commit ae7ee8b, republished under its Apache-2.0 licence (© guardana). 649 words, ~1,201 tokens.

Download SKILL.mdSave it as .claude/skills/content-model/SKILL.md (or your agent's skills folder).
name
content-model
description
Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule, release-note phrasing, and any verdict about such text (which sentences are stale, which draft reads better, is this page clear). Use whenever a task would produce or judge prose a reader of this project sees.
argument-hint
[task]

Wording goes to the text models

Task: $ARGUMENTS

Rule. Claude is the engineer here. Technical documentation that restates the code — a flag, an exit code, a schema field, a command's behaviour — is written here, from the code. Prose whose value is in the wording — how the landing page sells, whether a page is clear, the phrasing of a release note, the text of an attack or judge prompt inside a rule — and every verdict ABOUT such prose comes from GPT or Gemini. Claude prepares the job, checks the SHAPE of the answer and wires it in through the normal gates.

The door

bash
uv run python scripts/text_model.py --detect          # {"gpt": path|null, "gemini": path|null}
uv run python scripts/text_model.py --prompt P.md --input page.md --out out.json \
    --schema S.json --engine gpt|gemini|both|auto --effort low|medium|high
  • gpt → codex exec, read-only sandbox, empty working dir, the user's configured GPT model (TEXT_MODEL_GPT overrides). gemini → agy --print, Gemini Pro (TEXT_MODEL_GEMINI overrides; non-Gemini ids are refused). auto = GPT if installed, else Gemini.
  • both writes out.gpt.json and out.gemini.json. Use it for any verdict that would CUT, REJECT or REWRITE something: only what both families asked for stands; disagreements are reported with both reasons.
  • Neither CLI installed (exit 3): stop and say so. Do not fall back to writing it yourself. Leave the sentence as it is and report the gap.

Cost discipline

Each call boots a whole agent session on the other side — several thousand tokens of overhead before your prompt, on the user's GPT/Gemini subscription. So: one call per BATCH (10–30 pages, sentences or prompts, JSON in / JSON out), never one per item; --effort low for mechanical work, medium by default, high for a judgement about a whole page. Before more than 5 calls, tell the user how many calls and which engine, and wait.

A job that works

  1. Prompt file (scratchpad or cache/text/): who reads this project's pages (an engineer evaluating a security tool, reading on GitHub or guardana.dev), the task, hard rules, the output shape, one or two examples of GOOD output. Rules worth stating every time: every path, flag, command, count, rule id, version and link is copied byte-identical; no new capability claim, no number the input did not contain, no future tense about features; English; short sentences; the answer first.
  2. Inputs as files (--input): the page or prompts to work on, the neighbouring pages it must not repeat, FEATURES.md when the model must know what exists.
  3. Schema whenever code or a checklist consumes the answer. Closed objects only (additionalProperties: false, every property in required).
  4. Validate mechanically: parses, one answer per input id, every code span / path / count / link present in the input still present in the output, length caps hold. Re-ask once quoting the failure; then mark the item failed. Taste is not yours to apply — a doubtful sentence goes to the second engine or to the user.
  5. A rewrite of an existing page is compared with git show main:<path> before it is wired in, and with the --input file too when the page was edited before it was sent. List every fact the base states that the rewrite dropped — a flag, an exit code, a default value, a maturity caveat, an item of a list of what a command does. A dropped fact returns in its original sentence, byte-identical, unless the brief removed it on purpose; it is never re-worded here. A code block left without a sentence that introduces it is re-asked once with the block quoted, then marked failed. No base to compare with (a new or renamed page) is stated in the report, never skipped silently. The code-span check in step 4 does not catch any of this: it lives in prose.
  6. Wire it in through the gates: a docs page through test_docs_consistency.py and build_site.py --check; the landing page through sync_site.py --check and test_landing_page.py; a rule's prompts through its positive, negative and inconclusive fixtures (guardana rule test).
Show full SKILL.md (26 more words)Show less

For more than a couple of calls, delegate the whole job to the text-broker agent and keep only its file paths and counts in this context.

© guardana, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/content-model of guardana/guardana.

Open the folder on GitHubat commit ae7ee8b

Compare with similar skills

Content Model next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Content Model compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Content Model this skillguardana/guardana129—~1.2kAutomated safety check: PassApache-2.0
Writing Guidelinesrohitg00/pro-workflow2.9k—~593Automated safety check: PassNone
Technical Writingfrappe/skills146—~1.1kAutomated safety check: PassNone
Simple Englishropensci/ckanr1043 repos~2kAutomated safety check: PassMIT
Shipping Across Surfaceskajisho5/ffmpeg-skill1.9k—~3kAutomated safety check: PassMIT
Technical Writercuriositech/some_claude_skills243—~1.4kAutomated safety check: PassMIT

Similar skills

  • Writing Guidelines

    rohitg00/pro-workflow

    Apply clear-writing standards to any prose the agent produces - READMEs, docs, UI copy, error messages, commit and PR text, release notes.

    2.9k GitHub stars~593 tokensUpdated 9 days ago
    DevelopmentAuto-check passed
  • Technical Writing

    frappe/skills

    Write prose in "Simplified Technical English". An agent skill from frappe/skills.

    146 GitHub stars~1.1k tokensUpdated 8 days ago
    DevelopmentAuto-check passed
  • Simple English

    ropensci/ckanr

    Write or rewrite text in plain, layman-readable English in the spirit of ASD-STE100 Simplified Technical English: short sentences, active voice, simple tenses, one word one meaning, condition before…

    104 GitHub starsUsed in 3 repos~2k tokens
    DevelopmentAuto-check passed
  • Shipping Across Surfaces

    kajisho5/ffmpeg-skill

    Land a change everywhere the same fact is stated — enumerating the full surface inventory (landing copy, docs, machine-readable summaries, changelog badges repeated across every page, sitemap…

    1.9k GitHub stars~3k tokensUpdated 3 days ago
    DevelopmentAuto-check passed
  • Technical Writer

    curiositech/some_claude_skills

    Expert technical documentation specialist for developer docs, API references, and runbooks.

    243 GitHub stars~1.4k tokensUpdated 1 mo ago
    Writing & ContentAuto-check passed
  • Technical Writing

    citypaul/.dotfiles

    Writing developer-facing prose that can be skimmed first and trusted enough to finish — READMEs, guides, tutorials, reference docs, proposals, PR descriptions, release notes.

    739 GitHub stars~2.5k tokensUpdated 6 days ago
    Writing & ContentAuto-check passed

More from guardana/guardana

All 16 skills in this repo
  • Ship

    guardana/guardana

    Commit and push a finished change the way this repo requires — explicit paths, one commit per logical change, no attribution, the five documentation places answered, the site checks before a push (a…

    129 GitHub stars~836 tokensUpdated yesterday
    Auto-check: notes
  • Add A Rule

    guardana/guardana

    Add security coverage to Guardana the way this repository requires — as a rule, evaluator or target, never by patching the engine — with the fixtures, the framework mapping and the documentation…

    129 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Auto

    guardana/guardana

    Autonomous, non-interactive run of the whole lifecycle for one development task — size, plan, build, gate, review, fix, commit — without stopping for questions.

    129 GitHub stars~792 tokensUpdated yesterday
    Auto-check passed
  • Docs

    guardana/guardana

    Documentation work in this repo — the five places a user-visible change must answer, the page conventions the site build enforces, the tests that pin prose to the registry, and a simplification pass…

    129 GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • False Green Audit

    guardana/guardana

    Hunt for the failure this project exists to prevent — code that compiles, types, tests green, and quietly reports "all clear" about something it never examined.

    129 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Gate

    guardana/guardana

    Run this project's verification — the full local CI mirror (ruff, mypy, import contract, pytest with PostgreSQL, coverage floors, dogfood, generated docs and site, the isolated example suites, the…

    129 GitHub stars~776 tokensUpdated yesterday
    Auto-check passed

Questions about Content Model

What does Content Model do?

Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule…. Content Model is an agent skill from guardana/guardana. Route wording work to GPT (codex CLI) or Gemini (agy CLI) instead of writing it with Claude — landing-page copy, a readability rewrite of a README or docs page, attack and judge prompts for a rule, release-note phrasing, and any verdict about such text (which sentences are stale, which draft reads better, is this page clear).

When should I use Content Model?

Content Model fits situations like: A task would produce; judge prose a reader of this project sees.

How do I install Content Model in Claude Code?

Run `npx skills add guardana/guardana --skill content-model -a claude-code`. Or copy the skill folder (.claude/skills/content-model in guardana/guardana) into .claude/skills/content-model in your project. Claude Code loads it when a task matches its description.

How do I install Content Model in Codex?

Run `npx skills add guardana/guardana --skill content-model -a codex`. Or copy the skill folder (.claude/skills/content-model in guardana/guardana) into .agents/skills/content-model in your project. Codex loads it when a task matches its description.

Can I use Content Model in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add guardana/guardana --skill content-model -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/content-model, .gemini/skills/content-model, .github/skills/content-model and .opencode/skills/content-model in your project.

What does Content Model need to run?

Going by SKILL.md and its folder, Content Model needs the command-line tools its instructions call (uv, gemini, codex and git). Our summary lists: Python 3.

Does Content Model access the network?

SKILL.md contains no URLs. Its commands use uv and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Content Model safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Content Model use?

Content Model is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Content Model use?

About 1.2k tokens (SKILL.md is roughly 4.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Content Model?

Skills that share tags, products or a category with Content Model: Writing Guidelines (rohitg00/pro-workflow, 2.9k stars), Technical Writing (frappe/skills, 146 stars), Simple English (ropensci/ckanr, 104 stars) and Shipping Across Surfaces (kajisho5/ffmpeg-skill, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Content Model?

guardana (a GitHub organization) maintains it in guardana/guardana, which has 129 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 7, 2026.

Source: guardana/guardana on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.