Skip to content

feat: optimize skill structure and improve content scores#339

Open
popey wants to merge 3 commits intosubsy:mainfrom
popey:improve/skill-optimization
Open

feat: optimize skill structure and improve content scores#339
popey wants to merge 3 commits intosubsy:mainfrom
popey:improve/skill-optimization

Conversation

@popey
Copy link

@popey popey commented Feb 25, 2026

Hullo 👋 @subsy (from just up the road in Farnborough)

Nice work on ralph-tui - I do love a nice terminal app <3.

I noticed you had 4 skills bundled with the project and thought I'd take a look at their structure.

ralph-tui-score-card

I ran them some evaluation tooling we use at work. All 4 skills were already in great shape with strong descriptions, but I spotted some opportunities to tighten up the content structure. Here are the improvements:

Skill Before After Change
ralph-tui-create-beads 89% 93% +4%
ralph-tui-create-beads-rust 89% 93% +4%
ralph-tui-create-json 89% 93% +4%
ralph-tui-prd 89% 93% +4%

Changes Summary

Click to expand detailed changes

Structure improvements:

  • Moved examples to separate files: Created EXAMPLES.md for each skill to keep the main SKILL.md focused on essentials while preserving full working examples
  • Extracted reference material: Created REFERENCE.md for tool comparison table (beads-rust) and ANTI_PATTERNS.md for schema validation examples (create-json)
  • Consolidated redundant sections: Merged overlapping explanations about dependency ordering, story sizing, and quality gates that appeared in multiple places
  • Streamlined checklists: Reduced verbose checklist items that repeated information from the body

Content refinements:

  • Consolidated dependency ordering guidance (was explained 3-4 times in each skill)
  • Simplified story sizing section (condensed examples while keeping the key rule)
  • Reduced redundant acceptance criteria examples (kept guidance, removed repetitive ❌ examples)
  • Trimmed verbose explanations of ralph-tui behavior that can be inferred from context

Results:

  • All skills maintain 100% description scores
  • Content scores improved from 77% to 85%
  • Reduced overall token usage while improving clarity
  • Better separation of concerns (core guidance vs examples vs reference material)

Disclosure

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.

If you want to run evals yourself, click here.

Thanks in advance 🙏

Summary by CodeRabbit

Release Notes

  • Documentation
    • Added comprehensive example walkthroughs and reference guides across all ralph-tui skills.
    • Introduced anti-patterns documentation to clarify invalid schema structures.
    • Simplified and consolidated existing skill documentation for improved clarity.
    • Added Rust-to-Go beads comparison reference guide.

Improved all 4 skills from 89% average (77% content) to 93% average (85% content)
by restructuring content and reducing redundancy:

Changes:
- Moved detailed examples to separate EXAMPLES.md files
- Extracted anti-patterns to ANTI_PATTERNS.md (ralph-tui-create-json)
- Created REFERENCE.md for tool comparison (ralph-tui-create-beads-rust)
- Consolidated repetitive dependency ordering explanations
- Streamlined story sizing guidance
- Reduced redundant acceptance criteria examples
- Simplified quality gates explanations
- Trimmed verbose checklist items

All skills maintain 100% description scores while improving content clarity
and reducing token usage.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@vercel
Copy link

vercel bot commented Feb 25, 2026

@popey is attempting to deploy a commit to the plgeek Team on Vercel.

A member of the Team first needs to authorize it.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 25, 2026

Walkthrough

This PR restructures documentation across multiple Ralph TUI skills by extracting embedded examples and anti-patterns into dedicated markdown files. It adds EXAMPLES.md to several skills, introduces ANTI_PATTERNS.md for JSON schema validation guidance, adds REFERENCE.md comparing beads and beads-rust command equivalents, and consolidates main SKILL.md files by removing verbose examples in favour of brief references.

Changes

Cohort / File(s) Summary
ralph-tui-create-beads-rust documentation
skills/ralph-tui-create-beads-rust/EXAMPLES.md, skills/ralph-tui-create-beads-rust/REFERENCE.md, skills/ralph-tui-create-beads-rust/SKILL.md
Adds EXAMPLES.md with PRD-to-Beads conversion workflow and REFERENCE.md comparing Go beads vs Rust beads-rust commands and storage. Consolidates SKILL.md by removing lengthy examples and replacing with concise guidance.
ralph-tui-create-beads documentation
skills/ralph-tui-create-beads/EXAMPLES.md, skills/ralph-tui-create-beads/SKILL.md
Adds EXAMPLES.md demonstrating full PRD-to-Beads conversion with CLI commands and dependency relationships. Reduces SKILL.md content substantially, removing detailed narratives and replacing with brief statements and references.
ralph-tui-create-json documentation
skills/ralph-tui-create-json/ANTI_PATTERNS.md, skills/ralph-tui-create-json/EXAMPLES.md, skills/ralph-tui-create-json/SKILL.md
Introduces ANTI_PATTERNS.md documenting invalid schema patterns and correct structure. Adds EXAMPLES.md showing PRD-to-JSON conversion workflow. Trims SKILL.md by removing anti-patterns section and embedding examples in favour of file references.
ralph-tui-prd documentation
skills/ralph-tui-prd/EXAMPLES.md, skills/ralph-tui-prd/SKILL.md
Adds EXAMPLES.md with interactive-style PRD drafting example for dark mode feature. Substantially prunes SKILL.md by removing QA blocks, detailed example flows, and lengthy example content, replacing with EXAMPLES.md reference.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main changes: optimizing skill documentation structure and improving content evaluation scores through restructuring and consolidation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@popey popey marked this pull request as ready for review February 25, 2026 14:14
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@skills/ralph-tui-create-beads-rust/SKILL.md`:
- Line 115: The command example currently documents an incorrect priority range
--priority=[1-4]; update the example to --priority=[0-4] so it matches
beads-rust's accepted values (0–4, with 0 = critical) and the priority mapping
described elsewhere in SKILL.md; ensure any mention of the flag in examples or
usage text uses the full range (--priority=[0-4]) to avoid disallowing critical
tasks.

In `@skills/ralph-tui-create-beads/SKILL.md`:
- Line 115: Update the priority mapping line that currently reads "Priority:
Based on dependency order, then document order (0=critical, 2=medium,
4=backlog)" so it aligns with the documented --priority=[1-4] range and
examples; replace the incorrect 0/2/4 mapping with a mapping such as
"1=critical, 2=medium, 3–4=backlog" in both SKILL.md and SKILL.md for the Rust
variant (look for the "Priority:" sentence in each file and adjust the numeric
mapping accordingly).

In `@skills/ralph-tui-create-json/SKILL.md`:
- Line 115: Update the dependency-order text so both places use the same
canonical sequence; change the "Correct dependency order:" line that currently
reads "Schema/database → backend → UI → integration" to match the checklist's
order "schema → backend → UI" (or vice versa if you prefer to include
integration everywhere), and ensure the checklist and the "Correct dependency
order:" header both use identical capitalization and arrow formatting; update
the symbol strings in SKILL.md (the "Correct dependency order:" line and the
checklist block) to be consistent.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3e5e51d and 55c6509.

📒 Files selected for processing (10)
  • skills/ralph-tui-create-beads-rust/EXAMPLES.md
  • skills/ralph-tui-create-beads-rust/REFERENCE.md
  • skills/ralph-tui-create-beads-rust/SKILL.md
  • skills/ralph-tui-create-beads/EXAMPLES.md
  • skills/ralph-tui-create-beads/SKILL.md
  • skills/ralph-tui-create-json/ANTI_PATTERNS.md
  • skills/ralph-tui-create-json/EXAMPLES.md
  • skills/ralph-tui-create-json/SKILL.md
  • skills/ralph-tui-prd/EXAMPLES.md
  • skills/ralph-tui-prd/SKILL.md

7. **Acceptance criteria**: Story criteria + quality gates appended
8. **UI stories**: Also append UI-specific gates (browser verification)
3. **Dependencies**: Schema/database → backend → UI → integration (use `br dep add` after creating beads)
4. **Priority**: Based on dependency order, then document order (0=critical, 2=medium, 4=backlog)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# Search for beads-rust priority references in the codebase
rg -i "priority|beads-rust|br create" --type md --type txt -A 3 -B 3

Repository: subsy/ralph-tui

Length of output: 34176


🏁 Script executed:

# Check the specific file mentioned in the review
cat -n skills/ralph-tui-create-beads-rust/SKILL.md | sed -n '60,125p'

Repository: subsy/ralph-tui

Length of output: 2772


🏁 Script executed:

# Look for any configuration or reference files related to beads-rust
fd -e toml -e yaml -e json -e md | xargs rg -l "beads-rust\|priority" 2>/dev/null | head -20

Repository: subsy/ralph-tui

Length of output: 41


🌐 Web query:

beads-rust "br create" priority values documentation

💡 Result:

For beads-rust (br) the br create priority is an integer on a 0–4 scale (lower number = higher priority):

  • 0 = Critical
  • 1 = High
  • 2 = Medium (default)
  • 3 = Low
  • 4 = Backlog [1][2]

Example usage:

  • br create --title "Fix prod crash" --type bug --priority 0 [1][2]

Sources: [1] [2]


🌐 Web query:

beads-rust priority 0-4 critical medium backlog meaning

💡 Result:

In beads-rust (the Beads tracker implementation in Rust), priority is a 0–4 scale where lower numbers mean “do sooner”:

  • 0 = Critical
  • 1 = High
  • 2 = Medium (default)
  • 3 = Low
  • 4 = Backlog (defer/maybe never) [1], [2], [3]

So “critical / medium / backlog” correspond to P0 / P2 / P4, respectively. [1], [2], [3]

How it’s used for picking work: tasks are typically sorted by priority ascending (0 first). [1]

Sources: [1] [2] [3]


Command example at line 70 omits critical priority value.

Line 70 shows --priority=[1-4] but beads-rust accepts 0–4 (where 0 = critical). This means users cannot set tasks as critical when creating beads. Update to --priority=[0-4] to match the complete priority mapping shown at line 115 and align with beads-rust semantics.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/ralph-tui-create-beads-rust/SKILL.md` at line 115, The command example
currently documents an incorrect priority range --priority=[1-4]; update the
example to --priority=[0-4] so it matches beads-rust's accepted values (0–4,
with 0 = critical) and the priority mapping described elsewhere in SKILL.md;
ensure any mention of the flag in examples or usage text uses the full range
(--priority=[0-4]) to avoid disallowing critical tasks.

7. **Acceptance criteria**: Story criteria + quality gates appended
8. **UI stories**: Also append UI-specific gates (browser verification)
3. **Dependencies**: Schema/database → backend → UI → integration (use `bd dep add` after creating beads)
4. **Priority**: Based on dependency order, then document order (0=critical, 2=medium, 4=backlog)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

cat -n skills/ralph-tui-create-beads/SKILL.md | sed -n '65,120p'

Repository: subsy/ralph-tui

Length of output: 2487


🏁 Script executed:

find skills -type f \( -name "SKILL.md" -o -name "EXAMPLES.md" -o -name "REFERENCE.md" -o -name "ANTI_PATTERNS.md" \) -exec grep -l "priority" {} \;

Repository: subsy/ralph-tui

Length of output: 309


🏁 Script executed:

rg -n "priority|--priority" skills/ -t md --max-count 20

Repository: subsy/ralph-tui

Length of output: 2536


🏁 Script executed:

grep -n "priority" skills/ralph-tui-create-beads/EXAMPLES.md

Repository: subsy/ralph-tui

Length of output: 113


🏁 Script executed:

cat -n skills/ralph-tui-create-beads/SKILL.md | sed -n '110,130p'

Repository: subsy/ralph-tui

Length of output: 889


🏁 Script executed:

cat -n skills/ralph-tui-create-beads-rust/SKILL.md | sed -n '110,130p'

Repository: subsy/ralph-tui

Length of output: 889


Priority scale in conversion rules contradicts the command specification and usage examples.

Line 70 documents --priority=[1-4] as the valid range, but line 115 maps priority to 0=critical, 2=medium, 4=backlog—values 0 and inconsistent numbering that falls outside [1-4]. The EXAMPLES.md file demonstrates actual usage with --priority=1, --priority=2, and --priority=3. Correct line 115 to align with the [1-4] range; suggest 1=critical, 2=medium, 3–4=backlog based on documented examples. This issue exists identically in both skills/ralph-tui-create-beads/SKILL.md and skills/ralph-tui-create-beads-rust/SKILL.md.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/ralph-tui-create-beads/SKILL.md` at line 115, Update the priority
mapping line that currently reads "Priority: Based on dependency order, then
document order (0=critical, 2=medium, 4=backlog)" so it aligns with the
documented --priority=[1-4] range and examples; replace the incorrect 0/2/4
mapping with a mapping such as "1=critical, 2=medium, 3–4=backlog" in both
SKILL.md and SKILL.md for the Rust variant (look for the "Priority:" sentence in
each file and adjust the numeric mapping accordingly).

2. Backend logic (depends on schema)
3. UI components (depends on backend)
4. Integration/polish (depends on UI)
**Correct dependency order:** Schema/database → backend → UI → integration.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Dependency order wording is now inconsistent with the checklist.

Line 115 includes integration, but the checklist later still reflects schema → backend → UI only. Please align both to one canonical order to avoid mixed guidance.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/ralph-tui-create-json/SKILL.md` at line 115, Update the
dependency-order text so both places use the same canonical sequence; change the
"Correct dependency order:" line that currently reads "Schema/database → backend
→ UI → integration" to match the checklist's order "schema → backend → UI" (or
vice versa if you prefer to include integration everywhere), and ensure the
checklist and the "Correct dependency order:" header both use identical
capitalization and arrow formatting; update the symbol strings in SKILL.md (the
"Correct dependency order:" line and the checklist block) to be consistent.

@subsy
Copy link
Owner

subsy commented Feb 25, 2026

Hey @popey thanks - will take a look at this! I know a lot of the folks from Tessl as I used to work with them at Snyk :)

@popey
Copy link
Author

popey commented Feb 25, 2026

Hahah! I can't get away from the Snykers! :D

@vercel
Copy link

vercel bot commented Mar 13, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
ralph-tui Ready Ready Preview, Comment Mar 13, 2026 5:03pm

Request Review

subsy pushed a commit that referenced this pull request Mar 13, 2026
Reduce redundancy across all four SKILL.md files while keeping all
critical content inline (worked examples, anti-patterns, reference
tables). Agents only read SKILL.md at runtime, so splitting content
into companion files would make it invisible during execution.

Changes:
- Merge "Story Ordering" into "Dependencies" section (was redundant)
- Condense verbose ralph-tui behavior lists to single sentences
- Tighten acceptance criteria guidance (keep good/bad, drop repetition)
- Trim checklists to essentials (remove items that repeat body content)
- Keep all worked examples, anti-patterns, and br/bd comparison inline

Inspired by PR #339 (popey) which identified the redundancy issues.
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.

2 participants