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 theafh/ai-modules --skill task_implementgit clone --depth 1 https://github.com/theafh/ai-modulesWrote 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/theafh/ai-modules/task_implement)<a href="https://agentmods.dev/skills/theafh/ai-modules/task_implement"><img src="https://agentmods.dev/badge/skills/theafh/ai-modules/task_implement/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/theafh/ai-modules/task_implement"><img src="https://agentmods.dev/badge/skills/theafh/ai-modules/task_implement.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.00052 | $0.02858 |
| Opus 5.5 | $0.00021 | $0.01143 |
| Sonnet 5.5 | $0.00010 | $0.00572 |
| Haiku 4.5 | $0.00005 | $0.00286 |
Grade A, and why
task_implement 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 14d 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.
task_implement
<task_implement_skill>
<when_to_activate>
Activate when the user points at one task in tasks/ and wants it built now:
- "Implement this task" / "implement
<task-file>." - "Do task X" / "build the thing described in
<task>" / "make task Y happen."
Route elsewhere when the user wants to create a task (task_create or the base task skill), assess a task's readiness before building (task_check), automatically repair readiness issues before building (task_auto_check), choose what to work on next (task_select), verify a believed-done task against the codebase (task_audit), or close and archive a task (task_finish).
</when_to_activate>
<path_resolution>
The bundled scripts (discover_tasks.sh, lint.py) ship in scripts/ next to the base task skill's SKILL.md, not next to this one. After reading that base SKILL.md (per <authority>), resolve each script's absolute path by combining the directory you loaded it from with scripts/<script-name> and invoke that absolute path, never a bare scripts/..., which resolves against the current working directory (the target project) rather than the skill, and so finds the project's own scripts/ or nothing. If the first invocation reports a missing file, re-resolve the absolute path once before treating the script as failed.
</path_resolution>
- Read the task end-to-end. Read its
statusfirst. The base skill's<lifecycle_responsibility>ready-before-build rule is the admission criterion: proceed when status isready, or when status isimplementedand named gaps from a priortask_auditreport are in context or supplied by the user. Stop before any edit when status isopenorchecked: name the status, point totask_check/task_auto_check, and change nothing. Stop before any edit when status isimplementedand no such named gaps are in context or supplied: name the status, route pertask_audit(repair viatask_implementonly with those named gaps; other routing as the base<status_discipline>follow-up rule directs), and change nothing. A task ataudited, or archived asfinishedordeferred, is past implementation, and the base skill's<backward_move_guard>refuses animplementedstamp over it, so stop before any edit and name the status. Route a suspected gap on anauditedtask totask_audit, whose re-audit re-opens the task toimplementedwhen it confirms the gap, and route other new work as the base<status_discipline>follow-up rule directs. Then understand the desired behaviour, the## Approach, the context pointers, and the scope and any Out of scope block. The base skill writes each task to be self-sufficient. The file on its own is enough to implement, and you draw on everything actually available alongside it: the codebase, the project's standing instructions, the user. Treat the file as that contract, and restate your understanding before writing any code. - Check task dependencies before building. Before loading the guardrails or reading the codebase, apply the base
taskskill's<dependency_signals>taxonomy to the task at hand in both directions: the outbound signals in its own body, and the inbound ordering declarations authored in other live eligible tasks that point at it, meaning a live task whose body names a first-ship order over it or forward-references an artefact it creates. Count only the live eligible prerequisites the taxonomy's prerequisite rule defines; this step makes no code edit and no status change while it runs. When the task has one or more hard prerequisites, list them in dependency order (a prerequisite's own live prerequisites named first), give the evidence for each (the signal, and the task file it came from), surface any soft companion relationships alongside without letting them force the stop, ask whether the task at hand should really be built ahead of its prerequisites, and stop with no code edit and no status change until the user answers. Surface a dependency cycle plainly rather than looping on it. On the user's explicit go-ahead, continue into the rest of the workflow; when the gate finds no live prerequisites, continue without interrupting the user. - Load the guardrails. Read the governing
CLAUDE.mdfiles (repo root, this repo, and the one nearest the work) and hold their conventions as defaults for every edit (pseudo-XML and positive-language authoring, the Make + shell + markdown toolchain, snake_case naming, deployment-agnostic cross-references, and the versioning / plugin-lockstep rules), together with any constraint the task's own## Approachstates. - Understand the existing codebase, and confirm the work isn't already done. Read the code and tests already in place around the work, and extend the patterns, conventions, and architecture in use rather than inventing a new shape. Before writing anything, check the current state of the target: whether the artifact already exists, and whether the behaviour (or part of it) is already present. Build on or correct what is there instead of re-implementing it or clobbering it.
- Implement in order.
## Approachis the plan, the codebase is ground truth. Follow the## Approachstep by step, building everything in scope and skipping everything the task marks out of scope, and name every artifact after the behaviour it delivers. When delivering the Goal or an## Acceptanceitem would require crossing a declared Out of scope boundary, quote the conflicting passages, apply the base skill's Decide or label reconcile-or-surface disposition, and hold. Never silently cross the boundary and never silently under-deliver. Where a step's mechanics conflict with what the repo actually requires, do what the codebase requires and report the deviation rather than following the brief literally. When the task leaves a decision open, apply the base skill's Decide or label reconciliation rule against its evidence base (here including the fully real codebase), and when that evidence settles the decision, proceed on the reconciled path and record the rationale in the shipped artifact (a code comment, theSKILL.mdbody, a doc), not only in chat; when the evidence leaves it unsettled, surface the decision to the user with its options and at least one suggested path and hold, rather than making an arbitrary call. When the work lands, assess whether the delivered change extended the system's design using the base<archive>trigger test, then record the verdict explicitly asdesign-extended: trueordesign-extended: falsein frontmatter, in the same stamp pass asstatus: implementedandimplemented-by. Write it on every stamp rather than leaving afalseverdict implicit: the base<frontmatter>entry makes an absent field read asfalseso tasks predating the field stay clean, and a stamp that states its verdict shows the assessment happened. Report the assessment either way. This detection-and-recording mandate is independent of the separate docs update step, and it supplies the close-out signal without requiring task_finish to re-derive a code-level judgement. Honor the base skill's<backward_move_guard>, stampstatus: implemented, writeimplemented-byresolved via<user_name_chain>, and bumpupdated. - Build the tests. When
TESTING.mdexists at the project root, read it for project-specific testing details (stack, runner, layout, thresholds) before choosing the test shape. When it is absent, continue with the repo and task context already loaded. Map every## Acceptancecheck that implies a test to a real test, aligning its level, framework, and structure with the repo's testing conventions (for this repo, thetests/<skill>/Pattern A layout). Tests are required deliverables. A missing test for a stated acceptance check is a gap, not a pass. - Cross-check, then run the verifications the acceptance names. Walk every
## Acceptanceitem and confirm the implementation covers it; resolve any gap before proceeding. Run every verification the task and repo name (make lint, the relevant bundledlint.py, the matchingtests/<skill>/script_tests, and any acceptance-named check such as a deploy dry-run) each once per the base<verification_economy>rule, naming the run every "done" conclusion relies on. Fix every failure your change introduces. Report a pre-existing failure that is unrelated to this task as such and keep it out of scope, and report the suite's actual state, naming any part still red rather than implying a clean run. - Update docs and versions. Update whatever documentation the task names, and apply the repo's one-bump-per-commit version and plugin-lockstep rules for any skill or plugin artifact touched.
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.
- 14d ago Changed 9f4156e7690c
- 15d ago Changed dc1af01b88eb
- 17d ago Changed 2266866ac4d8
- 1mo ago Changed 1431684ac15a
- 1mo ago First seen · 77 lines · 52 tokens per session scan A 8171f687f1aa
task_implement is a skill published in the GitHub repository theafh/ai-modules (38 stars, last pushed today), licensed MIT. It adds 52 tokens to every session and 2,858 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-08-30.
Other skills, from other repositories
story-readiness
Checks whether a story is ready to implement: clear acceptance criteria, no open questions, valid ADR and dependencies. Use when the user asks if a story, or the sprint's stories, are ready to start or build.
recipe-create-meet-space
Create a Google Meet meeting space and share the join link.
workthreads
SpecStory Workthreads - a weekly work-thread rollup across a team's repos from SpecStory coding histories (any agent - Claude Code, Codex, Cursor, Gemini, and more). It groups the window's sessions into threads of work per project and labels each new / open / recently closed, so a lead sees what shipped, what is still…
atmos-config
Atmos root configuration: atmos.yaml discovery, precedence, deep merging, basepath, imports, minimal bootstrap, and routing to narrower Atmos skills.
qa-project-bootstrap
Onboard a new QA engineer to an existing codebase, or audit an existing test architecture. Produces a 30-day ramp plan: codebase orientation, framework walkthrough, test architecture audit, mentorship pairing, and first-test guidance. Use when: "QA onboarding," "new tester," "ramp up," "test architecture audit,"…
remove
Remove a deployed framework or addon from the current workspace.