@obrain/cli 0.1.2 → 0.1.6

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/index.js +159 -98
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -41923,11 +41923,12 @@ var startGatewayDaemon = async (gatewayUrl) => {
41923
41923
  if (config.daemon?.pid && isPidAlive(config.daemon.pid)) {
41924
41924
  return config.daemon.pid;
41925
41925
  }
41926
- const executable = process.argv[0];
41927
41926
  const script = process.argv[1];
41927
+ if (!script) {
41928
+ throw new Error("Unable to determine CLI entrypoint for daemon startup.");
41929
+ }
41928
41930
  const child = Bun.spawn({
41929
41931
  cmd: [
41930
- executable,
41931
41932
  script,
41932
41933
  "daemon",
41933
41934
  "connect",
@@ -41939,6 +41940,13 @@ var startGatewayDaemon = async (gatewayUrl) => {
41939
41940
  stderr: "ignore",
41940
41941
  env: process.env
41941
41942
  });
41943
+ const startupResult = await Promise.race([
41944
+ child.exited.then((code) => ({ type: "exited", code })),
41945
+ Bun.sleep(150).then(() => ({ type: "running" }))
41946
+ ]);
41947
+ if (startupResult.type === "exited") {
41948
+ throw new Error(`Gateway daemon exited during startup with code ${startupResult.code}.`);
41949
+ }
41942
41950
  if (typeof child.unref === "function") {
41943
41951
  child.unref?.();
41944
41952
  }
@@ -42126,7 +42134,7 @@ var describeAgentCommand = {
42126
42134
  }
42127
42135
  };
42128
42136
 
42129
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/entity.js
42137
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/entity.js
42130
42138
  var entityKind = Symbol.for("drizzle:entityKind");
42131
42139
  var hasOwnEntityKind = Symbol.for("drizzle:hasOwnEntityKind");
42132
42140
  function is(value, type) {
@@ -42151,7 +42159,7 @@ function is(value, type) {
42151
42159
  return false;
42152
42160
  }
42153
42161
 
42154
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/column.js
42162
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/column.js
42155
42163
  class Column {
42156
42164
  constructor(table, config) {
42157
42165
  this.table = table;
@@ -42201,7 +42209,7 @@ class Column {
42201
42209
  }
42202
42210
  }
42203
42211
 
42204
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/column-builder.js
42212
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/column-builder.js
42205
42213
  class ColumnBuilder {
42206
42214
  static [entityKind] = "ColumnBuilder";
42207
42215
  config;
@@ -42257,10 +42265,10 @@ class ColumnBuilder {
42257
42265
  }
42258
42266
  }
42259
42267
 
42260
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/table.utils.js
42268
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/table.utils.js
42261
42269
  var TableName = Symbol.for("drizzle:Name");
42262
42270
 
42263
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/foreign-keys.js
42271
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/foreign-keys.js
42264
42272
  class ForeignKeyBuilder {
42265
42273
  static [entityKind] = "PgForeignKeyBuilder";
42266
42274
  reference;
@@ -42314,17 +42322,17 @@ class ForeignKey {
42314
42322
  }
42315
42323
  }
42316
42324
 
42317
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/tracing-utils.js
42325
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/tracing-utils.js
42318
42326
  function iife(fn, ...args) {
42319
42327
  return fn(...args);
42320
42328
  }
42321
42329
 
42322
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/unique-constraint.js
42330
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/unique-constraint.js
42323
42331
  function uniqueKeyName(table, columns) {
42324
42332
  return `${table[TableName]}_${columns.join("_")}_unique`;
42325
42333
  }
42326
42334
 
42327
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/utils/array.js
42335
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/utils/array.js
42328
42336
  function parsePgArrayValue(arrayString, startFrom, inQuotes) {
42329
42337
  for (let i = startFrom;i < arrayString.length; i++) {
42330
42338
  const char = arrayString[i];
@@ -42400,7 +42408,7 @@ function makePgArray(array) {
42400
42408
  }).join(",")}}`;
42401
42409
  }
42402
42410
 
42403
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/common.js
42411
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/common.js
42404
42412
  class PgColumnBuilder extends ColumnBuilder {
42405
42413
  foreignKeyConfigs = [];
42406
42414
  static [entityKind] = "PgColumnBuilder";
@@ -42548,7 +42556,7 @@ class PgArray extends PgColumn {
42548
42556
  }
42549
42557
  }
42550
42558
 
42551
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/enum.js
42559
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/enum.js
42552
42560
  var isPgEnumSym = Symbol.for("drizzle:isPgEnum");
42553
42561
  function isPgEnum(obj) {
42554
42562
  return !!obj && typeof obj === "function" && isPgEnumSym in obj && obj[isPgEnumSym] === true;
@@ -42566,7 +42574,7 @@ class PgEnumColumn extends PgColumn {
42566
42574
  }
42567
42575
  }
42568
42576
 
42569
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/subquery.js
42577
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/subquery.js
42570
42578
  class Subquery {
42571
42579
  static [entityKind] = "Subquery";
42572
42580
  constructor(sql, selection, alias, isWith = false) {
@@ -42580,10 +42588,10 @@ class Subquery {
42580
42588
  }
42581
42589
  }
42582
42590
 
42583
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/version.js
42591
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/version.js
42584
42592
  var version = "0.39.3";
42585
42593
 
42586
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/tracing.js
42594
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/tracing.js
42587
42595
  var otel;
42588
42596
  var rawTracer;
42589
42597
  var tracer = {
@@ -42610,10 +42618,10 @@ var tracer = {
42610
42618
  }
42611
42619
  };
42612
42620
 
42613
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/view-common.js
42621
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/view-common.js
42614
42622
  var ViewBaseConfig = Symbol.for("drizzle:ViewBaseConfig");
42615
42623
 
42616
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/table.js
42624
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/table.js
42617
42625
  var Schema = Symbol.for("drizzle:Schema");
42618
42626
  var Columns = Symbol.for("drizzle:Columns");
42619
42627
  var ExtraConfigColumns = Symbol.for("drizzle:ExtraConfigColumns");
@@ -42651,7 +42659,7 @@ class Table {
42651
42659
  }
42652
42660
  }
42653
42661
 
42654
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/sql/sql.js
42662
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/sql/sql.js
42655
42663
  function isSQLWrapper(value) {
42656
42664
  return value !== null && value !== undefined && typeof value.getSQL === "function";
42657
42665
  }
@@ -43004,7 +43012,7 @@ Subquery.prototype.getSQL = function() {
43004
43012
  return new SQL([this]);
43005
43013
  };
43006
43014
 
43007
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/utils.js
43015
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/utils.js
43008
43016
  function getColumnNameAndConfig(a, b) {
43009
43017
  return {
43010
43018
  name: typeof a === "string" && a.length > 0 ? a : "",
@@ -43012,7 +43020,7 @@ function getColumnNameAndConfig(a, b) {
43012
43020
  };
43013
43021
  }
43014
43022
 
43015
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/int.common.js
43023
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/int.common.js
43016
43024
  class PgIntColumnBaseBuilder extends PgColumnBuilder {
43017
43025
  static [entityKind] = "PgIntColumnBaseBuilder";
43018
43026
  generatedAlwaysAsIdentity(sequence) {
@@ -43051,7 +43059,7 @@ class PgIntColumnBaseBuilder extends PgColumnBuilder {
43051
43059
  }
43052
43060
  }
43053
43061
 
43054
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/bigint.js
43062
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/bigint.js
43055
43063
  class PgBigInt53Builder extends PgIntColumnBaseBuilder {
43056
43064
  static [entityKind] = "PgBigInt53Builder";
43057
43065
  constructor(name) {
@@ -43102,7 +43110,7 @@ function bigint(a, b) {
43102
43110
  return new PgBigInt64Builder(name);
43103
43111
  }
43104
43112
 
43105
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/bigserial.js
43113
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/bigserial.js
43106
43114
  class PgBigSerial53Builder extends PgColumnBuilder {
43107
43115
  static [entityKind] = "PgBigSerial53Builder";
43108
43116
  constructor(name) {
@@ -43156,7 +43164,7 @@ function bigserial(a, b) {
43156
43164
  return new PgBigSerial64Builder(name);
43157
43165
  }
43158
43166
 
43159
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/boolean.js
43167
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/boolean.js
43160
43168
  class PgBooleanBuilder extends PgColumnBuilder {
43161
43169
  static [entityKind] = "PgBooleanBuilder";
43162
43170
  constructor(name) {
@@ -43177,7 +43185,7 @@ function boolean(name) {
43177
43185
  return new PgBooleanBuilder(name ?? "");
43178
43186
  }
43179
43187
 
43180
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/char.js
43188
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/char.js
43181
43189
  class PgCharBuilder extends PgColumnBuilder {
43182
43190
  static [entityKind] = "PgCharBuilder";
43183
43191
  constructor(name, config) {
@@ -43203,7 +43211,7 @@ function char(a, b = {}) {
43203
43211
  return new PgCharBuilder(name, config);
43204
43212
  }
43205
43213
 
43206
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/cidr.js
43214
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/cidr.js
43207
43215
  class PgCidrBuilder extends PgColumnBuilder {
43208
43216
  static [entityKind] = "PgCidrBuilder";
43209
43217
  constructor(name) {
@@ -43224,7 +43232,7 @@ function cidr(name) {
43224
43232
  return new PgCidrBuilder(name ?? "");
43225
43233
  }
43226
43234
 
43227
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/custom.js
43235
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/custom.js
43228
43236
  class PgCustomColumnBuilder extends PgColumnBuilder {
43229
43237
  static [entityKind] = "PgCustomColumnBuilder";
43230
43238
  constructor(name, fieldConfig, customTypeParams) {
@@ -43265,7 +43273,7 @@ function customType(customTypeParams) {
43265
43273
  };
43266
43274
  }
43267
43275
 
43268
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/date.common.js
43276
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/date.common.js
43269
43277
  class PgDateColumnBaseBuilder extends PgColumnBuilder {
43270
43278
  static [entityKind] = "PgDateColumnBaseBuilder";
43271
43279
  defaultNow() {
@@ -43273,7 +43281,7 @@ class PgDateColumnBaseBuilder extends PgColumnBuilder {
43273
43281
  }
43274
43282
  }
43275
43283
 
43276
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/date.js
43284
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/date.js
43277
43285
  class PgDateBuilder extends PgDateColumnBaseBuilder {
43278
43286
  static [entityKind] = "PgDateBuilder";
43279
43287
  constructor(name) {
@@ -43321,7 +43329,7 @@ function date(a, b) {
43321
43329
  return new PgDateStringBuilder(name);
43322
43330
  }
43323
43331
 
43324
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/double-precision.js
43332
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/double-precision.js
43325
43333
  class PgDoublePrecisionBuilder extends PgColumnBuilder {
43326
43334
  static [entityKind] = "PgDoublePrecisionBuilder";
43327
43335
  constructor(name) {
@@ -43348,7 +43356,7 @@ function doublePrecision(name) {
43348
43356
  return new PgDoublePrecisionBuilder(name ?? "");
43349
43357
  }
43350
43358
 
43351
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/inet.js
43359
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/inet.js
43352
43360
  class PgInetBuilder extends PgColumnBuilder {
43353
43361
  static [entityKind] = "PgInetBuilder";
43354
43362
  constructor(name) {
@@ -43369,7 +43377,7 @@ function inet(name) {
43369
43377
  return new PgInetBuilder(name ?? "");
43370
43378
  }
43371
43379
 
43372
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/integer.js
43380
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/integer.js
43373
43381
  class PgIntegerBuilder extends PgIntColumnBaseBuilder {
43374
43382
  static [entityKind] = "PgIntegerBuilder";
43375
43383
  constructor(name) {
@@ -43396,7 +43404,7 @@ function integer(name) {
43396
43404
  return new PgIntegerBuilder(name ?? "");
43397
43405
  }
43398
43406
 
43399
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/interval.js
43407
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/interval.js
43400
43408
  class PgIntervalBuilder extends PgColumnBuilder {
43401
43409
  static [entityKind] = "PgIntervalBuilder";
43402
43410
  constructor(name, intervalConfig) {
@@ -43423,7 +43431,7 @@ function interval(a, b = {}) {
43423
43431
  return new PgIntervalBuilder(name, config);
43424
43432
  }
43425
43433
 
43426
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/json.js
43434
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/json.js
43427
43435
  class PgJsonBuilder extends PgColumnBuilder {
43428
43436
  static [entityKind] = "PgJsonBuilder";
43429
43437
  constructor(name) {
@@ -43460,7 +43468,7 @@ function json(name) {
43460
43468
  return new PgJsonBuilder(name ?? "");
43461
43469
  }
43462
43470
 
43463
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/jsonb.js
43471
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/jsonb.js
43464
43472
  class PgJsonbBuilder extends PgColumnBuilder {
43465
43473
  static [entityKind] = "PgJsonbBuilder";
43466
43474
  constructor(name) {
@@ -43497,7 +43505,7 @@ function jsonb(name) {
43497
43505
  return new PgJsonbBuilder(name ?? "");
43498
43506
  }
43499
43507
 
43500
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/line.js
43508
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/line.js
43501
43509
  class PgLineBuilder extends PgColumnBuilder {
43502
43510
  static [entityKind] = "PgLineBuilder";
43503
43511
  constructor(name) {
@@ -43553,7 +43561,7 @@ function line(a, b) {
43553
43561
  return new PgLineABCBuilder(name);
43554
43562
  }
43555
43563
 
43556
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/macaddr.js
43564
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/macaddr.js
43557
43565
  class PgMacaddrBuilder extends PgColumnBuilder {
43558
43566
  static [entityKind] = "PgMacaddrBuilder";
43559
43567
  constructor(name) {
@@ -43574,7 +43582,7 @@ function macaddr(name) {
43574
43582
  return new PgMacaddrBuilder(name ?? "");
43575
43583
  }
43576
43584
 
43577
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/macaddr8.js
43585
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/macaddr8.js
43578
43586
  class PgMacaddr8Builder extends PgColumnBuilder {
43579
43587
  static [entityKind] = "PgMacaddr8Builder";
43580
43588
  constructor(name) {
@@ -43595,7 +43603,7 @@ function macaddr8(name) {
43595
43603
  return new PgMacaddr8Builder(name ?? "");
43596
43604
  }
43597
43605
 
43598
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/numeric.js
43606
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/numeric.js
43599
43607
  class PgNumericBuilder extends PgColumnBuilder {
43600
43608
  static [entityKind] = "PgNumericBuilder";
43601
43609
  constructor(name, precision, scale) {
@@ -43632,7 +43640,7 @@ function numeric(a, b) {
43632
43640
  return new PgNumericBuilder(name, config?.precision, config?.scale);
43633
43641
  }
43634
43642
 
43635
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/point.js
43643
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/point.js
43636
43644
  class PgPointTupleBuilder extends PgColumnBuilder {
43637
43645
  static [entityKind] = "PgPointTupleBuilder";
43638
43646
  constructor(name) {
@@ -43694,7 +43702,7 @@ function point(a, b) {
43694
43702
  return new PgPointObjectBuilder(name);
43695
43703
  }
43696
43704
 
43697
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/postgis_extension/utils.js
43705
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/postgis_extension/utils.js
43698
43706
  function hexToBytes(hex) {
43699
43707
  const bytes = [];
43700
43708
  for (let c = 0;c < hex.length; c += 2) {
@@ -43733,7 +43741,7 @@ function parseEWKB(hex) {
43733
43741
  throw new Error("Unsupported geometry type");
43734
43742
  }
43735
43743
 
43736
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/postgis_extension/geometry.js
43744
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/postgis_extension/geometry.js
43737
43745
  class PgGeometryBuilder extends PgColumnBuilder {
43738
43746
  static [entityKind] = "PgGeometryBuilder";
43739
43747
  constructor(name) {
@@ -43788,7 +43796,7 @@ function geometry(a, b) {
43788
43796
  return new PgGeometryObjectBuilder(name);
43789
43797
  }
43790
43798
 
43791
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/real.js
43799
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/real.js
43792
43800
  class PgRealBuilder extends PgColumnBuilder {
43793
43801
  static [entityKind] = "PgRealBuilder";
43794
43802
  constructor(name, length) {
@@ -43819,7 +43827,7 @@ function real(name) {
43819
43827
  return new PgRealBuilder(name ?? "");
43820
43828
  }
43821
43829
 
43822
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/serial.js
43830
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/serial.js
43823
43831
  class PgSerialBuilder extends PgColumnBuilder {
43824
43832
  static [entityKind] = "PgSerialBuilder";
43825
43833
  constructor(name) {
@@ -43842,7 +43850,7 @@ function serial(name) {
43842
43850
  return new PgSerialBuilder(name ?? "");
43843
43851
  }
43844
43852
 
43845
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/smallint.js
43853
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/smallint.js
43846
43854
  class PgSmallIntBuilder extends PgIntColumnBaseBuilder {
43847
43855
  static [entityKind] = "PgSmallIntBuilder";
43848
43856
  constructor(name) {
@@ -43869,7 +43877,7 @@ function smallint(name) {
43869
43877
  return new PgSmallIntBuilder(name ?? "");
43870
43878
  }
43871
43879
 
43872
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/smallserial.js
43880
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/smallserial.js
43873
43881
  class PgSmallSerialBuilder extends PgColumnBuilder {
43874
43882
  static [entityKind] = "PgSmallSerialBuilder";
43875
43883
  constructor(name) {
@@ -43892,7 +43900,7 @@ function smallserial(name) {
43892
43900
  return new PgSmallSerialBuilder(name ?? "");
43893
43901
  }
43894
43902
 
43895
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/text.js
43903
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/text.js
43896
43904
  class PgTextBuilder extends PgColumnBuilder {
43897
43905
  static [entityKind] = "PgTextBuilder";
43898
43906
  constructor(name, config) {
@@ -43916,7 +43924,7 @@ function text(a, b = {}) {
43916
43924
  return new PgTextBuilder(name, config);
43917
43925
  }
43918
43926
 
43919
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/time.js
43927
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/time.js
43920
43928
  class PgTimeBuilder extends PgDateColumnBaseBuilder {
43921
43929
  constructor(name, withTimezone, precision) {
43922
43930
  super(name, "string", "PgTime");
@@ -43950,7 +43958,7 @@ function time(a, b = {}) {
43950
43958
  return new PgTimeBuilder(name, config.withTimezone ?? false, config.precision);
43951
43959
  }
43952
43960
 
43953
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/timestamp.js
43961
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/timestamp.js
43954
43962
  class PgTimestampBuilder extends PgDateColumnBaseBuilder {
43955
43963
  static [entityKind] = "PgTimestampBuilder";
43956
43964
  constructor(name, withTimezone, precision) {
@@ -44018,7 +44026,7 @@ function timestamp(a, b = {}) {
44018
44026
  return new PgTimestampBuilder(name, config?.withTimezone ?? false, config?.precision);
44019
44027
  }
44020
44028
 
44021
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/uuid.js
44029
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/uuid.js
44022
44030
  class PgUUIDBuilder extends PgColumnBuilder {
44023
44031
  static [entityKind] = "PgUUIDBuilder";
44024
44032
  constructor(name) {
@@ -44042,7 +44050,7 @@ function uuid(name) {
44042
44050
  return new PgUUIDBuilder(name ?? "");
44043
44051
  }
44044
44052
 
44045
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/varchar.js
44053
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/varchar.js
44046
44054
  class PgVarcharBuilder extends PgColumnBuilder {
44047
44055
  static [entityKind] = "PgVarcharBuilder";
44048
44056
  constructor(name, config) {
@@ -44068,7 +44076,7 @@ function varchar(a, b = {}) {
44068
44076
  return new PgVarcharBuilder(name, config);
44069
44077
  }
44070
44078
 
44071
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/vector_extension/bit.js
44079
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/vector_extension/bit.js
44072
44080
  class PgBinaryVectorBuilder extends PgColumnBuilder {
44073
44081
  static [entityKind] = "PgBinaryVectorBuilder";
44074
44082
  constructor(name, config) {
@@ -44092,7 +44100,7 @@ function bit(a, b) {
44092
44100
  return new PgBinaryVectorBuilder(name, config);
44093
44101
  }
44094
44102
 
44095
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/vector_extension/halfvec.js
44103
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/vector_extension/halfvec.js
44096
44104
  class PgHalfVectorBuilder extends PgColumnBuilder {
44097
44105
  static [entityKind] = "PgHalfVectorBuilder";
44098
44106
  constructor(name, config) {
@@ -44122,7 +44130,7 @@ function halfvec(a, b) {
44122
44130
  return new PgHalfVectorBuilder(name, config);
44123
44131
  }
44124
44132
 
44125
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/vector_extension/sparsevec.js
44133
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/vector_extension/sparsevec.js
44126
44134
  class PgSparseVectorBuilder extends PgColumnBuilder {
44127
44135
  static [entityKind] = "PgSparseVectorBuilder";
44128
44136
  constructor(name, config) {
@@ -44146,7 +44154,7 @@ function sparsevec(a, b) {
44146
44154
  return new PgSparseVectorBuilder(name, config);
44147
44155
  }
44148
44156
 
44149
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/vector_extension/vector.js
44157
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/vector_extension/vector.js
44150
44158
  class PgVectorBuilder extends PgColumnBuilder {
44151
44159
  static [entityKind] = "PgVectorBuilder";
44152
44160
  constructor(name, config) {
@@ -44176,7 +44184,7 @@ function vector(a, b) {
44176
44184
  return new PgVectorBuilder(name, config);
44177
44185
  }
44178
44186
 
44179
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/columns/all.js
44187
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/columns/all.js
44180
44188
  function getPgColumnBuilders() {
44181
44189
  return {
44182
44190
  bigint,
@@ -44214,7 +44222,7 @@ function getPgColumnBuilders() {
44214
44222
  };
44215
44223
  }
44216
44224
 
44217
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/table.js
44225
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/table.js
44218
44226
  var InlineForeignKeys = Symbol.for("drizzle:PgInlineForeignKeys");
44219
44227
  var EnableRLS = Symbol.for("drizzle:EnableRLS");
44220
44228
 
@@ -44261,7 +44269,7 @@ var pgTable = (name, columns, extraConfig) => {
44261
44269
  return pgTableWithSchema(name, columns, extraConfig, undefined);
44262
44270
  };
44263
44271
 
44264
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/primary-keys.js
44272
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/primary-keys.js
44265
44273
  function primaryKey(...config) {
44266
44274
  if (config[0].columns) {
44267
44275
  return new PrimaryKeyBuilder(config[0].columns, config[0].name);
@@ -44296,7 +44304,7 @@ class PrimaryKey {
44296
44304
  }
44297
44305
  }
44298
44306
 
44299
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/relations.js
44307
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/relations.js
44300
44308
  class Relations {
44301
44309
  constructor(table, config) {
44302
44310
  this.table = table;
@@ -46280,7 +46288,7 @@ function osUsername() {
46280
46288
  }
46281
46289
  }
46282
46290
 
46283
- // ../../node_modules/.bun/drizzle-orm@0.39.3+8be5221837cf1eb9/node_modules/drizzle-orm/pg-core/indexes.js
46291
+ // ../../node_modules/.bun/drizzle-orm@0.39.3+6eaff6816166dfaa/node_modules/drizzle-orm/pg-core/indexes.js
46284
46292
  class IndexBuilderOn {
46285
46293
  constructor(unique, name) {
46286
46294
  this.unique = unique;
@@ -48499,6 +48507,7 @@ class AuthService {
48499
48507
 
48500
48508
  // ../../packages/a2a/index.ts
48501
48509
  var import_express5 = __toESM(require_express(), 1);
48510
+ import net2 from "net";
48502
48511
 
48503
48512
  // ../../node_modules/.bun/@a2a-js+sdk@0.3.13+6c92c332d22d7eb0/node_modules/@a2a-js/sdk/dist/chunk-3QDLXHKS.js
48504
48513
  var AGENT_CARD_PATH = ".well-known/agent-card.json";
@@ -70646,6 +70655,7 @@ class OpenCodeA2AAgent {
70646
70655
  path;
70647
70656
  port;
70648
70657
  client;
70658
+ server = null;
70649
70659
  constructor(path, port) {
70650
70660
  this.path = path;
70651
70661
  this.port = port;
@@ -70678,12 +70688,16 @@ class OpenCodeA2AAgent {
70678
70688
  }
70679
70689
  async init() {
70680
70690
  const { server: server2 } = await createOpencode({ port: 0 });
70681
- console.log(server2);
70691
+ this.server = server2;
70682
70692
  this.client = createOpencodeClient({
70683
70693
  baseUrl: server2.url,
70684
70694
  directory: this.path
70685
70695
  });
70686
70696
  }
70697
+ async close() {
70698
+ this.server?.close();
70699
+ this.server = null;
70700
+ }
70687
70701
  async buildAgentCard() {
70688
70702
  const skills = await this.client.app.skills();
70689
70703
  const userSkills = skills.data?.filter((d) => d.location.includes(this.path) && d.name.startsWith("ob-")).map((s) => ({
@@ -70755,8 +70769,37 @@ class OpenCodeA2AAgent {
70755
70769
  cancelTask = async () => {};
70756
70770
  }
70757
70771
  // ../../packages/a2a/index.ts
70772
+ class A2AServerPortInUseError extends Error {
70773
+ port;
70774
+ constructor(port) {
70775
+ super(`Port ${port} is already in use. Use --port to specify another port.`);
70776
+ this.port = port;
70777
+ }
70778
+ }
70779
+ var canConnect = async (port, host) => {
70780
+ return await new Promise((resolve5) => {
70781
+ const socket = net2.connect({ port, host });
70782
+ const finalize2 = (result) => {
70783
+ socket.removeAllListeners();
70784
+ socket.destroy();
70785
+ resolve5(result);
70786
+ };
70787
+ socket.once("connect", () => finalize2(true));
70788
+ socket.once("error", () => finalize2(false));
70789
+ socket.setTimeout(250, () => finalize2(false));
70790
+ });
70791
+ };
70792
+ async function isPortInUse(port) {
70793
+ return await canConnect(port, "127.0.0.1") || await canConnect(port, "::1");
70794
+ }
70795
+ async function assertPortAvailable(port) {
70796
+ if (await isPortInUse(port)) {
70797
+ throw new A2AServerPortInUseError(port);
70798
+ }
70799
+ }
70758
70800
  async function startServer(options, agentCard, agentExecutor) {
70759
70801
  const { authService, port } = options;
70802
+ await assertPortAvailable(port);
70760
70803
  const requestHandler = new DefaultRequestHandler(agentCard, new InMemoryTaskStore, agentExecutor);
70761
70804
  const app = import_express5.default();
70762
70805
  app.use(authenticationMiddleware(authService));
@@ -70766,8 +70809,18 @@ async function startServer(options, agentCard, agentExecutor) {
70766
70809
  userBuilder
70767
70810
  }));
70768
70811
  app.use("/a2a/rest", restHandler({ requestHandler, userBuilder }));
70769
- app.listen(port, () => {
70770
- console.log(`\uD83D\uDE80 Server started on http://localhost:${port}`);
70812
+ return await new Promise((resolve5, reject) => {
70813
+ const server2 = app.listen(port, () => {
70814
+ console.log(`\uD83D\uDE80 Server started on http://localhost:${port}`);
70815
+ resolve5({ server: server2, port });
70816
+ });
70817
+ server2.once("error", (error51) => {
70818
+ if (error51.code === "EADDRINUSE") {
70819
+ reject(new A2AServerPortInUseError(port));
70820
+ return;
70821
+ }
70822
+ reject(error51);
70823
+ });
70771
70824
  });
70772
70825
  }
70773
70826
 
@@ -70808,9 +70861,19 @@ var initAgentCommand = {
70808
70861
  const workspacePath = resolve5(argv.path ?? process.cwd());
70809
70862
  const authService = new AuthService(jwksUri);
70810
70863
  const agent = new OpenCodeA2AAgent(workspacePath, port);
70811
- await agent.init();
70812
- const agentCard = await agent.buildAgentCard();
70813
- await startServer({ authService, port }, agentCard, agent);
70864
+ try {
70865
+ await assertPortAvailable(port);
70866
+ await agent.init();
70867
+ const agentCard = await agent.buildAgentCard();
70868
+ await startServer({ authService, port }, agentCard, agent);
70869
+ } catch (error51) {
70870
+ await agent.close();
70871
+ if (error51 instanceof A2AServerPortInUseError) {
70872
+ console.error(error51.message);
70873
+ process.exit(1);
70874
+ }
70875
+ throw error51;
70876
+ }
70814
70877
  console.log(`A2A agent card: http://localhost:${port}/${AGENT_CARD_PATH}`);
70815
70878
  }
70816
70879
  };
@@ -70853,34 +70916,7 @@ var listAgentCommand = {
70853
70916
  }
70854
70917
  };
70855
70918
 
70856
- // src/lib/cli.ts
70857
- import { createInterface } from "readline";
70858
- var prompt = async (question) => {
70859
- const rl = createInterface({ input: process.stdin, output: process.stdout });
70860
- const answer = await new Promise((resolve6) => {
70861
- rl.question(question, (value) => resolve6(value));
70862
- });
70863
- rl.close();
70864
- return answer.trim();
70865
- };
70866
- var openBrowser = (url2) => {
70867
- const platform = process.platform;
70868
- if (platform === "darwin") {
70869
- Bun.spawn(["open", url2]);
70870
- return;
70871
- }
70872
- if (platform === "win32") {
70873
- Bun.spawn(["cmd", "/c", "start", url2]);
70874
- return;
70875
- }
70876
- Bun.spawn(["xdg-open", url2]);
70877
- };
70878
-
70879
70919
  // src/lib/command-helpers.ts
70880
- var isConfirmationAccepted = (input) => {
70881
- const normalized = input.trim().toLowerCase();
70882
- return normalized === "y" || normalized === "yes";
70883
- };
70884
70920
  var isJwtTokenActive = (token, now = Date.now()) => {
70885
70921
  if (!token) {
70886
70922
  return false;
@@ -70930,11 +70966,6 @@ var registerFromCardUrl = async (cardUrl) => {
70930
70966
  const decoded = jwtDecode(config2.token);
70931
70967
  const userId = decoded.sub ?? "unknown";
70932
70968
  printAgentCardPreview(localUrl, card);
70933
- const confirmation = await prompt(`Register this agent to ${gatewayUrl}? (y/N): `);
70934
- if (!isConfirmationAccepted(confirmation)) {
70935
- console.log("Registration cancelled.");
70936
- process.exit(0);
70937
- }
70938
70969
  const agent = await upsertRemoteAgent(config2, {
70939
70970
  deviceId: config2.deviceId,
70940
70971
  localUrl
@@ -71328,6 +71359,20 @@ var exchangeBearerForJwt = async ({
71328
71359
  return data.token;
71329
71360
  };
71330
71361
 
71362
+ // src/lib/cli.ts
71363
+ var openBrowser = (url2) => {
71364
+ const platform = process.platform;
71365
+ if (platform === "darwin") {
71366
+ Bun.spawn(["open", url2]);
71367
+ return;
71368
+ }
71369
+ if (platform === "win32") {
71370
+ Bun.spawn(["cmd", "/c", "start", url2]);
71371
+ return;
71372
+ }
71373
+ Bun.spawn(["xdg-open", url2]);
71374
+ };
71375
+
71331
71376
  // src/lib/devices/registry.ts
71332
71377
  var createRemoteDevice = async (config2, trpcUrlOverride) => {
71333
71378
  return getTrpcClient(config2, trpcUrlOverride).userDevice.create.mutate();
@@ -71524,9 +71569,24 @@ var statusCommand = {
71524
71569
  await status();
71525
71570
  }
71526
71571
  };
71572
+ // version.json
71573
+ var version_default = {
71574
+ version: "0.1.4",
71575
+ gitCommitHash: "a9729a2"
71576
+ };
71577
+
71578
+ // src/commands/version.ts
71579
+ var versionCommand = {
71580
+ command: "version",
71581
+ describe: "Print CLI version information",
71582
+ handler: () => {
71583
+ console.log(`${version_default.version} (${version_default.gitCommitHash})`);
71584
+ }
71585
+ };
71527
71586
 
71528
71587
  // src/commands/index.ts
71529
71588
  var rootCommands = [
71589
+ versionCommand,
71530
71590
  loginCommand,
71531
71591
  statusCommand,
71532
71592
  restartCommand,
@@ -71587,7 +71647,8 @@ var initFileLogger = () => {
71587
71647
  // src/index.ts
71588
71648
  initFileLogger();
71589
71649
  var cli = yargs_default(hideBin(process.argv)).scriptName("obrain").usage("Usage: $0 [command]");
71650
+ var versionText = `${version_default.version} (${version_default.gitCommitHash})`;
71590
71651
  for (const command of rootCommands) {
71591
71652
  cli.command(command);
71592
71653
  }
71593
- cli.demandCommand(1, "You need at least one command before moving on").strict().help().parse();
71654
+ cli.demandCommand(1, "You need at least one command before moving on").strict().version(versionText).help().parse();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@obrain/cli",
3
- "version": "0.1.2",
3
+ "version": "0.1.6",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -20,9 +20,9 @@
20
20
  "@types/node": "^20.14.15",
21
21
  "@types/yargs": "17.0.35",
22
22
  "bun-types": "^1.1.28",
23
+ "@repo/a2a": "0.0.0",
23
24
  "@repo/trpc": "0.0.0",
24
- "@repo/better-auth": "0.0.0",
25
- "@repo/a2a": "0.0.0"
25
+ "@repo/better-auth": "0.0.0"
26
26
  },
27
27
  "scripts": {
28
28
  "build": "bun build src/index.ts --outfile dist/index.js --target bun",