plugins/skill-creator/skills/skill-creator/SKILL.md
Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or iterate on skill quality. Triggers: "create a skill", "make a new skill", "build a skill for", "write a skill that", "skill for doing X", "I want a skill to", "new skill", "design a skill", "scaffold a skill", "improve this skill", "optimize this skill", "this skill isn't working well", "evaluate this skill", "score this skill", "how good is this skill", "run evals on", "benchmark this skill", "test this skill's quality", "skill quality", "skill performance". Also triggers when a user describes a repeatable workflow they want to automate, says "I keep doing X manually", "can you remember how to do X", or "turn this into a skill".
npx skillsauth add himself65/finance-skills skill-creatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create, evaluate, and iterate on high-quality agent skills. This skill guides the entire lifecycle: planning what the skill should do, writing SKILL.md and reference files, scoring quality against a rubric, and iterating until the skill meets production standards.
Philosophy: A great skill is not a long skill. It is a precise skill: exhaustive triggers, explicit defaults, clear steps with exit gates, deferred complexity via reference files, and a structured output template.
Core rule — always dynamic, never static: Skills MUST detect what tools, libraries, and auth are available at runtime and adapt their behavior accordingly. Never hardcode a single method. Always provide a detection flow with a decision tree and fallback paths. See references/dynamic-calling.md for the complete pattern catalog.
Classify the request into one of these modes:
| User Intent | Mode | Jump To | |---|---|---| | Create a brand-new skill | Create | Step 2 | | Improve / fix an existing skill | Improve | Step 6 | | Evaluate / score a skill's quality | Evaluate | Step 7 |
If ambiguous, ask: "Do you want to create a new skill, improve an existing one, or evaluate one?"
Before writing anything, answer these questions (ask the user if unclear):
| Question | Why it matters |
|---|---|
| What task does the skill automate? | Defines the core workflow |
| Who is the target user? | Determines complexity and terminology level |
| What tools/APIs/CLIs does it use? | Determines dependencies and platform restrictions |
| What does the user provide as input? | Defines parameters and defaults |
| What should the output look like? | Defines the response template |
| Does it need API keys or credentials? | Determines required_environment_variables |
| Should it work on Claude.ai or only CLI? | Determines platform field and dynamic commands |
Before writing SKILL.md, plan the structure. Read references/architecture-patterns.md for detailed guidance on each pattern.
| Pattern | When to use | Steps | Example | |---|---|---|---| | Linear | Single workflow, no branching | 5-7 | earnings-preview, etf-premium | | Router | Multiple sub-tasks under one umbrella | 3 + sub-skills | stock-correlation (4 sub-skills) | | Methodology | Complex domain framework with sequential gates | 7-9 | sepa-strategy (9-step trading methodology) | | Widget | Generates interactive UI output | 4-5 | options-payoff (extract + compute + render) | | API Wrapper | Wraps an external API with many endpoints | 3-5 + heavy references | funda-data (5 steps, 8 reference files) |
Write out the step names before writing content. Every skill should have:
Target 5-9 steps total. More than 9 means the skill should be split or use a router pattern.
Every skill that touches external tools MUST start with a runtime detection flow. Read references/dynamic-calling.md for all patterns. The detection flow answers:
| Question | How to detect | Decision |
|---|---|---|
| Is the CLI tool installed? | command -v tool | CLI path vs Python fallback |
| Is the user authenticated? | tool auth status / echo $API_KEY | Skip auth setup vs guide through it |
| Which runtime has the library? | import lib in terminal vs execute_code | Route to correct runtime |
| Is a richer tool available? | gh --version vs git --version | Rich path vs minimal path |
| Is live data reachable? | curl -s endpoint | Live data vs cached/default |
The detection output feeds into a decision tree that the rest of the skill follows. Never assume — always check.
Decide what goes in SKILL.md vs references/:
| In SKILL.md (under ~250 lines) | In references/ | |---|---| | Step-by-step workflow | Detailed API documentation | | Routing/decision tables | Code templates (>20 lines) | | Parameter defaults table | Formulas and edge cases | | Output format template | Troubleshooting database | | Quick examples (1-3) | Comprehensive examples (4+) |
Read references/writing-guide.md for detailed instructions on writing each section. Read references/frontmatter-guide.md for the complete YAML field reference.
Frontmatter first: name (lowercase-hyphenated, max 64 chars) and description (exhaustive trigger list, max 1024 chars) are required. Description needs 5+ triggers including sideways entry points.
Step 1 = detection flow: Use !command`` with fallbacks to detect available tools, auth state, and runtime. Build a decision tree with multiple method paths (e.g., CLI preferred, Python fallback, built-in tools last resort). Never hardcode a single tool — always detect and adapt. See references/dynamic-calling.md.
Core steps with method alternatives: Each step that calls an external tool should offer at least 2 paths based on what Step 1 detected. Use pattern: "If TOOL_A detected → Method 1, otherwise → Method 2." Each step gets ## Step N: [Verb] [Object], a decision table if routing, a pass/fail gate if evaluative, and a reference pointer for deep content.
Defaults table: Every parameter MUST have an explicit default. No skill should ever stall waiting for input.
Final step = output template: Number every output section. Specify exactly what data goes in each. Include a verdict/grade system if evaluative.
See references/skill-examples.md for annotated examples of each pattern.
Read references/writing-guide.md for the full reference file authoring guide.
lowercase-hyphenated.md, one file per concept-cluster## Reference Files section at the endRun the skill through the quality rubric in references/quality-rubric.md. Score each dimension.
name and description (both required)!command`` checks and fallbacks (|| echo "...")If any item fails, fix it before delivering to the user.
When the user asks to improve a skill:
Load the skill with skill_view(name) or read the SKILL.md directly. Also read all reference files.
Use the quality rubric from references/quality-rubric.md. Present the score breakdown to the user:
| Dimension | Score | Issue | |---|---|---| | Trigger quality | 6/10 | Missing beginner phrasing | | Defaults coverage | 3/10 | No defaults table | | Step structure | 8/10 | Good, but Step 3 lacks exit gate | | Output template | 4/10 | Vague "summarize results" | | Reference usage | 7/10 | Good split, but missing troubleshooting |
List concrete changes ranked by impact:
After user approval, edit the skill. Use skill_manage(action='patch', ...) for targeted changes or skill_manage(action='edit', ...) for full rewrites.
When the user asks to evaluate or score a skill:
Read the full SKILL.md and all reference files. Count lines, steps, triggers, defaults, reference files.
Use the comprehensive rubric from references/quality-rubric.md. Score each of the 10 dimensions on a 1-10 scale.
## Skill Quality Scorecard: [skill-name]
| # | Dimension | Score | Notes |
|---|---|---|---|
| 1 | Trigger quality | 8/10 | 12 triggers, includes sideways entries |
| 2 | Defaults coverage | 9/10 | All 11 parameters have defaults |
| 3 | Step architecture | 8/10 | 5 clear steps with gates |
| 4 | Reference file strategy | 7/10 | 2 files, could use troubleshooting |
| 5 | Dynamic content | 10/10 | Dep check + live data injection |
| 6 | Output template | 9/10 | 5 numbered sections + verdict |
| 7 | Error handling | 6/10 | Missing data handling unclear |
| 8 | Code/formula quality | 8/10 | Working JS, copy-paste ready |
| 9 | SKILL.md conciseness | 7/10 | 196 lines, well within target |
| 10 | Domain accuracy | 9/10 | BS formulas correct, edge cases covered |
**Overall: 81/100** -- Production quality
### Top 3 Improvements
1. ...
2. ...
3. ...
For context, here are scores for known high-quality skills in this repo:
| Skill | Score | Why | |---|---|---| | sepa-strategy | ~90/100 | 9 steps, 7 refs, exhaustive triggers, structured verdict | | options-payoff | ~85/100 | Strong defaults, working code, live data, clean output | | stock-correlation | ~80/100 | Router pattern, 4 sub-skills, good defaults |
Deliver:
Deliver:
Deliver:
references/dynamic-calling.md -- Core reference: Detection flows, decision trees, method fallbacks, runtime awareness, and multi-tool adaptation patterns with annotated examples from production skillsreferences/writing-guide.md -- Detailed instructions for writing SKILL.md sections, environment checks, defaults tables, output templates, and reference filesreferences/architecture-patterns.md -- Linear, Router, Methodology, Widget, and API Wrapper patterns with examples and anti-patternsreferences/frontmatter-guide.md -- Complete YAML frontmatter field reference (name, description, platform, env vars, config, credentials)references/quality-rubric.md -- 10-dimension scoring rubric with 1-10 scales, benchmark scores, and score interpretationreferences/skill-examples.md -- Annotated excerpts from top skills showing why specific patterns worktools
Read Hyperliquid (app.hyperliquid.xyz) perp + spot market data via opencli (read-only, public info API). Use whenever the user wants Hyperliquid perpetual or spot markets, mark/oracle/mid prices, 24h change, funding rates (hourly or annualized APR), open interest, volume, the L2 order book, OHLCV candles, historical funding, or a cross-venue funding comparison (Hyperliquid vs Binance vs Bybit) for funding arbitrage. Triggers: "Hyperliquid funding for BTC", "HL perp markets", "funding on BTC perp", "Hyperliquid order book", "HL open interest", "funding arb Hyperliquid vs Binance", "Hyperliquid candles for SOL", "Hyperliquid spot markets", "PURR price on Hyperliquid", "hyperliquid", "hyperliquid.xyz", "HL DEX". READ-ONLY market data — no account, order, or trade operations.
tools
Generic read-only fallback for any source opencli covers but this repo has no dedicated reader for — Yahoo Finance, Bloomberg, Reuters, Barchart, Eastmoney, Xueqiu, Sinafinance, Reddit, HackerNews, Substack, Medium, Weibo, Bilibili, Xiaohongshu, Zhihu, arXiv, Google Scholar, Apple Podcasts, Xiaoyuzhou, Spotify, YouTube, Weixin, Amazon, and more. Triggers: "use opencli to read", "grab the frontpage from hackernews", "read reddit r/wallstreetbets", "fetch Eastmoney hot stocks", "pull Xueqiu feed", "get Bloomberg markets headlines", "search arXiv for", any request to read from a site where a specialized skill does not exist but opencli does. FALLBACK — prefer twitter-reader, linkedin-reader, discord-reader, telegram-reader, or yc-reader when the source matches. READ-ONLY — never invoke write operations.
development
Look up Y Combinator companies, batches, and startup ecosystem data using the yc-oss API (read-only). Use this skill whenever the user wants to research YC-backed startups, find companies in a specific batch or industry, check which YC companies are hiring, explore top YC companies, or analyze startup trends by sector or tag. Triggers include: "YC companies in fintech", "who's in the latest YC batch", "YC startups hiring", "top Y Combinator companies", "find YC companies tagged AI", "W25 batch", "S24 companies", "YC stats", "Y Combinator portfolio", "startup research", "which YC companies do X", "venture research on YC", any mention of Y Combinator, YC batch, or YC-backed companies in the context of startup research, venture analysis, or market intelligence. This is a read-only data source — the API is a static JSON dataset updated daily.
tools
Read Twitter/X for financial research using opencli (read-only). Use this skill whenever the user wants to read their Twitter feed, search for financial tweets, view bookmarks, look up user profiles, or gather market sentiment from Twitter/X. Triggers include: "check my feed", "search Twitter for", "show my bookmarks", "who follows", "look up @user", "what's trending about", "market sentiment on Twitter", "what are people saying about AAPL", "recent tweets from @elonmusk", "show me @user's posts", "fintwit", any mention of Twitter/X in context of reading financial news or market research. This skill is READ-ONLY — it does NOT support posting, liking, retweeting, or any write operations.