@wiro-ai/wiro-mcp 1.4.1 → 1.5.0
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 +38 -15
- package/dist/client.d.ts +19 -6
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +44 -27
- package/dist/client.js.map +1 -1
- package/dist/instructions.d.ts.map +1 -1
- package/dist/instructions.js +7 -4
- package/dist/instructions.js.map +1 -1
- package/dist/playbooks.d.ts.map +1 -1
- package/dist/playbooks.js +45 -34
- package/dist/playbooks.js.map +1 -1
- package/dist/prompts.d.ts.map +1 -1
- package/dist/prompts.js +3 -2
- package/dist/prompts.js.map +1 -1
- package/dist/tools/apply-agent-skills.d.ts.map +1 -1
- package/dist/tools/apply-agent-skills.js +343 -87
- package/dist/tools/apply-agent-skills.js.map +1 -1
- package/dist/tools/bind-agent-project.d.ts +4 -0
- package/dist/tools/bind-agent-project.d.ts.map +1 -0
- package/dist/tools/bind-agent-project.js +403 -0
- package/dist/tools/bind-agent-project.js.map +1 -0
- package/dist/tools/cancel-agent-message.d.ts.map +1 -1
- package/dist/tools/cancel-agent-message.js +6 -3
- package/dist/tools/cancel-agent-message.js.map +1 -1
- package/dist/tools/cancel-task.js +3 -3
- package/dist/tools/cancel-task.js.map +1 -1
- package/dist/tools/clone-workflow.d.ts.map +1 -1
- package/dist/tools/clone-workflow.js +5 -4
- package/dist/tools/clone-workflow.js.map +1 -1
- package/dist/tools/connect-agent-oauth.d.ts.map +1 -1
- package/dist/tools/connect-agent-oauth.js +140 -40
- package/dist/tools/connect-agent-oauth.js.map +1 -1
- package/dist/tools/control-agent.d.ts.map +1 -1
- package/dist/tools/control-agent.js +109 -36
- package/dist/tools/control-agent.js.map +1 -1
- package/dist/tools/create-workflow.d.ts +3 -0
- package/dist/tools/create-workflow.d.ts.map +1 -1
- package/dist/tools/create-workflow.js +12 -11
- package/dist/tools/create-workflow.js.map +1 -1
- package/dist/tools/delete-agent-session.d.ts.map +1 -1
- package/dist/tools/delete-agent-session.js +18 -12
- package/dist/tools/delete-agent-session.js.map +1 -1
- package/dist/tools/delete-agent.d.ts.map +1 -1
- package/dist/tools/delete-agent.js +12 -9
- package/dist/tools/delete-agent.js.map +1 -1
- package/dist/tools/delete-workflow.d.ts.map +1 -1
- package/dist/tools/delete-workflow.js +5 -4
- package/dist/tools/delete-workflow.js.map +1 -1
- package/dist/tools/deploy-agent.d.ts.map +1 -1
- package/dist/tools/deploy-agent.js +200 -40
- package/dist/tools/deploy-agent.js.map +1 -1
- package/dist/tools/disconnect-agent-oauth.d.ts.map +1 -1
- package/dist/tools/disconnect-agent-oauth.js +32 -12
- package/dist/tools/disconnect-agent-oauth.js.map +1 -1
- package/dist/tools/get-account.d.ts.map +1 -1
- package/dist/tools/get-account.js +148 -42
- package/dist/tools/get-account.js.map +1 -1
- package/dist/tools/get-agent-activity.d.ts.map +1 -1
- package/dist/tools/get-agent-activity.js +185 -35
- package/dist/tools/get-agent-activity.js.map +1 -1
- package/dist/tools/get-agent-conversation.d.ts.map +1 -1
- package/dist/tools/get-agent-conversation.js +57 -35
- package/dist/tools/get-agent-conversation.js.map +1 -1
- package/dist/tools/get-agent-message.d.ts.map +1 -1
- package/dist/tools/get-agent-message.js +6 -4
- package/dist/tools/get-agent-message.js.map +1 -1
- package/dist/tools/get-agent-template.d.ts.map +1 -1
- package/dist/tools/get-agent-template.js +11 -16
- package/dist/tools/get-agent-template.js.map +1 -1
- package/dist/tools/get-model-schema.js +3 -3
- package/dist/tools/get-model-schema.js.map +1 -1
- package/dist/tools/get-my-agent.d.ts.map +1 -1
- package/dist/tools/get-my-agent.js +11 -7
- package/dist/tools/get-my-agent.js.map +1 -1
- package/dist/tools/get-playbook.d.ts.map +1 -1
- package/dist/tools/get-playbook.js +3 -2
- package/dist/tools/get-playbook.js.map +1 -1
- package/dist/tools/get-task-price.js +3 -3
- package/dist/tools/get-task-price.js.map +1 -1
- package/dist/tools/get-task.js +3 -3
- package/dist/tools/get-task.js.map +1 -1
- package/dist/tools/get-workflow.d.ts.map +1 -1
- package/dist/tools/get-workflow.js +38 -19
- package/dist/tools/get-workflow.js.map +1 -1
- package/dist/tools/index.d.ts +3 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +6 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/kill-task.js +3 -3
- package/dist/tools/kill-task.js.map +1 -1
- package/dist/tools/list-agent-skills.d.ts.map +1 -1
- package/dist/tools/list-agent-skills.js +5 -4
- package/dist/tools/list-agent-skills.js.map +1 -1
- package/dist/tools/list-agent-templates.js +4 -4
- package/dist/tools/list-agent-templates.js.map +1 -1
- package/dist/tools/list-my-agents.d.ts.map +1 -1
- package/dist/tools/list-my-agents.js +11 -8
- package/dist/tools/list-my-agents.js.map +1 -1
- package/dist/tools/list-projects.d.ts +4 -0
- package/dist/tools/list-projects.d.ts.map +1 -0
- package/dist/tools/list-projects.js +141 -0
- package/dist/tools/list-projects.js.map +1 -0
- package/dist/tools/list-studio-results.js +3 -3
- package/dist/tools/list-studio-results.js.map +1 -1
- package/dist/tools/list-tasks.js +3 -3
- package/dist/tools/list-tasks.js.map +1 -1
- package/dist/tools/list-workflow-runs.d.ts.map +1 -1
- package/dist/tools/list-workflow-runs.js +6 -4
- package/dist/tools/list-workflow-runs.js.map +1 -1
- package/dist/tools/list-workflows.d.ts.map +1 -1
- package/dist/tools/list-workflows.js +7 -6
- package/dist/tools/list-workflows.js.map +1 -1
- package/dist/tools/manage-agent-billing.d.ts.map +1 -1
- package/dist/tools/manage-agent-billing.js +207 -59
- package/dist/tools/manage-agent-billing.js.map +1 -1
- package/dist/tools/manage-agent-custom-skill.d.ts.map +1 -1
- package/dist/tools/manage-agent-custom-skill.js +88 -12
- package/dist/tools/manage-agent-custom-skill.js.map +1 -1
- package/dist/tools/recommend-model.js +3 -3
- package/dist/tools/recommend-model.js.map +1 -1
- package/dist/tools/resume-workflow-run.d.ts.map +1 -1
- package/dist/tools/resume-workflow-run.js +3 -2
- package/dist/tools/resume-workflow-run.js.map +1 -1
- package/dist/tools/run-model.js +3 -3
- package/dist/tools/run-model.js.map +1 -1
- package/dist/tools/run-workflow.d.ts.map +1 -1
- package/dist/tools/run-workflow.js +3 -2
- package/dist/tools/run-workflow.js.map +1 -1
- package/dist/tools/save-workflow-from-agent.d.ts.map +1 -1
- package/dist/tools/save-workflow-from-agent.js +17 -12
- package/dist/tools/save-workflow-from-agent.js.map +1 -1
- package/dist/tools/schemas.d.ts +32 -26
- package/dist/tools/schemas.d.ts.map +1 -1
- package/dist/tools/schemas.js +67 -0
- package/dist/tools/schemas.js.map +1 -1
- package/dist/tools/search-docs.js +3 -3
- package/dist/tools/search-docs.js.map +1 -1
- package/dist/tools/search-models.js +3 -3
- package/dist/tools/search-models.js.map +1 -1
- package/dist/tools/send-agent-message.d.ts.map +1 -1
- package/dist/tools/send-agent-message.js +30 -9
- package/dist/tools/send-agent-message.js.map +1 -1
- package/dist/tools/set-agent-credentials.d.ts.map +1 -1
- package/dist/tools/set-agent-credentials.js +47 -57
- package/dist/tools/set-agent-credentials.js.map +1 -1
- package/dist/tools/update-agent.d.ts.map +1 -1
- package/dist/tools/update-agent.js +56 -19
- package/dist/tools/update-agent.js.map +1 -1
- package/dist/tools/update-workflow.d.ts +199 -0
- package/dist/tools/update-workflow.d.ts.map +1 -1
- package/dist/tools/update-workflow.js +20 -7
- package/dist/tools/update-workflow.js.map +1 -1
- package/dist/tools/upload-file.js +3 -3
- package/dist/tools/upload-file.js.map +1 -1
- package/dist/tools/wait-for-task.js +3 -3
- package/dist/tools/wait-for-task.js.map +1 -1
- package/dist/tools/wait-for-workflow-run.d.ts +3 -3
- package/dist/tools/wait-for-workflow-run.d.ts.map +1 -1
- package/dist/tools/wait-for-workflow-run.js +7 -6
- package/dist/tools/wait-for-workflow-run.js.map +1 -1
- package/dist/utils/agent-catalog.d.ts +29 -0
- package/dist/utils/agent-catalog.d.ts.map +1 -1
- package/dist/utils/agent-catalog.js +28 -7
- package/dist/utils/agent-catalog.js.map +1 -1
- package/dist/utils/agent-config.d.ts +109 -8
- package/dist/utils/agent-config.d.ts.map +1 -1
- package/dist/utils/agent-config.js +286 -45
- package/dist/utils/agent-config.js.map +1 -1
- package/dist/utils/agent-message.d.ts +36 -14
- package/dist/utils/agent-message.d.ts.map +1 -1
- package/dist/utils/agent-message.js +92 -26
- package/dist/utils/agent-message.js.map +1 -1
- package/dist/utils/agent-targets.d.ts +7 -3
- package/dist/utils/agent-targets.d.ts.map +1 -1
- package/dist/utils/agent-targets.js +35 -23
- package/dist/utils/agent-targets.js.map +1 -1
- package/dist/utils/agent-turns.d.ts +19 -12
- package/dist/utils/agent-turns.d.ts.map +1 -1
- package/dist/utils/agent-turns.js +97 -15
- package/dist/utils/agent-turns.js.map +1 -1
- package/dist/utils/api.d.ts +6 -0
- package/dist/utils/api.d.ts.map +1 -1
- package/dist/utils/api.js +22 -1
- package/dist/utils/api.js.map +1 -1
- package/dist/utils/format.d.ts.map +1 -1
- package/dist/utils/format.js +7 -13
- package/dist/utils/format.js.map +1 -1
- package/dist/utils/json-schema-dialect.d.ts.map +1 -1
- package/dist/utils/json-schema-dialect.js +4 -0
- package/dist/utils/json-schema-dialect.js.map +1 -1
- package/dist/utils/media.d.ts +8 -0
- package/dist/utils/media.d.ts.map +1 -1
- package/dist/utils/media.js +29 -0
- package/dist/utils/media.js.map +1 -1
- package/dist/utils/poll.d.ts +5 -2
- package/dist/utils/poll.d.ts.map +1 -1
- package/dist/utils/poll.js +10 -9
- package/dist/utils/poll.js.map +1 -1
- package/dist/utils/quoted-text.d.ts +28 -0
- package/dist/utils/quoted-text.d.ts.map +1 -0
- package/dist/utils/quoted-text.js +64 -0
- package/dist/utils/quoted-text.js.map +1 -0
- package/dist/utils/studio-runs.d.ts.map +1 -1
- package/dist/utils/studio-runs.js +7 -4
- package/dist/utils/studio-runs.js.map +1 -1
- package/dist/utils/user-agent.d.ts +101 -25
- package/dist/utils/user-agent.d.ts.map +1 -1
- package/dist/utils/user-agent.js +160 -42
- package/dist/utils/user-agent.js.map +1 -1
- package/dist/utils/wiro-project.d.ts +45 -0
- package/dist/utils/wiro-project.d.ts.map +1 -0
- package/dist/utils/wiro-project.js +66 -0
- package/dist/utils/wiro-project.js.map +1 -0
- package/dist/utils/workflow-save.d.ts +22 -1
- package/dist/utils/workflow-save.d.ts.map +1 -1
- package/dist/utils/workflow-save.js +122 -24
- package/dist/utils/workflow-save.js.map +1 -1
- package/dist/utils/workflow.d.ts +26 -13
- package/dist/utils/workflow.d.ts.map +1 -1
- package/dist/utils/workflow.js +51 -20
- package/dist/utils/workflow.js.map +1 -1
- package/dist/utils/workspace.d.ts +30 -4
- package/dist/utils/workspace.d.ts.map +1 -1
- package/dist/utils/workspace.js +95 -12
- package/dist/utils/workspace.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,9 +3,41 @@ import { ApiResultError, errorResult, requireApiSuccess } from '../utils/api.js'
|
|
|
3
3
|
import { DEFAULT_WAIT_SECONDS, MAX_WAIT_SECONDS } from '../utils/poll.js';
|
|
4
4
|
import { agentStatusLabel, agentStatusLabelSchema, agentSummarySchema, describeAgentStatus, isTransitionalStatus, MEMBER_SETUP_HELP, missingCredentialStep, nextStepForAgent, readAgentDetail, readAgentStatus, settledStatusAdvice, toAgentDetail, toAgentSummary, waitForAgentToSettle, } from '../utils/user-agent.js';
|
|
5
5
|
import { isPlainTeamMember } from '../utils/workspace.js';
|
|
6
|
-
import { nextActionSchema } from './schemas.js';
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
import { nextActionSchema, strictInput } from './schemas.js';
|
|
7
|
+
/** What a stop means for the agent's plan, as the plan stood before the stop. */
|
|
8
|
+
function planAfterStop(plan) {
|
|
9
|
+
if (plan?.status !== 'active')
|
|
10
|
+
return 'The agent has no active plan, so no renewal starts it again.';
|
|
11
|
+
const periodEnd = plan.periodEndsAt ?? 'the current period';
|
|
12
|
+
if (plan.atPeriodEnd === 'ends') {
|
|
13
|
+
return `The plan is already cancelled: it ends after ${periodEnd} and does not renew, so nothing starts the agent `
|
|
14
|
+
+ 'again by itself.';
|
|
15
|
+
}
|
|
16
|
+
if (plan.switchingToWallet) {
|
|
17
|
+
return `Stopping does not pause the plan: it moves to wallet billing after ${periodEnd}, then renews from the wallet `
|
|
18
|
+
+ 'every 30 days and starts the agent again. Once it is billed from the wallet, cancel it with manage_agent_billing to stop paying.';
|
|
19
|
+
}
|
|
20
|
+
if (plan.billing === 'wallet') {
|
|
21
|
+
return 'Stopping does not pause the plan: a wallet plan still renews every 30 days and starts the agent again. '
|
|
22
|
+
+ 'Cancel it with manage_agent_billing to stop paying.';
|
|
23
|
+
}
|
|
24
|
+
const state = plan.atPeriodEnd === 'renews' ? `renews after ${periodEnd}` : `is paid through ${periodEnd}`;
|
|
25
|
+
return `Stopping does not pause the plan: it is billed by card and ${state}. Card plans are managed in the Wiro dashboard.`;
|
|
26
|
+
}
|
|
27
|
+
/** What a finished wait found, in words that fit the action. A stop that ended stopped needs none: the status line says so. */
|
|
28
|
+
function outcomeAfterWait(action, decided, status, plainMember, agent) {
|
|
29
|
+
if (action !== 'stop')
|
|
30
|
+
return settledStatusAdvice(status, plainMember, agent);
|
|
31
|
+
if (status === 0)
|
|
32
|
+
return '';
|
|
33
|
+
if (status === 5) {
|
|
34
|
+
// A stop Wiro refused found nothing to stop, and its own message says so.
|
|
35
|
+
return decided === 'requested'
|
|
36
|
+
? 'The stop ended in the error state, so the agent may still be running. control_agent with action stop tries again; get_agent_activity with kind logs may show why.'
|
|
37
|
+
: '';
|
|
38
|
+
}
|
|
39
|
+
return `The agent shows ${describeAgentStatus(status).toLowerCase()} after the stop, so it may have been started again. get_my_agent shows its state.`;
|
|
40
|
+
}
|
|
9
41
|
function waitAction(guid) {
|
|
10
42
|
return {
|
|
11
43
|
tool: 'get_my_agent',
|
|
@@ -13,6 +45,13 @@ function waitAction(guid) {
|
|
|
13
45
|
reason: 'Wait until the agent has settled. Do not repeat the action that started it.',
|
|
14
46
|
};
|
|
15
47
|
}
|
|
48
|
+
function retryStopAction(guid) {
|
|
49
|
+
return {
|
|
50
|
+
tool: 'control_agent',
|
|
51
|
+
arguments: { agent_guid: guid, action: 'stop', wait_seconds: DEFAULT_WAIT_SECONDS },
|
|
52
|
+
reason: 'Try the stop again. If it ends in the error state again, tell the user the agent may still be running and that Wiro support can help.',
|
|
53
|
+
};
|
|
54
|
+
}
|
|
16
55
|
function setupRefusal(agent, plainMember = false) {
|
|
17
56
|
if (plainMember) {
|
|
18
57
|
return {
|
|
@@ -105,21 +144,22 @@ export function registerControlAgent(server, client) {
|
|
|
105
144
|
server.registerTool('control_agent', {
|
|
106
145
|
title: 'Start, stop or restart a Wiro agent',
|
|
107
146
|
description: 'Start, stop or restart a deployed agent. Starting needs an active plan or credits left '
|
|
108
|
-
+ 'and charges nothing by itself. Stopping does not pause the plan: a wallet plan
|
|
109
|
-
+ '30 days and starts the agent again, so cancel the plan with manage_agent_billing to
|
|
147
|
+
+ 'and charges nothing by itself. Stopping does not pause the plan: a wallet plan that is not cancelled '
|
|
148
|
+
+ 'still renews every 30 days and starts the agent again, so cancel the plan with manage_agent_billing to '
|
|
149
|
+
+ 'stop paying. The result says what happens with this agent\'s plan. '
|
|
110
150
|
+ 'A restart reloads the agent with its current settings. The change finishes in the background: pass '
|
|
111
151
|
+ 'wait_seconds, or follow the returned nextAction, to see the result. When a start is refused, the '
|
|
112
152
|
+ 'result says what to do next (subscribe, renew, buy credits or finish setup). On a team agent this '
|
|
113
153
|
+ 'needs a team admin or the person who deployed it; other team members can read the agent with '
|
|
114
154
|
+ 'get_my_agent and message it.',
|
|
115
|
-
inputSchema: {
|
|
155
|
+
inputSchema: strictInput({
|
|
116
156
|
agent_guid: z.string().min(1).max(100)
|
|
117
157
|
.describe('The deployed agent\'s guid, from list_my_agents or deploy_agent.'),
|
|
118
158
|
action: z.enum(['start', 'stop', 'restart'])
|
|
119
159
|
.describe('start queues a stopped or failed agent, stop shuts it down, restart reloads a running agent.'),
|
|
120
160
|
wait_seconds: z.number().int().min(0).max(MAX_WAIT_SECONDS).default(0)
|
|
121
161
|
.describe('Wait up to this many seconds for the agent to finish starting or stopping (0 to 600, default 0). 45 or less is safe for clients with a 60 second tool timeout; follow nextAction to keep waiting.'),
|
|
122
|
-
},
|
|
162
|
+
}),
|
|
123
163
|
outputSchema: {
|
|
124
164
|
action: z.enum(['start', 'stop', 'restart']),
|
|
125
165
|
outcome: z.enum(['requested', 'not_needed', 'refused']),
|
|
@@ -135,7 +175,7 @@ export function registerControlAgent(server, client) {
|
|
|
135
175
|
},
|
|
136
176
|
annotations: {
|
|
137
177
|
readOnlyHint: false,
|
|
138
|
-
destructiveHint:
|
|
178
|
+
destructiveHint: true,
|
|
139
179
|
idempotentHint: false,
|
|
140
180
|
openWorldHint: true,
|
|
141
181
|
},
|
|
@@ -180,9 +220,9 @@ export function registerControlAgent(server, client) {
|
|
|
180
220
|
}
|
|
181
221
|
}
|
|
182
222
|
else if (previous === 3 || previous === 4) {
|
|
183
|
-
// A restart is an
|
|
184
|
-
//
|
|
185
|
-
// the status shown comes from Detail.
|
|
223
|
+
// A restart is an Update that names no field: it stops a starting or
|
|
224
|
+
// running agent and queues it again. Only the outcome is read from the
|
|
225
|
+
// answer; the status shown comes from Detail.
|
|
186
226
|
call = { path: '/UserAgent/Update', fallback: 'The agent could not be restarted.' };
|
|
187
227
|
}
|
|
188
228
|
else if (previous === 0 || previous === 5) {
|
|
@@ -197,27 +237,45 @@ export function registerControlAgent(server, client) {
|
|
|
197
237
|
else {
|
|
198
238
|
decision = setupRefusal(current, plainMember);
|
|
199
239
|
}
|
|
240
|
+
// Set when the answer says the agent is restarting and gives no status.
|
|
241
|
+
let restartNotReadBack = false;
|
|
200
242
|
if (call) {
|
|
243
|
+
const missing = current.missingCredentials;
|
|
244
|
+
const closing = missing.length > 0
|
|
245
|
+
? `Missing credentials: ${missing.map(item => item.title).join(', ')}. Skills that need them fail until they are set.`
|
|
246
|
+
: undefined;
|
|
247
|
+
const restarts = call.path === '/UserAgent/Update';
|
|
201
248
|
try {
|
|
202
|
-
requireApiSuccess(await client.post(call.path, { guid }, extra.signal), call.fallback);
|
|
203
|
-
|
|
204
|
-
? '
|
|
205
|
-
:
|
|
206
|
-
|
|
207
|
-
: '
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
249
|
+
const answer = requireApiSuccess(await client.post(call.path, { guid }, extra.signal), call.fallback);
|
|
250
|
+
decision = call.path === '/UserAgent/Stop'
|
|
251
|
+
? { outcome: 'requested', message: `Stop requested. ${planAfterStop(current.subscription)}` }
|
|
252
|
+
: restarts && answer.restarting === false
|
|
253
|
+
// Wiro found the agent neither starting nor running, so nothing restarted.
|
|
254
|
+
? { outcome: 'not_needed', message: 'The agent is no longer starting or running, so it did not restart.', readAgain: true }
|
|
255
|
+
: {
|
|
256
|
+
outcome: 'requested',
|
|
257
|
+
...(restarts
|
|
258
|
+
? { message: 'Restart requested.', underWay: 'The agent stops and starts again with its current settings.' }
|
|
259
|
+
: { message: 'Start requested.', underWay: 'The agent is queued and starts on its own; this can take a while.' }),
|
|
260
|
+
...(closing ? { closing } : {}),
|
|
261
|
+
};
|
|
215
262
|
}
|
|
216
263
|
catch (error) {
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
264
|
+
if (restarts && error instanceof ApiResultError && error.body.restarting === true) {
|
|
265
|
+
restartNotReadBack = true;
|
|
266
|
+
decision = {
|
|
267
|
+
outcome: 'requested',
|
|
268
|
+
message: 'Restart requested.',
|
|
269
|
+
underWay: 'The agent is restarting with its current settings.',
|
|
270
|
+
...(closing ? { closing } : {}),
|
|
271
|
+
};
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
const refusal = error instanceof ApiResultError ? interpretRefusal(error.message, current) : null;
|
|
275
|
+
if (!refusal)
|
|
276
|
+
throw error;
|
|
277
|
+
decision = refusal;
|
|
278
|
+
}
|
|
221
279
|
}
|
|
222
280
|
}
|
|
223
281
|
const result = decision ?? { outcome: 'not_needed', message: 'Nothing to do.' };
|
|
@@ -225,7 +283,11 @@ export function registerControlAgent(server, client) {
|
|
|
225
283
|
let settled = !isTransitionalStatus(previous);
|
|
226
284
|
let waitedSeconds;
|
|
227
285
|
let readFailed = false;
|
|
228
|
-
if (
|
|
286
|
+
if (restartNotReadBack && wait_seconds === 0) {
|
|
287
|
+
readFailed = true;
|
|
288
|
+
settled = false;
|
|
289
|
+
}
|
|
290
|
+
else if (result.outcome === 'requested' || result.readAgain || (wait_seconds > 0 && !settled)) {
|
|
229
291
|
try {
|
|
230
292
|
const waited = await waitForAgentToSettle(client, guid, wait_seconds, extra, before);
|
|
231
293
|
after = waited.row;
|
|
@@ -246,18 +308,29 @@ export function registerControlAgent(server, client) {
|
|
|
246
308
|
}
|
|
247
309
|
const afterView = toAgentDetail(after);
|
|
248
310
|
const status = readFailed ? null : readAgentStatus(after);
|
|
249
|
-
let
|
|
311
|
+
let parts = [result.message];
|
|
250
312
|
let nextAction = result.nextAction;
|
|
251
313
|
if (result.outcome === 'requested' || result.outcome === 'not_needed') {
|
|
252
|
-
if (
|
|
253
|
-
|
|
314
|
+
if (settled && waitedSeconds !== undefined) {
|
|
315
|
+
const outcome = outcomeAfterWait(action, result.outcome, status, plainMember, afterView);
|
|
316
|
+
// An action that was not needed has only the outcome to tell: the status line has the state it found.
|
|
317
|
+
if (outcome)
|
|
318
|
+
parts = result.outcome === 'not_needed' ? [outcome] : [...parts, outcome];
|
|
254
319
|
}
|
|
255
|
-
else {
|
|
256
|
-
|
|
257
|
-
message += ` ${settledStatusAdvice(status, plainMember)}`;
|
|
258
|
-
nextAction = action === 'stop' ? undefined : nextAction ?? nextStepForAgent(afterView, DEFAULT_WAIT_SECONDS, plainMember);
|
|
320
|
+
else if (result.underWay) {
|
|
321
|
+
parts.push(result.underWay);
|
|
259
322
|
}
|
|
323
|
+
nextAction = !settled
|
|
324
|
+
? waitAction(guid)
|
|
325
|
+
: action === 'stop'
|
|
326
|
+
? (result.outcome === 'requested' && status === 5 ? retryStopAction(guid) : undefined)
|
|
327
|
+
: nextAction ?? nextStepForAgent(afterView, DEFAULT_WAIT_SECONDS, plainMember);
|
|
260
328
|
}
|
|
329
|
+
if (result.closing)
|
|
330
|
+
parts.push(result.closing);
|
|
331
|
+
if (readFailed)
|
|
332
|
+
parts.push('The new status could not be read; get_my_agent shows it.');
|
|
333
|
+
const message = parts.join(' ');
|
|
261
334
|
return {
|
|
262
335
|
content: [{
|
|
263
336
|
type: 'text',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-agent.js","sourceRoot":"","sources":["../../src/tools/control-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"control-agent.js","sourceRoot":"","sources":["../../src/tools/control-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,11 +41,13 @@ export declare const savedWorkflowSchema: {
|
|
|
41
41
|
}>, "many">>;
|
|
42
42
|
default: z.ZodOptional<z.ZodUnknown>;
|
|
43
43
|
savedValue: z.ZodOptional<z.ZodUnknown>;
|
|
44
|
+
required: z.ZodOptional<z.ZodBoolean>;
|
|
44
45
|
}, "strip", z.ZodTypeAny, {
|
|
45
46
|
type: string;
|
|
46
47
|
key: string;
|
|
47
48
|
label: string;
|
|
48
49
|
default?: unknown;
|
|
50
|
+
required?: boolean | undefined;
|
|
49
51
|
options?: {
|
|
50
52
|
value: string;
|
|
51
53
|
text: string;
|
|
@@ -57,6 +59,7 @@ export declare const savedWorkflowSchema: {
|
|
|
57
59
|
key: string;
|
|
58
60
|
label: string;
|
|
59
61
|
default?: unknown;
|
|
62
|
+
required?: boolean | undefined;
|
|
60
63
|
options?: {
|
|
61
64
|
value: string;
|
|
62
65
|
text: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-workflow.d.ts","sourceRoot":"","sources":["../../src/tools/create-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"create-workflow.d.ts","sourceRoot":"","sources":["../../src/tools/create-workflow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAc/C,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAK7B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW/B,CAAC;AAEF,eAAO,MAAM,2BAA2B,wCAEwC,CAAC;AAEjF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CA8ElF"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { errorResult, isPlainObject } from '../utils/api.js';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { quotedSpan } from '../utils/quoted-text.js';
|
|
4
|
+
import { plainInputKeys, quotedWorkflowInputs, workflowInputSchema } from '../utils/workflow.js';
|
|
5
|
+
import { createWorkflow, findHiddenValues, formatWorkflowNotes, prepareIssuesText, tagProblem, WorkflowPrepareError, } from '../utils/workflow-save.js';
|
|
6
|
+
import { nextActionSchema, strictInput } from './schemas.js';
|
|
6
7
|
export const prepareIssueSchema = z.object({
|
|
7
8
|
code: z.string().optional(),
|
|
8
9
|
message: z.string(),
|
|
@@ -37,12 +38,12 @@ export function registerCreateWorkflow(server, client) {
|
|
|
37
38
|
+ 'default (the Notes in the result list what was filled). The graph can be at most 40 KB of JSON '
|
|
38
39
|
+ 'with those defaults. Free. Each call creates another workflow. The result gives the '
|
|
39
40
|
+ 'full slug, the page link and the input keys, so no get_workflow call is needed to run it.',
|
|
40
|
-
inputSchema: {
|
|
41
|
+
inputSchema: strictInput({
|
|
41
42
|
title: z.string().trim().min(1).max(160).describe('Workflow title (1-160 characters).'),
|
|
42
43
|
contents: workflowContentsInputSchema,
|
|
43
44
|
description: z.string().max(1000).optional().describe('What the workflow does (up to 1000 characters).'),
|
|
44
45
|
tags: z.array(z.string()).max(20).optional().describe('Up to 20 tags.'),
|
|
45
|
-
},
|
|
46
|
+
}),
|
|
46
47
|
outputSchema: savedWorkflowSchema,
|
|
47
48
|
annotations: {
|
|
48
49
|
readOnlyHint: false,
|
|
@@ -66,12 +67,12 @@ export function registerCreateWorkflow(server, client) {
|
|
|
66
67
|
}
|
|
67
68
|
const saved = await createWorkflow(client, { title, contents, description, tags }, extra.signal);
|
|
68
69
|
const lines = ['## Workflow created', ''];
|
|
69
|
-
lines.push(`**Title:** ${saved.title}${saved.renamed ? ' (renamed because the title was already used)' : ''}`);
|
|
70
|
+
lines.push(`**Title:** ${quotedSpan(saved.title)}${saved.renamed ? ' (renamed because the title was already used)' : ''}`);
|
|
70
71
|
lines.push(`**Slug:** \`${saved.fullSlug}\``);
|
|
71
72
|
lines.push(`**Page:** ${saved.url}`);
|
|
72
|
-
lines.push('', '### Inputs', '', ...
|
|
73
|
+
lines.push('', '### Inputs', '', ...quotedWorkflowInputs(saved.inputs));
|
|
73
74
|
if (saved.warnings.length > 0) {
|
|
74
|
-
lines.push('', '### Notes', '', ...saved.warnings
|
|
75
|
+
lines.push('', '### Notes', '', ...formatWorkflowNotes(saved.warnings));
|
|
75
76
|
}
|
|
76
77
|
return {
|
|
77
78
|
content: [{ type: 'text', text: lines.join('\n') }],
|
|
@@ -80,10 +81,10 @@ export function registerCreateWorkflow(server, client) {
|
|
|
80
81
|
nextAction: {
|
|
81
82
|
tool: 'run_workflow',
|
|
82
83
|
arguments: { slug: saved.fullSlug },
|
|
83
|
-
reason: 'Run it only if the user asked for a run, after telling them the estimate; otherwise ask the user first (each model step is charged).
|
|
84
|
+
reason: 'Run it only if the user asked for a run, after telling them the estimate; otherwise ask the user first (each model step is charged).'
|
|
84
85
|
+ (saved.inputs.length > 0
|
|
85
|
-
? ` for: ${saved.inputs
|
|
86
|
-
: '
|
|
86
|
+
? ` Pass input values for: ${plainInputKeys(saved.inputs).join(', ') || 'the inputs listed'}. A key you leave out uses its saved value or default.`
|
|
87
|
+
: ' It has no inputs.'),
|
|
87
88
|
},
|
|
88
89
|
},
|
|
89
90
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-workflow.js","sourceRoot":"","sources":["../../src/tools/create-workflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"create-workflow.js","sourceRoot":"","sources":["../../src/tools/create-workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-agent-session.d.ts","sourceRoot":"","sources":["../../src/tools/delete-agent-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-agent-session.d.ts","sourceRoot":"","sources":["../../src/tools/delete-agent-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA6C/C,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,OAAQ,CAAC;AAsBxC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAyGtF"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { asString, errorResult, isPlainObject, requireApiSuccess, toNumber, } from '../utils/api.js';
|
|
2
|
+
import { asString, errorResult, isAgentNotFound, isPlainObject, requireApiSuccess, toNumber, } from '../utils/api.js';
|
|
3
3
|
import { AGENT_INPUT_DESCRIPTION, agentRequestBody, agentSessionProblem, callAgent, resolveAgentTarget, } from '../utils/agent-targets.js';
|
|
4
|
-
import {
|
|
5
|
-
|
|
4
|
+
import { quotedSpan } from '../utils/quoted-text.js';
|
|
5
|
+
import { nextActionSchema, strictInput } from './schemas.js';
|
|
6
|
+
/** The session's row in the key's session list, or null when the list cannot be read. A guid that reaches no agent stays an error. */
|
|
6
7
|
async function findSession(client, target, session, signal) {
|
|
7
8
|
try {
|
|
8
9
|
const response = requireApiSuccess(await callAgent(client, target, 'sessions', agentRequestBody(target, undefined), signal), '');
|
|
@@ -11,15 +12,19 @@ async function findSession(client, target, session, signal) {
|
|
|
11
12
|
const row = rows.find(candidate => asString(candidate.sessionkey) === session);
|
|
12
13
|
return row ? { listed: true, messageCount: toNumber(row.messagecount) } : { listed: false, messageCount: null };
|
|
13
14
|
}
|
|
14
|
-
catch {
|
|
15
|
+
catch (error) {
|
|
16
|
+
if (isAgentNotFound(error))
|
|
17
|
+
throw error;
|
|
15
18
|
return null;
|
|
16
19
|
}
|
|
17
20
|
}
|
|
21
|
+
const STUDIO_RUNS_AFTER_DELETE = 'Deleting a Studio session can also take its model runs out of list_studio_results, so '
|
|
22
|
+
+ 'read their results and costs first if they are still needed.';
|
|
18
23
|
/** Pause before the second look at a session list that did not show the session. */
|
|
19
24
|
export const SESSION_RECHECK_MS = 2_000;
|
|
20
25
|
function notFoundSummary(target, session) {
|
|
21
26
|
const owner = target.kind === 'deployed' ? 'this agent' : target.kind === 'studio' ? 'Studio' : 'the Workflow Agent';
|
|
22
|
-
return `Session
|
|
27
|
+
return `Session ${quotedSpan(session)} is not in this API key's session list for ${owner}, so nothing was deleted. `
|
|
23
28
|
+ 'If it was started in the last few seconds, try again shortly.'
|
|
24
29
|
+ (target.kind === 'workflow-agent'
|
|
25
30
|
? ' An API key reaches only the Workflow Agent sessions of its own project, not chats on wiro.ai or another project\'s.'
|
|
@@ -30,9 +35,10 @@ function deletionSummary(target, session) {
|
|
|
30
35
|
? 'the main Studio chat on wiro.ai'
|
|
31
36
|
: target.kind === 'deployed' && session === 'default'
|
|
32
37
|
? 'your agent\'s main chat, including its voice call records'
|
|
33
|
-
: `session
|
|
38
|
+
: `session ${quotedSpan(session)}`;
|
|
34
39
|
return `This permanently deletes every message you sent and received in ${scope}, including a turn that is `
|
|
35
|
-
+ 'still running, and resets the agent\'s memory of it. It cannot be undone.'
|
|
40
|
+
+ 'still running, and resets the agent\'s memory of it. It cannot be undone.'
|
|
41
|
+
+ (target.kind === 'studio' ? ` ${STUDIO_RUNS_AFTER_DELETE}` : '');
|
|
36
42
|
}
|
|
37
43
|
export function registerDeleteAgentSession(server, client) {
|
|
38
44
|
server.registerTool('delete_agent_session', {
|
|
@@ -42,14 +48,14 @@ export function registerDeleteAgentSession(server, client) {
|
|
|
42
48
|
+ 'Without confirm: true it only describes what would be deleted; ask the user before confirming. A turn '
|
|
43
49
|
+ 'that is still running is deleted too; to stop it instead, cancel it first with cancel_agent_message '
|
|
44
50
|
+ '(get_agent_conversation with the session shows whether one is running). Studio keeps a display name the session was given on '
|
|
45
|
-
+ 'wiro.ai. The Workflow Agent\'s "default" session cannot be deleted.
|
|
46
|
-
+
|
|
47
|
-
inputSchema: {
|
|
51
|
+
+ 'wiro.ai. The Workflow Agent\'s "default" session cannot be deleted. The files models made and saved '
|
|
52
|
+
+ `workflows stay. ${STUDIO_RUNS_AFTER_DELETE}`,
|
|
53
|
+
inputSchema: strictInput({
|
|
48
54
|
agent: z.string().min(1).describe(AGENT_INPUT_DESCRIPTION),
|
|
49
55
|
session: z.string().min(1).describe('The session to delete (from get_agent_conversation).'),
|
|
50
56
|
confirm: z.boolean().default(false)
|
|
51
57
|
.describe('Set to true only after the user agreed to the permanent deletion.'),
|
|
52
|
-
},
|
|
58
|
+
}),
|
|
53
59
|
outputSchema: {
|
|
54
60
|
agent: z.string(),
|
|
55
61
|
agentKind: z.enum(['studio', 'workflow-agent', 'deployed']),
|
|
@@ -118,7 +124,7 @@ export function registerDeleteAgentSession(server, client) {
|
|
|
118
124
|
? agentRequestBody(target, session, { rotate: true })
|
|
119
125
|
: agentRequestBody(target, session);
|
|
120
126
|
requireApiSuccess(await callAgent(client, target, 'deleteSession', body, extra.signal), 'The session could not be deleted.');
|
|
121
|
-
const summary = `Deleted session
|
|
127
|
+
const summary = `Deleted session ${quotedSpan(session)}. The next message in this session starts without memory `
|
|
122
128
|
+ 'of the old conversation.'
|
|
123
129
|
+ (target.kind === 'studio' ? ' A display name set on wiro.ai stays on the now empty session.' : '');
|
|
124
130
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-agent-session.js","sourceRoot":"","sources":["../../src/tools/delete-agent-session.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,QAAQ,GACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-agent-session.js","sourceRoot":"","sources":["../../src/tools/delete-agent-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-agent.d.ts","sourceRoot":"","sources":["../../src/tools/delete-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-agent.d.ts","sourceRoot":"","sources":["../../src/tools/delete-agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAsB/C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAqJ/E"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { ApiResultError, errorResult, isPlainObject, requireApiSuccess, unixToIso, } from '../utils/api.js';
|
|
3
3
|
import { DEFAULT_WAIT_SECONDS } from '../utils/poll.js';
|
|
4
|
-
import { agentStatusLabel, agentStatusLabelSchema, describeAgentStatus, readAgentDetail, readAgentStatus, toAgentDetail, } from '../utils/user-agent.js';
|
|
5
|
-
import { nextActionSchema } from './schemas.js';
|
|
4
|
+
import { agentStatusLabel, agentStatusLabelSchema, agentTitleSpan, describeAgentStatus, readAgentDetail, readAgentStatus, toAgentDetail, } from '../utils/user-agent.js';
|
|
5
|
+
import { nextActionSchema, strictInput } from './schemas.js';
|
|
6
6
|
export function registerDeleteAgent(server, client) {
|
|
7
7
|
server.registerTool('delete_agent', {
|
|
8
8
|
title: 'Delete a Wiro agent',
|
|
@@ -12,12 +12,12 @@ export function registerDeleteAgent(server, client) {
|
|
|
12
12
|
+ 'confirm: true the tool only checks what is still in the way and describes the deletion; repeat '
|
|
13
13
|
+ 'the call with confirm: true after the user agrees. On a team agent this needs a team admin or the '
|
|
14
14
|
+ 'person who deployed it.',
|
|
15
|
-
inputSchema: {
|
|
15
|
+
inputSchema: strictInput({
|
|
16
16
|
agent_guid: z.string().min(1).max(100)
|
|
17
17
|
.describe('The deployed agent\'s guid, from list_my_agents.'),
|
|
18
18
|
confirm: z.boolean().default(false)
|
|
19
19
|
.describe('false only checks and describes the deletion. true deletes the agent. Set it only after the user agreed.'),
|
|
20
|
-
},
|
|
20
|
+
}),
|
|
21
21
|
outputSchema: {
|
|
22
22
|
agentGuid: z.string(),
|
|
23
23
|
title: z.string(),
|
|
@@ -56,6 +56,9 @@ export function registerDeleteAgent(server, client) {
|
|
|
56
56
|
reason: 'Cancel the plan before deleting the agent.',
|
|
57
57
|
};
|
|
58
58
|
}
|
|
59
|
+
else if (subscription?.nextprovider === 'prepaid') {
|
|
60
|
+
blockers.push(`The plan is billed by card and moves to wallet billing after ${agent.subscription?.periodEndsAt ?? 'this period'}, when it renews from the wallet. Once it is billed from the wallet, cancel it with manage_agent_billing action cancel, then delete the agent; the rest of the paid period is not refunded.`);
|
|
61
|
+
}
|
|
59
62
|
else {
|
|
60
63
|
blockers.push(`The plan is billed by card and still active. It has to end first; cancel it from the dashboard (${agent.dashboardUrl}) and delete the agent after the period ends.`);
|
|
61
64
|
}
|
|
@@ -78,7 +81,7 @@ export function registerDeleteAgent(server, client) {
|
|
|
78
81
|
if (blockers.length > 0) {
|
|
79
82
|
const message = `The agent cannot be deleted yet.\n\n${blockers.map(item => `- ${item}`).join('\n')}`;
|
|
80
83
|
return {
|
|
81
|
-
content: [{ type: 'text', text: `## Delete ${agent.title}: blocked\n\n${message}` }],
|
|
84
|
+
content: [{ type: 'text', text: `## Delete ${agentTitleSpan(agent.title)}: blocked\n\n${message}` }],
|
|
82
85
|
structuredContent: { ...base, deleted: false, message, ...(nextAction ? { nextAction } : {}) },
|
|
83
86
|
};
|
|
84
87
|
}
|
|
@@ -86,9 +89,9 @@ export function registerDeleteAgent(server, client) {
|
|
|
86
89
|
const forfeit = subscription?.status === 'active'
|
|
87
90
|
? ' Its cancelled plan is still paid until the period ends; that time is lost and not refunded.'
|
|
88
91
|
: '';
|
|
89
|
-
const message = `Deleting ${agent.title} (${guid}) removes it from every list at once and cannot be undone.${forfeit}`;
|
|
92
|
+
const message = `Deleting ${agentTitleSpan(agent.title)} (${guid}) removes it from every list at once and cannot be undone.${forfeit}`;
|
|
90
93
|
return {
|
|
91
|
-
content: [{ type: 'text', text: `## Delete ${agent.title}: confirm first\n\n${message}\n\nCall delete_agent again with confirm: true after the user agrees.` }],
|
|
94
|
+
content: [{ type: 'text', text: `## Delete ${agentTitleSpan(agent.title)}: confirm first\n\n${message}\n\nCall delete_agent again with confirm: true after the user agrees.` }],
|
|
92
95
|
structuredContent: {
|
|
93
96
|
...base,
|
|
94
97
|
deleted: false,
|
|
@@ -109,7 +112,7 @@ export function registerDeleteAgent(server, client) {
|
|
|
109
112
|
if (error instanceof ApiResultError && /stop the agent/i.test(error.message)) {
|
|
110
113
|
const message = 'The agent has to be stopped first, even when it shows an error. Stop it with control_agent, wait until it shows stopped, then delete it.';
|
|
111
114
|
return {
|
|
112
|
-
content: [{ type: 'text', text: `## Delete ${agent.title}: blocked\n\n${message}` }],
|
|
115
|
+
content: [{ type: 'text', text: `## Delete ${agentTitleSpan(agent.title)}: blocked\n\n${message}` }],
|
|
113
116
|
structuredContent: {
|
|
114
117
|
...base,
|
|
115
118
|
deleted: false,
|
|
@@ -126,7 +129,7 @@ export function registerDeleteAgent(server, client) {
|
|
|
126
129
|
throw error;
|
|
127
130
|
}
|
|
128
131
|
const deletedAt = isPlainObject(body.useragent) ? unixToIso(body.useragent.deletedat) : undefined;
|
|
129
|
-
const message = `${agent.title} was deleted. It no longer appears in any list and cannot be restored.`;
|
|
132
|
+
const message = `${agentTitleSpan(agent.title)} was deleted. It no longer appears in any list and cannot be restored.`;
|
|
130
133
|
return {
|
|
131
134
|
content: [{ type: 'text', text: `## Deleted\n\n${message}` }],
|
|
132
135
|
structuredContent: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-agent.js","sourceRoot":"","sources":["../../src/tools/delete-agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,cAAc,EACd,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,aAAa,GAEd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-agent.js","sourceRoot":"","sources":["../../src/tools/delete-agent.ts"],"names":[],"mappings":"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"}
|