🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
245 lines
7.5 KiB
Markdown
245 lines
7.5 KiB
Markdown
# Skills Comparison: Current vs Refactored
|
|
|
|
**Date**: 2025-12-21
|
|
|
|
## Summary
|
|
|
|
| Metric | Current | Refactored | Change |
|
|
|--------|---------|------------|--------|
|
|
| Total Skills | 8 | 18 | +125% |
|
|
| Monolithic Skills | 2 | 0 | -100% |
|
|
| Single-purpose Skills | 6 | 18 | +200% |
|
|
| SEO Skills | 1 (6,049 LOC) | 9 (decomposed) | Modular |
|
|
| GTM Skills | 1 | 2 | Separated |
|
|
|
|
---
|
|
|
|
## Current Active Skills (Claude Code)
|
|
|
|
These skills are currently registered and accessible via `/skill-name`:
|
|
|
|
| # | Skill Name | Purpose | Issues |
|
|
|---|------------|---------|--------|
|
|
| 1 | `doc-generator` | PDF/PPT generation | OK |
|
|
| 2 | `notion-organizer` | Notion workspace management | OK |
|
|
| 3 | `ourdigital-gtm-manager` | GTM management + dataLayer injection | Monolithic |
|
|
| 4 | `ourdigital-seo-audit` | Comprehensive SEO audit | **Monolithic (6,049 LOC)** |
|
|
| 5 | `seo-manager` | SEO management agent | OK |
|
|
| 6 | `skill-creator` | Claude skill creation wizard | OK |
|
|
| 7 | `test` | Python test runner | Generic utility |
|
|
| 8 | `lint` | Python linter | Generic utility |
|
|
|
|
### Problems with Current Skills
|
|
|
|
1. **ourdigital-seo-audit**: 6,049 lines across 11 scripts - too heavy, does too many things
|
|
2. **ourdigital-gtm-manager**: Combines audit + tag generation - should be split
|
|
3. **No clear separation**: Hard to know which skill to use for specific tasks
|
|
|
|
---
|
|
|
|
## Refactored Skills (New Structure)
|
|
|
|
### 01-09: General Automation
|
|
|
|
| # | Skill | Purpose | LOC | Status |
|
|
|---|-------|---------|-----|--------|
|
|
| 01 | `notion-organizer` | Notion workspace management | ~600 | ✅ Ready |
|
|
| 02 | `notion-data-migration` | Database schema migration | ~400 | ✅ Ready |
|
|
|
|
### 10-19: SEO Skills (Decomposed from seo-audit-agent)
|
|
|
|
| # | Skill | Purpose | Source Scripts | Status |
|
|
|---|-------|---------|----------------|--------|
|
|
| 10 | `seo-technical-audit` | robots.txt, sitemap validation | robots_checker, sitemap_* | ✅ Ready |
|
|
| 11 | `seo-on-page-audit` | Meta tags, headings, links | page_analyzer | ✅ Ready |
|
|
| 12 | `seo-local-audit` | NAP, GBP, citations | Guidance-only | ✅ Ready |
|
|
| 13 | `seo-schema-validator` | JSON-LD validation | schema_validator | ✅ Ready |
|
|
| 14 | `seo-schema-generator` | Schema markup generation | schema_generator | ✅ Ready |
|
|
| 15 | `seo-core-web-vitals` | PageSpeed metrics | pagespeed_client | ✅ Ready |
|
|
| 16 | `seo-search-console` | GSC data retrieval | gsc_client | ✅ Ready |
|
|
| 17 | `seo-gateway-architect` | Keyword strategy planning | keyword_analyzer | ✅ Ready |
|
|
| 18 | `seo-gateway-builder` | Gateway page generation | generate_pages | ✅ Ready |
|
|
|
|
### 20-29: GTM/GA Skills
|
|
|
|
| # | Skill | Purpose | Status |
|
|
|---|-------|---------|--------|
|
|
| 20 | `gtm-audit` | Lightweight GTM audit only | ✅ Ready |
|
|
| 21 | `gtm-manager` | Full GTM management + dataLayer injection | ✅ Ready |
|
|
|
|
### 30-39: OurDigital Skills
|
|
|
|
| # | Skill | Purpose | Status |
|
|
|---|-------|---------|--------|
|
|
| 30 | `ourdigital-designer` | Blog featured image prompts | ✅ Ready |
|
|
| 31 | `ourdigital-research` | Research → Blog export | ✅ Ready |
|
|
| 32 | `ourdigital-presentation` | Notion → PowerPoint workflow | ✅ Ready |
|
|
|
|
### 40-49: Jamie Clinic Skills
|
|
|
|
| # | Skill | Purpose | Status |
|
|
|---|-------|---------|--------|
|
|
| 40 | `jamie-brand-editor` | Content **generation** | ✅ Ready |
|
|
| 41 | `jamie-brand-audit` | Content **review/evaluation** | ✅ Ready |
|
|
|
|
---
|
|
|
|
## Key Improvements
|
|
|
|
### 1. SEO Decomposition
|
|
|
|
**Before (Monolithic)**:
|
|
```
|
|
seo-audit-agent/
|
|
├── scripts/
|
|
│ ├── base_client.py (207 LOC)
|
|
│ ├── full_audit.py (497 LOC)
|
|
│ ├── gsc_client.py (409 LOC)
|
|
│ ├── notion_reporter.py (951 LOC)
|
|
│ ├── page_analyzer.py (569 LOC)
|
|
│ ├── pagespeed_client.py (452 LOC)
|
|
│ ├── robots_checker.py (540 LOC)
|
|
│ ├── schema_generator.py (490 LOC)
|
|
│ ├── schema_validator.py (498 LOC)
|
|
│ ├── sitemap_crawler.py (969 LOC)
|
|
│ └── sitemap_validator.py (467 LOC)
|
|
└── Total: 6,049 LOC in ONE skill
|
|
```
|
|
|
|
**After (Modular)**:
|
|
```
|
|
10-seo-technical-audit/ → robots + sitemap
|
|
11-seo-on-page-audit/ → page analysis
|
|
12-seo-local-audit/ → local SEO (guidance)
|
|
13-seo-schema-validator/ → schema validation
|
|
14-seo-schema-generator/ → schema generation
|
|
15-seo-core-web-vitals/ → PageSpeed
|
|
16-seo-search-console/ → GSC data
|
|
17-seo-gateway-architect/ → keyword strategy
|
|
18-seo-gateway-builder/ → page generation
|
|
|
|
→ 9 focused skills, each ~400-600 LOC max
|
|
```
|
|
|
|
### 2. GTM Separation
|
|
|
|
**Before**:
|
|
```
|
|
ourdigital-gtm-manager/ → Everything in one
|
|
```
|
|
|
|
**After**:
|
|
```
|
|
20-gtm-audit/ → Audit only (lightweight)
|
|
21-gtm-manager/ → Full management + injection
|
|
```
|
|
|
|
### 3. Jamie Clinic Clarity
|
|
|
|
**Before**:
|
|
```
|
|
jamie-brand-editor/ → Unclear if create or review
|
|
jamie-brand-guardian/ → Confusing name
|
|
```
|
|
|
|
**After**:
|
|
```
|
|
40-jamie-brand-editor/ → Content GENERATION
|
|
41-jamie-brand-audit/ → Content REVIEW
|
|
```
|
|
|
|
### 4. Dual-Platform Support
|
|
|
|
Each skill now has:
|
|
```
|
|
skill-name/
|
|
├── code/ → Claude Code (CLI)
|
|
│ ├── CLAUDE.md
|
|
│ └── scripts/
|
|
└── desktop/ → Claude Desktop
|
|
├── SKILL.md
|
|
└── references/
|
|
```
|
|
|
|
---
|
|
|
|
## Migration Path
|
|
|
|
### Skills to Keep (No Change)
|
|
|
|
| Current | Status |
|
|
|---------|--------|
|
|
| `doc-generator` | Keep as-is |
|
|
| `skill-creator` | Keep as-is |
|
|
| `test` | Keep as-is |
|
|
| `lint` | Keep as-is |
|
|
|
|
### Skills to Replace
|
|
|
|
| Current | Replace With | Notes |
|
|
|---------|--------------|-------|
|
|
| `ourdigital-seo-audit` | `10-16` (7 skills) | Full decomposition |
|
|
| `ourdigital-gtm-manager` | `20-gtm-audit` + `21-gtm-manager` | Separated roles |
|
|
| `notion-organizer` | `01-notion-organizer` | Refactored structure |
|
|
| `seo-manager` | `17-seo-gateway-architect` | More focused |
|
|
|
|
### New Skills to Add
|
|
|
|
| New Skill | Purpose |
|
|
|-----------|---------|
|
|
| `02-notion-data-migration` | Schema migration |
|
|
| `18-seo-gateway-builder` | Content generation |
|
|
| `30-ourdigital-designer` | Image prompts |
|
|
| `31-ourdigital-research` | Research export |
|
|
| `32-ourdigital-presentation` | Slides generation |
|
|
| `40-jamie-brand-editor` | Content creation |
|
|
| `41-jamie-brand-audit` | Content review |
|
|
|
|
---
|
|
|
|
## Recommended Actions
|
|
|
|
1. **Backup current skills**: Copy current ~/.claude/commands/ before changes
|
|
|
|
2. **Install refactored skills**: Link or copy CLAUDE.md files to project
|
|
|
|
3. **Update skill references**: Update any automation scripts that reference old skill names
|
|
|
|
4. **Test each skill**: Run `python script.py --help` for each script
|
|
|
|
5. **Archive old skills**: Move deprecated skills to `_archive/`
|
|
|
|
---
|
|
|
|
## Directory Structure After Migration
|
|
|
|
```
|
|
~/.claude/commands/
|
|
├── lint.md (keep)
|
|
└── test.md (keep)
|
|
|
|
project/.claude/commands/
|
|
├── 01-notion-organizer.md
|
|
├── 10-seo-technical-audit.md
|
|
├── 11-seo-on-page-audit.md
|
|
├── ...
|
|
├── 20-gtm-audit.md
|
|
├── 21-gtm-manager.md
|
|
├── 30-ourdigital-designer.md
|
|
├── ...
|
|
├── 40-jamie-brand-editor.md
|
|
└── 41-jamie-brand-audit.md
|
|
```
|
|
|
|
---
|
|
|
|
## Conclusion
|
|
|
|
The refactoring achieves:
|
|
|
|
1. **"One thing done well"**: Each skill has a single clear purpose
|
|
2. **Reduced complexity**: Max ~600 LOC per skill vs 6,049 LOC monolith
|
|
3. **Clear naming**: `audit` vs `manager`, `editor` vs `audit`
|
|
4. **Better discoverability**: Numbered categories (10-19 = SEO, 20-29 = GTM, etc.)
|
|
5. **Platform separation**: `code/` for CLI, `desktop/` for Desktop app
|