multi-agents-cli 1.0.83 → 1.0.85
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/core/templates/.agents/backend/API.md +1 -1
- package/core/templates/.agents/backend/AUTH.md +1 -1
- package/core/templates/.agents/backend/DB.md +1 -1
- package/core/templates/.agents/backend/EVENTS.md +1 -1
- package/core/templates/.agents/backend/JOBS.md +1 -1
- package/core/templates/.agents/backend/LOGIC.md +2 -2
- package/core/templates/.agents/backend/TESTING.md +1 -1
- package/core/templates/.agents/client/ACCESSIBILITY.md +1 -1
- package/core/templates/.agents/client/FORMS.md +1 -1
- package/core/templates/.agents/client/LOGIC.md +2 -2
- package/core/templates/.agents/client/ROUTING.md +1 -1
- package/core/templates/.agents/client/TESTING.md +1 -1
- package/core/templates/.agents/client/UI.md +1 -1
- package/core/workflow/agent.js +17 -6
- package/package.json +1 -1
|
@@ -236,7 +236,7 @@ After each endpoint:
|
|
|
236
236
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
237
237
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
238
238
|
| Dependency is missing | Dependency alert, await resolution |
|
|
239
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
239
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
240
240
|
| Existing endpoint will change | Destructive action confirmation |
|
|
241
241
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
242
242
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -222,7 +222,7 @@ After each auth unit:
|
|
|
222
222
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
223
223
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
224
224
|
| Dependency is missing | Dependency alert, await resolution |
|
|
225
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
225
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
226
226
|
| Existing auth strategy will change | Destructive action confirmation |
|
|
227
227
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
228
228
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -232,7 +232,7 @@ Awaiting : explicit user confirmation to proceed
|
|
|
232
232
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
233
233
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
234
234
|
| Dependency is missing | Dependency alert, await resolution |
|
|
235
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
235
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
236
236
|
| Existing schema or migration changes | Destructive action confirmation |
|
|
237
237
|
| Migration ready to run | Surface migration block, await confirmation |
|
|
238
238
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
@@ -229,7 +229,7 @@ After each event unit:
|
|
|
229
229
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
230
230
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
231
231
|
| Dependency is missing | Dependency alert, await resolution |
|
|
232
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
232
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
233
233
|
| Existing emitter or handler changes | Destructive action confirmation |
|
|
234
234
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
235
235
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -232,7 +232,7 @@ After each job:
|
|
|
232
232
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
233
233
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
234
234
|
| Dependency is missing | Dependency alert, await resolution |
|
|
235
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
235
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
236
236
|
| Existing job or schedule changes | Destructive action confirmation |
|
|
237
237
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
238
238
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -123,7 +123,7 @@ The following types are required and do not exist in CONTRACTS.md:
|
|
|
123
123
|
- <TypeName>: <description and shape>
|
|
124
124
|
- <TypeName>: <description and shape>
|
|
125
125
|
Reason: <why these cross the boundary or represent a domain entity>
|
|
126
|
-
|
|
126
|
+
Adding these to CONTRACTS.md now and proceeding. No approval needed in agent sessions.
|
|
127
127
|
```
|
|
128
128
|
|
|
129
129
|
### 5. Destructive Action Check
|
|
@@ -268,7 +268,7 @@ After each service:
|
|
|
268
268
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
269
269
|
| Dependency is missing | Dependency alert, await resolution |
|
|
270
270
|
| Type classification uncertain | Default to shared scope, emit CONTRACTS CHANGE PROPOSAL |
|
|
271
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
271
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
272
272
|
| Existing service logic will change | Destructive action confirmation |
|
|
273
273
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
274
274
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -242,7 +242,7 @@ After each suite:
|
|
|
242
242
|
| Implementation missing or incomplete | Flag, redirect to owning agent, stop |
|
|
243
243
|
| Test requires implementation change | Scope redirect, await resolution |
|
|
244
244
|
| Dependency is missing | Dependency alert, await resolution |
|
|
245
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
245
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
246
246
|
| Existing tests will change | Destructive action confirmation |
|
|
247
247
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
248
248
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -241,7 +241,7 @@ After each fix:
|
|
|
241
241
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
242
242
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
243
243
|
| Dependency is missing | Dependency alert, await resolution |
|
|
244
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
244
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
245
245
|
| Existing ARIA patterns will change | Destructive action confirmation |
|
|
246
246
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
247
247
|
| Audit findings ready | Surface audit report, await confirmation |
|
|
@@ -213,7 +213,7 @@ After each form:
|
|
|
213
213
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
214
214
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
215
215
|
| Dependency is missing | Dependency alert, await resolution |
|
|
216
|
-
| Submission type missing | CONTRACTS CHANGE PROPOSAL,
|
|
216
|
+
| Submission type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
217
217
|
| Existing form will change | Destructive action confirmation |
|
|
218
218
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
219
219
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -121,7 +121,7 @@ The following types are required and do not exist in CONTRACTS.md:
|
|
|
121
121
|
- <TypeName>: <description and shape>
|
|
122
122
|
- <TypeName>: <description and shape>
|
|
123
123
|
Reason: <why these cross the boundary or represent a domain entity>
|
|
124
|
-
|
|
124
|
+
Adding these to CONTRACTS.md now and proceeding. No approval needed in agent sessions.
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
### 5. Destructive Action Check
|
|
@@ -256,7 +256,7 @@ After each unit:
|
|
|
256
256
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
257
257
|
| Dependency is missing | Dependency alert, await resolution |
|
|
258
258
|
| Type classification uncertain | Default to shared scope, emit CONTRACTS CHANGE PROPOSAL |
|
|
259
|
-
| Shared type is missing | CONTRACTS CHANGE PROPOSAL,
|
|
259
|
+
| Shared type is missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
260
260
|
| Existing logic will change | Destructive action confirmation |
|
|
261
261
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
262
262
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -214,7 +214,7 @@ After each route change:
|
|
|
214
214
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
215
215
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
216
216
|
| Dependency is missing | Dependency alert, await resolution |
|
|
217
|
-
| Shared type missing | CONTRACTS CHANGE PROPOSAL,
|
|
217
|
+
| Shared type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
218
218
|
| Existing route will change | Destructive action confirmation |
|
|
219
219
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
220
220
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -219,7 +219,7 @@ After each suite:
|
|
|
219
219
|
| Implementation missing or incomplete| Flag, redirect to owning agent, stop |
|
|
220
220
|
| Test requires implementation change | Scope redirect, await resolution |
|
|
221
221
|
| Dependency is missing | Dependency alert, await resolution |
|
|
222
|
-
| Contract type missing | CONTRACTS CHANGE PROPOSAL,
|
|
222
|
+
| Contract type missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
223
223
|
| Existing tests will change | Destructive action confirmation |
|
|
224
224
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
225
225
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
|
@@ -206,7 +206,7 @@ The agent stops and surfaces output in these situations:
|
|
|
206
206
|
| Task is ambiguous | Clarification request (max 2 rounds) |
|
|
207
207
|
| Task bleeds into another domain | Scope redirect, await direction |
|
|
208
208
|
| Dependency is missing | Dependency alert, await resolution |
|
|
209
|
-
| Shared type is missing | CONTRACTS CHANGE PROPOSAL,
|
|
209
|
+
| Shared type is missing | CONTRACTS CHANGE PROPOSAL, write and proceed |
|
|
210
210
|
| Existing component will change | Destructive action confirmation |
|
|
211
211
|
| Task is too large | Breakdown proposal, execute one step at a time |
|
|
212
212
|
| Best practice deviation found | Surface once, await confirmation, move on |
|
package/core/workflow/agent.js
CHANGED
|
@@ -172,16 +172,17 @@ const openIDE = (worktreePath) => {
|
|
|
172
172
|
|
|
173
173
|
|
|
174
174
|
// ── Open new OS terminal with Claude Code CLI ───────────────────────────────
|
|
175
|
-
const openTerminal = (worktreePath) => {
|
|
175
|
+
const openTerminal = (worktreePath, skipPermissions = false) => {
|
|
176
176
|
const termCmd = config.terminal && config.terminal.cmd;
|
|
177
177
|
if (!termCmd) return false;
|
|
178
|
+
const claudeCmd = skipPermissions ? 'claude --dangerously-skip-permissions' : 'claude';
|
|
178
179
|
try {
|
|
179
180
|
if (process.platform === 'darwin') {
|
|
180
|
-
execSync('osascript -e \'tell app "' + termCmd + '" to do script "cd \\"' + worktreePath + '\\" &&
|
|
181
|
+
execSync('osascript -e \'tell app "' + termCmd + '" to do script "cd \\"' + worktreePath + '\\" && ' + claudeCmd + '"\'', { stdio: 'pipe' });
|
|
181
182
|
} else if (process.platform === 'win32') {
|
|
182
|
-
execSync('start ' + termCmd + ' /k "cd /d ' + worktreePath + ' &&
|
|
183
|
+
execSync('start ' + termCmd + ' /k "cd /d ' + worktreePath + ' && ' + claudeCmd + '"', { stdio: 'pipe' });
|
|
183
184
|
} else {
|
|
184
|
-
execSync(termCmd + ' -- bash -c "cd \'' + worktreePath + '\' &&
|
|
185
|
+
execSync(termCmd + ' -- bash -c "cd \'' + worktreePath + '\' && ' + claudeCmd + '; exec bash" &', { stdio: 'pipe' });
|
|
185
186
|
}
|
|
186
187
|
return true;
|
|
187
188
|
} catch { return false; }
|
|
@@ -1407,6 +1408,16 @@ ${excludedUrls}
|
|
|
1407
1408
|
}, 600);
|
|
1408
1409
|
});
|
|
1409
1410
|
|
|
1411
|
+
const permIdx = await arrowSelect(
|
|
1412
|
+
'Grant agent full permissions for this session?',
|
|
1413
|
+
[
|
|
1414
|
+
{ label: `${green('→')} Yes — skip all permission prompts ${dim('(recommended for agent sessions)')}` },
|
|
1415
|
+
{ label: `${dim('→')} No — I'll approve each action manually` },
|
|
1416
|
+
],
|
|
1417
|
+
rl
|
|
1418
|
+
);
|
|
1419
|
+
const skipPermissions = permIdx === 0;
|
|
1420
|
+
|
|
1410
1421
|
sessionLoop: while (true) {
|
|
1411
1422
|
const sessionIdx = await arrowSelect('How would you like to start the session?', [
|
|
1412
1423
|
{ label: `${green('→')} IDE + new terminal ${dim('(Claude Code CLI)')} ${dim('← recommended')}` },
|
|
@@ -1419,7 +1430,7 @@ ${excludedUrls}
|
|
|
1419
1430
|
const openedIDE = openIDE(worktreePath);
|
|
1420
1431
|
if (openedIDE) console.log(` ${green('✓')} ${openedIDE} opened`);
|
|
1421
1432
|
else console.log(` ${yellow('!')} Could not open IDE - open manually at: ${dim(worktreePath)}`);
|
|
1422
|
-
const termOpened = openTerminal(worktreePath);
|
|
1433
|
+
const termOpened = openTerminal(worktreePath, skipPermissions);
|
|
1423
1434
|
if (termOpened) console.log(` ${green('✓')} New terminal opened with Claude Code CLI`);
|
|
1424
1435
|
else console.log(` ${yellow('!')} Could not open terminal - run ${cyan('claude')} manually in: ${dim(worktreePath)}`);
|
|
1425
1436
|
console.log(`\n ${dim("This window can be closed.")}`);
|
|
@@ -1436,7 +1447,7 @@ ${excludedUrls}
|
|
|
1436
1447
|
process.exit(0);
|
|
1437
1448
|
|
|
1438
1449
|
} else if (sessionIdx === 2) {
|
|
1439
|
-
const termOpened = openTerminal(worktreePath);
|
|
1450
|
+
const termOpened = openTerminal(worktreePath, skipPermissions);
|
|
1440
1451
|
if (termOpened) console.log(` ${green('✓')} New terminal opened with Claude Code CLI`);
|
|
1441
1452
|
console.log(`\n ${dim("This window can be closed.")}`);
|
|
1442
1453
|
rl.close();
|
package/package.json
CHANGED