0xkobold 0.6.4 → 0.6.6

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.
Files changed (98) hide show
  1. package/README.md +9 -3
  2. package/dist/package.json +4 -2
  3. package/dist/src/cli/index.js +0 -0
  4. package/dist/src/extensions/core/workspace-footer-extension.js +2 -11
  5. package/dist/src/extensions/core/workspace-footer-extension.js.map +1 -1
  6. package/dist/src/index.js +31 -5
  7. package/dist/src/index.js.map +1 -1
  8. package/package.json +4 -2
  9. package/dist/src/agents/task-router.js +0 -194
  10. package/dist/src/agents/task-router.js.map +0 -1
  11. package/dist/src/agents/tools/index.js +0 -2
  12. package/dist/src/agents/tools/index.js.map +0 -1
  13. package/dist/src/agents/tools/spawn-agent.js +0 -200
  14. package/dist/src/agents/tools/spawn-agent.js.map +0 -1
  15. package/dist/src/agents/types/definitions.js +0 -317
  16. package/dist/src/agents/types/definitions.js.map +0 -1
  17. package/dist/src/agents/types/index.js +0 -2
  18. package/dist/src/agents/types/index.js.map +0 -1
  19. package/dist/src/cli/program-fixed.js +0 -1
  20. package/dist/src/cli/program-fixed.js.map +0 -1
  21. package/dist/src/extensions/core/agent-lifecycle-extension.js +0 -323
  22. package/dist/src/extensions/core/agent-lifecycle-extension.js.map +0 -1
  23. package/dist/src/extensions/core/agent-registry-extension.js +0 -541
  24. package/dist/src/extensions/core/agent-registry-extension.js.map +0 -1
  25. package/dist/src/extensions/core/agent-worker.js +0 -148
  26. package/dist/src/extensions/core/agent-worker.js.map +0 -1
  27. package/dist/src/extensions/core/agent-workspace-extension.js +0 -174
  28. package/dist/src/extensions/core/agent-workspace-extension.js.map +0 -1
  29. package/dist/src/extensions/core/auto-compact-on-error-extension.js +0 -244
  30. package/dist/src/extensions/core/auto-compact-on-error-extension.js.map +0 -1
  31. package/dist/src/extensions/core/autonomous-executor-extension.js +0 -145
  32. package/dist/src/extensions/core/autonomous-executor-extension.js.map +0 -1
  33. package/dist/src/extensions/core/autonomous-subagent-extension.js +0 -333
  34. package/dist/src/extensions/core/autonomous-subagent-extension.js.map +0 -1
  35. package/dist/src/extensions/core/compaction-safeguard-v2.js +0 -95
  36. package/dist/src/extensions/core/compaction-safeguard-v2.js.map +0 -1
  37. package/dist/src/extensions/core/confirm-destructive.js +0 -43
  38. package/dist/src/extensions/core/confirm-destructive.js.map +0 -1
  39. package/dist/src/extensions/core/context-aware-extension.js +0 -124
  40. package/dist/src/extensions/core/context-aware-extension.js.map +0 -1
  41. package/dist/src/extensions/core/deprecated/agent-lifecycle-extension.js +0 -323
  42. package/dist/src/extensions/core/deprecated/agent-lifecycle-extension.js.map +0 -1
  43. package/dist/src/extensions/core/deprecated/autonomous-subagent-extension.js +0 -333
  44. package/dist/src/extensions/core/deprecated/autonomous-subagent-extension.js.map +0 -1
  45. package/dist/src/extensions/core/deprecated/subagent-extension.js +0 -647
  46. package/dist/src/extensions/core/deprecated/subagent-extension.js.map +0 -1
  47. package/dist/src/extensions/core/dirty-repo-guard.js +0 -42
  48. package/dist/src/extensions/core/dirty-repo-guard.js.map +0 -1
  49. package/dist/src/extensions/core/env-loader-extension.js +0 -157
  50. package/dist/src/extensions/core/env-loader-extension.js.map +0 -1
  51. package/dist/src/extensions/core/git-checkpoint.js +0 -46
  52. package/dist/src/extensions/core/git-checkpoint.js.map +0 -1
  53. package/dist/src/extensions/core/handoff-extension.js +0 -206
  54. package/dist/src/extensions/core/handoff-extension.js.map +0 -1
  55. package/dist/src/extensions/core/memory-extension.js +0 -120
  56. package/dist/src/extensions/core/memory-extension.js.map +0 -1
  57. package/dist/src/extensions/core/memory-synthesis-extension.js +0 -137
  58. package/dist/src/extensions/core/memory-synthesis-extension.js.map +0 -1
  59. package/dist/src/extensions/core/mode-manager-extension.js +0 -592
  60. package/dist/src/extensions/core/mode-manager-extension.js.map +0 -1
  61. package/dist/src/extensions/core/ollama-cloud-extension.js +0 -132
  62. package/dist/src/extensions/core/ollama-cloud-extension.js.map +0 -1
  63. package/dist/src/extensions/core/ollama-provider-extension.js +0 -66
  64. package/dist/src/extensions/core/ollama-provider-extension.js.map +0 -1
  65. package/dist/src/extensions/core/ollama-router-extension.js +0 -41
  66. package/dist/src/extensions/core/ollama-router-extension.js.map +0 -1
  67. package/dist/src/extensions/core/protected-paths.js +0 -24
  68. package/dist/src/extensions/core/protected-paths.js.map +0 -1
  69. package/dist/src/extensions/core/questionnaire-extension.js +0 -242
  70. package/dist/src/extensions/core/questionnaire-extension.js.map +0 -1
  71. package/dist/src/extensions/core/session-bridge-extension.js +0 -14
  72. package/dist/src/extensions/core/session-bridge-extension.js.map +0 -1
  73. package/dist/src/extensions/core/session-manager-extension.js +0 -336
  74. package/dist/src/extensions/core/session-manager-extension.js.map +0 -1
  75. package/dist/src/extensions/core/session-name-extension.js +0 -88
  76. package/dist/src/extensions/core/session-name-extension.js.map +0 -1
  77. package/dist/src/extensions/core/session-pruning-extension.js +0 -480
  78. package/dist/src/extensions/core/session-pruning-extension.js.map +0 -1
  79. package/dist/src/extensions/core/subagent-extension.js +0 -647
  80. package/dist/src/extensions/core/subagent-extension.js.map +0 -1
  81. package/dist/src/extensions/core/tui-integration-extension-fixed.js +0 -3
  82. package/dist/src/extensions/core/tui-integration-extension-fixed.js.map +0 -1
  83. package/dist/src/extensions/core/websearch-extension.js +0 -489
  84. package/dist/src/extensions/core/websearch-extension.js.map +0 -1
  85. package/dist/src/extensions/core/websearch-v2-extension.js +0 -303
  86. package/dist/src/extensions/core/websearch-v2-extension.js.map +0 -1
  87. package/dist/src/tui/commands/final-functions.js +0 -39
  88. package/dist/src/tui/commands/final-functions.js.map +0 -1
  89. package/dist/src/tui/commands/orchestration-final-section.js +0 -84
  90. package/dist/src/tui/commands/orchestration-final-section.js.map +0 -1
  91. package/dist/src/tui/components/footer.js +0 -106
  92. package/dist/src/tui/components/footer.js.map +0 -1
  93. package/dist/src/tui/components/sidebar.js +0 -82
  94. package/dist/src/tui/components/sidebar.js.map +0 -1
  95. package/dist/src/tui/gateway-chat-client.js +0 -218
  96. package/dist/src/tui/gateway-chat-client.js.map +0 -1
  97. package/dist/src/tui/pi-tui-integration.js +0 -260
  98. package/dist/src/tui/pi-tui-integration.js.map +0 -1
package/README.md CHANGED
@@ -1,8 +1,14 @@
1
- # 0xKobold v0.6.3 "Workspace Fix"
1
+ # 0xKobold v0.6.6 "Workspace Isolation"
2
2
 
3
- **v0.6.2** — Workspace-aware footer, cleaner gateway display
3
+ **v0.6.6** — Enforce global workspace sandboxing, proper CWD isolation
4
4
 
5
- **v0.6.1** — Gateway auto-start opt-in (fixes port conflicts)
5
+ **v0.6.5** — Clean dist/ before build, removes ghost extensions
6
+
7
+ **v0.6.4** — Fix workspace detection from home directory
8
+
9
+ **v0.6.3** — Workspace-aware footer, cleaner gateway display
10
+
11
+ **v0.6.2** — Gateway auto-start opt-in (fixes port conflicts)
6
12
 
7
13
  **v0.6.0 "Koclaw Gateway"** — JSON-RPC gateway, session persistence, multi-channel
8
14
 
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0xkobold",
3
- "version": "0.6.4",
3
+ "version": "0.6.6",
4
4
  "description": "Your digital familiar - Koclaw-style gateway, session management, and multi-agent orchestration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -16,7 +16,9 @@
16
16
  "./package.json": "./package.json"
17
17
  },
18
18
  "scripts": {
19
+ "clean": "rm -rf dist/",
19
20
  "build": "tsc",
21
+ "build:clean": "npm run clean && npm run build",
20
22
  "dev": "tsc --watch",
21
23
  "start": "bun run src/index.ts",
22
24
  "cli": "bun run src/cli/index.ts",
@@ -28,7 +30,7 @@
28
30
  "update:install": "bun run src/cli/index.ts update install",
29
31
  "update:framework": "bun run src/cli/index.ts update framework",
30
32
  "setup-hooks": "bash scripts/install-hooks.sh",
31
- "prepublishOnly": "bun run build",
33
+ "prepublishOnly": "npm run clean && npm run build",
32
34
  "postinstall": "node scripts/postinstall.js && node scripts/link-pi-extensions.js || echo 'Welcome to 0xKobold! Run: 0xkobold setup'"
33
35
  },
34
36
  "keywords": [
File without changes
@@ -65,20 +65,11 @@ export default async function register(pi) {
65
65
  const state = getWorkspaceState();
66
66
  console.log(`[WorkspaceFooter] Mode: ${state.isLocal ? 'local' : 'global'}`);
67
67
  console.log(`[WorkspaceFooter] Path: ${state.workspacePath}`);
68
- // Set initial footer status
68
+ console.log(`[WorkspaceFooter] CWD: ${process.cwd()}`);
69
+ // Set footer status (cwd already set at entry point)
69
70
  const emoji = state.isLocal ? "📁" : "🏠";
70
71
  const text = `${emoji} ${state.displayPath}`;
71
72
  ctx.ui.setStatus("workspace", text);
72
- // Update working directory for file operations
73
- if (state.workspacePath !== process.cwd()) {
74
- try {
75
- process.chdir(state.workspacePath);
76
- console.log(`[WorkspaceFooter] Changed cwd to: ${state.workspacePath}`);
77
- }
78
- catch (err) {
79
- console.warn(`[WorkspaceFooter] Could not change cwd: ${err}`);
80
- }
81
- }
82
73
  // Cleanup on shutdown
83
74
  pi.on("session_shutdown", async () => {
84
75
  ctx.ui.setStatus("workspace", undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-footer-extension.js","sourceRoot":"","sources":["../../../../src/extensions/core/workspace-footer-extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-footer-extension.js","sourceRoot":"","sources":["../../../../src/extensions/core/workspace-footer-extension.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -32,6 +32,35 @@ const extensionExt = isRunningFromDist ? '.js' : '.ts';
32
32
  // Use 0xKobold directory for pi-coding-agent data (sessions, settings, auth)
33
33
  // This keeps everything in ~/.0xkobold instead of ~/.pi
34
34
  process.env.PI_CODING_AGENT_DIR = process.env.PI_CODING_AGENT_DIR || resolve(homedir(), '.0xkobold');
35
+ // Change working directory to global workspace when NOT in local mode
36
+ // This ensures file operations are sandboxed to ~/.0xkobold unless --local is used
37
+ const globalWorkspace = resolve(homedir(), '.0xkobold');
38
+ // Check process.argv directly since we're at module level (before main() runs)
39
+ const isLocalMode = process.argv.slice(2).includes('--local');
40
+ if (!isLocalMode) {
41
+ // Global mode: enforce working directory is ~/.0xkobold
42
+ process.env.KOBOLD_LOCAL_MODE = 'false';
43
+ if (existsSync(globalWorkspace)) {
44
+ try {
45
+ process.chdir(globalWorkspace);
46
+ process.env.KOBOLD_WORKING_DIR = globalWorkspace;
47
+ console.log(`[Workspace] Global mode - cwd set to: ${globalWorkspace}`);
48
+ }
49
+ catch (err) {
50
+ console.warn(`[Workspace] Could not change to global workspace: ${err}`);
51
+ }
52
+ }
53
+ else {
54
+ console.warn(`[Workspace] Global workspace does not exist: ${globalWorkspace}`);
55
+ console.log(`[Workspace] Run '0xkobold init' to create it`);
56
+ }
57
+ }
58
+ else {
59
+ // Local mode: cwd stays as-is (wherever --local was invoked from)
60
+ process.env.KOBOLD_LOCAL_MODE = 'true';
61
+ process.env.KOBOLD_WORKING_DIR = process.cwd();
62
+ console.log(`[Workspace] Local mode - cwd: ${process.cwd()}`);
63
+ }
35
64
  // Disable pi-coding-agent's built-in update notifications
36
65
  // (we manage our own updates via self-update-extension)
37
66
  process.env.PI_SKIP_VERSION_CHECK = process.env.PI_SKIP_VERSION_CHECK || '1';
@@ -139,16 +168,13 @@ async function main() {
139
168
  // Check for --local flag to enable per-project mode
140
169
  const localMode = args.includes('--local');
141
170
  if (localMode) {
142
- // Set local mode env var for extensions to detect
143
- process.env.KOBOLD_LOCAL_MODE = 'true';
171
+ // KOBOLD_LOCAL_MODE and KOBOLD_WORKING_DIR already set at module level
144
172
  console.log('🐉 0xKobold starting in LOCAL mode...');
145
173
  console.log(` Project: ${process.cwd()}`);
146
174
  console.log(` Extensions: ${isRunningFromDist ? 'production' : 'development'}`);
147
175
  }
148
176
  else {
149
- // Explicitly set false for global mode so extensions can detect
150
- process.env.KOBOLD_LOCAL_MODE = 'false';
151
- process.env.KOBOLD_WORKING_DIR = resolve(homedir(), '.0xkobold');
177
+ // Env vars already set at module level
152
178
  console.log('🐉 0xKobold starting with PI Framework...');
153
179
  if (isRunningFromDist) {
154
180
  console.log(' Mode: Production (from dist)');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0xkobold",
3
- "version": "0.6.4",
3
+ "version": "0.6.6",
4
4
  "description": "Your digital familiar - Koclaw-style gateway, session management, and multi-agent orchestration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -16,7 +16,9 @@
16
16
  "./package.json": "./package.json"
17
17
  },
18
18
  "scripts": {
19
+ "clean": "rm -rf dist/",
19
20
  "build": "tsc",
21
+ "build:clean": "npm run clean && npm run build",
20
22
  "dev": "tsc --watch",
21
23
  "start": "bun run src/index.ts",
22
24
  "cli": "bun run src/cli/index.ts",
@@ -28,7 +30,7 @@
28
30
  "update:install": "bun run src/cli/index.ts update install",
29
31
  "update:framework": "bun run src/cli/index.ts update framework",
30
32
  "setup-hooks": "bash scripts/install-hooks.sh",
31
- "prepublishOnly": "bun run build",
33
+ "prepublishOnly": "npm run clean && npm run build",
32
34
  "postinstall": "node scripts/postinstall.js && node scripts/link-pi-extensions.js || echo 'Welcome to 0xKobold! Run: 0xkobold setup'"
33
35
  },
34
36
  "keywords": [
@@ -1,194 +0,0 @@
1
- /**
2
- * Task Router - v0.2.0
3
- *
4
- * Routes tasks to appropriate agent types based on task content.
5
- * Part of the Unified Agent Orchestration system.
6
- */
7
- import { AGENT_TYPES } from "./types/index.js";
8
- /**
9
- * Analyze task and route to appropriate agent
10
- */
11
- export function routeTask(request) {
12
- const task = request.task.toLowerCase();
13
- const context = (request.context || "").toLowerCase();
14
- // Keywords for each agent type
15
- const keywords = {
16
- coordinator: ["plan", "coordinate", "organize", "delegate", "manage", "break down", "multiple"],
17
- researcher: ["research", "find", "search", "investigate", "lookup", "document", "learn about"],
18
- reviewer: ["review", "check", "validate", "audit", "inspect", "quality", "verify"],
19
- specialist: ["optimize", "refactor", "architecture", "design", "expert", "complex", "advanced"],
20
- worker: ["implement", "code", "write", "create", "build", "fix", "test", "update"]
21
- };
22
- // Score each agent type
23
- const scores = {
24
- coordinator: 0,
25
- researcher: 0,
26
- reviewer: 0,
27
- specialist: 0,
28
- worker: 0
29
- };
30
- // Check keywords
31
- for (const [agentType, words] of Object.entries(keywords)) {
32
- for (const word of words) {
33
- if (task.includes(word) || context.includes(word)) {
34
- scores[agentType] += 1;
35
- }
36
- }
37
- }
38
- // Special patterns
39
- if (/\b(design|architect|optimize|performance|security)\b/.test(task + context)) {
40
- scores.specialist += 2;
41
- }
42
- if (/\b(bug|fix|implement|create|write)\b/.test(task + context)) {
43
- scores.worker += 2;
44
- }
45
- if (/\b(review|check|validate|audit)\b/.test(task + context)) {
46
- scores.reviewer += 2;
47
- }
48
- if (/\b(research|find|document|search)\b/.test(task + context)) {
49
- scores.researcher += 2;
50
- }
51
- if (/\b(plan|coordinate|multiple|team|organize)\b/.test(task + context)) {
52
- scores.coordinator += 2;
53
- }
54
- // Find best match
55
- let bestAgent = "worker"; // default
56
- let bestScore = -1;
57
- for (const [agent, score] of Object.entries(scores)) {
58
- if (score > bestScore) {
59
- bestScore = score;
60
- bestAgent = agent;
61
- }
62
- }
63
- // Calculate confidence
64
- const confidence = Math.min(0.95, 0.5 + bestScore * 0.15);
65
- // Get alternatives
66
- const alternatives = Object.entries(scores)
67
- .filter(([agent, score]) => agent !== bestAgent && score > 0)
68
- .sort((a, b) => b[1] - a[1])
69
- .slice(0, 2)
70
- .map(([agent]) => AGENT_TYPES[agent]);
71
- // Estimate complexity
72
- let complexity = "medium";
73
- if (/\b(plan|architecture|design|multiple|coordinate)\b/i.test(task)) {
74
- complexity = "complex";
75
- }
76
- else if (/\b(simple|quick|minor|small)\b/i.test(task)) {
77
- complexity = "simple";
78
- }
79
- // Build reasoning
80
- const reasoning = buildReasoning(bestAgent, request, scores);
81
- return {
82
- recommendedAgent: AGENT_TYPES[bestAgent],
83
- confidence,
84
- reasoning,
85
- alternativeAgents: alternatives,
86
- estimatedComplexity: complexity,
87
- suggestions: generateSuggestions(request, bestAgent)
88
- };
89
- }
90
- /**
91
- * Build human-readable reasoning
92
- */
93
- function buildReasoning(agentType, request, scores) {
94
- const task = request.task;
95
- switch (agentType) {
96
- case "coordinator":
97
- return `Task "${task}" appears to require planning and coordination. It mentions aspects that suggest multiple subtasks or need for delegation.`;
98
- case "researcher":
99
- return `Task "${task}" is primarily about information gathering. A Researcher is best suited to find and synthesize this information.`;
100
- case "reviewer":
101
- return `Task "${task}" involves validation and quality assurance. A Reviewer will ensure standards are met.`;
102
- case "specialist":
103
- return `Task "${task}" requires deep domain expertise. A Specialist ${AGENT_TYPES.specialist.emoji} has the knowledge needed.`;
104
- case "worker":
105
- default:
106
- return `Task "${task}" is an implementation task best handled by a Worker agent. All scores: ${JSON.stringify(scores)}`;
107
- }
108
- }
109
- /**
110
- * Generate helpful suggestions
111
- */
112
- function generateSuggestions(request, agentType) {
113
- const suggestions = [];
114
- if (agentType === "coordinator") {
115
- suggestions.push("Consider breaking this into clearly defined subtasks");
116
- suggestions.push("Identify dependencies between subtasks");
117
- }
118
- if (agentType === "worker") {
119
- const complexity = /\b(complex|multiple|architecture)\b/i.test(request.task) ? "high" : "low";
120
- if (complexity === "high") {
121
- suggestions.push("This appears complex - consider using a Specialist for the design phase");
122
- suggestions.push("A Reviewer could validate the implementation");
123
- }
124
- }
125
- if (agentType === "specialist") {
126
- suggestions.push("Consider having a Worker implement the solution after design");
127
- }
128
- if (!request.expectedOutput) {
129
- suggestions.push("Consider specifying expected output format in the task");
130
- }
131
- return suggestions;
132
- }
133
- /**
134
- * Get quick agent recommendation
135
- */
136
- export function quickRoute(task) {
137
- const result = routeTask({ task });
138
- return result.recommendedAgent;
139
- }
140
- /**
141
- * Check if task should use subagents
142
- */
143
- export function shouldUseSubagents(task) {
144
- const complexity = analyzeComplexity(task);
145
- if (complexity === "simple") {
146
- return {
147
- useSubagents: false,
148
- reason: "Task is simple enough to handle directly",
149
- complexity
150
- };
151
- }
152
- if (complexity === "complex") {
153
- return {
154
- useSubagents: true,
155
- reason: "Complex task would benefit from coordinated subagents",
156
- complexity
157
- };
158
- }
159
- return {
160
- useSubagents: false,
161
- reason: "Medium complexity - use subagents if parallel work is possible",
162
- complexity
163
- };
164
- }
165
- /**
166
- * Analyze task complexity
167
- */
168
- function analyzeComplexity(task) {
169
- const taskLower = task.toLowerCase();
170
- // Complex indicators
171
- const complexIndicators = [
172
- /\b(multiple|several|various)\b/,
173
- /\b(coordinate|orchestrate|plan)\b/,
174
- /\b(architecture|design|refactor)\b/,
175
- /\band\b.*\band\b.*\band\b/, // Multiple "and" clauses
176
- /\b(system|framework|platform)\b/,
177
- /\b(migrate|upgrade|rewrite)\b/,
178
- ];
179
- // Simple indicators
180
- const simpleIndicators = [
181
- /\b(simple|quick|minor|small|fix)\b/,
182
- /^\s*\w+\s+(the|a|an)\s+\w+\s*$/, // Simple action pattern
183
- /^\s*(add|fix|update|remove)\s+/i,
184
- /\b(just|only|single)\b/,
185
- ];
186
- const complexScore = complexIndicators.filter(r => r.test(taskLower)).length;
187
- const simpleScore = simpleIndicators.filter(r => r.test(taskLower)).length;
188
- if (complexScore >= 2)
189
- return "complex";
190
- if (simpleScore >= 2 || task.length < 50)
191
- return "simple";
192
- return "medium";
193
- }
194
- //# sourceMappingURL=task-router.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"task-router.js","sourceRoot":"","sources":["../../../src/agents/task-router.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export { spawnAgent, spawnAgents, getSpawnAgentToolConfig, executeSpawnAgent } from "./spawn-agent.js";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,200 +0,0 @@
1
- /**
2
- * Spawn Agent Tool - v0.2.0
3
- *
4
- * Spawns a subagent of a specific type with appropriate configuration.
5
- * Part of the Unified Agent Orchestration system.
6
- */
7
- import { getAgentType } from "../types/index.js";
8
- import { routeTask } from "../task-router.js";
9
- /**
10
- * Generate unique agent ID
11
- */
12
- function generateAgentId(type) {
13
- const timestamp = Date.now().toString(36).slice(-4);
14
- const random = Math.random().toString(36).slice(2, 6);
15
- return `${type}-${timestamp}-${random}`;
16
- }
17
- /**
18
- * Spawn a specialized agent
19
- */
20
- export async function spawnAgent(params) {
21
- let agentType;
22
- let routingInfo;
23
- // Auto-route if requested or no type specified
24
- if (params.autoRoute || !params.agentType) {
25
- const taskRequest = {
26
- task: params.task,
27
- context: params.context,
28
- priority: params.priority,
29
- };
30
- routingInfo = routeTask(taskRequest);
31
- agentType = routingInfo.recommendedAgent;
32
- }
33
- else {
34
- const found = getAgentType(params.agentType);
35
- if (!found) {
36
- return {
37
- success: false,
38
- agentId: "",
39
- agentType: getAgentType("worker"), // fallback
40
- task: params.task,
41
- systemPrompt: "",
42
- maxIterations: 0,
43
- error: `Unknown agent type: ${params.agentType}. Valid types: coordinator, specialist, researcher, worker, reviewer`,
44
- };
45
- }
46
- agentType = found;
47
- }
48
- const agentId = generateAgentId(agentType.id);
49
- // Build system prompt
50
- const systemPrompt = buildAgentSystemPrompt(agentType, params);
51
- // Override maxIterations if specified
52
- const maxIterations = params.maxIterations || agentType.maxIterations;
53
- return {
54
- success: true,
55
- agentId,
56
- agentType,
57
- task: params.task,
58
- systemPrompt,
59
- maxIterations,
60
- routingInfo,
61
- };
62
- }
63
- /**
64
- * Build system prompt for the agent
65
- */
66
- function buildAgentSystemPrompt(agentType, params) {
67
- const parts = [];
68
- // Agent identity
69
- parts.push(`${agentType.systemPrompt}`);
70
- // Task context
71
- if (params.context) {
72
- parts.push("");
73
- parts.push(`<!-- Task Context -->`);
74
- parts.push(`Additional context: ${params.context}`);
75
- }
76
- // Priority
77
- if (params.priority) {
78
- parts.push("");
79
- parts.push(`<!-- Priority -->`);
80
- parts.push(`Priority: ${params.priority.toUpperCase()}`);
81
- }
82
- // Capabilities reminder
83
- parts.push("");
84
- parts.push(`<!-- Your Capabilities -->`);
85
- parts.push(agentType.capabilities.map(c => `- ${c}`).join("\n"));
86
- // Available tools
87
- parts.push("");
88
- parts.push(`<!-- Available Tools -->`);
89
- parts.push(agentType.tools.map(t => `- ${t}`).join("\n"));
90
- return parts.join("\n\n");
91
- }
92
- /**
93
- * Spawn multiple agents in parallel
94
- */
95
- export async function spawnAgents(tasks) {
96
- const promises = tasks.map((t) => spawnAgent({
97
- task: t.task,
98
- agentType: t.agentType,
99
- context: t.context,
100
- autoRoute: !t.agentType,
101
- }));
102
- return Promise.all(promises);
103
- }
104
- /**
105
- * Get agent spawn configuration for tool registration
106
- */
107
- export function getSpawnAgentToolConfig() {
108
- return {
109
- name: "spawn_agent",
110
- description: `Spawn a specialized subagent to handle a task.
111
-
112
- This tool creates a subagent of a specific type:
113
- - coordinator (🎯): Plans and delegates complex tasks
114
- - specialist (🧠): Deep domain expertise
115
- - researcher (🔍): Gathers information and synthesizes findings
116
- - worker (⚒️): Implements code and executes tasks
117
- - reviewer (👁️): Reviews code and validates quality
118
-
119
- Use autoRoute: true to let the system choose the best agent type.`,
120
- parameters: {
121
- type: "object",
122
- properties: {
123
- task: {
124
- type: "string",
125
- description: "The task to assign to the subagent. Be specific and clear.",
126
- },
127
- agentType: {
128
- type: "string",
129
- enum: ["coordinator", "specialist", "researcher", "worker", "reviewer"],
130
- description: "Type of agent to spawn. Use autoRoute: true to let system choose.",
131
- },
132
- autoRoute: {
133
- type: "boolean",
134
- description: "If true, automatically determine best agent type",
135
- default: true,
136
- },
137
- context: {
138
- type: "string",
139
- description: "Additional context for the agent",
140
- },
141
- priority: {
142
- type: "string",
143
- enum: ["low", "normal", "high"],
144
- default: "normal",
145
- },
146
- },
147
- required: ["task"],
148
- },
149
- };
150
- }
151
- /**
152
- * Spawn agent tool for ExtensionAPI
153
- */
154
- export async function executeSpawnAgent(args) {
155
- const result = await spawnAgent({
156
- task: args.task,
157
- agentType: args.agentType,
158
- autoRoute: args.autoRoute ?? true,
159
- context: args.context,
160
- priority: args.priority ?? "normal",
161
- maxIterations: args.maxIterations,
162
- model: args.model,
163
- });
164
- if (!result.success) {
165
- return {
166
- success: false,
167
- error: result.error,
168
- content: [
169
- {
170
- type: "text",
171
- text: `Failed to spawn agent: ${result.error}`,
172
- },
173
- ],
174
- details: { error: result.error },
175
- };
176
- }
177
- const routingText = result.routingInfo
178
- ? `\n\nAuto-routing analysis:\n${result.routingInfo.reasoning}\n\nConfidence: ${Math.round(result.routingInfo.confidence * 100)}%\n\nAlternative agents: ${result.routingInfo.alternativeAgents
179
- .map((a) => `${a.emoji} ${a.name}`)
180
- .join(", ") || "none"}`
181
- : "";
182
- return {
183
- success: true,
184
- content: [
185
- {
186
- type: "text",
187
- text: `Spawned ${result.agentType.emoji} ${result.agentType.name}\n\nID: ${result.agentId}\nTask: ${result.task}\nMax iterations: ${result.maxIterations}${routingText}`,
188
- },
189
- ],
190
- details: {
191
- agentId: result.agentId,
192
- agentType: result.agentType.id,
193
- task: result.task,
194
- systemPrompt: result.systemPrompt,
195
- maxIterations: result.maxIterations,
196
- routingInfo: result.routingInfo,
197
- },
198
- };
199
- }
200
- //# sourceMappingURL=spawn-agent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"spawn-agent.js","sourceRoot":"","sources":["../../../../src/agents/tools/spawn-agent.ts"],"names":[],"mappings":"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"}