Skip to content

feat: improve 5 lowest-scoring skills via tessl review#1

Closed
rohan-tessl wants to merge 1 commit into
bejranonda:mainfrom
rohan-tessl:improve/skill-review-optimization
Closed

feat: improve 5 lowest-scoring skills via tessl review#1
rohan-tessl wants to merge 1 commit into
bejranonda:mainfrom
rohan-tessl:improve/skill-review-optimization

Conversation

@rohan-tessl
Copy link
Copy Markdown

@rohan-tessl rohan-tessl commented Mar 30, 2026

Hey @bejranonda 👋

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

image

Here's the full before/after:

Skill Before After Change
decision-frameworks 16% 64% +48%
group-collaboration 16% 70% +54%
plugin-validation (was claude-plugin-validation) 17% 71% +54%
predictive-skill-loading 17% 59% +42%
contextual-pattern-learning 18% 68% +50%

This PR is intentionally scoped to the 5 lowest-scoring skills to keep it reviewable — more skills can be improved in follow-ups or via automated review on future PRs.

Changes made

All 5 skills:

  • Fixed name fields to use kebab-case (required by skill validation — "Decision Frameworks" → "decision-frameworks", etc.)
  • Improved description fields with concrete trigger terms, "Use when..." clauses, and specific actions
  • Removed unknown frontmatter keys (version, category, tags, related_skills) that triggered validation warnings
  • Reformatted descriptions as quoted strings

decision-frameworks:

  • Fixed name from "Decision Frameworks" to "decision-frameworks"
  • Replaced verbose decision explainability section and example output (~100 lines) with a concise summary
  • Trimmed success metrics and references sections

group-collaboration:

  • Fixed name from "Group Collaboration" to "group-collaboration"
  • Removed verbose four-tier architecture recap (duplicated from other docs)
  • Replaced 90-line integration example with concise success metrics summary

plugin-validation (renamed from claude-plugin-validation):

  • Renamed from "claude-plugin-validation" to "plugin-validation" (reserved word "claude" in name blocked validation)
  • Added a concise overview section
  • Replaced verbose implementation guidelines and integration sections with a compact validation workflow

predictive-skill-loading:

  • Fixed name from "Predictive Skill Loading" to "predictive-skill-loading"
  • Replaced verbose continuous improvement, benefits summary, and version history sections with compact summaries

contextual-pattern-learning:

  • Complete rewrite: replaced ~530-line theoretical design document with a focused ~80-line actionable guide
  • Added concrete workflow steps, similarity scoring formula, pattern transfer strategy table
  • Removed all pseudocode with undefined functions, replaced with clear specifications

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-tessl - if you hit any snags.

Thanks in advance 🙏

Summary by CodeRabbit

Release Notes

  • Documentation
    • Renamed and streamlined plugin validation skill with consolidated validation checklist
    • Simplified contextual pattern learning documentation focusing on core algorithms and use-cases
    • Updated decision frameworks documentation with clearer execution guidance
    • Restructured group collaboration skill with refined handoff protocol descriptions
    • Condensed predictive skill loading documentation for improved clarity

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 30, 2026

📝 Walkthrough

Walkthrough

Five skill definition files underwent documentation consolidation. Changes involve condensing verbose descriptions into concise overviews, restructuring frontmatter metadata, removing detailed sections and code examples, and updating references to supporting library modules. No code logic or public API declarations were altered.

Changes

Cohort / File(s) Summary
Skill Documentation Consolidation
skills/contextual-pattern-learning/SKILL.md, skills/decision-frameworks/SKILL.md, skills/group-collaboration/SKILL.md, skills/predictive-skill-loading/SKILL.md
Condensed lengthy "Overview," "When to Apply," and workflow sections into single-paragraph descriptions; removed detailed code examples, integration patterns, and extensive reference sections; updated metadata and cross-references to library modules (lib/decision_explainer.py, lib/agent_performance_tracker.py, lib/group_collaboration_system.py).
Plugin Validation Skill Reframe
skills/claude-plugin-validation/SKILL.md
Renamed skill scope, replaced detailed "Overview/Implementation Guidelines" with a concrete "Validation Workflow" checklist covering JSON/YAML/UTF-8 validation, directory structure checks, and path compatibility; streamlined metadata and added error severity mapping.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 Words trimmed with careful paws,
Skills refined without a clause,
Verbose prose to bullets clean,
Sharpest documentation ever seen!
Concise and focused, hopping bright,
Each skill now perfectly tight! ✨

🚥 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 describes the main change: improvements to five lowest-scoring skills based on a tessl review. It is concise, specific, and clearly summarizes the primary objective of the changeset.
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

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.

@rohan-tessl rohan-tessl marked this pull request as ready for review March 30, 2026 10:55
Copy link
Copy Markdown

@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/claude-plugin-validation/SKILL.md`:
- Around line 315-317: Update the SKILL.md text to match the actual validator
behavior by replacing the incorrect severity taxonomy (remove or correct the
"Info" severity entry) and updating the validator reference from
lib/plugin_validator.py to the real implementation file
lib/claude_plugin_validator.py; ensure the documented severities (Critical,
Warning, etc.) exactly reflect what claude_plugin_validator.py emits and add a
short note pointing to lib/claude_plugin_validator.py for implementation
details.

In `@skills/decision-frameworks/SKILL.md`:
- Line 617: The documented explanation schema in SKILL.md is out of sync with
lib/decision_explainer.py:create_explanation(); update the schema so the keys
match the function's output: replace `why_chosen` with `why_this_decision`,
replace `analogy` with `human_analogy`, and add the `supporting_evidence` key
(keep the other keys intact) so the SKILL.md explanation output structure
matches create_explanation() exactly.

In `@skills/group-collaboration/SKILL.md`:
- Around line 579-586: Remove the duplicate "## Success Metrics" block from
SKILL.md and update the remaining metrics example to use the exact keys returned
by get_group_collaboration_stats() (refer to that function in
lib/group_collaboration_system.py) so the doc and API match; specifically delete
the second header and its list, then replace the example keys (e.g.,
communication_success_rate, avg_feedback_cycle_seconds, knowledge_reuse_rate)
with the actual keys emitted by get_group_collaboration_stats() and ensure the
text references "Track via get_group_collaboration_stats()" only once.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4de26a52-fa76-472d-b58a-cf29975516ba

📥 Commits

Reviewing files that changed from the base of the PR and between a3c2d0c and f433619.

📒 Files selected for processing (5)
  • skills/claude-plugin-validation/SKILL.md
  • skills/contextual-pattern-learning/SKILL.md
  • skills/decision-frameworks/SKILL.md
  • skills/group-collaboration/SKILL.md
  • skills/predictive-skill-loading/SKILL.md

Comment on lines +315 to +317
**Error severity**: Critical (blocks install) → Warning (non-blocking) → Info (optimization suggestions).

**Version**: 1.0.0
**Last Updated**: 2025-10-23
**Compatible With**: Claude Code Plugin System v2.0+ No newline at end of file
Complements `lib/plugin_validator.py` with plugin-system-specific rules, installation failure prevention, and version compatibility checking. No newline at end of file
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Severity taxonomy and validator reference do not match implementation.

Line 315 documents an Info severity that the validator implementation does not emit, and Line 317 references lib/plugin_validator.py, which is a stub, while the actual logic is in lib/claude_plugin_validator.py.

Proposed wording fix
-**Error severity**: Critical (blocks install) → Warning (non-blocking) → Info (optimization suggestions).
-
-Complements `lib/plugin_validator.py` with plugin-system-specific rules, installation failure prevention, and version compatibility checking.
+**Error severity**: Critical (installation blockers) → Warning (non-blocking).
+
+Complements `lib/claude_plugin_validator.py` with plugin-system-specific rules, installation failure prevention, and version compatibility checking.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
**Error severity**: Critical (blocks install) → Warning (non-blocking) → Info (optimization suggestions).
**Version**: 1.0.0
**Last Updated**: 2025-10-23
**Compatible With**: Claude Code Plugin System v2.0+
\ No newline at end of file
Complements `lib/plugin_validator.py` with plugin-system-specific rules, installation failure prevention, and version compatibility checking.
**Error severity**: Critical (installation blockers) → Warning (non-blocking).
Complements `lib/claude_plugin_validator.py` with plugin-system-specific rules, installation failure prevention, and version compatibility checking.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/claude-plugin-validation/SKILL.md` around lines 315 - 317, Update the
SKILL.md text to match the actual validator behavior by replacing the incorrect
severity taxonomy (remove or correct the "Info" severity entry) and updating the
validator reference from lib/plugin_validator.py to the real implementation file
lib/claude_plugin_validator.py; ensure the documented severities (Critical,
Warning, etc.) exactly reflect what claude_plugin_validator.py emits and add a
short note pointing to lib/claude_plugin_validator.py for implementation
details.

### Analogy
Like reorganizing a messy closet by sorting items into clearly labeled boxes (modular refactoring) rather than just pushing things around (incremental) or building an entirely new closet system (complete rewrite). The sorting approach takes reasonable time, dramatically improves organization, and can be done safely one section at a time.
```
**Explanation output structure**: `why_chosen`, `why_not_alternatives`, `trade_offs`, `confidence_factors`, `user_alignment`, `analogy`.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Explanation schema keys are incorrect for create_explanation().

Line 617 lists why_chosen and analogy, but lib/decision_explainer.py:create_explanation() returns why_this_decision and human_analogy (plus supporting_evidence).

Proposed correction
-**Explanation output structure**: `why_chosen`, `why_not_alternatives`, `trade_offs`, `confidence_factors`, `user_alignment`, `analogy`.
+**Explanation output structure**: `why_this_decision`, `why_not_alternatives`, `trade_offs`, `confidence_factors`, `user_alignment`, `human_analogy`, `supporting_evidence`.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
**Explanation output structure**: `why_chosen`, `why_not_alternatives`, `trade_offs`, `confidence_factors`, `user_alignment`, `analogy`.
**Explanation output structure**: `why_this_decision`, `why_not_alternatives`, `trade_offs`, `confidence_factors`, `user_alignment`, `human_analogy`, `supporting_evidence`.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/decision-frameworks/SKILL.md` at line 617, The documented explanation
schema in SKILL.md is out of sync with
lib/decision_explainer.py:create_explanation(); update the schema so the keys
match the function's output: replace `why_chosen` with `why_this_decision`,
replace `analogy` with `human_analogy`, and add the `supporting_evidence` key
(keep the other keys intact) so the SKILL.md explanation output structure
matches create_explanation() exactly.

Comment on lines +579 to +586
## Success Metrics

**Related Systems**:
- `lib/group_collaboration_system.py` - Communication tracking
- `lib/agent_feedback_system.py` - Feedback management
- `lib/inter_group_knowledge_transfer.py` - Knowledge sharing
- `lib/group_specialization_learner.py` - Specialization tracking
- `lib/agent_performance_tracker.py` - Performance metrics
- Communication flow rate > 95%
- Feedback loop cycle time < 5 minutes
- Knowledge reuse rate > 60%
- Execution success rate > 90% on first attempt

**Related Documentation**:
- `docs/FOUR_TIER_ARCHITECTURE.md` - Complete architecture design
- `docs/FOUR_TIER_ENHANCEMENTS.md` - Advanced features
- `agents/orchestrator.md` - Orchestrator coordination logic
Track via `lib/group_collaboration_system.py` using `get_group_collaboration_stats()`.
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

Remove duplicate Success Metrics block and align stats keys with the real API.

Line 579 introduces a second ## Success Metrics section while the earlier section still contains a stats example with keys not returned by lib/group_collaboration_system.py:get_group_collaboration_stats() (e.g., communication_success_rate, avg_feedback_cycle_seconds, knowledge_reuse_rate). This leaves conflicting guidance in one doc.

Suggested cleanup
-## Success Metrics
-
-- Communication flow rate > 95%
-- Feedback loop cycle time < 5 minutes
-- Knowledge reuse rate > 60%
-- Execution success rate > 90% on first attempt
-
-Track via `lib/group_collaboration_system.py` using `get_group_collaboration_stats()`.
+## Success Metrics
+
+- Communication flow rate > 95%
+- Feedback loop cycle time < 5 minutes
+- Knowledge reuse rate > 60%
+- Execution success rate > 90% on first attempt
+
+Track via `lib/group_collaboration_system.py` using `get_group_collaboration_stats()`.
+If you keep a code snippet, use fields that actually exist in the return payload
+(for example `total_communications`, `successful_collaborations`, `flow_effectiveness`, `knowledge_transfers`).
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/group-collaboration/SKILL.md` around lines 579 - 586, Remove the
duplicate "## Success Metrics" block from SKILL.md and update the remaining
metrics example to use the exact keys returned by
get_group_collaboration_stats() (refer to that function in
lib/group_collaboration_system.py) so the doc and API match; specifically delete
the second header and its list, then replace the example keys (e.g.,
communication_success_rate, avg_feedback_cycle_seconds, knowledge_reuse_rate)
with the actual keys emitted by get_group_collaboration_stats() and ensure the
text references "Track via get_group_collaboration_stats()" only once.

@bejranonda
Copy link
Copy Markdown
Owner

Hey @rohan-tessl — thanks for taking the time to run these skills through review and submit this PR! Really appreciate the contribution.

We've actually been doing a major modernization pass on the plugin (v8.1.0 and v8.2.0 just shipped) that already picked up several of the improvements you identified:

  • All 5 skill description: fields have been updated with more specific, trigger-aware text
  • Non-standard frontmatter keys (category, tags, related_skills) have been stripped
  • contextual-pattern-learning was already trimmed from 532 → 79 lines

The remaining 3 bloated skills (decision-frameworks, group-collaboration, predictive-skill-loading) are on our list for a moderate trim — though we'll keep them a bit more substantial than ~15 lines since agents reference the detailed content during execution.

Closing this one since the changes have diverged, but the analysis was genuinely useful for prioritizing our cleanup. Thanks again!

@bejranonda bejranonda closed this Apr 11, 2026
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