@agentteams/cli 0.1.82 → 0.1.84
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/.eslintcache +1 -1
- package/README.md +4 -3
- package/dist/auth/activeCredential.d.ts +22 -0
- package/dist/auth/activeCredential.d.ts.map +1 -0
- package/dist/auth/activeCredential.js +25 -0
- package/dist/auth/activeCredential.js.map +1 -0
- package/dist/auth/credentialStore.d.ts +89 -0
- package/dist/auth/credentialStore.d.ts.map +1 -0
- package/dist/auth/credentialStore.js +254 -0
- package/dist/auth/credentialStore.js.map +1 -0
- package/dist/auth/personalTokenClient.d.ts +155 -0
- package/dist/auth/personalTokenClient.d.ts.map +1 -0
- package/dist/auth/personalTokenClient.js +312 -0
- package/dist/auth/personalTokenClient.js.map +1 -0
- package/dist/auth/personalTokenStore.d.ts +16 -0
- package/dist/auth/personalTokenStore.d.ts.map +1 -0
- package/dist/auth/personalTokenStore.js +27 -0
- package/dist/auth/personalTokenStore.js.map +1 -0
- package/dist/commands/agentConfig.d.ts.map +1 -1
- package/dist/commands/agentConfig.js +8 -6
- package/dist/commands/agentConfig.js.map +1 -1
- package/dist/commands/auth.d.ts +97 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +245 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +16 -2
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/convention.d.ts +11 -0
- package/dist/commands/convention.d.ts.map +1 -1
- package/dist/commands/convention.js +35 -11
- package/dist/commands/convention.js.map +1 -1
- package/dist/commands/dependency.d.ts.map +1 -1
- package/dist/commands/dependency.js +8 -6
- package/dist/commands/dependency.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +75 -2
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +19 -14
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.d.ts +18 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +114 -20
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +101 -15
- package/dist/index.js.map +1 -1
- package/dist/mcp/context.d.ts +15 -1
- package/dist/mcp/context.d.ts.map +1 -1
- package/dist/mcp/context.js +24 -5
- package/dist/mcp/context.js.map +1 -1
- package/dist/mcp/server.d.ts +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +5 -2
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +25 -22
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp-registration/atomicWrite.d.ts +9 -3
- package/dist/mcp-registration/atomicWrite.d.ts.map +1 -1
- package/dist/mcp-registration/atomicWrite.js +58 -15
- package/dist/mcp-registration/atomicWrite.js.map +1 -1
- package/dist/mcp-registration/clients.d.ts.map +1 -1
- package/dist/mcp-registration/clients.js +1 -9
- package/dist/mcp-registration/clients.js.map +1 -1
- package/dist/mcp-registration/doctor.d.ts +38 -0
- package/dist/mcp-registration/doctor.d.ts.map +1 -0
- package/dist/mcp-registration/doctor.js +379 -0
- package/dist/mcp-registration/doctor.js.map +1 -0
- package/dist/mcp-registration/index.d.ts +7 -5
- package/dist/mcp-registration/index.d.ts.map +1 -1
- package/dist/mcp-registration/index.js +46 -21
- package/dist/mcp-registration/index.js.map +1 -1
- package/dist/mcp-registration/install.d.ts.map +1 -1
- package/dist/mcp-registration/install.js +12 -15
- package/dist/mcp-registration/install.js.map +1 -1
- package/dist/mcp-registration/render.d.ts +8 -6
- package/dist/mcp-registration/render.d.ts.map +1 -1
- package/dist/mcp-registration/render.js +15 -36
- package/dist/mcp-registration/render.js.map +1 -1
- package/dist/mcp-registration/serverSpec.d.ts +31 -18
- package/dist/mcp-registration/serverSpec.d.ts.map +1 -1
- package/dist/mcp-registration/serverSpec.js +36 -20
- package/dist/mcp-registration/serverSpec.js.map +1 -1
- package/dist/mcp-registration/types.d.ts +0 -3
- package/dist/mcp-registration/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/apiKeyInput.d.ts +16 -0
- package/dist/utils/apiKeyInput.d.ts.map +1 -0
- package/dist/utils/apiKeyInput.js +47 -0
- package/dist/utils/apiKeyInput.js.map +1 -0
- package/dist/utils/authServer.d.ts +39 -4
- package/dist/utils/authServer.d.ts.map +1 -1
- package/dist/utils/authServer.js +146 -62
- package/dist/utils/authServer.js.map +1 -1
- package/dist/utils/config.d.ts +121 -10
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +204 -5
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +16 -0
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/httpClient.d.ts.map +1 -1
- package/dist/utils/httpClient.js +25 -0
- package/dist/utils/httpClient.js.map +1 -1
- package/dist/utils/initOutput.d.ts.map +1 -1
- package/dist/utils/initOutput.js +30 -0
- package/dist/utils/initOutput.js.map +1 -1
- package/package.json +1 -1
- package/web-compatibility.json +4 -0
package/dist/commands/init.js
CHANGED
|
@@ -4,8 +4,9 @@ import { constants, createCipheriv, publicEncrypt, randomBytes } from 'node:cryp
|
|
|
4
4
|
import { multiselect, isCancel, cancel } from '@clack/prompts';
|
|
5
5
|
import httpClient from '../utils/httpClient.js';
|
|
6
6
|
import open from 'open';
|
|
7
|
-
import { startLocalAuthServer } from '../utils/authServer.js';
|
|
8
|
-
import { DEFAULT_API_URL, saveConfig } from '../utils/config.js';
|
|
7
|
+
import { createAuthState, startLocalAuthServer } from '../utils/authServer.js';
|
|
8
|
+
import { DEFAULT_API_URL, saveConfig, saveLegacyApiKeyConfig, } from '../utils/config.js';
|
|
9
|
+
import { performPersonalTokenLogin } from './auth.js';
|
|
9
10
|
import { createSpinner, withSpinner } from '../utils/spinner.js';
|
|
10
11
|
import { withCommandContext } from '../utils/commandContext.js';
|
|
11
12
|
import { conventionDownload } from './convention.js';
|
|
@@ -70,7 +71,7 @@ export function detectOsType() {
|
|
|
70
71
|
}
|
|
71
72
|
return undefined;
|
|
72
73
|
}
|
|
73
|
-
export function buildAuthorizeUrl(port, projectName, authPathEnc, osType) {
|
|
74
|
+
export function buildAuthorizeUrl(port, projectName, authPathEnc, osType, state) {
|
|
74
75
|
const params = new URLSearchParams({
|
|
75
76
|
port: String(port),
|
|
76
77
|
projectName,
|
|
@@ -81,6 +82,11 @@ export function buildAuthorizeUrl(port, projectName, authPathEnc, osType) {
|
|
|
81
82
|
if (osType && osType.length > 0) {
|
|
82
83
|
params.set('ot', osType);
|
|
83
84
|
}
|
|
85
|
+
// The web page echoes this back through the callback; without it the local
|
|
86
|
+
// server cannot tell this login apart from one someone else started.
|
|
87
|
+
if (state && state.length > 0) {
|
|
88
|
+
params.set('state', state);
|
|
89
|
+
}
|
|
84
90
|
return `${AUTH_BASE_URL}/cli/authorize?${params.toString()}`;
|
|
85
91
|
}
|
|
86
92
|
function printAuthorizeUrl(url) {
|
|
@@ -114,20 +120,50 @@ async function tryOpenBrowser(url) {
|
|
|
114
120
|
function normalizeApiUrl(apiUrl) {
|
|
115
121
|
return apiUrl.replace(/\/+$/, '');
|
|
116
122
|
}
|
|
117
|
-
|
|
123
|
+
/**
|
|
124
|
+
* Where the CLI talks to is the CLI's own decision. It used to come from the
|
|
125
|
+
* browser callback payload, so anything that reached the local callback port
|
|
126
|
+
* could redirect every later request — including the convention download whose
|
|
127
|
+
* content becomes always-on agent rules.
|
|
128
|
+
*/
|
|
129
|
+
function resolveApiUrl() {
|
|
130
|
+
return normalizeApiUrl(process.env.AGENTTEAMS_API_URL || DEFAULT_API_URL);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* What actually lands in `.agentteams/config.json`.
|
|
134
|
+
*
|
|
135
|
+
* The default document is deliberately secret-free. The callback's agent key is
|
|
136
|
+
* used only in-process to fetch conventions and is revoked before init exits.
|
|
137
|
+
* `apiUrl` is always explicit so the persisted schema is stable across default
|
|
138
|
+
* and custom deployments.
|
|
139
|
+
*
|
|
140
|
+
* `authMode` is not decoration: it is the only on-disk marker that this project
|
|
141
|
+
* *chose* the personal login. `planCredential` keys `optedIn` off it, and that
|
|
142
|
+
* flag is what turns "config exists, credential missing" into "run `agentteams
|
|
143
|
+
* auth login`" instead of the misleading "run `agentteams init` first" — the
|
|
144
|
+
* exact state after `auth logout`, a fresh clone, or a wiped OS keychain.
|
|
145
|
+
*/
|
|
146
|
+
function toConfig(authResult, apiUrl) {
|
|
147
|
+
return {
|
|
148
|
+
teamId: authResult.teamId,
|
|
149
|
+
projectId: authResult.projectId,
|
|
150
|
+
apiUrl,
|
|
151
|
+
authMode: 'personal-token',
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
/** Preserve the original config shape only for the explicit compatibility flag. */
|
|
155
|
+
function toLegacyApiKeyConfig(authResult, apiUrl) {
|
|
118
156
|
const config = {
|
|
119
157
|
teamId: authResult.teamId,
|
|
120
158
|
projectId: authResult.projectId,
|
|
121
159
|
apiKey: authResult.apiKey,
|
|
122
160
|
};
|
|
123
|
-
|
|
124
|
-
if (apiUrl && apiUrl !== DEFAULT_API_URL) {
|
|
161
|
+
if (apiUrl !== DEFAULT_API_URL) {
|
|
125
162
|
config.apiUrl = apiUrl;
|
|
126
163
|
}
|
|
127
164
|
return config;
|
|
128
165
|
}
|
|
129
|
-
async function fetchConventionTemplate(authResult) {
|
|
130
|
-
const apiUrl = normalizeApiUrl(authResult.apiUrl || DEFAULT_API_URL);
|
|
166
|
+
async function fetchConventionTemplate(authResult, apiUrl) {
|
|
131
167
|
const response = await httpClient.get(`${apiUrl}/api/projects/${authResult.projectId}/agent-configs/${authResult.configId}/convention`, {
|
|
132
168
|
headers: {
|
|
133
169
|
...buildAuthHeaders(authResult.apiKey),
|
|
@@ -140,6 +176,27 @@ async function fetchConventionTemplate(authResult) {
|
|
|
140
176
|
}
|
|
141
177
|
return content;
|
|
142
178
|
}
|
|
179
|
+
/**
|
|
180
|
+
* Hand the agent key back at the end of a personal-token init.
|
|
181
|
+
*
|
|
182
|
+
* The browser round trip mints a `key_` no matter which auth mode was asked
|
|
183
|
+
* for — it is the only credential that can read the convention template. On the
|
|
184
|
+
* personal-token path that key is never written to disk, so leaving it live
|
|
185
|
+
* would mean a long-lived secret the user cannot see, use or cancel. The agent
|
|
186
|
+
* config itself stays: it is the project's record of this machine, and only its
|
|
187
|
+
* credential is the liability.
|
|
188
|
+
*/
|
|
189
|
+
async function revokeInitAgentKey(authResult, apiUrl) {
|
|
190
|
+
try {
|
|
191
|
+
await httpClient.delete(`${apiUrl}/api/projects/${authResult.projectId}/agent-configs/${authResult.configId}/api-keys`, { headers: buildAuthHeaders(authResult.apiKey) });
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
// Not fatal: init has everything it needs, and the caller warns instead so
|
|
196
|
+
// the user can revoke it from the web app.
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
143
200
|
async function promptAgentFileSelection() {
|
|
144
201
|
if (!process.stdin.isTTY) {
|
|
145
202
|
return AGENT_ENTRY_POINT_FILES.map((f) => f.value);
|
|
@@ -228,7 +285,7 @@ function generateAgentEntryPointFiles(cwd, selectedFiles) {
|
|
|
228
285
|
function isConfiguredMainCheckout(sourcePath) {
|
|
229
286
|
try {
|
|
230
287
|
const config = JSON.parse(readFileSync(join(sourcePath, CONFIG_FILE), 'utf-8'));
|
|
231
|
-
return ['teamId', 'projectId'
|
|
288
|
+
return ['teamId', 'projectId'].every((field) => typeof config[field] === 'string' && config[field].length > 0);
|
|
232
289
|
}
|
|
233
290
|
catch {
|
|
234
291
|
return false;
|
|
@@ -335,10 +392,11 @@ function findCopyOnlyFiles(backupPath, sourcePath) {
|
|
|
335
392
|
* Park the copy outside every tracked surface while the link is created. A
|
|
336
393
|
* backup next to `.agentteams` would show up in `git status` — the anchored
|
|
337
394
|
* `/.agentteams` exclude is an exact match and does not cover a sibling name —
|
|
338
|
-
* and
|
|
339
|
-
* part of no working tree, so nothing can surface from
|
|
340
|
-
* different volume cannot be renamed into it, and only
|
|
341
|
-
* in-worktree fallback apply — after registering its own exclude
|
|
395
|
+
* and a copied legacy `config.json` may carry the project apiKey.
|
|
396
|
+
* `git-common-dir` is part of no working tree, so nothing can surface from
|
|
397
|
+
* there. A worktree on a different volume cannot be renamed into it, and only
|
|
398
|
+
* then does the in-worktree fallback apply — after registering its own exclude
|
|
399
|
+
* pattern.
|
|
342
400
|
*/
|
|
343
401
|
function moveConventionCopyAside(worktreePath, targetPath) {
|
|
344
402
|
const failures = [];
|
|
@@ -551,6 +609,8 @@ export async function executeInitCommand(options) {
|
|
|
551
609
|
}
|
|
552
610
|
async function executeInitCommandWithContext(options) {
|
|
553
611
|
const cwd = resolve(options?.cwd ?? process.cwd());
|
|
612
|
+
// Only an explicit compatibility request persists the callback's agent key.
|
|
613
|
+
const authMode = options?.authMode === 'api-key' ? 'api-key' : 'personal-token';
|
|
554
614
|
const worktreeResult = bootstrapLinkedWorktree(cwd);
|
|
555
615
|
if (worktreeResult)
|
|
556
616
|
return worktreeResult;
|
|
@@ -559,7 +619,7 @@ async function executeInitCommandWithContext(options) {
|
|
|
559
619
|
const projectName = basename(cwd);
|
|
560
620
|
let authContext;
|
|
561
621
|
try {
|
|
562
|
-
authContext = await startLocalAuthServer();
|
|
622
|
+
authContext = await startLocalAuthServer({ state: createAuthState() });
|
|
563
623
|
}
|
|
564
624
|
catch (error) {
|
|
565
625
|
throw new Error(`Failed to start local OAuth server: ${error instanceof Error ? error.message : String(error)}`);
|
|
@@ -571,7 +631,7 @@ async function executeInitCommandWithContext(options) {
|
|
|
571
631
|
catch {
|
|
572
632
|
authPathEnc = undefined;
|
|
573
633
|
}
|
|
574
|
-
const authUrl = buildAuthorizeUrl(authContext.port, projectName, authPathEnc, detectOsType());
|
|
634
|
+
const authUrl = buildAuthorizeUrl(authContext.port, projectName, authPathEnc, detectOsType(), authContext.state);
|
|
575
635
|
await tryOpenBrowser(authUrl);
|
|
576
636
|
const authSpinner = createSpinner('Waiting for authentication... (Ctrl+C to cancel)');
|
|
577
637
|
const cleanup = () => {
|
|
@@ -612,15 +672,45 @@ async function executeInitCommandWithContext(options) {
|
|
|
612
672
|
.catch(reject);
|
|
613
673
|
});
|
|
614
674
|
authSpinner?.succeed();
|
|
615
|
-
const
|
|
675
|
+
const apiUrl = resolveApiUrl();
|
|
616
676
|
const runtimeConfig = {
|
|
617
|
-
|
|
618
|
-
|
|
677
|
+
teamId: authResult.teamId,
|
|
678
|
+
projectId: authResult.projectId,
|
|
679
|
+
apiKey: authResult.apiKey,
|
|
680
|
+
apiUrl,
|
|
619
681
|
};
|
|
620
|
-
const conventionContent = await withSpinner('Fetching convention template...', () => fetchConventionTemplate(authResult));
|
|
621
|
-
|
|
682
|
+
const conventionContent = await withSpinner('Fetching convention template...', () => fetchConventionTemplate(authResult, apiUrl));
|
|
683
|
+
// The project is known now, so the personal login can run before anything is
|
|
684
|
+
// written: a failed login must not leave a config with no usable credential.
|
|
685
|
+
// A login that cannot be stored throws here, which is the point — init stops
|
|
686
|
+
// before `saveConfig` rather than leaving a half-configured project behind.
|
|
687
|
+
let personalLogin;
|
|
688
|
+
const warnings = [];
|
|
689
|
+
if (authMode === 'personal-token') {
|
|
690
|
+
const outcome = await performPersonalTokenLogin({ apiUrl, projectName });
|
|
691
|
+
personalLogin = {
|
|
692
|
+
email: outcome.identity.email,
|
|
693
|
+
nickname: outcome.identity.nickname,
|
|
694
|
+
persisted: outcome.persisted,
|
|
695
|
+
};
|
|
696
|
+
}
|
|
697
|
+
if (authMode === 'api-key') {
|
|
698
|
+
saveLegacyApiKeyConfig(configPath, toLegacyApiKeyConfig(authResult, apiUrl));
|
|
699
|
+
}
|
|
700
|
+
else {
|
|
701
|
+
saveConfig(configPath, toConfig(authResult, apiUrl));
|
|
702
|
+
}
|
|
622
703
|
writeFileSync(conventionPath, conventionContent, 'utf-8');
|
|
623
704
|
await conventionDownload({ cwd, config: runtimeConfig });
|
|
705
|
+
// Last use of the agent key is the convention download above.
|
|
706
|
+
let agentKeyRevoked;
|
|
707
|
+
if (authMode === 'personal-token') {
|
|
708
|
+
agentKeyRevoked = await revokeInitAgentKey(authResult, apiUrl);
|
|
709
|
+
if (!agentKeyRevoked) {
|
|
710
|
+
warnings.push(`The agent key created for "${authResult.agentName}" could not be revoked and is still valid. ` +
|
|
711
|
+
'Revoke it in the AgentTeams web app (project settings → agents) — it was never written to this repository.');
|
|
712
|
+
}
|
|
713
|
+
}
|
|
624
714
|
ensureGitignore(cwd);
|
|
625
715
|
const selectedFiles = await promptAgentFileSelection();
|
|
626
716
|
if (selectedFiles.includes('GEMINI.md')) {
|
|
@@ -650,6 +740,10 @@ async function executeInitCommandWithContext(options) {
|
|
|
650
740
|
seedPlanId,
|
|
651
741
|
seedPlanWebUrl,
|
|
652
742
|
postCheckoutHook,
|
|
743
|
+
authMode,
|
|
744
|
+
...(personalLogin ? { personalLogin } : {}),
|
|
745
|
+
...(agentKeyRevoked === undefined ? {} : { agentKeyRevoked }),
|
|
746
|
+
...(warnings.length > 0 ? { warning: warnings.join(' ') } : {}),
|
|
653
747
|
};
|
|
654
748
|
}
|
|
655
749
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -12,9 +12,36 @@ import { printDoctorResult, resolveDoctorExitCode } from './utils/doctorOutput.j
|
|
|
12
12
|
import { executeValidatedInteractiveCommand, normalizeInteractiveFormat } from './utils/interactiveCommand.js';
|
|
13
13
|
import { startUpdateCheck, readCache, compareVersions, formatUpdateMessage } from './utils/updateCheck.js';
|
|
14
14
|
import { MCP_CLIENT_IDS } from './mcp-registration/types.js';
|
|
15
|
+
import { resolveApiKeyInput } from './utils/apiKeyInput.js';
|
|
15
16
|
const require = createRequire(import.meta.url);
|
|
16
17
|
const pkg = require('../package.json');
|
|
17
18
|
const program = new Command();
|
|
19
|
+
function createApiKeyOption() {
|
|
20
|
+
return new Option('--api-key <key>', 'Deprecated: pass an API key in argv. Prefer AGENTTEAMS_API_KEY or --api-key-file.');
|
|
21
|
+
}
|
|
22
|
+
function createApiKeyFileOption() {
|
|
23
|
+
return new Option('--api-key-file <path>', 'Read the API key from a file, or use "-" to read stdin.');
|
|
24
|
+
}
|
|
25
|
+
program.hook('preAction', (_thisCommand, actionCommand) => {
|
|
26
|
+
try {
|
|
27
|
+
const commands = [];
|
|
28
|
+
for (let command = actionCommand; command; command = command.parent) {
|
|
29
|
+
commands.push(command);
|
|
30
|
+
}
|
|
31
|
+
const apiKeyCommand = commands.find((command) => command.opts().apiKey !== undefined);
|
|
32
|
+
const apiKeyFileCommand = commands.find((command) => command.opts().apiKeyFile !== undefined);
|
|
33
|
+
if (!apiKeyCommand && !apiKeyFileCommand)
|
|
34
|
+
return;
|
|
35
|
+
const apiKey = apiKeyCommand?.opts().apiKey;
|
|
36
|
+
const apiKeyFile = apiKeyFileCommand?.opts().apiKeyFile;
|
|
37
|
+
const resolved = resolveApiKeyInput({ apiKey, apiKeyFile });
|
|
38
|
+
(apiKeyFileCommand ?? apiKeyCommand ?? actionCommand).setOptionValue('apiKey', resolved);
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
console.error(handleError(error));
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
18
45
|
function normalizeFormat(format) {
|
|
19
46
|
if (format === undefined || format === null || format === '')
|
|
20
47
|
return 'json';
|
|
@@ -66,13 +93,16 @@ program.name('agentteams').description('CLI tool for AgentTeams API').version(pk
|
|
|
66
93
|
program
|
|
67
94
|
.command('init')
|
|
68
95
|
.description('Initialize AgentTeams CLI via OAuth')
|
|
96
|
+
.addOption(new Option('--auth <mode>', 'Credential to configure. `personal-token` (default) stores a rotating login in the OS credential store and refreshes itself; `api-key` writes a legacy agent key into .agentteams/config.json, which expires 30 days after issue and must be reissued by hand.')
|
|
97
|
+
.choices(['api-key', 'personal-token'])
|
|
98
|
+
.default('personal-token'))
|
|
69
99
|
.option('--format <format>', 'Output format (json; defaults to human-readable view)')
|
|
70
100
|
.option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
|
|
71
101
|
.option('--verbose', 'Print full raw output to stdout; with --output-file, also echo it', false)
|
|
72
102
|
.addHelpText('after', CONVENTION_HINT)
|
|
73
103
|
.action(async (options) => {
|
|
74
104
|
try {
|
|
75
|
-
const result = await executeCommand('init', 'start', {});
|
|
105
|
+
const result = await executeCommand('init', 'start', { authMode: options.auth });
|
|
76
106
|
const format = normalizeInteractiveFormat(options.format);
|
|
77
107
|
printInitResult(result, format);
|
|
78
108
|
}
|
|
@@ -81,6 +111,31 @@ program
|
|
|
81
111
|
process.exit(1);
|
|
82
112
|
}
|
|
83
113
|
});
|
|
114
|
+
program
|
|
115
|
+
.command('auth')
|
|
116
|
+
.description('Manage the personal AgentTeams login used by default')
|
|
117
|
+
.argument('<action>', 'Action to perform (login, status, logout)')
|
|
118
|
+
.option('--api-url <url>', 'API server to authenticate against (defaults to the project config or env)')
|
|
119
|
+
.option('--local', 'logout only: clear the local credential without contacting the server (the token stays valid — revoke it in the web app)', false)
|
|
120
|
+
.option('--format <format>', 'Output format (json)', 'json')
|
|
121
|
+
.option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
|
|
122
|
+
.option('--verbose', 'Print full raw output to stdout; with --output-file, also echo it', false)
|
|
123
|
+
.addHelpText('after', CONVENTION_HINT)
|
|
124
|
+
.action(async (action, options) => {
|
|
125
|
+
try {
|
|
126
|
+
const result = await executeCommand('auth', action, { apiUrl: options.apiUrl, local: options.local === true });
|
|
127
|
+
printCommandResult({
|
|
128
|
+
result,
|
|
129
|
+
format: normalizeFormat(options.format),
|
|
130
|
+
outputFile: options.outputFile,
|
|
131
|
+
verbose: options.verbose,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
console.error(handleError(error));
|
|
136
|
+
process.exit(1);
|
|
137
|
+
}
|
|
138
|
+
});
|
|
84
139
|
program
|
|
85
140
|
.command('doctor')
|
|
86
141
|
.description('Diagnose convention reachability and install the worktree bootstrap hook')
|
|
@@ -370,7 +425,8 @@ program
|
|
|
370
425
|
.option('--code-review-id <id>', 'Attach to this code review (create)')
|
|
371
426
|
.option('--completion-report-id <id>', 'Attach to this completion report (create)')
|
|
372
427
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
373
|
-
.
|
|
428
|
+
.addOption(createApiKeyOption())
|
|
429
|
+
.addOption(createApiKeyFileOption())
|
|
374
430
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
375
431
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
376
432
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -437,7 +493,8 @@ program
|
|
|
437
493
|
.option('--search <text>', 'Title keyword search (list only)')
|
|
438
494
|
.option('--limit <n>', 'Max results per page, alias for --page-size (list only)')
|
|
439
495
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
440
|
-
.
|
|
496
|
+
.addOption(createApiKeyOption())
|
|
497
|
+
.addOption(createApiKeyFileOption())
|
|
441
498
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
442
499
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
443
500
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -528,7 +585,8 @@ program
|
|
|
528
585
|
.option('--page <number>', 'Page number (list only)')
|
|
529
586
|
.option('--page-size <number>', 'Page size (list only)')
|
|
530
587
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
531
|
-
.
|
|
588
|
+
.addOption(createApiKeyOption())
|
|
589
|
+
.addOption(createApiKeyFileOption())
|
|
532
590
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
533
591
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
534
592
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -610,7 +668,8 @@ program
|
|
|
610
668
|
.option('--page <number>', 'Page number (list only)')
|
|
611
669
|
.option('--page-size <number>', 'Page size (list only)')
|
|
612
670
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
613
|
-
.
|
|
671
|
+
.addOption(createApiKeyOption())
|
|
672
|
+
.addOption(createApiKeyFileOption())
|
|
614
673
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
615
674
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
616
675
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -653,7 +712,8 @@ program
|
|
|
653
712
|
.option('--search <text>', 'Title keyword search (list only)')
|
|
654
713
|
.option('--limit <n>', 'Max results per page, alias for --page-size (list only)')
|
|
655
714
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
656
|
-
.
|
|
715
|
+
.addOption(createApiKeyOption())
|
|
716
|
+
.addOption(createApiKeyFileOption())
|
|
657
717
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
658
718
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
659
719
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -716,7 +776,8 @@ program
|
|
|
716
776
|
.option('--search <text>', 'Title keyword search (list only)')
|
|
717
777
|
.option('--limit <n>', 'Max results per page, alias for --page-size (list only)')
|
|
718
778
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
719
|
-
.
|
|
779
|
+
.addOption(createApiKeyOption())
|
|
780
|
+
.addOption(createApiKeyFileOption())
|
|
720
781
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
721
782
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
722
783
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -769,7 +830,8 @@ program
|
|
|
769
830
|
.option('--title <title>', 'Feedback title')
|
|
770
831
|
.option('--content <content>', 'Feedback content')
|
|
771
832
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
772
|
-
.
|
|
833
|
+
.addOption(createApiKeyOption())
|
|
834
|
+
.addOption(createApiKeyFileOption())
|
|
773
835
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
774
836
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
775
837
|
.option('--format <format>', 'Output format (json)')
|
|
@@ -857,7 +919,8 @@ program
|
|
|
857
919
|
.option('--page <number>', 'Page number (list/revisions/comment-list)')
|
|
858
920
|
.option('--page-size <number>', 'Page size (list/revisions/comment-list)')
|
|
859
921
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
860
|
-
.
|
|
922
|
+
.addOption(createApiKeyOption())
|
|
923
|
+
.addOption(createApiKeyFileOption())
|
|
861
924
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
862
925
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
863
926
|
.option('--format <format>', 'Output format (json)', 'json')
|
|
@@ -969,7 +1032,8 @@ program
|
|
|
969
1032
|
.option('--limit <n>', 'Max results (1-100, default: 20)')
|
|
970
1033
|
.option('--max-tokens <n>', 'Token budget for response')
|
|
971
1034
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
972
|
-
.
|
|
1035
|
+
.addOption(createApiKeyOption())
|
|
1036
|
+
.addOption(createApiKeyFileOption())
|
|
973
1037
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
974
1038
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
975
1039
|
.option('--format <format>', 'Output format (json)', 'json')
|
|
@@ -1007,7 +1071,8 @@ const mcpCommand = program
|
|
|
1007
1071
|
.command('mcp')
|
|
1008
1072
|
.description('Run an MCP server over stdio, exposing AgentTeams reads to MCP-capable coding agents')
|
|
1009
1073
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
1010
|
-
.
|
|
1074
|
+
.addOption(createApiKeyOption())
|
|
1075
|
+
.addOption(createApiKeyFileOption())
|
|
1011
1076
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
1012
1077
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
1013
1078
|
.addHelpText('after', CONVENTION_HINT)
|
|
@@ -1018,7 +1083,7 @@ const mcpCommand = program
|
|
|
1018
1083
|
const { startMcpServer } = await import('./commands/mcp.js');
|
|
1019
1084
|
// stdout carries JSON-RPC frames only: this action deliberately bypasses
|
|
1020
1085
|
// executeCommand()/printCommandResult() and never writes to stdout.
|
|
1021
|
-
startMcpServer({
|
|
1086
|
+
await startMcpServer({
|
|
1022
1087
|
apiUrl: options.apiUrl,
|
|
1023
1088
|
apiKey: options.apiKey,
|
|
1024
1089
|
projectId: options.projectId,
|
|
@@ -1039,7 +1104,8 @@ function addMcpRegistrationOptions(command) {
|
|
|
1039
1104
|
.option('--server-entry <path>', 'Use a local `cli/dist/index.js` instead of the published package (for pre-release testing)')
|
|
1040
1105
|
.option('--json', 'Print the machine-readable result instead of the human-readable report', false)
|
|
1041
1106
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
1042
|
-
.
|
|
1107
|
+
.addOption(createApiKeyOption())
|
|
1108
|
+
.addOption(createApiKeyFileOption())
|
|
1043
1109
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
1044
1110
|
.option('--team-id <id>', 'Override team ID (optional)');
|
|
1045
1111
|
}
|
|
@@ -1073,6 +1139,24 @@ addMcpRegistrationOptions(mcpCommand
|
|
|
1073
1139
|
.option('--yes', 'Apply an explicitly selected user-scope batch plan instead of only printing it', false)
|
|
1074
1140
|
.addHelpText('after', CONVENTION_HINT)
|
|
1075
1141
|
.action((options, command) => runMcpRegistration('install', options, command));
|
|
1142
|
+
mcpCommand
|
|
1143
|
+
.command('doctor')
|
|
1144
|
+
.description('Find legacy plaintext MCP key copies; cleanup is applied only with explicit --yes confirmation.')
|
|
1145
|
+
.option('--yes', 'Confirm safe cleanup after the audit', false)
|
|
1146
|
+
.option('--json', 'Print the machine-readable result instead of the human-readable report', false)
|
|
1147
|
+
.addHelpText('after', CONVENTION_HINT)
|
|
1148
|
+
.action(async (options) => {
|
|
1149
|
+
try {
|
|
1150
|
+
const { runMcpDoctorCommand } = await import('./mcp-registration/doctor.js');
|
|
1151
|
+
const output = await runMcpDoctorCommand({ yes: options.yes === true });
|
|
1152
|
+
console.log(options.json ? formatOutput(output.json) : output.text);
|
|
1153
|
+
process.exitCode = output.exitCode;
|
|
1154
|
+
}
|
|
1155
|
+
catch (error) {
|
|
1156
|
+
console.error(handleError(error));
|
|
1157
|
+
process.exit(1);
|
|
1158
|
+
}
|
|
1159
|
+
});
|
|
1076
1160
|
const linearCommand = program
|
|
1077
1161
|
.command('linear')
|
|
1078
1162
|
.description('Read Linear issues and add comments through the AgentTeams API')
|
|
@@ -1088,7 +1172,8 @@ linearCommand
|
|
|
1088
1172
|
.option('--state <name>', 'Issue state name, e.g. "Done", "Todo" (required for update, optional for create)')
|
|
1089
1173
|
.option('--parent-id <id>', 'Linear parent issue UUID for creating a sub-issue (optional, for create)')
|
|
1090
1174
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
1091
|
-
.
|
|
1175
|
+
.addOption(createApiKeyOption())
|
|
1176
|
+
.addOption(createApiKeyFileOption())
|
|
1092
1177
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
1093
1178
|
.option('--format <format>', 'Output format (json)', 'json')
|
|
1094
1179
|
.option('--output-file <path>', 'Write full output to a file (stdout prints a short summary)')
|
|
@@ -1134,7 +1219,8 @@ linearCommand
|
|
|
1134
1219
|
.option('--issue-id <id>', 'Linear issue ID')
|
|
1135
1220
|
.option('--body <text>', 'Comment body')
|
|
1136
1221
|
.option('--api-url <url>', 'Override API URL (optional)')
|
|
1137
|
-
.
|
|
1222
|
+
.addOption(createApiKeyOption())
|
|
1223
|
+
.addOption(createApiKeyFileOption())
|
|
1138
1224
|
.option('--project-id <id>', 'Override project ID (optional)')
|
|
1139
1225
|
.option('--team-id <id>', 'Override team ID (optional)')
|
|
1140
1226
|
.option('--format <format>', 'Output format (json)', 'json')
|