@agentuity/opencode 0.1.40 → 0.1.41
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 +321 -9
- package/dist/agents/architect.d.ts +4 -0
- package/dist/agents/architect.d.ts.map +1 -0
- package/dist/agents/architect.js +259 -0
- package/dist/agents/architect.js.map +1 -0
- package/dist/agents/builder.d.ts +1 -1
- package/dist/agents/builder.d.ts.map +1 -1
- package/dist/agents/builder.js +44 -1
- package/dist/agents/builder.js.map +1 -1
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +6 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/lead.d.ts +1 -1
- package/dist/agents/lead.d.ts.map +1 -1
- package/dist/agents/lead.js +183 -19
- package/dist/agents/lead.js.map +1 -1
- package/dist/agents/planner.d.ts +4 -0
- package/dist/agents/planner.d.ts.map +1 -0
- package/dist/agents/planner.js +158 -0
- package/dist/agents/planner.js.map +1 -0
- package/dist/agents/runner.d.ts +4 -0
- package/dist/agents/runner.d.ts.map +1 -0
- package/dist/agents/runner.js +364 -0
- package/dist/agents/runner.js.map +1 -0
- package/dist/agents/types.d.ts +5 -1
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/background/concurrency.d.ts +36 -0
- package/dist/background/concurrency.d.ts.map +1 -0
- package/dist/background/concurrency.js +92 -0
- package/dist/background/concurrency.js.map +1 -0
- package/dist/background/index.d.ts +5 -0
- package/dist/background/index.d.ts.map +1 -0
- package/dist/background/index.js +4 -0
- package/dist/background/index.js.map +1 -0
- package/dist/background/manager.d.ts +54 -0
- package/dist/background/manager.d.ts.map +1 -0
- package/dist/background/manager.js +409 -0
- package/dist/background/manager.js.map +1 -0
- package/dist/background/types.d.ts +47 -0
- package/dist/background/types.d.ts.map +1 -0
- package/dist/background/types.js +2 -0
- package/dist/background/types.js.map +1 -0
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/loader.d.ts +24 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +102 -23
- package/dist/config/loader.js.map +1 -1
- package/dist/config/presets.d.ts +16 -0
- package/dist/config/presets.d.ts.map +1 -0
- package/dist/config/presets.js +20 -0
- package/dist/config/presets.js.map +1 -0
- package/dist/config/validation.d.ts +26 -0
- package/dist/config/validation.d.ts.map +1 -0
- package/dist/config/validation.js +48 -0
- package/dist/config/validation.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/plugin/hooks/keyword.d.ts.map +1 -1
- package/dist/plugin/hooks/keyword.js +3 -0
- package/dist/plugin/hooks/keyword.js.map +1 -1
- package/dist/plugin/plugin.d.ts.map +1 -1
- package/dist/plugin/plugin.js +297 -36
- package/dist/plugin/plugin.js.map +1 -1
- package/dist/skills/frontmatter.d.ts +7 -0
- package/dist/skills/frontmatter.d.ts.map +1 -0
- package/dist/skills/frontmatter.js +17 -0
- package/dist/skills/frontmatter.js.map +1 -0
- package/dist/skills/index.d.ts +4 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +4 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/skills/loader.d.ts +20 -0
- package/dist/skills/loader.d.ts.map +1 -0
- package/dist/skills/loader.js +152 -0
- package/dist/skills/loader.js.map +1 -0
- package/dist/skills/types.d.ts +41 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +2 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/tmux/decision-engine.d.ts +24 -0
- package/dist/tmux/decision-engine.d.ts.map +1 -0
- package/dist/tmux/decision-engine.js +193 -0
- package/dist/tmux/decision-engine.js.map +1 -0
- package/dist/tmux/executor.d.ts +56 -0
- package/dist/tmux/executor.d.ts.map +1 -0
- package/dist/tmux/executor.js +231 -0
- package/dist/tmux/executor.js.map +1 -0
- package/dist/tmux/index.d.ts +7 -0
- package/dist/tmux/index.d.ts.map +1 -0
- package/dist/tmux/index.js +7 -0
- package/dist/tmux/index.js.map +1 -0
- package/dist/tmux/manager.d.ts +80 -0
- package/dist/tmux/manager.d.ts.map +1 -0
- package/dist/tmux/manager.js +276 -0
- package/dist/tmux/manager.js.map +1 -0
- package/dist/tmux/state-query.d.ts +7 -0
- package/dist/tmux/state-query.d.ts.map +1 -0
- package/dist/tmux/state-query.js +67 -0
- package/dist/tmux/state-query.js.map +1 -0
- package/dist/tmux/types.d.ts +96 -0
- package/dist/tmux/types.d.ts.map +1 -0
- package/dist/tmux/types.js +8 -0
- package/dist/tmux/types.js.map +1 -0
- package/dist/tmux/utils.d.ts +32 -0
- package/dist/tmux/utils.d.ts.map +1 -0
- package/dist/tmux/utils.js +80 -0
- package/dist/tmux/utils.js.map +1 -0
- package/dist/tools/background.d.ts +61 -0
- package/dist/tools/background.d.ts.map +1 -0
- package/dist/tools/background.js +78 -0
- package/dist/tools/background.js.map +1 -0
- package/dist/tools/delegate.d.ts +6 -0
- package/dist/tools/delegate.d.ts.map +1 -1
- package/dist/tools/delegate.js +8 -2
- package/dist/tools/delegate.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/types.d.ts +118 -18
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +49 -7
- package/dist/types.js.map +1 -1
- package/package.json +4 -3
- package/src/agents/architect.ts +262 -0
- package/src/agents/builder.ts +44 -1
- package/src/agents/index.ts +6 -0
- package/src/agents/lead.ts +183 -19
- package/src/agents/planner.ts +161 -0
- package/src/agents/runner.ts +367 -0
- package/src/agents/types.ts +5 -1
- package/src/background/concurrency.ts +116 -0
- package/src/background/index.ts +4 -0
- package/src/background/manager.ts +478 -0
- package/src/background/types.ts +52 -0
- package/src/config/index.ts +2 -0
- package/src/config/loader.ts +128 -31
- package/src/config/presets.ts +21 -0
- package/src/config/validation.ts +70 -0
- package/src/index.ts +1 -0
- package/src/plugin/hooks/keyword.ts +3 -0
- package/src/plugin/plugin.ts +323 -42
- package/src/skills/frontmatter.ts +25 -0
- package/src/skills/index.ts +3 -0
- package/src/skills/loader.ts +185 -0
- package/src/skills/types.ts +43 -0
- package/src/tmux/decision-engine.ts +246 -0
- package/src/tmux/executor.ts +286 -0
- package/src/tmux/index.ts +11 -0
- package/src/tmux/manager.ts +331 -0
- package/src/tmux/state-query.ts +74 -0
- package/src/tmux/types.ts +106 -0
- package/src/tmux/utils.ts +85 -0
- package/src/tools/background.ts +145 -0
- package/src/tools/delegate.ts +8 -2
- package/src/tools/index.ts +9 -0
- package/src/types.ts +88 -15
package/dist/plugin/plugin.js
CHANGED
|
@@ -1,19 +1,51 @@
|
|
|
1
|
+
import { tool } from '@opencode-ai/plugin';
|
|
2
|
+
import { loadAllSkills } from '../skills';
|
|
1
3
|
import { agents } from '../agents';
|
|
2
|
-
import { loadCoderConfig, getDefaultConfig, mergeConfig } from '../config';
|
|
4
|
+
import { loadCoderConfig, getDefaultConfig, mergeConfig, validateAndWarnConfigs } from '../config';
|
|
3
5
|
import { createSessionHooks } from './hooks/session';
|
|
4
6
|
import { createToolHooks } from './hooks/tools';
|
|
5
7
|
import { createKeywordHooks } from './hooks/keyword';
|
|
6
8
|
import { createParamsHooks } from './hooks/params';
|
|
7
9
|
import { createCadenceHooks } from './hooks/cadence';
|
|
8
10
|
import { createSessionMemoryHooks } from './hooks/session-memory';
|
|
11
|
+
import { BackgroundManager } from '../background';
|
|
12
|
+
import { TmuxSessionManager } from '../tmux';
|
|
13
|
+
// Sandbox environment detection
|
|
14
|
+
const SANDBOX_ID = process.env.AGENTUITY_SANDBOX_ID;
|
|
15
|
+
const IN_SANDBOX = !!SANDBOX_ID;
|
|
16
|
+
// Sandbox context injected into Lead, Builder, and Architect prompts
|
|
17
|
+
const SANDBOX_CONTEXT = IN_SANDBOX
|
|
18
|
+
? `
|
|
19
|
+
## Sandbox Environment
|
|
20
|
+
|
|
21
|
+
You are running inside an Agentuity Sandbox (ID: ${SANDBOX_ID}).
|
|
22
|
+
|
|
23
|
+
**Permissions:** All file operations are allowed without prompts.
|
|
24
|
+
|
|
25
|
+
**File Locations:**
|
|
26
|
+
- Working directory: \`/home/agentuity\`
|
|
27
|
+
- Temp files: \`/home/agentuity/tmp/\` (preferred over \`/tmp/\`)
|
|
28
|
+
- Artifacts: \`/home/agentuity/.agentuity/\`
|
|
29
|
+
|
|
30
|
+
**Tips:**
|
|
31
|
+
- No permission prompts - you can read/write freely
|
|
32
|
+
- Sandbox is isolated - safe to experiment
|
|
33
|
+
- Use \`/home/agentuity/\` paths for all file operations
|
|
34
|
+
`
|
|
35
|
+
: '';
|
|
36
|
+
// Agents that should receive sandbox context in their prompts
|
|
37
|
+
const SANDBOX_AWARE_AGENTS = ['lead', 'builder', 'architect'];
|
|
9
38
|
// Agent display names for @mentions
|
|
10
39
|
const AGENT_MENTIONS = {
|
|
11
40
|
lead: '@Agentuity Coder Lead',
|
|
12
41
|
scout: '@Agentuity Coder Scout',
|
|
13
42
|
builder: '@Agentuity Coder Builder',
|
|
43
|
+
architect: '@Agentuity Coder Architect',
|
|
14
44
|
reviewer: '@Agentuity Coder Reviewer',
|
|
15
45
|
memory: '@Agentuity Coder Memory',
|
|
16
46
|
expert: '@Agentuity Coder Expert',
|
|
47
|
+
planner: '@Agentuity Coder Planner',
|
|
48
|
+
runner: '@Agentuity Coder Runner',
|
|
17
49
|
};
|
|
18
50
|
export async function createCoderPlugin(ctx) {
|
|
19
51
|
ctx.client.app.log({
|
|
@@ -30,13 +62,36 @@ export async function createCoderPlugin(ctx) {
|
|
|
30
62
|
const keywordHooks = createKeywordHooks(ctx, coderConfig);
|
|
31
63
|
const paramsHooks = createParamsHooks(ctx, coderConfig);
|
|
32
64
|
const cadenceHooks = createCadenceHooks(ctx, coderConfig);
|
|
65
|
+
const tmuxManager = coderConfig.tmux?.enabled
|
|
66
|
+
? new TmuxSessionManager(ctx, coderConfig.tmux, {
|
|
67
|
+
onLog: (message) => ctx.client.app.log({
|
|
68
|
+
body: {
|
|
69
|
+
service: 'agentuity-coder',
|
|
70
|
+
level: 'info',
|
|
71
|
+
message,
|
|
72
|
+
},
|
|
73
|
+
}),
|
|
74
|
+
})
|
|
75
|
+
: undefined;
|
|
76
|
+
const backgroundManager = new BackgroundManager(ctx, coderConfig.background, {
|
|
77
|
+
onSubagentSessionCreated: tmuxManager
|
|
78
|
+
? (event) => {
|
|
79
|
+
void tmuxManager.onSessionCreated(event);
|
|
80
|
+
}
|
|
81
|
+
: undefined,
|
|
82
|
+
onSubagentSessionDeleted: tmuxManager
|
|
83
|
+
? (event) => {
|
|
84
|
+
void tmuxManager.onSessionDeleted(event);
|
|
85
|
+
}
|
|
86
|
+
: undefined,
|
|
87
|
+
});
|
|
33
88
|
// Session memory hooks handle checkpointing and compaction for non-Cadence sessions
|
|
34
89
|
// Orchestration (deciding which module handles which session) happens below in the hooks
|
|
35
90
|
const sessionMemoryHooks = createSessionMemoryHooks(ctx, coderConfig);
|
|
36
91
|
const configHandler = createConfigHandler(coderConfig);
|
|
37
|
-
//
|
|
38
|
-
const
|
|
39
|
-
|
|
92
|
+
// Create plugin tools using the @opencode-ai/plugin tool helper
|
|
93
|
+
const tools = createTools(backgroundManager);
|
|
94
|
+
registerShutdownHandler(backgroundManager, tmuxManager);
|
|
40
95
|
// Show startup toast (fire and forget, don't block)
|
|
41
96
|
try {
|
|
42
97
|
ctx.client.tui.showToast({
|
|
@@ -58,6 +113,10 @@ export async function createCoderPlugin(ctx) {
|
|
|
58
113
|
'tool.execute.before': toolHooks.before,
|
|
59
114
|
'tool.execute.after': toolHooks.after,
|
|
60
115
|
event: async (input) => {
|
|
116
|
+
const event = extractEventFromInput(input);
|
|
117
|
+
if (event) {
|
|
118
|
+
backgroundManager.handleEvent(event);
|
|
119
|
+
}
|
|
61
120
|
// Orchestrate: route to appropriate module based on session type
|
|
62
121
|
const sessionId = extractSessionIdFromEvent(input);
|
|
63
122
|
if (sessionId && cadenceHooks.isActiveCadenceSession(sessionId)) {
|
|
@@ -83,20 +142,51 @@ function createConfigHandler(coderConfig) {
|
|
|
83
142
|
return async (config) => {
|
|
84
143
|
const agentConfigs = createAgentConfigs(coderConfig);
|
|
85
144
|
const commands = createCommands();
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
145
|
+
const loadedSkills = await loadAllSkills(coderConfig.skills);
|
|
146
|
+
const skillCommands = createSkillCommands(loadedSkills);
|
|
147
|
+
// Merge agent configs: our defaults first, then user's opencode.json overrides on top
|
|
148
|
+
// This allows users to customize any agent via their opencode.json
|
|
149
|
+
const userAgentConfigs = config.agent;
|
|
150
|
+
const mergedAgents = { ...agentConfigs };
|
|
151
|
+
// Shallow merge user overrides on top of our defaults (nested objects like tools are replaced, not merged)
|
|
152
|
+
if (userAgentConfigs) {
|
|
153
|
+
for (const [name, userConfig] of Object.entries(userAgentConfigs)) {
|
|
154
|
+
if (mergedAgents[name]) {
|
|
155
|
+
// Merge user config on top of our default
|
|
156
|
+
mergedAgents[name] = {
|
|
157
|
+
...mergedAgents[name],
|
|
158
|
+
...userConfig,
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
// User defined a new agent not in our defaults
|
|
163
|
+
mergedAgents[name] = userConfig;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
config.agent = mergedAgents;
|
|
168
|
+
// Validate merged configs and warn about mismatches
|
|
169
|
+
validateAndWarnConfigs(mergedAgents);
|
|
170
|
+
// In sandbox, allow all permissions without prompts
|
|
171
|
+
if (IN_SANDBOX) {
|
|
172
|
+
config.permission = {
|
|
173
|
+
'*': 'allow',
|
|
174
|
+
external_directory: {
|
|
175
|
+
'/home/agentuity/**': 'allow',
|
|
176
|
+
'*': 'allow',
|
|
177
|
+
},
|
|
178
|
+
};
|
|
179
|
+
}
|
|
90
180
|
config.command = {
|
|
91
181
|
...config.command,
|
|
92
182
|
...commands,
|
|
183
|
+
...skillCommands,
|
|
93
184
|
};
|
|
94
185
|
};
|
|
95
186
|
}
|
|
96
|
-
function createAgentConfigs(
|
|
187
|
+
function createAgentConfigs(_config) {
|
|
97
188
|
const result = {};
|
|
98
189
|
for (const agent of Object.values(agents)) {
|
|
99
|
-
const modelConfig = config.agents?.[agent.role];
|
|
100
190
|
// Convert tools.exclude to Open Code format (tool: false)
|
|
101
191
|
const tools = {};
|
|
102
192
|
if (agent.tools?.exclude) {
|
|
@@ -104,16 +194,23 @@ function createAgentConfigs(config) {
|
|
|
104
194
|
tools[tool] = false;
|
|
105
195
|
}
|
|
106
196
|
}
|
|
197
|
+
// Inject sandbox context into specific agents when running in sandbox
|
|
198
|
+
const shouldInjectSandbox = IN_SANDBOX && SANDBOX_AWARE_AGENTS.includes(agent.role);
|
|
199
|
+
const prompt = shouldInjectSandbox
|
|
200
|
+
? `${agent.systemPrompt}\n${SANDBOX_CONTEXT}`
|
|
201
|
+
: agent.systemPrompt;
|
|
202
|
+
// Use agent defaults directly - user overrides happen in createConfigHandler
|
|
107
203
|
result[agent.displayName] = {
|
|
108
204
|
description: agent.description,
|
|
109
|
-
model:
|
|
110
|
-
prompt
|
|
205
|
+
model: agent.defaultModel,
|
|
206
|
+
prompt,
|
|
111
207
|
mode: agent.mode ?? 'subagent',
|
|
112
208
|
...(Object.keys(tools).length > 0 ? { tools } : {}),
|
|
113
|
-
// Pass through thinking/reasoning settings
|
|
114
209
|
...(agent.variant ? { variant: agent.variant } : {}),
|
|
115
210
|
...(agent.temperature !== undefined ? { temperature: agent.temperature } : {}),
|
|
116
211
|
...(agent.maxSteps !== undefined ? { maxSteps: agent.maxSteps } : {}),
|
|
212
|
+
...(agent.reasoningEffort ? { reasoningEffort: agent.reasoningEffort } : {}),
|
|
213
|
+
...(agent.thinking ? { thinking: agent.thinking } : {}),
|
|
117
214
|
};
|
|
118
215
|
}
|
|
119
216
|
return result;
|
|
@@ -129,20 +226,24 @@ You are the Agentuity Coder Lead agent orchestrating the Agentuity Coder team.
|
|
|
129
226
|
## Your Team (use @mentions to invoke)
|
|
130
227
|
- **@Agentuity Coder Scout**: Explore codebase, find patterns, research docs (read-only)
|
|
131
228
|
- **@Agentuity Coder Builder**: Implement features, write code, run tests
|
|
229
|
+
- **@Agentuity Coder Architect**: Complex autonomous tasks, Cadence mode (GPT Codex)
|
|
132
230
|
- **@Agentuity Coder Reviewer**: Review changes, catch issues, apply fixes
|
|
133
231
|
- **@Agentuity Coder Memory**: Store context, remember decisions
|
|
134
232
|
- **@Agentuity Coder Expert**: Agentuity CLI and cloud services specialist
|
|
233
|
+
- **@Agentuity Coder Planner**: Deep planning for complex architecture decisions
|
|
234
|
+
- **@Agentuity Coder Runner**: Run lint/build/test commands, returns structured results
|
|
135
235
|
|
|
136
236
|
## Task
|
|
137
237
|
$ARGUMENTS
|
|
138
238
|
|
|
139
239
|
## Guidelines
|
|
140
240
|
1. Use @Agentuity Coder Scout first to understand context
|
|
141
|
-
2. Delegate implementation to @Agentuity Coder Builder
|
|
142
|
-
3.
|
|
143
|
-
4.
|
|
144
|
-
5.
|
|
145
|
-
6.
|
|
241
|
+
2. Delegate implementation to @Agentuity Coder Builder (or Architect for complex work)
|
|
242
|
+
3. Delegate lint/build/test commands to @Agentuity Coder Runner for structured results
|
|
243
|
+
4. Have @Agentuity Coder Reviewer check the work
|
|
244
|
+
5. Use @Agentuity Coder Expert for Agentuity CLI questions
|
|
245
|
+
6. Only use cloud services when genuinely helpful
|
|
246
|
+
7. **When done, tell @Agentuity Coder Memory to memorialize the session**
|
|
146
247
|
</coder-mode>`,
|
|
147
248
|
agent: 'Agentuity Coder Lead',
|
|
148
249
|
argumentHint: '"task description"',
|
|
@@ -255,10 +356,13 @@ You are the Agentuity Coder Lead in **Cadence mode** — a long-running autonomo
|
|
|
255
356
|
|
|
256
357
|
## Your Team (use @mentions to invoke)
|
|
257
358
|
- **@Agentuity Coder Scout**: Explore codebase, find patterns, research docs (read-only)
|
|
258
|
-
- **@Agentuity Coder
|
|
359
|
+
- **@Agentuity Coder Architect**: Complex autonomous implementation (GPT Codex with high reasoning) — **USE THIS FOR CADENCE**
|
|
360
|
+
- **@Agentuity Coder Builder**: Quick fixes, simple changes (for minor iterations only)
|
|
259
361
|
- **@Agentuity Coder Reviewer**: Review changes, catch issues, apply fixes
|
|
260
362
|
- **@Agentuity Coder Memory**: Store context, remember decisions, checkpoints
|
|
261
363
|
- **@Agentuity Coder Expert**: Agentuity CLI and cloud services specialist
|
|
364
|
+
- **@Agentuity Coder Planner**: Deep planning for complex architecture decisions
|
|
365
|
+
- **@Agentuity Coder Runner**: Run lint/build/test commands, returns structured results
|
|
262
366
|
|
|
263
367
|
## Task
|
|
264
368
|
$ARGUMENTS
|
|
@@ -272,7 +376,8 @@ $ARGUMENTS
|
|
|
272
376
|
2. **Each iteration**:
|
|
273
377
|
- Ask @Agentuity Coder Memory for relevant context
|
|
274
378
|
- Use @Agentuity Coder Scout to understand what's needed
|
|
275
|
-
-
|
|
379
|
+
- For complex planning, consult @Agentuity Coder Planner
|
|
380
|
+
- Delegate implementation to **@Agentuity Coder Architect** (preferred for Cadence)
|
|
276
381
|
- Have @Agentuity Coder Reviewer verify the work
|
|
277
382
|
- Tell @Agentuity Coder Memory to store checkpoint
|
|
278
383
|
|
|
@@ -284,10 +389,11 @@ $ARGUMENTS
|
|
|
284
389
|
4. **Tell @Agentuity Coder Memory to memorialize** the completed session
|
|
285
390
|
|
|
286
391
|
## Guidelines
|
|
287
|
-
- **
|
|
392
|
+
- **Use Architect for implementation** — Architect has GPT Codex with maximum reasoning, ideal for autonomous work
|
|
393
|
+
- Use regular Builder only for trivial fixes within an iteration
|
|
288
394
|
- Ask Memory for context at each iteration start
|
|
289
395
|
- Store checkpoints at each iteration end
|
|
290
|
-
- If stuck
|
|
396
|
+
- If stuck on architecture, consult Planner before trying more approaches
|
|
291
397
|
- Use @Agentuity Coder Expert for sandbox/cloud operations
|
|
292
398
|
- Respect max iterations (50 default)`,
|
|
293
399
|
agent: 'Agentuity Coder Lead',
|
|
@@ -295,38 +401,166 @@ $ARGUMENTS
|
|
|
295
401
|
},
|
|
296
402
|
};
|
|
297
403
|
}
|
|
298
|
-
function
|
|
299
|
-
const
|
|
404
|
+
function createSkillCommands(skills) {
|
|
405
|
+
const commands = {};
|
|
406
|
+
for (const skill of skills) {
|
|
407
|
+
const baseDir = normalizeBaseDir(skill.resolvedPath);
|
|
408
|
+
commands[skill.name] = {
|
|
409
|
+
name: skill.name,
|
|
410
|
+
description: skill.metadata.description,
|
|
411
|
+
template: `<skill-instruction>
|
|
412
|
+
Base directory for this skill: ${baseDir}/
|
|
413
|
+
File references (@path) in this skill are relative to this directory.
|
|
414
|
+
|
|
415
|
+
${skill.content}
|
|
416
|
+
</skill-instruction>
|
|
417
|
+
|
|
418
|
+
<user-request>
|
|
419
|
+
$ARGUMENTS
|
|
420
|
+
</user-request>`,
|
|
421
|
+
...(skill.metadata.agent ? { agent: skill.metadata.agent } : {}),
|
|
422
|
+
...(skill.metadata.model ? { model: skill.metadata.model } : {}),
|
|
423
|
+
...(skill.metadata['argument-hint']
|
|
424
|
+
? { argumentHint: skill.metadata['argument-hint'] }
|
|
425
|
+
: {}),
|
|
426
|
+
...(skill.metadata.subtask ? { subtask: true } : {}),
|
|
427
|
+
};
|
|
428
|
+
}
|
|
429
|
+
return commands;
|
|
430
|
+
}
|
|
431
|
+
function normalizeBaseDir(path) {
|
|
432
|
+
return path.replace(/[\\/]+$/, '');
|
|
433
|
+
}
|
|
434
|
+
function createTools(backgroundManager) {
|
|
435
|
+
// Use the schema from @opencode-ai/plugin's tool helper to avoid Zod version mismatches
|
|
436
|
+
const s = tool.schema;
|
|
437
|
+
const coderDelegate = tool({
|
|
300
438
|
description: `Delegate a task to a specialized Agentuity Coder agent.
|
|
301
439
|
|
|
302
440
|
Use this to:
|
|
303
441
|
- Scout: Explore codebase, find patterns, research documentation
|
|
304
|
-
- Builder: Implement features, write code, run tests
|
|
442
|
+
- Builder: Implement features, write code, run tests (interactive work)
|
|
443
|
+
- Architect: Complex autonomous tasks, Cadence mode, deep reasoning (GPT Codex)
|
|
305
444
|
- Reviewer: Review changes, catch issues, apply fixes
|
|
306
445
|
- Memory: Store context, remember decisions across sessions
|
|
307
|
-
- Expert: Get help with Agentuity CLI and cloud services
|
|
308
|
-
|
|
446
|
+
- Expert: Get help with Agentuity CLI and cloud services
|
|
447
|
+
- Planner: Strategic advisor for complex architecture and deep planning (read-only)`,
|
|
448
|
+
args: {
|
|
309
449
|
agent: s
|
|
310
|
-
.enum([
|
|
450
|
+
.enum([
|
|
451
|
+
'scout',
|
|
452
|
+
'builder',
|
|
453
|
+
'architect',
|
|
454
|
+
'reviewer',
|
|
455
|
+
'memory',
|
|
456
|
+
'expert',
|
|
457
|
+
'planner',
|
|
458
|
+
'runner',
|
|
459
|
+
])
|
|
311
460
|
.describe('Which agent to delegate to'),
|
|
312
461
|
task: s.string().describe('Clear description of the task'),
|
|
313
462
|
context: s.string().optional().describe('Additional context from previous tasks'),
|
|
314
|
-
}
|
|
315
|
-
|
|
463
|
+
},
|
|
464
|
+
async execute(args) {
|
|
316
465
|
const mention = AGENT_MENTIONS[args.agent];
|
|
317
466
|
let prompt = `${mention}\n\n## Task\n${args.task}`;
|
|
318
467
|
if (args.context) {
|
|
319
468
|
prompt = `${mention}\n\n## Context\n${args.context}\n\n## Task\n${args.task}`;
|
|
320
469
|
}
|
|
321
|
-
return {
|
|
322
|
-
output: `To delegate this task, use the Task tool with this prompt:\n\n${prompt}\n\nThe ${args.agent} agent will handle this task.`,
|
|
323
|
-
};
|
|
470
|
+
return `To delegate this task, use the Task tool with this prompt:\n\n${prompt}\n\nThe ${args.agent} agent will handle this task.`;
|
|
324
471
|
},
|
|
325
|
-
})
|
|
326
|
-
|
|
327
|
-
|
|
472
|
+
});
|
|
473
|
+
const backgroundTask = tool({
|
|
474
|
+
description: `Launch a task to run in the background. Use this for parallel execution of multiple independent tasks.
|
|
475
|
+
|
|
476
|
+
IMPORTANT: Use this tool instead of the 'task' tool when:
|
|
477
|
+
- You need to run multiple agents in parallel
|
|
478
|
+
- Tasks are independent and don't need sequential execution
|
|
479
|
+
- The user asks for "parallel", "background", or "concurrent" work`,
|
|
480
|
+
args: {
|
|
481
|
+
agent: s
|
|
482
|
+
.enum([
|
|
483
|
+
'lead',
|
|
484
|
+
'scout',
|
|
485
|
+
'builder',
|
|
486
|
+
'architect',
|
|
487
|
+
'reviewer',
|
|
488
|
+
'memory',
|
|
489
|
+
'expert',
|
|
490
|
+
'planner',
|
|
491
|
+
'runner',
|
|
492
|
+
])
|
|
493
|
+
.describe('Agent role to run the task'),
|
|
494
|
+
task: s.string().describe('Task prompt to run in the background'),
|
|
495
|
+
description: s.string().optional().describe('Short description of the task'),
|
|
496
|
+
},
|
|
497
|
+
async execute(args, context) {
|
|
498
|
+
const parentSessionId = context.sessionID;
|
|
499
|
+
if (!parentSessionId) {
|
|
500
|
+
return JSON.stringify({
|
|
501
|
+
taskId: 'unknown',
|
|
502
|
+
status: 'error',
|
|
503
|
+
message: 'Missing session context for background task.',
|
|
504
|
+
});
|
|
505
|
+
}
|
|
506
|
+
const agentName = resolveAgentName(args.agent);
|
|
507
|
+
const bgTask = await backgroundManager.launch({
|
|
508
|
+
description: args.description ?? args.task,
|
|
509
|
+
prompt: args.task,
|
|
510
|
+
agent: agentName,
|
|
511
|
+
parentSessionId,
|
|
512
|
+
parentMessageId: context.messageID,
|
|
513
|
+
});
|
|
514
|
+
return JSON.stringify({
|
|
515
|
+
taskId: bgTask.id,
|
|
516
|
+
status: bgTask.status,
|
|
517
|
+
message: bgTask.status === 'error'
|
|
518
|
+
? (bgTask.error ?? 'Failed to launch background task.')
|
|
519
|
+
: 'Background task launched.',
|
|
520
|
+
});
|
|
521
|
+
},
|
|
522
|
+
});
|
|
523
|
+
const backgroundOutput = tool({
|
|
524
|
+
description: 'Retrieve output for a background task.',
|
|
525
|
+
args: {
|
|
526
|
+
task_id: s.string().describe('Background task ID'),
|
|
527
|
+
},
|
|
528
|
+
async execute(args) {
|
|
529
|
+
const bgTask = backgroundManager.getTask(args.task_id);
|
|
530
|
+
if (!bgTask) {
|
|
531
|
+
return JSON.stringify({
|
|
532
|
+
taskId: args.task_id,
|
|
533
|
+
status: 'error',
|
|
534
|
+
error: 'Task not found.',
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
return JSON.stringify({
|
|
538
|
+
taskId: bgTask.id,
|
|
539
|
+
status: bgTask.status,
|
|
540
|
+
result: bgTask.result,
|
|
541
|
+
error: bgTask.error,
|
|
542
|
+
});
|
|
543
|
+
},
|
|
544
|
+
});
|
|
545
|
+
const backgroundCancel = tool({
|
|
546
|
+
description: 'Cancel a running background task.',
|
|
547
|
+
args: {
|
|
548
|
+
task_id: s.string().describe('Background task ID'),
|
|
549
|
+
},
|
|
550
|
+
async execute(args) {
|
|
551
|
+
const success = backgroundManager.cancel(args.task_id);
|
|
552
|
+
return JSON.stringify({
|
|
553
|
+
taskId: args.task_id,
|
|
554
|
+
success,
|
|
555
|
+
message: success ? 'Background task cancelled.' : 'Unable to cancel task.',
|
|
556
|
+
});
|
|
557
|
+
},
|
|
558
|
+
});
|
|
328
559
|
return {
|
|
329
560
|
coder_delegate: coderDelegate,
|
|
561
|
+
background_task: backgroundTask,
|
|
562
|
+
background_output: backgroundOutput,
|
|
563
|
+
background_cancel: backgroundCancel,
|
|
330
564
|
};
|
|
331
565
|
}
|
|
332
566
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
@@ -341,4 +575,31 @@ function extractSessionIdFromEvent(input) {
|
|
|
341
575
|
return (inp.event.properties.sessionId ??
|
|
342
576
|
inp.event.properties.sessionID);
|
|
343
577
|
}
|
|
578
|
+
function resolveAgentName(role) {
|
|
579
|
+
const agent = agents[role];
|
|
580
|
+
return agent?.displayName ?? role;
|
|
581
|
+
}
|
|
582
|
+
function extractEventFromInput(input) {
|
|
583
|
+
if (typeof input !== 'object' || input === null)
|
|
584
|
+
return undefined;
|
|
585
|
+
const inp = input;
|
|
586
|
+
if (!inp.event || typeof inp.event.type !== 'string')
|
|
587
|
+
return undefined;
|
|
588
|
+
return { type: inp.event.type, properties: inp.event.properties };
|
|
589
|
+
}
|
|
590
|
+
function registerShutdownHandler(manager, tmuxManager) {
|
|
591
|
+
if (typeof process === 'undefined')
|
|
592
|
+
return;
|
|
593
|
+
const shutdown = () => {
|
|
594
|
+
manager.shutdown();
|
|
595
|
+
if (tmuxManager) {
|
|
596
|
+
// Use sync version to ensure cleanup completes before process exits
|
|
597
|
+
tmuxManager.cleanupSync();
|
|
598
|
+
}
|
|
599
|
+
};
|
|
600
|
+
process.once('beforeExit', shutdown);
|
|
601
|
+
process.once('SIGINT', shutdown);
|
|
602
|
+
process.once('SIGTERM', shutdown);
|
|
603
|
+
process.once('exit', shutdown); // Also handle exit event for extra safety
|
|
604
|
+
}
|
|
344
605
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/plugin/plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../../src/skills/frontmatter.ts"],"names":[],"mappings":"AAEA,UAAU,iBAAiB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACtD,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,OAAO,EAAE,MAAM,GACb,iBAAiB,CAAC,CAAC,CAAC,CAetB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import yaml from 'yaml';
|
|
2
|
+
export function parseFrontmatter(content) {
|
|
3
|
+
const match = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
|
|
4
|
+
if (!match) {
|
|
5
|
+
return { data: {}, body: content.trim() };
|
|
6
|
+
}
|
|
7
|
+
const frontmatter = match[1];
|
|
8
|
+
const body = content.slice(match[0].length).trim();
|
|
9
|
+
try {
|
|
10
|
+
const data = yaml.parse(frontmatter);
|
|
11
|
+
return { data: (data ?? {}), body };
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return { data: {}, body: content.trim() };
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=frontmatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../src/skills/frontmatter.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,MAAM,UAAU,gBAAgB,CAC/B,OAAe;IAEf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,EAAE,IAAI,EAAE,EAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;IAChD,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAEnD,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAM,CAAC;QAC1C,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE,CAAM,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,IAAI,EAAE,EAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;IAChD,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/skills/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { LoadedSkill, SkillScope, SkillsConfig } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Load skills from standard directories.
|
|
4
|
+
* Priority order (later overrides earlier):
|
|
5
|
+
* 1. User OpenCode: ~/.config/opencode/skills/
|
|
6
|
+
* 2. User Agentuity: ~/.config/agentuity/opencode/skills/
|
|
7
|
+
* 3. User Claude Code compat: ~/.claude/skills/
|
|
8
|
+
* 4. Project OpenCode: ./.opencode/skills/
|
|
9
|
+
* 5. Project Claude Code compat: ./.claude/skills/
|
|
10
|
+
*/
|
|
11
|
+
export declare function loadAllSkills(config?: SkillsConfig): Promise<LoadedSkill[]>;
|
|
12
|
+
/**
|
|
13
|
+
* Load skills from a single directory
|
|
14
|
+
*/
|
|
15
|
+
export declare function loadSkillsFromDir(dir: string, scope: SkillScope): Promise<LoadedSkill[]>;
|
|
16
|
+
/**
|
|
17
|
+
* Get skill by name from loaded skills
|
|
18
|
+
*/
|
|
19
|
+
export declare function getSkillByName(skills: LoadedSkill[], name: string): LoadedSkill | undefined;
|
|
20
|
+
//# sourceMappingURL=loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/skills/loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAiB,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAUpF;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAkCjF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CA6C9F;AAqCD;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE3F"}
|