@super-hands/connect 0.1.24 → 0.1.25

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 +27 -14
  2. package/package.json +1 -1
package/client.mjs CHANGED
@@ -42,11 +42,11 @@ function codexConfigBlock(args) {
42
42
  }
43
43
 
44
44
  // lib/connect-skill.ts
45
- var CONNECT_SKILL_VERSION = 17;
45
+ var CONNECT_SKILL_VERSION = 18;
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})`;
49
- var CONNECT_SKILL_DESCRIPTION = `Build UI the way this team has decided it should be built. Use BEFORE building, changing, or restyling any page, screen, view, form, or component \u2014 "build a page", "add a screen", "create a form", "make a dashboard", "redesign this", "new landing page" \u2014 and when asked how this product should look or behave. Reads the team's build-time Instructions from their Superhands MCP server.`;
49
+ var CONNECT_SKILL_DESCRIPTION = `Build UI the way this team has decided it should be built. Use BEFORE building, changing, or restyling any page, screen, view, form, or component \u2014 "build a page", "add a screen", "create a form", "make a dashboard", "redesign this", "new landing page" \u2014 and when asked how this product should look or behave. Reads the team's build-time Instructions from their Superhands MCP server, fetches task-wide requirements before starting and each part's selected instructions before building, including copy, and follows explicit requirements even when unusual or agent-specific.`;
50
50
  var CONNECT_SKILL_CONTENT = `---
51
51
  name: ${CONNECT_SKILL_DIR}
52
52
  description: ${CONNECT_SKILL_DESCRIPTION}
@@ -89,14 +89,15 @@ Before you build, change, or restyle any UI:
89
89
  example \`["app/marketing/pricing.tsx"]\`. The team writes down where
90
90
  Instructions apply, and a path answers that far better than a description
91
91
  does. Leave it out if you do not know yet; it narrows nothing away.
92
- 2. Plan against what comes back, and note which parts of your plan each set of
93
- keys covers. The first answer renders what to read first, then names
94
- under **Reachable** the modules judged to matter to parts you have not
95
- started \u2014 those keys are what the next step asks with \u2014 and ends with an
96
- index of the modules it did **not** choose, for anything the selection
97
- missed. A part of your plan with no keys against it is a real gap in what
98
- the team has written down; say so rather than quietly using your own
99
- defaults.
92
+ 2. Plan against the selected Instructions. The first answer names them under
93
+ **Reachable**, with keys and opening text; it does not render them in full.
94
+ Fetch every selected entry when its scope is reached, including review-enforced
95
+ decisions. Superhands has already selected these for the task: sequence their
96
+ use, not a second shortlist based on your preferences. Map every selected key
97
+ to the work it governs. The closing **Not selected** index is available for
98
+ anything selection missed; fetch an entry there if the work reaches its scope.
99
+ If no entry covers a part, say guidance was not found for it, rather than
100
+ assuming the team has never written any.
100
101
  3. As you start each part \u2014 the sidebar, then the table, then the form \u2014 call
101
102
  \`superhands_get_instruction_modules\` with the reachable keys covering the
102
103
  part you are starting now and \`part\` set to that part in a few words,
@@ -114,16 +115,28 @@ Before you build, change, or restyle any UI:
114
115
  the start. These are instructions to follow, not facts to know, so modules
115
116
  for a part you are not building are a page of directions about the wrong
116
117
  thing sitting in your context while you work.
117
- - Review-enforced decision entries from step 1 need no such loop. They are
118
- concise enough to stay in the opening brief, so one read at the start is
119
- the right read.
118
+ - Fetch instructions governing the whole task, agent behaviour or communication
119
+ before starting that work, and continue applying them throughout the task.
120
+ Fetch copy instructions before writing text, including placeholder copy,
121
+ headings, buttons and footers, even during layout or styling work. A part
122
+ includes its copy, controls, accessibility and states as well as its styling.
123
+ - If an entry's full text excludes the actual work, or the task changes so its
124
+ scope is no longer reached, state the concrete reason it does not apply.
125
+ Do not silently omit it.
120
126
  - If that tool is not available on this server,
121
127
  build from what step 1 already returned and skip this step. Do not ask
122
128
  for the whole library instead \u2014 that is the wall of text step 1 avoided.
129
+ Say which entries could not be read; never claim to have followed unavailable text.
123
130
  4. Build to what comes back. Use the selected Instructions together. When two
124
131
  entries pull in different directions, prefer the more specific instruction,
125
132
  preserve explicit exceptions, and call out any conflict you cannot honestly
126
- resolve.
133
+ resolve. Do not dismiss an explicit requirement as a leftover test, placeholder,
134
+ accidental entry or bad brand choice because it looks unusual. Do not ask for
135
+ confirmation merely because you would prefer a different result. An explicit
136
+ agent-specific text prefix is an exception to general copy style: apply the
137
+ prefix and follow the general style for the rest of the text. If requirements
138
+ remain incompatible after applying their scopes and exceptions, identify the
139
+ exact conflict and ask a focused question; continue work independent of the answer.
127
140
  5. Keep each design decision explicit. Use \`superhands_report_trace\` with the
128
141
  runId, a stable eventId and occurredAt timestamp (reuse both on retries).
129
142
  Send a \`decision\` event with the returned delivery IDs when one context
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@super-hands/connect",
3
- "version": "0.1.24",
3
+ "version": "0.1.25",
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"