AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Skill Forge

skill-alxxpersonal-forge-skill-forge · by alxxpersonal

Write or improve an LLM agent skill. Use when user says "create skill", "write a skill", "improve this skill", "new skill", "skill for X", or wants to build a SKILL.md file.

No reviews yet
0 installs
8 views
0.0% view→install

Install

$ agentstack add skill-alxxpersonal-forge-skill-forge

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-alxxpersonal-forge-skill-forge)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Skill Forge? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Skill Forge

Generate or improve skills for LLM agent tools (Claude Code, Cursor, Crush, and any SKILL.md-compatible system). Research-backed, based on official docs, plugin source, and real-world skill audits.

When to Use

  • Creating a new skill from scratch
  • Improving an existing skill's description, structure, or settings
  • Auditing a skill for common mistakes
  • Deciding between rule vs skill vs CLAUDE.md for a piece of context

Step 1: Understand the Request

If $ARGUMENTS points to an existing SKILL.md, read it first. Otherwise, ask:

  1. What does it do? - the core capability or workflow
  2. Who triggers it? - user only (disable-model-invocation: true), model auto (default), or background (user-invocable: false)
  3. Side effects? - does it commit, deploy, send messages, modify state?
  4. Scope? - personal (~/./skills/), project (./skills/), or plugin?

Step 2: Choose the Right Mechanism

These paths use .claude/ as example but apply to any agent that supports SKILL.md format (Crush, Cursor, etc.):

| Put here | When | |----------|------| | CLAUDE.md / agent config | Rule applies to ALL work, every session, short | | ./rules/ | Applies only when touching specific file types (use paths frontmatter) | | ./skills/ | On-demand workflow, detailed reference, or behavioral mode |

Don't make a skill when a rule or CLAUDE.md line would suffice.

Step 3: Write the Frontmatter

Required fields

---
name: skill-name          # lowercase, hyphens, max 64 chars
description: ...          # THE most important field. See below.
---

Optional fields

| Field | Use when | |-------|----------| | disable-model-invocation: true | Side effects (commits, deploys), behavioral modes, timing-sensitive workflows | | user-invocable: false | Background knowledge Claude should absorb passively | | argument-hint: "[hint]" | Skill takes input - shows in autocomplete | | allowed-tools: Read, Grep | Restrict or pre-approve tools | | context: fork | Run in isolated subagent (research, batch ops, analysis) | | agent: Explore | Subagent type when using context: fork |

Invocation matrix

| Setting | User invokes | Claude invokes | Description in context | |---------|-------------|---------------|----------------------| | (default) | yes | yes | yes | | disable-model-invocation: true | yes | no | no | | user-invocable: false | no | yes | yes |

Key insight: with disable-model-invocation: true, the description is NOT in context at all. Don't over-optimize the description - write it for your own docs reference only.

Step 4: Write the Description

The description is what Claude pattern-matches against to decide whether to load the skill. There is NO algorithmic routing - Claude's language model reads all descriptions and semantically matches.

Formula

  1. What it does - one sentence, outcome-first
  2. Trigger phrases - exact words: "Use when user says X, Y, Z"
  3. Anti-triggers - "NOT for..." if false positives are a risk
  4. Prerequisites - required setup if any

Rules

  • Under 60 words
  • Every word costs token budget (2% of context window shared across ALL skill descriptions)
  • Description handles matching only - body handles instructions
  • Don't repeat body content in description
  • Be slightly "pushy" - Claude undertriggers by default

Good example

> "Translates Figma designs into production-ready code with 1:1 visual fidelity. Use when implementing UI from Figma files, when user mentions 'implement design', 'generate code', 'build Figma design', or provides Figma URLs. Requires Figma MCP server connection."

Bad example

> "Use when user wants to plan something" - too vague, false positives everywhere.

Step 5: Write the Body

Structure

# Skill Title

Brief context sentence.

## When to Use
(if not covered by description)

## Process / Steps
1. Step one
2. Step two

## Rules / Constraints
- Rule one
- Rule two

## Examples (if applicable)
Show patterns Claude should follow.

## Validation / Checklist (if applicable)
How to verify output quality.

Rules

  • Under 500 lines. Full SKILL.md loads into context when invoked. Move reference material to supporting files.
  • Use $ARGUMENTS if the skill takes input. Without it, Claude Code appends ARGUMENTS: at the end which is messier.
  • Numbered lists for sequential steps, bullets for options/rules.
  • Bold critical constraints with **IMPORTANT:**.
  • Say "do not skip steps" explicitly when order matters.
  • H2 for major sections, H3 for sub-sections. Max 2 heading levels.

Supporting files

Put adjacent to SKILL.md in the skill directory:

  • examples.md - example inputs/outputs
  • reference.md - detailed reference docs
  • scripts/helper.sh - executable scripts

Reference them from SKILL.md so Claude knows to load them. Files not accessed consume zero tokens.

Dynamic content injection

Skills support shell command output injection with ! prefix:

  • !\git branch --show-current\ - inject current branch
  • !\ls src/\ - inject file listing

Use for context that changes between invocations.

Step 6: Validate

Run this checklist on the generated skill:

  • [ ] Description under 60 words
  • [ ] Description is trigger-focused (what/when), not instruction-focused (how)
  • [ ] Body under 500 lines
  • [ ] No duplication between description and body
  • [ ] Correct invocation setting for the use case (side effects = disable-model-invocation: true)
  • [ ] $ARGUMENTS used if skill takes input
  • [ ] No vague trigger phrases that cause false positives
  • [ ] No context: fork on reference-only content (subagent gets instructions with no task)
  • [ ] Critical constraints are bolded
  • [ ] Steps are numbered when order matters
  • [ ] Supporting files referenced if body would exceed 500 lines

Common Mistakes

  1. Vague descriptions - "Use when user wants to plan" triggers on everything
  2. Missing disable-model-invocation: true on side-effect skills - Claude will auto-commit, auto-deploy
  3. Body too long - 500+ lines burns context. Split into supporting files.
  4. Redundant description + body - description matches, body instructs. Don't duplicate.
  5. context: fork on reference content - subagent gets instructions with no actionable task
  6. Over-explaining in description - the description isn't the instructions
  7. Missing NOT conditions - for behavioral modes, add explicit "NEVER activate unless..."
  8. user-invocable: false on things users should manually trigger - confusing

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.