adapt-architecture
Über
Diese Fähigkeit bietet eine strukturierte Methodik zur Durchführung schrittweiser, sicherer Architekturtransformationen wie Migrationen von Monolithen zu Microservices. Sie nutzt Muster wie die Strangler-Fig-Migration und Chrysalis-Phasen, um parallelen Betrieb, fortschreitende Überführung und Rollback-Design zu ermöglichen. Nutzen Sie sie, wenn ein System bereit für eine kontrollierte Evolution ist und minimale Störungen für abhängige Systeme erfordert.
Schnellinstallation
Claude Code
Empfohlennpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/adapt-architectureKopieren Sie diesen Befehl und fügen Sie ihn in Claude Code ein, um diese Fähigkeit zu installieren
Dokumentation
Adapt Architecture
Structural metamorphosis → system transform current → target form. Strangler fig, chrysalis, interface preserve → never stops.
Use When
assess-form→ READY- Evolve architecture, no downtime
- Monolith ↔ microservices
- Replace core subsystem, dependents keep running
- Data model evolve w/ backward compat
- Gradual, not big-bang
In
- Required: Current form assessment (
assess-form) - Required: Target architecture
- Required: Operational continuity reqs
- Optional: Transform budget (time, people, compute)
- Optional: Rollback reqs
- Optional: Parallel run duration
Do
Step 1: Blueprint
Plan path current → target.
- Sequence of intermediate forms:
- Current → Intermediate 1 → ... → Target
- Each intermediate operationally viable
- No intermediate harder to maintain
- Seams:
- Where cut current to insert new?
- Natural: interfaces, module bounds, data partitions
- Artificial: anti-corruption layers
- Pattern:
- Strangler fig: new grows around old, replaces gradually
- Chrysalis: wrap old, replace internals, shell preserves external interface
- Budding: parallel, traffic shifts (see
scale-colony) - Metamorphic migration: phased in dep order (leaves→roots)
- Interface preservation layer:
- External consumers no disrupt
- API versioning, backward-compat, adapters
- Temp scaffold → plan removal
Metamorphosis Patterns:
┌───────────────┬───────────────────────────────────────────────────┐
│ Strangler Fig │ New code intercepts routes one by one; │
│ │ old code handles everything else until replaced │
│ │ ┌──────────┐ │
│ │ │ Old ████ │ → │ Old ██ New ██ │ → │ New ████ │ │
│ │ └──────────┘ │
├───────────────┼───────────────────────────────────────────────────┤
│ Chrysalis │ Wrap old system in new interface; replace │
│ │ internals while external shell stays stable │
│ │ ┌──────────┐ ┌──[new]───┐ ┌──[new]───┐ │
│ │ │ old core │ → │ old core │ → │ new core │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │
├───────────────┼───────────────────────────────────────────────────┤
│ Budding │ New system runs in parallel; traffic shifts │
│ │ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │
│ │ │ Old │ │ New │ → │ Old │ │ New │ │
│ │ │ 100% │ │ 0% │ │ 0% │ │ 100% │ │
│ │ └──────┘ └──────┘ └──────┘ └──────┘ │
└───────────────┴───────────────────────────────────────────────────┘
→ Blueprint: intermediate forms, seams, pattern, preservation strategy. Concrete + testable.
If err: No clean seam → preliminary dissolution (dissolve-form) first. Intermediates not viable → steps too large → decompose.
Step 2: Scaffold
Temp infra → supports metamorphosis.
- Anti-corruption layer:
- Thin translation old ↔ new
- Routes reqs → correct system per migration state
- Translates data formats
- "Cocoon" protects transform
- Parallel run infra:
- Both systems deployable simultaneously
- Feature flags → traffic routing
- Comparison validates equivalence
- Rollback checkpoints:
- Each intermediate → rollback possible
- Rollback faster than forward step
- Data migration reversible (or dual-write during transition)
- Valid. harness:
- Auto tests → operational continuity
- Perf benchmarks → regression detection
- Data integrity checks
→ Scaffold (anti-corruption, parallel, rollback, valid.) in place pre-transform. Scaffold itself tested.
If err: Too expensive → simplify. Minimum: feature flag + rollback proc. Anti-corruption + parallel optional for small transforms.
Step 3: Progressive Cutover
Migrate incrementally.
- Order components:
- Start least-coupled, lowest-risk → build confidence
- Progress → more critical
- Most coupled/critical last
- Per component: a. Impl new ver behind anti-corruption layer b. Parallel: both process same in c. Compare out → equivalent (or differences documented) d. Confident → flip feature flag → switch traffic e. Monitor anomalies (increased sensitivity) f. Stable → decommission old ver
- Continuous delivery:
- Each cutover = normal deploy, not event
- System always known, tested, operational
- Issue → rollback → prev state operational
→ Functionality migrates component-by-component w/ valid. at each step. System always operational.
If err: Parallel reveals discrepancies → new impl bug → fix before cutover. Perf degrade → optimize new or anti-corruption layer too heavy. Team loses confidence → pause + stabilize. Half-migrated known > rushed full.
Step 4: Chrysalis Phase
Manage most vulnerable period — system between forms.
- Chrysalis reality:
- Partly old + partly new during migration
- Hybrid more complex than pure state
- Complexity peaks at midpoint
- Discipline:
- No new features during chrysalis
- Freeze non-essential deploys
- Increased monitoring + on-call
- Daily check-ins
- Mid-chrysalis assessment:
- Halfway → target still right?
- Market/reqs/team change?
- Continue, pause, redirect?
- Protect:
- Rollback path clear always
- Doc hybrid state → future debuggers need
- Resist "clean up" scaffold pre-complete
→ Chrysalis = deliberate, time-bounded, increased discipline + monitoring. Temp complexity = cost of safe transform.
If err: Drags too long → hybrid = new normal = worse than either. Set time limit. Limit hit → accelerate or accept hybrid as "new form".
Step 5: Complete + Stabilize
Finish + remove scaffold.
- Final cutover:
- Migrate last components
- Full valid. against complete new system
- Perf test under prod load
- Remove scaffold:
- Decommission anti-corruption layer
- Remove migration feature flags
- Clean up parallel infra
- Archive (don't delete) old code
- Post-metamorphosis stabilization:
- Run new form 2-4 weeks w/ enhanced monitoring
- Address real-world issues
- Update docs → new architecture
- Retrospective:
- What went well?
- Harder than expected?
- Do differently next?
- Update playbook
→ Transform complete. System new form. Scaffold removed. Docs updated. Team captured learnings.
If err: New form unstable post-cutover → maintain rollback, continue stabilize. Stabilize > planned period → design issue → targeted fixes or partial rollback worst component.
Check
- Blueprint shows viable intermediates
- Scaffold in place pre-migration
- Components migrate low→high risk
- Parallel validates equivalence each step
- Chrysalis time-bounded + feature freeze
- All scaffold removed post-transform
- Post-metamorphosis stabilization passes
- Retro captures learnings
Traps
- Big-bang: Transform all at once → abandons incremental safety → max blast radius. Always incremental.
- Permanent scaffold: Never removed → tech debt. Plan removal part of transform.
- Chrysalis denial: Pretending hybrid normal → features on unstable foundation. Enforce discipline.
- Target fixation: Better alternative signs ignored. Mid-chrysalis assessment exists for this.
- Transform fatigue: Long migrations exhaust teams. Days, not weeks per step. Celebrate milestones.
→
assess-form— prereq assessmentdissolve-form— rigid systems → create seamsrepair-damage— recovery when transform damagesshift-camouflage— surface adapt may sufficecoordinate-swarm— swarm sequencing across distributedscale-colony— growth pressure triggers architectural adaptimplement-gitops-workflow— GitOps deploy infra for cutoverreview-software-architecture— evaluate target architecture
GitHub Repository
Verwandte Skills
executing-plans
DesignVerwenden Sie die Fähigkeit "executing-plans", wenn Sie einen vollständigen Implementierungsplan zur Ausführung in kontrollierten Batches mit Überprüfungspunkten vorliegen haben. Sie lädt den Plan und überprüft ihn kritisch, führt dann Aufgaben in kleinen Batches (standardmäßig 3 Aufgaben) aus und meldet den Fortschritt zwischen jedem Batch zur Überprüfung durch den Architekten. Dies gewährleistet eine systematische Implementierung mit integrierten Qualitätskontrollpunkten.
requesting-code-review
DesignDiese Fähigkeit sendet einen Unteragenten für Code-Review, um Codeänderungen anhand der Anforderungen zu analysieren, bevor fortgefahren wird. Sie sollte nach dem Abschließen von Aufgaben, der Implementierung größerer Funktionen oder vor dem Zusammenführen in den Hauptzweig verwendet werden. Die Überprüfung hilft dabei, Probleme frühzeitig zu erkennen, indem die aktuelle Implementierung mit dem ursprünglichen Plan verglichen wird.
connect-mcp-server
DesignDiese Fähigkeit bietet Entwicklern eine umfassende Anleitung, um MCP-Server über HTTP-, stdio- oder SSE-Transports mit Claude Code zu verbinden. Sie behandelt Installation, Konfiguration, Authentifizierung und Sicherheit für die Integration externer Dienste wie GitHub, Notion und benutzerdefinierter APIs. Nutzen Sie sie beim Einrichten von MCP-Integrationen, bei der Konfiguration externer Tools oder bei der Arbeit mit Claude's Model Context Protocol.
web-cli-teleport
DesignDiese Fähigkeit unterstützt Entwickler bei der Wahl zwischen Claude Code Web- und CLI-Schnittstellen basierend auf Aufgabenanalysen und ermöglicht nahtloses Session-Teleporting zwischen diesen Umgebungen. Sie optimiert den Workflow, indem sie den Sitzungsstatus und Kontext beim Wechsel zwischen Web, CLI oder Mobilgeräten verwaltet. Nutzen Sie sie für komplexe Projekte, die in verschiedenen Phasen unterschiedliche Werkzeuge erfordern.
