@a5c-ai/git-a5c 1.0.4 → 1.0.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 (44) hide show
  1. package/dist/args.d.ts +2 -0
  2. package/dist/args.d.ts.map +1 -1
  3. package/dist/args.js +4 -0
  4. package/dist/args.js.map +1 -1
  5. package/dist/commands/help.d.ts.map +1 -1
  6. package/dist/commands/help.js +2 -0
  7. package/dist/commands/help.js.map +1 -1
  8. package/dist/commands/server.d.ts +3 -0
  9. package/dist/commands/server.d.ts.map +1 -0
  10. package/dist/commands/server.js +34 -0
  11. package/dist/commands/server.js.map +1 -0
  12. package/dist/commands/ui.d.ts +3 -0
  13. package/dist/commands/ui.d.ts.map +1 -0
  14. package/dist/commands/ui.js +43 -0
  15. package/dist/commands/ui.js.map +1 -0
  16. package/dist/run.d.ts.map +1 -1
  17. package/dist/run.js +4 -0
  18. package/dist/run.js.map +1 -1
  19. package/package.json +8 -3
  20. package/src/args.ts +0 -87
  21. package/src/bin/git-a5c.ts +0 -14
  22. package/src/commands/agent.ts +0 -70
  23. package/src/commands/block.ts +0 -34
  24. package/src/commands/gate.ts +0 -32
  25. package/src/commands/help.ts +0 -38
  26. package/src/commands/hooks.ts +0 -40
  27. package/src/commands/issue.ts +0 -146
  28. package/src/commands/journal.ts +0 -75
  29. package/src/commands/ops.ts +0 -41
  30. package/src/commands/pr.ts +0 -147
  31. package/src/commands/status.ts +0 -18
  32. package/src/commands/types.ts +0 -20
  33. package/src/commands/verify.ts +0 -20
  34. package/src/commands/webhook.ts +0 -63
  35. package/src/git.ts +0 -38
  36. package/src/run.ts +0 -99
  37. package/src/time.ts +0 -16
  38. package/test/_util.ts +0 -88
  39. package/test/cli.flow.integration.test.ts +0 -86
  40. package/test/cli.snapshots.test.ts +0 -50
  41. package/test/cli.webhook.integration.test.ts +0 -62
  42. package/test/cli.write.integration.test.ts +0 -70
  43. package/tsconfig.json +0 -13
  44. package/vitest.config.ts +0 -20
package/dist/args.d.ts CHANGED
@@ -4,6 +4,8 @@ export type ParsedArgs = {
4
4
  treeish?: string;
5
5
  json?: boolean;
6
6
  inboxRefs?: string[];
7
+ port?: number;
8
+ token?: string;
7
9
  since?: string;
8
10
  limit?: number;
9
11
  types?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../src/args.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CA8CpD"}
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../src/args.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAgDpD"}
package/dist/args.js CHANGED
@@ -10,6 +10,10 @@ export function parseArgs(argv) {
10
10
  flags.treeish = args.shift();
11
11
  else if (a === "--json")
12
12
  flags.json = true;
13
+ else if (a === "--port" || a === "-p")
14
+ flags.port = Number(args.shift());
15
+ else if (a === "--token")
16
+ flags.token = args.shift();
13
17
  else if (a === "--inbox-ref") {
14
18
  const v = args.shift();
15
19
  flags.inboxRefs ??= [];
package/dist/args.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../src/args.ts"],"names":[],"mappings":"AAsCA,MAAM,UAAU,SAAS,CAAC,IAAc;IACtC,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACvB,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;QACxB,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC1C,IAAI,CAAC,KAAK,WAAW;YAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACrD,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;aACtC,IAAI,CAAC,KAAK,aAAa,EAAE,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;YACxB,KAAK,CAAC,SAAS,KAAK,EAAE,CAAC;YACvB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;aAAM,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACnD,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAG,CAAC,CAAC;aACzD,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;aACjG,IAAI,CAAC,KAAK,UAAU;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACnD,IAAI,CAAC,KAAK,UAAU;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;aAC1C,IAAI,CAAC,KAAK,cAAc;YAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;aACjD,IAAI,CAAC,KAAK,UAAU;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;aAC1C,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,IAAI;YAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACnE,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACjD,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC/C,IAAI,CAAC,KAAK,MAAM;YAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC3C,IAAI,CAAC,KAAK,cAAc;YAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC1D,IAAI,CAAC,KAAK,UAAU;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACnD,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC/C,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC/C,IAAI,CAAC,KAAK,YAAY;YAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACtD,IAAI,CAAC,KAAK,SAAS;YAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACjD,IAAI,CAAC,KAAK,MAAM;YAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC3C,IAAI,CAAC,KAAK,MAAM;YAAE,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC3C,IAAI,CAAC,KAAK,YAAY;YAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACtD,IAAI,CAAC,KAAK,eAAe;YAAE,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAG,CAAC,CAAC;aACpE,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC/C,IAAI,CAAC,KAAK,OAAO;YAAE,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC7C,IAAI,CAAC,KAAK,OAAO;YAAE,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC7C,IAAI,CAAC,KAAK,YAAY;YAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aACvD,IAAI,CAAC,KAAK,eAAe;YAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC5D,IAAI,CAAC,KAAK,OAAO;YAAE,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;aAC7C,IAAI,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAG,CAAC;;YAC/C,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../src/args.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAiChE"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,UAAU,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAmChE"}
@@ -27,6 +27,8 @@ export function handleHelp(args) {
27
27
  writeLine(out, " ops deploy --entity <id> [--artifact <uri>] [-m <status>] [--stage-only|--commit]");
28
28
  writeLine(out, " verify");
29
29
  writeLine(out, " journal [--since <2h|2025-...>] [--limit N] [--types a,b] [--entity <id>] [--active]");
30
+ writeLine(out, " server [--port <port>] [--token <token>]");
31
+ writeLine(out, " ui [dev|start|build|lint] [args]");
30
32
  writeLine(out, " hooks install|uninstall");
31
33
  writeLine(out, " webhook status");
32
34
  writeLine(out, " webhook test --url <url> [--type <type>]");
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,IAAiB;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAC1C,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO;IAE/D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC;IACxB,SAAS,CAAC,GAAG,EAAE,qFAAqF,CAAC,CAAC;IACtG,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACnB,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE,8DAA8D,CAAC,CAAC;IAC/E,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,mFAAmF,CAAC,CAAC;IACpG,SAAS,CAAC,GAAG,EAAE,0FAA0F,CAAC,CAAC;IAC3G,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE,yFAAyF,CAAC,CAAC;IAC1G,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,wEAAwE,CAAC,CAAC;IACzF,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,0FAA0F,CAAC,CAAC;IAC3G,SAAS,CAAC,GAAG,EAAE,gFAAgF,CAAC,CAAC;IACjG,SAAS,CAAC,GAAG,EAAE,4DAA4D,CAAC,CAAC;IAC7E,SAAS,CAAC,GAAG,EAAE,6GAA6G,CAAC,CAAC;IAC9H,SAAS,CAAC,GAAG,EAAE,qFAAqF,CAAC,CAAC;IACtG,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,wFAAwF,CAAC,CAAC;IACzG,SAAS,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACnC,SAAS,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAC;IAC7D,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,IAAiB;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAC1C,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO;IAE/D,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC;IACxB,SAAS,CAAC,GAAG,EAAE,qFAAqF,CAAC,CAAC;IACtG,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACnB,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE,8DAA8D,CAAC,CAAC;IAC/E,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,mFAAmF,CAAC,CAAC;IACpG,SAAS,CAAC,GAAG,EAAE,0FAA0F,CAAC,CAAC;IAC3G,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IACpC,SAAS,CAAC,GAAG,EAAE,yFAAyF,CAAC,CAAC;IAC1G,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,wEAAwE,CAAC,CAAC;IACzF,SAAS,CAAC,GAAG,EAAE,4EAA4E,CAAC,CAAC;IAC7F,SAAS,CAAC,GAAG,EAAE,0FAA0F,CAAC,CAAC;IAC3G,SAAS,CAAC,GAAG,EAAE,gFAAgF,CAAC,CAAC;IACjG,SAAS,CAAC,GAAG,EAAE,4DAA4D,CAAC,CAAC;IAC7E,SAAS,CAAC,GAAG,EAAE,6GAA6G,CAAC,CAAC;IAC9H,SAAS,CAAC,GAAG,EAAE,qFAAqF,CAAC,CAAC;IACtG,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,wFAAwF,CAAC,CAAC;IACzG,SAAS,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAC;IAC7D,SAAS,CAAC,GAAG,EAAE,oCAAoC,CAAC,CAAC;IACrD,SAAS,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IACnC,SAAS,CAAC,GAAG,EAAE,4CAA4C,CAAC,CAAC;IAC7D,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CommandArgs } from "./types.js";
2
+ export declare function handleServer(args: CommandArgs): Promise<number | undefined>;
3
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAM9C,wBAAsB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgCjF"}
@@ -0,0 +1,34 @@
1
+ import { createA5cServer } from "@a5c-ai/server";
2
+ function hasHelpFlag(args) {
3
+ return args.positionals.includes("--help") || args.positionals.includes("-h");
4
+ }
5
+ export async function handleServer(args) {
6
+ const cmd = args.positionals[0] ?? "help";
7
+ if (cmd !== "server")
8
+ return;
9
+ if (hasHelpFlag(args)) {
10
+ args.io.writeLine(args.io.out, "git a5c server [--repo <path>] [--port <port>] [--token <token>]");
11
+ args.io.writeLine(args.io.out, "");
12
+ args.io.writeLine(args.io.out, "Environment (alternatives):");
13
+ args.io.writeLine(args.io.out, " A5C_SERVER_REPO or A5C_REPO");
14
+ args.io.writeLine(args.io.out, " A5C_SERVER_TOKEN or A5C_REMOTE_TOKEN");
15
+ args.io.writeLine(args.io.out, " PORT (default: 3939)");
16
+ return 0;
17
+ }
18
+ process.env.A5C_SERVER_REPO = args.repoRoot;
19
+ if (args.flags.token)
20
+ process.env.A5C_SERVER_TOKEN = args.flags.token;
21
+ const port = Number.isFinite(args.flags.port) ? args.flags.port : Number(process.env.PORT ?? "3939");
22
+ const actualPort = Number.isFinite(port) ? port : 3939;
23
+ const srv = createA5cServer();
24
+ const actual = await srv.listen(actualPort);
25
+ args.io.writeLine(args.io.out, `a5c-server listening on :${actual}`);
26
+ await new Promise((resolve) => {
27
+ const done = () => resolve();
28
+ process.once("SIGINT", done);
29
+ process.once("SIGTERM", done);
30
+ });
31
+ await srv.close();
32
+ return 0;
33
+ }
34
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/commands/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,SAAS,WAAW,CAAC,IAAiB;IACpC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAiB;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAC1C,IAAI,GAAG,KAAK,QAAQ;QAAE,OAAO;IAE7B,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,kEAAkE,CAAC,CAAC;QACnG,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;QAChE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,wCAAwC,CAAC,CAAC;QACzE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAEtE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAe,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IACjH,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEvD,MAAM,GAAG,GAAG,eAAe,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,4BAA4B,MAAM,EAAE,CAAC,CAAC;IAErE,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IAClB,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CommandArgs } from "./types.js";
2
+ export declare function handleUi(args: CommandArgs): Promise<number | undefined>;
3
+ //# sourceMappingURL=ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../../src/commands/ui.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ9C,wBAAsB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAsC7E"}
@@ -0,0 +1,43 @@
1
+ import { spawn } from "node:child_process";
2
+ import path from "node:path";
3
+ import { createRequire } from "node:module";
4
+ import { fileURLToPath } from "node:url";
5
+ const require = createRequire(import.meta.url);
6
+ function hasHelpFlag(args) {
7
+ return args.positionals.includes("--help") || args.positionals.includes("-h");
8
+ }
9
+ export async function handleUi(args) {
10
+ const cmd = args.positionals[0] ?? "help";
11
+ if (cmd !== "ui")
12
+ return;
13
+ if (hasHelpFlag(args)) {
14
+ args.io.writeLine(args.io.out, "git a5c ui [dev|start|build|lint] [args]");
15
+ args.io.writeLine(args.io.out, "");
16
+ args.io.writeLine(args.io.out, "Environment:");
17
+ args.io.writeLine(args.io.out, " A5C_REPO (auto-set to current repo)");
18
+ args.io.writeLine(args.io.out, " A5C_TREEISH (defaults to --treeish or HEAD)");
19
+ args.io.writeLine(args.io.out, " A5C_INBOX_REFS (from --inbox-ref)");
20
+ return 0;
21
+ }
22
+ process.env.A5C_REPO = args.repoRoot;
23
+ process.env.A5C_TREEISH = args.treeish ?? "HEAD";
24
+ if (args.flags.inboxRefs?.length) {
25
+ process.env.A5C_INBOX_REFS = args.flags.inboxRefs.join(",");
26
+ }
27
+ const uiPkgJson = fileURLToPath(import.meta.resolve("@a5c-ai/ui/package.json"));
28
+ const uiDir = path.dirname(uiPkgJson);
29
+ const nextBin = require.resolve("next/dist/bin/next", { paths: [uiDir] });
30
+ const nextArgv = args.positionals.slice(1);
31
+ const nextSubcommands = new Set(["dev", "start", "build", "lint", "telemetry", "info"]);
32
+ const nextArgs = nextArgv.length > 0 && nextSubcommands.has(nextArgv[0]) ? nextArgv : ["dev", ...nextArgv];
33
+ const child = spawn(process.execPath, [nextBin, ...nextArgs], {
34
+ cwd: uiDir,
35
+ stdio: "inherit",
36
+ env: { ...process.env, NEXT_TELEMETRY_DISABLED: process.env.NEXT_TELEMETRY_DISABLED ?? "1" }
37
+ });
38
+ const exitCode = await new Promise((resolve) => {
39
+ child.on("exit", (code) => resolve(code ?? 1));
40
+ });
41
+ return exitCode;
42
+ }
43
+ //# sourceMappingURL=ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/commands/ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/C,SAAS,WAAW,CAAC,IAAiB;IACpC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAiB;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;IAC1C,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO;IAEzB,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;QAC3E,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC;QACxE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,+CAA+C,CAAC,CAAC;QAChF,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,qCAAqC,CAAC,CAAC;QACtE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC;IACjD,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAE1E,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC;IAE5G,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,EAAE;QAC5D,GAAG,EAAE,KAAK;QACV,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,uBAAuB,EAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,GAAG,EAAE;KAC7F,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QACrD,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAiBA,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B,CAAC;AAgBF,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA2DnF"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAmBA,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B,CAAC;AAgBF,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA6DnF"}
package/dist/run.js CHANGED
@@ -13,6 +13,8 @@ import { handleOps } from "./commands/ops.js";
13
13
  import { handleHooks } from "./commands/hooks.js";
14
14
  import { handleVerify } from "./commands/verify.js";
15
15
  import { handleJournal } from "./commands/journal.js";
16
+ import { handleServer } from "./commands/server.js";
17
+ import { handleUi } from "./commands/ui.js";
16
18
  function writeLine(write, s = "") {
17
19
  write(s + "\n");
18
20
  }
@@ -57,6 +59,8 @@ export async function runCli(argv, opts = {}) {
57
59
  };
58
60
  const handlers = [
59
61
  () => handleHelp(baseArgs),
62
+ () => handleServer(baseArgs),
63
+ () => handleUi(baseArgs),
60
64
  () => handleWebhook(baseArgs),
61
65
  () => handleStatus(baseArgs),
62
66
  () => handleIssue(baseArgs),
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,17 @@
1
1
  {
2
2
  "name": "@a5c-ai/git-a5c",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "type": "module",
5
+ "files": [
6
+ "dist"
7
+ ],
5
8
  "bin": {
6
9
  "git-a5c": "./dist/bin/git-a5c.js"
7
10
  },
8
11
  "dependencies": {
9
- "@a5c-ai/sdk": "1.0.4"
12
+ "@a5c-ai/sdk": "1.0.6",
13
+ "@a5c-ai/server": "1.0.6",
14
+ "@a5c-ai/ui": "1.0.6"
10
15
  },
11
16
  "devDependencies": {
12
17
  "@vitest/coverage-v8": "^2.1.8",
@@ -17,7 +22,7 @@
17
22
  "access": "public"
18
23
  },
19
24
  "scripts": {
20
- "build": "tsc -p tsconfig.json",
25
+ "build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.json",
21
26
  "test": "vitest run",
22
27
  "test:coverage": "vitest run --coverage"
23
28
  }
package/src/args.ts DELETED
@@ -1,87 +0,0 @@
1
- export type ParsedArgs = {
2
- flags: {
3
- repo?: string;
4
- treeish?: string;
5
- json?: boolean;
6
- inboxRefs?: string[];
7
- since?: string;
8
- limit?: number;
9
- types?: string[];
10
- entity?: string;
11
- active?: boolean;
12
- stageOnly?: boolean;
13
- commit?: boolean;
14
- message?: string;
15
- title?: string;
16
- body?: string;
17
- id?: string;
18
- commentId?: string;
19
- reason?: string;
20
- base?: string;
21
- head?: string;
22
- headRef?: string;
23
- topic?: string;
24
- by?: string;
25
- op?: string;
26
- agentId?: string;
27
- ttlSeconds?: number;
28
- task?: string;
29
- env?: string;
30
- rev?: string;
31
- artifact?: string;
32
- dispatchId?: string;
33
- url?: string;
34
- type?: string;
35
- };
36
- positionals: string[];
37
- };
38
-
39
- export function parseArgs(argv: string[]): ParsedArgs {
40
- const args = [...argv];
41
- const flags: ParsedArgs["flags"] = {};
42
- const positionals: string[] = [];
43
-
44
- while (args.length) {
45
- const a = args.shift()!;
46
- if (a === "--repo") flags.repo = args.shift()!;
47
- else if (a === "--treeish") flags.treeish = args.shift()!;
48
- else if (a === "--json") flags.json = true;
49
- else if (a === "--inbox-ref") {
50
- const v = args.shift()!;
51
- flags.inboxRefs ??= [];
52
- flags.inboxRefs.push(v);
53
- } else if (a === "--since") flags.since = args.shift()!;
54
- else if (a === "--limit") flags.limit = Number(args.shift()!);
55
- else if (a === "--types") flags.types = args.shift()!.split(",").map((s) => s.trim()).filter(Boolean);
56
- else if (a === "--entity") flags.entity = args.shift()!;
57
- else if (a === "--active") flags.active = true;
58
- else if (a === "--stage-only") flags.stageOnly = true;
59
- else if (a === "--commit") flags.commit = true;
60
- else if (a === "--message" || a === "-m") flags.message = args.shift()!;
61
- else if (a === "--title") flags.title = args.shift()!;
62
- else if (a === "--body") flags.body = args.shift()!;
63
- else if (a === "--id") flags.id = args.shift()!;
64
- else if (a === "--comment-id") flags.commentId = args.shift()!;
65
- else if (a === "--reason") flags.reason = args.shift()!;
66
- else if (a === "--base") flags.base = args.shift()!;
67
- else if (a === "--head") flags.head = args.shift()!;
68
- else if (a === "--head-ref") flags.headRef = args.shift()!;
69
- else if (a === "--topic") flags.topic = args.shift()!;
70
- else if (a === "--by") flags.by = args.shift()!;
71
- else if (a === "--op") flags.op = args.shift()!;
72
- else if (a === "--agent-id") flags.agentId = args.shift()!;
73
- else if (a === "--ttl-seconds") flags.ttlSeconds = Number(args.shift()!);
74
- else if (a === "--task") flags.task = args.shift()!;
75
- else if (a === "--env") flags.env = args.shift()!;
76
- else if (a === "--rev") flags.rev = args.shift()!;
77
- else if (a === "--artifact") flags.artifact = args.shift()!;
78
- else if (a === "--dispatch-id") flags.dispatchId = args.shift()!;
79
- else if (a === "--url") flags.url = args.shift()!;
80
- else if (a === "--type") flags.type = args.shift()!;
81
- else positionals.push(a);
82
- }
83
-
84
- return { flags, positionals };
85
- }
86
-
87
-
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env node
2
- import { runCli } from "../run.js";
3
-
4
- runCli(process.argv.slice(2))
5
- .then((code) => {
6
- process.exitCode = code;
7
- })
8
- .catch((e) => {
9
- // Keep output minimal and deterministic.
10
- process.stderr.write(String(e?.message ?? e) + "\n");
11
- process.exitCode = 1;
12
- });
13
-
14
-
@@ -1,70 +0,0 @@
1
- import type { CommandArgs } from "./types.js";
2
- import { git, gitConfigGet } from "../git.js";
3
- import {
4
- HlcClock,
5
- UlidGenerator,
6
- loadHlcState,
7
- saveHlcState,
8
- stageFiles,
9
- writeAgentHeartbeat,
10
- writeAgentDispatchCreated
11
- } from "@a5c-ai/sdk";
12
-
13
- export async function handleAgent(args: CommandArgs): Promise<number | undefined> {
14
- if (args.positionals[0] !== "agent") return;
15
- const sub = args.positionals[1];
16
- const actor = process.env.A5C_ACTOR ?? (await gitConfigGet(args.repoRoot, "user.name")) ?? "unknown";
17
- const persisted = (await loadHlcState(actor)) ?? { wallMs: 0, counter: 0 };
18
- const clock = new HlcClock(persisted);
19
- let nonce = 0;
20
- const ctx = { repoRoot: args.repoRoot, actor, clock, nextNonce: () => String(++nonce).padStart(4, "0") };
21
-
22
- if (sub === "heartbeat") {
23
- const agentId = args.flags.agentId ?? actor;
24
- const ttlSeconds = args.flags.ttlSeconds ?? 120;
25
- const time = new Date(args.nowMs()).toISOString();
26
- const status = args.flags.message ?? undefined;
27
- const entityId = args.flags.entity;
28
- const entity = entityId ? ({ type: entityId.startsWith("pr-") ? "pr" : "issue", id: entityId } as const) : undefined;
29
- const res = await writeAgentHeartbeat(ctx, { agentId, ttlSeconds, status, entity, time });
30
- await saveHlcState(actor, clock.now());
31
- if (args.flags.stageOnly || args.flags.commit) await stageFiles(args.repoRoot, [res.path]);
32
- if (args.flags.commit) {
33
- const msg = args.flags.message ?? `a5c: agent heartbeat ${agentId}`;
34
- await git(["-c", "user.name=a5c", "-c", "user.email=a5c@example.invalid", "commit", "-m", msg], args.repoRoot);
35
- }
36
- args.io.writeLine(args.io.out, res.path);
37
- return 0;
38
- }
39
-
40
- if (sub === "dispatch") {
41
- const entityId = args.flags.entity;
42
- if (!entityId) {
43
- args.io.writeLine(args.io.err, "usage: git a5c agent dispatch --entity <issueId|prKey> [--dispatch-id ...] [--task ...]");
44
- return 2;
45
- }
46
- const dispatchId = args.flags.dispatchId ?? `d-${new UlidGenerator().generate()}`;
47
- const time = new Date(args.nowMs()).toISOString();
48
- const entity = { type: entityId.startsWith("pr-") ? "pr" : "issue", id: entityId } as const;
49
- const agentId = args.flags.agentId ?? actor;
50
- const res = await writeAgentDispatchCreated(ctx, {
51
- dispatchId,
52
- agentId,
53
- entity,
54
- task: args.flags.task,
55
- params: undefined,
56
- time
57
- });
58
- await saveHlcState(actor, clock.now());
59
- if (args.flags.stageOnly || args.flags.commit) await stageFiles(args.repoRoot, [res.path]);
60
- if (args.flags.commit) {
61
- const msg = args.flags.message ?? `a5c: agent dispatch ${dispatchId}`;
62
- await git(["-c", "user.name=a5c", "-c", "user.email=a5c@example.invalid", "commit", "-m", msg], args.repoRoot);
63
- }
64
- args.io.writeLine(args.io.out, res.path);
65
- return 0;
66
- }
67
-
68
- args.io.writeLine(args.io.err, "usage: git a5c agent heartbeat|dispatch ...");
69
- return 2;
70
- }
@@ -1,34 +0,0 @@
1
- import type { CommandArgs } from "./types.js";
2
- import { git, gitConfigGet } from "../git.js";
3
- import { HlcClock, loadHlcState, saveHlcState, stageFiles, writeDepChanged } from "@a5c-ai/sdk";
4
-
5
- export async function handleBlock(args: CommandArgs): Promise<number | undefined> {
6
- if (args.positionals[0] !== "block") return;
7
- // git a5c block <entityId> --by <issueOrPrId> [--op add|remove]
8
- const entityId = args.positionals[1];
9
- const byId = args.flags.by;
10
- const op = (args.flags.op as any) ?? "add";
11
- if (!entityId || !byId) {
12
- args.io.writeLine(args.io.err, "usage: git a5c block <entityId> --by <issue|pr> [--op add|remove]");
13
- return 2;
14
- }
15
- const entity = { type: entityId.startsWith("pr-") ? "pr" : "issue", id: entityId } as const;
16
- const by = { type: byId.startsWith("pr-") ? "pr" : "issue", id: byId } as const;
17
- const actor = process.env.A5C_ACTOR ?? (await gitConfigGet(args.repoRoot, "user.name")) ?? "unknown";
18
- const time = new Date(args.nowMs()).toISOString();
19
- const persisted = (await loadHlcState(actor)) ?? { wallMs: 0, counter: 0 };
20
- const clock = new HlcClock(persisted);
21
- let nonce = 0;
22
- const ctx = { repoRoot: args.repoRoot, actor, clock, nextNonce: () => String(++nonce).padStart(4, "0") };
23
- const res = await writeDepChanged(ctx, { entity, op, by, note: args.flags.message as any, time });
24
- await saveHlcState(actor, clock.now());
25
- if (args.flags.stageOnly || args.flags.commit) await stageFiles(args.repoRoot, [res.path]);
26
- if (args.flags.commit) {
27
- const msg = args.flags.message ?? `a5c: dep ${op} ${entityId}`;
28
- await git(["-c", "user.name=a5c", "-c", "user.email=a5c@example.invalid", "commit", "-m", msg], args.repoRoot);
29
- }
30
- args.io.writeLine(args.io.out, res.path);
31
- return 0;
32
- }
33
-
34
-
@@ -1,32 +0,0 @@
1
- import type { CommandArgs } from "./types.js";
2
- import { git, gitConfigGet } from "../git.js";
3
- import { HlcClock, loadHlcState, saveHlcState, stageFiles, writeGateChanged } from "@a5c-ai/sdk";
4
-
5
- export async function handleGate(args: CommandArgs): Promise<number | undefined> {
6
- if (args.positionals[0] !== "gate") return;
7
- const sub = args.positionals[1];
8
- const entityId = args.positionals[2];
9
- if (!sub || !entityId) {
10
- args.io.writeLine(args.io.err, "usage: git a5c gate needs-human|clear <entityId> [--topic t] [-m msg]");
11
- return 2;
12
- }
13
- const entity = { type: entityId.startsWith("pr-") ? "pr" : "issue", id: entityId } as const;
14
- const needsHuman = sub === "needs-human";
15
- const actor = process.env.A5C_ACTOR ?? (await gitConfigGet(args.repoRoot, "user.name")) ?? "unknown";
16
- const time = new Date(args.nowMs()).toISOString();
17
- const persisted = (await loadHlcState(actor)) ?? { wallMs: 0, counter: 0 };
18
- const clock = new HlcClock(persisted);
19
- let nonce = 0;
20
- const ctx = { repoRoot: args.repoRoot, actor, clock, nextNonce: () => String(++nonce).padStart(4, "0") };
21
- const res = await writeGateChanged(ctx, { entity, needsHuman, topic: args.flags.topic, message: args.flags.message as any, time });
22
- await saveHlcState(actor, clock.now());
23
- if (args.flags.stageOnly || args.flags.commit) await stageFiles(args.repoRoot, [res.path]);
24
- if (args.flags.commit) {
25
- const msg = args.flags.message ?? `a5c: gate ${sub} ${entityId}`;
26
- await git(["-c", "user.name=a5c", "-c", "user.email=a5c@example.invalid", "commit", "-m", msg], args.repoRoot);
27
- }
28
- args.io.writeLine(args.io.out, res.path);
29
- return 0;
30
- }
31
-
32
-
@@ -1,38 +0,0 @@
1
- import type { CommandArgs } from "./types.js";
2
-
3
- export function handleHelp(args: CommandArgs): number | undefined {
4
- const cmd = args.positionals[0] ?? "help";
5
- if (cmd !== "help" && cmd !== "--help" && cmd !== "-h") return;
6
-
7
- const { writeLine } = args.io;
8
- const out = args.io.out;
9
- writeLine(out, "git a5c <command> [--json] [--treeish <ref>] [--repo <path>] [--inbox-ref <ref>...]");
10
- writeLine(out, "");
11
- writeLine(out, "Commands:");
12
- writeLine(out, " status");
13
- writeLine(out, " issue list");
14
- writeLine(out, " issue show <id>");
15
- writeLine(out, " issue new --title <t> [--body <b>] [--stage-only|--commit]");
16
- writeLine(out, " issue comment <id> -m <text> [--comment-id <id>] [--stage-only|--commit]");
17
- writeLine(out, " issue edit-comment <commentId> --id <issueId> -m <text> [--stage-only|--commit]");
18
- writeLine(out, " issue redact-comment <commentId> --id <issueId> [--reason <r>] [--stage-only|--commit]");
19
- writeLine(out, " pr list");
20
- writeLine(out, " pr show <prKey>");
21
- writeLine(out, " pr propose --base <ref> --head <ref> --title <t> [--body <b>] [--stage-only|--commit]");
22
- writeLine(out, " pr request --base <ref> --title <t> [--body <b>] [--stage-only|--commit]");
23
- writeLine(out, " pr claim <prKey> --head-ref <ref> [-m <msg>] [--stage-only|--commit]");
24
- writeLine(out, " pr bind-head <prKey> --head-ref <ref> [-m <msg>] [--stage-only|--commit]");
25
- writeLine(out, " block <entityId> --by <issue|pr> [--op add|remove] [-m <note>] [--stage-only|--commit]");
26
- writeLine(out, " gate needs-human <entityId> [--topic <t>] [-m <msg>] [--stage-only|--commit]");
27
- writeLine(out, " gate clear <entityId> [-m <msg>] [--stage-only|--commit]");
28
- writeLine(out, " agent heartbeat [--agent-id <id>] [--ttl-seconds N] [--entity <id>] [-m <status>] [--stage-only|--commit]");
29
- writeLine(out, " ops deploy --entity <id> [--artifact <uri>] [-m <status>] [--stage-only|--commit]");
30
- writeLine(out, " verify");
31
- writeLine(out, " journal [--since <2h|2025-...>] [--limit N] [--types a,b] [--entity <id>] [--active]");
32
- writeLine(out, " hooks install|uninstall");
33
- writeLine(out, " webhook status");
34
- writeLine(out, " webhook test --url <url> [--type <type>]");
35
- return 0;
36
- }
37
-
38
-
@@ -1,40 +0,0 @@
1
- import type { CommandArgs } from "./types.js";
2
- import fs from "node:fs/promises";
3
- import { gitPath } from "../git.js";
4
-
5
- export async function handleHooks(args: CommandArgs): Promise<number | undefined> {
6
- if (args.positionals[0] !== "hooks") return;
7
- const sub = args.positionals[1];
8
- if (sub !== "install" && sub !== "uninstall") {
9
- args.io.writeLine(args.io.err, "usage: git a5c hooks install|uninstall");
10
- return 2;
11
- }
12
- const hooksDir = await gitPath(args.repoRoot, "hooks");
13
- const hookFiles = ["post-commit", "post-merge"];
14
- if (sub === "uninstall") {
15
- for (const f of hookFiles) {
16
- try {
17
- const p = `${hooksDir}/${f}`;
18
- const cur = await fs.readFile(p, "utf8");
19
- if (cur.includes("A5C-HOOK-MANAGED: yes")) {
20
- await fs.unlink(p);
21
- }
22
- } catch {}
23
- }
24
- args.io.writeLine(args.io.out, "ok");
25
- return 0;
26
- }
27
- const script = `#!/bin/sh\n# a5cforge hook (generated)\n# A5C-HOOK-MANAGED: yes\n# Keep it quiet; write last journal to .git\nif command -v git >/dev/null 2>&1; then\n git a5c journal --since 2h --limit 20 --json > "$(git rev-parse --git-path a5c-last-journal.json)" 2>/dev/null || true\nfi\nexit 0\n`;
28
- await fs.mkdir(hooksDir, { recursive: true });
29
- for (const f of hookFiles) {
30
- const p = `${hooksDir}/${f}`;
31
- await fs.writeFile(p, script, "utf8");
32
- try {
33
- await fs.chmod(p, 0o755);
34
- } catch {}
35
- }
36
- args.io.writeLine(args.io.out, "ok");
37
- return 0;
38
- }
39
-
40
-