@kodycodes/cli 1.26.3 → 1.27.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 +175 -167
- package/dist/add-mcp-install.d.ts +1 -1
- package/dist/api-token.d.ts +1 -1
- package/dist/{auth-4FW6GCLG.js → auth-6ZE6QQXA.js} +13 -8
- package/dist/auth-bootstrap.d.ts +1 -1
- package/dist/auth.d.ts +27 -3
- package/dist/bin.js +18 -18
- package/dist/capability-proxy.d.ts +1 -1
- package/dist/{chunk-64XN367G.js → chunk-2EQJQJA3.js} +66 -44
- package/dist/chunk-2EQJQJA3.js.map +6 -0
- package/dist/{chunk-D55XPY3T.js → chunk-2IHISXHN.js} +58 -27
- package/dist/chunk-2IHISXHN.js.map +6 -0
- package/dist/{chunk-SMURF26I.js → chunk-2XPH7L2P.js} +1 -1
- package/dist/chunk-2XPH7L2P.js.map +6 -0
- package/dist/{chunk-RM34N3KI.js → chunk-3H72XY5R.js} +16 -6
- package/dist/chunk-3H72XY5R.js.map +6 -0
- package/dist/{chunk-G4YN6XP5.js → chunk-4GIFJVGT.js} +1 -1
- package/dist/chunk-4GIFJVGT.js.map +6 -0
- package/dist/{chunk-R4IUV5P5.js → chunk-5JIRHJQP.js} +397 -45
- package/dist/chunk-5JIRHJQP.js.map +6 -0
- package/dist/{chunk-TIL35OWA.js → chunk-5YQBD7PN.js} +238 -146
- package/dist/chunk-5YQBD7PN.js.map +6 -0
- package/dist/chunk-5ZBJAP6G.js +2005 -0
- package/dist/chunk-5ZBJAP6G.js.map +6 -0
- package/dist/{chunk-6XQP5SWX.js → chunk-6ZYUGXVW.js} +1 -1
- package/dist/chunk-6ZYUGXVW.js.map +6 -0
- package/dist/{chunk-OVGXPRSY.js → chunk-7PRJ36I5.js} +4 -1
- package/dist/{chunk-OVGXPRSY.js.map → chunk-7PRJ36I5.js.map} +1 -1
- package/dist/{chunk-IHP6PV6X.js → chunk-BTL3PJ2H.js} +1 -12
- package/dist/chunk-BTL3PJ2H.js.map +6 -0
- package/dist/{chunk-VQS5YSCI.js → chunk-CPS7HW4T.js} +8 -6
- package/dist/{chunk-VQS5YSCI.js.map → chunk-CPS7HW4T.js.map} +1 -1
- package/dist/{chunk-BISUL7CE.js → chunk-DW5UTJ6T.js} +14 -5
- package/dist/chunk-DW5UTJ6T.js.map +6 -0
- package/dist/{target-3QHY7JT4.js → chunk-EJXEVGWF.js} +8 -6
- package/dist/chunk-EJXEVGWF.js.map +6 -0
- package/dist/{chunk-SXHULGL4.js → chunk-JOMBXQOS.js} +18 -9
- package/dist/chunk-JOMBXQOS.js.map +6 -0
- package/dist/{chunk-EOCV74B2.js → chunk-OZDWOZLV.js} +41 -25
- package/dist/chunk-OZDWOZLV.js.map +6 -0
- package/dist/{chunk-75RZUXQL.js → chunk-SLNAWWQK.js} +4 -2
- package/dist/{chunk-75RZUXQL.js.map → chunk-SLNAWWQK.js.map} +1 -1
- package/dist/{chunk-XDCOWU5R.js → chunk-SPEP3DUT.js} +64 -14
- package/dist/chunk-SPEP3DUT.js.map +6 -0
- package/dist/{chunk-64IM6G4Z.js → chunk-TUUFQYWP.js} +13 -6
- package/dist/chunk-TUUFQYWP.js.map +6 -0
- package/dist/{chunk-QHBCP4OB.js → chunk-UW6AWLXX.js} +6 -7
- package/dist/chunk-W2SAFAT4.js +1563 -0
- package/dist/chunk-W2SAFAT4.js.map +6 -0
- package/dist/{chunk-XOPPGRUP.js → chunk-WMROAVLX.js} +14 -6
- package/dist/chunk-WMROAVLX.js.map +6 -0
- package/dist/{chunk-BPGY4IE7.js → chunk-XV6D6HSG.js} +1 -1
- package/dist/chunk-XV6D6HSG.js.map +6 -0
- package/dist/{chunk-PDWCKWQF.js → chunk-YDWTXEKQ.js} +26 -10
- package/dist/chunk-YDWTXEKQ.js.map +6 -0
- package/dist/{chunk-JWEFKKAD.js → chunk-ZILB2HWE.js} +1 -1
- package/dist/chunk-ZILB2HWE.js.map +6 -0
- package/dist/cli.js +19 -19
- package/dist/defaults.d.ts +1 -1
- package/dist/detect-running-hosts.d.ts +1 -1
- package/dist/dev/dev-assets.d.ts +1 -1
- package/dist/dev/dev-registry.d.ts +1 -1
- package/dist/dev/error-page.d.ts +1 -1
- package/dist/dev/live-reload.d.ts +2 -2
- package/dist/{dev-command-3LX234N6.js → dev-command-TZ2EB4J3.js} +236 -111
- package/dist/dev-command-TZ2EB4J3.js.map +6 -0
- package/dist/dev-command.d.ts +1 -1
- package/dist/discover-login-identity.d.ts +6 -7
- package/dist/discover-org.d.ts +2 -3
- package/dist/generated/openapi-routes.d.ts +6 -0
- package/dist/{git-credential-FUE3JE3T.js → git-credential-INB2UV4C.js} +32 -25
- package/dist/git-credential-INB2UV4C.js.map +6 -0
- package/dist/{install-ZML2TCDG.js → install-ONEJRYZ3.js} +147 -113
- package/dist/install-ONEJRYZ3.js.map +6 -0
- package/dist/install.d.ts +1 -1
- package/dist/{local-execute-SZV6XN4T.js → local-execute-YCXHVAVM.js} +81 -54
- package/dist/local-execute-YCXHVAVM.js.map +6 -0
- package/dist/local-execute-auth.d.ts +2 -2
- package/dist/local-execute.d.ts +1 -1
- package/dist/local-gateway-fetch-forward.d.ts +2 -2
- package/dist/local-package-run-WZVZAHK3.js +23 -0
- package/dist/local-package-run.d.ts +2 -2
- package/dist/mock/ensure-msw.d.ts +9 -1
- package/dist/mock/load-package-mocks.d.ts +1 -2
- package/dist/mock/mock-fetch-gateway.d.ts +4 -5
- package/dist/mock/mock-supported.d.ts +1 -1
- package/dist/{mock-dep-resolve-TVABDNR7.js → mock-dep-resolve-B5ZH4U3H.js} +14 -6
- package/dist/mock-dep-resolve-B5ZH4U3H.js.map +6 -0
- package/dist/{mock-fetch-gateway-B5TFGGQS.js → mock-fetch-gateway-FWVNTLP2.js} +7 -6
- package/dist/{mock-local-deps-5SZT3PWT.js → mock-local-deps-2VVNJLFF.js} +20 -17
- package/dist/mock-local-deps-2VVNJLFF.js.map +6 -0
- package/dist/mock-local-deps.d.ts +1 -1
- package/dist/{mock-server-SV2IKC4I.js → mock-server-6BWDQQBE.js} +8 -7
- package/dist/oauth-browser.d.ts +42 -0
- package/dist/oauth-provider.d.ts +14 -19
- package/dist/{open-api-client-DVVMLY7P.js → open-api-client-SR4B7265.js} +11 -10
- package/dist/open-api-client.d.ts +2 -1
- package/dist/{org-X7B5BI4R.js → org-535LB4PD.js} +8 -6
- package/dist/org-535LB4PD.js.map +6 -0
- package/dist/org-resolve.d.ts +2 -0
- package/dist/package-app-dev.d.ts +2 -2
- package/dist/{package-manifest-QH2RU64C.js → package-manifest-DFF6XCPV.js} +5 -4
- package/dist/{remote-execute-QMQDVHOY.js → remote-execute-JN6DRFEU.js} +49 -30
- package/dist/remote-execute-JN6DRFEU.js.map +6 -0
- package/dist/remote-execute.d.ts +3 -3
- package/dist/{setup-git-5KCUBYPB.js → setup-git-MHK563LB.js} +11 -12
- package/dist/setup-git.d.ts +1 -1
- package/dist/{skill-ENPATRIW.js → skill-D74XVI6T.js} +26 -8
- package/dist/skill-D74XVI6T.js.map +6 -0
- package/dist/{store-WTMRH527.js → store-27J4CQZ2.js} +4 -4
- package/dist/{structured-error-C65GQ53Z.js → structured-error-5MLWXYR3.js} +4 -3
- package/dist/structured-error.d.ts +1 -1
- package/dist/target-33ATHDUF.js +17 -0
- package/package.json +6 -5
- package/skills/kody/SKILL.md +53 -50
- package/dist/chunk-4D6ORNXY.js +0 -24404
- package/dist/chunk-4D6ORNXY.js.map +0 -6
- package/dist/chunk-64IM6G4Z.js.map +0 -6
- package/dist/chunk-64XN367G.js.map +0 -6
- package/dist/chunk-6XQP5SWX.js.map +0 -6
- package/dist/chunk-BISUL7CE.js.map +0 -6
- package/dist/chunk-BPGY4IE7.js.map +0 -6
- package/dist/chunk-D55XPY3T.js.map +0 -6
- package/dist/chunk-EOCV74B2.js.map +0 -6
- package/dist/chunk-FBVNFWR6.js +0 -437
- package/dist/chunk-FBVNFWR6.js.map +0 -6
- package/dist/chunk-G4YN6XP5.js.map +0 -6
- package/dist/chunk-G6LJWROP.js +0 -18
- package/dist/chunk-G6LJWROP.js.map +0 -6
- package/dist/chunk-IHP6PV6X.js.map +0 -6
- package/dist/chunk-JWEFKKAD.js.map +0 -6
- package/dist/chunk-LWNB26KO.js +0 -147
- package/dist/chunk-LWNB26KO.js.map +0 -6
- package/dist/chunk-PDWCKWQF.js.map +0 -6
- package/dist/chunk-R4IUV5P5.js.map +0 -6
- package/dist/chunk-RM34N3KI.js.map +0 -6
- package/dist/chunk-RTWUNV76.js +0 -309
- package/dist/chunk-RTWUNV76.js.map +0 -6
- package/dist/chunk-SMURF26I.js.map +0 -6
- package/dist/chunk-SXHULGL4.js.map +0 -6
- package/dist/chunk-TIL35OWA.js.map +0 -6
- package/dist/chunk-XDCOWU5R.js.map +0 -6
- package/dist/chunk-XOPPGRUP.js.map +0 -6
- package/dist/dev-command-3LX234N6.js.map +0 -6
- package/dist/git-credential-FUE3JE3T.js.map +0 -6
- package/dist/install-ZML2TCDG.js.map +0 -6
- package/dist/local-execute-SZV6XN4T.js.map +0 -6
- package/dist/local-package-run-2TMCAZZ2.js +0 -23
- package/dist/mcp-G2AWTIXR.js +0 -21
- package/dist/mcp.d.ts +0 -34
- package/dist/mock-dep-resolve-TVABDNR7.js.map +0 -6
- package/dist/mock-local-deps-5SZT3PWT.js.map +0 -6
- package/dist/org-X7B5BI4R.js.map +0 -6
- package/dist/remote-execute-QMQDVHOY.js.map +0 -6
- package/dist/skill-ENPATRIW.js.map +0 -6
- package/dist/target-3QHY7JT4.js.map +0 -6
- package/dist/webapi-NTVP4BO3.js +0 -2482
- package/dist/webapi-NTVP4BO3.js.map +0 -6
- /package/dist/{auth-4FW6GCLG.js.map → auth-6ZE6QQXA.js.map} +0 -0
- /package/dist/{chunk-QHBCP4OB.js.map → chunk-UW6AWLXX.js.map} +0 -0
- /package/dist/{local-package-run-2TMCAZZ2.js.map → local-package-run-WZVZAHK3.js.map} +0 -0
- /package/dist/{mcp-G2AWTIXR.js.map → mock-fetch-gateway-FWVNTLP2.js.map} +0 -0
- /package/dist/{mock-fetch-gateway-B5TFGGQS.js.map → mock-server-6BWDQQBE.js.map} +0 -0
- /package/dist/{mock-server-SV2IKC4I.js.map → open-api-client-SR4B7265.js.map} +0 -0
- /package/dist/{open-api-client-DVVMLY7P.js.map → package-manifest-DFF6XCPV.js.map} +0 -0
- /package/dist/{package-manifest-QH2RU64C.js.map → setup-git-MHK563LB.js.map} +0 -0
- /package/dist/{setup-git-5KCUBYPB.js.map → store-27J4CQZ2.js.map} +0 -0
- /package/dist/{store-WTMRH527.js.map → structured-error-5MLWXYR3.js.map} +0 -0
- /package/dist/{structured-error-C65GQ53Z.js.map → target-33ATHDUF.js.map} +0 -0
package/skills/kody/SKILL.md
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: kody
|
|
3
3
|
description: >
|
|
4
|
-
Install Kody as a remote MCP server, then use `search` / MCP tools and
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
Install Kody as a remote MCP server, then use `search` / MCP tools and prefer
|
|
5
|
+
`kody execute --local` when the CLI and Node are available. Use when the user
|
|
6
|
+
mentions Kody, kody.codes, durable agent tasks, or wants to search/execute via
|
|
7
|
+
Kody.
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Kody
|
|
11
11
|
|
|
12
12
|
Kody is a remote MCP personal assistant. Install it as an MCP server in this
|
|
13
|
-
agent for `search`, `api`, and discovery. Prefer local CLI execute when Node ≥22
|
|
13
|
+
agent for `search`, `api`, and discovery. Prefer local CLI execute when Node ≥22
|
|
14
|
+
and `@kodycodes/cli` are available. Use MCP / hosted paths when the CLI or Node
|
|
15
|
+
cannot run.
|
|
14
16
|
|
|
15
17
|
`@kodycodes/cli` installs host MCP config and runs local execute against real
|
|
16
18
|
secrets while keeping `kody:runtime` hops on CapabilityProxy.
|
|
@@ -21,9 +23,9 @@ secrets while keeping `kody:runtime` hops on CapabilityProxy.
|
|
|
21
23
|
npx @kodycodes/cli install
|
|
22
24
|
```
|
|
23
25
|
|
|
24
|
-
That command lists **running local** agents and writes each host's remote
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
That command lists **running local** agents and writes each host's remote MCP
|
|
27
|
+
entry for `https://kody.codes/mcp`. Host OAuth stays in that client — do not run
|
|
28
|
+
`kody login` for the host connection.
|
|
27
29
|
|
|
28
30
|
After install, use the Kody MCP tools in this agent for discovery and Open API:
|
|
29
31
|
|
|
@@ -31,11 +33,11 @@ After install, use the Kody MCP tools in this agent for discovery and Open API:
|
|
|
31
33
|
- `api` — call one Open API operation directly (no sandbox)
|
|
32
34
|
- Prefer `search` before composing work
|
|
33
35
|
|
|
34
|
-
For one-off modules, smoke tests, and composition: when Node ≥22 and the CLI
|
|
35
|
-
|
|
36
|
-
[Local CLI execute](https://kody.codes/docs/local-execute)). If `--local`
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
For one-off modules, smoke tests, and composition: when Node ≥22 and the CLI are
|
|
37
|
+
available, prefer `npx @kodycodes/cli execute --local` (see
|
|
38
|
+
[Local CLI execute](https://kody.codes/docs/local-execute)). If `--local` cannot
|
|
39
|
+
run, use Open API / MCP `api`, or fix the environment — do **not** use hosted
|
|
40
|
+
MCP `execute` for agent work when a local or Open API path exists.
|
|
39
41
|
|
|
40
42
|
For web-based clients (ChatGPT, Claude.ai, Grok), point the user at
|
|
41
43
|
https://kody.codes/onboarding.
|
|
@@ -61,12 +63,11 @@ kody whoami
|
|
|
61
63
|
kody logout
|
|
62
64
|
```
|
|
63
65
|
|
|
64
|
-
The CLI opens a browser for Kody OAuth (PKCE + Client ID Metadata Documents).
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
`$XDG_CONFIG_HOME/kody`.
|
|
66
|
+
The CLI opens a browser for Kody OAuth (PKCE + Client ID Metadata Documents). If
|
|
67
|
+
a browser cannot open, it prints the URL. Tokens (access + refresh) are stored
|
|
68
|
+
in the OS keychain on macOS, Windows, and Linux (Secret Service). Linux without
|
|
69
|
+
Secret Service — including headless machines that only have an in-memory kernel
|
|
70
|
+
keyring — falls back to a `0600` file under `$XDG_CONFIG_HOME/kody`.
|
|
70
71
|
|
|
71
72
|
Never ask the user to paste tokens into chat.
|
|
72
73
|
|
|
@@ -80,45 +81,47 @@ machine instead (Node.js 22 or newer; older Node fails before workerd starts).
|
|
|
80
81
|
Modules with static `kody:@…` imports keep `--local`: the CLI fetches stamped
|
|
81
82
|
package modules via `POST /v1/local-execute/package-graph` and embeds them in
|
|
82
83
|
local workerd (CapabilityProxy only for per-call `kody:runtime` hops — not a
|
|
83
|
-
whole-module cloud defer). If that package-graph API is missing, `--local`
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
whole-module cloud defer). If that package-graph API is missing, `--local` fails
|
|
85
|
+
clearly rather than silently billing a remote execute. `--file` entries are
|
|
86
|
+
bundled (relative imports and npm packages; `kody:*` external) before workerd
|
|
87
|
+
loads them, matching hosted execute / publish. `--code` and stdin are not
|
|
88
|
+
rewritten.
|
|
88
89
|
|
|
89
90
|
For `execute --local` auth: `--token` / `KODY_API_TOKEN` wins when set;
|
|
90
91
|
otherwise a stored token from `kody auth bootstrap --code` (after MCP
|
|
91
|
-
`cliCredentialBootstrap`); otherwise a valid `kody login` session (OAuth
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
`https://api.kody.codes` and `https://kody.codes/mcp`; preview workers pair
|
|
95
|
-
|
|
96
|
-
|
|
92
|
+
`cliCredentialBootstrap`); otherwise a valid `kody login` session (OAuth access
|
|
93
|
+
token as Bearer only when the API and MCP URLs are paired — never print it,
|
|
94
|
+
never mint via `tokenCreate` under the hood). The default pair is
|
|
95
|
+
`https://api.kody.codes` and `https://kody.codes/mcp`; preview workers pair when
|
|
96
|
+
the API worker name adds `-api`, and loopback hosts pair at any port. For
|
|
97
|
+
another API origin, use `auth bootstrap --api-url <origin>` or set
|
|
97
98
|
`KODY_API_TOKEN`. A PR preview's API host is
|
|
98
99
|
`https://kody-pr-<n>-api.<subdomain>.workers.dev`, not the app origin
|
|
99
|
-
`kody-pr-<n>` (which 404s `/v1/*` with HTML). Prefer bootstrap over
|
|
100
|
-
MCP so `kody_at_…` never appears in chat.
|
|
101
|
-
CapabilityProxy / package-graph
|
|
102
|
-
(https://github.com/kentcdodds/kody/issues/2812), use bootstrap or mint a
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
100
|
+
`kody-pr-<n>` (which 404s `/v1/*` with HTML). Prefer bootstrap over
|
|
101
|
+
`tokenCreate` for agents already on MCP so `kody_at_…` never appears in chat.
|
|
102
|
+
Until the Open API accepts MCP OAuth on CapabilityProxy / package-graph
|
|
103
|
+
(https://github.com/kentcdodds/kody/issues/2812), use bootstrap or mint a scoped
|
|
104
|
+
token with the MCP `api` tool `tokenCreate` — include `local-execute` plus the
|
|
105
|
+
capability scopes the module calls — and pass `--token` or `KODY_API_TOKEN`. If
|
|
106
|
+
none of those are available, the CLI error says that (bootstrap → login →
|
|
107
|
+
tokenCreate for CI). `insufficient_scope` names the missing scope and prints the
|
|
108
|
+
exact command to mint a token that adds it:
|
|
108
109
|
`npx @kodycodes/cli auth bootstrap --lifetime short|long --scopes <list>` after
|
|
109
|
-
`kody login`, or
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
Publish a package after
|
|
110
|
+
`kody login`, or
|
|
111
|
+
`cliCredentialBootstrap({ lifetime: "short"|"long", scopes: [...] })` from MCP
|
|
112
|
+
(hints preserve the current token's lifetime class when known). Default
|
|
113
|
+
bootstrap scopes stay least-privilege (no `package:write`), and `--scopes`
|
|
114
|
+
replaces them, so list every scope you need. Publish a package after
|
|
115
|
+
`packageGetGitRemote` clone/push with
|
|
114
116
|
`kody package publish <@owner/leaf|package_id>` (thin
|
|
115
|
-
`packagePublishExternalPush` wrapper; same auth as `kody api`).
|
|
116
|
-
|
|
117
|
-
|
|
117
|
+
`packagePublishExternalPush` wrapper; same auth as `kody api`). See and change
|
|
118
|
+
who can use a package (teams and org members of the `--org` org) with
|
|
119
|
+
`kody package collaborators <package>`,
|
|
118
120
|
`kody package grant <package> --team <slug>|--user <username> --preset use|contribute|manage`,
|
|
119
|
-
and
|
|
120
|
-
|
|
121
|
-
|
|
121
|
+
and
|
|
122
|
+
`kody package revoke <package> --team <slug>|--user <username>|--grant <id>`.
|
|
123
|
+
These need a token with `package:manage_access`. `feature_disabled` means the
|
|
124
|
+
account `local-execute` flag is off. Never read MCP OAuth tokens from the host.
|
|
122
125
|
|
|
123
126
|
```bash
|
|
124
127
|
# Agents on MCP:
|