@michaelrwalker/stagehand 0.5.2 → 0.6.0

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 (28) hide show
  1. package/README.md +8 -2
  2. package/dist/ui/ansi.d.ts +20 -0
  3. package/dist/ui/ansi.d.ts.map +1 -1
  4. package/dist/ui/ansi.js +22 -0
  5. package/dist/ui/ansi.js.map +1 -1
  6. package/dist/ui/frame.d.ts +22 -2
  7. package/dist/ui/frame.d.ts.map +1 -1
  8. package/dist/ui/frame.js +38 -15
  9. package/dist/ui/frame.js.map +1 -1
  10. package/dist/ui/renderer.d.ts +12 -1
  11. package/dist/ui/renderer.d.ts.map +1 -1
  12. package/dist/ui/renderer.js +44 -14
  13. package/dist/ui/renderer.js.map +1 -1
  14. package/package.json +10 -5
  15. package/skills/building-scripts/getting-started/SKILL.md +210 -0
  16. package/skills/building-scripts/structuring-phases-and-steps/SKILL.md +197 -0
  17. package/skills/building-scripts/typed-context-and-input/SKILL.md +188 -0
  18. package/skills/building-scripts/typed-context-and-input/references/context-type-utilities.md +121 -0
  19. package/skills/caching/caching-expensive-work/SKILL.md +285 -0
  20. package/skills/caching/caching-expensive-work/references/cache-api.md +278 -0
  21. package/skills/compensation-safety/adding-rollbacks/SKILL.md +400 -0
  22. package/skills/compensation-safety/cleaning-context/SKILL.md +165 -0
  23. package/skills/compensation-safety/conditional-steps/SKILL.md +199 -0
  24. package/skills/errors-results/handling-results-and-errors/SKILL.md +281 -0
  25. package/skills/observability/log-placement-and-rendering/SKILL.md +167 -0
  26. package/skills/observability/reporting-progress/SKILL.md +203 -0
  27. package/skills/reuse/reusable-routines-and-mounts/SKILL.md +243 -0
  28. package/skills/reuse/splitting-steps-across-files/SKILL.md +226 -0
package/README.md CHANGED
@@ -612,11 +612,12 @@ fragment someone else's script also mounts.
612
612
 
613
613
  ## Examples
614
614
 
615
- Ten runnable scripts, each aimed at a different part of the API. Most take a
616
- flag to switch between the happy path and the interesting one.
615
+ Eleven runnable scripts, each aimed at a different part of the API. Most take
616
+ a flag to switch between the happy path and the interesting one.
617
617
 
618
618
  | | |
619
619
  | --- | --- |
620
+ | [`kitchen-sink.ts`](examples/kitchen-sink.ts) | Every rendering feature in one run — retry backoff, a cached phase and a cached step, every task and log state, a step-level and a phase-level `when()` skip, and a full rollback. Long-running (~25–30s) on purpose, for watching the live frame or comparing terminal apps side by side. `-- --fail`, `-- --production`, `-- --fresh` |
620
621
  | [`deploy.ts`](examples/deploy.ts) | The tour: phases, progress bars, checklists, retry, `note`, `clean`, rollback. `npm run example`, `npm run example:fail` |
621
622
  | [`checkout.ts`](examples/checkout.ts) | Saga semantics end to end — three mutations, three compensations, a secret dropped with `clean`, and `logPlacement: "step"` nesting each rollback's log under the step it undoes. `-- --ok` for the happy path |
622
623
  | [`resilience.ts`](examples/resilience.ts) | `retry` with backoff, `retryIf` refusing to retry a 401, `timeoutMs` on a hung step, and an external `AbortSignal`. `-- --timeout`, `-- --fatal`, `-- --cancel` |
@@ -650,6 +651,11 @@ npm run example:fail
650
651
  npm run release # release-it: version, tag, publish
651
652
  ```
652
653
 
654
+ If you use an AI agent, run `npx @tanstack/intent@latest install` to pull in
655
+ Stagehand's agent skills — task-focused guides covering rollbacks, caching,
656
+ context typing, and the rest of the API, generated from this repo's own docs
657
+ and source.
658
+
653
659
  ## Releasing
654
660
 
655
661
  [`scripts/preflight.ts`](scripts/preflight.ts) is the gate, and it is written
package/dist/ui/ansi.d.ts CHANGED
@@ -20,6 +20,26 @@ export declare const cursor: {
20
20
  toStart: string;
21
21
  eraseDown: string;
22
22
  };
23
+ /**
24
+ * DEC private mode 2026 ("synchronized output"). Terminals that honour it
25
+ * buffer everything between start/end and paint it as one frame, so an
26
+ * erase-then-redraw pair never shows a blank frame in between.
27
+ */
28
+ export declare const sync: {
29
+ start: string;
30
+ end: string;
31
+ };
32
+ /**
33
+ * Windows Terminal's DirectX renderer presents writes eagerly enough that an
34
+ * erase and a redraw can each land as a visible frame — that's what `sync`
35
+ * exists to fix. Most other terminals coalesce writes on their own and don't
36
+ * need the hint, and at least one (WebStorm's JediTerm) appears to mishandle
37
+ * the unrecognised `CSI ? 2026` sequence rather than the usual "ignore
38
+ * unknown private mode" behaviour, stalling the live region until something
39
+ * else forces a redraw. So keep this opt-in to the one terminal it's for,
40
+ * rather than sending it everywhere and hoping every parser ignores it.
41
+ */
42
+ export declare function supportsSyncOutput(): boolean;
23
43
  export declare function stripAnsi(input: string): string;
24
44
  /**
25
45
  * Terminal cell width. Handles the wide-character ranges that actually turn up
@@ -1 +1 @@
1
- {"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/ui/ansi.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEpD;AAED,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAM/C,eAAO,MAAM,IAAI,QAAiC,CAAC;AACnD,eAAO,MAAM,GAAG,QAAiC,CAAC;AAClD,eAAO,MAAM,MAAM,QAAiC,CAAC;AACrD,eAAO,MAAM,SAAS,QAAiC,CAAC;AACxD,eAAO,MAAM,OAAO,QAAiC,CAAC;AAEtD,wEAAwE;AACxE,wBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED,6BAA6B;AAC7B,wBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED,eAAO,MAAM,MAAM;;;YAGT,MAAM,KAAG,MAAM;;;CAGxB,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWjD;AAiBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CA4B3D;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAwC/D;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG5D"}
1
+ {"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/ui/ansi.ts"],"names":[],"mappings":"AAAA;;GAEG;AAeH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAEpD;AAED,MAAM,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;AAM/C,eAAO,MAAM,IAAI,QAAiC,CAAC;AACnD,eAAO,MAAM,GAAG,QAAiC,CAAC;AAClD,eAAO,MAAM,MAAM,QAAiC,CAAC;AACrD,eAAO,MAAM,SAAS,QAAiC,CAAC;AACxD,eAAO,MAAM,OAAO,QAAiC,CAAC;AAEtD,wEAAwE;AACxE,wBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED,6BAA6B;AAC7B,wBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED,eAAO,MAAM,MAAM;;;YAGT,MAAM,KAAG,MAAM;;;CAGxB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,IAAI;;;CAGhB,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWjD;AAiBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CA4B3D;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAwC/D;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG5D"}
package/dist/ui/ansi.js CHANGED
@@ -43,6 +43,28 @@ export const cursor = {
43
43
  toStart: `${ESC}G`,
44
44
  eraseDown: `${ESC}0J`,
45
45
  };
46
+ /**
47
+ * DEC private mode 2026 ("synchronized output"). Terminals that honour it
48
+ * buffer everything between start/end and paint it as one frame, so an
49
+ * erase-then-redraw pair never shows a blank frame in between.
50
+ */
51
+ export const sync = {
52
+ start: `${ESC}?2026h`,
53
+ end: `${ESC}?2026l`,
54
+ };
55
+ /**
56
+ * Windows Terminal's DirectX renderer presents writes eagerly enough that an
57
+ * erase and a redraw can each land as a visible frame — that's what `sync`
58
+ * exists to fix. Most other terminals coalesce writes on their own and don't
59
+ * need the hint, and at least one (WebStorm's JediTerm) appears to mishandle
60
+ * the unrecognised `CSI ? 2026` sequence rather than the usual "ignore
61
+ * unknown private mode" behaviour, stalling the live region until something
62
+ * else forces a redraw. So keep this opt-in to the one terminal it's for,
63
+ * rather than sending it everywhere and hoping every parser ignores it.
64
+ */
65
+ export function supportsSyncOutput() {
66
+ return Boolean(process.env.WT_SESSION);
67
+ }
46
68
  export function stripAnsi(input) {
47
69
  return input.replace(ANSI_PATTERN, "");
48
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/ui/ansi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/ui/ansi.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,35 @@ export declare function renderHeader(state: RunState): string[];
8
8
  * a permanent log write costs when the region is already at full height.
9
9
  */
10
10
  export declare function bodyBudget(): number;
11
+ /** How hard `renderBody` has had to squeeze to fit — 1 is the least compressed. */
12
+ export type BodyTier = 1 | 2 | 3 | 4;
11
13
  /**
12
- * The live body, guaranteed to fit `bodyBudget()`.
14
+ * The live body, guaranteed to fit `bodyBudget()`, plus the tier it took to
15
+ * get there.
13
16
  *
14
17
  * This guarantee is load-bearing, not cosmetic: the renderer repaints by moving
15
18
  * the cursor up N lines, so a frame taller than the viewport scrolls its own
16
19
  * top off screen and every repaint appends a copy instead of overwriting. Four
17
20
  * progressively stronger reductions are tried, and the result is clamped.
21
+ *
22
+ * `minTier` exists so a caller that repaints repeatedly can pin the tier once
23
+ * it has had to compress: an active step's own detail (its progress bar, its
24
+ * task list) and a `"bottom"`-placed log tail both change height every tick on
25
+ * their own, with nothing about *other*, already-finished phases changing at
26
+ * all. Re-deciding "does everything fit?" from scratch on every frame means
27
+ * that harmless wobble alone repeatedly drags the whole body across the fit
28
+ * threshold — every finished phase flips between full and one-line collapsed
29
+ * along with it, which reads as the frame randomly changing its mind rather
30
+ * than reacting to anything the user did. Once a tier has been needed, holding
31
+ * it keeps already-settled phases settled even while the active step's own
32
+ * footprint keeps moving.
18
33
  */
19
- export declare function renderBody(state: RunState, tick: number, now: number, fit?: boolean): string[];
34
+ export declare function renderBodyTiered(state: RunState, tick: number, now: number, fit?: boolean, minTier?: BodyTier): {
35
+ lines: string[];
36
+ tier: BodyTier;
37
+ };
38
+ /** Convenience wrapper over {@link renderBodyTiered} for callers that just want the lines. */
39
+ export declare function renderBody(state: RunState, tick: number, now: number, fit?: boolean, minTier?: BodyTier): string[];
20
40
  export declare function renderSummary(state: RunState, now: number): string[];
21
41
  export declare function renderLogEntry(entry: LogEntry): string;
22
42
  //# sourceMappingURL=frame.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/ui/frame.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,QAAQ,EAEb,KAAK,aAAa,EAClB,KAAK,QAAQ,EAGd,MAAM,aAAa,CAAC;AA4ErB,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,SAAK,GAAG,MAAM,CAoBrE;AAsJD,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,EAAE,CAOtD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,UAAO,GAAG,MAAM,EAAE,CA6C3F;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAkDpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAkBtD"}
1
+ {"version":3,"file":"frame.d.ts","sourceRoot":"","sources":["../../src/ui/frame.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,QAAQ,EAEb,KAAK,aAAa,EAClB,KAAK,QAAQ,EAGd,MAAM,aAAa,CAAC;AA4ErB,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,SAAK,GAAG,MAAM,CAoBrE;AAsJD,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,EAAE,CAOtD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED,mFAAmF;AACnF,MAAM,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,GAAG,UAAO,EACV,OAAO,GAAE,QAAY,GACpB;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAmDrC;AAED,8FAA8F;AAC9F,wBAAgB,UAAU,CACxB,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,GAAG,UAAO,EACV,OAAO,GAAE,QAAY,GACpB,MAAM,EAAE,CAEV;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAkDpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,CAkBtD"}
package/dist/ui/frame.js CHANGED
@@ -224,14 +224,27 @@ export function bodyBudget() {
224
224
  return Math.max(6, (process.stdout.rows ?? 40) - 3);
225
225
  }
226
226
  /**
227
- * The live body, guaranteed to fit `bodyBudget()`.
227
+ * The live body, guaranteed to fit `bodyBudget()`, plus the tier it took to
228
+ * get there.
228
229
  *
229
230
  * This guarantee is load-bearing, not cosmetic: the renderer repaints by moving
230
231
  * the cursor up N lines, so a frame taller than the viewport scrolls its own
231
232
  * top off screen and every repaint appends a copy instead of overwriting. Four
232
233
  * progressively stronger reductions are tried, and the result is clamped.
234
+ *
235
+ * `minTier` exists so a caller that repaints repeatedly can pin the tier once
236
+ * it has had to compress: an active step's own detail (its progress bar, its
237
+ * task list) and a `"bottom"`-placed log tail both change height every tick on
238
+ * their own, with nothing about *other*, already-finished phases changing at
239
+ * all. Re-deciding "does everything fit?" from scratch on every frame means
240
+ * that harmless wobble alone repeatedly drags the whole body across the fit
241
+ * threshold — every finished phase flips between full and one-line collapsed
242
+ * along with it, which reads as the frame randomly changing its mind rather
243
+ * than reacting to anything the user did. Once a tier has been needed, holding
244
+ * it keeps already-settled phases settled even while the active step's own
245
+ * footprint keeps moving.
233
246
  */
234
- export function renderBody(state, tick, now, fit = true) {
247
+ export function renderBodyTiered(state, tick, now, fit = true, minTier = 1) {
235
248
  const budget = bodyBudget();
236
249
  const tail = renderLogTail(state.logTail);
237
250
  const build = (mode, stepBudget) => {
@@ -246,30 +259,40 @@ export function renderBody(state, tick, now, fit = true) {
246
259
  // The closing frame is written permanently and never repainted, so it may
247
260
  // scroll freely — keep every step visible there.
248
261
  if (!fit)
249
- return [...build(() => "full"), ...tail];
262
+ return { lines: [...build(() => "full"), ...tail], tier: 1 };
250
263
  const done = (phase) => {
251
264
  const status = phaseStatus(phase);
252
- return status === "success" || status === "skipped";
265
+ return status === "success" || status === "skipped" || status === "cached";
253
266
  };
254
267
  const active = (phase) => phaseStatus(phase) === "running";
255
268
  // 1. Everything, in full.
256
- let out = build(() => "full");
257
- if (out.length + tail.length <= budget)
258
- return [...out, ...tail];
269
+ if (minTier <= 1) {
270
+ const out = build(() => "full");
271
+ if (out.length + tail.length <= budget)
272
+ return { lines: [...out, ...tail], tier: 1 };
273
+ }
259
274
  // 2. Finished phases become one line each.
260
- out = build((phase) => (done(phase) ? "collapsed" : "full"));
261
- if (out.length + tail.length <= budget)
262
- return [...out, ...tail];
275
+ if (minTier <= 2) {
276
+ const out = build((phase) => (done(phase) ? "collapsed" : "full"));
277
+ if (out.length + tail.length <= budget)
278
+ return { lines: [...out, ...tail], tier: 2 };
279
+ }
263
280
  // 3. Only the running phase keeps its steps, and drops its detail lines.
264
- out = build((phase) => (active(phase) ? "compact" : "collapsed"));
265
- if (out.length + tail.length <= budget)
266
- return [...out, ...tail];
281
+ if (minTier <= 3) {
282
+ const out = build((phase) => (active(phase) ? "compact" : "collapsed"));
283
+ if (out.length + tail.length <= budget)
284
+ return { lines: [...out, ...tail], tier: 3 };
285
+ }
267
286
  // 4. Window the running phase's steps around the one actually executing.
268
287
  const overhead = state.phases.filter((phase) => !active(phase)).length * 2;
269
- out = build((phase) => (active(phase) ? "compact" : "collapsed"), Math.max(1, budget - overhead - 2 - tail.length));
288
+ const out = build((phase) => (active(phase) ? "compact" : "collapsed"), Math.max(1, budget - overhead - 2 - tail.length));
270
289
  const combined = [...out, ...tail];
271
290
  // Last resort: a phase with a huge task list, or a viewport of a few rows.
272
- return combined.length <= budget ? combined : combined.slice(0, budget);
291
+ return { lines: combined.length <= budget ? combined : combined.slice(0, budget), tier: 4 };
292
+ }
293
+ /** Convenience wrapper over {@link renderBodyTiered} for callers that just want the lines. */
294
+ export function renderBody(state, tick, now, fit = true, minTier = 1) {
295
+ return renderBodyTiered(state, tick, now, fit, minTier).lines;
273
296
  }
274
297
  export function renderSummary(state, now) {
275
298
  const width = frameWidth();
@@ -1 +1 @@
1
- {"version":3,"file":"frame.js","sourceRoot":"","sources":["../../src/ui/frame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frame.js","sourceRoot":"","sources":["../../src/ui/frame.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,9 @@ export declare class LiveRenderer implements Renderer {
20
20
  private timer;
21
21
  private stopped;
22
22
  private lastPaintAt;
23
+ private lastFrame;
24
+ /** Never lowered mid-run — see {@link renderBodyTiered} for why. */
25
+ private tier;
23
26
  private readonly logPlacement;
24
27
  constructor(logPlacement?: LogPlacement);
25
28
  start(state: RunState): void;
@@ -40,7 +43,15 @@ export declare class LiveRenderer implements Renderer {
40
43
  onStepEnd(): void;
41
44
  stop(): void;
42
45
  private paint;
43
- private clear;
46
+ /** Returns the escape sequence to erase the live region, and marks it erased. */
47
+ private eraseSequence;
48
+ /**
49
+ * Single write so the erase and the new content always land together.
50
+ * On Windows Terminal that alone can still leave a gap the DirectX
51
+ * renderer presents as a blank frame, so it additionally gets the
52
+ * synchronized-output bookend — see `supportsSyncOutput()`.
53
+ */
54
+ private paintFrame;
44
55
  private write;
45
56
  }
46
57
  /** Line-per-event output for CI, pipes, and dumb terminals. */
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/ui/renderer.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC7B,wDAAwD;IACxD,OAAO,IAAI,IAAI,CAAC;IAChB,+FAA+F;IAC/F,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAC7C,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACtC,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACjC,IAAI,IAAI,IAAI,CAAC;CACd;AAaD,oEAAoE;AACpE,qBAAa,YAAa,YAAW,QAAQ;IAC3C,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;gBAEhC,YAAY,GAAE,YAA2B;IAIrD,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAc5B;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAGvB;IAEF;;;OAGG;IACH,OAAO,IAAI,IAAI;IAMf,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI;IAmB5C,YAAY,IAAI,IAAI;IAIpB,WAAW,IAAI,IAAI;IAInB,SAAS,IAAI,IAAI;IAIjB,IAAI,IAAI,IAAI;IAkBZ,OAAO,CAAC,KAAK;IAgBb,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,KAAK;CAGd;AAED,+DAA+D;AAC/D,qBAAa,aAAc,YAAW,QAAQ;IAC5C,OAAO,CAAC,MAAM,CAAkB;IAEhC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAM5B,OAAO,IAAI,IAAI;IAIf,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI1B,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAIrC,WAAW,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAIlC,SAAS,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAqBhC,IAAI,IAAI,IAAI;CAGb;AAED,kEAAkE;AAClE,qBAAa,oBAAqB,SAAQ,aAAa;IACrD,OAAO,CAAC,QAAQ,CAAyB;IAEhC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAK5B,IAAI,IAAI,IAAI;CAItB;AAED,qBAAa,cAAe,YAAW,QAAQ;IAC7C,KAAK,IAAI,IAAI;IACb,OAAO,IAAI,IAAI;IACf,GAAG,IAAI,IAAI;IACX,YAAY,IAAI,IAAI;IACpB,WAAW,IAAI,IAAI;IACnB,SAAS,IAAI,IAAI;IACjB,IAAI,IAAI,IAAI;CACb;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,GAAG,QAAQ,CAKX;AAED,eAAO,MAAM,SAAS;;;;;;;;;;CAAU,CAAC"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../src/ui/renderer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { cursor } from "./ansi.js";
1
+ import { cursor, sync, supportsSyncOutput } from "./ansi.js";
2
2
  import { palette, supportsAnimation, symbols } from "./theme.js";
3
- import { renderBody, renderHeader, renderLogEntry, renderSummary } from "./frame.js";
3
+ import { renderBodyTiered, renderHeader, renderLogEntry, renderSummary } from "./frame.js";
4
4
  import { elapsed, errorMessage, formatDuration, } from "../state.js";
5
5
  const FRAME_INTERVAL_MS = 80;
6
6
  const MIN_REPAINT_MS = 32;
@@ -21,6 +21,9 @@ export class LiveRenderer {
21
21
  timer = null;
22
22
  stopped = false;
23
23
  lastPaintAt = 0;
24
+ lastFrame = null;
25
+ /** Never lowered mid-run — see {@link renderBodyTiered} for why. */
26
+ tier = 1;
24
27
  logPlacement;
25
28
  constructor(logPlacement = "scrollback") {
26
29
  this.logPlacement = logPlacement;
@@ -28,6 +31,7 @@ export class LiveRenderer {
28
31
  start(state) {
29
32
  this.state = state;
30
33
  this.stopped = false;
34
+ this.tier = 1;
31
35
  this.write(renderHeader(state).join("\n") + "\n");
32
36
  this.stream.write(cursor.hide);
33
37
  this.stream.on("resize", this.onResize);
@@ -45,6 +49,10 @@ export class LiveRenderer {
45
49
  */
46
50
  onResize = () => {
47
51
  this.liveLines = 0;
52
+ this.lastFrame = null;
53
+ // The viewport itself changed, so the tier this run had settled into may
54
+ // no longer be the right one either way — give it a fresh decision.
55
+ this.tier = 1;
48
56
  this.paint();
49
57
  };
50
58
  /**
@@ -70,8 +78,8 @@ export class LiveRenderer {
70
78
  this.paint();
71
79
  return;
72
80
  }
73
- this.clear();
74
- this.write(renderLogEntry(entry) + "\n");
81
+ this.paintFrame(this.eraseSequence() + renderLogEntry(entry) + "\n");
82
+ this.lastFrame = null;
75
83
  this.paint();
76
84
  }
77
85
  onPhaseStart() {
@@ -92,13 +100,11 @@ export class LiveRenderer {
92
100
  this.timer = null;
93
101
  this.stream.off("resize", this.onResize);
94
102
  const now = performance.now();
95
- this.clear();
96
103
  const final = [
97
- ...renderBody(this.state, this.tick, now, false),
104
+ ...renderBodyTiered(this.state, this.tick, now, false).lines,
98
105
  ...renderSummary(this.state, now),
99
106
  ];
100
- this.write(final.join("\n") + "\n");
101
- this.liveLines = 0;
107
+ this.paintFrame(this.eraseSequence() + final.join("\n") + "\n");
102
108
  this.stream.write(cursor.show);
103
109
  }
104
110
  paint() {
@@ -109,17 +115,41 @@ export class LiveRenderer {
109
115
  // backstop that keeps the up-N-lines invariant true no matter what, since
110
116
  // a frame taller than the terminal scrolls its own anchor off screen.
111
117
  const maxLines = Math.max(1, (process.stdout.rows ?? 40) - 1);
112
- const body = renderBody(this.state, this.tick, now).slice(0, maxLines);
113
- this.clear();
114
- this.write(body.join("\n") + "\n");
118
+ const rendered = renderBodyTiered(this.state, this.tick, now, true, this.tier);
119
+ this.tier = rendered.tier;
120
+ const body = rendered.lines.slice(0, maxLines);
121
+ const frame = body.join("\n");
122
+ if (frame === this.lastFrame) {
123
+ this.lastPaintAt = now;
124
+ return;
125
+ }
126
+ // No trailing newline: the cursor is left on the last content line
127
+ // rather than advanced past it. A region anchored to the bottom row
128
+ // that ends with a newline forces the terminal to scroll the whole
129
+ // buffer on every repaint — `eraseSequence()` accounts for the missing
130
+ // final line when it works out how far up to move next time.
131
+ this.paintFrame(this.eraseSequence() + frame + cursor.toStart);
115
132
  this.liveLines = body.length;
133
+ this.lastFrame = frame;
116
134
  this.lastPaintAt = now;
117
135
  }
118
- clear() {
136
+ /** Returns the escape sequence to erase the live region, and marks it erased. */
137
+ eraseSequence() {
119
138
  if (this.liveLines === 0)
120
- return;
121
- this.stream.write(cursor.up(this.liveLines) + cursor.toStart + cursor.eraseDown);
139
+ return "";
140
+ const upBy = this.liveLines - 1;
141
+ const seq = (upBy > 0 ? cursor.up(upBy) : "") + cursor.toStart + cursor.eraseDown;
122
142
  this.liveLines = 0;
143
+ return seq;
144
+ }
145
+ /**
146
+ * Single write so the erase and the new content always land together.
147
+ * On Windows Terminal that alone can still leave a gap the DirectX
148
+ * renderer presents as a blank frame, so it additionally gets the
149
+ * synchronized-output bookend — see `supportsSyncOutput()`.
150
+ */
151
+ paintFrame(text) {
152
+ this.stream.write(supportsSyncOutput() ? sync.start + text + sync.end : text);
123
153
  }
124
154
  write(text) {
125
155
  this.stream.write(text);
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/ui/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/ui/renderer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@michaelrwalker/stagehand",
3
- "version": "0.5.2",
3
+ "version": "0.6.0",
4
4
  "description": "Fully typesafe saga-style script framework with modern terminal visuals",
5
+ "homepage": "https://michaelrwalker.netlify.app/stagehand",
5
6
  "type": "module",
6
7
  "exports": {
7
8
  ".": {
@@ -10,7 +11,9 @@
10
11
  }
11
12
  },
12
13
  "files": [
13
- "dist"
14
+ "dist",
15
+ "skills",
16
+ "!skills/_artifacts"
14
17
  ],
15
18
  "engines": {
16
19
  "node": ">=20"
@@ -28,7 +31,8 @@
28
31
  "cli",
29
32
  "typescript",
30
33
  "rollback",
31
- "compensation"
34
+ "compensation",
35
+ "tanstack-intent"
32
36
  ],
33
37
  "license": "MIT",
34
38
  "repository": {
@@ -36,9 +40,10 @@
36
40
  "url": "https://github.com/miaklwalker/stagehand"
37
41
  },
38
42
  "devDependencies": {
43
+ "@tanstack/intent": "^0.3.6",
39
44
  "@types/node": "^22.10.0",
40
- "typescript": "^5.7.0",
41
- "release-it": "^20.2.1"
45
+ "release-it": "^20.2.1",
46
+ "typescript": "^5.7.0"
42
47
  },
43
48
  "publishConfig": {
44
49
  "access": "public"