assess-form
À propos
Cette compétence évalue la forme architecturale d'un système, en cartographiant sa rigidité structurelle et les pressions externes pour classer son aptitude à la transformation. Elle fournit une évaluation structurée via un inventaire, une cartographie des pressions et une estimation des capacités avant des changements majeurs. Les développeurs doivent l'utiliser comme un diagnostic de santé lorsque les systèmes semblent bloqués ou lorsqu'ils font face à une dette technique croissante ou à des pressions de croissance.
Installation rapide
Claude Code
Recommandénpx 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/assess-formCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Assess Form
Eval current structural form — architecture, rigidity, pressure pts, capacity for change → transformation readiness pre-metamorphosis.
Use When
- Before significant architectural change → understand starting pt
- System feels "stuck" + reasons unclear
- External pressure (growth, market shift, tech debt) mounting + response uncertain
- Assess proposed transformation feasible given current form
- Periodic health checks long-lived systems (annual form assessment)
- Complementing
adapt-architecture— assess first, then transform
In
- Required: System (codebase, organization, infrastructure, process)
- Optional: Proposed transformation direction (what system need to become?)
- Optional: Known pain pts or pressure srcs
- Optional: Previous transformation attempts + outcomes
- Optional: Time horizon for potential transformation
- Optional: Available resources for transformation
Do
Step 1: Inventory Current Form
Catalog structural elements no judgment — understand what exists pre-eval.
- Map structural components:
- Modules: distinct functional units (services, teams, pkgs, depts)
- Interfaces: how modules connect (APIs, protocols, contracts, reporting)
- Data flows: info movement
- Dependencies: what depends on what (direct, transitive, circular)
- Load-bearing: components everything else relies on
- Doc form's age + history:
- When each major component introduced?
- Which changed recently vs static?
- "Geological layer" structure (old core, newer additions, recent patches)?
- ID "skeleton" vs "flesh":
- Skeleton: structural decisions extremely costly to change (lang, DB, deploy model)
- Flesh: functional decisions easier to change (business logic, UI, config)
Structural Inventory Template:
┌──────────────┬──────────┬────────────┬───────────────────┬──────────┐
│ Component │ Age │ Last │ Dependencies │ Type │
│ │ │ Modified │ (in / out) │ │
├──────────────┼──────────┼────────────┼───────────────────┼──────────┤
│ Auth service │ 3 years │ 6 months │ In: 12 / Out: 3 │ Skeleton │
│ Dashboard UI │ 1 year │ 2 weeks │ In: 2 / Out: 5 │ Flesh │
│ Data pipeline│ 4 years │ 1 year │ In: 3 / Out: 8 │ Skeleton │
│ Config store │ 2 years │ 3 months │ In: 0 / Out: 15 │ Skeleton │
└──────────────┴──────────┴────────────┴───────────────────┴──────────┘
→ Complete structural inventory: components + ages + mod recency + dep profiles + skeleton/flesh classification. "X-ray" of current form.
If err: Inventory incomplete (components unknown/undocumented) → finding — form has opacity = transformation risk. Doc what you can, flag unknowns, plan discovery gaps.
Step 2: Map Transformation Pressure
Forces pushing change + forces resisting.
- Catalog external pressures (demanding change):
- Growth: current form can't handle increasing load
- Market: competitors/users demand capabilities
- Technology: underlying becoming obsolete/unsupported
- Regulatory: compliance reqs current form doesn't meet
- Integration: must connect w/ systems current form wasn't designed for
- Catalog internal pressures (demanding change from within):
- Tech debt: accumulated shortcuts slow dev
- Knowledge concentration: critical knowledge in too few ppl
- Morale: team frustration w/ current form
- Operational burden: maintenance cost consuming dev resources
- Catalog resistance forces (opposing change):
- Inertia: existing form works "well enough"
- Dep lock-in: too many things depend on current form
- Knowledge loss risk: transformation may destroy institutional knowledge
- Cost: transformation reqs investment uncertain return
- Fear: previous attempts failed
→ Pressure map showing direction + magnitude. Pressure significantly > resistance → transformation overdue. Resistance significantly > pressure → transformation fails w/o first reducing resistance.
If err: Balanced picture (neither strong) → system may not need transformation — or analysis surface-level. Dig deeper: interview stakeholders, measure specific pain pts, project 12-18 months. What pressures intensify?
Step 3: Assess Rigidity
How flexible/rigid is current form — can bend or break?
- Test interface flexibility:
- Modules replaceable no cascading changes? (loose coupling = flexible)
- Interfaces well-defined + stable? (contract clarity = flexible)
- How many "god modules" exist (all depends)? (concentration = rigid)
- Test data flexibility:
- Data migration straightforward? (schema evolution tools, versioning)
- Data formats standardized or bespoke? (bespoke = rigid)
- How entangled is business logic w/ data structure? (entangled = rigid)
- Test process flexibility:
- Team ship changes quickly? (deploy pipeline health)
- Test suite comprehensive? (safety net for change)
- How many "don't touch" components exist? (forbidden zones = rigid)
- Calc rigidity score:
Rigidity Assessment:
┌──────────────────────┬─────┬──────────┬──────┬──────────────────────┐
│ Dimension │ Low │ Moderate │ High │ Your Assessment │
├──────────────────────┼─────┼──────────┼──────┼──────────────────────┤
│ Interface coupling │ 1 │ 2 │ 3 │ ___ │
│ God module count │ 1 │ 2 │ 3 │ ___ │
│ Data entanglement │ 1 │ 2 │ 3 │ ___ │
│ Deployment friction │ 1 │ 2 │ 3 │ ___ │
│ Test coverage gaps │ 1 │ 2 │ 3 │ ___ │
│ "Don't touch" zones │ 1 │ 2 │ 3 │ ___ │
├──────────────────────┼─────┴──────────┴──────┼──────────────────────┤
│ Total (max 18) │ 6-9: flexible │ ___ │
│ │ 10-13: moderate │ │
│ │ 14-18: rigid │ │
└──────────────────────┴───────────────────────┴──────────────────────┘
→ Rigidity score quantifies structural resistance transformation encounters. Flexible (6-9) → incremental. Rigid (14-18) → dissolution before reconstruction (see dissolve-form).
If err: Inconclusive (moderate score but unclear where real problems) → focus highest-scoring dims. System can be flexible overall but 1 extremely rigid component blocks transformation. Target that specifically.
Step 4: Estimate Change Capacity
System + team ability to absorb + execute transformation.
- Available transformation energy:
- % team capacity allocatable to transformation?
- Org support (budget, mandate, patience)?
- Right skills (architecture, migration, testing)?
- Change absorption rate:
- How many changes per time unit no destabilize?
- Recovery time post-significant change?
- Staging/canary mechanism for incremental?
- Transformation experience:
- Team successfully transformed similar before?
- Tools + practices (feature flags, strangler fig, blue-green)?
- Risk tolerance?
- Calc change capacity:
- High: dedicated team, strong tooling, prior exp, org support
- Moderate: part-time, some tooling, limited exp
- Low: no dedicated, no tooling, no exp, resistant org
→ Change capacity assessment → can execute proposed transformation given resources + skills + org support?
If err: Low capacity + high pressure → first transformation isn't system — team capability. Invest tooling, training, org buy-in before architectural transformation.
Step 5: Classify Readiness
Combine pressure + rigidity + capacity → readiness classification.
- Plot on matrix:
Transformation Readiness Matrix:
┌─────────────────┬────────────────────────┬────────────────────────┐
│ │ Low Rigidity │ High Rigidity │
├─────────────────┼────────────────────────┼────────────────────────┤
│ High Pressure │ READY — Transform now │ PREPARE — Reduce │
│ + High Capacity │ using adapt-architecture│ rigidity first, then │
│ │ │ use dissolve-form │
├─────────────────┼────────────────────────┼────────────────────────┤
│ High Pressure │ INVEST — Build capacity│ CRITICAL — Invest in │
│ + Low Capacity │ first, then transform │ capacity AND reduce │
│ │ │ rigidity before change │
├─────────────────┼────────────────────────┼────────────────────────┤
│ Low Pressure │ OPTIONAL — Transform │ DEFER — No urgency, │
│ + Any Capacity │ if strategic value is │ monitor pressure and │
│ │ clear, otherwise defer │ reassess quarterly │
└─────────────────┴────────────────────────┴────────────────────────┘
- Doc classification:
- Label (READY / PREPARE / INVEST / CRITICAL / OPTIONAL / DEFER)
- Key findings per dim
- Recommended next step
- Risk factors changing classification
- READY →
adapt-architecture - PREPARE →
dissolve-formreduce rigidity - INVEST → build capacity (training, tooling, org support) + reassess
- CRITICAL → address capacity + rigidity simultaneously (may need external help)
- OPTIONAL/DEFER → doc + set reassessment date
→ Clear justified readiness classification + specific next steps. Enables informed decision about when + how to transform.
If err: Ambiguous (moderate pressure + moderate rigidity + moderate capacity) → default PREPARE — reduce rigidity incrementally while monitoring pressure. Builds capability + reduces risk whether or not full transformation eventually needed.
Check
- Structural inventory complete: components + ages + deps + types
- Transformation pressure mapped (external, internal, resistance)
- Rigidity score calc'd across all dims
- Change capacity assessed (resources, absorption, exp)
- Readiness classification determined + justified
- Next steps documented per classification
- Reassessment date set (even if currently READY)
Traps
- Assess only technical system: Transformation readiness includes organizational. Technically flexible system + org-rigid team still fails.
- Optimistic capacity estimation: Teams consistently overestimate capacity while maintaining normal ops. Use 50% of stated as realistic.
- Ignore resistance forces: Pressure mapping only cataloging change forces misses resistance slowing/stopping. Resistance often stronger than appears.
- Assessment paralysis: Form assessment hours to days, not weeks. Taking too long → system too complex to assess fully — higher abstraction + drill into problems.
- Confuse rigidity w/ stability: Rigid ≠ stable. Stability comes from well-designed flexibility; rigidity = absence of designed flexibility.
→
adapt-architecture— primary transformation skill; assess-form determines readinessdissolve-form— PREPARE or CRITICAL → rigidity reduction before transformationrepair-damage— systems needing repair before assessment meaningfulshift-camouflage— surface-level adaptation may resolve pressure no full transformationforage-resources— resource exploration informs form assessment when "what should we become?"review-software-architecture— detailed technical architecture evalassess-context— AI self-application variant; maps structural assessment → reasoning ctx malleability, rigidity mapping, readiness
Dépôt GitHub
Compétences associées
executing-plans
DesignUtilisez la compétence executing-plans lorsque vous disposez d'un plan de mise en œuvre complet à exécuter par lots contrôlés avec des points de contrôle de revue. Elle charge et examine le plan de manière critique, puis exécute les tâches par petits lots (3 tâches par défaut) tout en rapportant la progression entre chaque lot pour une revue par l'architecte. Cela garantit une mise en œuvre systématique avec des points de contrôle de qualité intégrés.
requesting-code-review
DesignCette compétence délègue un sous-agent réviseur de code pour analyser les modifications apportées au code par rapport aux exigences avant de poursuivre. Elle doit être utilisée après avoir terminé des tâches, implémenté des fonctionnalités majeures, ou avant une fusion vers la branche principale. La revue aide à détecter précocement les problèmes en comparant l'implémentation actuelle avec le plan initial.
connect-mcp-server
DesignCette compétence fournit un guide complet permettant aux développeurs de connecter des serveurs MCP à Claude Code via les transports HTTP, stdio ou SSE. Elle couvre l'installation, la configuration, l'authentification et la sécurité pour intégrer des services externes tels que GitHub, Notion et des API personnalisées. Utilisez-la lors de la configuration d'intégrations MCP, de la configuration d'outils externes ou du travail avec le Protocole de Contexte de Modèle de Claude.
web-cli-teleport
DesignCette compétence aide les développeurs à choisir entre les interfaces Web et CLI de Claude Code en fonction de l'analyse des tâches, puis permet une téléportation transparente des sessions entre ces environnements. Elle optimise le flux de travail en gérant l'état et le contexte de la session lors du passage entre le web, la CLI ou le mobile. Utilisez-la pour des projets complexes nécessitant différents outils à diverses étapes.
