@tokenrip/cli 1.3.12 → 1.3.13
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/AGENTS.md +26 -2
- package/README.md +12 -0
- package/SKILL.md +75 -4
- package/dist/cjs/commands/admin-mountedagent.js +50 -0
- package/dist/cjs/commands/admin-mountedagent.js.map +1 -0
- package/dist/cjs/commands/mountedagent.js +246 -4
- package/dist/cjs/commands/mountedagent.js.map +1 -1
- package/dist/cjs/formatters.js +142 -1
- package/dist/cjs/formatters.js.map +1 -1
- package/dist/cli.js +159 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/admin-mountedagent.d.ts +5 -0
- package/dist/commands/admin-mountedagent.js +43 -0
- package/dist/commands/admin-mountedagent.js.map +1 -0
- package/dist/commands/mountedagent.d.ts +38 -0
- package/dist/commands/mountedagent.js +235 -6
- package/dist/commands/mountedagent.js.map +1 -1
- package/dist/formatters.d.ts +8 -0
- package/dist/formatters.js +132 -0
- package/dist/formatters.js.map +1 -1
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -200,6 +200,7 @@ rip mountedagent publish <manifest.json> --publish --featured 10
|
|
|
200
200
|
# Inspect / list
|
|
201
201
|
rip mountedagent list # imprints you own
|
|
202
202
|
rip mountedagent show office-hours # owner-visible detail
|
|
203
|
+
rip mountedagent assets office-hours # every asset the imprint references
|
|
203
204
|
|
|
204
205
|
# Fork — personal default; --team makes it a team fork
|
|
205
206
|
rip mountedagent fork chief-of-staff
|
|
@@ -207,12 +208,35 @@ rip mountedagent fork chief-of-staff --team acme
|
|
|
207
208
|
rip mountedagent fork chief-of-staff --team acme --slug acme-cos
|
|
208
209
|
|
|
209
210
|
# Mount lifecycle
|
|
210
|
-
rip mountedagent mount <slug> [--team <slug>] [--name <label>]
|
|
211
|
+
rip mountedagent mount <slug> [--team <slug>] [--name <label>] [--context-from <file>]
|
|
211
212
|
rip mountedagent mounts # list caller's mounts
|
|
213
|
+
rip mountedagent show-mount <mount-id> # imprint version, context asset, layers
|
|
214
|
+
rip mountedagent mount-assets <mount-id> # every asset the mount touches
|
|
215
|
+
rip mountedagent mount-context <mount-id> # print mount context content
|
|
216
|
+
rip mountedagent mount-context <mount-id> --edit # open in $EDITOR, republish on save
|
|
217
|
+
rip mountedagent mount-context <mount-id> --from-file <f> # replace from a file
|
|
212
218
|
rip mountedagent mount-rename <mount-id> <new-name>
|
|
213
|
-
rip mountedagent unmount <mount-id> # cascade destroy
|
|
219
|
+
rip mountedagent unmount <mount-id> # cascade destroy (incl. context asset)
|
|
214
220
|
```
|
|
215
221
|
|
|
222
|
+
All `rip mountedagent *` commands default to human-readable output, except the four session-lifecycle commands below — those always emit JSON. Pass `--json` (or set `TOKENRIP_OUTPUT=json`) for the existing API shape on the rest. `rip mountedagent publish` prints `Published <slug> as v<N>` on success — `publishedVersion` auto-increments on every publish, and each mount snapshots `imprintVersionAtCreate` so the dashboard can flag drift.
|
|
223
|
+
|
|
224
|
+
**Session lifecycle (no MCP needed):**
|
|
225
|
+
|
|
226
|
+
```bash
|
|
227
|
+
rip --json mountedagent load <slug> [--team <slug>] # start a session
|
|
228
|
+
rip --json mountedagent record <session-token> [--collection <slug>] \
|
|
229
|
+
--row '<json>' # or --row-file <path>
|
|
230
|
+
rip --json mountedagent rewrite-asset <session-token> <logical-alias> \
|
|
231
|
+
--content-from <file> # or --content '<inline>'
|
|
232
|
+
rip --json mountedagent end <session-token> --summary "..." # add --artifact-from / --artifact-title
|
|
233
|
+
# to publish a wrap-up artifact
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
These four commands are 1:1 mirrors of the MCP tools `mountedagent_load`, `mountedagent_record`, `mountedagent_rewrite_asset`, `mountedagent_session_end`. The CLI surface exists primarily for the generic Claude Code bootloader (`/tokenrip <slug>` — install once via `curl -fsSL https://api.tokenrip.com/skills/tokenrip-bootloader.md > .claude/commands/tokenrip.md`) but is also useful for scripts that want a tracked session without an MCP harness. They always emit JSON because the bootloader pipes results through `jq`.
|
|
237
|
+
|
|
238
|
+
**Templating with mount context:** an imprint can declare an optional `mountIntake.starterAssetAlias` in its manifest. The starter is a markdown asset owned by the imprint owner that doubles as (a) the scaffold cloned into every new mount's per-instance context document, and (b) the intake guide Moa reads in mount-creation flow. The brain sees the populated context as a `<mount-context alias="…" version="…">…</mount-context>` block in the system prompt on every load. Different mounts of the same imprint get different context. Operators fine-tune via the dashboard or `rip mountedagent mount-context <id> --edit`. Empty contexts render as `<mount-context is-empty="true"/>` so brains can degrade deterministically.
|
|
239
|
+
|
|
216
240
|
Before publishing a manifest, publish every referenced brain asset alias:
|
|
217
241
|
|
|
218
242
|
```bash
|
package/README.md
CHANGED
|
@@ -58,6 +58,18 @@ Pass `--json` or set `TOKENRIP_OUTPUT=json` for machine-readable JSON output.
|
|
|
58
58
|
|
|
59
59
|
New to Tokenrip? `rip tour` runs a 5-step interactive walkthrough covering identity, publishing, operator access, and cross-agent collaboration.
|
|
60
60
|
|
|
61
|
+
## Run a published agent in Claude Code
|
|
62
|
+
|
|
63
|
+
The fastest path to using a Tokenrip agent imprint inside Claude Code:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
mkdir -p .claude/commands
|
|
67
|
+
curl -fsSL https://api.tokenrip.com/skills/tokenrip-bootloader.md \
|
|
68
|
+
> .claude/commands/tokenrip.md
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Then `/tokenrip <slug>` (e.g. `/tokenrip office-hours`) runs any published imprint with a tracked session — the slash command auto-installs `@tokenrip/cli`, registers a fresh agent identity if missing, and drives `rip mountedagent load|record|rewrite-asset|end` for you. See [getting-started/claude-code](https://tokenrip.com/docs/getting-started/claude-code).
|
|
72
|
+
|
|
61
73
|
```bash
|
|
62
74
|
rip tour # start or resume the interactive tour
|
|
63
75
|
rip tour --agent # prose script for an agent to walk an operator through
|
package/SKILL.md
CHANGED
|
@@ -8,8 +8,9 @@ description: >-
|
|
|
8
8
|
"send a message to an agent", "create a shareable link", "tokenrip",
|
|
9
9
|
"share my work", "collaborate with another agent", "create a team",
|
|
10
10
|
"share with my team", "group agents", "organize assets", "create a folder",
|
|
11
|
-
"file into folder", "publish a mounted agent", "administer a mounted agent"
|
|
12
|
-
|
|
11
|
+
"file into folder", "publish a mounted agent", "administer a mounted agent",
|
|
12
|
+
"run a Tokenrip agent", "load a mounted-agent session", "install /tokenrip".
|
|
13
|
+
version: 1.3.13
|
|
13
14
|
homepage: https://tokenrip.com
|
|
14
15
|
license: MIT
|
|
15
16
|
tags:
|
|
@@ -118,12 +119,37 @@ Use the tokenrip `rip` CLI command to collaborate with users and other agents. P
|
|
|
118
119
|
- Feature weight → `mountedagent publish <manifest.json> --publish --featured 10`
|
|
119
120
|
- Fork a template (personal default) → `mountedagent fork <template-slug>`
|
|
120
121
|
- Fork a template into a team → `mountedagent fork <template-slug> --team <slug>`
|
|
121
|
-
- Mount an imprint explicitly → `mountedagent mount <slug> [--team <slug>] [--name <label>]`
|
|
122
|
+
- Mount an imprint explicitly → `mountedagent mount <slug> [--team <slug>] [--name <label>] [--context-from <file>]`
|
|
122
123
|
- List your mounts → `mountedagent mounts`
|
|
124
|
+
- Drill into a mount → `mountedagent show-mount <mount-id>`
|
|
125
|
+
- Print or edit a mount's context document → `mountedagent mount-context <mount-id> [--edit | --from-file <file>]`
|
|
126
|
+
- List every asset a mount touches → `mountedagent mount-assets <mount-id>`
|
|
123
127
|
- Rename a mount → `mountedagent mount-rename <mount-id> <new-name>`
|
|
124
128
|
- Destroy a mount + its mount-owned memory → `mountedagent unmount <mount-id>`
|
|
125
129
|
- List imprints owned by you → `mountedagent list`
|
|
126
130
|
- Inspect one → `mountedagent show <slug>`
|
|
131
|
+
- List every asset an imprint references → `mountedagent assets <slug>`
|
|
132
|
+
|
|
133
|
+
**Session lifecycle** — drive a tracked session against a published imprint without an MCP harness (used by the generic `/tokenrip` Claude Code bootloader):
|
|
134
|
+
|
|
135
|
+
- Start a session → `rip --json mountedagent load <slug> [--team <slug>]` (returns session token + compiled brain envelope)
|
|
136
|
+
- Record a memory row → `rip --json mountedagent record <session-token> [--collection <slug>] --row '<json>'` (or `--row-file <path>`)
|
|
137
|
+
- Rewrite a memory asset → `rip --json mountedagent rewrite-asset <session-token> <logical-alias> --content-from <file>` (or `--content '<inline>'`)
|
|
138
|
+
- End a session → `rip --json mountedagent end <session-token> --summary "..."` (add `--artifact-from <file> --artifact-title "<title>"` to publish a wrap-up artifact)
|
|
139
|
+
|
|
140
|
+
Session lifecycle commands always emit JSON — they're designed for programmatic consumption (the generic bootloader pipes them through `jq`). Mirror of the MCP tools `mountedagent_load`, `mountedagent_record`, `mountedagent_rewrite_asset`, `mountedagent_session_end`.
|
|
141
|
+
|
|
142
|
+
All other `mountedagent` commands default to human-readable output. Pipe-friendly JSON: pass `--json` (or set `TOKENRIP_OUTPUT=json`).
|
|
143
|
+
|
|
144
|
+
**Generic Claude Code bootloader** — install once, run any published imprint with `/tokenrip <slug>`:
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
mkdir -p .claude/commands
|
|
148
|
+
curl -fsSL https://api.tokenrip.com/skills/tokenrip-bootloader.md \
|
|
149
|
+
> .claude/commands/tokenrip.md
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Then in Claude Code: `/tokenrip <slug>`. The slash command auto-installs the rip CLI, registers an agent identity if missing, calls `mountedagent load <slug>`, and drives the session through the four session-lifecycle commands above. Backed by the system asset `tokenrip-bootloader-skill` (owned by the platform agent).
|
|
127
153
|
|
|
128
154
|
**Publisher** — required for Tier 2 (listing imprints on `/agents`):
|
|
129
155
|
|
|
@@ -519,11 +545,56 @@ rip mountedagent fork chief-of-staff --team acme --slug acme-cos
|
|
|
519
545
|
# Mount lifecycle
|
|
520
546
|
rip mountedagent mount chief-of-staff # create explicit personal mount
|
|
521
547
|
rip mountedagent mount chief-of-staff --team acme --name engineering
|
|
548
|
+
rip mountedagent mount blog-writing --name flowers --context-from ./flowers-context.md
|
|
522
549
|
rip mountedagent mounts # list caller's mounts
|
|
550
|
+
rip mountedagent show-mount <mount-id> # drill-in: imprint version, context asset, layers
|
|
551
|
+
rip mountedagent mount-context <mount-id> # print mount context document
|
|
552
|
+
rip mountedagent mount-context <mount-id> --edit # open in $EDITOR, republish on save
|
|
553
|
+
rip mountedagent mount-context <mount-id> --from-file ./ctx.md # replace from a file
|
|
554
|
+
rip mountedagent mount-assets <mount-id> # every asset the mount touches
|
|
523
555
|
rip mountedagent mount-rename <mount-id> marketing
|
|
524
|
-
rip mountedagent unmount <mount-id> # destroys mount + mount-owned memory
|
|
556
|
+
rip mountedagent unmount <mount-id> # destroys mount + mount-owned memory + context asset
|
|
557
|
+
|
|
558
|
+
# Imprint inspection
|
|
559
|
+
rip mountedagent assets <slug> # every asset an imprint references
|
|
525
560
|
```
|
|
526
561
|
|
|
562
|
+
**Output formatting:** all `rip mountedagent *` commands default to human-readable. Pass `--json` for the existing JSON shape (or set `TOKENRIP_OUTPUT=json`).
|
|
563
|
+
|
|
564
|
+
**Imprint versioning:** `rip mountedagent publish` prints `Published <slug> as v<N>`. `publishedVersion` auto-increments on every publish. Mounts capture `imprintVersionAtCreate` so the dashboard can flag drift ("imprint has updated since this mount was created").
|
|
565
|
+
|
|
566
|
+
### Templating: per-mount context
|
|
567
|
+
|
|
568
|
+
Some imprints are template-shaped — same job, different focus per mount. A `blog-writing` imprint mounted once for "flowers" and once for "engineering" wants different theme, voice, and audience inputs. v2 supports this with **mount context** — a per-mount markdown asset the operator fills in once and the brain reads on every load (rendered as `<mount-context alias="…" version="…">…</mount-context>` in the system prompt).
|
|
569
|
+
|
|
570
|
+
To declare a template imprint, add `mountIntake.starterAssetAlias` to the manifest:
|
|
571
|
+
|
|
572
|
+
```json
|
|
573
|
+
{
|
|
574
|
+
"slug": "blog-writing",
|
|
575
|
+
"mountIntake": {
|
|
576
|
+
"starterAssetAlias": "blog-writing-context-starter"
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
The starter asset is owned by the imprint owner (or shared to the imprint team). It serves two roles in the same artifact: the **scaffold** cloned into every new mount's context document, and the **intake guide** Moa reads when running mount-creation flow. Section headings become the questions; HTML-style comments become the prompts:
|
|
582
|
+
|
|
583
|
+
```markdown
|
|
584
|
+
# Blog Context
|
|
585
|
+
|
|
586
|
+
## Theme
|
|
587
|
+
<!-- What is this blog about? One sentence. -->
|
|
588
|
+
|
|
589
|
+
## Voice
|
|
590
|
+
<!-- 3–5 adjectives that describe how posts should sound. -->
|
|
591
|
+
|
|
592
|
+
## Audience
|
|
593
|
+
<!-- Who reads this? -->
|
|
594
|
+
```
|
|
595
|
+
|
|
596
|
+
When a mount is created, the platform clones this starter into a per-mount asset and links it. Operators fine-tune via the dashboard or `rip mountedagent mount-context <id> --edit`. The brain receives an empty `<mount-context is-empty="true"/>` block when the operator hasn't filled it in yet — design brains that degrade gracefully on empty.
|
|
597
|
+
|
|
527
598
|
Typical publish order:
|
|
528
599
|
|
|
529
600
|
```bash
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.adminMountedAgentList = adminMountedAgentList;
|
|
4
|
+
exports.adminMountedAgentShow = adminMountedAgentShow;
|
|
5
|
+
exports.adminMountedAgentUnpublish = adminMountedAgentUnpublish;
|
|
6
|
+
exports.adminMountedAgentSetFeatured = adminMountedAgentSetFeatured;
|
|
7
|
+
exports.adminMountedAgentSessions = adminMountedAgentSessions;
|
|
8
|
+
const auth_client_js_1 = require("../auth-client.js");
|
|
9
|
+
const errors_js_1 = require("../errors.js");
|
|
10
|
+
const output_js_1 = require("../output.js");
|
|
11
|
+
async function adminMountedAgentList() {
|
|
12
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
13
|
+
const { data } = await client.get('/v0/admin/mountedagents');
|
|
14
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
15
|
+
}
|
|
16
|
+
async function adminMountedAgentShow(slug) {
|
|
17
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
18
|
+
const { data } = await client.get(`/v0/admin/mountedagents/${encodeURIComponent(slug)}`);
|
|
19
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
20
|
+
}
|
|
21
|
+
async function adminMountedAgentUnpublish(slug) {
|
|
22
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
23
|
+
const { data } = await client.patch(`/v0/admin/mountedagents/${encodeURIComponent(slug)}`, {
|
|
24
|
+
isPublished: false,
|
|
25
|
+
});
|
|
26
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
27
|
+
}
|
|
28
|
+
async function adminMountedAgentSetFeatured(slug, weightArg) {
|
|
29
|
+
let weight;
|
|
30
|
+
if (weightArg === 'clear' || weightArg === 'null') {
|
|
31
|
+
weight = null;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
weight = Number.parseInt(weightArg, 10);
|
|
35
|
+
if (!Number.isFinite(weight)) {
|
|
36
|
+
throw new errors_js_1.CliError('INVALID_FEATURED', 'Weight must be an integer or "clear"');
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
40
|
+
const { data } = await client.patch(`/v0/admin/mountedagents/${encodeURIComponent(slug)}`, {
|
|
41
|
+
isFeatured: weight,
|
|
42
|
+
});
|
|
43
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
44
|
+
}
|
|
45
|
+
async function adminMountedAgentSessions(slug) {
|
|
46
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
47
|
+
const { data } = await client.get(`/v0/admin/mountedagents/${encodeURIComponent(slug)}/sessions`);
|
|
48
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=admin-mountedagent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-mountedagent.js","sourceRoot":"","sources":["../../../src/commands/admin-mountedagent.ts"],"names":[],"mappings":";;AAIA,sDAIC;AAED,sDAIC;AAED,gEAMC;AAED,oEAeC;AAED,8DAMC;AA/CD,sDAAsD;AACtD,4CAAwC;AACxC,4CAA6C;AAEtC,KAAK,UAAU,qBAAqB;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAiB,GAAE,CAAC;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC7D,IAAA,yBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,IAAY;IACtD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAiB,GAAE,CAAC;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzF,IAAA,yBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAEM,KAAK,UAAU,0BAA0B,CAAC,IAAY;IAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAiB,GAAE,CAAC;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE;QACzF,WAAW,EAAE,KAAK;KACnB,CAAC,CAAC;IACH,IAAA,yBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAEM,KAAK,UAAU,4BAA4B,CAAC,IAAY,EAAE,SAAiB;IAChF,IAAI,MAAqB,CAAC;IAC1B,IAAI,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QAClD,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,oBAAQ,CAAC,kBAAkB,EAAE,sCAAsC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAiB,GAAE,CAAC;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE;QACzF,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;IACH,IAAA,yBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAEM,KAAK,UAAU,yBAAyB,CAAC,IAAY;IAC1D,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAiB,GAAE,CAAC;IACvC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAC/B,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAC/D,CAAC;IACF,IAAA,yBAAa,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC"}
|
|
@@ -6,13 +6,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.mountedAgentPublish = mountedAgentPublish;
|
|
7
7
|
exports.mountedAgentShow = mountedAgentShow;
|
|
8
8
|
exports.mountedAgentList = mountedAgentList;
|
|
9
|
+
exports.mountedAgentAssets = mountedAgentAssets;
|
|
9
10
|
exports.mountedAgentFork = mountedAgentFork;
|
|
10
11
|
exports.mountedAgentMount = mountedAgentMount;
|
|
11
12
|
exports.mountedAgentMounts = mountedAgentMounts;
|
|
12
13
|
exports.mountedAgentMountRename = mountedAgentMountRename;
|
|
14
|
+
exports.mountedAgentShowMount = mountedAgentShowMount;
|
|
15
|
+
exports.mountedAgentMountAssets = mountedAgentMountAssets;
|
|
16
|
+
exports.mountedAgentMountContext = mountedAgentMountContext;
|
|
13
17
|
exports.mountedAgentUnmount = mountedAgentUnmount;
|
|
18
|
+
exports.mountedAgentUnpublish = mountedAgentUnpublish;
|
|
19
|
+
exports.mountedAgentPublishToggle = mountedAgentPublishToggle;
|
|
20
|
+
exports.mountedAgentSetFeatured = mountedAgentSetFeatured;
|
|
21
|
+
exports.mountedAgentSetDisplay = mountedAgentSetDisplay;
|
|
22
|
+
exports.mountedAgentDelete = mountedAgentDelete;
|
|
23
|
+
exports.mountedAgentLoad = mountedAgentLoad;
|
|
24
|
+
exports.mountedAgentRecord = mountedAgentRecord;
|
|
25
|
+
exports.mountedAgentRewriteAsset = mountedAgentRewriteAsset;
|
|
26
|
+
exports.mountedAgentEnd = mountedAgentEnd;
|
|
14
27
|
const node_fs_1 = require("node:fs");
|
|
28
|
+
const node_os_1 = require("node:os");
|
|
15
29
|
const node_path_1 = __importDefault(require("node:path"));
|
|
30
|
+
const node_child_process_1 = require("node:child_process");
|
|
16
31
|
const auth_client_js_1 = require("../auth-client.js");
|
|
17
32
|
const errors_js_1 = require("../errors.js");
|
|
18
33
|
const formatters_js_1 = require("../formatters.js");
|
|
@@ -41,17 +56,22 @@ async function mountedAgentPublish(manifestPath, options) {
|
|
|
41
56
|
body.teamSlug = options.team;
|
|
42
57
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
43
58
|
const { data } = await client.post('/v0/mountedagents', body);
|
|
44
|
-
(0, output_js_1.outputSuccess)(data.data);
|
|
59
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgentPublished);
|
|
45
60
|
}
|
|
46
61
|
async function mountedAgentShow(slug) {
|
|
47
62
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
48
63
|
const { data } = await client.get(`/v0/mountedagents/mine/${encodeURIComponent(slug)}`);
|
|
49
|
-
(0, output_js_1.outputSuccess)(data.data);
|
|
64
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgent);
|
|
50
65
|
}
|
|
51
66
|
async function mountedAgentList() {
|
|
52
67
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
53
68
|
const { data } = await client.get('/v0/mountedagents/mine');
|
|
54
|
-
(0, output_js_1.outputSuccess)(data.data);
|
|
69
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgentList);
|
|
70
|
+
}
|
|
71
|
+
async function mountedAgentAssets(slug) {
|
|
72
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
73
|
+
const { data } = await client.get(`/v0/mountedagents/mine/${encodeURIComponent(slug)}/assets`);
|
|
74
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatImprintAssets);
|
|
55
75
|
}
|
|
56
76
|
async function mountedAgentFork(templateSlug, options) {
|
|
57
77
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
@@ -76,7 +96,7 @@ async function mountedAgentFork(templateSlug, options) {
|
|
|
76
96
|
slug: fork.slug,
|
|
77
97
|
path: node_path_1.default.relative(root, scaffoldRoot),
|
|
78
98
|
nextStep: `/moa --iterate ${fork.slug}`,
|
|
79
|
-
});
|
|
99
|
+
}, formatters_js_1.formatMountedAgentScaffold);
|
|
80
100
|
}
|
|
81
101
|
async function mountedAgentMount(imprintSlug, options) {
|
|
82
102
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
@@ -85,6 +105,8 @@ async function mountedAgentMount(imprintSlug, options) {
|
|
|
85
105
|
body.teamSlug = options.team;
|
|
86
106
|
if (options.name)
|
|
87
107
|
body.name = options.name;
|
|
108
|
+
if (options.contextFrom)
|
|
109
|
+
body.contextMd = (0, node_fs_1.readFileSync)(options.contextFrom, 'utf-8');
|
|
88
110
|
const { data } = await client.post('/v0/mounts', body);
|
|
89
111
|
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMount);
|
|
90
112
|
}
|
|
@@ -98,11 +120,130 @@ async function mountedAgentMountRename(mountId, newName) {
|
|
|
98
120
|
const { data } = await client.patch(`/v0/mounts/${encodeURIComponent(mountId)}`, { name: newName });
|
|
99
121
|
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMount);
|
|
100
122
|
}
|
|
123
|
+
async function mountedAgentShowMount(mountId) {
|
|
124
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
125
|
+
const { data } = await client.get(`/v0/mounts/${encodeURIComponent(mountId)}`);
|
|
126
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountDrillIn);
|
|
127
|
+
}
|
|
128
|
+
async function mountedAgentMountAssets(mountId) {
|
|
129
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
130
|
+
const { data } = await client.get(`/v0/mounts/${encodeURIComponent(mountId)}/assets`);
|
|
131
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountAssets);
|
|
132
|
+
}
|
|
133
|
+
async function mountedAgentMountContext(mountId, options) {
|
|
134
|
+
if (options.fromFile && options.edit) {
|
|
135
|
+
throw new errors_js_1.CliError('INVALID_MOUNT_CONTEXT', 'Use either --from-file or --edit, not both');
|
|
136
|
+
}
|
|
137
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
138
|
+
const { data } = await client.get(`/v0/mounts/${encodeURIComponent(mountId)}/context`);
|
|
139
|
+
const current = data.data;
|
|
140
|
+
const publicId = current.contextAsset?.publicId;
|
|
141
|
+
if (!publicId) {
|
|
142
|
+
throw new errors_js_1.CliError('MOUNT_CONTEXT_NOT_FOUND', 'This mount does not have a context asset');
|
|
143
|
+
}
|
|
144
|
+
if (options.fromFile) {
|
|
145
|
+
const content = (0, node_fs_1.readFileSync)(options.fromFile, 'utf-8');
|
|
146
|
+
const { data: updated } = await client.post(`/v0/assets/${encodeURIComponent(publicId)}/versions`, {
|
|
147
|
+
type: 'markdown',
|
|
148
|
+
content,
|
|
149
|
+
});
|
|
150
|
+
(0, output_js_1.outputSuccess)({ ...current, updatedVersion: updated.data.version }, formatters_js_1.formatMountContext);
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
if (options.edit) {
|
|
154
|
+
const editor = process.env.EDITOR || process.env.VISUAL;
|
|
155
|
+
if (!editor)
|
|
156
|
+
throw new errors_js_1.CliError('EDITOR_REQUIRED', 'Set $EDITOR or use --from-file');
|
|
157
|
+
const dir = (0, node_fs_1.mkdtempSync)(node_path_1.default.join((0, node_os_1.tmpdir)(), 'tokenrip-mount-context-'));
|
|
158
|
+
const file = node_path_1.default.join(dir, 'context.md');
|
|
159
|
+
(0, node_fs_1.writeFileSync)(file, current.content ?? '');
|
|
160
|
+
const result = (0, node_child_process_1.spawnSync)(editor, [file], { stdio: 'inherit' });
|
|
161
|
+
if (result.status !== 0) {
|
|
162
|
+
(0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
|
|
163
|
+
throw new errors_js_1.CliError('EDITOR_FAILED', `$EDITOR exited with status ${result.status}`);
|
|
164
|
+
}
|
|
165
|
+
const content = (0, node_fs_1.readFileSync)(file, 'utf-8');
|
|
166
|
+
(0, node_fs_1.rmSync)(dir, { recursive: true, force: true });
|
|
167
|
+
const { data: updated } = await client.post(`/v0/assets/${encodeURIComponent(publicId)}/versions`, {
|
|
168
|
+
type: 'markdown',
|
|
169
|
+
content,
|
|
170
|
+
});
|
|
171
|
+
(0, output_js_1.outputSuccess)({ ...current, updatedVersion: updated.data.version }, formatters_js_1.formatMountContext);
|
|
172
|
+
return;
|
|
173
|
+
}
|
|
174
|
+
(0, output_js_1.outputSuccess)(current, formatters_js_1.formatMountContext);
|
|
175
|
+
}
|
|
101
176
|
async function mountedAgentUnmount(mountId) {
|
|
102
177
|
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
103
178
|
await client.delete(`/v0/mounts/${encodeURIComponent(mountId)}`);
|
|
104
179
|
(0, output_js_1.outputSuccess)({ id: mountId, unmounted: true }, formatters_js_1.formatUnmounted);
|
|
105
180
|
}
|
|
181
|
+
async function mountedAgentUnpublish(slug) {
|
|
182
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
183
|
+
const { data } = await client.patch(`/v0/mountedagents/${encodeURIComponent(slug)}`, { isPublished: false });
|
|
184
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgent);
|
|
185
|
+
}
|
|
186
|
+
async function mountedAgentPublishToggle(slug) {
|
|
187
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
188
|
+
const { data: current } = await client.get(`/v0/mountedagents/mine/${encodeURIComponent(slug)}`);
|
|
189
|
+
const next = !current.data.isPublished;
|
|
190
|
+
const { data } = await client.patch(`/v0/mountedagents/${encodeURIComponent(slug)}`, { isPublished: next });
|
|
191
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgent);
|
|
192
|
+
}
|
|
193
|
+
async function mountedAgentSetFeatured(slug, weightArg) {
|
|
194
|
+
let weight;
|
|
195
|
+
if (weightArg === 'clear' || weightArg === 'null') {
|
|
196
|
+
weight = null;
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
weight = Number.parseInt(weightArg, 10);
|
|
200
|
+
if (!Number.isFinite(weight)) {
|
|
201
|
+
throw new errors_js_1.CliError('INVALID_FEATURED', 'Weight must be an integer or "clear"');
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
205
|
+
const { data } = await client.patch(`/v0/mountedagents/${encodeURIComponent(slug)}`, { isFeatured: weight });
|
|
206
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgent);
|
|
207
|
+
}
|
|
208
|
+
async function mountedAgentSetDisplay(slug, options) {
|
|
209
|
+
const body = {};
|
|
210
|
+
if (options.displayName !== undefined)
|
|
211
|
+
body.displayName = options.displayName;
|
|
212
|
+
if (options.tagline !== undefined)
|
|
213
|
+
body.tagline = options.tagline;
|
|
214
|
+
if (options.description !== undefined)
|
|
215
|
+
body.description = options.description;
|
|
216
|
+
if (options.capability !== undefined && options.capability.length > 0)
|
|
217
|
+
body.capabilities = options.capability;
|
|
218
|
+
if (Object.keys(body).length === 0) {
|
|
219
|
+
throw new errors_js_1.CliError('NO_FIELDS', 'Pass at least one of --display-name / --tagline / --description / --capability');
|
|
220
|
+
}
|
|
221
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
222
|
+
const { data } = await client.patch(`/v0/mountedagents/${encodeURIComponent(slug)}/display`, body);
|
|
223
|
+
(0, output_js_1.outputSuccess)(data.data, formatters_js_1.formatMountedAgent);
|
|
224
|
+
}
|
|
225
|
+
async function mountedAgentDelete(slug, options) {
|
|
226
|
+
if (!options.force) {
|
|
227
|
+
if (!process.stdin.isTTY) {
|
|
228
|
+
throw new errors_js_1.CliError('CONFIRMATION_REQUIRED', 'Pass --force or run interactively');
|
|
229
|
+
}
|
|
230
|
+
const ok = await confirmTypedSlug(slug);
|
|
231
|
+
if (!ok) {
|
|
232
|
+
(0, output_js_1.outputSuccess)({ slug, deleted: false, reason: 'cancelled' });
|
|
233
|
+
return;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
237
|
+
await client.delete(`/v0/mountedagents/${encodeURIComponent(slug)}`);
|
|
238
|
+
(0, output_js_1.outputSuccess)({ slug, deleted: true });
|
|
239
|
+
}
|
|
240
|
+
async function confirmTypedSlug(slug) {
|
|
241
|
+
process.stdout.write(`Type "${slug}" to confirm delete: `);
|
|
242
|
+
const input = await new Promise((resolve) => {
|
|
243
|
+
process.stdin.once('data', (buf) => resolve(buf.toString().trim()));
|
|
244
|
+
});
|
|
245
|
+
return input === slug;
|
|
246
|
+
}
|
|
106
247
|
function readManifest(path) {
|
|
107
248
|
try {
|
|
108
249
|
return JSON.parse((0, node_fs_1.readFileSync)(path, 'utf-8'));
|
|
@@ -114,4 +255,105 @@ function readManifest(path) {
|
|
|
114
255
|
throw new errors_js_1.CliError('INVALID_JSON', `Manifest file must contain valid JSON: ${path}`);
|
|
115
256
|
}
|
|
116
257
|
}
|
|
258
|
+
// ─── Session lifecycle ──────────────────────────────────────────────
|
|
259
|
+
//
|
|
260
|
+
// These four commands mirror the MCP tool surface (`mountedagent_load`,
|
|
261
|
+
// `_record`, `_rewrite_asset`, `_session_end`) so the bootloader skill can
|
|
262
|
+
// drive a tracked session from Claude Code via Bash, no MCP setup required.
|
|
263
|
+
//
|
|
264
|
+
// JSON-only output by design — the bootloader pipes results into `jq`. The
|
|
265
|
+
// global `--json` flag is already implied for these (we always write
|
|
266
|
+
// machine-readable JSON regardless of `outputFormat` config).
|
|
267
|
+
async function mountedAgentLoad(slug, options) {
|
|
268
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
269
|
+
const body = {};
|
|
270
|
+
if (options.team)
|
|
271
|
+
body.team = options.team;
|
|
272
|
+
const { data } = await client.post(`/v0/mountedagents/${encodeURIComponent(slug)}/sessions`, body);
|
|
273
|
+
// No human formatter — load output is structured for programmatic use only.
|
|
274
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
275
|
+
}
|
|
276
|
+
async function mountedAgentRecord(sessionToken, options) {
|
|
277
|
+
const payload = readJsonOption(options.row, options.rowFile, '--row / --row-file');
|
|
278
|
+
const body = { payload };
|
|
279
|
+
if (options.collection)
|
|
280
|
+
body.collection = options.collection;
|
|
281
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
282
|
+
const { data } = await client.post(`/v0/ma-sessions/${encodeURIComponent(sessionToken)}/rows`, body);
|
|
283
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
284
|
+
}
|
|
285
|
+
async function mountedAgentRewriteAsset(sessionToken, alias, options) {
|
|
286
|
+
if (options.content !== undefined && options.contentFrom !== undefined) {
|
|
287
|
+
throw new errors_js_1.CliError('INVALID_REWRITE', 'Use either --content or --content-from, not both');
|
|
288
|
+
}
|
|
289
|
+
let content;
|
|
290
|
+
if (options.content !== undefined) {
|
|
291
|
+
content = options.content;
|
|
292
|
+
}
|
|
293
|
+
else if (options.contentFrom !== undefined) {
|
|
294
|
+
content = readContentFile(options.contentFrom);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
throw new errors_js_1.CliError('INVALID_REWRITE', 'Pass --content <string> or --content-from <file>');
|
|
298
|
+
}
|
|
299
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
300
|
+
const { data } = await client.post(`/v0/ma-sessions/${encodeURIComponent(sessionToken)}/asset-rewrites`, { alias, content });
|
|
301
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
302
|
+
}
|
|
303
|
+
async function mountedAgentEnd(sessionToken, options) {
|
|
304
|
+
const body = {};
|
|
305
|
+
if (options.summary !== undefined)
|
|
306
|
+
body.summary = options.summary;
|
|
307
|
+
if (options.artifactFrom !== undefined) {
|
|
308
|
+
if (!options.artifactTitle) {
|
|
309
|
+
throw new errors_js_1.CliError('INVALID_END', '--artifact-title is required when --artifact-from is set');
|
|
310
|
+
}
|
|
311
|
+
body.artifact = {
|
|
312
|
+
title: options.artifactTitle,
|
|
313
|
+
content: readContentFile(options.artifactFrom),
|
|
314
|
+
isPublic: options.artifactPublic ?? false,
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
const { client } = (0, auth_client_js_1.requireAuthClient)();
|
|
318
|
+
const { data } = await client.post(`/v0/ma-sessions/${encodeURIComponent(sessionToken)}/end`, body);
|
|
319
|
+
(0, output_js_1.outputSuccess)(data.data);
|
|
320
|
+
}
|
|
321
|
+
function readJsonOption(inline, filePath, label) {
|
|
322
|
+
if (inline !== undefined && filePath !== undefined) {
|
|
323
|
+
throw new errors_js_1.CliError('INVALID_RECORD', `Pass either ${label} inline or as a file, not both`);
|
|
324
|
+
}
|
|
325
|
+
let raw;
|
|
326
|
+
if (inline !== undefined) {
|
|
327
|
+
raw = inline;
|
|
328
|
+
}
|
|
329
|
+
else if (filePath !== undefined) {
|
|
330
|
+
raw = readContentFile(filePath);
|
|
331
|
+
}
|
|
332
|
+
else {
|
|
333
|
+
throw new errors_js_1.CliError('INVALID_RECORD', `Provide ${label} <json>`);
|
|
334
|
+
}
|
|
335
|
+
try {
|
|
336
|
+
const parsed = JSON.parse(raw);
|
|
337
|
+
if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
338
|
+
throw new errors_js_1.CliError('INVALID_JSON', `${label} must decode to a JSON object`);
|
|
339
|
+
}
|
|
340
|
+
return parsed;
|
|
341
|
+
}
|
|
342
|
+
catch (err) {
|
|
343
|
+
if (err instanceof errors_js_1.CliError)
|
|
344
|
+
throw err;
|
|
345
|
+
throw new errors_js_1.CliError('INVALID_JSON', `${label} is not valid JSON: ${err.message}`);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
function readContentFile(path) {
|
|
349
|
+
try {
|
|
350
|
+
return (0, node_fs_1.readFileSync)(path, 'utf-8');
|
|
351
|
+
}
|
|
352
|
+
catch (err) {
|
|
353
|
+
if (err.code === 'ENOENT') {
|
|
354
|
+
throw new errors_js_1.CliError('FILE_NOT_FOUND', `File not found: ${path}`);
|
|
355
|
+
}
|
|
356
|
+
throw err;
|
|
357
|
+
}
|
|
358
|
+
}
|
|
117
359
|
//# sourceMappingURL=mountedagent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mountedagent.js","sourceRoot":"","sources":["../../../src/commands/mountedagent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mountedagent.js","sourceRoot":"","sources":["../../../src/commands/mountedagent.ts"],"names":[],"mappings":"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"}
|