takomi 2.5.4 → 2.5.5
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.
|
@@ -392,15 +392,50 @@ export async function executeTakomiSubagentTool(
|
|
|
392
392
|
takomi: { action: "list", agentScope },
|
|
393
393
|
});
|
|
394
394
|
}
|
|
395
|
-
if (
|
|
395
|
+
if (params.action === "get" || params.action === "models") {
|
|
396
396
|
const agents = discoverTakomiAgents(rootCwd, agentScope);
|
|
397
|
-
|
|
397
|
+
const selected = params.agent ? agents.find((agent) => agent.name === params.agent) : undefined;
|
|
398
|
+
if (!selected) {
|
|
398
399
|
return textResult(
|
|
399
|
-
|
|
400
|
-
|
|
400
|
+
params.agent
|
|
401
|
+
? `Unknown or hidden Takomi persona '${params.agent}'. Available personas: ${agents.map((agent) => agent.name).join(", ") || "none"}.`
|
|
402
|
+
: `agent is required for action=${params.action}.`,
|
|
403
|
+
{ results: [], action: params.action, agentScope, reason: params.agent ? "unknown-persona" : "missing-agent" },
|
|
401
404
|
true,
|
|
402
405
|
);
|
|
403
406
|
}
|
|
407
|
+
const routingSnapshot = await loadTakomiModelRoutingSnapshot(rootCwd);
|
|
408
|
+
const routed = applyTakomiRoutingDefaults({
|
|
409
|
+
agent: selected.name,
|
|
410
|
+
model: selected.model,
|
|
411
|
+
fallbackModels: selected.fallbackModels,
|
|
412
|
+
thinking: selected.thinking,
|
|
413
|
+
}, routingSnapshot);
|
|
414
|
+
const modelLines = [
|
|
415
|
+
`Model: ${routed.model ?? "Pi/harness default"}`,
|
|
416
|
+
`Thinking: ${routed.thinking ?? "Pi default"}`,
|
|
417
|
+
`Fallbacks: ${routed.fallbackModels?.join(", ") || "none"}`,
|
|
418
|
+
];
|
|
419
|
+
const lines = params.action === "models"
|
|
420
|
+
? [`Takomi model routing for ${selected.name}:`, ...modelLines]
|
|
421
|
+
: [
|
|
422
|
+
`Takomi persona: ${selected.name}`,
|
|
423
|
+
`Source: ${selected.source}`,
|
|
424
|
+
`Description: ${selected.description}`,
|
|
425
|
+
`Tools: ${selected.tools?.join(", ") || "Pi defaults"}`,
|
|
426
|
+
`Default context: ${selected.defaultContext ?? "fresh"}`,
|
|
427
|
+
`Definition: ${selected.filePath}`,
|
|
428
|
+
"",
|
|
429
|
+
...modelLines,
|
|
430
|
+
];
|
|
431
|
+
return textResult(lines.join("\n"), {
|
|
432
|
+
action: params.action,
|
|
433
|
+
agentScope,
|
|
434
|
+
agent: selected.name,
|
|
435
|
+
persona: selected,
|
|
436
|
+
routing: routed,
|
|
437
|
+
takomi: { action: params.action, agentScope },
|
|
438
|
+
});
|
|
404
439
|
}
|
|
405
440
|
try {
|
|
406
441
|
const nativeResult: any = await engine.execute(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "takomi",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.5",
|
|
4
4
|
"description": "🎯 Stop wrestling with AI. Start building with purpose. The artisan's toolkit for agent workflows, Codex skills, and original Takomi capabilities like 21st.dev integration.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|