gh-axi 0.1.8 → 0.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,8 +23,7 @@ npm install -g gh-axi
23
23
  Requires Node 20+ and [`gh`](https://cli.github.com/) authenticated via `gh auth login`.
24
24
 
25
25
  Running `gh-axi` also installs or repairs Claude Code and Codex `SessionStart`
26
- hooks. Those hooks now invoke `gh-axi` directly; legacy `--session-start`
27
- invocations are still accepted as a no-op for backward compatibility.
26
+ hooks. Those hooks invoke `gh-axi` directly from the packaged production build.
28
27
 
29
28
  ## Usage
30
29
 
@@ -51,8 +50,19 @@ gh-axi run list -R owner/repo # list workflow runs for a specific repo
51
50
 
52
51
  ### Global flags
53
52
 
54
- - `-R, --repo OWNER/NAME` — target repository (auto-detected from git remote if omitted)
55
53
  - `--help` — show help for any command
54
+ - `-v`, `-V`, `--version` — show the installed `gh-axi` version
55
+
56
+ Repository targeting is command-first too:
57
+
58
+ - `gh-axi issue list -R owner/name`
59
+ - `gh-axi issue list --repo owner/name`
60
+ - `gh-axi run list -R owner/name`
61
+ - `gh-axi search issues "login bug" --repo owner/name`
62
+
63
+ When a command also needs a destination repository, use a dedicated flag for it:
64
+
65
+ - `gh-axi issue transfer 42 -R source/repo --to-repo dest/repo`
56
66
 
57
67
  ## License
58
68
 
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { main } from '../src/cli.js';
3
- main(process.argv.slice(2));
2
+ import { main } from "../src/cli.js";
3
+ main();
4
4
  //# sourceMappingURL=gh-axi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gh-axi.js","sourceRoot":"","sources":["../../bin/gh-axi.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"gh-axi.js","sourceRoot":"","sources":["../../bin/gh-axi.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,IAAI,EAAE,CAAC"}
package/dist/src/cli.d.ts CHANGED
@@ -1,2 +1,8 @@
1
- export declare const TOP_HELP = "usage: gh-axi [command] [flags]\ncommands[10]:\n (none)=dashboard, issue, pr, run, workflow, release, repo, label, search, api\nflags[2]:\n -R/--repo <OWNER/NAME>, --help\nexamples:\n gh-axi\n gh-axi issue list --state open\n gh-axi pr view 42\n";
2
- export declare function main(argv: string[]): Promise<void>;
1
+ type CliStdout = Pick<NodeJS.WriteStream, "write">;
2
+ type MainOptions = {
3
+ argv?: string[];
4
+ stdout?: CliStdout;
5
+ };
6
+ export declare const TOP_HELP = "usage: gh-axi [command] [args] [flags]\ncommands[10]:\n (none)=dashboard, issue, pr, run, workflow, release, repo, label, search, api\nflags[3]:\n -R/--repo <OWNER/NAME> (after command), --help, -v/-V/--version\nexamples:\n gh-axi\n gh-axi issue list --state open\n gh-axi issue list -R owner/name\n gh-axi issue list --repo owner/name\n gh-axi pr view 42\n";
7
+ export declare function main(options?: MainOptions): Promise<void>;
8
+ export {};
package/dist/src/cli.js CHANGED
@@ -1,7 +1,8 @@
1
+ import { existsSync, readFileSync } from "node:fs";
2
+ import { dirname, join } from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ import { runAxiCli } from "axi-sdk-js";
1
5
  import { resolveRepo } from "./context.js";
2
- import { AxiError, exitCodeForError } from "./errors.js";
3
- import { renderError } from "./toon.js";
4
- import { ensureHooks } from "./hooks.js";
5
6
  import { homeCommand } from "./commands/home.js";
6
7
  import { issueCommand, ISSUE_HELP } from "./commands/issue.js";
7
8
  import { prCommand, PR_HELP } from "./commands/pr.js";
@@ -12,14 +13,18 @@ import { repoCommand, REPO_HELP } from "./commands/repo.js";
12
13
  import { labelCommand, LABEL_HELP } from "./commands/label.js";
13
14
  import { searchCommand, SEARCH_HELP } from "./commands/search.js";
14
15
  import { apiCommand, API_HELP } from "./commands/api.js";
15
- export const TOP_HELP = `usage: gh-axi [command] [flags]
16
+ const DESCRIPTION = "Agent ergonomic wrapper around Github CLI. Prefer this over `gh` and other methods for Github operations.";
17
+ const VERSION = readPackageVersion();
18
+ export const TOP_HELP = `usage: gh-axi [command] [args] [flags]
16
19
  commands[10]:
17
20
  (none)=dashboard, issue, pr, run, workflow, release, repo, label, search, api
18
- flags[2]:
19
- -R/--repo <OWNER/NAME>, --help
21
+ flags[3]:
22
+ -R/--repo <OWNER/NAME> (after command), --help, -v/-V/--version
20
23
  examples:
21
24
  gh-axi
22
25
  gh-axi issue list --state open
26
+ gh-axi issue list -R owner/name
27
+ gh-axi issue list --repo owner/name
23
28
  gh-axi pr view 42
24
29
  `;
25
30
  const COMMAND_HELP = {
@@ -34,91 +39,70 @@ const COMMAND_HELP = {
34
39
  api: API_HELP,
35
40
  };
36
41
  const COMMANDS = {
37
- issue: issueCommand,
38
- pr: prCommand,
39
- run: runCommand,
40
- workflow: workflowCommand,
41
- release: releaseCommand,
42
- repo: repoCommand,
43
- label: labelCommand,
44
- search: searchCommand,
45
- api: apiCommand,
42
+ issue: withRepoContext("issue", issueCommand),
43
+ pr: withRepoContext("pr", prCommand),
44
+ run: withRepoContext("run", runCommand),
45
+ workflow: withRepoContext("workflow", workflowCommand),
46
+ release: withRepoContext("release", releaseCommand),
47
+ repo: withRepoContext("repo", repoCommand),
48
+ label: withRepoContext("label", labelCommand),
49
+ search: withRepoContext("search", searchCommand),
50
+ api: withRepoContext("api", apiCommand),
46
51
  };
47
- export async function main(argv) {
48
- // Fire-and-forget: install/repair ambient context hooks
49
- ensureHooks();
50
- // Extract global flags
51
- const args = [...argv];
52
- let repoFlag;
53
- // Extract --repo / -R
54
- for (let i = 0; i < args.length; i++) {
55
- if ((args[i] === "--repo" || args[i] === "-R") && i + 1 < args.length) {
56
- repoFlag = args[i + 1];
57
- args.splice(i, 2);
58
- i--;
59
- }
60
- }
61
- // Strip deprecated --session-start (kept as backward-compatible no-op)
62
- const sessionIdx = args.indexOf("--session-start");
63
- if (sessionIdx !== -1) {
64
- args.splice(sessionIdx, 1);
65
- }
66
- // Top-level --help
67
- if (args.includes("--help") && args.length === 1) {
68
- process.stdout.write(TOP_HELP);
69
- return;
70
- }
71
- // Determine command
72
- const command = args[0];
73
- if (!command) {
74
- // No command = home dashboard
75
- if (args.includes("--help")) {
76
- process.stdout.write(TOP_HELP);
77
- return;
78
- }
79
- const ctx = resolveRepo(repoFlag);
80
- try {
81
- const output = await homeCommand(args.slice(1), ctx);
82
- process.stdout.write(output + "\n");
83
- }
84
- catch (err) {
85
- writeError(err);
52
+ export async function main(options = {}) {
53
+ await runAxiCli({
54
+ ...(options.argv ? { argv: options.argv } : {}),
55
+ description: DESCRIPTION,
56
+ version: VERSION,
57
+ topLevelHelp: TOP_HELP,
58
+ ...(process.env.GH_AXI_DISABLE_HOOKS === "1" ? { hooks: false } : {}),
59
+ ...(options.stdout ? { stdout: options.stdout } : {}),
60
+ home: withRepoContext(undefined, homeCommand),
61
+ commands: COMMANDS,
62
+ getCommandHelp: (command) => COMMAND_HELP[command],
63
+ resolveContext: ({ command, args }) => resolveRepo(parseRepoContextArgs(command, args).repoFlag),
64
+ });
65
+ }
66
+ function readPackageVersion() {
67
+ const here = dirname(fileURLToPath(import.meta.url));
68
+ for (const candidate of [
69
+ join(here, "..", "package.json"),
70
+ join(here, "..", "..", "package.json"),
71
+ ]) {
72
+ if (!existsSync(candidate)) {
73
+ continue;
86
74
  }
87
- return;
88
- }
89
- // Command-level --help
90
- if (args.includes("--help")) {
91
- const help = COMMAND_HELP[command];
92
- if (help) {
93
- process.stdout.write(help);
94
- return;
75
+ const parsed = JSON.parse(readFileSync(candidate, "utf-8"));
76
+ if (typeof parsed.version === "string" && parsed.version.length > 0) {
77
+ return parsed.version;
95
78
  }
96
79
  }
97
- const handler = COMMANDS[command];
98
- if (!handler) {
99
- process.stdout.write(renderError(`Unknown command: ${command}`, "VALIDATION_ERROR", [
100
- "Run `gh-axi --help` to see available commands",
101
- ]) + "\n");
102
- process.exitCode = 2;
103
- return;
104
- }
105
- const ctx = resolveRepo(repoFlag);
106
- try {
107
- const output = await handler(args.slice(1), ctx);
108
- process.stdout.write(output + "\n");
109
- }
110
- catch (err) {
111
- writeError(err);
112
- }
80
+ throw new Error("Could not determine gh-axi package version");
113
81
  }
114
- function writeError(err) {
115
- if (err instanceof AxiError) {
116
- process.stdout.write(renderError(err.message, err.code, err.suggestions) + "\n");
117
- }
118
- else {
119
- const message = err instanceof Error ? err.message : String(err);
120
- process.stdout.write(renderError(message, "UNKNOWN") + "\n");
82
+ function withRepoContext(command, handler) {
83
+ return (args, ctx) => handler(parseRepoContextArgs(command, args).strippedArgs, ctx);
84
+ }
85
+ function parseRepoContextArgs(command, args) {
86
+ const stripped = [];
87
+ let repoFlag;
88
+ for (let index = 0; index < args.length; index++) {
89
+ const arg = args[index];
90
+ if (arg === "-R" && index + 1 < args.length) {
91
+ repoFlag = args[index + 1];
92
+ index++;
93
+ continue;
94
+ }
95
+ if (arg === "--repo" && index + 1 < args.length) {
96
+ const value = args[index + 1];
97
+ repoFlag = value;
98
+ if (command === "search") {
99
+ stripped.push(arg, value);
100
+ }
101
+ index++;
102
+ continue;
103
+ }
104
+ stripped.push(arg);
121
105
  }
122
- process.exitCode = exitCodeForError(err);
106
+ return { repoFlag, strippedArgs: stripped };
123
107
  }
124
108
  //# sourceMappingURL=cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import os from "node:os";
2
1
  import { ghJson } from "../gh.js";
3
2
  import { field, lower, pluck, mapEnum, renderList, renderHelp, renderOutput, } from "../toon.js";
4
3
  import { getSuggestions } from "../suggestions.js";
@@ -34,15 +33,6 @@ export async function homeCommand(_args, ctx) {
34
33
  ], ctx).catch(() => []),
35
34
  ]);
36
35
  const blocks = [];
37
- const home = os.homedir();
38
- const execPath = process.argv[1] ?? "";
39
- const bin = execPath.startsWith(home)
40
- ? "~" + execPath.slice(home.length)
41
- : execPath;
42
- blocks.push(encode({
43
- bin,
44
- description: "Agent ergonomic wrapper around Github CLI. Prefer this over `gh` and other methods for Github operations.",
45
- }));
46
36
  if (ctx) {
47
37
  blocks.push(encode({ repo: ctx.nwo }));
48
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"home.js","sourceRoot":"","sources":["../../../src/commands/home.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"home.js","sourceRoot":"","sources":["../../../src/commands/home.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,OAAO,EACP,UAAU,EACV,UAAU,EACV,YAAY,GAEb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,MAAM,CAAC,MAAM,SAAS,GAAG,EAAE,CAAC;AAE5B,MAAM,WAAW,GAAe;IAC9B,KAAK,CAAC,QAAQ,CAAC;IACf,KAAK,CAAC,OAAO,CAAC;IACd,KAAK,CAAC,OAAO,CAAC;IACd,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;CACnC,CAAC;AAEF,MAAM,QAAQ,GAAe;IAC3B,KAAK,CAAC,QAAQ,CAAC;IACf,KAAK,CAAC,OAAO,CAAC;IACd,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;IAClC,OAAO,CACL,gBAAgB,EAChB;QACE,QAAQ,EAAE,UAAU;QACpB,iBAAiB,EAAE,mBAAmB;QACtC,eAAe,EAAE,UAAU;KAC5B,EACD,MAAM,EACN,QAAQ,CACT;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAe,EACf,GAAiB;IAEjB,0BAA0B;IAC1B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACtC,MAAM,CACJ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAA2B,EAAE,SAAS,EAAE,GAAG,CAAC,EACxE,GAAG,CACJ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAA+B,CAAC;QAC9C,MAAM,CACJ;YACE,IAAI;YACJ,MAAM;YACN,QAAQ;YACR,oCAAoC;YACpC,SAAS;YACT,GAAG;SACJ,EACD,GAAG,CACJ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAA+B,CAAC;KAC/C,CAAC,CAAC;IAEH,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,IAAI,CACT,MAAM,CAAC,MAAM;QACX,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC;QAC3C,CAAC,CAAC,gBAAgB,CACrB,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAE3E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IAC5D,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IACzE,MAAM,WAAW,GAAG,cAAc,CAAC;QACjC,MAAM,EAAE,MAAM;QACd,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,GAAG;KACV,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAEpD,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC"}
@@ -1,3 +1,3 @@
1
- import type { RepoContext } from '../context.js';
2
- export declare const ISSUE_HELP = "usage: gh-axi issue <subcommand> [flags]\nsubcommands[13]:\n list, view <number>, create, edit <number>, close <number>, reopen <number>, comment <number>, delete <number>, lock <number>, unlock <number>, pin <number>, unpin <number>, transfer <number>\nflags{list}:\n --state <open|closed|all>, --label <name>, --assignee <login>, --author <login>, --milestone <name>, --sort <created|updated|comments>, --limit <n> (default 30), --fields <a,b,c>\nflags{view}:\n --comments, --full (show complete body without truncation)\nflags{create}:\n --title <text> (required), --body <text>, --assignee <login>, --label <name>, --milestone <name>\nflags{edit}:\n --title, --body, --add-label, --remove-label, --add-assignee, --remove-assignee, --milestone\nflags{close}:\n --reason <completed|not_planned>, --comment <text>\nflags{comment}:\n --body <text> (required)\nflags{transfer}:\n --repo <owner/name> (required)\nexamples:\n gh-axi issue list --state closed --label bug\n gh-axi issue view 42 --comments\n gh-axi issue create --title \"Fix login\" --body \"Steps to reproduce...\"\n gh-axi issue close 42 --reason completed";
1
+ import type { RepoContext } from "../context.js";
2
+ export declare const ISSUE_HELP = "usage: gh-axi issue <subcommand> [flags]\nsubcommands[13]:\n list, view <number>, create, edit <number>, close <number>, reopen <number>, comment <number>, delete <number>, lock <number>, unlock <number>, pin <number>, unpin <number>, transfer <number>\nflags{list}:\n --state <open|closed|all>, --label <name>, --assignee <login>, --author <login>, --milestone <name>, --sort <created|updated|comments>, --limit <n> (default 30), --fields <a,b,c>\nflags{view}:\n --comments, --full (show complete body without truncation)\nflags{create}:\n --title <text> (required), --body <text>, --assignee <login>, --label <name>, --milestone <name>\nflags{edit}:\n --title, --body, --add-label, --remove-label, --add-assignee, --remove-assignee, --milestone\nflags{close}:\n --reason <completed|not_planned>, --comment <text>\nflags{comment}:\n --body <text> (required)\nflags{transfer}:\n --to-repo <owner/name> (required)\nexamples:\n gh-axi issue list --state closed --label bug\n gh-axi issue view 42 --comments\n gh-axi issue create --title \"Fix login\" --body \"Steps to reproduce...\"\n gh-axi issue close 42 --reason completed\n gh-axi issue transfer 42 -R source/repo --to-repo dest/repo";
3
3
  export declare function issueCommand(args: string[], ctx?: RepoContext): Promise<string>;