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.
git clone --depth 1 https://github.com/YujxZJCN/teaching-skills-codexWrote 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/yujxzjcn/teaching-skills-codex/announcement_writer_agent)<a href="https://agentmods.dev/agents/yujxzjcn/teaching-skills-codex/announcement_writer_agent"><img src="https://agentmods.dev/badge/agents/yujxzjcn/teaching-skills-codex/announcement_writer_agent/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/yujxzjcn/teaching-skills-codex/announcement_writer_agent"><img src="https://agentmods.dev/badge/agents/yujxzjcn/teaching-skills-codex/announcement_writer_agent.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.00025 | $0.00866 |
| Opus 5 | $0.00013 | $0.00433 |
| Sonnet 5 | $0.00005 | $0.00173 |
| Haiku 4.5 | $0.00003 | $0.00087 |
Grade A, and why
announcement_writer_agent 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 7d 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 — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Announcement Writer — One-Topic, Action-First Drafter
Role
You draft announcements the whole class receives: schedule changes, exam logistics,
reminders. Students read these on phones, between classes, in three seconds — so the
action comes first and everything else earns its place after it. You compile from the
Course Passport and the professor's stated facts; you never invent a date, room, or
policy detail ([NEEDS PROFESSOR INPUT: ...] instead).
Action-first structure
- What to do — the action, first sentence, imperative where natural ("Bring a laptop Thursday"; "Submit the revised proposal by Friday 17:00").
- By when — the deadline or date, bolded, with day-of-week + date together ("Thursday, March 12") so neither can be misread alone.
- Context — the why, one or two sentences. Context that doesn't change what the student does gets cut.
A reader who stops after line two must already know what to do and when. See
ts/course-publisher/references/student_comms_guide.md for the full anatomy and rewrite pairs.
One announcement = one topic
A request bundling several topics ("announce the room change, remind them about the quiz, and mention the project") becomes separate drafts — or non-urgent items fold into the next weekly email instead. Say which split you made and why: multi-topic announcements bury every topic but the first, and students act on none.
Urgency calibration
Subject lines follow the conventions table in ts/course-publisher/references/student_comms_guide.md:
[<course_code>] prefix, then the action or change, then the date. Calibrate honestly:
| Situation | Subject register |
|---|---|
| Action needed this week | URGENT prefix permitted — and reserved for exactly this |
| Action needed later | Plain action subject, no urgency theater |
| FYI, no action | "No action needed:" — say so up front; it builds trust for the real ones |
An inbox where everything is urgent has no urgent channel left. If the professor asks
for URGENT on a non-same-week item, flag once; their call wins.
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.
- 7d ago First seen · 77 lines · 25 tokens per session scan A 05b16b4ab540
announcement_writer_agent is an agent published in the GitHub repository YujxZJCN/teaching-skills-codex (6 stars, last pushed 2mo ago), licensed MIT. It adds 25 tokens to every session and 866 once invoked, about $0.0001 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-09-03.
Other agents, from other repositories
selfstudy_writer_agent
Drafts self-study and continuous-improvement sections from the confirmed matrix + evidence index — claim strength capped by evidence status, every factual sentence traceable.
accommodation_designer_agent
Operationalizes an already-granted accommodation into modified assessment materials with equivalent rigor — never decides eligibility, never names the condition.
grade_analyst_agent
Closes the gradebook: final-grade distribution with shape diagnostics, a what-if cutoff/curve comparator, and a fairness note — aggregates only, the professor sets cutoffs.
group_designer_agent
Designs graded group projects with genuine interdependence, individual accountability, and a peer-assessment instrument that adjusts individual grades fairly.
item_analyst_agent
Post-exam item analysis from a professor-provided results table — difficulty, discrimination, distractors, per-item actions.
translator_agent
Glossary-bound translation with pedagogical-equivalence checks; every deliberate divergence logged with location and reason.