dotCMS / dotCMS/core

feat(skills): add skill-doctor skill for feedback, override management, and optimization

Open
#34,857 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

stale
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

Summary

Add a new skill-doctor skill to .claude/skills/skill-doctor/ that provides structured feedback reporting, local override management, and quality optimization for repository skills.

Problem

Skills checked into .claude/skills/ can have issues (invalid commands, wrong assumptions, stale information) but there is no structured way to:

  1. Report issues with centralized tracking
  2. Safely iterate on fixes locally before committing
  3. Track when local overrides diverge from the repo version
  4. Deliver actionable feedback to maintainers without context-switching
  5. Quickly flag a problem without going through a full investigation workflow

Solution

A single skill with six modes:

Mode Command Purpose
Feedback feedback [skill] "message" Quick lightweight note — no investigation required
Diagnose <skill-name> or empty Investigate issues, check for duplicates, scrub PII, deliver reports
Manage --manage, clone, diff, sync, revert Local override lifecycle with .skill-origin.json tracking
Optimize --optimize <skill> Analyze quality against writing-skills best practices
Deliver report, gist, pr Submit feedback via GitHub Discussion, Gist, or PR
Resolve resolve <skill> Mark reports as resolved with fix PR, clean up threads
Key Features
  • Two feedback paths: Quick feedback mode for fast notes; full diagnose mode for investigated reports with root cause analysis
  • Conversation-aware feedback: feedback "message" (no skill name) infers the skill from conversation context
  • Duplicate detection: Checks existing Discussion comments before creating new reports; offers upvote or add-context instead
  • Investigation-first (diagnose only): Requires root cause analysis and suggested fix before allowing report submission
  • Quality gate (diagnose only): Reports must include confirmed reproducible problem, root cause, suggested fix, and skill version commit SHA
  • PII scrubbing: Auto-redacts tokens, home paths (Unix + Windows), emails, IPs from report body content
  • Prerequisites check: Validates gh auth, repo access, and Slack MCP before delivery with guided remediation
  • Commit tracking: Reports include the exact commit SHA that introduced/last changed the skill
  • Resolution workflow: Links fix PRs back to open reports, posts resolution summaries to Slack
Architecture
  • SKILL.md (618 words) — Routing table, compressed mode summaries, common mistakes, example workflow
  • reference.md (2,580 words) — Detailed procedures loaded on-demand via Read tool
Delivery Pipeline
  1. GitHub Discussions on dotCMS/core (one thread per skill in "Skill Feedback" category)
  2. Slack notification to #log-skill-feedback with link to Discussion
Prerequisites (already set up)
  • "Skill Feedback" discussion category on dotCMS/core
  • #log-skill-feedback Slack channel

Files

  • NEW .claude/skills/skill-doctor/SKILL.md — routing + mode summaries (618 words)
  • NEW .claude/skills/skill-doctor/reference.md — detailed procedures (2,580 words)

Test Plan

All tests executed and passing:

  • --manage — lists all repo skills with correct status (tracked overrides, manual overrides, up-to-date)
  • clone — copies skill, creates valid .skill-origin.json with matching SHA
  • diff — shows unified diff excluding .skill-origin.json
  • revert — shows diff, warns, requires name confirmation, deletes cleanly
  • Diagnose flow — full pipeline: validation, classification, investigation, PII scrub (8 patterns), developer review
  • Duplicate detection — finds existing Discussion thread, offers upvote/add-context/report-anyway
  • --optimize — correctly identifies frontmatter issues, token efficiency, missing sections, stale references
  • Prerequisite checks — verifies gh auth, repo access, Discussion scopes, Skill Feedback category

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the new .claude/skills/skill-doctor/SKILL.md routing summary and reference.md procedures. Exercise the listed manage, clone, diff, revert, diagnose, duplicate-detection, optimize, and prerequisite flows, checking that override tracking, PII scrubbing, delivery checks, and resolution behavior match the specification. Done means both files support all six modes and the test plan passes.

Written by the indexing model from the issue text.

Assessment

Tech stack
github
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.