@kodycodes/cli 1.30.0 → 1.31.1
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 +6 -5
- package/dist/api-token.d.ts +21 -7
- package/dist/{auth-2QIO27O4.js → auth-ENMPCMEF.js} +4 -4
- package/dist/bin.js +6 -6
- package/dist/{chunk-4KZ7BGFE.js → chunk-5BJUKHNZ.js} +18 -20
- package/dist/chunk-5BJUKHNZ.js.map +6 -0
- package/dist/{chunk-IEG6VSLR.js → chunk-AQA2OWJV.js} +42 -38
- package/dist/chunk-AQA2OWJV.js.map +6 -0
- package/dist/{chunk-44MCK4CO.js → chunk-E4PNDTNS.js} +5 -5
- package/dist/{chunk-44MCK4CO.js.map → chunk-E4PNDTNS.js.map} +1 -1
- package/dist/{chunk-GTDDIMEY.js → chunk-GGTDQ3DB.js} +3 -3
- package/dist/{chunk-AKTF4I6X.js → chunk-HE6DDGRA.js} +5 -7
- package/dist/{chunk-AKTF4I6X.js.map → chunk-HE6DDGRA.js.map} +1 -1
- package/dist/{chunk-22NMJIUY.js → chunk-KRFJTXGW.js} +8 -8
- package/dist/{chunk-22NMJIUY.js.map → chunk-KRFJTXGW.js.map} +1 -1
- package/dist/{chunk-XWCYXIX5.js → chunk-MGT7W2DK.js} +4 -4
- package/dist/{chunk-B3PPCNZL.js → chunk-SMESBEJO.js} +3 -3
- package/dist/{chunk-CUKSBWLM.js → chunk-TEDLUC2N.js} +5 -5
- package/dist/{chunk-CUKSBWLM.js.map → chunk-TEDLUC2N.js.map} +1 -1
- package/dist/cli.js +6 -6
- package/dist/{dev-command-766ZWHNX.js → dev-command-PRFU6SUO.js} +5 -5
- package/dist/{git-credential-7K23GAGI.js → git-credential-76LN5D43.js} +5 -5
- package/dist/{local-execute-X5KY5MP4.js → local-execute-KDTZPBCC.js} +4 -4
- package/dist/{local-package-graph-NU2MP6Z3.js → local-package-graph-V3CR77DL.js} +3 -3
- package/dist/{local-package-run-XM7SF25N.js → local-package-run-GEGS2MMM.js} +5 -5
- package/dist/{mock-dep-resolve-KHWXRVOT.js → mock-dep-resolve-6TFZKV6K.js} +5 -5
- package/dist/{mock-local-deps-KSFUDRP6.js → mock-local-deps-EGDEZJVA.js} +3 -3
- package/dist/{open-api-client-2REYIX4P.js → open-api-client-PBYR7O3V.js} +3 -3
- package/dist/{remote-execute-M2ONXQUE.js → remote-execute-H4ICLP2Z.js} +3 -3
- package/dist/{setup-git-AUNQHPYH.js → setup-git-VPH2XYYB.js} +4 -4
- package/package.json +1 -1
- package/dist/chunk-4KZ7BGFE.js.map +0 -6
- package/dist/chunk-IEG6VSLR.js.map +0 -6
- /package/dist/{auth-2QIO27O4.js.map → auth-ENMPCMEF.js.map} +0 -0
- /package/dist/{chunk-GTDDIMEY.js.map → chunk-GGTDQ3DB.js.map} +0 -0
- /package/dist/{chunk-XWCYXIX5.js.map → chunk-MGT7W2DK.js.map} +0 -0
- /package/dist/{chunk-B3PPCNZL.js.map → chunk-SMESBEJO.js.map} +0 -0
- /package/dist/{dev-command-766ZWHNX.js.map → dev-command-PRFU6SUO.js.map} +0 -0
- /package/dist/{git-credential-7K23GAGI.js.map → git-credential-76LN5D43.js.map} +0 -0
- /package/dist/{local-execute-X5KY5MP4.js.map → local-execute-KDTZPBCC.js.map} +0 -0
- /package/dist/{local-package-graph-NU2MP6Z3.js.map → local-package-graph-V3CR77DL.js.map} +0 -0
- /package/dist/{local-package-run-XM7SF25N.js.map → local-package-run-GEGS2MMM.js.map} +0 -0
- /package/dist/{mock-dep-resolve-KHWXRVOT.js.map → mock-dep-resolve-6TFZKV6K.js.map} +0 -0
- /package/dist/{mock-local-deps-KSFUDRP6.js.map → mock-local-deps-EGDEZJVA.js.map} +0 -0
- /package/dist/{open-api-client-2REYIX4P.js.map → open-api-client-PBYR7O3V.js.map} +0 -0
- /package/dist/{remote-execute-M2ONXQUE.js.map → remote-execute-H4ICLP2Z.js.map} +0 -0
- /package/dist/{setup-git-AUNQHPYH.js.map → setup-git-VPH2XYYB.js.map} +0 -0
package/README.md
CHANGED
|
@@ -122,9 +122,10 @@ npx @kodycodes/cli whoami
|
|
|
122
122
|
npx @kodycodes/cli api usageGet --params '{}'
|
|
123
123
|
```
|
|
124
124
|
|
|
125
|
-
- Neither bootstrap store, `kody login`, nor a token →
|
|
126
|
-
|
|
127
|
-
`
|
|
125
|
+
- Neither bootstrap store, `kody login`, nor a token → one shared
|
|
126
|
+
not-authenticated error: agents on MCP call `cliCredentialBootstrap` and run
|
|
127
|
+
the returned `cli_command` (never ask a human to paste a token); humans run
|
|
128
|
+
`kody login`; CI/headless uses `tokenCreate` + `KODY_API_TOKEN`.
|
|
128
129
|
- For `execute --local` specifically: `--token` / `KODY_API_TOKEN` wins when
|
|
129
130
|
set; else a stored bootstrap/API token from `auth bootstrap`; else the stored
|
|
130
131
|
`kody login` OAuth access token as Bearer only when the API and MCP URLs are
|
|
@@ -136,8 +137,8 @@ npx @kodycodes/cli api usageGet --params '{}'
|
|
|
136
137
|
CapabilityProxy / package-graph
|
|
137
138
|
([kody-hq/kody#2812](https://github.com/kody-hq/kody/issues/2812)); until then
|
|
138
139
|
use bootstrap or a scoped `kody_at_…` token.
|
|
139
|
-
- Wrong/expired token → 401 with
|
|
140
|
-
platform-gap message when the bearer is login OAuth).
|
|
140
|
+
- Wrong/expired token → 401 with the same agent-first not-authenticated guidance
|
|
141
|
+
(or the OAuth platform-gap message when the bearer is login OAuth).
|
|
141
142
|
- Wrong scopes → the error names the missing scope and the exact command to mint
|
|
142
143
|
a token that adds it (see [Opt-in scopes](#opt-in-scopes)). When your org role
|
|
143
144
|
lacks the permission, it says so instead: a new token cannot add it, and an
|
package/dist/api-token.d.ts
CHANGED
|
@@ -34,9 +34,26 @@ export declare function resolveScopedApiToken(input?: ResolveScopedApiTokenInput
|
|
|
34
34
|
export declare function isScopedApiToken(token: string): boolean;
|
|
35
35
|
/**
|
|
36
36
|
* How to mint a scoped token for CI/headless. Interactive agents on MCP should
|
|
37
|
-
* prefer `cliCredentialBootstrap` →
|
|
37
|
+
* prefer `cliCredentialBootstrap` → run returned `cli_command` instead.
|
|
38
38
|
*/
|
|
39
39
|
export declare function apiTokenMintInstructions(): string;
|
|
40
|
+
/**
|
|
41
|
+
* Shared guidance for every missing or invalid CLI auth failure. Agents hit
|
|
42
|
+
* this wall; put the MCP bootstrap path first and never ask a human for a token.
|
|
43
|
+
*/
|
|
44
|
+
export declare function notAuthenticatedGuidance(lifetime?: CliTokenLifetimeAlias): string;
|
|
45
|
+
/**
|
|
46
|
+
* One generic not-authenticated message for missing or invalid auth (all
|
|
47
|
+
* commands). Optional `purpose` names the command that failed.
|
|
48
|
+
*/
|
|
49
|
+
export declare function notAuthenticatedMessage(purpose?: string, lifetime?: CliTokenLifetimeAlias): string;
|
|
50
|
+
/**
|
|
51
|
+
* 401 when a scoped `kody_at_…` was rejected. Same agent-first guidance as
|
|
52
|
+
* missing auth (do not tell agents to ask a human for a fresh token).
|
|
53
|
+
* Explicit `--token` / `KODY_API_TOKEN` still win over a freshly stored
|
|
54
|
+
* bootstrap token, so say to clear or replace them before retrying.
|
|
55
|
+
*/
|
|
56
|
+
export declare function rejectedApiTokenMessage(detail?: string): string;
|
|
40
57
|
/**
|
|
41
58
|
* CapabilityProxy refused the token outright (not a missing scope): one line
|
|
42
59
|
* saying so, then one line with the command that fixes it.
|
|
@@ -59,14 +76,11 @@ export declare function cliBootstrapLifetimeFlags(lifetime?: CliTokenLifetimeAli
|
|
|
59
76
|
export declare function cliBootstrapLifetimeMintFields(lifetime?: CliTokenLifetimeAlias): Record<string, string | number>;
|
|
60
77
|
/** Lifetime hint from the stored API token for `apiUrl`, defaulting to short. */
|
|
61
78
|
export declare function currentStoredTokenLifetimeAlias(apiUrl?: string, nowMs?: number, loadApiToken?: typeof loadStoredApiToken): CliTokenLifetimeAlias;
|
|
62
|
-
/**
|
|
79
|
+
/** Alias of {@link notAuthenticatedMessage} (token-only command paths). */
|
|
63
80
|
export declare function missingApiTokenMessage(purpose: string): string;
|
|
64
|
-
/**
|
|
65
|
-
* `execute --local` with neither env/`--token`, stored bootstrap token, nor
|
|
66
|
-
* `kody login`. Prefer bootstrap (MCP) → login → tokenCreate (CI).
|
|
67
|
-
*/
|
|
81
|
+
/** Alias of {@link notAuthenticatedMessage} (`execute --local` paths). */
|
|
68
82
|
export declare function missingLocalExecuteAuthMessage(purpose?: string): string;
|
|
69
|
-
/**
|
|
83
|
+
/** Alias of {@link notAuthenticatedMessage} (login/session paths). */
|
|
70
84
|
export declare function missingCliAuthMessage(): string;
|
|
71
85
|
/** 401 when CapabilityProxy rejected a non-`kody_at_` bearer (typically CLI OAuth). */
|
|
72
86
|
export declare function rejectedOauthBearerMessage(): string;
|
|
@@ -7,13 +7,13 @@ import {
|
|
|
7
7
|
login,
|
|
8
8
|
refreshStoredCredentials,
|
|
9
9
|
resolvePendingOrgSlug
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-TEDLUC2N.js";
|
|
11
11
|
import "./chunk-CASGRYOF.js";
|
|
12
12
|
import "./chunk-ZILB2HWE.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-KRFJTXGW.js";
|
|
14
14
|
import "./chunk-46IJPEID.js";
|
|
15
15
|
import "./chunk-PWWN6JI2.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-5BJUKHNZ.js";
|
|
17
17
|
import "./chunk-LSFY5BNX.js";
|
|
18
18
|
import "./chunk-CWWHR4FH.js";
|
|
19
19
|
import "./chunk-3H72XY5R.js";
|
|
@@ -28,4 +28,4 @@ export {
|
|
|
28
28
|
refreshStoredCredentials,
|
|
29
29
|
resolvePendingOrgSlug
|
|
30
30
|
};
|
|
31
|
-
//# sourceMappingURL=auth-
|
|
31
|
+
//# sourceMappingURL=auth-ENMPCMEF.js.map
|
package/dist/bin.js
CHANGED
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
import { createRequire as __createRequire } from 'node:module'; const require = __createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
runCli
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-AQA2OWJV.js";
|
|
6
6
|
import "./chunk-2XPH7L2P.js";
|
|
7
7
|
import "./chunk-SLNAWWQK.js";
|
|
8
8
|
import "./chunk-YDWTXEKQ.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-HE6DDGRA.js";
|
|
10
|
+
import "./chunk-GGTDQ3DB.js";
|
|
11
11
|
import "./chunk-6ZYUGXVW.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-TEDLUC2N.js";
|
|
13
13
|
import "./chunk-CASGRYOF.js";
|
|
14
14
|
import "./chunk-ZILB2HWE.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-KRFJTXGW.js";
|
|
16
16
|
import "./chunk-46IJPEID.js";
|
|
17
17
|
import "./chunk-PWWN6JI2.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-5BJUKHNZ.js";
|
|
19
19
|
import "./chunk-LSFY5BNX.js";
|
|
20
20
|
import "./chunk-7PRJ36I5.js";
|
|
21
21
|
import "./chunk-CWWHR4FH.js";
|
|
@@ -185,15 +185,22 @@ function isScopedApiToken(token) {
|
|
|
185
185
|
return token.startsWith("kody_at_");
|
|
186
186
|
}
|
|
187
187
|
function apiTokenMintInstructions() {
|
|
188
|
-
return `For CI/headless only: mint with the Kody MCP \`api\` tool \`tokenCreate\` (include \`org:execute\` plus the capability scopes this command needs, e.g. \`package:execute\` / \`integration:read\`) and
|
|
188
|
+
return `For CI/headless only: mint with the Kody MCP \`api\` tool \`tokenCreate\` (include \`org:execute\` plus the capability scopes this command needs, e.g. \`package:execute\` / \`integration:read\`) and set ${apiTokenEnvVar} (prefer env over --token).`;
|
|
189
|
+
}
|
|
190
|
+
function notAuthenticatedGuidance(lifetime = "short") {
|
|
191
|
+
return `If you are an agent connected to the Kody MCP server, call \`cliCredentialBootstrap\` (MCP \`execute\` with \`kody.cliCredentialBootstrap({ lifetime: "${lifetime}", scopes: [...] })\`, or MCP \`api\` with operationId \`cliCredentialBootstrap\`) and run the returned \`cli_command\`; never ask a human to paste a token. Humans: run \`kody login\`. ` + apiTokenMintInstructions();
|
|
192
|
+
}
|
|
193
|
+
function notAuthenticatedMessage(purpose, lifetime = "short") {
|
|
194
|
+
const head = purpose ? `${purpose}: not authenticated.` : "Not authenticated.";
|
|
195
|
+
return `${head} ${notAuthenticatedGuidance(lifetime)}`;
|
|
196
|
+
}
|
|
197
|
+
function rejectedApiTokenMessage(detail = "") {
|
|
198
|
+
return `Kody rejected the API token (expired, revoked, or malformed). ${notAuthenticatedGuidance()} If you set --token or ${apiTokenEnvVar}, unset or replace that rejected value before retrying so the stored bootstrap token is used.` + detail;
|
|
189
199
|
}
|
|
190
200
|
function capabilityProxyForbiddenMessage(input) {
|
|
191
201
|
const reason = input.serverMessage ? `: ${input.serverMessage}` : "";
|
|
192
202
|
return `The API token is not allowed to use CapabilityProxy (${input.code ?? "forbidden"})${reason}.
|
|
193
|
-
Fix:
|
|
194
|
-
}
|
|
195
|
-
function cliBootstrapInstructions(lifetime = "short") {
|
|
196
|
-
return `From MCP, call \`cliCredentialBootstrap\` (MCP \`api\` / \`kody.cliCredentialBootstrap\`), then run \`npx @kodycodes/cli auth bootstrap --code <kody_bc_\u2026> --lifetime ${lifetime}\``;
|
|
203
|
+
Fix: ${notAuthenticatedGuidance()}`;
|
|
197
204
|
}
|
|
198
205
|
function inferCliTokenLifetimeAlias(stored, nowMs = Date.now()) {
|
|
199
206
|
if (!stored) return "short";
|
|
@@ -210,17 +217,8 @@ function cliBootstrapLifetimeMintFields(lifetime = "short") {
|
|
|
210
217
|
function currentStoredTokenLifetimeAlias(apiUrl = defaultApiUrl, nowMs = Date.now(), loadApiToken = loadStoredApiToken) {
|
|
211
218
|
return inferCliTokenLifetimeAlias(loadApiToken(apiUrl), nowMs);
|
|
212
219
|
}
|
|
213
|
-
function missingApiTokenMessage(purpose) {
|
|
214
|
-
return `${purpose} needs a scoped Kody API token. ${cliBootstrapInstructions()}, or ${apiTokenMintInstructions()}`;
|
|
215
|
-
}
|
|
216
|
-
function missingLocalExecuteAuthMessage(purpose = "execute --local") {
|
|
217
|
-
return `${purpose} needs auth. ${cliBootstrapInstructions()}; or run \`kody login\`; or for CI/headless, ${apiTokenMintInstructions()}`;
|
|
218
|
-
}
|
|
219
|
-
function missingCliAuthMessage() {
|
|
220
|
-
return `Not logged in, and no API token is set. ${cliBootstrapInstructions()}; or run \`kody login\` for browser OAuth (search, whoami, cloud execute, and login-backed \`execute --local\`); or for CI/headless, ${apiTokenMintInstructions()}`;
|
|
221
|
-
}
|
|
222
220
|
function rejectedOauthBearerMessage() {
|
|
223
|
-
return `Kody rejected the bearer from \`kody login\`: the Open API still accepts only scoped \`kody_at_\u2026\` API tokens on CapabilityProxy / package-graph (not MCP OAuth). See ${localExecuteOauthPlatformIssueUrl}. Until that lands, ${
|
|
221
|
+
return `Kody rejected the bearer from \`kody login\`: the Open API still accepts only scoped \`kody_at_\u2026\` API tokens on CapabilityProxy / package-graph (not MCP OAuth). See ${localExecuteOauthPlatformIssueUrl}. Until that lands, ${notAuthenticatedGuidance()}`;
|
|
224
222
|
}
|
|
225
223
|
function readInsufficientScopeDetails(body) {
|
|
226
224
|
const details = isRecord(body) && isRecord(body.error) && isRecord(body.error.details) ? body.error.details : null;
|
|
@@ -285,7 +283,7 @@ function requireApiToken(values = {}, env = process.env, purpose = "this command
|
|
|
285
283
|
env,
|
|
286
284
|
...options
|
|
287
285
|
});
|
|
288
|
-
if (!token) throw new Error(
|
|
286
|
+
if (!token) throw new Error(notAuthenticatedMessage(purpose));
|
|
289
287
|
return token;
|
|
290
288
|
}
|
|
291
289
|
function hasExplicitTokenFlag(values) {
|
|
@@ -947,7 +945,7 @@ function describeFailure(status, body, url, stage, token) {
|
|
|
947
945
|
const code = failure?.code ?? null;
|
|
948
946
|
const detail = failure?.message ? ` Server said: ${failure.message}` : "";
|
|
949
947
|
if (status === 401) {
|
|
950
|
-
const message = isScopedApiToken(token) ?
|
|
948
|
+
const message = isScopedApiToken(token) ? rejectedApiTokenMessage(detail) : `${rejectedOauthBearerMessage()}${detail}`;
|
|
951
949
|
return new CapabilityProxyError(message, { status, code });
|
|
952
950
|
}
|
|
953
951
|
if (code === "feature_disabled") {
|
|
@@ -998,10 +996,10 @@ export {
|
|
|
998
996
|
readApiToken,
|
|
999
997
|
resolveScopedApiToken,
|
|
1000
998
|
isScopedApiToken,
|
|
999
|
+
notAuthenticatedMessage,
|
|
1000
|
+
rejectedApiTokenMessage,
|
|
1001
1001
|
capabilityProxyForbiddenMessage,
|
|
1002
1002
|
currentStoredTokenLifetimeAlias,
|
|
1003
|
-
missingLocalExecuteAuthMessage,
|
|
1004
|
-
missingCliAuthMessage,
|
|
1005
1003
|
rejectedOauthBearerMessage,
|
|
1006
1004
|
readInsufficientScopeDetails,
|
|
1007
1005
|
cliBootstrapMintCall,
|
|
@@ -1025,4 +1023,4 @@ export {
|
|
|
1025
1023
|
callCapabilityProxyGatewayFetchStream,
|
|
1026
1024
|
checkCredentialCallMap
|
|
1027
1025
|
};
|
|
1028
|
-
//# sourceMappingURL=chunk-
|
|
1026
|
+
//# sourceMappingURL=chunk-5BJUKHNZ.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/api-token-store.ts", "../src/api-token.ts", "../src/credential-call-map.ts", "../src/package-info.ts", "../src/capability-proxy.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["require", "loopbackHosts", "isRecord"]
|
|
6
|
+
}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-YDWTXEKQ.js";
|
|
12
12
|
import {
|
|
13
13
|
resolveLocalExecuteBearer
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-HE6DDGRA.js";
|
|
15
15
|
import {
|
|
16
16
|
authBootstrap,
|
|
17
17
|
authBootstrapWithScopes,
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
parseCliScopesFlag,
|
|
22
22
|
refreshGitCredentialHelperPinIfNeeded,
|
|
23
23
|
resolveCliTokenLifetime
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-GGTDQ3DB.js";
|
|
25
25
|
import {
|
|
26
26
|
redactError
|
|
27
27
|
} from "./chunk-CASGRYOF.js";
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
readPackageVersion,
|
|
38
38
|
requireApiToken,
|
|
39
39
|
resolveScopedApiToken
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-5BJUKHNZ.js";
|
|
41
41
|
import {
|
|
42
42
|
resolveOrgSlug
|
|
43
43
|
} from "./chunk-7PRJ36I5.js";
|
|
@@ -156,18 +156,22 @@ ${orgBlock}
|
|
|
156
156
|
--clients Comma-separated ids: ${hostIds.join(", ")}
|
|
157
157
|
|
|
158
158
|
auth bootstrap
|
|
159
|
-
|
|
160
|
-
|
|
159
|
+
Agents on Kody MCP: call \`cliCredentialBootstrap\` (MCP
|
|
160
|
+
\`execute\` with \`kody.cliCredentialBootstrap({ lifetime:
|
|
161
|
+
"short", scopes: [...] })\`, or MCP \`api\` with operationId
|
|
162
|
+
\`cliCredentialBootstrap\`) and run the returned \`cli_command\`
|
|
163
|
+
(never ask a human to paste a token). Humans: \`kody login\`.
|
|
164
|
+
This command redeems a one-shot \`kody_bc_\u2026\` (POST
|
|
165
|
+
/v1/tokens/bootstrap/redeem, no Authorization header).
|
|
161
166
|
Lifetime is required: \`--lifetime short|long\` (\`short\` = 1h
|
|
162
167
|
idle / 24h max; \`long\` = 14d idle / 3mo max), or both
|
|
163
168
|
\`--idle-ttl-seconds\` and \`--max-lifetime-seconds\`.
|
|
164
169
|
Single-task agents should use \`--lifetime short\`.
|
|
165
170
|
Stores the resulting \`kody_at_\u2026\` for \`execute --local\`,
|
|
166
171
|
search, whoami, api, and token-auth cloud execute without
|
|
167
|
-
printing the token.
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
\u2014 that would print the token.
|
|
172
|
+
printing the token. Do not call
|
|
173
|
+
\`kody api cliCredentialBootstrapRedeem\` (that would print the
|
|
174
|
+
token).
|
|
171
175
|
|
|
172
176
|
--scopes <list>
|
|
173
177
|
Opt in to scopes beyond the cliCredentialBootstrap defaults
|
|
@@ -345,7 +349,7 @@ ${orgBlock}
|
|
|
345
349
|
before workerd (also \`packageContext.appBasePath\`; the
|
|
346
350
|
\`--ready-file\` JSON reports the same value as \`basePath\`).
|
|
347
351
|
Default is empty (serve at \`/\`). Use
|
|
348
|
-
\`--app-base-path
|
|
352
|
+
\`--app-base-path /<package-name>\` to match the
|
|
349
353
|
hosted app mount while iterating locally.
|
|
350
354
|
|
|
351
355
|
--dry-run With \`kody dev job|webhook|emit\`, print the module path and
|
|
@@ -899,7 +903,7 @@ async function dispatch(parsed, write, writeErr) {
|
|
|
899
903
|
`);
|
|
900
904
|
return 0;
|
|
901
905
|
case "login": {
|
|
902
|
-
const { login } = await import("./auth-
|
|
906
|
+
const { login } = await import("./auth-ENMPCMEF.js");
|
|
903
907
|
write("Opening the Kody login page in your browser\u2026\n");
|
|
904
908
|
const result = await login({
|
|
905
909
|
mcpUrl,
|
|
@@ -1124,7 +1128,7 @@ ${url.href}
|
|
|
1124
1128
|
parseGitCredentialAction,
|
|
1125
1129
|
parseGitCredentialInput,
|
|
1126
1130
|
readGitCredentialStdin
|
|
1127
|
-
} = await import("./git-credential-
|
|
1131
|
+
} = await import("./git-credential-76LN5D43.js");
|
|
1128
1132
|
const action = parseGitCredentialAction(parsed.positionals);
|
|
1129
1133
|
const raw = await readGitCredentialStdin(process.stdin);
|
|
1130
1134
|
const output = await handleGitCredential({
|
|
@@ -1191,7 +1195,7 @@ ${url.href}
|
|
|
1191
1195
|
allowEnvWithoutLogin: true,
|
|
1192
1196
|
...org ? { org } : {}
|
|
1193
1197
|
})) {
|
|
1194
|
-
const { whoamiWithApiToken: whoamiWithApiToken2 } = await import("./open-api-client-
|
|
1198
|
+
const { whoamiWithApiToken: whoamiWithApiToken2 } = await import("./open-api-client-PBYR7O3V.js");
|
|
1195
1199
|
const identity2 = await whoamiWithApiToken2({
|
|
1196
1200
|
token: requireApiToken(tokenValues, process.env, "whoami", {
|
|
1197
1201
|
apiUrl
|
|
@@ -1218,13 +1222,13 @@ ${url.href}
|
|
|
1218
1222
|
);
|
|
1219
1223
|
return 0;
|
|
1220
1224
|
}
|
|
1221
|
-
const { ensureOpenApiCredentials } = await import("./auth-
|
|
1225
|
+
const { ensureOpenApiCredentials } = await import("./auth-ENMPCMEF.js");
|
|
1222
1226
|
const credentials = await ensureOpenApiCredentials({
|
|
1223
1227
|
mcpUrl,
|
|
1224
1228
|
org,
|
|
1225
1229
|
apiUrl
|
|
1226
1230
|
});
|
|
1227
|
-
const { whoamiWithApiToken } = await import("./open-api-client-
|
|
1231
|
+
const { whoamiWithApiToken } = await import("./open-api-client-PBYR7O3V.js");
|
|
1228
1232
|
const identity = await whoamiWithApiToken({
|
|
1229
1233
|
token: credentials.accessToken,
|
|
1230
1234
|
apiUrl,
|
|
@@ -1278,7 +1282,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1278
1282
|
});
|
|
1279
1283
|
apiUrl = mock.apiUrl;
|
|
1280
1284
|
closeMock = mock.started ? () => mock.server.close() : void 0;
|
|
1281
|
-
const { searchWithApiToken: searchWithApiToken2 } = await import("./open-api-client-
|
|
1285
|
+
const { searchWithApiToken: searchWithApiToken2 } = await import("./open-api-client-PBYR7O3V.js");
|
|
1282
1286
|
const result2 = await searchWithApiToken2({
|
|
1283
1287
|
token: mock.token,
|
|
1284
1288
|
apiUrl,
|
|
@@ -1297,7 +1301,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1297
1301
|
allowEnvWithoutLogin: true,
|
|
1298
1302
|
...org ? { org } : {}
|
|
1299
1303
|
})) {
|
|
1300
|
-
const { searchWithApiToken: searchWithApiToken2 } = await import("./open-api-client-
|
|
1304
|
+
const { searchWithApiToken: searchWithApiToken2 } = await import("./open-api-client-PBYR7O3V.js");
|
|
1301
1305
|
const result2 = await searchWithApiToken2({
|
|
1302
1306
|
token: requireApiToken(tokenValues, process.env, "search", {
|
|
1303
1307
|
apiUrl
|
|
@@ -1312,13 +1316,13 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1312
1316
|
write(formatToolResult(result2, json));
|
|
1313
1317
|
return result2.isError ? 1 : 0;
|
|
1314
1318
|
}
|
|
1315
|
-
const { ensureOpenApiCredentials } = await import("./auth-
|
|
1319
|
+
const { ensureOpenApiCredentials } = await import("./auth-ENMPCMEF.js");
|
|
1316
1320
|
const credentials = await ensureOpenApiCredentials({
|
|
1317
1321
|
mcpUrl,
|
|
1318
1322
|
org,
|
|
1319
1323
|
apiUrl
|
|
1320
1324
|
});
|
|
1321
|
-
const { searchWithApiToken } = await import("./open-api-client-
|
|
1325
|
+
const { searchWithApiToken } = await import("./open-api-client-PBYR7O3V.js");
|
|
1322
1326
|
const result = await searchWithApiToken({
|
|
1323
1327
|
token: credentials.accessToken,
|
|
1324
1328
|
apiUrl,
|
|
@@ -1425,7 +1429,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1425
1429
|
apiUrl = mock.apiUrl;
|
|
1426
1430
|
mockToken = mock.token;
|
|
1427
1431
|
closeMock = mock.started ? () => mock.server.close() : void 0;
|
|
1428
|
-
const { tryResolveMockDepResolve } = await import("./mock-dep-resolve-
|
|
1432
|
+
const { tryResolveMockDepResolve } = await import("./mock-dep-resolve-6TFZKV6K.js");
|
|
1429
1433
|
mockDepResolve = await tryResolveMockDepResolve({
|
|
1430
1434
|
tokenValues,
|
|
1431
1435
|
apiUrl: prodApiUrl,
|
|
@@ -1434,7 +1438,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1434
1438
|
});
|
|
1435
1439
|
}
|
|
1436
1440
|
if (localPackageRun) {
|
|
1437
|
-
const { buildLocalPackageContext, runLocalPackageModule } = await import("./local-package-run-
|
|
1441
|
+
const { buildLocalPackageContext, runLocalPackageModule } = await import("./local-package-run-GEGS2MMM.js");
|
|
1438
1442
|
const result2 = await runLocalPackageModule({
|
|
1439
1443
|
modulePath: localPackageRun.modulePath,
|
|
1440
1444
|
params: args.params,
|
|
@@ -1478,7 +1482,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1478
1482
|
packageRootForMocks = void 0;
|
|
1479
1483
|
}
|
|
1480
1484
|
}
|
|
1481
|
-
const result = local ? await (await import("./local-execute-
|
|
1485
|
+
const result = local ? await (await import("./local-execute-KDTZPBCC.js")).runLocalExecute({
|
|
1482
1486
|
code: args.code,
|
|
1483
1487
|
...modulePath !== void 0 ? { modulePath } : {},
|
|
1484
1488
|
params: args.params,
|
|
@@ -1500,7 +1504,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1500
1504
|
allowPrivateNetwork: parsed.values["allow-private-network"] === true,
|
|
1501
1505
|
onStatus: (message) => writeErr(`${message}
|
|
1502
1506
|
`)
|
|
1503
|
-
}) : useToken ? await (await import("./remote-execute-
|
|
1507
|
+
}) : useToken ? await (await import("./remote-execute-H4ICLP2Z.js")).runRemoteExecuteWithToken({
|
|
1504
1508
|
code: typeof args.code === "string" ? args.code : void 0,
|
|
1505
1509
|
invoke,
|
|
1506
1510
|
params: args.params,
|
|
@@ -1515,13 +1519,13 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1515
1519
|
apiUrl,
|
|
1516
1520
|
...org ? { org } : {}
|
|
1517
1521
|
}) : await (async () => {
|
|
1518
|
-
const { ensureOpenApiCredentials } = await import("./auth-
|
|
1522
|
+
const { ensureOpenApiCredentials } = await import("./auth-ENMPCMEF.js");
|
|
1519
1523
|
const session = await ensureOpenApiCredentials({
|
|
1520
1524
|
mcpUrl,
|
|
1521
1525
|
org,
|
|
1522
1526
|
apiUrl
|
|
1523
1527
|
});
|
|
1524
|
-
return (await import("./remote-execute-
|
|
1528
|
+
return (await import("./remote-execute-H4ICLP2Z.js")).runRemoteExecuteWithToken({
|
|
1525
1529
|
code: typeof args.code === "string" ? args.code : void 0,
|
|
1526
1530
|
invoke,
|
|
1527
1531
|
params: args.params,
|
|
@@ -1536,7 +1540,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1536
1540
|
return result.isError ? 1 : 0;
|
|
1537
1541
|
} catch (error) {
|
|
1538
1542
|
if (json && local) {
|
|
1539
|
-
const { LocalPackageGraphError, packageGraphErrorToolResult } = await import("./local-package-graph-
|
|
1543
|
+
const { LocalPackageGraphError, packageGraphErrorToolResult } = await import("./local-package-graph-V3CR77DL.js");
|
|
1540
1544
|
if (error instanceof LocalPackageGraphError) {
|
|
1541
1545
|
const redacted = redactError(error).message;
|
|
1542
1546
|
const result = packageGraphErrorToolResult(error);
|
|
@@ -1566,7 +1570,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1566
1570
|
runDevServe,
|
|
1567
1571
|
runDevWebhook,
|
|
1568
1572
|
tryAttachedDevFetch
|
|
1569
|
-
} = await import("./dev-command-
|
|
1573
|
+
} = await import("./dev-command-PRFU6SUO.js");
|
|
1570
1574
|
const target = resolveTarget({
|
|
1571
1575
|
command: "dev",
|
|
1572
1576
|
flag: typeof parsed.values.target === "string" ? parsed.values.target : void 0
|
|
@@ -1657,7 +1661,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1657
1661
|
purpose: "kody dev",
|
|
1658
1662
|
...org ? { org } : {}
|
|
1659
1663
|
}) : "mock";
|
|
1660
|
-
const mockDepResolve = target === "mock" ? await (await import("./mock-dep-resolve-
|
|
1664
|
+
const mockDepResolve = target === "mock" ? await (await import("./mock-dep-resolve-6TFZKV6K.js")).tryResolveMockDepResolve({
|
|
1661
1665
|
tokenValues,
|
|
1662
1666
|
apiUrl: prodApiUrl,
|
|
1663
1667
|
mcpUrl,
|
|
@@ -1798,7 +1802,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1798
1802
|
const params = parseApiParamsJson(
|
|
1799
1803
|
typeof parsed.values.params === "string" ? parsed.values.params : void 0
|
|
1800
1804
|
);
|
|
1801
|
-
const { callOpenApiOperation } = await import("./open-api-client-
|
|
1805
|
+
const { callOpenApiOperation } = await import("./open-api-client-PBYR7O3V.js");
|
|
1802
1806
|
const result = await callOpenApiOperation({
|
|
1803
1807
|
operationId,
|
|
1804
1808
|
params,
|
|
@@ -1833,7 +1837,7 @@ scopes: ${identity.token.scopes.join(", ") || "(none)"}
|
|
|
1833
1837
|
mcpUrl,
|
|
1834
1838
|
org
|
|
1835
1839
|
});
|
|
1836
|
-
const { callOpenApiOperation: callOpenApiOperation2 } = await import("./open-api-client-
|
|
1840
|
+
const { callOpenApiOperation: callOpenApiOperation2 } = await import("./open-api-client-PBYR7O3V.js");
|
|
1837
1841
|
write(
|
|
1838
1842
|
await runPackageCollaboratorPlan({
|
|
1839
1843
|
plan,
|
|
@@ -1859,7 +1863,7 @@ ${packageCollaboratorUsage}`
|
|
|
1859
1863
|
positional: parsed.positionals[1],
|
|
1860
1864
|
paramsJson: typeof parsed.values.params === "string" ? parsed.values.params : void 0
|
|
1861
1865
|
});
|
|
1862
|
-
const { callOpenApiOperation } = await import("./open-api-client-
|
|
1866
|
+
const { callOpenApiOperation } = await import("./open-api-client-PBYR7O3V.js");
|
|
1863
1867
|
const publishToken = await accessTokenForOpenApi({
|
|
1864
1868
|
tokenValues,
|
|
1865
1869
|
apiUrl,
|
|
@@ -1997,7 +2001,7 @@ function attachExecuteCommonArgs(args, input) {
|
|
|
1997
2001
|
return args;
|
|
1998
2002
|
}
|
|
1999
2003
|
async function runAuthSetupGit(input) {
|
|
2000
|
-
const { authSetupGit, setupGitDefaultScopes } = await import("./setup-git-
|
|
2004
|
+
const { authSetupGit, setupGitDefaultScopes } = await import("./setup-git-VPH2XYYB.js");
|
|
2001
2005
|
const apiUrl = apiUrlFrom({
|
|
2002
2006
|
apiUrl: typeof input.values["api-url"] === "string" ? input.values["api-url"] : void 0
|
|
2003
2007
|
});
|
|
@@ -2054,7 +2058,7 @@ async function runAuthSetupGit(input) {
|
|
|
2054
2058
|
return 0;
|
|
2055
2059
|
}
|
|
2056
2060
|
async function runAuthRemoveGit(input) {
|
|
2057
|
-
const { authRemoveGit, formatAuthRemoveGitReport } = await import("./setup-git-
|
|
2061
|
+
const { authRemoveGit, formatAuthRemoveGitReport } = await import("./setup-git-VPH2XYYB.js");
|
|
2058
2062
|
const apiUrl = apiUrlFrom({
|
|
2059
2063
|
apiUrl: typeof input.values["api-url"] === "string" ? input.values["api-url"] : void 0
|
|
2060
2064
|
});
|
|
@@ -2082,7 +2086,7 @@ function bootstrapMinter(input) {
|
|
|
2082
2086
|
apiUrl: input.apiUrl
|
|
2083
2087
|
}
|
|
2084
2088
|
);
|
|
2085
|
-
const { callOpenApiOperation } = await import("./open-api-client-
|
|
2089
|
+
const { callOpenApiOperation } = await import("./open-api-client-PBYR7O3V.js");
|
|
2086
2090
|
try {
|
|
2087
2091
|
return await callOpenApiOperation({
|
|
2088
2092
|
token,
|
|
@@ -2103,13 +2107,13 @@ function bootstrapMinter(input) {
|
|
|
2103
2107
|
if (loadCredentials(input.mcpUrl, void 0, void 0, {
|
|
2104
2108
|
org: input.org
|
|
2105
2109
|
})) {
|
|
2106
|
-
const { ensureOpenApiCredentials } = await import("./auth-
|
|
2110
|
+
const { ensureOpenApiCredentials } = await import("./auth-ENMPCMEF.js");
|
|
2107
2111
|
const session = await ensureOpenApiCredentials({
|
|
2108
2112
|
mcpUrl: input.mcpUrl,
|
|
2109
2113
|
apiUrl: input.apiUrl,
|
|
2110
2114
|
...input.org ? { org: input.org } : {}
|
|
2111
2115
|
});
|
|
2112
|
-
const { callOpenApiOperation } = await import("./open-api-client-
|
|
2116
|
+
const { callOpenApiOperation } = await import("./open-api-client-PBYR7O3V.js");
|
|
2113
2117
|
return callOpenApiOperation({
|
|
2114
2118
|
operationId: cliCredentialBootstrapOperationId,
|
|
2115
2119
|
params,
|
|
@@ -2135,7 +2139,7 @@ async function accessTokenForOpenApi(input) {
|
|
|
2135
2139
|
apiUrl: input.apiUrl
|
|
2136
2140
|
});
|
|
2137
2141
|
if (explicit) return explicit;
|
|
2138
|
-
const { ensureOpenApiCredentials } = await import("./auth-
|
|
2142
|
+
const { ensureOpenApiCredentials } = await import("./auth-ENMPCMEF.js");
|
|
2139
2143
|
const session = await ensureOpenApiCredentials({
|
|
2140
2144
|
mcpUrl: input.mcpUrl,
|
|
2141
2145
|
apiUrl: input.apiUrl,
|
|
@@ -2220,4 +2224,4 @@ export {
|
|
|
2220
2224
|
resolvePackagePublishTarget,
|
|
2221
2225
|
shouldUseApiToken
|
|
2222
2226
|
};
|
|
2223
|
-
//# sourceMappingURL=chunk-
|
|
2227
|
+
//# sourceMappingURL=chunk-AQA2OWJV.js.map
|