Skip to content

feat: add module-organizer and refactoring skills#7

Merged
royosherove merged 1 commit into
mainfrom
feat/add-custom-skills
May 8, 2026
Merged

feat: add module-organizer and refactoring skills#7
royosherove merged 1 commit into
mainfrom
feat/add-custom-skills

Conversation

@royosherove
Copy link
Copy Markdown
Member

Two custom skills for code quality discipline.

- module-organizer: source tree layout discipline, placement checklist, anti-patterns
- refactoring: Fowler/Feathers/Martin methodology, smell catalog, safe workflow
  - references/feathers-techniques.md: 25 dependency-breaking techniques
  - references/smell-priority.md: hotspot analysis, priority score formula
@royosherove royosherove merged commit 9e85b95 into main May 8, 2026
3 checks passed
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 8, 2026

Claude finished @royosherove's task in 1m 21s —— View job


PR Review

  • Gather context and read changed files
  • Analyze module-organizer/SKILL.md
  • Analyze refactoring/SKILL.md
  • Analyze refactoring/references/feathers-techniques.md
  • Analyze refactoring/references/smell-priority.md
  • Post review summary

Overall Assessment

Both skills are well-structured, practically useful, and grounded in authoritative references (Feathers, Fowler, Martin). The markdown formatting, tables, checklists, and "When NOT to" sections are all strong. A few issues worth addressing:


Issues Found

module-organizer/SKILL.md — Project-Specific Coupling

The skill is heavily tied to one project's architecture. The "Core Principle" test ("If someone asks 'where does Telegram pairing live?'") and example paths (src/agents/pi/, src/transports/telegram/, naming conventions pi-adapter.ts, kiro-adapter.ts) reflect a specific Telegram bot / AI agent codebase, not a general-purpose skill.

This limits reusability for any team that adopts this skill for a different project.

Suggestion: Generalize examples (e.g., src/integrations/slack/ instead of src/transports/telegram/), or add a note at the top that the domain table and examples are templates to be adapted per project. The core checklist (checks 1–10) is genuinely reusable — it's the concrete examples that are project-specific.

Fix this →


refactoring/references/feathers-techniques.md — Technique Count Discrepancy

The file header states "25 dependency-breaking techniques" and refactoring/SKILL.md also references "all 25 Feathers dependency-breaking techniques," but the reference file lists 24 techniques (alphabetically: Adapt Parameter → Text Redefinition). One technique is missing.

Fix this →


refactoring/references/smell-priority.mdawk Portability Issue

The hotspot script on line 53 uses array-of-arrays syntax (a[$0][author]=1), which requires GNU awk (gawk) and fails silently on macOS default awk (/usr/bin/awk):

git log ... | awk '/^AUTHOR:/{author=...} ... {a[$0][author]=1} ...'

On macOS, this produces no output or a parse error. A workaround is to use a concatenated key a[$0 SUBSEP author] which is POSIX awk compatible.

Fix this →


refactoring/SKILL.mdgit reset --hard Without Safety Warning

Line 228 recommends: "If tests break, git reset --hard and try a smaller step" — without warning that this discards all unstaged changes. A developer working with staged-but-not-committed edits could lose work.

Suggestion: Add: "(stash or commit work-in-progress first)" inline.

Fix this →


Minor Notes

  • module-organizer/SKILL.md frontmatter description says "TypeScript projects" but the checklist logic applies to any module-based language. Minor wording nit.
  • The refactoring/SKILL.md smell catalog lists 12 smells split across 3 priority levels — the numbering (1–12 continuous across sections) is a nice touch for cross-referencing with smell-priority.md. No issue, just worth keeping consistent if smells are added later.
  • Both skills end with the same closing line pattern ("X is investment. Invest where...") — intentional parallel structure, works well.

Summary

Solid additions overall. The refactoring skill is ready to use as-is. The main actionable items are: generalize the module-organizer examples, fix the Feathers technique count, fix the awk portability bug, and add a git reset safety note.

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