@tendrilapp/cli 0.1.32 → 0.1.34
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/dist/tendril-mcp.js +9 -4
- package/dist/tendril.js +2358 -1280
- package/package.json +1 -1
package/dist/tendril-mcp.js
CHANGED
|
@@ -153,16 +153,21 @@ var TOOLS = [
|
|
|
153
153
|
},
|
|
154
154
|
{
|
|
155
155
|
name: "tendril_record_ingest",
|
|
156
|
-
description: "Single-piece ingest of a VERBATIM Figma tool-response \u2014 the fallback path (re-recording one failed piece, set-level get_variable_defs, get_metadata_interior for mains); for a rep's standard three recordings PREFER tendril_record_ingest_rep, which takes them all in one call. Pass `text` (single block) or `texts` (response split into multiple output blocks \u2014 each block verbatim, in order; NEVER hand-join them): the CLI constructs the envelope from the same bytes. The response includes `next` and, for get_design_context, `assets` (auto-fetched; only listed failures need manual handling).",
|
|
156
|
+
description: "Single-piece ingest of a VERBATIM Figma tool-response \u2014 the fallback path (re-recording one failed piece, the set-level get_variable_defs and get_motion_context steps, get_metadata_interior for mains); for a rep's standard three recordings PREFER tendril_record_ingest_rep, which takes them all in one call. Pass `text` (single block) or `texts` (response split into multiple output blocks \u2014 each block verbatim, in order; NEVER hand-join them): the CLI constructs the envelope from the same bytes. The response includes `next` and, for get_design_context, `assets` (auto-fetched; only listed failures need manual handling).",
|
|
157
157
|
schema: z.object({
|
|
158
158
|
setDir: str("recording set directory"),
|
|
159
|
-
rep: str("planned rep slug, or __set__ for the set-level get_variable_defs"),
|
|
159
|
+
rep: str("planned rep slug, or __set__ for the set-level steps (get_variable_defs, get_motion_context)"),
|
|
160
160
|
// Enumerated, not a free string: this value reaches a file path.
|
|
161
161
|
// As a bare string it was an arbitrary relative-path overwrite
|
|
162
162
|
// (--tool "../../outside/victim" replaced a file outside the set,
|
|
163
163
|
// exit 0). The sink in session.ts now contains the path too — this
|
|
164
164
|
// is the second layer, and it makes the tool self-documenting.
|
|
165
|
-
tool
|
|
165
|
+
// EVERY tool `record next` can name must be listed here — the
|
|
166
|
+
// ADR-016 review found get_motion_context missing, which
|
|
167
|
+
// dead-ended every MCP-driven recording at the motion step with
|
|
168
|
+
// no MCP path to complete (the CLI accepted what the primary
|
|
169
|
+
// surface could not send). The pin lives in server.test.ts.
|
|
170
|
+
tool: z.enum(["get_design_context", "get_metadata", "get_screenshot", "get_variable_defs", "get_metadata_interior", "get_motion_context"]),
|
|
166
171
|
text: optStr("the tool response text VERBATIM \u2014 exactly as returned, unmodified (single-block responses; text tools only \u2014 screenshots go through record_fetch)"),
|
|
167
172
|
texts: z.array(z.string()).optional().describe("when the response arrived as MULTIPLE output blocks: every block, in order, each verbatim \u2014 never hand-join blocks yourself"),
|
|
168
173
|
file: optStr("path to a saved envelope JSON (alternative to text/texts)")
|
|
@@ -208,7 +213,7 @@ var TOOLS = [
|
|
|
208
213
|
{
|
|
209
214
|
name: "tendril_record_status",
|
|
210
215
|
annotations: { readOnlyHint: true },
|
|
211
|
-
description: "Recording-set completeness: per-rep recorded/missing tools, files that exist but are unusable (invalid \u2014 re-record those), and whether the set-level
|
|
216
|
+
description: "Recording-set completeness: per-rep recorded/missing tools, files that exist but are unusable (invalid \u2014 re-record those), and whether the set-level steps are recorded (get_variable_defs always; get_motion_context when the plan asked \u2014 ADR-016). `complete` means USABLE by the next pipeline step.",
|
|
212
217
|
schema: z.object({ setDir: str("recording set directory") }),
|
|
213
218
|
argv: (i) => ["record", "status", "--set", i["setDir"]]
|
|
214
219
|
},
|