Skip to content

feat: optimize 4 skills (avg 50% → 91%)#2

Open
rohan-tessl wants to merge 1 commit into
jduncan-rva:mainfrom
rohan-tessl:improve/skill-review-optimization
Open

feat: optimize 4 skills (avg 50% → 91%)#2
rohan-tessl wants to merge 1 commit into
jduncan-rva:mainfrom
rohan-tessl:improve/skill-review-optimization

Conversation

@rohan-tessl

@rohan-tessl rohan-tessl commented Apr 24, 2026

Copy link
Copy Markdown

Hullo @jduncan-rva 👋

I ran your skills through tessl skill review at work and found some targeted improvements.

Here's the full before/after:

image
Skill Before After Change
skill-porter 63% 87% +24%
code-formatter (simple example) 27% 99% +72%
api-connector (converted example) 42% 82% +40%
code-formatter (converted example) 68% 96% +28%

Note: All four skills originally scored ~18% because allowed-tools was formatted as a YAML list (array) rather than a comma-separated string, which caused validation failures and blocked the LLM judge entirely. I fixed the format first, then re-scored to get the "before" baselines shown above. The actual content improvements are measured against those corrected baselines.

Changes summary

SKILL.md (main skill-porter skill)

  • Expanded frontmatter description with concrete sub-actions (translating YAML frontmatter, mapping tool whitelists/blacklists, transforming MCP paths)
  • Replaced ~250 lines of verbose content with ~108 focused lines
  • Removed all "Example requests:" bullet lists that wasted tokens
  • Replaced mock conversation examples with concrete conversion templates and mapping notation
  • Consolidated redundant platform difference sections into a single reference table
  • Added a clear 5-step workflow with bash validation commands at each step
  • Added progressive disclosure references to shared/ and src/

examples/simple-claude-skill/SKILL.md

  • Rewrote placeholder description ("A simple example skill for demonstration purposes") with specific actions, file types, and "Use when..." clause
  • Removed invalid subagents frontmatter key that caused warnings
  • Replaced natural language usage examples with a 4-step executable workflow (check → dry-run → format → verify)

examples/before-after/api-connector-converted/SKILL.md

  • Expanded description with rich trigger terms (GET/POST/PUT/DELETE, API keys, OAuth, pagination, endpoints)
  • Removed duplicated Configuration section
  • Added structured 5-step workflow (configure → construct → execute → validate → handle errors)
  • Added concrete curl examples for GET, POST, and response parsing

examples/before-after/code-formatter-converted/SKILL.md

  • Replaced capabilities bullet list with a 4-step executable workflow (detect setup → dry-run check → apply → verify)
  • Added error handling guidance for missing tools, conflicting configs, and no-config-found scenarios
  • Added project setup detection step

All skills

  • Fixed allowed-tools from YAML list format to comma-separated string format
  • Ensured frontmatter descriptions use quoted string format

Honest disclosure — I work at @tesslio where we build tooling around skills like these. Not a pitch - just saw room for improvement and wanted to contribute.

Want to self-improve your skills? Just point your agent (Claude Code, Codex, etc.) at this Tessl guide and ask it to optimize your skill. Ping me - @rohan - if you hit any snags.

Thanks in advance 🙏

Hullo @jduncan-rva 👋

I ran your skills through `tessl skill review` at work and found some targeted improvements. Here's the full before/after:

| Skill | Before | After | Change |
|-------|--------|-------|--------|
| skill-porter | 63% | 87% | +24% |
| code-formatter (simple example) | 27% | 99% | +72% |
| api-connector (converted example) | 42% | 82% | +40% |
| code-formatter (converted example) | 68% | 96% | +28% |

Note: All four skills originally scored ~18% because allowed-tools was
formatted as a YAML list (array) rather than a comma-separated string,
which caused validation failures and blocked the LLM judge entirely.
I fixed the format first, then re-scored to get the "before" baselines
shown above. The actual content improvements are measured against those
corrected baselines.

Changes summary:

SKILL.md (main skill-porter skill):
- Expanded frontmatter description with concrete sub-actions
- Replaced ~250 lines of verbose content with ~108 focused lines
- Removed all "Example requests:" bullet lists that wasted tokens
- Replaced mock conversation examples with concrete conversion templates
- Consolidated redundant platform sections into a single reference table
- Added a clear 5-step workflow with bash validation commands
- Added progressive disclosure references to shared/ and src/

examples/simple-claude-skill/SKILL.md:
- Rewrote placeholder description with specific actions and "Use when..."
- Removed invalid subagents frontmatter key that caused warnings
- Replaced natural language examples with 4-step executable workflow

examples/before-after/api-connector-converted/SKILL.md:
- Expanded description with rich trigger terms
- Removed duplicated Configuration section
- Added structured 5-step workflow with concrete curl examples

examples/before-after/code-formatter-converted/SKILL.md:
- Replaced capabilities list with 4-step executable workflow
- Added error handling guidance
- Added project setup detection step

All skills:
- Fixed allowed-tools from YAML list format to comma-separated string
- Ensured frontmatter descriptions use quoted string format

Honest disclosure — I work at @tesslio where we build tooling around
skills like these. Not a pitch - just saw room for improvement and
wanted to contribute.

Want to self-improve your skills? Just point your agent (Claude Code,
Codex, etc.) at this Tessl guide and ask it to optimize your skill:
https://docs.tessl.io/evaluate/optimize-a-skill-using-best-practices
Ping me - @popey - if you hit any snags.

Thanks in advance 🙏
@rohan-tessl rohan-tessl marked this pull request as ready for review April 24, 2026 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant