@super-hands/connect 0.1.21 → 0.1.24

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.
Files changed (2) hide show
  1. package/client.mjs +69 -18
  2. package/package.json +1 -1
package/client.mjs CHANGED
@@ -42,7 +42,7 @@ function codexConfigBlock(args) {
42
42
  }
43
43
 
44
44
  // lib/connect-skill.ts
45
- var CONNECT_SKILL_VERSION = 14;
45
+ var CONNECT_SKILL_VERSION = 17;
46
46
  var CONNECT_SKILL_DIR = MCP_SERVER_KEY;
47
47
  var CONNECT_SKILL_FILENAME = "SKILL.md";
48
48
  var VERSION_MARKER = `[//]: # (superhands-skill-version: ${CONNECT_SKILL_VERSION})`;
@@ -63,6 +63,15 @@ describe how agents should build in this product. Source labels tell you where
63
63
  an instruction came from and how to read it; they are not a choice about which
64
64
  half to follow.
65
65
 
66
+ Design traces connect guidance to reported changes, evidence and designer review.
67
+ For this task, create a stable task reference once (for example a UUID), and send
68
+ it as \`trace.taskId\` on the first Instructions read. Reuse it if that read
69
+ needs retrying. Save the returned \`trace.runId\` and \`trace.decisionId\`;
70
+ send \`trace.runId\` on every later read and report. Do not use a transport
71
+ session or a shared credential as a task identity. Send \`trace.target\` for
72
+ known screens/parts, \`trace.phase\` (before or during), and \`trace.trigger\`
73
+ when an observation prompted guidance. Unknown scope stays unknown.
74
+
66
75
  Before you build, change, or restyle any UI:
67
76
 
68
77
  1. Call the \`superhands_get_instructions\` MCP tool with \`intent\` set to what
@@ -115,30 +124,72 @@ Before you build, change, or restyle any UI:
115
124
  entries pull in different directions, prefer the more specific instruction,
116
125
  preserve explicit exceptions, and call out any conflict you cannot honestly
117
126
  resolve.
118
- 5. As your work reaches files your opening intent never mentioned, call
127
+ 5. Keep each design decision explicit. Use \`superhands_report_trace\` with the
128
+ runId, a stable eventId and occurredAt timestamp (reuse both on retries).
129
+ Send a \`decision\` event with the returned delivery IDs when one context
130
+ response supports several decisions; use \`replaces\` to refine a provisional
131
+ group without counting both. Title it \u201CSuggested \u2026\u201D until output inspection
132
+ establishes reuse. Keep conflicting sources and any explicit resolution.
133
+ Register each identifiable output with an \`output\` event: revision,
134
+ identity (commit:<sha>[:dirty-digest], deployment:<build-id>, or
135
+ artifact:<digest>), label and target. A preview URL is only a locator.
136
+ Later revisions name the preceding revision in \`supersedes\`.
137
+ Send \`response\` events with decisionId, revision, description and
138
+ \`reported_applied\`, \`reported_adapted\`, or \`reported_rejected\`.
139
+ Include a concise explicit reason when useful; never provide private reasoning.
140
+ Agent reports and agent-run checks are labelled **Agent reported**, not
141
+ independent verification. A screenshot is an artifact, not a passed check.
142
+ Use \`superhands_add_trace_artifact\` for available images or evidence links,
143
+ with their route, viewport and UI state. Missing capture capability is a gap;
144
+ it must not stop coding. Never invent a before image or an unguided baseline.
145
+ Read \`superhands_get_trace\` before responding to designer feedback. Feedback
146
+ belongs to its reviewed revision. After addressing it, register the new output
147
+ and send a \`ready\` event naming feedbackId; only the designer may approve.
148
+ Report interrupted/failed/resumed lifecycle explicitly; to resume a terminal
149
+ run, read and supersede its lifecycleId. Later outputs do not inherit approval.
150
+ If trace recording fails, report that gap and continue the coding task.
151
+
152
+ 6. When you finish a part, call \`superhands_report_part\` with \`part\` \u2014 the
153
+ part you just finished, in the words you fetched it under \u2014 and
154
+ \`instructionChanges\`: for each Instruction you built that part to, its key
155
+ exactly as it was handed to you and one line on the concrete change it
156
+ caused there \u2014 \`{ "part": "the form's validation errors",
157
+ "instructionChanges": [{ "key": "skill#every-view-has-its-states", "change":
158
+ "kept the typed values and named the failing field" }] }\`. If one caused no
159
+ change, say that in its line. The run's page shows the line beside that
160
+ Instruction as it lands, so the person watching sees what each changed
161
+ while you work rather than only at the end. It records and does not
162
+ review; a failed call costs the work nothing.
163
+ - In your working log, say "[part] reported" when it returns.
164
+ - If that tool is not available on this server, skip this step; the
165
+ closing report below carries the same lines.
166
+ 6. As your work reaches files your opening intent never mentioned, call
119
167
  \`superhands_possible_misses\` with the \`paths\` you are actually in. It is
120
168
  a free, instant, advisory list of checks those files usually need \u2014 not a
121
169
  review, not a gate \u2014 so call it as the work moves and once before your
122
170
  summary, passing \`handled\` for anything you already covered.
123
- 6. When you have finished \u2014 not part-way through \u2014 send the files you wrote or
124
- changed with \`superhands_report_completed_build\`, naming the \`route\` if
125
- you know it, and \`instructionChanges\`: for each Instruction you were
126
- handed up front or picked up during the work, its key exactly as it was
127
- handed to you and one line on the concrete change it caused in what you
128
- built \u2014 \`{ "key": "skill#every-view-has-its-states", "change": "added
129
- loading, empty and error states to the orders table" }\`. If one caused no
130
- change, say that in its line rather than leaving it out. The team looks at
131
- what their agents build there and reads those lines as your words; it
171
+ 7. When you have finished \u2014 not part-way through \u2014 say so with
172
+ \`superhands_report_completed_build\`, naming the \`route\` if you know it,
173
+ and \`instructionChanges\`: for each Instruction you were handed up front
174
+ or picked up during the work, its key exactly as it was handed to you and
175
+ one line on the concrete change it caused in what you built \u2014 \`{ "key":
176
+ "skill#every-view-has-its-states", "change": "added loading, empty and
177
+ error states to the orders table" }\`. Do not send your code: there is no
178
+ field for files, and the report is your account of the build rather than a
179
+ copy of it. Repeat the lines you reported per part where they still hold,
180
+ and add one for anything you were handed and never reported. If one caused
181
+ no change, say that in its line rather than leaving it out. The team sees
182
+ there that the work is done and reads those lines as your words; it
132
183
  records and does not review, so a failed report costs the work nothing. A
133
- successful response ends with the run's Instructions receipt; include it
134
- once in your final response so the person can see what was handed over up
135
- front, picked up during the work, or only named for later, and what you
136
- reported each changed. It is context provenance, not proof that anything
137
- was applied.
138
- 7. In that final response, state the same concrete output change each
184
+ successful response ends with
185
+ the run's Instructions receipt; include it once in your final response so
186
+ the person can see what was handed over up front, picked up during the
187
+ work, or only named for later, and what you reported each changed. It is
188
+ context provenance, not proof that anything was applied.
189
+ 8. In that final response, state the same concrete output change each
139
190
  picked-up Instruction caused, in your own words. This is your account of the
140
191
  work, not a Superhands review or verification.
141
- 8. When you finish, say you followed the team's Instructions \u2014 never that your
192
+ 9. When you finish, say you followed the team's Instructions \u2014 never that your
142
193
  work was checked. Reading Instructions is not a check, reporting a build is
143
194
  not a review, and nothing has looked at what you built.
144
195
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@super-hands/connect",
3
- "version": "0.1.21",
3
+ "version": "0.1.24",
4
4
  "description": "Connect the coding agents on this machine to your team's Superhands MCP server — with `start`, from a machine that has no Superhands account at all. Refresh it later with `update` (no token needed), and take it back off again with `uninstall`. Writes each client's own config; reads no repository, uploads nothing.",
5
5
  "bin": {
6
6
  "superhands-connect": "client.mjs"