@super-one/cli 0.67.0-alpha → 0.67.0-alpha.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/MANIFEST.json +2 -2
- package/lib/cli.mjs +154 -12
- package/package.json +1 -1
package/MANIFEST.json
CHANGED
package/lib/cli.mjs
CHANGED
|
@@ -359,7 +359,7 @@ var init_interaction_memory = __esm({
|
|
|
359
359
|
});
|
|
360
360
|
|
|
361
361
|
// ../../packages/shared/src/superone-tool-descriptions.ts
|
|
362
|
-
var MANUAL_READ_DESCRIPTION, SETUP_MINI_APP_DEV_DESCRIPTION, REGISTER_DEV_MINIAPP_DESCRIPTION, PACK_MINI_APP_DESCRIPTION, UPDATE_SUPERONE_TYPES_DESCRIPTION, RENAME_SESSION_DESCRIPTION, SESSION_TAG_DESCRIPTION, SESSION_TAG_LIST_DESCRIPTION, PROJECT_LIST_DESCRIPTION, SESSION_LIST_DESCRIPTION, SESSION_SEARCH_DESCRIPTION, SESSION_READ_DESCRIPTION, SESSION_TAGS_FILTER_DESCRIPTION, SESSION_TAG_MATCH_DESCRIPTION, SESSION_CLEANUP_DESCRIPTION, CONFIG_READ_DESCRIPTION, CONFIG_APPLY_DESCRIPTION, LIST_MEDIA_PROVIDERS_DESCRIPTION, GENERATE_IMAGE_DESCRIPTION, GENERATE_VIDEO_DESCRIPTION, VIDEO_STATUS_DESCRIPTION, SESSION_LIST_AGENTS_DESCRIPTION, SESSION_REQUEST_AGENTS_DESCRIPTION, LAUNCH_SUMMARY_DESCRIPTION, LAUNCH_TASK_DESCRIPTION, LAUNCH_MODE_DESCRIPTION, LAUNCH_SESSION_ID_DESCRIPTION, LAUNCH_PERMISSION_MODE_DESCRIPTION, LAUNCH_CWD_DESCRIPTION, LAUNCH_WORKTREE_DESCRIPTION, LAUNCH_BRANCH_NAME_DESCRIPTION, SESSION_START_DESCRIPTION, SESSION_SEND_DESCRIPTION, SESSION_RETRIEVE_DESCRIPTION, AUTOMATION_LIST_DESCRIPTION, AUTOMATION_APPLY_DESCRIPTION, AUTOMATION_DELETE_DESCRIPTION;
|
|
362
|
+
var MANUAL_READ_DESCRIPTION, SETUP_MINI_APP_DEV_DESCRIPTION, REGISTER_DEV_MINIAPP_DESCRIPTION, PACK_MINI_APP_DESCRIPTION, UPDATE_SUPERONE_TYPES_DESCRIPTION, RENAME_SESSION_DESCRIPTION, SESSION_TAG_DESCRIPTION, SESSION_TAG_LIST_DESCRIPTION, PROJECT_LIST_DESCRIPTION, SESSION_LIST_DESCRIPTION, SESSION_SEARCH_DESCRIPTION, SESSION_READ_DESCRIPTION, SESSION_TAGS_FILTER_DESCRIPTION, SESSION_TAG_MATCH_DESCRIPTION, SESSION_CLEANUP_DESCRIPTION, CONFIG_READ_DESCRIPTION, CONFIG_APPLY_DESCRIPTION, LIST_MEDIA_PROVIDERS_DESCRIPTION, GENERATE_IMAGE_DESCRIPTION, GENERATE_VIDEO_DESCRIPTION, VIDEO_STATUS_DESCRIPTION, SESSION_LIST_AGENTS_DESCRIPTION, SESSION_REQUEST_AGENTS_DESCRIPTION, LAUNCH_SUMMARY_DESCRIPTION, LAUNCH_TASK_DESCRIPTION, LAUNCH_MODE_DESCRIPTION, LAUNCH_SESSION_ID_DESCRIPTION, LAUNCH_PERMISSION_MODE_DESCRIPTION, LAUNCH_CWD_DESCRIPTION, LAUNCH_WORKTREE_DESCRIPTION, LAUNCH_BRANCH_NAME_DESCRIPTION, SESSION_START_DESCRIPTION, SESSION_SEND_DESCRIPTION, SESSION_RETRIEVE_DESCRIPTION, AUTOMATION_LIST_DESCRIPTION, AUTOMATION_APPLY_DESCRIPTION, AUTOMATION_DELETE_DESCRIPTION, TERMINAL_TABS_DESCRIPTION, TERMINAL_SNAPSHOT_DESCRIPTION, TERMINAL_ACT_DESCRIPTION, TERMINAL_WAIT_FOR_DESCRIPTION;
|
|
363
363
|
var init_superone_tool_descriptions = __esm({
|
|
364
364
|
"../../packages/shared/src/superone-tool-descriptions.ts"() {
|
|
365
365
|
"use strict";
|
|
@@ -400,6 +400,10 @@ var init_superone_tool_descriptions = __esm({
|
|
|
400
400
|
AUTOMATION_LIST_DESCRIPTION = "List project automations with schedule and last/next run. Pass id for full prompt, agentConfig, and schedule; filter by query or enabled. Find unknown ids here before automation_apply or automation_delete; check for duplicates before creation when needed.";
|
|
401
401
|
AUTOMATION_APPLY_DESCRIPTION = 'Create or update a project automation. create needs name, prompt, schedule; update needs id plus any field (pause via enabled=false). Call automation_list first for ids; remove with automation_delete. Always opens a user confirmation dialog and applies nothing without approval. For schedule and agentConfig shapes see read_manual({ domain: "product", topic: "automation" }).';
|
|
402
402
|
AUTOMATION_DELETE_DESCRIPTION = "Permanently delete project automations by id (from automation_list). Always opens a user confirmation dialog. Current project only. Prefer automation_list to choose ids first.";
|
|
403
|
+
TERMINAL_TABS_DESCRIPTION = "Manage terminal tabs in the activity panel for processes that outlive one command or need input: dev servers, watch modes, REPLs, TUIs, ssh, wizards. One-shot commands (build, test, git) belong in your shell tool. action=list (default) returns a TOON table: tab / title / cwd / status / foreground / control. action=run asks the user to approve `command`, types it into a new (or a given idle) tab and returns the screen; you control the tab only while that command is in the foreground. action=attach asks to control a command already running in a user tab. action=close kills a tab \u2014 never one the user is using. Follow up with terminal_act / terminal_wait_for / terminal_snapshot on the tab id.";
|
|
404
|
+
TERMINAL_SNAPSHOT_DESCRIPTION = "Read a terminal tab as rendered text. `include` picks sections: screen (visible rows, default), scrollback (last `tail` lines including scrolled-off output), cursor, meta (title, cwd, status, foreground command, control). Use screen for prompts and full-screen programs, scrollback for server logs. Output over the tail cap is spilled to a file and returned as path + preview. Prefer this before terminal_act; use terminal_wait_for instead of polling.";
|
|
405
|
+
TERMINAL_ACT_DESCRIPTION = 'Send input to a terminal tab you control. actions is an array, e.g. [{type:"type",text:"yes"}] or [{type:"key",key:"Ctrl+C"}]; types: type (Enter by default), key (Enter, Tab, Escape, Up, Ctrl+C, F1\u2026), raw, resize, wait. ONE action per call by default; batch 2\u201320 only for an uninterruptible sequence (answer a wizard). Fail-fast. expect holds the call open until a screen condition is met (text, textGone, idleMs, exited); the screen after the batch is returned. Rejected with status=rejected when the approved command has exited or the user took over \u2014 do not retry, call terminal_tabs run again or ask. description is shown to the user instead of raw keystrokes.';
|
|
406
|
+
TERMINAL_WAIT_FOR_DESCRIPTION = "Block until a terminal tab reaches a state; conditions AND-combine: text (substring visible on screen or in new output), textGone, idleMs (no output for that long), exited (foreground command finished). Use after terminal_tabs run or terminal_act when output arrives asynchronously (a server banner, a build finishing). timeoutMs default 15000, max 120000. Do not sleep+poll with terminal_snapshot yourself.";
|
|
403
407
|
}
|
|
404
408
|
});
|
|
405
409
|
|
|
@@ -2786,7 +2790,7 @@ var WIDGET_SHOW_DESCRIPTION;
|
|
|
2786
2790
|
var init_widget_tool_descriptions = __esm({
|
|
2787
2791
|
"../../packages/shared/src/generative-ui/widget-tool-descriptions.ts"() {
|
|
2788
2792
|
"use strict";
|
|
2789
|
-
WIDGET_SHOW_DESCRIPTION = `Render SVG, diagrams, charts,
|
|
2793
|
+
WIDGET_SHOW_DESCRIPTION = `Render SVG, diagrams, charts, interactive HTML, or a SuperOne native surface (media gallery, files previewer) inline in chat. Pass widget_code for new content, or template + data to reuse a saved template. To show media you produced yourself, pass a @native/* template so it renders in SuperOne's own gallery (viewer, download, drag-out) instead of a lookalike you build in widget_code \u2014 call widget_list_templates for the list. To hand the user several files to look at one after another (screenshots, reports, changed sources), pass @native/files-previewer with data.files. Before the first new widget in a session, load the relevant design modules with read_manual({ domain: "widget", modules: [...] }).`;
|
|
2790
2794
|
}
|
|
2791
2795
|
});
|
|
2792
2796
|
|
|
@@ -3622,6 +3626,128 @@ var init_host_action_browser_perf_descriptors = __esm({
|
|
|
3622
3626
|
}
|
|
3623
3627
|
});
|
|
3624
3628
|
|
|
3629
|
+
// ../../packages/shared/src/environment/host-action-terminal-descriptors.ts
|
|
3630
|
+
var TERMINAL_WAIT_CONDITION_PROPERTIES, TERMINAL_ACTION_INPUT_SCHEMA, HOST_ACTION_TERMINAL_DESCRIPTORS;
|
|
3631
|
+
var init_host_action_terminal_descriptors = __esm({
|
|
3632
|
+
"../../packages/shared/src/environment/host-action-terminal-descriptors.ts"() {
|
|
3633
|
+
"use strict";
|
|
3634
|
+
init_superone_tool_descriptions();
|
|
3635
|
+
TERMINAL_WAIT_CONDITION_PROPERTIES = {
|
|
3636
|
+
text: { type: "string", description: "Substring that must appear on screen or in recent output." },
|
|
3637
|
+
textGone: { type: "string", description: "Substring that must be absent from the screen." },
|
|
3638
|
+
idleMs: { type: "number", description: "No output for this many milliseconds." },
|
|
3639
|
+
exited: { type: "boolean", description: "The controlled command has left the foreground (or the tab exited)." }
|
|
3640
|
+
};
|
|
3641
|
+
TERMINAL_ACTION_INPUT_SCHEMA = {
|
|
3642
|
+
type: "object",
|
|
3643
|
+
description: "type: text (+Enter unless enter=false) \xB7 key: named key (Enter, Tab, Escape, Up, Ctrl+C, Alt+b, F1\u2026) with optional repeat \xB7 raw: bytes verbatim \xB7 resize: cols/rows \xB7 wait: ms (\u22645000, inside a batch).",
|
|
3644
|
+
properties: {
|
|
3645
|
+
type: { type: "string", enum: ["type", "key", "raw", "resize", "wait"] },
|
|
3646
|
+
text: { type: "string" },
|
|
3647
|
+
enter: { type: "boolean", description: "type only. Default true." },
|
|
3648
|
+
key: { type: "string" },
|
|
3649
|
+
repeat: { type: "number", description: "key only. 1\u2013100." },
|
|
3650
|
+
bytes: { type: "string" },
|
|
3651
|
+
cols: { type: "number" },
|
|
3652
|
+
rows: { type: "number" },
|
|
3653
|
+
ms: { type: "number" }
|
|
3654
|
+
},
|
|
3655
|
+
required: ["type"],
|
|
3656
|
+
additionalProperties: false
|
|
3657
|
+
};
|
|
3658
|
+
HOST_ACTION_TERMINAL_DESCRIPTORS = [
|
|
3659
|
+
{
|
|
3660
|
+
name: "terminal_tabs",
|
|
3661
|
+
description: TERMINAL_TABS_DESCRIPTION,
|
|
3662
|
+
inputSchema: {
|
|
3663
|
+
type: "object",
|
|
3664
|
+
properties: {
|
|
3665
|
+
action: { type: "string", enum: ["list", "run", "attach", "close"], description: "Default list." },
|
|
3666
|
+
tab: {
|
|
3667
|
+
type: ["string", "array"],
|
|
3668
|
+
items: { type: "string" },
|
|
3669
|
+
minItems: 1,
|
|
3670
|
+
description: "Tab id from list. run: reuse this idle tab instead of opening one. attach/close: the target (close accepts an array)."
|
|
3671
|
+
},
|
|
3672
|
+
command: { type: "string", description: "run only. The command the user approves and that is typed into the shell." },
|
|
3673
|
+
cwd: { type: "string", description: "run only. Absolute working directory for a new tab. Default: the session working directory." },
|
|
3674
|
+
title: { type: "string", description: "run only. Tab title shown to the user. Default: the command name." },
|
|
3675
|
+
size: {
|
|
3676
|
+
type: "object",
|
|
3677
|
+
properties: { cols: { type: "number" }, rows: { type: "number" } },
|
|
3678
|
+
required: ["cols", "rows"],
|
|
3679
|
+
additionalProperties: false,
|
|
3680
|
+
description: "run only. Initial size of a new tab. Default 120\xD740."
|
|
3681
|
+
},
|
|
3682
|
+
yieldMs: { type: "number", description: "run only. How long to wait for the command to start and go quiet before returning. Default 5000, max 30000." },
|
|
3683
|
+
description: { type: "string", description: "Shown to the user instead of raw arguments." }
|
|
3684
|
+
},
|
|
3685
|
+
additionalProperties: false
|
|
3686
|
+
}
|
|
3687
|
+
},
|
|
3688
|
+
{
|
|
3689
|
+
name: "terminal_snapshot",
|
|
3690
|
+
description: TERMINAL_SNAPSHOT_DESCRIPTION,
|
|
3691
|
+
inputSchema: {
|
|
3692
|
+
type: "object",
|
|
3693
|
+
properties: {
|
|
3694
|
+
tab: { type: "string", description: "Tab id from terminal_tabs." },
|
|
3695
|
+
include: {
|
|
3696
|
+
type: "array",
|
|
3697
|
+
items: { type: "string", enum: ["screen", "scrollback", "cursor", "meta"] },
|
|
3698
|
+
description: "Sections to return. Default [screen]."
|
|
3699
|
+
},
|
|
3700
|
+
tail: { type: "number", description: "scrollback only. Lines from the end. Default 200, max 2000." }
|
|
3701
|
+
},
|
|
3702
|
+
required: ["tab"],
|
|
3703
|
+
additionalProperties: false
|
|
3704
|
+
}
|
|
3705
|
+
},
|
|
3706
|
+
{
|
|
3707
|
+
name: "terminal_act",
|
|
3708
|
+
description: TERMINAL_ACT_DESCRIPTION,
|
|
3709
|
+
inputSchema: {
|
|
3710
|
+
type: "object",
|
|
3711
|
+
properties: {
|
|
3712
|
+
tab: { type: "string", description: "Tab id from terminal_tabs." },
|
|
3713
|
+
actions: {
|
|
3714
|
+
type: "array",
|
|
3715
|
+
items: TERMINAL_ACTION_INPUT_SCHEMA,
|
|
3716
|
+
minItems: 1,
|
|
3717
|
+
maxItems: 20,
|
|
3718
|
+
description: "Normally one action. Use 2\u201320 only for a single uninterruptible sequence; they run in order, fail-fast."
|
|
3719
|
+
},
|
|
3720
|
+
expect: {
|
|
3721
|
+
type: "object",
|
|
3722
|
+
properties: TERMINAL_WAIT_CONDITION_PROPERTIES,
|
|
3723
|
+
additionalProperties: false,
|
|
3724
|
+
description: "Completion condition to wait for after the batch."
|
|
3725
|
+
},
|
|
3726
|
+
timeoutMs: { type: "number", description: "Maximum wait for expect. Default 15000, max 60000." },
|
|
3727
|
+
description: { type: "string", description: "Shown to the user instead of raw keystrokes." }
|
|
3728
|
+
},
|
|
3729
|
+
required: ["tab", "actions"],
|
|
3730
|
+
additionalProperties: false
|
|
3731
|
+
}
|
|
3732
|
+
},
|
|
3733
|
+
{
|
|
3734
|
+
name: "terminal_wait_for",
|
|
3735
|
+
description: TERMINAL_WAIT_FOR_DESCRIPTION,
|
|
3736
|
+
inputSchema: {
|
|
3737
|
+
type: "object",
|
|
3738
|
+
properties: {
|
|
3739
|
+
tab: { type: "string", description: "Tab id from terminal_tabs." },
|
|
3740
|
+
...TERMINAL_WAIT_CONDITION_PROPERTIES,
|
|
3741
|
+
timeoutMs: { type: "number", description: "Maximum wait in milliseconds. Default 15000, max 120000." }
|
|
3742
|
+
},
|
|
3743
|
+
required: ["tab"],
|
|
3744
|
+
additionalProperties: false
|
|
3745
|
+
}
|
|
3746
|
+
}
|
|
3747
|
+
];
|
|
3748
|
+
}
|
|
3749
|
+
});
|
|
3750
|
+
|
|
3625
3751
|
// ../../packages/shared/src/environment/host-action-superone-descriptors.ts
|
|
3626
3752
|
var HOST_ACTION_SUPERONE_TOOL_DESCRIPTORS;
|
|
3627
3753
|
var init_host_action_superone_descriptors = __esm({
|
|
@@ -3639,6 +3765,7 @@ var init_host_action_superone_descriptors = __esm({
|
|
|
3639
3765
|
init_host_action_automation_descriptors();
|
|
3640
3766
|
init_host_action_device_descriptors();
|
|
3641
3767
|
init_host_action_browser_perf_descriptors();
|
|
3768
|
+
init_host_action_terminal_descriptors();
|
|
3642
3769
|
HOST_ACTION_SUPERONE_TOOL_DESCRIPTORS = [
|
|
3643
3770
|
...INTERACTION_MEMORY_TOOL_DEFS,
|
|
3644
3771
|
...HOST_ACTION_COLLABORATION_DESCRIPTORS,
|
|
@@ -3650,6 +3777,7 @@ var init_host_action_superone_descriptors = __esm({
|
|
|
3650
3777
|
...HOST_ACTION_COMPUTER_DESCRIPTORS,
|
|
3651
3778
|
...HOST_ACTION_WIDGET_DESCRIPTORS,
|
|
3652
3779
|
...HOST_ACTION_AUTOMATION_DESCRIPTORS,
|
|
3780
|
+
...HOST_ACTION_TERMINAL_DESCRIPTORS,
|
|
3653
3781
|
...HOST_ACTION_DEVICE_DESCRIPTORS,
|
|
3654
3782
|
...HOST_ACTION_BROWSER_PERF_DESCRIPTORS
|
|
3655
3783
|
];
|
|
@@ -8448,17 +8576,19 @@ function superoneHostContext(extra) {
|
|
|
8448
8576
|
${superoneSystemPrompt(extra)}
|
|
8449
8577
|
</superone-host-context>`;
|
|
8450
8578
|
}
|
|
8451
|
-
var SUPERONE_SYSTEM_PROMPT_APPEND;
|
|
8579
|
+
var SUPERONE_SYSTEM_PROMPT_APPEND, CLAUDE_TOOL_NAMING_APPEND, CLAUDE_SYSTEM_PROMPT_APPEND;
|
|
8452
8580
|
var init_superone_system_prompt = __esm({
|
|
8453
8581
|
"../../packages/shared/src/superone-system-prompt.ts"() {
|
|
8454
8582
|
"use strict";
|
|
8455
8583
|
init_browser_memory();
|
|
8456
8584
|
SUPERONE_SYSTEM_PROMPT_APPEND = `You are running inside SuperOne, a desktop GUI app. Your replies render as rich Markdown in a chat panel.
|
|
8457
8585
|
|
|
8458
|
-
SuperOne tools cover browser and device control, media, widgets, sessions, collaboration, automations, settings, and mini-apps. Read only the manual topics needed for the task; reuse guidance already in context.
|
|
8586
|
+
SuperOne tools cover browser, terminal and device control, media, widgets, sessions, collaboration, automations, settings, and mini-apps. Read only the manual topics needed for the task; reuse guidance already in context.
|
|
8459
8587
|
|
|
8460
8588
|
Prefer SuperOne's built-in tools unless the user explicitly requests another tool or no suitable SuperOne tool is available.
|
|
8461
8589
|
|
|
8590
|
+
Terminals: your own shell tool stays the default for one-shot commands (build, test, git, scripts) that finish on their own. Anything that keeps running or waits for input \u2014 dev servers, watch/hot-reload modes, docker compose up, REPLs, full-screen programs, ssh, interactive wizards \u2014 goes through terminal_tabs run instead of being backgrounded in the shell tool (\`&\`, nohup, setsid): the shell would orphan the process and lose its output, while a terminal tab keeps it visible to the user and lets you keep working with it. Then terminal_wait_for for the ready line or prompt, terminal_snapshot to read the screen, terminal_act to type or send keys, and terminal_tabs close once its job is done. Each command is approved by the user and your control ends when it exits; a rejected result means stop and ask, not retry.
|
|
8591
|
+
|
|
8462
8592
|
Experience memory:
|
|
8463
8593
|
SuperOne keeps per-target experience notes on this node: browser_memory_* (domain), computer_memory_* (platform + appId), device_memory_* (platform + appId).
|
|
8464
8594
|
|
|
@@ -8478,11 +8608,12 @@ Response rendering:
|
|
|
8478
8608
|
- Images: use  to display an inline image.
|
|
8479
8609
|
- Videos: use  to display an inline video player.
|
|
8480
8610
|
- Audio: use  to display an inline audio player.
|
|
8611
|
+
- Several media or files in a row (screenshots, recordings, PDFs, changed sources): show them in one card with widget_show({ template: "@native/files-previewer", data: { files: [{ path, note }] } }) instead of stacking embeds or links. A single file stays inline.
|
|
8481
8612
|
- Wrap a link or media destination in angle brackets whenever the path contains spaces or parentheses, e.g. . A bare path with spaces is not valid Markdown and renders as literal text.
|
|
8482
8613
|
|
|
8483
|
-
Show your work: embed a screenshot or recording when the user requested the capture or it directly supports a visual claim in your reply, and say what to look at. Screenshots needed to inspect content are allowed; reuse them as evidence when relevant. Omit captures that only document navigation or content extraction unless requested; ordinary reading needs no screenshot for the reply. Each file at most once per reply. Embed the user's existing media only when they ask to see or play it; otherwise link the file.
|
|
8614
|
+
Show your work: embed a screenshot or recording when the user requested the capture or it directly supports a visual claim in your reply, and say what to look at. Screenshots needed to inspect content are allowed; reuse them as evidence when relevant. Omit captures that only document navigation or content extraction unless requested; ordinary reading needs no screenshot for the reply. Each file at most once per reply. Embed the user's existing media only when they ask to see or play it; otherwise link the file. Two or more evidence files go in one @native/files-previewer card. For capture methods, read product/show-your-work.
|
|
8484
8615
|
|
|
8485
|
-
Leave surfaces as you found them: before ending a task, close the browser tabs you opened and no longer need (browser_tabs close), release the devices you hold (device_release), and quit the desktop apps you launched (no tool needed \u2014 quit the app itself, never kill by process name). What the user had open before, or is using now, stays open.
|
|
8616
|
+
Leave surfaces as you found them: before ending a task, close the browser tabs you opened and no longer need (browser_tabs close), close terminal tabs you opened whose command has finished (terminal_tabs close) \u2014 a server the user asked for stays running, say so instead \u2014 release the devices you hold (device_release), and quit the desktop apps you launched (no tool needed \u2014 quit the app itself, never kill by process name). What the user had open before, or is using now, stays open.
|
|
8486
8617
|
|
|
8487
8618
|
Media generated by SuperOne's generation tools is displayed automatically. Do not embed or link the result again; describe it briefly.
|
|
8488
8619
|
|
|
@@ -8490,6 +8621,10 @@ Session organization:
|
|
|
8490
8621
|
On the first substantive user request, call session_rename as your first tool call, before answering. Always include \`tags\`: 1\u20134 short kebab-case labels; reuse existing tags from session_tag_list when they fit, or invent suitable ones. When the session's purpose is fixing an issue or reviewing a PR, add a ref tag issue-N / pr-N in addition to the labels.
|
|
8491
8622
|
|
|
8492
8623
|
Rename again when the title no longer describes the task. Update tags with session_tag as needed \u2014 in particular add pr-N right after opening a PR, so later sessions on that PR can find this one. Use a short title with a verb and concrete object in the user's language, without surrounding quotes or trailing punctuation.`;
|
|
8624
|
+
CLAUDE_TOOL_NAMING_APPEND = `Tool naming: SuperOne tools are named above without their server prefix. In your tool list they are mcp__superone__<name> (e.g. mcp__superone__terminal_tabs); when one is deferred, load it with ToolSearch by that full name.`;
|
|
8625
|
+
CLAUDE_SYSTEM_PROMPT_APPEND = `${SUPERONE_SYSTEM_PROMPT_APPEND}
|
|
8626
|
+
|
|
8627
|
+
${CLAUDE_TOOL_NAMING_APPEND}`;
|
|
8493
8628
|
}
|
|
8494
8629
|
});
|
|
8495
8630
|
|
|
@@ -10764,7 +10899,7 @@ function isStaticHostOwnedSuperoneToolQualified(qualifiedName) {
|
|
|
10764
10899
|
function isNeverAutoAllowSuperoneBareName(bare) {
|
|
10765
10900
|
return NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES.includes(bare);
|
|
10766
10901
|
}
|
|
10767
|
-
var MCP_SUPERONE_TOOL_PREFIX, BROWSER_PRIMITIVE_TOOL_NAMES, BROWSER_ACTION_TOOL_NAMES, BROWSER_LEGACY_TOOL_NAMES, BROWSER_COMPACT_TOOL_NAMES, BROWSER_TOOL_NAMES, DEVICE_AGENT_TOOL_NAMES, BUILT_IN_SUPERONE_TOOL_NAMES, MINIAPP_LIST_BARE_NAME, MINIAPP_CALL_BARE_NAME, NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES, STATIC_HOST_OWNED_SUPERONE_QUALIFIED_TOOL_NAMES;
|
|
10902
|
+
var MCP_SUPERONE_TOOL_PREFIX, BROWSER_PRIMITIVE_TOOL_NAMES, BROWSER_ACTION_TOOL_NAMES, BROWSER_LEGACY_TOOL_NAMES, BROWSER_COMPACT_TOOL_NAMES, BROWSER_TOOL_NAMES, DEVICE_AGENT_TOOL_NAMES, TERMINAL_TOOL_NAMES, BUILT_IN_SUPERONE_TOOL_NAMES, MINIAPP_LIST_BARE_NAME, MINIAPP_CALL_BARE_NAME, NEVER_AUTO_ALLOW_SUPERONE_BARE_NAMES, STATIC_HOST_OWNED_SUPERONE_QUALIFIED_TOOL_NAMES;
|
|
10768
10903
|
var init_superone_host_owned_tools = __esm({
|
|
10769
10904
|
"../../packages/shared/src/superone-host-owned-tools.ts"() {
|
|
10770
10905
|
"use strict";
|
|
@@ -10841,6 +10976,12 @@ var init_superone_host_owned_tools = __esm({
|
|
|
10841
10976
|
"device_wait_for",
|
|
10842
10977
|
"device_release"
|
|
10843
10978
|
];
|
|
10979
|
+
TERMINAL_TOOL_NAMES = [
|
|
10980
|
+
"terminal_tabs",
|
|
10981
|
+
"terminal_snapshot",
|
|
10982
|
+
"terminal_act",
|
|
10983
|
+
"terminal_wait_for"
|
|
10984
|
+
];
|
|
10844
10985
|
BUILT_IN_SUPERONE_TOOL_NAMES = [
|
|
10845
10986
|
"browser_memory_read",
|
|
10846
10987
|
"browser_memory_write",
|
|
@@ -10878,7 +11019,8 @@ var init_superone_host_owned_tools = __esm({
|
|
|
10878
11019
|
"automation_apply",
|
|
10879
11020
|
"automation_delete",
|
|
10880
11021
|
...BROWSER_TOOL_NAMES,
|
|
10881
|
-
...DEVICE_AGENT_TOOL_NAMES
|
|
11022
|
+
...DEVICE_AGENT_TOOL_NAMES,
|
|
11023
|
+
...TERMINAL_TOOL_NAMES
|
|
10882
11024
|
];
|
|
10883
11025
|
MINIAPP_LIST_BARE_NAME = "miniapp_list";
|
|
10884
11026
|
MINIAPP_CALL_BARE_NAME = "miniapp_call";
|
|
@@ -12374,7 +12516,7 @@ function buildLiveOptions(opts, onPermission, onQuestion, onPlan, signal, timing
|
|
|
12374
12516
|
systemPrompt: {
|
|
12375
12517
|
type: "preset",
|
|
12376
12518
|
preset: "claude_code",
|
|
12377
|
-
append: [
|
|
12519
|
+
append: [CLAUDE_SYSTEM_PROMPT_APPEND, opts.systemPromptAppend].filter(Boolean).join("\n\n"),
|
|
12378
12520
|
snapshot: false
|
|
12379
12521
|
},
|
|
12380
12522
|
...opts.sessionId ? { resume: opts.sessionId } : {},
|
|
@@ -72157,8 +72299,8 @@ import { fileURLToPath } from "node:url";
|
|
|
72157
72299
|
function resolveCliReleaseVersion() {
|
|
72158
72300
|
const fromEnv = process.env.SUPERONE_CLI_VERSION?.trim();
|
|
72159
72301
|
if (fromEnv) return fromEnv;
|
|
72160
|
-
if ("0.67.0-alpha".trim()) {
|
|
72161
|
-
return "0.67.0-alpha".trim();
|
|
72302
|
+
if ("0.67.0-alpha.1".trim()) {
|
|
72303
|
+
return "0.67.0-alpha.1".trim();
|
|
72162
72304
|
}
|
|
72163
72305
|
const fromDist = readDistManifestVersion();
|
|
72164
72306
|
if (fromDist) return fromDist;
|
|
@@ -85011,7 +85153,7 @@ var WorkspaceGitService = class {
|
|
|
85011
85153
|
deletions: shortstat.deletions
|
|
85012
85154
|
};
|
|
85013
85155
|
} catch (err) {
|
|
85014
|
-
throw Object.assign(new Error(err
|
|
85156
|
+
throw Object.assign(new Error(gitErrorMessage(err) || "git status failed"), {
|
|
85015
85157
|
code: "internal"
|
|
85016
85158
|
});
|
|
85017
85159
|
}
|
package/package.json
CHANGED