@jaimevalasek/aioson 1.18.0 → 1.19.0
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/package.json +1 -1
- package/src/cli.js +111 -7
- package/src/constants.js +73 -0
- package/src/i18n/messages/en.js +24 -7
- package/src/i18n/messages/es.js +18 -1
- package/src/i18n/messages/fr.js +18 -1
- package/src/i18n/messages/pt-BR.js +24 -7
- package/template/.claude/commands/aioson/agent/analyst.md +16 -5
- package/template/.claude/commands/aioson/agent/architect.md +17 -5
- package/template/.claude/commands/aioson/agent/briefing.md +16 -5
- package/template/.claude/commands/aioson/agent/committer.md +16 -5
- package/template/.claude/commands/aioson/agent/copywriter.md +16 -5
- package/template/.claude/commands/aioson/agent/design-hybrid-forge.md +16 -5
- package/template/.claude/commands/aioson/agent/dev.md +18 -5
- package/template/.claude/commands/aioson/agent/deyvin.md +16 -5
- package/template/.claude/commands/aioson/agent/discover.md +16 -5
- package/template/.claude/commands/aioson/agent/discovery-design-doc.md +16 -5
- package/template/.claude/commands/aioson/agent/genome.md +16 -5
- package/template/.claude/commands/aioson/agent/neo.md +16 -5
- package/template/.claude/commands/aioson/agent/orache.md +16 -5
- package/template/.claude/commands/aioson/agent/orchestrator.md +21 -5
- package/template/.claude/commands/aioson/agent/pair.md +16 -5
- package/template/.claude/commands/aioson/agent/pentester.md +22 -5
- package/template/.claude/commands/aioson/agent/pm.md +20 -5
- package/template/.claude/commands/aioson/agent/product.md +16 -5
- package/template/.claude/commands/aioson/agent/profiler-enricher.md +16 -5
- package/template/.claude/commands/aioson/agent/profiler-forge.md +16 -5
- package/template/.claude/commands/aioson/agent/profiler-researcher.md +16 -5
- package/template/.claude/commands/aioson/agent/qa.md +16 -5
- package/template/.claude/commands/aioson/agent/setup.md +16 -5
- package/template/.claude/commands/aioson/agent/sheldon.md +16 -5
- package/template/.claude/commands/aioson/agent/site-forge.md +16 -5
- package/template/.claude/commands/aioson/agent/squad.md +16 -5
- package/template/.claude/commands/aioson/agent/tester.md +16 -5
- package/template/.claude/commands/aioson/agent/ux-ui.md +19 -5
- package/template/.claude/commands/aioson/agent/validator.md +17 -5
package/package.json
CHANGED
package/src/cli.js
CHANGED
|
@@ -229,6 +229,8 @@ const JSON_SUPPORTED_COMMANDS = new Set([
|
|
|
229
229
|
'agents',
|
|
230
230
|
'agent:prompt',
|
|
231
231
|
'agent-prompt',
|
|
232
|
+
'agent:help',
|
|
233
|
+
'agent-help',
|
|
232
234
|
'agent:invoke',
|
|
233
235
|
'agent-invoke',
|
|
234
236
|
'setup:context',
|
|
@@ -700,6 +702,10 @@ const JSON_SUPPORTED_COMMANDS = new Set([
|
|
|
700
702
|
'system-install'
|
|
701
703
|
]);
|
|
702
704
|
|
|
705
|
+
const AGENT_HELP_COMMANDS = new Set([
|
|
706
|
+
'agent:prompt', 'agent-prompt', 'agent:invoke', 'agent-invoke', 'agent:help', 'agent-help'
|
|
707
|
+
]);
|
|
708
|
+
|
|
703
709
|
const LEGACY_DASHBOARD_COMMANDS = new Set([
|
|
704
710
|
'dashboard:init',
|
|
705
711
|
'dashboard-init',
|
|
@@ -748,6 +754,7 @@ function printHelp(t, logger) {
|
|
|
748
754
|
logHelpLine(t, logger, 'cli.help_i18n_add');
|
|
749
755
|
logHelpLine(t, logger, 'cli.help_agents');
|
|
750
756
|
logHelpLine(t, logger, 'cli.help_agent_prompt');
|
|
757
|
+
logHelpLine(t, logger, 'cli.help_agent_help');
|
|
751
758
|
logHelpLine(t, logger, 'cli.help_agent_invoke');
|
|
752
759
|
logHelpLine(t, logger, 'cli.help_context_validate');
|
|
753
760
|
logHelpLine(t, logger, 'cli.help_context_pack');
|
|
@@ -851,6 +858,91 @@ function printHelp(t, logger) {
|
|
|
851
858
|
logHelpLine(t, logger, 'cli.help_squad_grant');
|
|
852
859
|
}
|
|
853
860
|
|
|
861
|
+
function printAgentHelp(agentName, jsonMode, logger, t) {
|
|
862
|
+
const { AGENT_DEFINITIONS } = require('./constants');
|
|
863
|
+
const { normalizeAgentName } = require('./agents');
|
|
864
|
+
|
|
865
|
+
if (!agentName) {
|
|
866
|
+
const list = AGENT_DEFINITIONS.map((a) => ({
|
|
867
|
+
id: a.id,
|
|
868
|
+
displayName: a.displayName,
|
|
869
|
+
description: a.description || ''
|
|
870
|
+
}));
|
|
871
|
+
if (jsonMode) {
|
|
872
|
+
writeJson({ ok: true, agents: list });
|
|
873
|
+
return;
|
|
874
|
+
}
|
|
875
|
+
logger.log(`${t('agents.help_available')}\n`);
|
|
876
|
+
for (const a of list) {
|
|
877
|
+
logger.log(` @${a.id.padEnd(24)} ${a.description}`);
|
|
878
|
+
}
|
|
879
|
+
logger.log(`\n${t('agents.help_run_detail')}`);
|
|
880
|
+
return;
|
|
881
|
+
}
|
|
882
|
+
|
|
883
|
+
const normalized = normalizeAgentName(agentName);
|
|
884
|
+
const agent = AGENT_DEFINITIONS.find((a) => {
|
|
885
|
+
if (a.id === normalized) return true;
|
|
886
|
+
return Array.isArray(a.aliases) && a.aliases.includes(normalized);
|
|
887
|
+
});
|
|
888
|
+
|
|
889
|
+
if (!agent) {
|
|
890
|
+
if (jsonMode) {
|
|
891
|
+
writeJson({ ok: false, error: t('agents.help_unknown_agent', { agent: agentName }) });
|
|
892
|
+
} else {
|
|
893
|
+
logger.error(t('agents.help_unknown_agent', { agent: agentName }));
|
|
894
|
+
}
|
|
895
|
+
process.exitCode = 1;
|
|
896
|
+
return;
|
|
897
|
+
}
|
|
898
|
+
|
|
899
|
+
if (jsonMode) {
|
|
900
|
+
writeJson({
|
|
901
|
+
ok: true,
|
|
902
|
+
agent: {
|
|
903
|
+
id: agent.id,
|
|
904
|
+
displayName: agent.displayName,
|
|
905
|
+
description: agent.description || '',
|
|
906
|
+
command: agent.command,
|
|
907
|
+
path: agent.path,
|
|
908
|
+
aliases: agent.aliases || [],
|
|
909
|
+
flags: agent.flags || [],
|
|
910
|
+
dependsOn: agent.dependsOn,
|
|
911
|
+
output: agent.output
|
|
912
|
+
}
|
|
913
|
+
});
|
|
914
|
+
return;
|
|
915
|
+
}
|
|
916
|
+
|
|
917
|
+
const aliasLine = agent.aliases && agent.aliases.length > 0
|
|
918
|
+
? ` (aliases: ${agent.aliases.join(', ')})`
|
|
919
|
+
: '';
|
|
920
|
+
logger.log(`${agent.command} — ${agent.description || agent.displayName}${aliasLine}\n`);
|
|
921
|
+
logger.log(`${t('agents.help_usage')}`);
|
|
922
|
+
logger.log(` aioson agent:prompt ${agent.id} [path] [options]`);
|
|
923
|
+
logger.log(` /${agent.id} [task description] ${t('agents.help_claude_code')}\n`);
|
|
924
|
+
logger.log(t('agents.help_common_options'));
|
|
925
|
+
logger.log(` --tool=<tool> ${t('agents.help_opt_tool')}`);
|
|
926
|
+
logger.log(` --language=<lang> ${t('agents.help_opt_language')}`);
|
|
927
|
+
logger.log(` --headless ${t('agents.help_opt_headless')}`);
|
|
928
|
+
logger.log(` --output=<path> ${t('agents.help_opt_output')}`);
|
|
929
|
+
logger.log(` --json ${t('agents.help_opt_json')}`);
|
|
930
|
+
if (agent.flags && agent.flags.length > 0) {
|
|
931
|
+
logger.log(`\n${t('agents.help_agent_options', { command: agent.command })}`);
|
|
932
|
+
for (const flag of agent.flags) {
|
|
933
|
+
logger.log(` --${flag.name}=${flag.value.padEnd(Math.max(12 - flag.name.length, 1))} ${flag.description}`);
|
|
934
|
+
}
|
|
935
|
+
}
|
|
936
|
+
if (agent.dependsOn.length > 0) {
|
|
937
|
+
logger.log(`\n${t('agents.help_requires')}`);
|
|
938
|
+
for (const dep of agent.dependsOn) {
|
|
939
|
+
logger.log(` ${dep}`);
|
|
940
|
+
}
|
|
941
|
+
}
|
|
942
|
+
logger.log(`\n${t('agents.help_produces')}\n ${agent.output}`);
|
|
943
|
+
logger.log(`\n${t('agents.help_instruction_file')}\n ${agent.path}`);
|
|
944
|
+
}
|
|
945
|
+
|
|
854
946
|
function commandSupportsJson(command) {
|
|
855
947
|
return JSON_SUPPORTED_COMMANDS.has(command);
|
|
856
948
|
}
|
|
@@ -868,19 +960,31 @@ async function main() {
|
|
|
868
960
|
const logger = createLogger();
|
|
869
961
|
const silentLogger = createSilentLogger();
|
|
870
962
|
|
|
871
|
-
if (command === 'help' || options.help || command === '--help' || command === '-h') {
|
|
872
|
-
printHelp(t, logger);
|
|
873
|
-
return;
|
|
874
|
-
}
|
|
875
|
-
|
|
876
963
|
if (command === '--version' || command === '-v' || command === 'version' || options.version) {
|
|
877
|
-
const
|
|
964
|
+
const { getCliVersionSync } = require('./version');
|
|
965
|
+
const version = getCliVersionSync();
|
|
878
966
|
if (jsonMode) {
|
|
879
|
-
writeJson(
|
|
967
|
+
writeJson({ ok: true, version });
|
|
968
|
+
} else {
|
|
969
|
+
logger.log(`aioson ${version}`);
|
|
880
970
|
}
|
|
881
971
|
return;
|
|
882
972
|
}
|
|
883
973
|
|
|
974
|
+
if (options.help && AGENT_HELP_COMMANDS.has(command)) {
|
|
975
|
+
printAgentHelp(args[0], jsonMode, logger, t);
|
|
976
|
+
return;
|
|
977
|
+
}
|
|
978
|
+
if (command === 'agent:help' || command === 'agent-help') {
|
|
979
|
+
printAgentHelp(args[0], jsonMode, logger, t);
|
|
980
|
+
return;
|
|
981
|
+
}
|
|
982
|
+
|
|
983
|
+
if (command === 'help' || options.help || command === '--help' || command === '-h') {
|
|
984
|
+
printHelp(t, logger);
|
|
985
|
+
return;
|
|
986
|
+
}
|
|
987
|
+
|
|
884
988
|
if (LEGACY_DASHBOARD_COMMANDS.has(command)) {
|
|
885
989
|
const message = t('cli.dashboard_moved', { command });
|
|
886
990
|
if (jsonMode) {
|
package/src/constants.js
CHANGED
|
@@ -190,6 +190,7 @@ const AGENT_DEFINITIONS = [
|
|
|
190
190
|
{
|
|
191
191
|
id: 'setup',
|
|
192
192
|
displayName: 'Setup',
|
|
193
|
+
description: 'Project onboarding and context setup',
|
|
193
194
|
command: '@setup',
|
|
194
195
|
path: '.aioson/agents/setup.md',
|
|
195
196
|
dependsOn: [],
|
|
@@ -198,6 +199,7 @@ const AGENT_DEFINITIONS = [
|
|
|
198
199
|
{
|
|
199
200
|
id: 'discovery-design-doc',
|
|
200
201
|
displayName: 'Discovery/Design Doc',
|
|
202
|
+
description: 'Discovery and design doc generation',
|
|
201
203
|
command: '@discovery-design-doc',
|
|
202
204
|
path: '.aioson/agents/discovery-design-doc.md',
|
|
203
205
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -206,6 +208,7 @@ const AGENT_DEFINITIONS = [
|
|
|
206
208
|
{
|
|
207
209
|
id: 'discover',
|
|
208
210
|
displayName: 'Discover',
|
|
211
|
+
description: 'Semantic knowledge discovery and bootstrap cache generation',
|
|
209
212
|
command: '@discover',
|
|
210
213
|
path: '.aioson/agents/discover.md',
|
|
211
214
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -214,6 +217,7 @@ const AGENT_DEFINITIONS = [
|
|
|
214
217
|
{
|
|
215
218
|
id: 'product',
|
|
216
219
|
displayName: 'Product',
|
|
220
|
+
description: 'Product vision, PRD and feature scoping',
|
|
217
221
|
command: '@product',
|
|
218
222
|
path: '.aioson/agents/product.md',
|
|
219
223
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -222,6 +226,7 @@ const AGENT_DEFINITIONS = [
|
|
|
222
226
|
{
|
|
223
227
|
id: 'deyvin',
|
|
224
228
|
displayName: 'Deyvin',
|
|
229
|
+
description: 'Pair programming partner for continuity sessions',
|
|
225
230
|
command: '@deyvin',
|
|
226
231
|
path: '.aioson/agents/deyvin.md',
|
|
227
232
|
aliases: ['pair'],
|
|
@@ -231,6 +236,7 @@ const AGENT_DEFINITIONS = [
|
|
|
231
236
|
{
|
|
232
237
|
id: 'analyst',
|
|
233
238
|
displayName: 'Analyst',
|
|
239
|
+
description: 'Domain discovery and entity mapping (SMALL/MEDIUM)',
|
|
234
240
|
command: '@analyst',
|
|
235
241
|
path: '.aioson/agents/analyst.md',
|
|
236
242
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -239,6 +245,7 @@ const AGENT_DEFINITIONS = [
|
|
|
239
245
|
{
|
|
240
246
|
id: 'architect',
|
|
241
247
|
displayName: 'Architect',
|
|
248
|
+
description: 'Project structure and technical decisions (SMALL/MEDIUM)',
|
|
242
249
|
command: '@architect',
|
|
243
250
|
path: '.aioson/agents/architect.md',
|
|
244
251
|
dependsOn: [
|
|
@@ -250,6 +257,7 @@ const AGENT_DEFINITIONS = [
|
|
|
250
257
|
{
|
|
251
258
|
id: 'ux-ui',
|
|
252
259
|
displayName: 'UI/UX',
|
|
260
|
+
description: 'UI/UX design system and component spec (SMALL/MEDIUM)',
|
|
253
261
|
command: '@ux-ui',
|
|
254
262
|
path: '.aioson/agents/ux-ui.md',
|
|
255
263
|
dependsOn: [
|
|
@@ -263,6 +271,7 @@ const AGENT_DEFINITIONS = [
|
|
|
263
271
|
{
|
|
264
272
|
id: 'pm',
|
|
265
273
|
displayName: 'PM',
|
|
274
|
+
description: 'Backlog and user stories (MEDIUM only)',
|
|
266
275
|
command: '@pm',
|
|
267
276
|
path: '.aioson/agents/pm.md',
|
|
268
277
|
dependsOn: [
|
|
@@ -277,6 +286,7 @@ const AGENT_DEFINITIONS = [
|
|
|
277
286
|
{
|
|
278
287
|
id: 'dev',
|
|
279
288
|
displayName: 'Dev',
|
|
289
|
+
description: 'Feature implementation (any stack)',
|
|
280
290
|
command: '@dev',
|
|
281
291
|
path: '.aioson/agents/dev.md',
|
|
282
292
|
dependsOn: [
|
|
@@ -289,8 +299,14 @@ const AGENT_DEFINITIONS = [
|
|
|
289
299
|
{
|
|
290
300
|
id: 'pentester',
|
|
291
301
|
displayName: 'Pentester',
|
|
302
|
+
description: 'Adversarial security review and threat-surface mapping',
|
|
292
303
|
command: '@pentester',
|
|
293
304
|
path: '.aioson/agents/pentester.md',
|
|
305
|
+
flags: [
|
|
306
|
+
{ name: 'mode', value: 'framework_target|app_target', description: 'Target mode for security review' },
|
|
307
|
+
{ name: 'feature', value: '<slug>', description: 'Feature slug (required for app_target)' },
|
|
308
|
+
{ name: 'scope', value: '<scope>', description: 'Target scope (required for app_target)' }
|
|
309
|
+
],
|
|
294
310
|
dependsOn: [
|
|
295
311
|
'.aioson/context/project.context.md',
|
|
296
312
|
'.aioson/context/spec-{slug}.md (active feature)'
|
|
@@ -300,6 +316,7 @@ const AGENT_DEFINITIONS = [
|
|
|
300
316
|
{
|
|
301
317
|
id: 'qa',
|
|
302
318
|
displayName: 'QA',
|
|
319
|
+
description: 'Risk-first review and test generation (SMALL/MEDIUM)',
|
|
303
320
|
command: '@qa',
|
|
304
321
|
path: '.aioson/agents/qa.md',
|
|
305
322
|
dependsOn: ['.aioson/context/discovery.md'],
|
|
@@ -308,6 +325,7 @@ const AGENT_DEFINITIONS = [
|
|
|
308
325
|
{
|
|
309
326
|
id: 'validator',
|
|
310
327
|
displayName: 'Validator',
|
|
328
|
+
description: 'Technical validation against success contract',
|
|
311
329
|
command: '@validator',
|
|
312
330
|
path: '.aioson/agents/validator.md',
|
|
313
331
|
dependsOn: [
|
|
@@ -319,6 +337,7 @@ const AGENT_DEFINITIONS = [
|
|
|
319
337
|
{
|
|
320
338
|
id: 'tester',
|
|
321
339
|
displayName: 'Tester',
|
|
340
|
+
description: 'Systematic test engineering for implemented apps (all sizes)',
|
|
322
341
|
command: '@tester',
|
|
323
342
|
path: '.aioson/agents/tester.md',
|
|
324
343
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -327,6 +346,7 @@ const AGENT_DEFINITIONS = [
|
|
|
327
346
|
{
|
|
328
347
|
id: 'orchestrator',
|
|
329
348
|
displayName: 'Orchestrator',
|
|
349
|
+
description: 'Session protocol and parallel execution (MEDIUM)',
|
|
330
350
|
command: '@orchestrator',
|
|
331
351
|
path: '.aioson/agents/orchestrator.md',
|
|
332
352
|
dependsOn: [
|
|
@@ -342,6 +362,7 @@ const AGENT_DEFINITIONS = [
|
|
|
342
362
|
{
|
|
343
363
|
id: 'squad',
|
|
344
364
|
displayName: 'Squad',
|
|
365
|
+
description: 'Squad assembly and management',
|
|
345
366
|
command: '@squad',
|
|
346
367
|
path: '.aioson/agents/squad.md',
|
|
347
368
|
dependsOn: [],
|
|
@@ -351,6 +372,7 @@ const AGENT_DEFINITIONS = [
|
|
|
351
372
|
{
|
|
352
373
|
id: 'orache',
|
|
353
374
|
displayName: 'Orache',
|
|
375
|
+
description: 'Domain investigation and strategic research',
|
|
354
376
|
command: '@orache',
|
|
355
377
|
path: '.aioson/agents/orache.md',
|
|
356
378
|
dependsOn: [],
|
|
@@ -359,6 +381,7 @@ const AGENT_DEFINITIONS = [
|
|
|
359
381
|
{
|
|
360
382
|
id: 'genome',
|
|
361
383
|
displayName: 'Genome',
|
|
384
|
+
description: 'Domain genome creation and application',
|
|
362
385
|
command: '@genome',
|
|
363
386
|
path: '.aioson/agents/genome.md',
|
|
364
387
|
dependsOn: [],
|
|
@@ -367,6 +390,7 @@ const AGENT_DEFINITIONS = [
|
|
|
367
390
|
{
|
|
368
391
|
id: 'design-hybrid-forge',
|
|
369
392
|
displayName: 'Design Hybrid Forge',
|
|
393
|
+
description: 'Generate hybrid design skill from two visual parents',
|
|
370
394
|
command: '@design-hybrid-forge',
|
|
371
395
|
path: '.aioson/agents/design-hybrid-forge.md',
|
|
372
396
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
@@ -375,14 +399,61 @@ const AGENT_DEFINITIONS = [
|
|
|
375
399
|
{
|
|
376
400
|
id: 'site-forge',
|
|
377
401
|
displayName: 'Site Forge',
|
|
402
|
+
description: 'Clone, extract, and forge sites and design skills from any URL',
|
|
378
403
|
command: '@site-forge',
|
|
379
404
|
path: '.aioson/agents/site-forge.md',
|
|
380
405
|
dependsOn: ['.aioson/context/project.context.md'],
|
|
381
406
|
output: 'src/components/*.tsx + src/app/page.tsx + docs/research/{hostname}/ + public/images/{hostname}/'
|
|
382
407
|
},
|
|
408
|
+
{
|
|
409
|
+
id: 'neo',
|
|
410
|
+
displayName: 'Neo',
|
|
411
|
+
description: 'System router: see the full picture, get guided to the right agent',
|
|
412
|
+
command: '@neo',
|
|
413
|
+
path: '.aioson/agents/neo.md',
|
|
414
|
+
dependsOn: ['.aioson/context/project.context.md'],
|
|
415
|
+
output: 'routing decision + agent handoff'
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
id: 'sheldon',
|
|
419
|
+
displayName: 'Sheldon',
|
|
420
|
+
description: 'Deep technical analysis and architecture review',
|
|
421
|
+
command: '@sheldon',
|
|
422
|
+
path: '.aioson/agents/sheldon.md',
|
|
423
|
+
dependsOn: ['.aioson/context/project.context.md'],
|
|
424
|
+
output: 'enriched PRD or architecture review'
|
|
425
|
+
},
|
|
426
|
+
{
|
|
427
|
+
id: 'committer',
|
|
428
|
+
displayName: 'Committer',
|
|
429
|
+
description: 'Professional Git commit generation from changes and context',
|
|
430
|
+
command: '@committer',
|
|
431
|
+
path: '.aioson/agents/committer.md',
|
|
432
|
+
dependsOn: [],
|
|
433
|
+
output: 'git commit(s)'
|
|
434
|
+
},
|
|
435
|
+
{
|
|
436
|
+
id: 'copywriter',
|
|
437
|
+
displayName: 'Copywriter',
|
|
438
|
+
description: 'Conversion-focused marketing copy',
|
|
439
|
+
command: '@copywriter',
|
|
440
|
+
path: '.aioson/agents/copywriter.md',
|
|
441
|
+
dependsOn: [],
|
|
442
|
+
output: 'marketing copy + content assets'
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
id: 'briefing',
|
|
446
|
+
displayName: 'Briefing',
|
|
447
|
+
description: 'Pre-production briefings and planning',
|
|
448
|
+
command: '@briefing',
|
|
449
|
+
path: '.aioson/agents/briefing.md',
|
|
450
|
+
dependsOn: ['.aioson/context/project.context.md'],
|
|
451
|
+
output: '.aioson/briefings/{slug}/'
|
|
452
|
+
},
|
|
383
453
|
{
|
|
384
454
|
id: 'profiler-researcher',
|
|
385
455
|
displayName: 'Profiler Researcher',
|
|
456
|
+
description: 'Clone profiler: research phase',
|
|
386
457
|
command: '@profiler-researcher',
|
|
387
458
|
path: '.aioson/agents/profiler-researcher.md',
|
|
388
459
|
dependsOn: [],
|
|
@@ -391,6 +462,7 @@ const AGENT_DEFINITIONS = [
|
|
|
391
462
|
{
|
|
392
463
|
id: 'profiler-enricher',
|
|
393
464
|
displayName: 'Profiler Enricher',
|
|
465
|
+
description: 'Clone profiler: enrichment phase',
|
|
394
466
|
command: '@profiler-enricher',
|
|
395
467
|
path: '.aioson/agents/profiler-enricher.md',
|
|
396
468
|
dependsOn: ['.aioson/profiler-reports/{person-slug}/research-report.md'],
|
|
@@ -399,6 +471,7 @@ const AGENT_DEFINITIONS = [
|
|
|
399
471
|
{
|
|
400
472
|
id: 'profiler-forge',
|
|
401
473
|
displayName: 'Profiler Forge',
|
|
474
|
+
description: 'Clone profiler: forge and validate',
|
|
402
475
|
command: '@profiler-forge',
|
|
403
476
|
path: '.aioson/agents/profiler-forge.md',
|
|
404
477
|
dependsOn: ['.aioson/profiler-reports/{person-slug}/enriched-profile.md'],
|
package/src/i18n/messages/en.js
CHANGED
|
@@ -19,6 +19,8 @@ module.exports = {
|
|
|
19
19
|
help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=en]',
|
|
20
20
|
help_agent_prompt:
|
|
21
21
|
'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=en]',
|
|
22
|
+
help_agent_help:
|
|
23
|
+
'aioson agent:help [agent] [--json]',
|
|
22
24
|
help_agent_invoke:
|
|
23
25
|
'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=en]',
|
|
24
26
|
help_context_validate: 'aioson context:validate [path] [--json] [--locale=en]',
|
|
@@ -219,7 +221,7 @@ module.exports = {
|
|
|
219
221
|
help_runtime_emit:
|
|
220
222
|
'aioson runtime:emit [path] --agent=<name> [--type=<event>] [--summary=<text>] [--title=<text>] [--refs=<file[,file2]>] [--plan-step=<id>] [--meta=<json>] [--json] [--locale=en]',
|
|
221
223
|
help_live_start:
|
|
222
|
-
'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<name> [--tool-bin=<binary>] [--permission-mode=default|yolo] [--tool-args=<args>] [--title=<text>] [--goal=<text>] [--plan=<file>] [--session=<key>] [--message=<text>] [--attach] [--no-launch] [--tmux] [--json] [--locale=en]',
|
|
224
|
+
'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<name> [--tool-bin=<binary>] [--permission-mode=default|yolo] [--tool-args=<args>] [--title=<text>] [--goal=<text>] [--plan=<file>] [--session=<key>] [--message=<text>] [--attach] [--no-launch] [--tmux] [--json] [--locale=en]',
|
|
223
225
|
help_live_status:
|
|
224
226
|
'aioson live:status [path] [--agent=<name>] [--limit=8] [--watch=2] [--format=compact|tmux-bar] [--json] [--locale=en]',
|
|
225
227
|
help_live_handoff:
|
|
@@ -505,7 +507,22 @@ module.exports = {
|
|
|
505
507
|
'Pentester app_target requires --feature=<slug> (or --slug=<slug>).',
|
|
506
508
|
prompt_missing_scope_for_app_target:
|
|
507
509
|
'Pentester app_target requires --scope=<area>.',
|
|
508
|
-
prompt_title: 'Prompt for agent "{agent}" on tool "{tool}" (locale: {locale}):'
|
|
510
|
+
prompt_title: 'Prompt for agent "{agent}" on tool "{tool}" (locale: {locale}):',
|
|
511
|
+
help_available: 'Available agents:',
|
|
512
|
+
help_run_detail: 'Run "aioson agent:help <name>" for details on a specific agent.',
|
|
513
|
+
help_usage: 'Usage:',
|
|
514
|
+
help_claude_code: '(Claude Code)',
|
|
515
|
+
help_common_options: 'Common options:',
|
|
516
|
+
help_opt_tool: 'Target tool (codex|claude|gemini|opencode)',
|
|
517
|
+
help_opt_language: 'Interaction language (e.g., pt-BR, en)',
|
|
518
|
+
help_opt_headless: 'Output prompt only, no runtime tracking',
|
|
519
|
+
help_opt_output: 'Save headless prompt to file',
|
|
520
|
+
help_opt_json: 'JSON output mode',
|
|
521
|
+
help_agent_options: 'Agent-specific options ({command}):',
|
|
522
|
+
help_requires: 'Requires:',
|
|
523
|
+
help_produces: 'Produces:',
|
|
524
|
+
help_instruction_file: 'Instruction file:',
|
|
525
|
+
help_unknown_agent: 'Unknown agent: {agent}'
|
|
509
526
|
},
|
|
510
527
|
context_validate: {
|
|
511
528
|
missing_file: 'Context file not found: {path}',
|
|
@@ -1090,11 +1107,11 @@ module.exports = {
|
|
|
1090
1107
|
plan_not_found: 'Plan file not found: {plan}',
|
|
1091
1108
|
no_active_session: 'No active live session found for {agent}.',
|
|
1092
1109
|
session_not_active: 'Live session for {agent} is not active.',
|
|
1093
|
-
json_requires_no_launch: '--json requires --no-launch for live:start because foreground launch is interactive.',
|
|
1094
|
-
tool_binary_not_found: 'Tool binary not found in PATH: {binary}',
|
|
1095
|
-
tool_mismatch: 'Active session uses tool "{existing}" but --tool={requested} was given. Close the session first or use the same tool.',
|
|
1096
|
-
tool_mismatch_auto_closed: 'Previous live session used "{existing}" and was auto-closed. Starting a new session with "{requested}".',
|
|
1097
|
-
micro_task_already_open: 'A live micro-task is already open for {agent}. Emit task_completed before task_started again.',
|
|
1110
|
+
json_requires_no_launch: '--json requires --no-launch for live:start because foreground launch is interactive.',
|
|
1111
|
+
tool_binary_not_found: 'Tool binary not found in PATH: {binary}',
|
|
1112
|
+
tool_mismatch: 'Active session uses tool "{existing}" but --tool={requested} was given. Close the session first or use the same tool.',
|
|
1113
|
+
tool_mismatch_auto_closed: 'Previous live session used "{existing}" and was auto-closed. Starting a new session with "{requested}".',
|
|
1114
|
+
micro_task_already_open: 'A live micro-task is already open for {agent}. Emit task_completed before task_started again.',
|
|
1098
1115
|
handoff_same_agent: 'live:handoff requires different --agent and --to values.',
|
|
1099
1116
|
handoff_agent_mismatch: 'No active live session found for {agent}.',
|
|
1100
1117
|
watch_json_conflict: '--watch cannot be combined with --json.',
|
package/src/i18n/messages/es.js
CHANGED
|
@@ -20,6 +20,8 @@ module.exports = {
|
|
|
20
20
|
help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=es]',
|
|
21
21
|
help_agent_prompt:
|
|
22
22
|
'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=es]',
|
|
23
|
+
help_agent_help:
|
|
24
|
+
'aioson agent:help [agent] [--json]',
|
|
23
25
|
help_agent_invoke:
|
|
24
26
|
'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=es]',
|
|
25
27
|
help_context_validate: 'aioson context:validate [path] [--json] [--locale=es]',
|
|
@@ -383,7 +385,22 @@ module.exports = {
|
|
|
383
385
|
'Pentester app_target requiere --feature=<slug> (o --slug=<slug>).',
|
|
384
386
|
prompt_missing_scope_for_app_target:
|
|
385
387
|
'Pentester app_target requiere --scope=<area>.',
|
|
386
|
-
prompt_title: 'Prompt para el agente "{agent}" en la herramienta "{tool}" (locale: {locale}):'
|
|
388
|
+
prompt_title: 'Prompt para el agente "{agent}" en la herramienta "{tool}" (locale: {locale}):',
|
|
389
|
+
help_available: 'Agentes disponibles:',
|
|
390
|
+
help_run_detail: 'Ejecute "aioson agent:help <nombre>" para detalles de un agente específico.',
|
|
391
|
+
help_usage: 'Uso:',
|
|
392
|
+
help_claude_code: '(Claude Code)',
|
|
393
|
+
help_common_options: 'Opciones comunes:',
|
|
394
|
+
help_opt_tool: 'Herramienta destino (codex|claude|gemini|opencode)',
|
|
395
|
+
help_opt_language: 'Idioma de interacción (ej: pt-BR, en)',
|
|
396
|
+
help_opt_headless: 'Solo salida del prompt, sin rastreo de runtime',
|
|
397
|
+
help_opt_output: 'Guardar prompt headless en archivo',
|
|
398
|
+
help_opt_json: 'Modo de salida JSON',
|
|
399
|
+
help_agent_options: 'Opciones específicas del agente ({command}):',
|
|
400
|
+
help_requires: 'Requiere:',
|
|
401
|
+
help_produces: 'Produce:',
|
|
402
|
+
help_instruction_file: 'Archivo de instrucción:',
|
|
403
|
+
help_unknown_agent: 'Agente desconocido: {agent}'
|
|
387
404
|
},
|
|
388
405
|
context_validate: {
|
|
389
406
|
missing_file: 'Archivo de contexto no encontrado: {path}',
|
package/src/i18n/messages/fr.js
CHANGED
|
@@ -20,6 +20,8 @@ module.exports = {
|
|
|
20
20
|
help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=fr]',
|
|
21
21
|
help_agent_prompt:
|
|
22
22
|
'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=fr]',
|
|
23
|
+
help_agent_help:
|
|
24
|
+
'aioson agent:help [agent] [--json]',
|
|
23
25
|
help_agent_invoke:
|
|
24
26
|
'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=fr]',
|
|
25
27
|
help_context_validate: 'aioson context:validate [path] [--json] [--locale=fr]',
|
|
@@ -382,7 +384,22 @@ module.exports = {
|
|
|
382
384
|
'Pentester app_target exige --feature=<slug> (ou --slug=<slug>).',
|
|
383
385
|
prompt_missing_scope_for_app_target:
|
|
384
386
|
'Pentester app_target exige --scope=<area>.',
|
|
385
|
-
prompt_title: 'Prompt pour l agent "{agent}" sur l outil "{tool}" (locale : {locale}) :'
|
|
387
|
+
prompt_title: 'Prompt pour l agent "{agent}" sur l outil "{tool}" (locale : {locale}) :',
|
|
388
|
+
help_available: 'Agents disponibles :',
|
|
389
|
+
help_run_detail: 'Exécutez "aioson agent:help <nom>" pour les détails d un agent spécifique.',
|
|
390
|
+
help_usage: 'Utilisation :',
|
|
391
|
+
help_claude_code: '(Claude Code)',
|
|
392
|
+
help_common_options: 'Options communes :',
|
|
393
|
+
help_opt_tool: 'Outil cible (codex|claude|gemini|opencode)',
|
|
394
|
+
help_opt_language: 'Langue d interaction (ex : pt-BR, en)',
|
|
395
|
+
help_opt_headless: 'Sortie du prompt uniquement, sans suivi runtime',
|
|
396
|
+
help_opt_output: 'Enregistrer le prompt headless dans un fichier',
|
|
397
|
+
help_opt_json: 'Mode de sortie JSON',
|
|
398
|
+
help_agent_options: 'Options spécifiques de l agent ({command}) :',
|
|
399
|
+
help_requires: 'Requiert :',
|
|
400
|
+
help_produces: 'Produit :',
|
|
401
|
+
help_instruction_file: 'Fichier d instruction :',
|
|
402
|
+
help_unknown_agent: 'Agent inconnu : {agent}'
|
|
386
403
|
},
|
|
387
404
|
context_validate: {
|
|
388
405
|
missing_file: 'Fichier de contexte introuvable : {path}',
|
|
@@ -20,6 +20,8 @@ module.exports = {
|
|
|
20
20
|
help_agents: 'aioson agents [path] [--lang=<bcp47-tag>] [--locale=pt-BR]',
|
|
21
21
|
help_agent_prompt:
|
|
22
22
|
'aioson agent:prompt <agent> [path] [--tool=codex|claude|gemini|opencode] [--lang=<bcp47-tag>] [--locale=pt-BR]',
|
|
23
|
+
help_agent_help:
|
|
24
|
+
'aioson agent:help [agent] [--json]',
|
|
23
25
|
help_agent_invoke:
|
|
24
26
|
'aioson agent:invoke <agent> [path] [--tool=codex|claude|gemini|opencode] [--mode=framework_target|app_target] [--feature=<slug>] [--scope=<area>] [--lang=<bcp47-tag>] [--locale=pt-BR]',
|
|
25
27
|
help_context_validate: 'aioson context:validate [path] [--json] [--locale=pt-BR]',
|
|
@@ -217,7 +219,7 @@ module.exports = {
|
|
|
217
219
|
help_runtime_emit:
|
|
218
220
|
'aioson runtime:emit [path] --agent=<nome> [--type=<evento>] [--summary=<texto>] [--title=<texto>] [--refs=<arquivo[,arquivo2]>] [--plan-step=<id>] [--meta=<json>] [--json] [--locale=pt-BR]',
|
|
219
221
|
help_live_start:
|
|
220
|
-
'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<nome> [--tool-bin=<binario>] [--permission-mode=default|yolo] [--tool-args=<args>] [--title=<texto>] [--goal=<texto>] [--plan=<arquivo>] [--session=<chave>] [--message=<texto>] [--attach] [--no-launch] [--tmux] [--json] [--locale=pt-BR]',
|
|
222
|
+
'aioson live:start [path] --tool=codex|claude|gemini|opencode --agent=<nome> [--tool-bin=<binario>] [--permission-mode=default|yolo] [--tool-args=<args>] [--title=<texto>] [--goal=<texto>] [--plan=<arquivo>] [--session=<chave>] [--message=<texto>] [--attach] [--no-launch] [--tmux] [--json] [--locale=pt-BR]',
|
|
221
223
|
help_live_status:
|
|
222
224
|
'aioson live:status [path] [--agent=<nome>] [--limit=8] [--watch=2] [--format=compact|tmux-bar] [--json] [--locale=pt-BR]',
|
|
223
225
|
help_live_handoff:
|
|
@@ -477,7 +479,22 @@ module.exports = {
|
|
|
477
479
|
'Pentester app_target exige --feature=<slug> (ou --slug=<slug>).',
|
|
478
480
|
prompt_missing_scope_for_app_target:
|
|
479
481
|
'Pentester app_target exige --scope=<area>.',
|
|
480
|
-
prompt_title: 'Prompt para o agente "{agent}" na ferramenta "{tool}" (locale: {locale}):'
|
|
482
|
+
prompt_title: 'Prompt para o agente "{agent}" na ferramenta "{tool}" (locale: {locale}):',
|
|
483
|
+
help_available: 'Agentes disponíveis:',
|
|
484
|
+
help_run_detail: 'Execute "aioson agent:help <nome>" para detalhes de um agente específico.',
|
|
485
|
+
help_usage: 'Uso:',
|
|
486
|
+
help_claude_code: '(Claude Code)',
|
|
487
|
+
help_common_options: 'Opções comuns:',
|
|
488
|
+
help_opt_tool: 'Ferramenta alvo (codex|claude|gemini|opencode)',
|
|
489
|
+
help_opt_language: 'Idioma de interação (ex: pt-BR, en)',
|
|
490
|
+
help_opt_headless: 'Saída apenas do prompt, sem rastreamento de runtime',
|
|
491
|
+
help_opt_output: 'Salvar prompt headless em arquivo',
|
|
492
|
+
help_opt_json: 'Modo de saída JSON',
|
|
493
|
+
help_agent_options: 'Opções específicas do agente ({command}):',
|
|
494
|
+
help_requires: 'Requer:',
|
|
495
|
+
help_produces: 'Produz:',
|
|
496
|
+
help_instruction_file: 'Arquivo de instrução:',
|
|
497
|
+
help_unknown_agent: 'Agente desconhecido: {agent}'
|
|
481
498
|
},
|
|
482
499
|
context_validate: {
|
|
483
500
|
missing_file: 'Arquivo de contexto nao encontrado: {path}',
|
|
@@ -1116,11 +1133,11 @@ module.exports = {
|
|
|
1116
1133
|
plan_not_found: 'Arquivo de plano nao encontrado: {plan}',
|
|
1117
1134
|
no_active_session: 'Nenhuma sessao live ativa encontrada para {agent}.',
|
|
1118
1135
|
session_not_active: 'A sessao live de {agent} nao esta ativa.',
|
|
1119
|
-
json_requires_no_launch: '--json requer --no-launch para live:start porque o lancamento em primeiro plano e interativo.',
|
|
1120
|
-
tool_binary_not_found: 'Binario da ferramenta nao encontrado no PATH: {binary}',
|
|
1121
|
-
tool_mismatch: 'A sessao ativa usa a ferramenta "{existing}" mas --tool={requested} foi informado. Encerre a sessao primeiro ou use a mesma ferramenta.',
|
|
1122
|
-
tool_mismatch_auto_closed: 'A sessao live anterior usava "{existing}" e foi fechada automaticamente. Iniciando nova sessao com "{requested}".',
|
|
1123
|
-
micro_task_already_open: 'Uma micro-tarefa live ja esta aberta para {agent}. Emita task_completed antes de task_started novamente.',
|
|
1136
|
+
json_requires_no_launch: '--json requer --no-launch para live:start porque o lancamento em primeiro plano e interativo.',
|
|
1137
|
+
tool_binary_not_found: 'Binario da ferramenta nao encontrado no PATH: {binary}',
|
|
1138
|
+
tool_mismatch: 'A sessao ativa usa a ferramenta "{existing}" mas --tool={requested} foi informado. Encerre a sessao primeiro ou use a mesma ferramenta.',
|
|
1139
|
+
tool_mismatch_auto_closed: 'A sessao live anterior usava "{existing}" e foi fechada automaticamente. Iniciando nova sessao com "{requested}".',
|
|
1140
|
+
micro_task_already_open: 'Uma micro-tarefa live ja esta aberta para {agent}. Emita task_completed antes de task_started novamente.',
|
|
1124
1141
|
handoff_same_agent: 'live:handoff requer valores diferentes para --agent e --to.',
|
|
1125
1142
|
handoff_agent_mismatch: 'Nenhuma sessao live ativa encontrada para {agent}.',
|
|
1126
1143
|
watch_json_conflict: '--watch nao pode ser combinado com --json.',
|
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: "AIOSON — Domain discovery and entity mapping (SMALL/MEDIUM)"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
---
|
|
2
|
+
description: "AIOSON — Domain discovery and entity mapping (SMALL/MEDIUM)"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
If $ARGUMENTS is exactly "--help" or starts with "--help":
|
|
6
|
+
Do NOT activate the agent. Instead, display this help and stop:
|
|
7
|
+
|
|
8
|
+
@analyst — Domain discovery and entity mapping (SMALL/MEDIUM)
|
|
9
|
+
Usage: /aioson:agent:analyst [task description]
|
|
10
|
+
Requires:
|
|
11
|
+
.aioson/context/project.context.md
|
|
12
|
+
Produces: .aioson/context/discovery.md
|
|
13
|
+
Instruction file: .aioson/agents/analyst.md
|
|
14
|
+
CLI help: aioson agent:help analyst
|
|
15
|
+
|
|
16
|
+
Otherwise: Read `.aioson/agents/analyst.md` and follow all instructions. $ARGUMENTS
|
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: "AIOSON — Project structure and technical decisions (SMALL/MEDIUM)"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
---
|
|
2
|
+
description: "AIOSON — Project structure and technical decisions (SMALL/MEDIUM)"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
If $ARGUMENTS is exactly "--help" or starts with "--help":
|
|
6
|
+
Do NOT activate the agent. Instead, display this help and stop:
|
|
7
|
+
|
|
8
|
+
@architect — Project structure and technical decisions (SMALL/MEDIUM)
|
|
9
|
+
Usage: /aioson:agent:architect [task description]
|
|
10
|
+
Requires:
|
|
11
|
+
.aioson/context/project.context.md
|
|
12
|
+
.aioson/context/discovery.md
|
|
13
|
+
Produces: .aioson/context/architecture.md
|
|
14
|
+
Instruction file: .aioson/agents/architect.md
|
|
15
|
+
CLI help: aioson agent:help architect
|
|
16
|
+
|
|
17
|
+
Otherwise: Read `.aioson/agents/architect.md` and follow all instructions. $ARGUMENTS
|
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: "AIOSON — Pre-production briefings and planning"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
---
|
|
2
|
+
description: "AIOSON — Pre-production briefings and planning"
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
If $ARGUMENTS is exactly "--help" or starts with "--help":
|
|
6
|
+
Do NOT activate the agent. Instead, display this help and stop:
|
|
7
|
+
|
|
8
|
+
@briefing — Pre-production briefings and planning
|
|
9
|
+
Usage: /aioson:agent:briefing [task description]
|
|
10
|
+
Requires:
|
|
11
|
+
.aioson/context/project.context.md
|
|
12
|
+
Produces: .aioson/briefings/{slug}/
|
|
13
|
+
Instruction file: .aioson/agents/briefing.md
|
|
14
|
+
CLI help: aioson agent:help briefing
|
|
15
|
+
|
|
16
|
+
Otherwise: Read `.aioson/agents/briefing.md` and follow all instructions. $ARGUMENTS
|