curiositech/code-necromancer
Systematic framework for resurrecting and modernizing legacy codebases through archaeology, resurrection, and rejuvenation phases. Activate on "legacy code", "inherited codebase", "no documentation", "technical debt", "resurrect", "modernize". NOT for greenfield projects or well-documented active codebases.
npx skills add https://github.com/curiositech/some_claude_skills --skill code-necromancer
Tagline: Raise dead codebases from the grave
Systematic framework for understanding, resurrecting, and modernizing legacy codebases.
✅ Use when:
❌ NOT for:
Objective: Create a complete map before touching anything.
| Output | Description |
|--------|-------------|
| repo-inventory.json | All repos with metadata, languages, activity |
| dependency-graph.mmd | Inter-repo and external dependencies |
| architecture-diagram.mmd | Visual system topology |
| tech-stack-matrix.md | Language/framework versions per repo |
| maturity-assessment.md | Code quality, test coverage, docs quality |
| missing-pieces.md | Gaps, orphaned repos, broken integrations |
Process: Inventory → Deep Scan → Cross-Reference → Visualize → Assess
→ See references/archaeology-guide.md for detailed techniques.
Objective: Get the system running in development.
| Output | Description |
|--------|-------------|
| dependency-audit.md | Outdated packages, vulnerabilities, breaking changes |
| environment-variables.md | All required env vars with defaults |
| secrets-needed.md | API keys, certs, OAuth credentials |
| infrastructure-status.md | Cloud resources, what exists vs deleted |
| resurrection-blockers.md | Critical issues preventing launch |
| integration-tests/ | Tests verifying components work and communicate |
Process: Audit Dependencies → Map Environment → Check Infrastructure → Write Tests → Document Blockers
→ See references/integration-test-patterns.md for resurrection test patterns.
Objective: Modernize while maintaining feature parity.
| Output | Description |
|--------|-------------|
| security-recommendations.md | Vulnerability fixes, compliance |
| modernization-roadmap.md | Prioritized upgrades with effort estimates |
| architecture-improvements.md | Scalability, performance, maintainability |
Process: Security First → Infrastructure (containerize, CI/CD) → Code Quality → Architecture
# List all repos in org
gh repo list ORG --limit 1000 --json name,primaryLanguage,pushedAt
# Dependency analysis
npm audit && npm outdated # Node.js
pip list --outdated && safety check # Python
go mod graph # Go
# Find env vars in code
grep -rn 'process\.env\|os\.environ' --include="*.js" --include="*.py"
→ See references/framework-detection.md for framework/stack identification.
→ See references/infrastructure-mapping.md for cloud resource discovery.
→ See references/dependency-patterns.md for dependency detection.
What it looks like: Running npm install before reading any code
Why it's wrong: You'll fix the same bug 5 times; dependencies have changed
Fix: Complete archaeology first; understand before touching
What it looks like: "Let's also refactor while we're here"
Why it's wrong: Scope explosion; never actually resurrect
Fix: Strict phase separation; refactoring is Phase 3
What it looks like: Update all dependencies in one commit
Why it's wrong: Something breaks, no idea what
Fix: Update incrementally; test after each
What it looks like: "It runs, ship it"
Why it's wrong: Regression city; no baseline for changes
Fix: Write resurrection tests as you go; they prove progress
What it looks like: "I fixed it but forgot what I changed"
Why it's wrong: Tribal knowledge returns; next person is you in 6 months
Fix: Document everything you learn and change
What it looks like: Following README from 2019
Why it's wrong: APIs change, services get deprecated
Fix: Verify every instruction; documentation lies
→ references/archaeology-guide.md - Deep code archaeology techniques
→ references/dependency-patterns.md - Dependency detection across ecosystems
→ references/framework-detection.md - Framework/stack identification
→ references/infrastructure-mapping.md - Cloud resource discovery
→ references/integration-test-patterns.md - Resurrection test patterns
→ templates/repo-inventory.json - Repository catalog
→ templates/archaeology-report.md - Phase 1 output
→ templates/resurrection-plan.md - Phase 2 output
→ templates/rejuvenation-roadmap.md - Phase 3 output
Take curiositech/code-necromancer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npm.
Without those the skill loads but fails at the first command.