agentify-project
Make a project agent-ready by converging it toward a canonical agent-neutral structure. Re-runnable, and doubles as an audit.
Author or refine a skill for maximum token economy without losing intent. Use when creating any new skill or editing an existing `SKILL.md`.
Claude Code
$ npx -y skills add eai-org/agent-toolkit --skill compact-skill-creator --agent claude-code
Codex
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a codex -y
Cursor
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a cursor -y
Gemini CLI
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a gemini-cli -y
GitHub Copilot
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a github-copilot -y
OpenCode
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a opencode -y
Windsurf
$ npx skills add eai-org/agent-toolkit --skill compact-skill-creator -a windsurf -y
name: compact-skill-creator description: Author or refine a skill for maximum token economy without losing intent. Use when creating any new skill or editing an existing `SKILL.md`. allowed-tools: Read, Write, Edit, Glob, Grep, Bash license: MIT metadata: version: "1.25"
Author a new skill, or improve an existing one, so it carries **all** its rules and intent in the **least text possible**. Cost has two tiers: the `description` sits in context *every* session — the skill's most expensive text — while the body loads only when the skill triggers. Both stay lean. Be interactive: gather what you need, draft, then apply only on approval.
The compaction rules — the least-text principle, the removal-audit verification, and the present-and-confirm with a measured word delta — live in [compact-docs-writer](../compact-docs-writer/SKILL.md), the single source of truth; this skill never restates or re-derives them. From the moment you draft (step 4) through self-review (step 5) and present (step 6), **always** invoke compact-docs-writer and follow its workflow on the skill text — reading it, applying its principles by hand, or naming it after a direct edit does not count. This skill adds only the skill-specific layer: trigger taxonomy, agnosticism, progressive disclosure, completion criteria, metadata, and the version bump.
How a skill is triggered decides how its `description` is written. Classify into one:
"dealing with unit tests"). A silent miss defeats its purpose, so the description **spends words** on a strict, concrete trigger: concrete verbs + the artifact ("when creating, editing, or reviewing …").
explicitly. The by-name reference does all the routing, so trigger wording buys nothing: the description is one short line of what the skill does — enough for a human choosing from a list — never a body summary, never a "load when …" clause. When the skill format can block model invocation (e.g. a `disable-model-invocation` flag), set it for Manual skills nothing invokes programmatically — the description then costs no standing context; pair the flag with `type: flow` — some agents hide flag-bearing skills even from manual invocation without it. When sibling skills must drive this one, keep it model-invocable and mark it "invoke manually only" in the description instead.
ticket"). Trigger words ≈ the task name, so a short description routes correctly without a when/when-not clause.
Governing rule: **description tokens are justified only by trigger precision, never by summary.** Compress *within* a type — but never starve a Mandatory trigger to save a few tokens.
In every type, never use `:` in the description — `: ` in the unquoted value breaks some agents' YAML parsers; avoid the character rather than quote it.
Three sharpeners for the trigger wording:
agent down the same path (true synonyms — "review a branch" / "check changes before merging"); never collapse triggers that name different inputs or modes (a PR link vs a bare branch name).
failure mode: the description names the error the agent hits during other work, in the error's distinctive words, never its whole message.
the word the user's prompts and docs already use, the agent links that shared language to the skill and fires it more reliably.
Placement corollary: the body loads only after the skill triggers, when the choice is already made — so keep when-to-use and routing cues in the description (read *before* the choice), never in the body, where they steer nothing.
Code", "Claude", etc.). When improving a skill, flag violations and fix the ones that are framing; a clearly-marked agent-specific mechanism example with a generic fallback (e.g. a memory/config discovery path) is deliberate — flag it at most, never strip it.
only when the skill's purpose requires it; when you must, keep it explicit and contained — declared up front or in a referenced doc — but skip a standalone declaration when the body already names the coupled artifacts throughout, since restating them only duplicates.
with interchangeable equivalents (design tools, trackers, cloud providers, …): if the skill is already agnostic — treating such tools as a class, naming specific ones only as examples — **preserve that**; new or edited content must stay generic, never hardcode a lone vendor as the sole path. Otherwise it's a nice-to-have: prefer generic wording, and when unsure whether to generalize or couple, ask the user.
dependencies, not the whole toolkit, so a link to a sibling that isn't a dependency can dangle. Reference another skill only when it's a declared dependency or the link earns its keep operationally (e.g. an actionable next-step handoff); never add orientation prose that merely situates the skill among its siblings. An optional sibling gates its hand-off; gate the artifact feeding it
A collection of generic agentic tools for common engineering tasks, designed to work with any AI agent on any kind of software project.
Make a project agent-ready by converging it toward a canonical agent-neutral structure. Re-runnable, and doubles as an audit.
Attach pasted images, files or URLs to a fetched ticket, saved beside its ticket file and referenced from it, or fill an…
Check how much of a ticket is already implemented and save a per-requirement status report.
Draft, rewrite, or refine a doc for maximum token economy without losing any rule or intent. Use for docs kept in version control…
Audit what auto-loads into an agent session's context window and suggest lean, reversible fixes to cut startup tokens.
Turn a refined requirements document into a structured implementation PLAN.md a fresh session can execute. Planning only —…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.