@hegemonart/get-design-done 1.59.5 → 1.59.7
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 +54 -0
- package/README.md +219 -441
- package/SKILL.md +2 -2
- package/docs/i18n/README.de.md +212 -527
- package/docs/i18n/README.fr.md +203 -518
- package/docs/i18n/README.it.md +211 -526
- package/docs/i18n/README.ja.md +209 -524
- package/docs/i18n/README.ko.md +210 -525
- package/docs/i18n/README.zh-CN.md +215 -551
- package/package.json +1 -1
- package/reference/skill-graph.md +4 -1
- package/scripts/lib/install/doctor-codex-plugin.cjs +1 -1
- package/scripts/lib/install/doctor-cursor-marketplace.cjs +2 -2
- package/scripts/lib/manifest/skills.json +13 -0
- package/scripts/skill-templates/handoff/SKILL.md +99 -0
- package/skills/handoff/SKILL.md +99 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hegemonart/get-design-done",
|
|
3
|
-
"version": "1.59.
|
|
3
|
+
"version": "1.59.7",
|
|
4
4
|
"description": "A design-quality pipeline for AI coding agents: brief, explore, plan, design, and verify UI work against your design system.",
|
|
5
5
|
"author": "Hegemon",
|
|
6
6
|
"homepage": "https://github.com/hegemonart/get-design-done",
|
package/reference/skill-graph.md
CHANGED
|
@@ -9,7 +9,7 @@ is a `composes_with` edge (the source calls the target as sub-orchestration); a
|
|
|
9
9
|
a `next_skills` edge (a pipeline hint for what runs next). Stage grouping is best-effort and
|
|
10
10
|
inferred from the skill name; skills with no stage keyword fall under Utility.
|
|
11
11
|
|
|
12
|
-
Skills:
|
|
12
|
+
Skills: 96. Composition edges: 20 composes_with, 7 next_skills.
|
|
13
13
|
|
|
14
14
|
```mermaid
|
|
15
15
|
flowchart TD
|
|
@@ -78,6 +78,7 @@ flowchart TD
|
|
|
78
78
|
n_fast["fast"]
|
|
79
79
|
n_figma_extract["figma-extract"]
|
|
80
80
|
n_graphify["graphify"]
|
|
81
|
+
n_handoff["handoff"]
|
|
81
82
|
n_health["health"]
|
|
82
83
|
n_help["help"]
|
|
83
84
|
n_instinct["instinct"]
|
|
@@ -138,6 +139,8 @@ flowchart TD
|
|
|
138
139
|
n_explore --> n_list_assumptions
|
|
139
140
|
n_explore --> n_sketch
|
|
140
141
|
n_explore -.-> n_plan
|
|
142
|
+
n_handoff --> n_verify
|
|
143
|
+
n_handoff -.-> n_verify
|
|
141
144
|
n_new_cycle --> n_brief
|
|
142
145
|
n_new_project --> n_brief
|
|
143
146
|
n_new_project -.-> n_brief
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* path is COMPUTED (pure string composition via `os.homedir()`), NOT
|
|
21
21
|
* verified. The maintainer verifies the cache after running the field-
|
|
22
22
|
* test command on a Codex-installed machine (see
|
|
23
|
-
*
|
|
23
|
+
* the maintainer field-test notes).
|
|
24
24
|
*
|
|
25
25
|
* Phase 28.8 D-14: the `.claude-plugin/marketplace.json` catalog file is
|
|
26
26
|
* reused from Claude Code's marketplace per Codex's legacy-compatible
|
|
@@ -137,14 +137,14 @@ function readJsonFileSafe(filePath) {
|
|
|
137
137
|
function buildGuidance(r) {
|
|
138
138
|
switch (r.state) {
|
|
139
139
|
case MARKETPLACE_STATES.NOT_SUBMITTED:
|
|
140
|
-
return 'submit publisher application at cursor.com/marketplace/publish
|
|
140
|
+
return 'submit publisher application at cursor.com/marketplace/publish';
|
|
141
141
|
case MARKETPLACE_STATES.SUBMITTED_PENDING:
|
|
142
142
|
return 'await Cursor team review approval; no published SLA per D-16';
|
|
143
143
|
case MARKETPLACE_STATES.APPROVED_PUBLISHED:
|
|
144
144
|
return 'plugin is live at ' + (r.marketplaceUrl || '<marketplace-url>');
|
|
145
145
|
case MARKETPLACE_STATES.REJECTED:
|
|
146
146
|
return 'address rejection reason: ' + (r.rejectionReason || '<unspecified>')
|
|
147
|
-
+ '; re-submit
|
|
147
|
+
+ '; re-submit at cursor.com/marketplace/publish';
|
|
148
148
|
default:
|
|
149
149
|
return '';
|
|
150
150
|
}
|
|
@@ -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.
|