@jabezpauls/agentbox 0.1.3 → 0.1.5

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/dist/agentbox.mjs +30 -6
  2. package/package.json +1 -1
package/dist/agentbox.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- // agentbox-cli v0.1.3
2
+ // agentbox-cli v0.1.5
3
3
  import { createRequire as __agentboxCreateRequire } from "node:module";
4
4
  const require = __agentboxCreateRequire(import.meta.url);
5
5
  var __create = Object.create;
@@ -3868,7 +3868,7 @@ function parseSize(raw) {
3868
3868
  }
3869
3869
 
3870
3870
  // src/version.ts
3871
- var VERSION = true ? "v0.1.3" : "0.0.0-dev";
3871
+ var VERSION = true ? "v0.1.5" : "0.0.0-dev";
3872
3872
  var MIN_NODE_MAJOR = 20;
3873
3873
  function nodeMajor(version = process.versions.node) {
3874
3874
  return Number(version.split(".")[0]);
@@ -7621,6 +7621,8 @@ var DetachFilter = class {
7621
7621
  return { forward: Buffer.concat(out), detach: false };
7622
7622
  }
7623
7623
  };
7624
+ var SETTLE_MS = 250;
7625
+ var SETTLE_CAP_MS = 3e3;
7624
7626
  var ALT_SCREENS = [1049, 1047, 47];
7625
7627
  var ON_MODES = [9, 1e3, 1001, 1002, 1003, 1005, 1006, 1015, 1016, 1, 1004, 2004, 2031, 2026];
7626
7628
  var OFF_MODES = [25, 7];
@@ -7782,6 +7784,8 @@ function runTerminal(opts) {
7782
7784
  if (done) return;
7783
7785
  done = true;
7784
7786
  if (fallback) clearTimeout(fallback);
7787
+ if (settle) clearTimeout(settle);
7788
+ if (settleCap) clearTimeout(settleCap);
7785
7789
  session.dispose();
7786
7790
  stdin.off?.("data", onInput);
7787
7791
  stdout.off?.("resize", onResize);
@@ -7797,15 +7801,33 @@ agentbox: ${message}\r
7797
7801
  }
7798
7802
  let opened = false;
7799
7803
  let prompted = !opts.initialInput;
7804
+ let sent = false;
7800
7805
  let started = false;
7801
7806
  let fallback;
7802
- const startInput = () => {
7803
- if (started || done || !opened || !prompted) return;
7807
+ let settle;
7808
+ let settleCap;
7809
+ const startKeys = () => {
7810
+ if (started || done) return;
7804
7811
  started = true;
7805
- if (fallback) clearTimeout(fallback);
7806
- if (opts.initialInput) session.input(Buffer.from(opts.initialInput, "utf8"));
7812
+ if (settle) clearTimeout(settle);
7813
+ if (settleCap) clearTimeout(settleCap);
7807
7814
  for (const data of held.splice(0)) session.input(data);
7808
7815
  };
7816
+ const quietThenKeys = () => {
7817
+ if (settle) clearTimeout(settle);
7818
+ settle = setTimeout(startKeys, SETTLE_MS);
7819
+ settle.unref?.();
7820
+ };
7821
+ const startInput = () => {
7822
+ if (sent || done || !opened || !prompted) return;
7823
+ sent = true;
7824
+ if (fallback) clearTimeout(fallback);
7825
+ if (!opts.initialInput) return startKeys();
7826
+ session.input(Buffer.from(opts.initialInput, "utf8"));
7827
+ quietThenKeys();
7828
+ settleCap = setTimeout(startKeys, SETTLE_CAP_MS);
7829
+ settleCap.unref?.();
7830
+ };
7809
7831
  session.on("open", () => {
7810
7832
  stdin.on("data", onInput);
7811
7833
  guard.enter();
@@ -7825,6 +7847,8 @@ agentbox: ${message}\r
7825
7847
  if (!prompted) {
7826
7848
  prompted = true;
7827
7849
  queueMicrotask(startInput);
7850
+ } else if (sent && !started) {
7851
+ quietThenKeys();
7828
7852
  }
7829
7853
  guard.observe(data);
7830
7854
  if (!stdout.write(data) && !paused) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jabezpauls/agentbox",
3
3
  "type": "module",
4
- "version": "0.1.3",
4
+ "version": "0.1.5",
5
5
  "description": "agentbox from your own machine: sign in, attach, move files, mount the workspace.",
6
6
  "license": "MIT",
7
7
  "homepage": "https://github.com/jabezpauls/agentbox/blob/main/docs/cli.md",