
skill-update
Skill creation, update and management — generates skill directory structure, validates against best practices, enforces line count limits. Use when creating, updating, or improving skills.
- Installs
- 160
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/transilienceai/communitytools --skill skill-update- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads skill-update automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Skill Update
Generate or refine Claude Code skills following Anthropic best practices.
Hard caps (enforced by scripts/skill_linter.py)
SKILL.md≤ 150 linesreference/*.md≤ 200 lines (reference/scenarios/*.md≤ 400 lines)README.md≤ 100 lines- Every
SKILL.mdhas YAML frontmatter withname+description - No
DO NOT/MUST NOT/NEVERoutside an## Anti-Patternssection - No challenge-specific identifiers (machine names, lab IDs, lab IPs, preserved flags)
- Every Markdown link resolves to an existing file
- Every reference file is linked from at least one other file (no orphans)
Principles
- Brevity first. Every file short, simple, human-readable. Challenge every token.
- Progressive disclosure. SKILL.md navigates;
reference/holds detail;reference/scenarios/holds concrete exploit flows. - Separation of concern. SKILL.md = WHAT + when.
reference/role-*.md= HOW agents behave when spawned. - Single canonical home for any cross-cutting rule (output discipline, credential loading, brute-force, etc.). Other files reference, never restate.
File structure
skills/<skill-name>/
├── SKILL.md # ≤150 lines, YAML + navigation
├── reference/
│ ├── *-principles.md # ≤150 lines (decision tree)
│ ├── INDEX.md
│ ├── *.md # patterns, ≤200 lines
│ └── scenarios/
│ └── <category>/
│ └── *.md # ≤400 lines, self-contained
└── README.md # optional, ≤100 lines
SKILL.md template
---
name: <skill-name>
description: What it does AND when to use. Include trigger phrases.
---
# <Skill Name>
<one-paragraph scope>
## When to use
- <bullet>
## Workflow / Quick start
<≤30 lines>
## References
- [reference/...](reference/...)
## Anti-Patterns
- <when negative framing is genuinely needed, put it here>
Run it
The procedure is a workflow — every step is code-enforced, so none can be skipped.
Workflow('skill-update', { output_dir: 'projects/<engagement>' }) // harvest an engagement
Workflow('skill-update', { learnings: [{ text, technique_type }] }) // judge a known set
Workflow('skill-update', { mode: 'audit' }) // read-only, writes nothing
Add dryRun: true to see the write plan without writing. Parent-orchestrator only.
Phases. Intake (baseline skill_linter.py --json) → Harvest (reframe learnings) →
Judge (four gates + blind refuters) → Route (author the block) → Write (persist verbatim) →
Sweep (confidentiality guard) → Verify (linter delta, not an absolute clean tree — the
base carries pre-existing violations).
Every promote/reject/write decision is pure JS in .claude/workflows/lib/wf-helpers.mjs
(promotionGate, capBudget, writeGate, lintDelta, skillUpdateGate). No agent decides
whether a learning is promoted or a write is allowed.
The four-gate promotion test
Process the techniques and failure modes from completed engagements. Promote a learning to the skill base only if all four hold:
- Generalizable. Reusable pattern, not target-specific lore. No machine names, lab IDs, target IPs, preserved flags, writeup attributions.
- Material improvement. Adds coverage, efficiency, or decision-quality for future engagements.
- Not already captured elsewhere in the skill base. (
scripts/skill_linter.pyflags duplicates.) - Minimal footprint. Prefer extending an existing entry over adding a new file. Keep the base lean and high-signal.
Reframing recipe
Always frame as a reusable pattern: "when encountering X condition, try Y approach" — never "on box-N, Y worked". Use <TARGET_IP>, <DC_FQDN>, <DOMAIN> placeholders in tool examples.
Output
Three buckets, built in code so a run cannot claim an edit it did not make: Updated. / Skipped. (with the gate that failed) / No changes.
Reference
- STRUCTURE.md — directory layout requirements.
- FRONTMATTER.md — YAML rules.
- CONTENT.md — writing guidelines.
- ROUTING.md — technique type → target file.
Anti-Patterns
- Creating CHANGELOG.md / SUMMARY.md / VERIFICATION.md auxiliary files.
- Meta-documentation about the creation process inside the skill itself.
- Verbose inline templates and examples (link to
reference/instead). - Re-introducing duplicate rule prose (brute-force, output-dir, env-reader).
- Files past their cap — split into
reference/immediately.
FAQ
What does the skill-update skill do?
Skill creation, update and management — generates skill directory structure, validates against best practices, enforces line count limits. Use when creating, updating, or improving skills.
How do I install skill-update?
Run npx skills add https://github.com/transilienceai/communitytools --skill skill-update in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/skill-update/ (personal) or .claude/skills/skill-update/ (project).
Which AI agents can use skill-update?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is skill-update safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains skill-update?
It is published by transilienceai in transilienceai/communitytools. It has 160 recorded installs.
More from transilienceai/communitytools
attack-path-stitcher
transilienceai/communitytools
Stitches confirmed single-asset findings into multi-hop attack paths across the organization. Builds a graph where nodes are assets and edges are confirmed exploit hops citing the findings that enable them.
blockchain-security
transilienceai/communitytools
Smart contract security testing and blockchain CTF exploitation. Covers Solidity vulnerability analysis, EVM storage manipulation, delegatecall attacks, CREATE/CREATE2 address prediction, and common DeFi exploit patterns. Use when analyzing Solidity contracts, solving blockchain challenges, or testing smart contract security.
hackerone
transilienceai/communitytools
HackerOne bug bounty automation - parses scope CSVs, deploys parallel pentesting agents per asset, validates PoCs, and generates platform-ready submission reports.
osint
transilienceai/communitytools
Open-source intelligence gathering - company repository enumeration, secret scanning, git history analysis, employee footprint, and code exposure discovery.
reconnaissance
transilienceai/communitytools
Open the skill to read its SKILL.md instructions.
cve-poc-generator
transilienceai/communitytools
Open the skill to read its SKILL.md instructions.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.