Change getAllTools() to return ToolInfo[] instead of string[]

Breaking change: pi.getAllTools() now returns Array<{ name, description }>
instead of string[]. Extensions needing just names can use .map(t => t.name).

Removes redundant getToolInfo() method added in original PR.

Fixes #647
This commit is contained in:
Mario Zechner 2026-01-12 17:16:36 +01:00
parent 34ecca352e
commit 1367a76ee8
12 changed files with 34 additions and 19 deletions

View file

@ -133,9 +133,9 @@ export default function presetExtension(pi: ExtensionAPI) {
// Apply tools if specified
if (preset.tools && preset.tools.length > 0) {
const allTools = pi.getAllTools();
const validTools = preset.tools.filter((t) => allTools.includes(t));
const invalidTools = preset.tools.filter((t) => !allTools.includes(t));
const allToolNames = pi.getAllTools().map((t) => t.name);
const validTools = preset.tools.filter((t) => allToolNames.includes(t));
const invalidTools = preset.tools.filter((t) => !allToolNames.includes(t));
if (invalidTools.length > 0) {
ctx.ui.notify(`Preset "${name}": Unknown tools: ${invalidTools.join(", ")}`, "warning");