@autonomee/gohub 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +57 -0
- package/bin/clawdhub.js +2 -0
- package/bin/gohub.js +2 -0
- package/dist/browserAuth.d.ts +20 -0
- package/dist/browserAuth.js +156 -0
- package/dist/browserAuth.js.map +1 -0
- package/dist/browserAuth.test.d.ts +1 -0
- package/dist/browserAuth.test.js +83 -0
- package/dist/browserAuth.test.js.map +1 -0
- package/dist/cli/authToken.d.ts +2 -0
- package/dist/cli/authToken.js +13 -0
- package/dist/cli/authToken.js.map +1 -0
- package/dist/cli/autonomeeConfig.d.ts +1 -0
- package/dist/cli/autonomeeConfig.js +2 -0
- package/dist/cli/autonomeeConfig.js.map +1 -0
- package/dist/cli/buildInfo.d.ts +3 -0
- package/dist/cli/buildInfo.js +104 -0
- package/dist/cli/buildInfo.js.map +1 -0
- package/dist/cli/clawdbotConfig.d.ts +6 -0
- package/dist/cli/clawdbotConfig.js +155 -0
- package/dist/cli/clawdbotConfig.js.map +1 -0
- package/dist/cli/clawdbotConfig.test.d.ts +1 -0
- package/dist/cli/clawdbotConfig.test.js +199 -0
- package/dist/cli/clawdbotConfig.test.js.map +1 -0
- package/dist/cli/commands/auth.d.ts +9 -0
- package/dist/cli/commands/auth.js +74 -0
- package/dist/cli/commands/auth.js.map +1 -0
- package/dist/cli/commands/auth.test.d.ts +1 -0
- package/dist/cli/commands/auth.test.js +50 -0
- package/dist/cli/commands/auth.test.js.map +1 -0
- package/dist/cli/commands/delete.d.ts +28 -0
- package/dist/cli/commands/delete.js +94 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/delete.test.d.ts +1 -0
- package/dist/cli/commands/delete.test.js +61 -0
- package/dist/cli/commands/delete.test.js.map +1 -0
- package/dist/cli/commands/inspect.d.ts +12 -0
- package/dist/cli/commands/inspect.js +281 -0
- package/dist/cli/commands/inspect.js.map +1 -0
- package/dist/cli/commands/inspect.test.d.ts +1 -0
- package/dist/cli/commands/inspect.test.js +151 -0
- package/dist/cli/commands/inspect.test.js.map +1 -0
- package/dist/cli/commands/moderation.d.ts +19 -0
- package/dist/cli/commands/moderation.js +161 -0
- package/dist/cli/commands/moderation.js.map +1 -0
- package/dist/cli/commands/moderation.test.d.ts +1 -0
- package/dist/cli/commands/moderation.test.js +147 -0
- package/dist/cli/commands/moderation.test.js.map +1 -0
- package/dist/cli/commands/ownership.d.ts +15 -0
- package/dist/cli/commands/ownership.js +76 -0
- package/dist/cli/commands/ownership.js.map +1 -0
- package/dist/cli/commands/ownership.test.d.ts +1 -0
- package/dist/cli/commands/ownership.test.js +68 -0
- package/dist/cli/commands/ownership.test.js.map +1 -0
- package/dist/cli/commands/publish.d.ts +9 -0
- package/dist/cli/commands/publish.js +85 -0
- package/dist/cli/commands/publish.js.map +1 -0
- package/dist/cli/commands/publish.test.d.ts +1 -0
- package/dist/cli/commands/publish.test.js +105 -0
- package/dist/cli/commands/publish.test.js.map +1 -0
- package/dist/cli/commands/skills.d.ts +26 -0
- package/dist/cli/commands/skills.js +394 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/skills.test.d.ts +1 -0
- package/dist/cli/commands/skills.test.js +402 -0
- package/dist/cli/commands/skills.test.js.map +1 -0
- package/dist/cli/commands/star.d.ts +8 -0
- package/dist/cli/commands/star.js +31 -0
- package/dist/cli/commands/star.js.map +1 -0
- package/dist/cli/commands/sync.d.ts +3 -0
- package/dist/cli/commands/sync.js +157 -0
- package/dist/cli/commands/sync.js.map +1 -0
- package/dist/cli/commands/sync.test.d.ts +1 -0
- package/dist/cli/commands/sync.test.js +277 -0
- package/dist/cli/commands/sync.test.js.map +1 -0
- package/dist/cli/commands/syncHelpers.d.ts +76 -0
- package/dist/cli/commands/syncHelpers.js +350 -0
- package/dist/cli/commands/syncHelpers.js.map +1 -0
- package/dist/cli/commands/syncHelpers.test.d.ts +1 -0
- package/dist/cli/commands/syncHelpers.test.js +22 -0
- package/dist/cli/commands/syncHelpers.test.js.map +1 -0
- package/dist/cli/commands/syncTypes.d.ts +24 -0
- package/dist/cli/commands/syncTypes.js +2 -0
- package/dist/cli/commands/syncTypes.js.map +1 -0
- package/dist/cli/commands/transfer.d.ts +50 -0
- package/dist/cli/commands/transfer.js +131 -0
- package/dist/cli/commands/transfer.js.map +1 -0
- package/dist/cli/commands/transfer.test.d.ts +1 -0
- package/dist/cli/commands/transfer.test.js +90 -0
- package/dist/cli/commands/transfer.test.js.map +1 -0
- package/dist/cli/commands/unstar.d.ts +8 -0
- package/dist/cli/commands/unstar.js +31 -0
- package/dist/cli/commands/unstar.js.map +1 -0
- package/dist/cli/helpStyle.d.ts +13 -0
- package/dist/cli/helpStyle.js +38 -0
- package/dist/cli/helpStyle.js.map +1 -0
- package/dist/cli/registry.d.ts +7 -0
- package/dist/cli/registry.js +42 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/cli/registry.test.d.ts +1 -0
- package/dist/cli/registry.test.js +48 -0
- package/dist/cli/registry.test.js.map +1 -0
- package/dist/cli/scanSkills.d.ts +7 -0
- package/dist/cli/scanSkills.js +91 -0
- package/dist/cli/scanSkills.js.map +1 -0
- package/dist/cli/scanSkills.test.d.ts +1 -0
- package/dist/cli/scanSkills.test.js +62 -0
- package/dist/cli/scanSkills.test.js.map +1 -0
- package/dist/cli/slug.d.ts +2 -0
- package/dist/cli/slug.js +16 -0
- package/dist/cli/slug.js.map +1 -0
- package/dist/cli/types.d.ts +15 -0
- package/dist/cli/types.js +2 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli/ui.d.ts +7 -0
- package/dist/cli/ui.js +82 -0
- package/dist/cli/ui.js.map +1 -0
- package/dist/cli/ui.test.d.ts +1 -0
- package/dist/cli/ui.test.js +45 -0
- package/dist/cli/ui.test.js.map +1 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +419 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.js +77 -0
- package/dist/config.js.map +1 -0
- package/dist/config.test.d.ts +1 -0
- package/dist/config.test.js +56 -0
- package/dist/config.test.js.map +1 -0
- package/dist/discovery.d.ts +5 -0
- package/dist/discovery.js +25 -0
- package/dist/discovery.js.map +1 -0
- package/dist/discovery.test.d.ts +1 -0
- package/dist/discovery.test.js +46 -0
- package/dist/discovery.test.js.map +1 -0
- package/dist/homedir.d.ts +7 -0
- package/dist/homedir.js +29 -0
- package/dist/homedir.js.map +1 -0
- package/dist/http.bun.test.d.ts +1 -0
- package/dist/http.bun.test.js +231 -0
- package/dist/http.bun.test.js.map +1 -0
- package/dist/http.d.ts +43 -0
- package/dist/http.js +498 -0
- package/dist/http.js.map +1 -0
- package/dist/http.test.d.ts +1 -0
- package/dist/http.test.js +322 -0
- package/dist/http.test.js.map +1 -0
- package/dist/schema/ark.d.ts +4 -0
- package/dist/schema/ark.js +26 -0
- package/dist/schema/ark.js.map +1 -0
- package/dist/schema/index.d.ts +6 -0
- package/dist/schema/index.js +6 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/schema/license.d.ts +4 -0
- package/dist/schema/license.js +5 -0
- package/dist/schema/license.js.map +1 -0
- package/dist/schema/routes.d.ts +22 -0
- package/dist/schema/routes.js +23 -0
- package/dist/schema/routes.js.map +1 -0
- package/dist/schema/schemas.d.ts +353 -0
- package/dist/schema/schemas.js +318 -0
- package/dist/schema/schemas.js.map +1 -0
- package/dist/schema/textFiles.d.ts +5 -0
- package/dist/schema/textFiles.js +66 -0
- package/dist/schema/textFiles.js.map +1 -0
- package/dist/schema/textFiles.test.d.ts +1 -0
- package/dist/schema/textFiles.test.js +20 -0
- package/dist/schema/textFiles.test.js.map +1 -0
- package/dist/skills.d.ts +43 -0
- package/dist/skills.js +178 -0
- package/dist/skills.js.map +1 -0
- package/dist/skills.test.d.ts +1 -0
- package/dist/skills.test.js +147 -0
- package/dist/skills.test.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +41 -0
package/dist/cli/ui.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { spawn } from 'node:child_process';
|
|
2
|
+
import { stdin } from 'node:process';
|
|
3
|
+
import { confirm, isCancel } from '@clack/prompts';
|
|
4
|
+
import ora from 'ora';
|
|
5
|
+
export async function promptHidden(prompt) {
|
|
6
|
+
if (!stdin.isTTY)
|
|
7
|
+
return '';
|
|
8
|
+
process.stdout.write(prompt);
|
|
9
|
+
const chunks = [];
|
|
10
|
+
stdin.setRawMode(true);
|
|
11
|
+
stdin.resume();
|
|
12
|
+
return new Promise((resolvePromise) => {
|
|
13
|
+
function onData(data) {
|
|
14
|
+
const text = data.toString('utf8');
|
|
15
|
+
if (text === '\r' || text === '\n') {
|
|
16
|
+
stdin.setRawMode(false);
|
|
17
|
+
stdin.pause();
|
|
18
|
+
stdin.off('data', onData);
|
|
19
|
+
process.stdout.write('\n');
|
|
20
|
+
resolvePromise(Buffer.concat(chunks).toString('utf8').trim());
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (text === '\u0003') {
|
|
24
|
+
stdin.setRawMode(false);
|
|
25
|
+
stdin.pause();
|
|
26
|
+
stdin.off('data', onData);
|
|
27
|
+
process.stdout.write('\n');
|
|
28
|
+
fail('Canceled');
|
|
29
|
+
}
|
|
30
|
+
if (text === '\u007f') {
|
|
31
|
+
chunks.pop();
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
chunks.push(data);
|
|
35
|
+
}
|
|
36
|
+
stdin.on('data', onData);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
export async function promptConfirm(prompt) {
|
|
40
|
+
const answer = await confirm({ message: prompt });
|
|
41
|
+
if (isCancel(answer))
|
|
42
|
+
return false;
|
|
43
|
+
return Boolean(answer);
|
|
44
|
+
}
|
|
45
|
+
export function openInBrowser(url) {
|
|
46
|
+
const args = process.platform === 'darwin'
|
|
47
|
+
? ['open', url]
|
|
48
|
+
: process.platform === 'win32'
|
|
49
|
+
? ['cmd', '/c', 'start', '', url]
|
|
50
|
+
: ['xdg-open', url];
|
|
51
|
+
const [command, ...commandArgs] = args;
|
|
52
|
+
if (!command)
|
|
53
|
+
return;
|
|
54
|
+
const child = spawn(command, commandArgs, { stdio: 'ignore', detached: true });
|
|
55
|
+
child.on('error', (err) => {
|
|
56
|
+
if (err.code === 'ENOENT') {
|
|
57
|
+
console.log('');
|
|
58
|
+
console.log('Could not open browser automatically.');
|
|
59
|
+
console.log('Please open this URL manually:');
|
|
60
|
+
console.log('');
|
|
61
|
+
console.log(` ${url}`);
|
|
62
|
+
console.log('');
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
child.unref();
|
|
66
|
+
}
|
|
67
|
+
export function isInteractive() {
|
|
68
|
+
return Boolean(process.stdout.isTTY && stdin.isTTY);
|
|
69
|
+
}
|
|
70
|
+
export function createSpinner(text) {
|
|
71
|
+
return ora({ text, spinner: 'dots', isEnabled: isInteractive() }).start();
|
|
72
|
+
}
|
|
73
|
+
export function formatError(error) {
|
|
74
|
+
if (error instanceof Error)
|
|
75
|
+
return error.message;
|
|
76
|
+
return String(error);
|
|
77
|
+
}
|
|
78
|
+
export function fail(message) {
|
|
79
|
+
console.error(`Error: ${message}`);
|
|
80
|
+
process.exit(1);
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=ui.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/cli/ui.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/* @vitest-environment node */
|
|
2
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
3
|
+
const mockSpawn = vi.fn();
|
|
4
|
+
vi.mock('node:child_process', () => ({
|
|
5
|
+
spawn: (...args) => mockSpawn(...args),
|
|
6
|
+
}));
|
|
7
|
+
const { openInBrowser } = await import('./ui');
|
|
8
|
+
function createMockChild() {
|
|
9
|
+
let onError = null;
|
|
10
|
+
const child = {
|
|
11
|
+
on: vi.fn((event, handler) => {
|
|
12
|
+
if (event === 'error')
|
|
13
|
+
onError = handler;
|
|
14
|
+
return child;
|
|
15
|
+
}),
|
|
16
|
+
unref: vi.fn(),
|
|
17
|
+
emitError: (error) => onError?.(error),
|
|
18
|
+
};
|
|
19
|
+
return child;
|
|
20
|
+
}
|
|
21
|
+
describe('openInBrowser', () => {
|
|
22
|
+
it('prints manual URL instructions when browser opener is missing', () => {
|
|
23
|
+
const child = createMockChild();
|
|
24
|
+
mockSpawn.mockReturnValueOnce(child);
|
|
25
|
+
const logSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
|
|
26
|
+
openInBrowser('https://gohub.ai');
|
|
27
|
+
child.emitError(Object.assign(new Error('not found'), { code: 'ENOENT' }));
|
|
28
|
+
expect(logSpy).toHaveBeenCalledWith('Could not open browser automatically.');
|
|
29
|
+
expect(logSpy).toHaveBeenCalledWith('Please open this URL manually:');
|
|
30
|
+
expect(logSpy).toHaveBeenCalledWith(' https://gohub.ai');
|
|
31
|
+
expect(child.unref).toHaveBeenCalledOnce();
|
|
32
|
+
logSpy.mockRestore();
|
|
33
|
+
});
|
|
34
|
+
it('does not print manual instructions for non-ENOENT errors', () => {
|
|
35
|
+
const child = createMockChild();
|
|
36
|
+
mockSpawn.mockReturnValueOnce(child);
|
|
37
|
+
const logSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
|
|
38
|
+
openInBrowser('https://gohub.ai');
|
|
39
|
+
child.emitError(Object.assign(new Error('permission denied'), { code: 'EACCES' }));
|
|
40
|
+
expect(logSpy).not.toHaveBeenCalledWith('Could not open browser automatically.');
|
|
41
|
+
expect(child.unref).toHaveBeenCalledOnce();
|
|
42
|
+
logSpy.mockRestore();
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=ui.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui.test.js","sourceRoot":"","sources":["../../src/cli/ui.test.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAA;AAEzB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC;IACnC,KAAK,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;CAClD,CAAC,CAAC,CAAA;AAEH,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAA;AAI9C,SAAS,eAAe;IACtB,IAAI,OAAO,GAAwB,IAAI,CAAA;IACvC,MAAM,KAAK,GAAG;QACZ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAa,EAAE,OAAqB,EAAE,EAAE;YACjD,IAAI,KAAK,KAAK,OAAO;gBAAE,OAAO,GAAG,OAAO,CAAA;YACxC,OAAO,KAAK,CAAA;QACd,CAAC,CAAC;QACF,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,SAAS,EAAE,CAAC,KAA4B,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC;KAC9D,CAAA;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;QAC/B,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAEpE,aAAa,CAAC,kBAAkB,CAAC,CAAA;QACjC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAE1E,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,uCAAuC,CAAC,CAAA;QAC5E,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,gCAAgC,CAAC,CAAA;QACrE,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAA;QACzD,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,oBAAoB,EAAE,CAAA;QAC1C,MAAM,CAAC,WAAW,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;QAC/B,SAAS,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAEpE,aAAa,CAAC,kBAAkB,CAAC,CAAA;QACjC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QAElF,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,uCAAuC,CAAC,CAAA;QAChF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,oBAAoB,EAAE,CAAA;QAC1C,MAAM,CAAC,WAAW,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/dist/cli.d.ts
ADDED
package/dist/cli.js
ADDED
|
@@ -0,0 +1,419 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { stat } from 'node:fs/promises';
|
|
3
|
+
import { join, resolve } from 'node:path';
|
|
4
|
+
import { Command } from 'commander';
|
|
5
|
+
import { getCliBuildLabel, getCliVersion } from './cli/buildInfo.js';
|
|
6
|
+
import { resolveAutonomeeDefaultWorkspace } from './cli/autonomeeConfig.js';
|
|
7
|
+
import { cmdLoginFlow, cmdLogout, cmdWhoami } from './cli/commands/auth.js';
|
|
8
|
+
import { cmdDeleteSkill, cmdHideSkill, cmdUndeleteSkill, cmdUnhideSkill, } from './cli/commands/delete.js';
|
|
9
|
+
import { cmdInspect } from './cli/commands/inspect.js';
|
|
10
|
+
import { cmdBanUser, cmdSetRole } from './cli/commands/moderation.js';
|
|
11
|
+
import { cmdMergeSkill, cmdRenameSkill } from './cli/commands/ownership.js';
|
|
12
|
+
import { cmdPublish } from './cli/commands/publish.js';
|
|
13
|
+
import { cmdExplore, cmdInstall, cmdList, cmdSearch, cmdUninstall, cmdUpdate, } from './cli/commands/skills.js';
|
|
14
|
+
import { cmdStarSkill } from './cli/commands/star.js';
|
|
15
|
+
import { cmdSync } from './cli/commands/sync.js';
|
|
16
|
+
import { cmdTransferAccept, cmdTransferCancel, cmdTransferList, cmdTransferReject, cmdTransferRequest, } from './cli/commands/transfer.js';
|
|
17
|
+
import { cmdUnstarSkill } from './cli/commands/unstar.js';
|
|
18
|
+
import { configureCommanderHelp, styleEnvBlock, styleTitle } from './cli/helpStyle.js';
|
|
19
|
+
import { DEFAULT_REGISTRY, DEFAULT_SITE } from './cli/registry.js';
|
|
20
|
+
import { fail } from './cli/ui.js';
|
|
21
|
+
import { readGlobalConfig } from './config.js';
|
|
22
|
+
const program = new Command()
|
|
23
|
+
.name('gohub')
|
|
24
|
+
.description(`${styleTitle(`Go Hub CLI ${getCliBuildLabel()}`)}\n${styleEnvBlock('install, update, search, and publish agent skills.')}`)
|
|
25
|
+
.version(getCliVersion(), '-V, --cli-version', 'Show CLI version')
|
|
26
|
+
.option('--workdir <dir>', 'Working directory (default: cwd)')
|
|
27
|
+
.option('--dir <dir>', 'Skills directory (relative to workdir, default: skills)')
|
|
28
|
+
.option('--site <url>', 'Site base URL (for browser login)')
|
|
29
|
+
.option('--registry <url>', 'Registry API base URL')
|
|
30
|
+
.option('--no-input', 'Disable prompts')
|
|
31
|
+
.showHelpAfterError()
|
|
32
|
+
.showSuggestionAfterError()
|
|
33
|
+
.addHelpText('after', styleEnvBlock('\nEnv:\n GOHUB_SITE\n GOHUB_REGISTRY\n GOHUB_WORKDIR\n (CLAWDHUB_* supported)\n'));
|
|
34
|
+
configureCommanderHelp(program);
|
|
35
|
+
async function resolveGlobalOpts() {
|
|
36
|
+
const raw = program.opts();
|
|
37
|
+
const workdir = await resolveWorkdir(raw.workdir);
|
|
38
|
+
const dir = resolve(workdir, raw.dir ?? 'skills');
|
|
39
|
+
const site = raw.site ?? process.env.GOHUB_SITE ?? process.env.CLAWDHUB_SITE ?? DEFAULT_SITE;
|
|
40
|
+
const registrySource = raw.registry
|
|
41
|
+
? 'cli'
|
|
42
|
+
: process.env.GOHUB_REGISTRY || process.env.CLAWDHUB_REGISTRY
|
|
43
|
+
? 'env'
|
|
44
|
+
: 'default';
|
|
45
|
+
const registry = raw.registry ??
|
|
46
|
+
process.env.GOHUB_REGISTRY ??
|
|
47
|
+
process.env.CLAWDHUB_REGISTRY ??
|
|
48
|
+
DEFAULT_REGISTRY;
|
|
49
|
+
return { workdir, dir, site, registry, registrySource };
|
|
50
|
+
}
|
|
51
|
+
function isInputAllowed() {
|
|
52
|
+
const globalFlags = program.opts();
|
|
53
|
+
return globalFlags.input !== false;
|
|
54
|
+
}
|
|
55
|
+
async function resolveWorkdir(explicit) {
|
|
56
|
+
if (explicit?.trim())
|
|
57
|
+
return resolve(explicit.trim());
|
|
58
|
+
const envWorkdir = process.env.GOHUB_WORKDIR?.trim() ?? process.env.CLAWDHUB_WORKDIR?.trim();
|
|
59
|
+
if (envWorkdir)
|
|
60
|
+
return resolve(envWorkdir);
|
|
61
|
+
const cwd = resolve(process.cwd());
|
|
62
|
+
const hasMarker = await hasGohubMarker(cwd);
|
|
63
|
+
if (hasMarker)
|
|
64
|
+
return cwd;
|
|
65
|
+
const autonomeeWorkspace = await resolveAutonomeeDefaultWorkspace();
|
|
66
|
+
return autonomeeWorkspace ? resolve(autonomeeWorkspace) : cwd;
|
|
67
|
+
}
|
|
68
|
+
async function hasGohubMarker(workdir) {
|
|
69
|
+
const lockfile = join(workdir, '.gohub', 'lock.json');
|
|
70
|
+
if (await pathExists(lockfile))
|
|
71
|
+
return true;
|
|
72
|
+
const markerDir = join(workdir, '.gohub');
|
|
73
|
+
if (await pathExists(markerDir))
|
|
74
|
+
return true;
|
|
75
|
+
const legacyLockfile = join(workdir, '.clawhub', 'lock.json');
|
|
76
|
+
if (await pathExists(legacyLockfile))
|
|
77
|
+
return true;
|
|
78
|
+
const legacyMarkerDir = join(workdir, '.clawhub');
|
|
79
|
+
return pathExists(legacyMarkerDir);
|
|
80
|
+
}
|
|
81
|
+
async function pathExists(path) {
|
|
82
|
+
try {
|
|
83
|
+
await stat(path);
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
program
|
|
91
|
+
.command('login')
|
|
92
|
+
.description('Log in (opens browser or stores token)')
|
|
93
|
+
.option('--token <token>', 'API token')
|
|
94
|
+
.option('--label <label>', 'Token label (browser flow only)', 'CLI token')
|
|
95
|
+
.option('--no-browser', 'Do not open browser (requires --token)')
|
|
96
|
+
.action(async (options) => {
|
|
97
|
+
const opts = await resolveGlobalOpts();
|
|
98
|
+
await cmdLoginFlow(opts, options, isInputAllowed());
|
|
99
|
+
});
|
|
100
|
+
program
|
|
101
|
+
.command('logout')
|
|
102
|
+
.description('Remove stored token')
|
|
103
|
+
.action(async () => {
|
|
104
|
+
const opts = await resolveGlobalOpts();
|
|
105
|
+
await cmdLogout(opts);
|
|
106
|
+
});
|
|
107
|
+
program
|
|
108
|
+
.command('whoami')
|
|
109
|
+
.description('Validate token')
|
|
110
|
+
.action(async () => {
|
|
111
|
+
const opts = await resolveGlobalOpts();
|
|
112
|
+
await cmdWhoami(opts);
|
|
113
|
+
});
|
|
114
|
+
const auth = program
|
|
115
|
+
.command('auth')
|
|
116
|
+
.description('Authentication commands')
|
|
117
|
+
.showHelpAfterError()
|
|
118
|
+
.showSuggestionAfterError();
|
|
119
|
+
auth
|
|
120
|
+
.command('login')
|
|
121
|
+
.description('Log in (opens browser or stores token)')
|
|
122
|
+
.option('--token <token>', 'API token')
|
|
123
|
+
.option('--label <label>', 'Token label (browser flow only)', 'CLI token')
|
|
124
|
+
.option('--no-browser', 'Do not open browser (requires --token)')
|
|
125
|
+
.action(async (options) => {
|
|
126
|
+
const opts = await resolveGlobalOpts();
|
|
127
|
+
await cmdLoginFlow(opts, options, isInputAllowed());
|
|
128
|
+
});
|
|
129
|
+
auth
|
|
130
|
+
.command('logout')
|
|
131
|
+
.description('Remove stored token')
|
|
132
|
+
.action(async () => {
|
|
133
|
+
const opts = await resolveGlobalOpts();
|
|
134
|
+
await cmdLogout(opts);
|
|
135
|
+
});
|
|
136
|
+
auth
|
|
137
|
+
.command('whoami')
|
|
138
|
+
.description('Validate token')
|
|
139
|
+
.action(async () => {
|
|
140
|
+
const opts = await resolveGlobalOpts();
|
|
141
|
+
await cmdWhoami(opts);
|
|
142
|
+
});
|
|
143
|
+
program
|
|
144
|
+
.command('search')
|
|
145
|
+
.description('Vector search skills')
|
|
146
|
+
.argument('<query...>', 'Query string')
|
|
147
|
+
.option('--limit <n>', 'Max results', (value) => Number.parseInt(value, 10))
|
|
148
|
+
.action(async (queryParts, options) => {
|
|
149
|
+
const opts = await resolveGlobalOpts();
|
|
150
|
+
const query = queryParts.join(' ').trim();
|
|
151
|
+
await cmdSearch(opts, query, options.limit);
|
|
152
|
+
});
|
|
153
|
+
program
|
|
154
|
+
.command('install')
|
|
155
|
+
.description('Install into <dir>/<slug>')
|
|
156
|
+
.argument('<slug>', 'Skill slug')
|
|
157
|
+
.option('--version <version>', 'Version to install')
|
|
158
|
+
.option('--force', 'Overwrite existing folder')
|
|
159
|
+
.action(async (slug, options) => {
|
|
160
|
+
const opts = await resolveGlobalOpts();
|
|
161
|
+
await cmdInstall(opts, slug, options.version, options.force);
|
|
162
|
+
});
|
|
163
|
+
program
|
|
164
|
+
.command('update')
|
|
165
|
+
.description('Update installed skills')
|
|
166
|
+
.argument('[slug]', 'Skill slug')
|
|
167
|
+
.option('--all', 'Update all installed skills')
|
|
168
|
+
.option('--version <version>', 'Update to specific version (single slug only)')
|
|
169
|
+
.option('--force', 'Overwrite when local files do not match any version')
|
|
170
|
+
.action(async (slug, options) => {
|
|
171
|
+
const opts = await resolveGlobalOpts();
|
|
172
|
+
await cmdUpdate(opts, slug, options, isInputAllowed());
|
|
173
|
+
});
|
|
174
|
+
program
|
|
175
|
+
.command('uninstall')
|
|
176
|
+
.description('Uninstall a skill')
|
|
177
|
+
.argument('<slug>', 'Skill slug')
|
|
178
|
+
.option('--yes', 'Skip confirmation')
|
|
179
|
+
.action(async (slug, options) => {
|
|
180
|
+
const opts = await resolveGlobalOpts();
|
|
181
|
+
await cmdUninstall(opts, slug, options, isInputAllowed());
|
|
182
|
+
});
|
|
183
|
+
program
|
|
184
|
+
.command('list')
|
|
185
|
+
.description('List installed skills (from lockfile)')
|
|
186
|
+
.action(async () => {
|
|
187
|
+
const opts = await resolveGlobalOpts();
|
|
188
|
+
await cmdList(opts);
|
|
189
|
+
});
|
|
190
|
+
program
|
|
191
|
+
.command('info')
|
|
192
|
+
.description('Browse latest updated skills from the registry')
|
|
193
|
+
.option('--limit <n>', 'Number of skills to show (max 200)', (value) => Number.parseInt(value, 10), 25)
|
|
194
|
+
.option('--sort <order>', 'Sort by newest, downloads, rating, installs, installsAllTime, or trending', 'newest')
|
|
195
|
+
.option('--json', 'Output JSON')
|
|
196
|
+
.action(async (options) => {
|
|
197
|
+
const opts = await resolveGlobalOpts();
|
|
198
|
+
const limit = typeof options.limit === 'number' && Number.isFinite(options.limit) ? options.limit : 25;
|
|
199
|
+
await cmdExplore(opts, { limit, sort: options.sort, json: options.json });
|
|
200
|
+
});
|
|
201
|
+
program
|
|
202
|
+
.command('inspect')
|
|
203
|
+
.description('Fetch skill metadata and files without installing')
|
|
204
|
+
.argument('<slug>', 'Skill slug')
|
|
205
|
+
.option('--version <version>', 'Version to inspect')
|
|
206
|
+
.option('--tag <tag>', 'Tag to inspect (default: latest)')
|
|
207
|
+
.option('--versions', 'List version history (first page)')
|
|
208
|
+
.option('--limit <n>', 'Max versions to list (1-200)', (value) => Number.parseInt(value, 10))
|
|
209
|
+
.option('--files', 'List files for the selected version')
|
|
210
|
+
.option('--file <path>', 'Fetch raw file content (text <= 200KB)')
|
|
211
|
+
.option('--json', 'Output JSON')
|
|
212
|
+
.action(async (slug, options) => {
|
|
213
|
+
const opts = await resolveGlobalOpts();
|
|
214
|
+
await cmdInspect(opts, slug, options);
|
|
215
|
+
});
|
|
216
|
+
program
|
|
217
|
+
.command('publish')
|
|
218
|
+
.description('Publish skill from folder')
|
|
219
|
+
.argument('<path>', 'Skill folder path')
|
|
220
|
+
.option('--slug <slug>', 'Skill slug')
|
|
221
|
+
.option('--name <name>', 'Display name')
|
|
222
|
+
.option('--version <version>', 'Version (semver)')
|
|
223
|
+
.option('--fork-of <slug[@version]>', 'Mark as a fork of an existing skill')
|
|
224
|
+
.option('--changelog <text>', 'Changelog text')
|
|
225
|
+
.option('--tags <tags>', 'Comma-separated tags', 'latest')
|
|
226
|
+
.action(async (folder, options) => {
|
|
227
|
+
const opts = await resolveGlobalOpts();
|
|
228
|
+
await cmdPublish(opts, folder, options);
|
|
229
|
+
});
|
|
230
|
+
program
|
|
231
|
+
.command('delete')
|
|
232
|
+
.description('Soft-delete a skill (owner, moderator, or admin)')
|
|
233
|
+
.argument('<slug>', 'Skill slug')
|
|
234
|
+
.option('--yes', 'Skip confirmation')
|
|
235
|
+
.action(async (slug, options) => {
|
|
236
|
+
const opts = await resolveGlobalOpts();
|
|
237
|
+
await cmdDeleteSkill(opts, slug, options, isInputAllowed());
|
|
238
|
+
});
|
|
239
|
+
program
|
|
240
|
+
.command('hide')
|
|
241
|
+
.description('Hide a skill (owner, moderator, or admin)')
|
|
242
|
+
.argument('<slug>', 'Skill slug')
|
|
243
|
+
.option('--yes', 'Skip confirmation')
|
|
244
|
+
.action(async (slug, options) => {
|
|
245
|
+
const opts = await resolveGlobalOpts();
|
|
246
|
+
await cmdHideSkill(opts, slug, options, isInputAllowed());
|
|
247
|
+
});
|
|
248
|
+
program
|
|
249
|
+
.command('undelete')
|
|
250
|
+
.description('Restore a hidden skill (owner, moderator, or admin)')
|
|
251
|
+
.argument('<slug>', 'Skill slug')
|
|
252
|
+
.option('--yes', 'Skip confirmation')
|
|
253
|
+
.action(async (slug, options) => {
|
|
254
|
+
const opts = await resolveGlobalOpts();
|
|
255
|
+
await cmdUndeleteSkill(opts, slug, options, isInputAllowed());
|
|
256
|
+
});
|
|
257
|
+
program
|
|
258
|
+
.command('unhide')
|
|
259
|
+
.description('Unhide a skill (owner, moderator, or admin)')
|
|
260
|
+
.argument('<slug>', 'Skill slug')
|
|
261
|
+
.option('--yes', 'Skip confirmation')
|
|
262
|
+
.action(async (slug, options) => {
|
|
263
|
+
const opts = await resolveGlobalOpts();
|
|
264
|
+
await cmdUnhideSkill(opts, slug, options, isInputAllowed());
|
|
265
|
+
});
|
|
266
|
+
const skill = program.command('skill').description('Manage published skills');
|
|
267
|
+
skill
|
|
268
|
+
.command('rename')
|
|
269
|
+
.description('Rename a published skill and keep the old slug as a redirect')
|
|
270
|
+
.argument('<slug>', 'Current skill slug')
|
|
271
|
+
.argument('<new-slug>', 'New canonical slug')
|
|
272
|
+
.option('--yes', 'Skip confirmation')
|
|
273
|
+
.action(async (slug, newSlug, options) => {
|
|
274
|
+
const opts = await resolveGlobalOpts();
|
|
275
|
+
await cmdRenameSkill(opts, slug, newSlug, options, isInputAllowed());
|
|
276
|
+
});
|
|
277
|
+
skill
|
|
278
|
+
.command('merge')
|
|
279
|
+
.description('Merge one owned skill into another and redirect the old slug')
|
|
280
|
+
.argument('<source-slug>', 'Source skill slug')
|
|
281
|
+
.argument('<target-slug>', 'Target canonical slug')
|
|
282
|
+
.option('--yes', 'Skip confirmation')
|
|
283
|
+
.action(async (sourceSlug, targetSlug, options) => {
|
|
284
|
+
const opts = await resolveGlobalOpts();
|
|
285
|
+
await cmdMergeSkill(opts, sourceSlug, targetSlug, options, isInputAllowed());
|
|
286
|
+
});
|
|
287
|
+
program
|
|
288
|
+
.command('ban-user')
|
|
289
|
+
.description('Ban a user and delete owned skills (moderator/admin only)')
|
|
290
|
+
.argument('<handleOrId>', 'User handle (default) or user id')
|
|
291
|
+
.option('--id', 'Treat argument as user id')
|
|
292
|
+
.option('--fuzzy', 'Resolve handle via fuzzy user search (admin only)')
|
|
293
|
+
.option('--reason <reason>', 'Ban reason (optional)')
|
|
294
|
+
.option('--yes', 'Skip confirmation')
|
|
295
|
+
.action(async (handleOrId, options) => {
|
|
296
|
+
const opts = await resolveGlobalOpts();
|
|
297
|
+
await cmdBanUser(opts, handleOrId, options, isInputAllowed());
|
|
298
|
+
});
|
|
299
|
+
program
|
|
300
|
+
.command('set-role')
|
|
301
|
+
.description('Change a user role (admin only)')
|
|
302
|
+
.argument('<handleOrId>', 'User handle (default) or user id')
|
|
303
|
+
.argument('<role>', 'user | moderator | admin')
|
|
304
|
+
.option('--id', 'Treat argument as user id')
|
|
305
|
+
.option('--fuzzy', 'Resolve handle via fuzzy user search (admin only)')
|
|
306
|
+
.option('--yes', 'Skip confirmation')
|
|
307
|
+
.action(async (handleOrId, role, options) => {
|
|
308
|
+
const opts = await resolveGlobalOpts();
|
|
309
|
+
await cmdSetRole(opts, handleOrId, role, options, isInputAllowed());
|
|
310
|
+
});
|
|
311
|
+
const transfer = program.command('transfer').description('Transfer skill ownership');
|
|
312
|
+
transfer
|
|
313
|
+
.command('request')
|
|
314
|
+
.description('Request skill transfer to another user')
|
|
315
|
+
.argument('<slug>', 'Skill slug')
|
|
316
|
+
.argument('<handle>', 'Recipient handle (e.g., @username)')
|
|
317
|
+
.option('--message <text>', 'Optional message for recipient')
|
|
318
|
+
.option('--yes', 'Skip confirmation')
|
|
319
|
+
.action(async (slug, handle, options) => {
|
|
320
|
+
const opts = await resolveGlobalOpts();
|
|
321
|
+
await cmdTransferRequest(opts, slug, handle, options, isInputAllowed());
|
|
322
|
+
});
|
|
323
|
+
transfer
|
|
324
|
+
.command('list')
|
|
325
|
+
.description('List pending transfer requests')
|
|
326
|
+
.option('--outgoing', 'Show outgoing transfer requests')
|
|
327
|
+
.action(async (options) => {
|
|
328
|
+
const opts = await resolveGlobalOpts();
|
|
329
|
+
await cmdTransferList(opts, options);
|
|
330
|
+
});
|
|
331
|
+
transfer
|
|
332
|
+
.command('accept')
|
|
333
|
+
.description('Accept incoming transfer for a skill')
|
|
334
|
+
.argument('<slug>', 'Skill slug')
|
|
335
|
+
.option('--yes', 'Skip confirmation')
|
|
336
|
+
.action(async (slug, options) => {
|
|
337
|
+
const opts = await resolveGlobalOpts();
|
|
338
|
+
await cmdTransferAccept(opts, slug, options, isInputAllowed());
|
|
339
|
+
});
|
|
340
|
+
transfer
|
|
341
|
+
.command('reject')
|
|
342
|
+
.description('Reject incoming transfer for a skill')
|
|
343
|
+
.argument('<slug>', 'Skill slug')
|
|
344
|
+
.option('--yes', 'Skip confirmation')
|
|
345
|
+
.action(async (slug, options) => {
|
|
346
|
+
const opts = await resolveGlobalOpts();
|
|
347
|
+
await cmdTransferReject(opts, slug, options, isInputAllowed());
|
|
348
|
+
});
|
|
349
|
+
transfer
|
|
350
|
+
.command('cancel')
|
|
351
|
+
.description('Cancel outgoing transfer for a skill')
|
|
352
|
+
.argument('<slug>', 'Skill slug')
|
|
353
|
+
.option('--yes', 'Skip confirmation')
|
|
354
|
+
.action(async (slug, options) => {
|
|
355
|
+
const opts = await resolveGlobalOpts();
|
|
356
|
+
await cmdTransferCancel(opts, slug, options, isInputAllowed());
|
|
357
|
+
});
|
|
358
|
+
program
|
|
359
|
+
.command('star')
|
|
360
|
+
.description('Add a skill to your highlights')
|
|
361
|
+
.argument('<slug>', 'Skill slug')
|
|
362
|
+
.option('--yes', 'Skip confirmation')
|
|
363
|
+
.action(async (slug, options) => {
|
|
364
|
+
const opts = await resolveGlobalOpts();
|
|
365
|
+
await cmdStarSkill(opts, slug, options, isInputAllowed());
|
|
366
|
+
});
|
|
367
|
+
program
|
|
368
|
+
.command('unstar')
|
|
369
|
+
.description('Remove a skill from your highlights')
|
|
370
|
+
.argument('<slug>', 'Skill slug')
|
|
371
|
+
.option('--yes', 'Skip confirmation')
|
|
372
|
+
.action(async (slug, options) => {
|
|
373
|
+
const opts = await resolveGlobalOpts();
|
|
374
|
+
await cmdUnstarSkill(opts, slug, options, isInputAllowed());
|
|
375
|
+
});
|
|
376
|
+
program
|
|
377
|
+
.command('sync')
|
|
378
|
+
.description('Scan local skills and publish new/updated ones')
|
|
379
|
+
.option('--root <dir...>', 'Extra scan roots (one or more)')
|
|
380
|
+
.option('--all', 'Upload all new/updated skills without prompting')
|
|
381
|
+
.option('--dry-run', 'Show what would be uploaded')
|
|
382
|
+
.option('--bump <type>', 'Version bump for updates (patch|minor|major)', 'patch')
|
|
383
|
+
.option('--changelog <text>', 'Changelog to use for updates (non-interactive)')
|
|
384
|
+
.option('--tags <tags>', 'Comma-separated tags', 'latest')
|
|
385
|
+
.option('--concurrency <n>', 'Concurrent registry checks (default: 4)', '4')
|
|
386
|
+
.action(async (options) => {
|
|
387
|
+
const opts = await resolveGlobalOpts();
|
|
388
|
+
const bump = String(options.bump ?? 'patch');
|
|
389
|
+
if (!['patch', 'minor', 'major'].includes(bump))
|
|
390
|
+
fail('--bump must be patch|minor|major');
|
|
391
|
+
const concurrencyRaw = Number(options.concurrency ?? 4);
|
|
392
|
+
const concurrency = Number.isFinite(concurrencyRaw) ? Math.round(concurrencyRaw) : 4;
|
|
393
|
+
if (concurrency < 1 || concurrency > 32)
|
|
394
|
+
fail('--concurrency must be between 1 and 32');
|
|
395
|
+
await cmdSync(opts, {
|
|
396
|
+
root: options.root,
|
|
397
|
+
all: options.all,
|
|
398
|
+
dryRun: options.dryRun,
|
|
399
|
+
bump,
|
|
400
|
+
changelog: options.changelog,
|
|
401
|
+
tags: options.tags,
|
|
402
|
+
concurrency,
|
|
403
|
+
}, isInputAllowed());
|
|
404
|
+
});
|
|
405
|
+
program.action(async () => {
|
|
406
|
+
const opts = await resolveGlobalOpts();
|
|
407
|
+
const cfg = await readGlobalConfig();
|
|
408
|
+
if (cfg?.token) {
|
|
409
|
+
await cmdSync(opts, {}, isInputAllowed());
|
|
410
|
+
return;
|
|
411
|
+
}
|
|
412
|
+
program.outputHelp();
|
|
413
|
+
process.exitCode = 0;
|
|
414
|
+
});
|
|
415
|
+
void program.parseAsync(process.argv).catch((error) => {
|
|
416
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
417
|
+
fail(message);
|
|
418
|
+
});
|
|
419
|
+
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
ADDED