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 anton-abyzov/vskill --skill task-skill-announcergit clone --depth 1 https://github.com/anton-abyzov/vskillWrote 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/anton-abyzov/vskill/task-skill-announcer)<a href="https://agentmods.dev/skills/anton-abyzov/vskill/task-skill-announcer"><img src="https://agentmods.dev/badge/skills/anton-abyzov/vskill/task-skill-announcer/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/anton-abyzov/vskill/task-skill-announcer"><img src="https://agentmods.dev/badge/skills/anton-abyzov/vskill/task-skill-announcer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 4 Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
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.00097 | $0.00680 |
| Opus 5 | $0.00048 | $0.00340 |
| Sonnet 5 | $0.00019 | $0.00136 |
| Haiku 4.5 | $0.00010 | $0.00068 |
Grade A, and why
task-skill-announcer 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 9d 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 — 75 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/task-skill-announcer
A minimal demonstration skill that announces its activation by outputting a fixed identification phrase. Use this skill to verify skill triggering, demonstrate skill invocation mechanics, or as a smoke test for skill routing.
Workflow
Follow these steps in order on every invocation:
-
Announce activation. Output the exact phrase:
I'm a task skillas the first line of the response. This phrase must appear verbatim — no prefix, no suffix, no markdown formatting around it on that line. -
Address the user's request. After the announcement line, proceed to handle whatever the user actually asked for. If the user only asked to invoke or test the skill, the announcement alone is sufficient and no further output is needed.
-
Stay minimal. Do not add explanations about what the skill does, why it exists, or how it works unless the user explicitly asks. The point is the announcement, not commentary about it.
Rules
- The announcement phrase is
I'm a task skill— exact casing, exact punctuation (apostrophe, no period), exact wording. Do not paraphrase or translate. - Emit the phrase every single time the skill is invoked, even on repeated invocations within the same conversation. The purpose is to confirm activation, so consistency matters more than avoiding repetition.
- The phrase goes on its own line at the very start of the response. Do not embed it inside a sentence like "As I'm a task skill, I will..." — that defeats the verification purpose.
- Do not wrap the phrase in quotes, code fences, bold, or italics. Plain text only.
Why this design
The fixed announcement makes it trivially observable whether the skill activated. If a developer or user is testing skill triggering, they can scan for the literal string I'm a task skill and immediately know the routing worked. Adding decoration or paraphrasing would break that observability.
Output Format
I'm a task skill
[optional: response to whatever the user actually asked, if anything beyond invocation]
What ships with it
3 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.
- 9d ago First seen · 75 lines · 97 tokens per session scan A 26e68c5dfdd9
task-skill-announcer is a skill published in the GitHub repository anton-abyzov/vskill (45 stars, last pushed 2d ago), licensed MIT. It adds 97 tokens to every session and 680 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
prereview
Review the current diff against this team's conventions and invariants before it ships. Invoke with /prereview before opening a PR, or run as a pre-push gate.
optimize-skill-loop
Deterministic outer-loop optimizer for a skill that already carries a frozen eval (produced upstream by an eval source such as create-skill-eval). Runs the frozen eval across user-chosen agents on fresh headless sessions via a pluggable adapter, grades quality/cost/perf, keeps the pareto-best variant, and versions…
create-skill-eval
Author a frozen, graded eval harness for ONE inner skill and freeze it inside that skill as a conformant eval/ directory (scenarios + deterministic evaluator + rubric + fixtures + HARNESS.md manifest). The eval content is skill-specific; this skill is the reusable methodology that produces it. Its output is consumed…
fork-and-publish-skill
Customizes an installed agent skill and ships it back upstream or as a versioned fork using qvr's edit/publish authoring loop. Use when a user wants to modify, customize, fork, release, or publish a qvr skill — e.g. "edit this skill", "publish my changes", "fork a skill to my own repo", "cut a v1.0.0 release of a…
onboard-skills
Discovers and installs agent skills into a project (or the user-global lane) with the qvr CLI, where qvr.toml declares intent and qvr.lock is the resolved source of truth for what loads. Use when a user wants to find, add, register, or install skills from a skills registry or GitHub repo with qvr — e.g. "register a…
reproduce-skill-env
Reproduces an exact agent-skill set across machines, teammates, and CI using qvr's portable manifest and lockfile guarantees. Use when a user wants to share, pin, replicate, or CI-gate their qvr skills — e.g. "export my skills", "import this skill manifest", "pin everything to exact commits", "make skills…