@hegemonart/get-design-done 1.59.4 → 1.59.6
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 +4 -4
- package/.claude-plugin/plugin.json +2 -2
- package/CHANGELOG.md +62 -0
- package/README.md +223 -436
- package/SKILL.md +2 -2
- package/docs/i18n/README.de.md +2 -0
- package/docs/i18n/README.fr.md +2 -0
- package/docs/i18n/README.it.md +2 -0
- package/docs/i18n/README.ja.md +2 -0
- package/docs/i18n/README.ko.md +2 -0
- package/docs/i18n/README.zh-CN.md +2 -0
- package/hooks/budget-enforcer.ts +134 -7
- package/package.json +1 -1
- package/reference/runtime-models.md +15 -15
- package/reference/schemas/generated.d.ts +4 -0
- package/reference/schemas/runtime-models.schema.json +5 -0
- package/reference/skill-graph.md +4 -1
- package/scripts/lib/bandit-router/integration.cjs +38 -0
- package/scripts/lib/install/installer.cjs +133 -1
- package/scripts/lib/manifest/skills.json +13 -0
- package/scripts/skill-templates/handoff/SKILL.md +99 -0
- package/skills/handoff/SKILL.md +99 -0
|
@@ -218,6 +218,19 @@
|
|
|
218
218
|
"name": "graphify",
|
|
219
219
|
"description": "Manage the Graphify knowledge graph for the current project. Build, query, status, diff. When available, design-planner and design-integration-checker use the graph for pre-search consultation."
|
|
220
220
|
},
|
|
221
|
+
{
|
|
222
|
+
"name": "handoff",
|
|
223
|
+
"description": "Handoff-first entry point that initializes a cycle from a Claude Design handoff bundle (URL, ZIP, HTML, PDF, or PPTX), skips the explore/plan stages, and routes straight to post-handoff verify. Thin wrapper over the Handoff Routing logic in the root pipeline router and the claude-design connection. Use when a Claude Design bundle was sent or dropped into the project and you want to implement and verify it without re-running discovery, or when arguments start with handoff or contain --from-handoff.",
|
|
224
|
+
"argument_hint": "<bundle-path-or-url>",
|
|
225
|
+
"user_invocable": true,
|
|
226
|
+
"tools": "Read, Write, Bash, Glob, Grep, Task",
|
|
227
|
+
"composes_with": [
|
|
228
|
+
"verify"
|
|
229
|
+
],
|
|
230
|
+
"next_skills": [
|
|
231
|
+
"verify"
|
|
232
|
+
]
|
|
233
|
+
},
|
|
221
234
|
{
|
|
222
235
|
"name": "health",
|
|
223
236
|
"description": "Reports .design/ artifact health - staleness, missing files, token drift, broken state transitions. Activates for requests involving checking .design artifact health, staleness, token drift, or broken state transitions.",
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gdd-handoff
|
|
3
|
+
description: "Handoff-first entry point that initializes a cycle from a Claude Design handoff bundle (URL, ZIP, HTML, PDF, or PPTX), skips the explore/plan stages, and routes straight to post-handoff verify. Thin wrapper over the Handoff Routing logic in the root pipeline router and the claude-design connection. Use when a Claude Design bundle was sent or dropped into the project and you want to implement and verify it without re-running discovery, or when arguments start with handoff or contain --from-handoff."
|
|
4
|
+
argument-hint: "<bundle-path-or-url>"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
tools: Read, Write, Bash, Glob, Grep, Task
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# gdd-handoff
|
|
10
|
+
|
|
11
|
+
Initialize a design cycle from a Claude Design handoff bundle, then route to verify in
|
|
12
|
+
post-handoff mode. This skill is the named home for the inline **Handoff Routing** block in
|
|
13
|
+
the root pipeline router (`SKILL.md`); invoking `{{command_prefix}}handoff <path>` runs the
|
|
14
|
+
same sequence. See `connections/claude-design.md` for bundle formats and parsing rules.
|
|
15
|
+
|
|
16
|
+
## Role
|
|
17
|
+
|
|
18
|
+
You do no design work yourself. You resolve a handoff bundle, seed `.design/STATE.md` for a
|
|
19
|
+
handoff-sourced cycle, dispatch the synthesizer + discussant agents, and hand off to the
|
|
20
|
+
verify skill. Stages scan/discover/plan are skipped by design - a handoff bundle replaces them.
|
|
21
|
+
|
|
22
|
+
## Invocation Contract
|
|
23
|
+
|
|
24
|
+
- **Input**: a bundle path or hosted URL as the argument, OR `--from-handoff <path>`, OR a
|
|
25
|
+
previously-recorded `handoff_path` in `.design/STATE.md`.
|
|
26
|
+
- **Output**: a handoff-sourced `.design/STATE.md` and a routed call to
|
|
27
|
+
`Skill("get-design-done:verify", "--post-handoff")`.
|
|
28
|
+
|
|
29
|
+
## Procedure
|
|
30
|
+
|
|
31
|
+
### 1. Resolve the bundle path
|
|
32
|
+
|
|
33
|
+
- `{{command_prefix}}handoff <path>` -> bundle path is the argument.
|
|
34
|
+
- `--from-handoff <path>` -> bundle path is the value after the flag.
|
|
35
|
+
- A `https://api.anthropic.com/v1/design/h/<hash>` URL in the arguments -> treat as the bundle.
|
|
36
|
+
- None of the above -> read `handoff_path` from `.design/STATE.md`. Still absent -> error:
|
|
37
|
+
"Provide a bundle path: {{command_prefix}}handoff ./path/to/bundle.html".
|
|
38
|
+
- For a file path: verify the file exists; if not, error "Bundle not found at <path>".
|
|
39
|
+
|
|
40
|
+
### 2. Initialize STATE.md
|
|
41
|
+
|
|
42
|
+
- If `.design/STATE.md` does not exist, copy `reference/STATE-TEMPLATE.md` to `.design/STATE.md`.
|
|
43
|
+
- In `<position>` set: `handoff_source` (per the bundle format - see the claude-design
|
|
44
|
+
connection table), `handoff_path: <resolved path>`, `skipped_stages: scan, discover, plan`,
|
|
45
|
+
`status: handoff-sourced`, `stage: verify`.
|
|
46
|
+
- In `<connections>` set `claude_design: available`; leave every other connection unchanged.
|
|
47
|
+
|
|
48
|
+
### 3. Spawn the synthesizer in handoff mode
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
Task("design-research-synthesizer", """
|
|
52
|
+
mode: handoff
|
|
53
|
+
handoff_path: <resolved bundle path>
|
|
54
|
+
state_path: .design/STATE.md
|
|
55
|
+
""")
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Wait for `## SYNTHESIZE COMPLETE`.
|
|
59
|
+
|
|
60
|
+
### 4. Spawn the discussant in from-handoff mode
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
Task("design-discussant", """
|
|
64
|
+
<mode>--from-handoff</mode>
|
|
65
|
+
<required_reading>.design/STATE.md</required_reading>
|
|
66
|
+
""")
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Wait for `## DISCUSS COMPLETE`. This step surfaces every `(tentative)` decision for user
|
|
70
|
+
confirmation; do not skip it - implementing against unconfirmed inferred values is the primary
|
|
71
|
+
handoff failure mode.
|
|
72
|
+
|
|
73
|
+
### 5. Route to verify
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
Skill("get-design-done:verify", "--post-handoff")
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Verify relaxes the DESIGN-PLAN.md prerequisite for handoff flows and adds a Handoff
|
|
80
|
+
Faithfulness section to DESIGN-VERIFICATION.md.
|
|
81
|
+
|
|
82
|
+
### 6. Optional write-back (post-verify)
|
|
83
|
+
|
|
84
|
+
After verify completes without FAIL-level gaps, check STATE.md `<connections>` for `figma:`.
|
|
85
|
+
If `figma: available`, offer to write implementation status back to Figma (annotates frames +
|
|
86
|
+
Code Connect mappings) via `agents/design-figma-writer.md` with `mode: implementation-status`.
|
|
87
|
+
Skip silently when figma is `not_configured` or `unavailable`.
|
|
88
|
+
|
|
89
|
+
## Do Not
|
|
90
|
+
|
|
91
|
+
- Do not run scan, discover, or plan - the bundle replaces them.
|
|
92
|
+
- Do not promote PDF/PPTX-sourced decisions to `(locked)` without explicit user confirmation.
|
|
93
|
+
- Do not commit raw extracted bundle files - only persist decisions to STATE.md.
|
|
94
|
+
|
|
95
|
+
## Cross-references
|
|
96
|
+
|
|
97
|
+
- `connections/claude-design.md` - bundle formats, field catalogue, confidence tagging.
|
|
98
|
+
- Root `SKILL.md` `## Handoff Routing` - the inline routing this skill wraps.
|
|
99
|
+
- `get-design-done:verify` (`--post-handoff`) - the stage this skill routes to.
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gdd-handoff
|
|
3
|
+
description: "Handoff-first entry point that initializes a cycle from a Claude Design handoff bundle (URL, ZIP, HTML, PDF, or PPTX), skips the explore/plan stages, and routes straight to post-handoff verify. Thin wrapper over the Handoff Routing logic in the root pipeline router and the claude-design connection. Use when a Claude Design bundle was sent or dropped into the project and you want to implement and verify it without re-running discovery, or when arguments start with handoff or contain --from-handoff."
|
|
4
|
+
argument-hint: "<bundle-path-or-url>"
|
|
5
|
+
user-invocable: true
|
|
6
|
+
tools: Read, Write, Bash, Glob, Grep, Task
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# gdd-handoff
|
|
10
|
+
|
|
11
|
+
Initialize a design cycle from a Claude Design handoff bundle, then route to verify in
|
|
12
|
+
post-handoff mode. This skill is the named home for the inline **Handoff Routing** block in
|
|
13
|
+
the root pipeline router (`SKILL.md`); invoking `/gdd:handoff <path>` runs the
|
|
14
|
+
same sequence. See `connections/claude-design.md` for bundle formats and parsing rules.
|
|
15
|
+
|
|
16
|
+
## Role
|
|
17
|
+
|
|
18
|
+
You do no design work yourself. You resolve a handoff bundle, seed `.design/STATE.md` for a
|
|
19
|
+
handoff-sourced cycle, dispatch the synthesizer + discussant agents, and hand off to the
|
|
20
|
+
verify skill. Stages scan/discover/plan are skipped by design - a handoff bundle replaces them.
|
|
21
|
+
|
|
22
|
+
## Invocation Contract
|
|
23
|
+
|
|
24
|
+
- **Input**: a bundle path or hosted URL as the argument, OR `--from-handoff <path>`, OR a
|
|
25
|
+
previously-recorded `handoff_path` in `.design/STATE.md`.
|
|
26
|
+
- **Output**: a handoff-sourced `.design/STATE.md` and a routed call to
|
|
27
|
+
`Skill("get-design-done:verify", "--post-handoff")`.
|
|
28
|
+
|
|
29
|
+
## Procedure
|
|
30
|
+
|
|
31
|
+
### 1. Resolve the bundle path
|
|
32
|
+
|
|
33
|
+
- `/gdd:handoff <path>` -> bundle path is the argument.
|
|
34
|
+
- `--from-handoff <path>` -> bundle path is the value after the flag.
|
|
35
|
+
- A `https://api.anthropic.com/v1/design/h/<hash>` URL in the arguments -> treat as the bundle.
|
|
36
|
+
- None of the above -> read `handoff_path` from `.design/STATE.md`. Still absent -> error:
|
|
37
|
+
"Provide a bundle path: /gdd:handoff ./path/to/bundle.html".
|
|
38
|
+
- For a file path: verify the file exists; if not, error "Bundle not found at <path>".
|
|
39
|
+
|
|
40
|
+
### 2. Initialize STATE.md
|
|
41
|
+
|
|
42
|
+
- If `.design/STATE.md` does not exist, copy `reference/STATE-TEMPLATE.md` to `.design/STATE.md`.
|
|
43
|
+
- In `<position>` set: `handoff_source` (per the bundle format - see the claude-design
|
|
44
|
+
connection table), `handoff_path: <resolved path>`, `skipped_stages: scan, discover, plan`,
|
|
45
|
+
`status: handoff-sourced`, `stage: verify`.
|
|
46
|
+
- In `<connections>` set `claude_design: available`; leave every other connection unchanged.
|
|
47
|
+
|
|
48
|
+
### 3. Spawn the synthesizer in handoff mode
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
Task("design-research-synthesizer", """
|
|
52
|
+
mode: handoff
|
|
53
|
+
handoff_path: <resolved bundle path>
|
|
54
|
+
state_path: .design/STATE.md
|
|
55
|
+
""")
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
Wait for `## SYNTHESIZE COMPLETE`.
|
|
59
|
+
|
|
60
|
+
### 4. Spawn the discussant in from-handoff mode
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
Task("design-discussant", """
|
|
64
|
+
<mode>--from-handoff</mode>
|
|
65
|
+
<required_reading>.design/STATE.md</required_reading>
|
|
66
|
+
""")
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Wait for `## DISCUSS COMPLETE`. This step surfaces every `(tentative)` decision for user
|
|
70
|
+
confirmation; do not skip it - implementing against unconfirmed inferred values is the primary
|
|
71
|
+
handoff failure mode.
|
|
72
|
+
|
|
73
|
+
### 5. Route to verify
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
Skill("get-design-done:verify", "--post-handoff")
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Verify relaxes the DESIGN-PLAN.md prerequisite for handoff flows and adds a Handoff
|
|
80
|
+
Faithfulness section to DESIGN-VERIFICATION.md.
|
|
81
|
+
|
|
82
|
+
### 6. Optional write-back (post-verify)
|
|
83
|
+
|
|
84
|
+
After verify completes without FAIL-level gaps, check STATE.md `<connections>` for `figma:`.
|
|
85
|
+
If `figma: available`, offer to write implementation status back to Figma (annotates frames +
|
|
86
|
+
Code Connect mappings) via `agents/design-figma-writer.md` with `mode: implementation-status`.
|
|
87
|
+
Skip silently when figma is `not_configured` or `unavailable`.
|
|
88
|
+
|
|
89
|
+
## Do Not
|
|
90
|
+
|
|
91
|
+
- Do not run scan, discover, or plan - the bundle replaces them.
|
|
92
|
+
- Do not promote PDF/PPTX-sourced decisions to `(locked)` without explicit user confirmation.
|
|
93
|
+
- Do not commit raw extracted bundle files - only persist decisions to STATE.md.
|
|
94
|
+
|
|
95
|
+
## Cross-references
|
|
96
|
+
|
|
97
|
+
- `connections/claude-design.md` - bundle formats, field catalogue, confidence tagging.
|
|
98
|
+
- Root `SKILL.md` `## Handoff Routing` - the inline routing this skill wraps.
|
|
99
|
+
- `get-design-done:verify` (`--post-handoff`) - the stage this skill routes to.
|