@hegemonart/get-design-done 1.24.2 → 1.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +41 -0
- package/README.de.md +679 -0
- package/README.fr.md +679 -0
- package/README.it.md +679 -0
- package/README.ja.md +679 -0
- package/README.ko.md +679 -0
- package/README.md +396 -729
- package/README.zh-CN.md +480 -133
- package/SKILL.md +2 -0
- package/agents/prototype-gate.md +122 -0
- package/agents/quality-gate-runner.md +125 -0
- package/hooks/budget-enforcer.ts +132 -7
- package/hooks/gdd-decision-injector.js +183 -3
- package/hooks/gdd-turn-closeout.js +238 -0
- package/hooks/hooks.json +10 -0
- package/package.json +5 -5
- package/reference/STATE-TEMPLATE.md +41 -0
- package/reference/config-schema.md +30 -0
- package/scripts/lib/gdd-state/mutator.ts +454 -0
- package/scripts/lib/gdd-state/parser.ts +351 -1
- package/scripts/lib/gdd-state/types.ts +193 -0
- package/scripts/lib/quality-gate-detect.cjs +126 -0
- package/skills/quality-gate/SKILL.md +222 -0
- package/skills/router/SKILL.md +29 -9
- package/skills/sketch-wrap-up/SKILL.md +47 -2
- package/skills/spike-wrap-up/SKILL.md +41 -2
- package/skills/turn-closeout/SKILL.md +115 -0
- package/skills/verify/SKILL.md +22 -0
package/README.it.md
ADDED
|
@@ -0,0 +1,679 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# GET DESIGN DONE
|
|
4
|
+
|
|
5
|
+
[English](README.md) · [简体中文](README.zh-CN.md) · [日本語](README.ja.md) · [한국어](README.ko.md) · [Français](README.fr.md) · **Italiano** · [Deutsch](README.de.md)
|
|
6
|
+
|
|
7
|
+
**Una pipeline di qualità del design per agenti di coding IA: brief → esplorazione → piano → implementazione → verifica.**
|
|
8
|
+
|
|
9
|
+
**Get Design Done mantiene l'UI generata dall'IA allineata al tuo brief, al tuo design system, ai tuoi riferimenti e ai tuoi quality gate. Funziona con Claude Code, OpenCode, Gemini CLI, Kilo, Codex, Copilot, Cursor, Windsurf, Antigravity, Augment, Trae, Qwen Code, CodeBuddy e Cline.**
|
|
10
|
+
|
|
11
|
+
[](https://www.npmjs.com/package/@hegemonart/get-design-done)
|
|
12
|
+
[](https://www.npmjs.com/package/@hegemonart/get-design-done)
|
|
13
|
+
[](https://github.com/hegemonart/get-design-done/actions/workflows/ci.yml)
|
|
14
|
+
[](https://github.com/hegemonart/get-design-done)
|
|
15
|
+
[](https://nodejs.org/)
|
|
16
|
+
[](LICENSE)
|
|
17
|
+
|
|
18
|
+
<br>
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx @hegemonart/get-design-done@latest
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Funziona su macOS, Linux e Windows.**
|
|
25
|
+
|
|
26
|
+
<br>
|
|
27
|
+
|
|
28
|
+
*«Gli agenti di coding IA rilasciano UI in fretta. Get Design Done si assicura che rilascino design.»*
|
|
29
|
+
|
|
30
|
+
<br>
|
|
31
|
+
|
|
32
|
+
[Perché l'ho costruito](#perché-lho-costruito) · [Come funziona](#come-funziona) · [Comandi](#comandi) · [Connessioni](#connessioni) · [Perché funziona](#perché-funziona)
|
|
33
|
+
|
|
34
|
+
</div>
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
> [!IMPORTANT]
|
|
39
|
+
> ### Hai già un bundle Claude Design?
|
|
40
|
+
>
|
|
41
|
+
> Se hai esportato un design da [claude.ai/design](https://claude.ai/design), puoi saltare interamente le fasi 1–3:
|
|
42
|
+
>
|
|
43
|
+
> ```
|
|
44
|
+
> /gdd:handoff ./my-design.html
|
|
45
|
+
> ```
|
|
46
|
+
>
|
|
47
|
+
> Analizza le proprietà CSS personalizzate del bundle in decisioni di design D-XX, esegue il pass di verifica con scoring Handoff Faithfulness e opzionalmente scrive lo stato di implementazione su Figma.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Perché l'ho costruito
|
|
52
|
+
|
|
53
|
+
Sono un designer che rilascia con agenti di coding IA. Il workflow lato codice è maturo: specifiche, task, test, commit, cicli di review. Quello lato design non lo era.
|
|
54
|
+
|
|
55
|
+
Quello in cui mi sono imbattuto continuamente: l'agente poteva generare una schermata che sembrava buona da sola, ma il lavoro era *scollegato*. I token non corrispondevano al sistema esistente. I rapporti di contrasto scendevano sotto WCAG. La gerarchia veniva reinventata per ogni schermata. Vecchi anti-pattern finivano in nuovi componenti. E poiché nulla verificava l'output rispetto al brief originale, i problemi emergevano tardi, in PR review o dopo l'handoff.
|
|
56
|
+
|
|
57
|
+
Così ho costruito Get Design Done: una pipeline di design che dà agli agenti di coding IA la stessa struttura che gli sviluppatori si aspettano già dai workflow di engineering. Cattura il brief, mappa il design system corrente, ancora le decisioni ai riferimenti, scompone il lavoro in task atomici, esegue quei task e verifica il risultato prima del rilascio.
|
|
58
|
+
|
|
59
|
+
Dietro le quinte: 37 agenti specializzati, un intel store interrogabile, routing dei modelli per tier, 12 connessioni opzionali, commit atomici e un layer adattivo no-regret che impara dagli esiti solidify-with-rollback. Nell'uso quotidiano vedi pochi comandi `/gdd:*` che mantengono coerente il lavoro di design.
|
|
60
|
+
|
|
61
|
+
— **Hegemon**
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
Il design generato dall'IA ha la stessa modalità di fallimento del codice generato dall'IA: descrivi cosa vuoi, ottieni qualcosa di plausibile, poi crolla a scala perché nessun sistema lega l'output al brief.
|
|
66
|
+
|
|
67
|
+
Get Design Done è il layer di context engineering per il lavoro di design. Trasforma "migliora questa UI" in un ciclo tracciabile: brief → inventario → riferimenti → piano → implementazione → verifica.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Cosa ottieni
|
|
72
|
+
|
|
73
|
+
- **Lavoro di design ancorato al brief** — ogni ciclo parte da problema, pubblico, vincoli, metriche di successo e must-have.
|
|
74
|
+
- **Estrazione del design system** — GDD inventaria token, tipografia, spaziature, componenti, motion, accessibilità, dark mode e debito di design prima di pianificare modifiche.
|
|
75
|
+
- **Decisioni supportate da riferimenti** — gli agenti usano riferimenti di design integrati e connessioni opzionali a Figma, Refero, Pinterest, Storybook, Chromatic, Preview, Claude Design, paper.design, pencil.dev, Graphify, 21st.dev Magic e Magic Patterns.
|
|
76
|
+
- **Esecuzione atomica** — i task di design sono scomposti per dipendenza, eseguiti in wave sicure e committati indipendentemente.
|
|
77
|
+
- **Verifica prima del rilascio** — gli audit controllano aderenza al brief, integrazione dei token, contrasto WCAG, conformità dei componenti, coerenza della motion, architettura dark-mode e anti-pattern di design.
|
|
78
|
+
- **Rollback su validazione fallita** — solidify-with-rollback valida ogni task prima che resti; il lavoro fallito viene revertito automaticamente.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## A chi è rivolto
|
|
83
|
+
|
|
84
|
+
GDD è per ingegneri, designer, design engineer, founder e product builder che rilasciano UI con agenti di coding IA e vogliono che il risultato regga oltre il primo screenshot.
|
|
85
|
+
|
|
86
|
+
Usalo quando ti importa che i token coincidano, che il contrasto passi WCAG, che la motion resti coerente, che i componenti seguano il tuo sistema e che l'implementazione finale corrisponda ancora alla richiesta.
|
|
87
|
+
|
|
88
|
+
Non devi essere un designer. La pipeline porta disciplina di design dentro il workflow degli agenti: estrae contesto, chiede solo le decisioni mancanti, ancora il lavoro ai riferimenti e intercetta i problemi che di solito emergono troppo tardi.
|
|
89
|
+
|
|
90
|
+
### Highlights v1.24.0 — Installer multi-runtime
|
|
91
|
+
|
|
92
|
+
- **Multi-select interattivo `@clack/prompts`** — `npx @hegemonart/get-design-done` senza flag apre ora una UI di checkbox curata per i 14 runtime supportati (Claude Code, OpenCode, Gemini CLI, Kilo, Codex, Copilot, Cursor, Windsurf, Antigravity, Augment, Trae, Qwen Code, CodeBuddy, Cline) più una radio Global / Local.
|
|
93
|
+
- **Idempotente + safe per AGENTS.md esterni** — rieseguire l'installer non duplica mai voci e non sovrascrive le istruzioni specifiche del runtime che hai aggiunto. Step di conferma prima di qualsiasi scrittura.
|
|
94
|
+
- **Superficie CI scriptata preservata** — ogni flag esistente (`--claude`, `--cursor`, `--all`, `--global`, `--local`, `--uninstall`, `--config-dir`) continua a funzionare invariato. La modalità interattiva si attiva solo quando non viene passato alcun flag di runtime.
|
|
95
|
+
- **Disinstallazione multi-select** — `--uninstall` senza flag di runtime entra anch'esso in multi-select interattivo per scegliere da quali runtime rimuovere.
|
|
96
|
+
|
|
97
|
+
### Release precedenti
|
|
98
|
+
|
|
99
|
+
- **v1.23.5** — Layer adattivo No-Regret (bandit Thompson sampling + ensemble AdaNormalHedge + reranking MMR; utilizzabile single-user via bootstrap con prior informato, senza telemetria condivisa opt-in).
|
|
100
|
+
- **v1.23.0** — Primitive di dominio SDK (gate solidify-with-rollback, contratti di output JSON, auto-cristallizzazione di pattern `Touches:`).
|
|
101
|
+
- **v1.22.0** — Osservabilità SDK (~24 tipi di evento tipizzati, trajectory per tool-call, chain di eventi append-only, scrubber dei segreti).
|
|
102
|
+
- **v1.21.0** — SDK headless (CLI `gdd-sdk` esegue la pipeline completa senza Claude Code, researcher paralleli, MCP cross-harness).
|
|
103
|
+
- **v1.20.0** — Fondamenta SDK (primitive di resilienza, `STATE.md` lockfile-safe, server MCP `gdd-state` con 11 tool tipizzati, fondamenta TypeScript).
|
|
104
|
+
|
|
105
|
+
Note di rilascio complete in [CHANGELOG.md](CHANGELOG.md).
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
<p align="center">
|
|
110
|
+
<strong>Supported by</strong>
|
|
111
|
+
</p>
|
|
112
|
+
|
|
113
|
+
<div align="center">
|
|
114
|
+
<a href="https://www.humbleteam.com/" aria-label="Humbleteam">
|
|
115
|
+
<img src="docs/assets/sponsors/humbleteam.svg" alt="Humbleteam logo" width="180">
|
|
116
|
+
</a>
|
|
117
|
+
<br>
|
|
118
|
+
<sub>Product design partner for ambitious startups and AI products.</sub>
|
|
119
|
+
</div>
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Per iniziare
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
npx @hegemonart/get-design-done@latest
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
L'installer ti chiede di scegliere:
|
|
130
|
+
1. **Runtime** — Claude Code, OpenCode, Gemini, Kilo, Codex, Copilot, Cursor, Windsurf, Antigravity, Augment, Trae, Qwen Code, CodeBuddy, Cline o tutti (multi-select interattivo)
|
|
131
|
+
2. **Posizione** — Global (tutti i progetti) o Local (solo progetto corrente)
|
|
132
|
+
|
|
133
|
+
Verifica con:
|
|
134
|
+
|
|
135
|
+
```
|
|
136
|
+
/gdd:help
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
> [!TIP]
|
|
140
|
+
> Lancia Claude Code con `--dangerously-skip-permissions` per un'esperienza automatizzata senza attriti. GDD è progettato per esecuzione autonoma multi-stage.
|
|
141
|
+
|
|
142
|
+
### Restare aggiornati
|
|
143
|
+
|
|
144
|
+
GDD rilascia spesso. Aggiorna rieseguendo l'installer (idempotente):
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
npx @hegemonart/get-design-done@latest
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
O da Claude Code:
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
/gdd:update
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
`/gdd:update` mostra un'anteprima del changelog prima di applicare. Le modifiche locali sotto `reference/` sono preservate — se un update strutturale richiede ri-stitching, esegui `/gdd:reapply-patches`.
|
|
157
|
+
|
|
158
|
+
<details>
|
|
159
|
+
<summary><strong>Installazione non interattiva (Docker, CI, script)</strong></summary>
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
npx @hegemonart/get-design-done --claude --global
|
|
163
|
+
npx @hegemonart/get-design-done --claude --local
|
|
164
|
+
npx @hegemonart/get-design-done --opencode --global
|
|
165
|
+
npx @hegemonart/get-design-done --gemini --global
|
|
166
|
+
npx @hegemonart/get-design-done --kilo --global
|
|
167
|
+
npx @hegemonart/get-design-done --codex --global
|
|
168
|
+
npx @hegemonart/get-design-done --copilot --global
|
|
169
|
+
npx @hegemonart/get-design-done --cursor --global
|
|
170
|
+
npx @hegemonart/get-design-done --windsurf --global
|
|
171
|
+
npx @hegemonart/get-design-done --antigravity --global
|
|
172
|
+
npx @hegemonart/get-design-done --augment --global
|
|
173
|
+
npx @hegemonart/get-design-done --trae --global
|
|
174
|
+
npx @hegemonart/get-design-done --qwen --global
|
|
175
|
+
npx @hegemonart/get-design-done --codebuddy --global
|
|
176
|
+
npx @hegemonart/get-design-done --cline --global
|
|
177
|
+
|
|
178
|
+
# Tutti i runtime
|
|
179
|
+
npx @hegemonart/get-design-done --all --global
|
|
180
|
+
|
|
181
|
+
# Dry run
|
|
182
|
+
npx @hegemonart/get-design-done --dry-run
|
|
183
|
+
|
|
184
|
+
# Directory di config personalizzata
|
|
185
|
+
CLAUDE_CONFIG_DIR=/workspace/.claude npx @hegemonart/get-design-done
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
</details>
|
|
189
|
+
|
|
190
|
+
<details>
|
|
191
|
+
<summary><strong>Alternativa: Claude Code CLI</strong></summary>
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
claude plugin marketplace add hegemonart/get-design-done
|
|
195
|
+
claude plugin install get-design-done@get-design-done
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
</details>
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
## Come funziona
|
|
202
|
+
|
|
203
|
+
> **Parti da un codebase esistente?** Esegui prima `/gdd:map`. Dispatcha 5 mapper specialisti in parallelo (tokens, components, visual hierarchy, a11y, motion) e scrive JSON strutturato in `.design/map/`.
|
|
204
|
+
|
|
205
|
+
### 1. Brief
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
/gdd:brief
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Cattura il problema di design prima di qualsiasi scan o esplorazione. Lo skill intervista via `AskUserQuestion`, una domanda alla volta — solo per le sezioni senza risposta: problema, audience, vincoli, metriche di successo, scope.
|
|
212
|
+
|
|
213
|
+
**Crea:** `.design/BRIEF.md`
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
### 2. Explore
|
|
218
|
+
|
|
219
|
+
```
|
|
220
|
+
/gdd:explore
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Inventaria il design system del codebase corrente — colori, tipografia, spaziatura, componenti, motion, a11y, dark-mode. Cinque mapper paralleli + intervista `design-discussant` producono tre artefatti. Le sonde di connessione rilevano la disponibilità di 12 strumenti esterni.
|
|
224
|
+
|
|
225
|
+
**Crea:** `.design/DESIGN.md`, `.design/DESIGN-DEBT.md`, `.design/DESIGN-CONTEXT.md`, `.design/map/{tokens,components,a11y,motion,visual-hierarchy}.{md,json}`
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
### 3. Plan
|
|
230
|
+
|
|
231
|
+
```
|
|
232
|
+
/gdd:plan
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
Scompone l'output di Explore in task atomici, coordinati per onde, con analisi delle dipendenze. Ogni task porta percorsi `Touches:` espliciti, tag di sicurezza parallela e criteri di accettazione. `design-planner` (opus) redige; `design-plan-checker` (haiku) gate-checka prima dell'esecuzione.
|
|
236
|
+
|
|
237
|
+
**Crea:** `.design/DESIGN-PLAN.md`
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
### 4. Design
|
|
242
|
+
|
|
243
|
+
```
|
|
244
|
+
/gdd:design
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
Esegue i task in ordine di onda. Ogni task ottiene un agente `design-executor` dedicato con un nuovo contesto da 200k, commit git atomico e gestione automatica delle deviazioni secondo regole in-context. I task parallel-safe girano in worktree.
|
|
248
|
+
|
|
249
|
+
**Solidify-with-rollback** (v1.23.0) — ogni task valida (typecheck + build + test mirato) prima di consolidarsi. Validazione fallita → revert via `git stash`.
|
|
250
|
+
|
|
251
|
+
**Crea:** un `.design/tasks/task-NN.md` per task, un commit git atomico per task
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
┌────────────────────────────────────────────────────────────────────┐
|
|
255
|
+
│ ESECUZIONE A ONDE │
|
|
256
|
+
├────────────────────────────────────────────────────────────────────┤
|
|
257
|
+
│ │
|
|
258
|
+
│ WAVE 1 (parallelo) WAVE 2 (parallelo) WAVE 3 │
|
|
259
|
+
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
|
|
260
|
+
│ │ Task 01 │ │ Task 02 │ → │ Task 03 │ │ Task 04 │ → │ Task 05 │ │
|
|
261
|
+
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
|
|
262
|
+
│ │ │ ↑ ↑ ↑ │
|
|
263
|
+
│ └───────────┴──────────────┴───────────┴──────────────┘ │
|
|
264
|
+
│ I percorsi Touches: guidano l'analisi delle dipendenze│
|
|
265
|
+
│ │
|
|
266
|
+
└────────────────────────────────────────────────────────────────────┘
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
|
|
271
|
+
### 5. Verify
|
|
272
|
+
|
|
273
|
+
```
|
|
274
|
+
/gdd:verify
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
Verifica rispetto al brief — must-have, euristiche NN/g, rubrica di audit, integrazione di token. Tre agenti girano in sequenza: `design-auditor` (score 6 pilastri 1–4), `design-verifier` (goal-backward), `design-integration-checker` (greppa le decisioni D-XX nel codice). Ai fallimenti produce una lista di gap strutturata e entra in un loop verify→fix via `design-fixer`.
|
|
278
|
+
|
|
279
|
+
**Crea:** `.design/DESIGN-VERIFICATION.md`, commit di fix se trovati problemi
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
### 6. Ship → Reflect → Ciclo successivo
|
|
284
|
+
|
|
285
|
+
```
|
|
286
|
+
/gdd:ship # Genera un branch PR pulito (filtra commit .design/)
|
|
287
|
+
/gdd:reflect # design-reflector legge telemetria + apprendimenti
|
|
288
|
+
/gdd:apply-reflections # Rivedi e applica selettivamente le proposte
|
|
289
|
+
/gdd:complete-cycle # Archivia gli artefatti del ciclo + scrive EXPERIENCE.md
|
|
290
|
+
/gdd:new-cycle # Apre un nuovo ciclo di design
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
O auto-routing:
|
|
294
|
+
|
|
295
|
+
```
|
|
296
|
+
/gdd:next # Auto-rileva lo stato e lancia il prossimo step
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
Ogni ciclo ottiene brief, scan, plan, esecuzione, verifica e un `EXPERIENCE.md` di ciclo (~100–200 righe: Goal / Decisioni / Apprendimenti graduati / Cosa è morto / Handoff al ciclo successivo) che diventa la fonte a priorità più alta per l'hook decision-injector.
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
### Modalità Fast
|
|
304
|
+
|
|
305
|
+
```
|
|
306
|
+
/gdd:fast "<task>"
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
Per fix banali su singolo file che non hanno bisogno della pipeline completa. Salta router, cache-manager e telemetria. Stesse garanzie di commit atomico.
|
|
310
|
+
|
|
311
|
+
```
|
|
312
|
+
/gdd:quick
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
Per task ad-hoc che hanno bisogno delle garanzie GDD ma saltano i gate opzionali (no phase-researcher, no assumptions analyzer, no integration-checker). Più veloce della pipeline completa; più sicuro di `/gdd:fast`.
|
|
316
|
+
|
|
317
|
+
---
|
|
318
|
+
|
|
319
|
+
## Perché funziona
|
|
320
|
+
|
|
321
|
+
### Context engineering
|
|
322
|
+
|
|
323
|
+
Le CLI di coding IA sono potenti **se** le nutri di contesto. La maggior parte delle persone non lo fa.
|
|
324
|
+
|
|
325
|
+
GDD lo gestisce per te:
|
|
326
|
+
|
|
327
|
+
| File | A cosa serve |
|
|
328
|
+
|------|--------------|
|
|
329
|
+
| `.design/BRIEF.md` | Problema, audience, metriche di successo del ciclo |
|
|
330
|
+
| `.design/DESIGN.md` | Snapshot del design system attuale (token, componenti, gerarchia) |
|
|
331
|
+
| `.design/DESIGN-CONTEXT.md` | Decisioni D-XX, risposte d'intervista, vincoli a monte/valle |
|
|
332
|
+
| `.design/DESIGN-PLAN.md` | Task atomici, coreografia di onde, dipendenze |
|
|
333
|
+
| `.design/DESIGN-VERIFICATION.md` | Risultato di verifica, lista gap, score Handoff Faithfulness |
|
|
334
|
+
| `.design/intel/` | Knowledge layer interrogabile |
|
|
335
|
+
| `.design/archive/cycle-N/EXPERIENCE.md` | Retrospettiva di ciclo, memoria tra cicli |
|
|
336
|
+
| `.design/telemetry/events.jsonl` | Stream eventi tipizzato tra fasi |
|
|
337
|
+
| `.design/telemetry/posterior.json` | Posterior del bandit (quando `adaptive_mode != static`) |
|
|
338
|
+
|
|
339
|
+
Limiti di dimensione dove la qualità di Claude degrada. Resta sotto, ottieni coerenza.
|
|
340
|
+
|
|
341
|
+
### 37 agenti specializzati
|
|
342
|
+
|
|
343
|
+
Ogni fase è un orchestratore leggero che spawna agenti specializzati.
|
|
344
|
+
|
|
345
|
+
| Fase | Orchestratore | Agenti |
|
|
346
|
+
|------|---------------|--------|
|
|
347
|
+
| Brief | intervista a una domanda | (no sub-agenti) |
|
|
348
|
+
| Explore | spawna 5 mapper + discussant | 5 mapper paralleli, design-discussant, research-synthesizer |
|
|
349
|
+
| Plan | spawna researcher + planner + checker | design-phase-researcher (opzionale), design-planner (opus), design-plan-checker (haiku) |
|
|
350
|
+
| Design | coordinazione di onde + isolamento worktree | design-executor per task, design-fixer al fallimento solidify |
|
|
351
|
+
| Verify | spawna auditor + verifier + checker | design-auditor, design-verifier, design-integration-checker |
|
|
352
|
+
| Reflect | legge telemetria + apprendimenti | design-reflector (opus), design-authority-watcher, design-update-checker |
|
|
353
|
+
|
|
354
|
+
### 12 connessioni di strumenti
|
|
355
|
+
|
|
356
|
+
Tutte opzionali — la pipeline degrada in modo grazioso quando una connessione non è disponibile:
|
|
357
|
+
|
|
358
|
+
- **Figma** (lettura + scrittura + Code Connect)
|
|
359
|
+
- **Refero** — ricerca riferimenti di design
|
|
360
|
+
- **Pinterest** — ancoraggio di riferimenti visuali
|
|
361
|
+
- **Claude Design** — import di bundle di handoff
|
|
362
|
+
- **Storybook** — lookup di specifiche di componenti
|
|
363
|
+
- **Chromatic** — diff di baseline di regressione visuale
|
|
364
|
+
- **Preview** — screenshot runtime Playwright + Claude Preview MCP
|
|
365
|
+
- **paper.design** — lettura/scrittura canvas MCP
|
|
366
|
+
- **pencil.dev** — file di specifica `.pen` tracciati da git
|
|
367
|
+
- **Graphify** — export di knowledge graph
|
|
368
|
+
- **21st.dev Magic** — ricerca di precedenti prima di build greenfield
|
|
369
|
+
- **Magic Patterns** — generazione di componenti DS-aware
|
|
370
|
+
|
|
371
|
+
### Riferimenti di design integrati
|
|
372
|
+
|
|
373
|
+
Il plugin spedisce **18+ file di riferimento** — NN/g 10, design emozionale di Don Norman, 10 principi di Dieter Rams, 12 principi di Disney (motion), lente di authoring di componenti Sonner / Emil Kowalski, Peak-End, Loss Aversion, Cognitive Load, Aesthetic-Usability, Doherty, Flow, 35 specifiche di componenti, gestalt, gerarchia visuale, brand voice, 161 palette per industria, 67 estetiche UI, 12 easing motion, 8 famiglie di transizione, WCAG 2.1 AA, piattaforme (iOS/Android/web/visionOS/watchOS), RTL/CJK, pattern di form, catalogo anti-pattern.
|
|
374
|
+
|
|
375
|
+
### Commit git atomici
|
|
376
|
+
|
|
377
|
+
```
|
|
378
|
+
abc123f docs(08-02): complete user-card token plan
|
|
379
|
+
def456g feat(08-02): unify card surface tokens with --color-bg-elevated
|
|
380
|
+
hij789k feat(08-02): replace inline padding with --space-* scale
|
|
381
|
+
lmn012o test(08-02): assert card.spec passes WCAG contrast 4.5:1
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
git bisect trova il task fallito esatto. Ogni task è revertabile indipendentemente. Solidify-with-rollback aggiunge un gate di validazione a livello task, quindi un task 3 rotto non corrompe i task 4–10 prima che giri verify.
|
|
385
|
+
|
|
386
|
+
### Loop di auto-miglioramento
|
|
387
|
+
|
|
388
|
+
Dopo ogni ciclo, `design-reflector` (opus) legge `events.jsonl`, `agent-metrics.json`, `learnings/` e propone diff — override di tier, regole di parallelizzazione, aggiunte di reference, aggiornamenti di frontmatter. `/gdd:apply-reflections` mostra il diff e chiede prima di applicare.
|
|
389
|
+
|
|
390
|
+
Il **layer adattivo No-Regret** (v1.23.5) sovrappone un bandit Thompson sampling + ensemble AdaNormalHedge + reranking MMR, utilizzabile single-user via bootstrap con prior informato.
|
|
391
|
+
|
|
392
|
+
### Governance dei costi
|
|
393
|
+
|
|
394
|
+
- **Skill `gdd-router`** — routing deterministico intent → fast / quick / full, senza chiamate al modello.
|
|
395
|
+
- **`gdd-cache-manager`** — cache esplicita Layer-B, hash di input SHA-256, awareness TTL 5 minuti.
|
|
396
|
+
- **Hook PreToolUse `budget-enforcer`** — applica override di tier, cap duri, gate di spawn lazy da `.design/budget.json`.
|
|
397
|
+
- **Telemetria di costo per spawn** — le righe `.design/telemetry/costs.jsonl` alimentano i suggerimenti rule-based di `/gdd:optimize`.
|
|
398
|
+
|
|
399
|
+
Punta a riduzione 50–70% del costo per task senza regressione di qualità.
|
|
400
|
+
|
|
401
|
+
---
|
|
402
|
+
|
|
403
|
+
## Comandi
|
|
404
|
+
|
|
405
|
+
### Pipeline principale
|
|
406
|
+
|
|
407
|
+
| Comando | Cosa fa |
|
|
408
|
+
|---------|---------|
|
|
409
|
+
| `/gdd:brief` | Fase 1 — cattura il brief di design |
|
|
410
|
+
| `/gdd:explore` | Fase 2 — inventario codebase + intervista |
|
|
411
|
+
| `/gdd:plan` | Fase 3 — produce DESIGN-PLAN.md |
|
|
412
|
+
| `/gdd:design` | Fase 4 — esegue per onde |
|
|
413
|
+
| `/gdd:verify` | Fase 5 — verifica rispetto al brief |
|
|
414
|
+
| `/gdd:ship` | Genera un branch PR pulito |
|
|
415
|
+
| `/gdd:next` | Auto-routing alla prossima fase secondo STATE.md |
|
|
416
|
+
| `/gdd:do <text>` | Router in linguaggio naturale |
|
|
417
|
+
| `/gdd:fast <text>` | Fix banale one-shot, senza pipeline |
|
|
418
|
+
| `/gdd:quick` | Task ad-hoc con garanzie GDD ma gate opzionali saltati |
|
|
419
|
+
|
|
420
|
+
### Primo lancio + onboarding
|
|
421
|
+
|
|
422
|
+
| Comando | Cosa fa |
|
|
423
|
+
|---------|---------|
|
|
424
|
+
| `/gdd:start` | Percorso prova primo-lancio — top 3 problemi di design nel repo |
|
|
425
|
+
| `/gdd:new-project` | Inizializza un progetto GDD |
|
|
426
|
+
| `/gdd:connections` | Wizard di onboarding per le 12 integrazioni esterne |
|
|
427
|
+
|
|
428
|
+
### Ciclo di vita
|
|
429
|
+
|
|
430
|
+
| Comando | Cosa fa |
|
|
431
|
+
|---------|---------|
|
|
432
|
+
| `/gdd:new-cycle` | Nuovo ciclo di design |
|
|
433
|
+
| `/gdd:complete-cycle` | Archivia artefatti del ciclo + EXPERIENCE.md |
|
|
434
|
+
| `/gdd:pause` / `/gdd:resume` | Checkpoint numerati |
|
|
435
|
+
| `/gdd:continue` | Alias per `/gdd:resume` |
|
|
436
|
+
| `/gdd:timeline` | Retrospettiva narrativa tra cicli + git log |
|
|
437
|
+
|
|
438
|
+
### Iterazione + decisioni
|
|
439
|
+
|
|
440
|
+
| Comando | Cosa fa |
|
|
441
|
+
|---------|---------|
|
|
442
|
+
| `/gdd:discuss [topic]` | Intervista di design adattiva |
|
|
443
|
+
| `/gdd:list-assumptions` | Far emergere assunzioni nascoste prima del piano |
|
|
444
|
+
| `/gdd:sketch [idea]` | Mockup HTML multi-variante |
|
|
445
|
+
| `/gdd:spike [idea]` | Esperimento di fattibilità timeboxed |
|
|
446
|
+
| `/gdd:sketch-wrap-up` / `/gdd:spike-wrap-up` | Impacchettare i findings in skill locale |
|
|
447
|
+
| `/gdd:audit` | Wrapper verify + audit + reflector |
|
|
448
|
+
| `/gdd:reflect` | Lancia il reflector on-demand |
|
|
449
|
+
| `/gdd:apply-reflections` | Rivedi e applica selettivamente le proposte |
|
|
450
|
+
|
|
451
|
+
### Memoria + knowledge layer
|
|
452
|
+
|
|
453
|
+
| Comando | Cosa fa |
|
|
454
|
+
|---------|---------|
|
|
455
|
+
| `/gdd:recall <query>` | Ricerca FTS5 |
|
|
456
|
+
| `/gdd:extract-learnings` | Estrai pattern/decisioni/lezioni |
|
|
457
|
+
| `/gdd:note <text>` | Cattura idee senza attriti |
|
|
458
|
+
| `/gdd:plant-seed <idea>` | Idea forward-looking con condizione di trigger |
|
|
459
|
+
| `/gdd:analyze-dependencies` | Token fan-out, call-graph, tracciabilità delle decisioni |
|
|
460
|
+
| `/gdd:skill-manifest` | Lista tutti gli skill e agenti GDD |
|
|
461
|
+
| `/gdd:graphify` | Costruisci/interroga/diff il knowledge graph |
|
|
462
|
+
| `/gdd:watch-authorities` | Diff della whitelist dei feed di autorità |
|
|
463
|
+
|
|
464
|
+
### Connessioni
|
|
465
|
+
|
|
466
|
+
| Comando | Cosa fa |
|
|
467
|
+
|---------|---------|
|
|
468
|
+
| `/gdd:figma-write` | Riscrive le decisioni di design su Figma |
|
|
469
|
+
| `/gdd:handoff <bundle>` | Importa un bundle Claude Design |
|
|
470
|
+
| `/gdd:darkmode` | Audita l'implementazione dark-mode |
|
|
471
|
+
| `/gdd:compare` | Calcola il delta DESIGN.md vs DESIGN-VERIFICATION.md |
|
|
472
|
+
| `/gdd:style <Component>` | Genera doc di handoff di componente |
|
|
473
|
+
|
|
474
|
+
### Diagnostica + forensica
|
|
475
|
+
|
|
476
|
+
| Comando | Cosa fa |
|
|
477
|
+
|---------|---------|
|
|
478
|
+
| `/gdd:scan` | Inventario design system del codebase |
|
|
479
|
+
| `/gdd:map` | 5 mapper paralleli del codebase |
|
|
480
|
+
| `/gdd:debug [desc]` | Indagine di design symptom-driven |
|
|
481
|
+
| `/gdd:health` | Report di salute degli artefatti `.design/` |
|
|
482
|
+
| `/gdd:progress` | Posizione nella pipeline |
|
|
483
|
+
| `/gdd:stats` | Statistiche di ciclo |
|
|
484
|
+
| `/gdd:optimize` | Analisi costi rule-based |
|
|
485
|
+
| `/gdd:warm-cache` | Pre-riscalda la cache Anthropic |
|
|
486
|
+
|
|
487
|
+
### Distribuzione + update
|
|
488
|
+
|
|
489
|
+
| Comando | Cosa fa |
|
|
490
|
+
|---------|---------|
|
|
491
|
+
| `/gdd:update` | Aggiorna GDD con preview del changelog |
|
|
492
|
+
| `/gdd:reapply-patches` | Ri-stitch delle modifiche locali `reference/` |
|
|
493
|
+
| `/gdd:check-update` | Check manuale degli update |
|
|
494
|
+
| `/gdd:settings` | Configura `.design/config.json` |
|
|
495
|
+
| `/gdd:set-profile <profile>` | Cambia profilo del modello |
|
|
496
|
+
| `/gdd:undo` | Revert sicuro di cambiamento di design |
|
|
497
|
+
| `/gdd:pr-branch` | Branch PR pulito |
|
|
498
|
+
|
|
499
|
+
### Backlog + note
|
|
500
|
+
|
|
501
|
+
| Comando | Cosa fa |
|
|
502
|
+
|---------|---------|
|
|
503
|
+
| `/gdd:todo` | Aggiungi / lista / scegli task di design |
|
|
504
|
+
| `/gdd:add-backlog <idea>` | Parcheggia idea per ciclo futuro |
|
|
505
|
+
| `/gdd:review-backlog` | Rivedi gli elementi parcheggiati |
|
|
506
|
+
|
|
507
|
+
### Aiuto
|
|
508
|
+
|
|
509
|
+
| Comando | Cosa fa |
|
|
510
|
+
|---------|---------|
|
|
511
|
+
| `/gdd:help` | Lista completa dei comandi e uso |
|
|
512
|
+
| `/gdd:bandit-reset` | Resetta il posterior del layer adattivo al rilascio di un nuovo modello Anthropic |
|
|
513
|
+
|
|
514
|
+
---
|
|
515
|
+
|
|
516
|
+
## Connessioni
|
|
517
|
+
|
|
518
|
+
GDD spedisce 12 connessioni di strumenti. Tutte opzionali. Configurate con `/gdd:connections`.
|
|
519
|
+
|
|
520
|
+
| Connessione | Scopo | Sonda |
|
|
521
|
+
|-------------|-------|-------|
|
|
522
|
+
| **Figma** | Leggi token, componenti, screenshot; scrivi annotazioni, Code Connect, stato di implementazione | `mcp__figma__get_metadata` + `use_figma` |
|
|
523
|
+
| **Refero** | Ricerca riferimenti di design | `mcp__refero__search` |
|
|
524
|
+
| **Pinterest** | Riferimento visuale per brand voice + stile | OAuth + MCP |
|
|
525
|
+
| **Claude Design** | Import di bundle di handoff | URL o file locale |
|
|
526
|
+
| **Storybook** | Lookup specifiche di componenti su porta 6006 | Sonda HTTP |
|
|
527
|
+
| **Chromatic** | Diff di baseline di regressione visuale | API key |
|
|
528
|
+
| **Preview** | Screenshot runtime Playwright + Claude Preview MCP | `mcp__Claude_Preview__preview_*` |
|
|
529
|
+
| **paper.design** | Lettura/scrittura canvas MCP | `mcp__paper__use_paper` |
|
|
530
|
+
| **pencil.dev** | Specifiche `.pen` tracciate da git | File `.pen` nel repo |
|
|
531
|
+
| **Graphify** | Export di knowledge graph | `mcp__graphify__*` |
|
|
532
|
+
| **21st.dev Magic** | Ricerca di precedenti prima di greenfield | `mcp__magic__search` |
|
|
533
|
+
| **Magic Patterns** | Generazione di componenti DS-aware | `mcp__magic-patterns__generate` |
|
|
534
|
+
|
|
535
|
+
Dettagli completi in [`connections/connections.md`](connections/connections.md).
|
|
536
|
+
|
|
537
|
+
---
|
|
538
|
+
|
|
539
|
+
## Configurazione
|
|
540
|
+
|
|
541
|
+
GDD memorizza le impostazioni di progetto in `.design/config.json`. Configura durante `/gdd:new-project` o aggiorna con `/gdd:settings`.
|
|
542
|
+
|
|
543
|
+
### Profili di modello
|
|
544
|
+
|
|
545
|
+
| Profilo | Planning | Esecuzione | Verifica |
|
|
546
|
+
|---------|----------|------------|----------|
|
|
547
|
+
| `quality` | Opus | Opus | Sonnet |
|
|
548
|
+
| `balanced` (default) | Opus | Sonnet | Sonnet |
|
|
549
|
+
| `budget` | Sonnet | Sonnet | Haiku |
|
|
550
|
+
| `inherit` | Inherit | Inherit | Inherit |
|
|
551
|
+
|
|
552
|
+
```
|
|
553
|
+
/gdd:set-profile budget
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
### Modalità adattiva
|
|
557
|
+
|
|
558
|
+
Scala `.design/budget.json#adaptive_mode` (v1.23.5):
|
|
559
|
+
|
|
560
|
+
| Modalità | Cosa fa |
|
|
561
|
+
|----------|---------|
|
|
562
|
+
| `static` (default) | Comportamento Phase 10.1 |
|
|
563
|
+
| `hedge` | Ensemble AdaNormalHedge + reranking MMR attivati. Introduzione più sicura. |
|
|
564
|
+
| `full` | Bandit router + Hedge + MMR tutti attivi |
|
|
565
|
+
|
|
566
|
+
### Parallelismo
|
|
567
|
+
|
|
568
|
+
| Impostazione | Default | Cosa controlla |
|
|
569
|
+
|--------------|---------|----------------|
|
|
570
|
+
| `parallelism.enabled` | `true` | Eseguire task indipendenti in worktree |
|
|
571
|
+
| `parallelism.min_estimated_savings_seconds` | `30` | Sotto questa soglia salta la parallelizzazione |
|
|
572
|
+
| `parallelism.max_concurrent_workers` | `4` | Cap duro su worker simultanei |
|
|
573
|
+
|
|
574
|
+
### Quality gate
|
|
575
|
+
|
|
576
|
+
| Impostazione | Default | Cosa controlla |
|
|
577
|
+
|--------------|---------|----------------|
|
|
578
|
+
| `solidify.rollback_mode` | `"stash"` | `stash` / `hard` / `none` |
|
|
579
|
+
| `solidify.commands` | autodetect | Override comandi typecheck / build / test |
|
|
580
|
+
| `verify.iterations_max` | `3` | Cap del loop verify→fix |
|
|
581
|
+
| `connection.figma_writeback` | `proposal` | `proposal` / `auto` |
|
|
582
|
+
|
|
583
|
+
---
|
|
584
|
+
|
|
585
|
+
## Sicurezza
|
|
586
|
+
|
|
587
|
+
### Hardening integrato
|
|
588
|
+
|
|
589
|
+
GDD spedisce defense-in-depth dalla Phase 14.5:
|
|
590
|
+
|
|
591
|
+
- **`hooks/gdd-bash-guard.js`** — PreToolUse:Bash blocca circa 50 pattern pericolosi dopo normalizzazione Unicode NFKC + ANSI.
|
|
592
|
+
- **`hooks/gdd-protected-paths.js`** — PreToolUse:Edit/Write/Bash impone la lista glob `protected_paths`.
|
|
593
|
+
- **`hooks/gdd-read-injection-scanner.ts`** — scansiona il contenuto Read in ingresso per Unicode invisibile, commenti HTML, pattern di esfiltrazione di segreti.
|
|
594
|
+
- **`scripts/lib/blast-radius.cjs`** — preflight di `design-executor` rifiuta task sopra `max_files_per_task: 10` / `max_lines_per_task: 400`.
|
|
595
|
+
- **`hooks/gdd-mcp-circuit-breaker.js`** — interrompe loop di timeout consecutivi su `use_figma` / `use_paper` / `use_pencil`.
|
|
596
|
+
|
|
597
|
+
### Proteggere file sensibili
|
|
598
|
+
|
|
599
|
+
Aggiungi i percorsi sensibili alla deny list del runtime:
|
|
600
|
+
|
|
601
|
+
```json
|
|
602
|
+
{
|
|
603
|
+
"permissions": {
|
|
604
|
+
"deny": [
|
|
605
|
+
"Read(.env)",
|
|
606
|
+
"Read(.env.*)",
|
|
607
|
+
"Read(**/secrets/*)",
|
|
608
|
+
"Read(**/*credential*)",
|
|
609
|
+
"Read(**/*.pem)",
|
|
610
|
+
"Read(**/*.key)"
|
|
611
|
+
]
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
```
|
|
615
|
+
|
|
616
|
+
> [!IMPORTANT]
|
|
617
|
+
> Poiché GDD genera file markdown che diventano prompt di sistema LLM, qualsiasi testo controllato dall'utente che fluisce negli artefatti `.design/` è un potenziale vettore di prompt injection indiretta. Lo scanner di injection cattura tali vettori a più livelli — ma il defense-in-depth resta best practice.
|
|
618
|
+
|
|
619
|
+
---
|
|
620
|
+
|
|
621
|
+
## Risoluzione problemi
|
|
622
|
+
|
|
623
|
+
**Comandi non trovati dopo l'installazione?**
|
|
624
|
+
- Riavvia il runtime
|
|
625
|
+
- Verifica `~/.claude/skills/get-design-done/` (globale) o `./.claude/skills/get-design-done/` (locale)
|
|
626
|
+
- `/gdd:help` per confermare la registrazione
|
|
627
|
+
|
|
628
|
+
**Pipeline bloccata a metà fase?**
|
|
629
|
+
- `/gdd:resume` — ripristina dal checkpoint numerato più recente
|
|
630
|
+
- `/gdd:health` — diagnostica problemi di artefatti `.design/`
|
|
631
|
+
- `/gdd:progress --forensic` — audit di integrità a 6 check
|
|
632
|
+
|
|
633
|
+
**Sforamento di costi?**
|
|
634
|
+
- `/gdd:optimize` — raccomandazioni rule-based
|
|
635
|
+
- `/gdd:set-profile budget` — passa a tier budget
|
|
636
|
+
- Imposta `adaptive_mode: "full"` in `.design/budget.json` — il bandit imparerà
|
|
637
|
+
|
|
638
|
+
**Aggiornamento all'ultima versione?**
|
|
639
|
+
```bash
|
|
640
|
+
npx @hegemonart/get-design-done@latest
|
|
641
|
+
```
|
|
642
|
+
|
|
643
|
+
**Docker / container?**
|
|
644
|
+
|
|
645
|
+
```bash
|
|
646
|
+
CLAUDE_CONFIG_DIR=/workspace/.claude npx @hegemonart/get-design-done
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
### Disinstallazione
|
|
650
|
+
|
|
651
|
+
```bash
|
|
652
|
+
# Disinstallazione globale (per runtime)
|
|
653
|
+
npx @hegemonart/get-design-done --claude --global --uninstall
|
|
654
|
+
npx @hegemonart/get-design-done --opencode --global --uninstall
|
|
655
|
+
# ... stesso pattern --<runtime> --global --uninstall per i 14 runtime
|
|
656
|
+
|
|
657
|
+
# Disinstallazione interattiva multi-select (senza flag di runtime)
|
|
658
|
+
npx @hegemonart/get-design-done --uninstall
|
|
659
|
+
|
|
660
|
+
# Disinstallazione locale
|
|
661
|
+
npx @hegemonart/get-design-done --claude --local --uninstall
|
|
662
|
+
# ... con flag --local
|
|
663
|
+
```
|
|
664
|
+
|
|
665
|
+
Rimuove tutti i comandi, agenti, hook e impostazioni GDD preservando le altre configurazioni.
|
|
666
|
+
|
|
667
|
+
---
|
|
668
|
+
|
|
669
|
+
## Licenza
|
|
670
|
+
|
|
671
|
+
Licenza MIT. Vedi [LICENSE](LICENSE) per i dettagli.
|
|
672
|
+
|
|
673
|
+
---
|
|
674
|
+
|
|
675
|
+
<div align="center">
|
|
676
|
+
|
|
677
|
+
**Claude Code rilascia codice. Get Design Done si assicura che rilasci anche design.**
|
|
678
|
+
|
|
679
|
+
</div>
|