@wootsup/yt-builder-mcp 1.4.1 → 1.6.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/dist/auth.d.ts +11 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +11 -0
- package/dist/auth.js.map +1 -1
- package/dist/cli/doctor-command.d.ts.map +1 -1
- package/dist/cli/doctor-command.js +96 -8
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/client.d.ts +18 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +13 -1
- package/dist/client.js.map +1 -1
- package/dist/clients/claude-code.d.ts.map +1 -1
- package/dist/clients/claude-code.js +5 -2
- package/dist/clients/claude-code.js.map +1 -1
- package/dist/clients/claude-desktop.d.ts.map +1 -1
- package/dist/clients/claude-desktop.js +5 -2
- package/dist/clients/claude-desktop.js.map +1 -1
- package/dist/clients/cline.d.ts.map +1 -1
- package/dist/clients/cline.js +5 -2
- package/dist/clients/cline.js.map +1 -1
- package/dist/clients/codex-cli.d.ts.map +1 -1
- package/dist/clients/codex-cli.js +127 -2
- package/dist/clients/codex-cli.js.map +1 -1
- package/dist/clients/continue.d.ts.map +1 -1
- package/dist/clients/continue.js +11 -2
- package/dist/clients/continue.js.map +1 -1
- package/dist/clients/cursor.d.ts.map +1 -1
- package/dist/clients/cursor.js +5 -2
- package/dist/clients/cursor.js.map +1 -1
- package/dist/clients/gemini-cli.d.ts.map +1 -1
- package/dist/clients/gemini-cli.js +5 -2
- package/dist/clients/gemini-cli.js.map +1 -1
- package/dist/clients/index.d.ts +49 -0
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +79 -0
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/roo-code.d.ts.map +1 -1
- package/dist/clients/roo-code.js +5 -2
- package/dist/clients/roo-code.js.map +1 -1
- package/dist/clients/zed.d.ts.map +1 -1
- package/dist/clients/zed.js +22 -2
- package/dist/clients/zed.js.map +1 -1
- package/dist/diagnostics/doctor.d.ts +60 -2
- package/dist/diagnostics/doctor.d.ts.map +1 -1
- package/dist/diagnostics/doctor.js +185 -8
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/diagnostics/startup-self-probe.d.ts +39 -0
- package/dist/diagnostics/startup-self-probe.d.ts.map +1 -0
- package/dist/diagnostics/startup-self-probe.js +87 -0
- package/dist/diagnostics/startup-self-probe.js.map +1 -0
- package/dist/gateway/essentials.d.ts +15 -6
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +51 -5
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +37 -2
- package/dist/index.js.map +1 -1
- package/dist/net/proxy-dispatcher.d.ts +7 -0
- package/dist/net/proxy-dispatcher.d.ts.map +1 -1
- package/dist/net/proxy-dispatcher.js +7 -2
- package/dist/net/proxy-dispatcher.js.map +1 -1
- package/dist/net/site-basic-auth.d.ts +65 -0
- package/dist/net/site-basic-auth.d.ts.map +1 -0
- package/dist/net/site-basic-auth.js +118 -0
- package/dist/net/site-basic-auth.js.map +1 -0
- package/dist/proxy/bridge.d.ts +18 -1
- package/dist/proxy/bridge.d.ts.map +1 -1
- package/dist/proxy/bridge.js +23 -3
- package/dist/proxy/bridge.js.map +1 -1
- package/dist/setup-wizard-types.d.ts +9 -0
- package/dist/setup-wizard-types.d.ts.map +1 -1
- package/dist/setup-wizard.d.ts.map +1 -1
- package/dist/setup-wizard.js +37 -0
- package/dist/setup-wizard.js.map +1 -1
- package/dist/sites/client-pool.d.ts +35 -1
- package/dist/sites/client-pool.d.ts.map +1 -1
- package/dist/sites/client-pool.js +45 -1
- package/dist/sites/client-pool.js.map +1 -1
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +65 -8
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/handlers.d.ts +45 -0
- package/dist/tools/elements/handlers.d.ts.map +1 -1
- package/dist/tools/elements/handlers.js +178 -2
- package/dist/tools/elements/handlers.js.map +1 -1
- package/dist/tools/format/elements-format.d.ts.map +1 -1
- package/dist/tools/format/elements-format.js +8 -0
- package/dist/tools/format/elements-format.js.map +1 -1
- package/dist/tools/format/health-format.d.ts +2 -0
- package/dist/tools/format/health-format.d.ts.map +1 -1
- package/dist/tools/format/health-format.js +11 -0
- package/dist/tools/format/health-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +42 -0
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +43 -0
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/source-schema-format.d.ts +64 -0
- package/dist/tools/format/source-schema-format.d.ts.map +1 -0
- package/dist/tools/format/source-schema-format.js +161 -0
- package/dist/tools/format/source-schema-format.js.map +1 -0
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +31 -0
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/multi-items/builders.js +2 -2
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts +2 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +1 -1
- package/dist/tools/multi-items/clean-implode-handler.js +9 -1
- package/dist/tools/multi-items/clean-implode-handler.js.map +1 -1
- package/dist/tools/multi-items/inspect-handler.d.ts +8 -0
- package/dist/tools/multi-items/inspect-handler.d.ts.map +1 -1
- package/dist/tools/multi-items/inspect-handler.js +48 -2
- package/dist/tools/multi-items/inspect-handler.js.map +1 -1
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +126 -28
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/handlers-read.d.ts +21 -2
- package/dist/tools/pages/handlers-read.d.ts.map +1 -1
- package/dist/tools/pages/handlers-read.js +183 -11
- package/dist/tools/pages/handlers-read.js.map +1 -1
- package/dist/tools/pages/handlers-write.d.ts +42 -1
- package/dist/tools/pages/handlers-write.d.ts.map +1 -1
- package/dist/tools/pages/handlers-write.js +114 -5
- package/dist/tools/pages/handlers-write.js.map +1 -1
- package/dist/tools/pages/schemas.d.ts +26 -0
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +38 -0
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/pool-resolve-helper.d.ts +11 -26
- package/dist/tools/pool-resolve-helper.d.ts.map +1 -1
- package/dist/tools/pool-resolve-helper.js +50 -0
- package/dist/tools/pool-resolve-helper.js.map +1 -1
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +258 -4
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/handlers-bind.d.ts +107 -0
- package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
- package/dist/tools/sources/handlers-bind.js +197 -2
- package/dist/tools/sources/handlers-bind.js.map +1 -1
- package/dist/tools/sources/handlers.d.ts +54 -0
- package/dist/tools/sources/handlers.d.ts.map +1 -1
- package/dist/tools/sources/handlers.js +82 -0
- package/dist/tools/sources/handlers.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +37 -1
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +35 -5
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +39 -0
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +1 -1
- package/skills/yt-builder-mcp/SKILL.md +237 -39
|
@@ -9,11 +9,13 @@
|
|
|
9
9
|
* @license MIT
|
|
10
10
|
*/
|
|
11
11
|
import { elicitChoice, elicitConfirmation } from '@getimo/mcp-toolkit';
|
|
12
|
+
import { z } from 'zod';
|
|
12
13
|
import { encodeElementPath, encodeTemplateId } from '../../client.js';
|
|
13
14
|
import { RestError } from '../../errors.js';
|
|
14
15
|
import { flattenSourcesPayload, mapSourceRow, } from '../format/sources-format.js';
|
|
15
16
|
import { ambiguityFallbackError, } from '../elicitation.js';
|
|
16
|
-
import { confirmGuard, errorResult, jsonResult, } from '../tool-builder.js';
|
|
17
|
+
import { confirmGuard, errorResult, jsonResult, structuredResult, } from '../tool-builder.js';
|
|
18
|
+
import { detailResult } from '@getimo/mcp-toolkit';
|
|
17
19
|
import { GRID_ITEM_ITERATOR_REJECT, SLOT_COLLISION_STEERING, } from '../bind-guidance.js';
|
|
18
20
|
/**
|
|
19
21
|
* Wave-12 F9 — extract validation-hint fields surfaced by the WP REST
|
|
@@ -196,7 +198,7 @@ async function fetchSourceCandidates(client, source_name) {
|
|
|
196
198
|
return flat.map(mapSourceRow).filter((r) => r.name === source_name);
|
|
197
199
|
}
|
|
198
200
|
export async function handleElementBindSource({ client, elicitation }, input) {
|
|
199
|
-
const { template_id, element_path, source_name, source_id, etag, bindingLevel, field_mappings } = input;
|
|
201
|
+
const { template_id, element_path, source_name, source_id, etag, bindingLevel, field_mappings, relation, field, arguments: fieldArguments, directives, query_arguments, } = input;
|
|
200
202
|
const encoded = encodeElementPath(element_path);
|
|
201
203
|
// Wave G.4.3 — ambiguity resolution.
|
|
202
204
|
//
|
|
@@ -220,6 +222,29 @@ export async function handleElementBindSource({ client, elicitation }, input) {
|
|
|
220
222
|
if (field_mappings !== undefined) {
|
|
221
223
|
resolvedBody.field_mappings = field_mappings;
|
|
222
224
|
}
|
|
225
|
+
// B5 — forward the relation/field selector verbatim. `arguments` +
|
|
226
|
+
// `directives` are only meaningful alongside `field`, but we forward them
|
|
227
|
+
// whenever present and let the PHP SourcesController be the single
|
|
228
|
+
// place that decides how they land in `query.field` (one engine, both
|
|
229
|
+
// platforms). Omitting all four preserves the legacy flat-source bind.
|
|
230
|
+
if (relation !== undefined) {
|
|
231
|
+
resolvedBody.relation = relation;
|
|
232
|
+
}
|
|
233
|
+
if (field !== undefined) {
|
|
234
|
+
resolvedBody.field = field;
|
|
235
|
+
}
|
|
236
|
+
if (fieldArguments !== undefined) {
|
|
237
|
+
resolvedBody.arguments = fieldArguments;
|
|
238
|
+
}
|
|
239
|
+
if (directives !== undefined) {
|
|
240
|
+
resolvedBody.directives = directives;
|
|
241
|
+
}
|
|
242
|
+
// N2 — forward the TOP-LEVEL query arguments verbatim. The PHP
|
|
243
|
+
// SourcesController is the single place that lands them in
|
|
244
|
+
// `source.query.arguments` (one engine, both platforms).
|
|
245
|
+
if (query_arguments !== undefined) {
|
|
246
|
+
resolvedBody.query_arguments = query_arguments;
|
|
247
|
+
}
|
|
223
248
|
if (source_id === undefined) {
|
|
224
249
|
const candidates = await fetchSourceCandidates(client, source_name);
|
|
225
250
|
if (candidates.length > 1) {
|
|
@@ -340,4 +365,174 @@ export async function handleElementUnbindSource({ client, elicitation }, input)
|
|
|
340
365
|
});
|
|
341
366
|
}
|
|
342
367
|
}
|
|
368
|
+
// ─── element_set_source (F2 — surgical source-edit) ─────────────────
|
|
369
|
+
/**
|
|
370
|
+
* F2 (Glöckle HANDOFF-4) — the `element_set_source` STRICT output schema.
|
|
371
|
+
*
|
|
372
|
+
* A default (strip) ZodObject so a strict (`additionalProperties:false`) host
|
|
373
|
+
* accepts the structuredContent and the shape-pin guard's `.strict()` re-parse
|
|
374
|
+
* passes. The success body the PHP `SourcesController::set_source` returns is
|
|
375
|
+
* `{template_id, element_path, etag, new_etag, changed_paths}` — EVERY key here
|
|
376
|
+
* must be DECLARED, else a strict MCP host -32602-rejects the success (the G2
|
|
377
|
+
* `changed_paths` lesson).
|
|
378
|
+
*/
|
|
379
|
+
export const ELEMENT_SET_SOURCE_OUTPUT_SCHEMA = z.object({
|
|
380
|
+
template_id: z.string(),
|
|
381
|
+
element_path: z.string(),
|
|
382
|
+
// The ETag the write was performed against (the If-Match the caller sent).
|
|
383
|
+
etag: z.string(),
|
|
384
|
+
// The bumped ETag after the surgical write — pass as `etag` on the next write.
|
|
385
|
+
new_etag: z.string(),
|
|
386
|
+
// The JSON-pointer(s) the write touched (just the edited node — blast-radius 0).
|
|
387
|
+
changed_paths: z.array(z.string()),
|
|
388
|
+
});
|
|
389
|
+
/**
|
|
390
|
+
* F2 — surgically set a PRECOMPOSED `source` (+ optional `source_extended`) onto
|
|
391
|
+
* ONE element at a pointer, ETag-locked, leaving the rest of the layout
|
|
392
|
+
* byte-unchanged. The two carriers are author-composed objects forwarded
|
|
393
|
+
* VERBATIM to `PUT /pages/<id>/elements/<path>/source`; the PHP controller is the
|
|
394
|
+
* single place that persists them onto `node.source` / `node.source_extended`.
|
|
395
|
+
*/
|
|
396
|
+
export async function handleElementSetSource({ client }, input) {
|
|
397
|
+
const { template_id, element_path, etag, source, source_extended } = input;
|
|
398
|
+
const encoded = encodeElementPath(element_path);
|
|
399
|
+
// Forward only the keys the caller supplied. `source_extended` is forwarded
|
|
400
|
+
// even when explicitly null (that CLEARS the carrier server-side); it is
|
|
401
|
+
// omitted only when undefined.
|
|
402
|
+
const body = {};
|
|
403
|
+
if (source !== undefined)
|
|
404
|
+
body.source = source;
|
|
405
|
+
if (source_extended !== undefined)
|
|
406
|
+
body.source_extended = source_extended;
|
|
407
|
+
try {
|
|
408
|
+
const data = await client.put(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/source`, { body, etag });
|
|
409
|
+
// The PHP success body carries exactly the strict output-schema keys;
|
|
410
|
+
// project them so structuredContent never carries an undeclared key (a
|
|
411
|
+
// strict host -32602-rejects extras). Fall back to the request values
|
|
412
|
+
// for template_id/element_path so the shape is always complete.
|
|
413
|
+
const changedPaths = Array.isArray(data.changed_paths)
|
|
414
|
+
? data.changed_paths.filter((p) => typeof p === 'string')
|
|
415
|
+
: [typeof data.element_path === 'string' ? data.element_path : element_path];
|
|
416
|
+
const structured = {
|
|
417
|
+
template_id: typeof data.template_id === 'string' ? data.template_id : template_id,
|
|
418
|
+
element_path: typeof data.element_path === 'string' ? data.element_path : element_path,
|
|
419
|
+
etag: typeof data.etag === 'string' ? data.etag : etag,
|
|
420
|
+
new_etag: typeof data.new_etag === 'string' ? data.new_etag : '',
|
|
421
|
+
changed_paths: changedPaths,
|
|
422
|
+
};
|
|
423
|
+
const toolkitResult = detailResult({
|
|
424
|
+
title: 'Source set (surgical)',
|
|
425
|
+
groups: [
|
|
426
|
+
{
|
|
427
|
+
label: 'Surgical source-edit',
|
|
428
|
+
entries: [
|
|
429
|
+
{ key: 'template_id', label: 'Template', value: structured.template_id, format: 'text' },
|
|
430
|
+
{ key: 'element_path', label: 'Element', value: structured.element_path, format: 'code', copyable: true },
|
|
431
|
+
{ key: 'new_etag', label: 'New ETag', value: structured.new_etag, format: 'badge', copyable: true },
|
|
432
|
+
{ key: 'changed_paths', label: 'Changed paths', value: structured.changed_paths.join(', '), format: 'code' },
|
|
433
|
+
],
|
|
434
|
+
},
|
|
435
|
+
],
|
|
436
|
+
});
|
|
437
|
+
return structuredResult(toolkitResult, structured);
|
|
438
|
+
}
|
|
439
|
+
catch (e) {
|
|
440
|
+
return errorResult({
|
|
441
|
+
error: e,
|
|
442
|
+
context: { template_id, element_path },
|
|
443
|
+
hint: 'On 412 refresh the ETag via yootheme_builder_get_etag and retry. ' +
|
|
444
|
+
'On 400 invalid_body, ensure `source.query.name` is a non-empty string ' +
|
|
445
|
+
'(e.g. "categoryFaqs.taxonomyCategoryFaq"). Verify element_path via ' +
|
|
446
|
+
'yootheme_builder_element_list.',
|
|
447
|
+
});
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
// ─── rename_source (N1 — template-wide source/field rename) ─────────
|
|
451
|
+
/**
|
|
452
|
+
* N1 (Glöckle HANDOFF-5) — the `rename_source` STRICT output schema.
|
|
453
|
+
*
|
|
454
|
+
* A default (strip) ZodObject so a strict (`additionalProperties:false`) host
|
|
455
|
+
* accepts the structuredContent and the shape-pin guard's `.strict()` re-parse
|
|
456
|
+
* passes. The success body the PHP `SourcesController::rename_source` returns is
|
|
457
|
+
* `{template_id, replaced_count, changed_paths, etag, new_etag}` — EVERY key here
|
|
458
|
+
* must be DECLARED, else a strict MCP host -32602-rejects the success (the G2
|
|
459
|
+
* `changed_paths` lesson).
|
|
460
|
+
*/
|
|
461
|
+
export const RENAME_SOURCE_OUTPUT_SCHEMA = z.object({
|
|
462
|
+
template_id: z.string(),
|
|
463
|
+
// The number of BOUND nodes whose binding was rewritten template-wide.
|
|
464
|
+
replaced_count: z.number(),
|
|
465
|
+
// The rel-path pointer of each changed node, in document order.
|
|
466
|
+
changed_paths: z.array(z.string()),
|
|
467
|
+
// The ETag the write was performed against (the If-Match the caller sent).
|
|
468
|
+
etag: z.string(),
|
|
469
|
+
// The bumped ETag after the write — pass as `etag` on the next write.
|
|
470
|
+
new_etag: z.string(),
|
|
471
|
+
});
|
|
472
|
+
/**
|
|
473
|
+
* N1 — TEMPLATE-WIDE rename every matching binding's source-name + field-name
|
|
474
|
+
* tokens in ONE ETag-locked write. The rename spec (the single-source shorthand
|
|
475
|
+
* `from`/`to` and/or the explicit `source_map`/`field_map`) is forwarded VERBATIM
|
|
476
|
+
* to `PUT /pages/<id>/rename-source`; the PHP controller is the single place that
|
|
477
|
+
* runs the SourceRenamer engine across the whole template, preserving every
|
|
478
|
+
* binding's arguments / props / field_mappings and leaving non-matching bindings
|
|
479
|
+
* byte-identical.
|
|
480
|
+
*/
|
|
481
|
+
export async function handleRenameSource({ client }, input) {
|
|
482
|
+
const { template_id, etag, from, to, source_map, field_map } = input;
|
|
483
|
+
// Forward only the keys the caller supplied — the PHP controller folds the
|
|
484
|
+
// `from`/`to` shorthand into source_map and validates "at least one rename
|
|
485
|
+
// instruction" on its end (one engine, both platforms).
|
|
486
|
+
const body = {};
|
|
487
|
+
if (from !== undefined)
|
|
488
|
+
body.from = from;
|
|
489
|
+
if (to !== undefined)
|
|
490
|
+
body.to = to;
|
|
491
|
+
if (source_map !== undefined)
|
|
492
|
+
body.source_map = source_map;
|
|
493
|
+
if (field_map !== undefined)
|
|
494
|
+
body.field_map = field_map;
|
|
495
|
+
try {
|
|
496
|
+
const data = await client.put(`/pages/${encodeTemplateId(template_id)}/rename-source`, { body, etag });
|
|
497
|
+
// The PHP success body carries exactly the strict output-schema keys;
|
|
498
|
+
// project them so structuredContent never carries an undeclared key (a
|
|
499
|
+
// strict host -32602-rejects extras). Fall back to request/sane values so
|
|
500
|
+
// the shape is always complete.
|
|
501
|
+
const changedPaths = Array.isArray(data.changed_paths)
|
|
502
|
+
? data.changed_paths.filter((p) => typeof p === 'string')
|
|
503
|
+
: [];
|
|
504
|
+
const structured = {
|
|
505
|
+
template_id: typeof data.template_id === 'string' ? data.template_id : template_id,
|
|
506
|
+
replaced_count: typeof data.replaced_count === 'number' ? data.replaced_count : changedPaths.length,
|
|
507
|
+
changed_paths: changedPaths,
|
|
508
|
+
etag: typeof data.etag === 'string' ? data.etag : etag,
|
|
509
|
+
new_etag: typeof data.new_etag === 'string' ? data.new_etag : '',
|
|
510
|
+
};
|
|
511
|
+
const toolkitResult = detailResult({
|
|
512
|
+
title: 'Source renamed (template-wide)',
|
|
513
|
+
groups: [
|
|
514
|
+
{
|
|
515
|
+
label: 'Template-wide source/field rename',
|
|
516
|
+
entries: [
|
|
517
|
+
{ key: 'template_id', label: 'Template', value: structured.template_id, format: 'text' },
|
|
518
|
+
{ key: 'replaced_count', label: 'Bindings changed', value: String(structured.replaced_count), format: 'badge' },
|
|
519
|
+
{ key: 'new_etag', label: 'New ETag', value: structured.new_etag, format: 'badge', copyable: true },
|
|
520
|
+
{ key: 'changed_paths', label: 'Changed paths', value: structured.changed_paths.join(', '), format: 'code' },
|
|
521
|
+
],
|
|
522
|
+
},
|
|
523
|
+
],
|
|
524
|
+
});
|
|
525
|
+
return structuredResult(toolkitResult, structured);
|
|
526
|
+
}
|
|
527
|
+
catch (e) {
|
|
528
|
+
return errorResult({
|
|
529
|
+
error: e,
|
|
530
|
+
context: { template_id },
|
|
531
|
+
hint: 'On 412 refresh the ETag via yootheme_builder_get_etag and retry. ' +
|
|
532
|
+
'On 400 invalid_body, pass `from`+`to` (single source rename) and/or ' +
|
|
533
|
+
'`source_map`/`field_map` (objects of {old: new} name tokens) — at least ' +
|
|
534
|
+
'one is required. Verify template_id via yootheme_builder_pages_list.',
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
}
|
|
343
538
|
//# sourceMappingURL=handlers-bind.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers-bind.js","sourceRoot":"","sources":["../../../src/tools/sources/handlers-bind.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handlers-bind.js","sourceRoot":"","sources":["../../../src/tools/sources/handlers-bind.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,44 @@ export declare const BINDING_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
30
30
|
field_mapping_count: z.ZodNumber;
|
|
31
31
|
warning: z.ZodOptional<z.ZodString>;
|
|
32
32
|
}, z.core.$strip>;
|
|
33
|
+
/**
|
|
34
|
+
* U4 — the `source_get_schema` outputSchema. A default (strip) ZodObject so a
|
|
35
|
+
* strict (`additionalProperties:false`) host accepts the structuredContent and
|
|
36
|
+
* the shape-pin guard's `.strict()` re-parse passes.
|
|
37
|
+
*/
|
|
38
|
+
export declare const SOURCE_SCHEMA_OUTPUT_SCHEMA: z.ZodObject<{
|
|
39
|
+
source_name: z.ZodString;
|
|
40
|
+
label: z.ZodString;
|
|
41
|
+
group: z.ZodString;
|
|
42
|
+
type: z.ZodString;
|
|
43
|
+
query_methods: z.ZodArray<z.ZodObject<{
|
|
44
|
+
name: z.ZodString;
|
|
45
|
+
dotted_name: z.ZodString;
|
|
46
|
+
arguments: z.ZodArray<z.ZodObject<{
|
|
47
|
+
name: z.ZodString;
|
|
48
|
+
type: z.ZodString;
|
|
49
|
+
description: z.ZodString;
|
|
50
|
+
}, z.core.$strip>>;
|
|
51
|
+
}, z.core.$strip>>;
|
|
52
|
+
relations: z.ZodArray<z.ZodObject<{
|
|
53
|
+
name: z.ZodString;
|
|
54
|
+
dotted_name: z.ZodString;
|
|
55
|
+
relation_fields: z.ZodArray<z.ZodString>;
|
|
56
|
+
arguments: z.ZodArray<z.ZodObject<{
|
|
57
|
+
name: z.ZodString;
|
|
58
|
+
type: z.ZodString;
|
|
59
|
+
description: z.ZodString;
|
|
60
|
+
}, z.core.$strip>>;
|
|
61
|
+
provides_archive_context: z.ZodBoolean;
|
|
62
|
+
}, z.core.$strip>>;
|
|
63
|
+
provides_archive_context: z.ZodBoolean;
|
|
64
|
+
archive_context: z.ZodNullable<z.ZodObject<{
|
|
65
|
+
query_method: z.ZodString;
|
|
66
|
+
dotted_name: z.ZodString;
|
|
67
|
+
relation_field: z.ZodString;
|
|
68
|
+
current_term_arg: z.ZodString;
|
|
69
|
+
}, z.core.$strip>>;
|
|
70
|
+
}, z.core.$strip>;
|
|
33
71
|
export interface SourcesHandlerDeps {
|
|
34
72
|
readonly client: RestClient;
|
|
35
73
|
/**
|
|
@@ -50,6 +88,22 @@ export declare function handleSourcesList({ client }: SourcesHandlerDeps, { fiel
|
|
|
50
88
|
kind?: string;
|
|
51
89
|
max_chars?: number;
|
|
52
90
|
}): Promise<ToolResult>;
|
|
91
|
+
/**
|
|
92
|
+
* U4 (B2 + B6) — the single largest agent-efficiency lever (Glöckle). Reads
|
|
93
|
+
* ONE source's query methods + their arguments + RELATIONS (Term→Posts etc.)
|
|
94
|
+
* and the `provides_archive_context` flag in ONE call, so an agent no longer
|
|
95
|
+
* SSH-dives YOOtheme PHP (`TaxonomyType`/`Helper`/`CustomPostQueryType`) to
|
|
96
|
+
* discover the native relation binding + the `id:0` current-term convention.
|
|
97
|
+
*
|
|
98
|
+
* Issues `GET /sources/<name>/schema` against the plugin REST (the same shared
|
|
99
|
+
* `SourceRegistry::getSourceSchema()` engine the plugin-served MCP uses), so
|
|
100
|
+
* proxy-mode and plugin-served return byte-identical schemas. A 404
|
|
101
|
+
* (unknown source / YT-not-loaded) becomes a structured `source_not_found`.
|
|
102
|
+
*/
|
|
103
|
+
export declare function handleSourceGetSchema({ client }: SourcesHandlerDeps, { name, max_chars }: {
|
|
104
|
+
name: string;
|
|
105
|
+
max_chars?: number;
|
|
106
|
+
}): Promise<ToolResult>;
|
|
53
107
|
export declare function handleElementGetBinding({ client }: SourcesHandlerDeps, { template_id, element_path }: {
|
|
54
108
|
template_id: string;
|
|
55
109
|
element_path: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAavF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAYlE,OAAO,EAGH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,0BAA0B;;;;;;;;;iBAiBrC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;iBAahC,CAAC;AAmCH;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAStC,CAAC;AAEH,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACnD;AAaD,wBAAsB,iBAAiB,CACnC,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAC9B,EACI,MAAM,EACN,KAAK,EACL,MAAM,EACN,aAAa,EACb,KAAK,EACL,IAAI,EACJ,SAAS,GACZ,EAAE;IACC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GACF,OAAO,CAAC,UAAU,CAAC,CAoFrB;AAID;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CACvC,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAC9B,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,UAAU,CAAC,CA0BrB;AAID,wBAAsB,uBAAuB,CACzC,EAAE,MAAM,EAAE,EAAE,kBAAkB,EAC9B,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7E,OAAO,CAAC,UAAU,CAAC,CAwDrB;AAID,OAAO,EACH,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,oBAAoB,CAAC"}
|
|
@@ -12,6 +12,7 @@ import { detailResult, tableResult } from '@getimo/mcp-toolkit';
|
|
|
12
12
|
import { z } from 'zod';
|
|
13
13
|
import { encodeElementPath, encodeTemplateId } from '../../client.js';
|
|
14
14
|
import { SOURCES_TABLE_COLUMNS, bindingFieldMappingCount, buildBindingDetail, flattenSourcesPayload, mapSourceRow, remapOriginForPlatform, } from '../format/sources-format.js';
|
|
15
|
+
import { buildSourceSchemaDetail, mapSourceSchema, } from '../format/source-schema-format.js';
|
|
15
16
|
import { DEFAULT_FIELDS_SOURCES_LIST, applyMaxChars, columnsFromFields, decodeOffsetCursor, encodeOffsetCursor, projectFields, projectedFieldsEcho, projectionFeedback, projectionWarning, } from '../sparse-fields.js';
|
|
16
17
|
import { errorResult, structuredResult, } from '../tool-builder.js';
|
|
17
18
|
// ─── outputSchemas (Wave G.2 §4) ─────────────────────────────────────
|
|
@@ -47,6 +48,49 @@ export const BINDING_OUTPUT_SCHEMA = z.object({
|
|
|
47
48
|
// text). Absent on the happy path.
|
|
48
49
|
warning: z.string().optional(),
|
|
49
50
|
});
|
|
51
|
+
// ─── source_get_schema (U4 — B2 + B6) ────────────────────────────────
|
|
52
|
+
/** One GraphQL argument descriptor on a query method / relation. */
|
|
53
|
+
const SCHEMA_ARGUMENT = z.object({
|
|
54
|
+
name: z.string(),
|
|
55
|
+
type: z.string(),
|
|
56
|
+
description: z.string(),
|
|
57
|
+
});
|
|
58
|
+
/** A query method (the source field itself) + its arguments. */
|
|
59
|
+
const SCHEMA_QUERY_METHOD = z.object({
|
|
60
|
+
name: z.string(),
|
|
61
|
+
dotted_name: z.string(),
|
|
62
|
+
arguments: z.array(SCHEMA_ARGUMENT),
|
|
63
|
+
});
|
|
64
|
+
/** A relation field on the source's inner type (Term→Posts, …). */
|
|
65
|
+
const SCHEMA_RELATION = z.object({
|
|
66
|
+
name: z.string(),
|
|
67
|
+
dotted_name: z.string(),
|
|
68
|
+
relation_fields: z.array(z.string()),
|
|
69
|
+
arguments: z.array(SCHEMA_ARGUMENT),
|
|
70
|
+
provides_archive_context: z.boolean(),
|
|
71
|
+
});
|
|
72
|
+
/** The B6 archive-context descriptor (the current-term traversal). */
|
|
73
|
+
const SCHEMA_ARCHIVE_CONTEXT = z.object({
|
|
74
|
+
query_method: z.string(),
|
|
75
|
+
dotted_name: z.string(),
|
|
76
|
+
relation_field: z.string(),
|
|
77
|
+
current_term_arg: z.string(),
|
|
78
|
+
});
|
|
79
|
+
/**
|
|
80
|
+
* U4 — the `source_get_schema` outputSchema. A default (strip) ZodObject so a
|
|
81
|
+
* strict (`additionalProperties:false`) host accepts the structuredContent and
|
|
82
|
+
* the shape-pin guard's `.strict()` re-parse passes.
|
|
83
|
+
*/
|
|
84
|
+
export const SOURCE_SCHEMA_OUTPUT_SCHEMA = z.object({
|
|
85
|
+
source_name: z.string(),
|
|
86
|
+
label: z.string(),
|
|
87
|
+
group: z.string(),
|
|
88
|
+
type: z.string(),
|
|
89
|
+
query_methods: z.array(SCHEMA_QUERY_METHOD),
|
|
90
|
+
relations: z.array(SCHEMA_RELATION),
|
|
91
|
+
provides_archive_context: z.boolean(),
|
|
92
|
+
archive_context: SCHEMA_ARCHIVE_CONTEXT.nullable(),
|
|
93
|
+
});
|
|
50
94
|
// ─── sources_list ────────────────────────────────────────────────────
|
|
51
95
|
/** Default page size for sources_list when `limit` is omitted (G-B). */
|
|
52
96
|
const DEFAULT_SOURCES_LIMIT = 50;
|
|
@@ -136,6 +180,44 @@ export async function handleSourcesList({ client }, { fields, limit, cursor, nam
|
|
|
136
180
|
});
|
|
137
181
|
}
|
|
138
182
|
}
|
|
183
|
+
// ─── source_get_schema (U4 — B2 + B6) ────────────────────────────────
|
|
184
|
+
/**
|
|
185
|
+
* U4 (B2 + B6) — the single largest agent-efficiency lever (Glöckle). Reads
|
|
186
|
+
* ONE source's query methods + their arguments + RELATIONS (Term→Posts etc.)
|
|
187
|
+
* and the `provides_archive_context` flag in ONE call, so an agent no longer
|
|
188
|
+
* SSH-dives YOOtheme PHP (`TaxonomyType`/`Helper`/`CustomPostQueryType`) to
|
|
189
|
+
* discover the native relation binding + the `id:0` current-term convention.
|
|
190
|
+
*
|
|
191
|
+
* Issues `GET /sources/<name>/schema` against the plugin REST (the same shared
|
|
192
|
+
* `SourceRegistry::getSourceSchema()` engine the plugin-served MCP uses), so
|
|
193
|
+
* proxy-mode and plugin-served return byte-identical schemas. A 404
|
|
194
|
+
* (unknown source / YT-not-loaded) becomes a structured `source_not_found`.
|
|
195
|
+
*/
|
|
196
|
+
export async function handleSourceGetSchema({ client }, { name, max_chars }) {
|
|
197
|
+
try {
|
|
198
|
+
const data = await client.get(`/sources/${encodeURIComponent(name)}/schema`);
|
|
199
|
+
const schema = mapSourceSchema(data);
|
|
200
|
+
const toolkitResult = detailResult(buildSourceSchemaDetail(schema));
|
|
201
|
+
return structuredResult(applyMaxChars(toolkitResult, max_chars), {
|
|
202
|
+
source_name: schema.source_name,
|
|
203
|
+
label: schema.label,
|
|
204
|
+
group: schema.group,
|
|
205
|
+
type: schema.type,
|
|
206
|
+
query_methods: schema.query_methods,
|
|
207
|
+
relations: schema.relations,
|
|
208
|
+
provides_archive_context: schema.provides_archive_context,
|
|
209
|
+
archive_context: schema.archive_context,
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
catch (e) {
|
|
213
|
+
return errorResult({
|
|
214
|
+
error: e,
|
|
215
|
+
context: { name },
|
|
216
|
+
hint: 'List valid source names with yootheme_builder_sources_list, then retry ' +
|
|
217
|
+
'yootheme_builder_source_get_schema with an exact name.',
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
}
|
|
139
221
|
// ─── element_get_binding ─────────────────────────────────────────────
|
|
140
222
|
export async function handleElementGetBinding({ client }, { template_id, element_path }) {
|
|
141
223
|
const encoded = encodeElementPath(element_path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tools/sources/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EACH,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,sBAAsB,GACzB,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tools/sources/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,6 +57,41 @@ export declare const MAX_CHARS: z.ZodOptional<z.ZodNumber>;
|
|
|
57
57
|
*/
|
|
58
58
|
export declare function decodeOffsetCursor(cursor: string | undefined): number;
|
|
59
59
|
export declare function encodeOffsetCursor(offset: number): string;
|
|
60
|
+
/**
|
|
61
|
+
* B7 (Glöckle continuation cursor): the outcome of windowing a text leg —
|
|
62
|
+
* the (possibly clipped) slice plus enough metadata for the caller to emit a
|
|
63
|
+
* continuation cursor. `clipped` is true ONLY when there is MORE text after
|
|
64
|
+
* the returned slice; `nextOffset` is the char index a follow-up read must
|
|
65
|
+
* resume from (always `offset + slice.length` of the RAW slice, before the
|
|
66
|
+
* marker is appended) so paging is loss-free and the marker never counts
|
|
67
|
+
* against the offset.
|
|
68
|
+
*/
|
|
69
|
+
export interface TextWindow {
|
|
70
|
+
/** The windowed slice (with a truncation marker appended iff `clipped`). */
|
|
71
|
+
readonly text: string;
|
|
72
|
+
/** True iff text remains AFTER this slice (caller should emit next_cursor). */
|
|
73
|
+
readonly clipped: boolean;
|
|
74
|
+
/** Char offset to resume from on the next read (only meaningful if clipped). */
|
|
75
|
+
readonly nextOffset: number;
|
|
76
|
+
/** The offset this window started at (echoed for the cursor contract). */
|
|
77
|
+
readonly offset: number;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* B7: window a string from `offset` for up to `maxChars` chars, reporting
|
|
81
|
+
* whether anything remains after the slice.
|
|
82
|
+
*
|
|
83
|
+
* Pure. When `maxChars` is undefined the WHOLE remainder from `offset` is
|
|
84
|
+
* returned unclipped (the default, no-cursor path). When the remainder fits
|
|
85
|
+
* within `maxChars` it is returned unclipped. Otherwise the slice is capped
|
|
86
|
+
* (reserving room for the truncation marker so the returned text never exceeds
|
|
87
|
+
* `maxChars`) and `clipped` is true with `nextOffset` pointing one past the
|
|
88
|
+
* last raw char emitted — so a follow-up read resumes EXACTLY where this one
|
|
89
|
+
* stopped, losing no characters.
|
|
90
|
+
*
|
|
91
|
+
* `offset` is clamped to `[0, text.length]`; a `nextOffset === text.length`
|
|
92
|
+
* read returns an empty, unclipped final slice (the natural end of paging).
|
|
93
|
+
*/
|
|
94
|
+
export declare function clipTextWindow(text: string, offset: number, maxChars: number | undefined): TextWindow;
|
|
60
95
|
/**
|
|
61
96
|
* G-B: cap the text leg of an already-built tool result at `maxChars`.
|
|
62
97
|
*
|
|
@@ -67,7 +102,8 @@ export declare function encodeOffsetCursor(offset: number): string;
|
|
|
67
102
|
* when the first block is not text, or when the text is already within budget.
|
|
68
103
|
*
|
|
69
104
|
* The slice reserves room for the truncation marker so the returned text never
|
|
70
|
-
* exceeds `maxChars`.
|
|
105
|
+
* exceeds `maxChars`. B7: implemented on top of {@link clipTextWindow} (offset
|
|
106
|
+
* 0) so the simple cap and the continuation-cursor path clip identically.
|
|
71
107
|
*/
|
|
72
108
|
export declare function applyMaxChars<R extends {
|
|
73
109
|
content: ToolContent[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sparse-fields.d.ts","sourceRoot":"","sources":["../../src/tools/sparse-fields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D;;;;GAIG;AACH,eAAO,MAAM,MAAM,wCASd,CAAC;AAEN;;;;GAIG;AACH,eAAO,MAAM,IAAI,4BAMZ,CAAC;AAEN;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,4BAWjB,CAAC;AAEN;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAYrE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzD;AAKD
|
|
1
|
+
{"version":3,"file":"sparse-fields.d.ts","sourceRoot":"","sources":["../../src/tools/sparse-fields.ts"],"names":[],"mappings":"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"}
|
|
@@ -95,6 +95,36 @@ export function encodeOffsetCursor(offset) {
|
|
|
95
95
|
}
|
|
96
96
|
/** Marker appended when {@link applyMaxChars} truncates a text leg. */
|
|
97
97
|
const TRUNCATION_MARKER = '\n--- TRUNCATED by max_chars ---';
|
|
98
|
+
/**
|
|
99
|
+
* B7: window a string from `offset` for up to `maxChars` chars, reporting
|
|
100
|
+
* whether anything remains after the slice.
|
|
101
|
+
*
|
|
102
|
+
* Pure. When `maxChars` is undefined the WHOLE remainder from `offset` is
|
|
103
|
+
* returned unclipped (the default, no-cursor path). When the remainder fits
|
|
104
|
+
* within `maxChars` it is returned unclipped. Otherwise the slice is capped
|
|
105
|
+
* (reserving room for the truncation marker so the returned text never exceeds
|
|
106
|
+
* `maxChars`) and `clipped` is true with `nextOffset` pointing one past the
|
|
107
|
+
* last raw char emitted — so a follow-up read resumes EXACTLY where this one
|
|
108
|
+
* stopped, losing no characters.
|
|
109
|
+
*
|
|
110
|
+
* `offset` is clamped to `[0, text.length]`; a `nextOffset === text.length`
|
|
111
|
+
* read returns an empty, unclipped final slice (the natural end of paging).
|
|
112
|
+
*/
|
|
113
|
+
export function clipTextWindow(text, offset, maxChars) {
|
|
114
|
+
const start = Math.min(Math.max(0, offset), text.length);
|
|
115
|
+
const remainder = text.slice(start);
|
|
116
|
+
if (maxChars === undefined || remainder.length <= maxChars) {
|
|
117
|
+
return { text: remainder, clipped: false, nextOffset: text.length, offset: start };
|
|
118
|
+
}
|
|
119
|
+
const room = Math.max(0, maxChars - TRUNCATION_MARKER.length);
|
|
120
|
+
const rawSlice = remainder.slice(0, room);
|
|
121
|
+
return {
|
|
122
|
+
text: rawSlice + TRUNCATION_MARKER,
|
|
123
|
+
clipped: true,
|
|
124
|
+
nextOffset: start + rawSlice.length,
|
|
125
|
+
offset: start,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
98
128
|
/**
|
|
99
129
|
* G-B: cap the text leg of an already-built tool result at `maxChars`.
|
|
100
130
|
*
|
|
@@ -105,7 +135,8 @@ const TRUNCATION_MARKER = '\n--- TRUNCATED by max_chars ---';
|
|
|
105
135
|
* when the first block is not text, or when the text is already within budget.
|
|
106
136
|
*
|
|
107
137
|
* The slice reserves room for the truncation marker so the returned text never
|
|
108
|
-
* exceeds `maxChars`.
|
|
138
|
+
* exceeds `maxChars`. B7: implemented on top of {@link clipTextWindow} (offset
|
|
139
|
+
* 0) so the simple cap and the continuation-cursor path clip identically.
|
|
109
140
|
*/
|
|
110
141
|
export function applyMaxChars(result, maxChars) {
|
|
111
142
|
if (maxChars === undefined)
|
|
@@ -114,14 +145,13 @@ export function applyMaxChars(result, maxChars) {
|
|
|
114
145
|
if (first === undefined || first.type !== 'text' || typeof first.text !== 'string') {
|
|
115
146
|
return result;
|
|
116
147
|
}
|
|
117
|
-
|
|
148
|
+
const window = clipTextWindow(first.text, 0, maxChars);
|
|
149
|
+
if (!window.clipped)
|
|
118
150
|
return result;
|
|
119
|
-
const room = Math.max(0, maxChars - TRUNCATION_MARKER.length);
|
|
120
|
-
const truncated = first.text.slice(0, room) + TRUNCATION_MARKER;
|
|
121
151
|
const rest = result.content.slice(1);
|
|
122
152
|
return {
|
|
123
153
|
...result,
|
|
124
|
-
content: [{ ...first, text:
|
|
154
|
+
content: [{ ...first, text: window.text }, ...rest],
|
|
125
155
|
};
|
|
126
156
|
}
|
|
127
157
|
// ─── Default field-sets per tool ─────────────────────────────────────
|