aios-core 3.5.0 → 3.7.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/.aios-core/development/agents/architect.md +4 -0
- package/.aios-core/development/agents/dev.md +7 -0
- package/.aios-core/development/tasks/analyze-project-structure.md +621 -0
- package/.aios-core/development/tasks/create-service.md +391 -0
- package/.aios-core/development/templates/service-template/README.md.hbs +158 -0
- package/.aios-core/development/templates/service-template/__tests__/index.test.ts.hbs +237 -0
- package/.aios-core/development/templates/service-template/client.ts.hbs +403 -0
- package/.aios-core/development/templates/service-template/errors.ts.hbs +182 -0
- package/.aios-core/development/templates/service-template/index.ts.hbs +120 -0
- package/.aios-core/development/templates/service-template/jest.config.js +89 -0
- package/.aios-core/development/templates/service-template/package.json.hbs +87 -0
- package/.aios-core/development/templates/service-template/tsconfig.json +45 -0
- package/.aios-core/development/templates/service-template/types.ts.hbs +145 -0
- package/.aios-core/infrastructure/scripts/ide-sync/agent-parser.js +45 -1
- package/.aios-core/infrastructure/scripts/ide-sync/transformers/antigravity.js +6 -6
- package/.aios-core/infrastructure/scripts/ide-sync/transformers/cursor.js +5 -4
- package/.aios-core/infrastructure/scripts/ide-sync/transformers/trae.js +3 -3
- package/.aios-core/infrastructure/scripts/ide-sync/transformers/windsurf.js +3 -3
- package/.aios-core/install-manifest.yaml +61 -17
- package/package.json +1 -1
|
@@ -209,6 +209,46 @@ function parseAllAgents(agentsDir) {
|
|
|
209
209
|
return agents;
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
+
/**
|
|
213
|
+
* Normalize commands to consistent format
|
|
214
|
+
* Handles both { name, description } and { "cmd-name": "description" } formats
|
|
215
|
+
* @param {object[]} commands - Array of command objects (may be in various formats)
|
|
216
|
+
* @returns {object[]} - Normalized command objects with name, description, visibility
|
|
217
|
+
*/
|
|
218
|
+
function normalizeCommands(commands) {
|
|
219
|
+
if (!Array.isArray(commands)) return [];
|
|
220
|
+
|
|
221
|
+
return commands.map(cmd => {
|
|
222
|
+
// Already in proper format with name property
|
|
223
|
+
if (cmd.name && typeof cmd.name === 'string') {
|
|
224
|
+
return {
|
|
225
|
+
name: cmd.name,
|
|
226
|
+
description: cmd.description || 'No description',
|
|
227
|
+
visibility: cmd.visibility || ['full', 'quick'],
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// Shorthand format: { "cmd-name": "description text" }
|
|
232
|
+
const keys = Object.keys(cmd);
|
|
233
|
+
if (keys.length === 1) {
|
|
234
|
+
const name = keys[0];
|
|
235
|
+
const description = cmd[name];
|
|
236
|
+
return {
|
|
237
|
+
name: name,
|
|
238
|
+
description: typeof description === 'string' ? description : 'No description',
|
|
239
|
+
visibility: ['full', 'quick'],
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// Unknown format - try to extract what we can
|
|
244
|
+
return {
|
|
245
|
+
name: cmd.name || 'unknown',
|
|
246
|
+
description: cmd.description || 'No description',
|
|
247
|
+
visibility: cmd.visibility || ['full', 'quick'],
|
|
248
|
+
};
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
|
|
212
252
|
/**
|
|
213
253
|
* Get visibility-filtered commands
|
|
214
254
|
* @param {object[]} commands - Array of command objects
|
|
@@ -218,7 +258,10 @@ function parseAllAgents(agentsDir) {
|
|
|
218
258
|
function getVisibleCommands(commands, visibility) {
|
|
219
259
|
if (!Array.isArray(commands)) return [];
|
|
220
260
|
|
|
221
|
-
|
|
261
|
+
// First normalize the commands to ensure consistent format
|
|
262
|
+
const normalized = normalizeCommands(commands);
|
|
263
|
+
|
|
264
|
+
return normalized.filter(cmd => {
|
|
222
265
|
if (!cmd.visibility) return true; // Include if no visibility defined
|
|
223
266
|
return cmd.visibility.includes(visibility);
|
|
224
267
|
});
|
|
@@ -246,6 +289,7 @@ module.exports = {
|
|
|
246
289
|
extractSection,
|
|
247
290
|
parseAgentFile,
|
|
248
291
|
parseAllAgents,
|
|
292
|
+
normalizeCommands,
|
|
249
293
|
getVisibleCommands,
|
|
250
294
|
formatCommandsList,
|
|
251
295
|
};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Target: .antigravity/rules/agents/*.md
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
const { getVisibleCommands } = require('../agent-parser');
|
|
9
|
+
const { getVisibleCommands, normalizeCommands } = require('../agent-parser');
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Transform agent data to Antigravity format
|
|
@@ -23,9 +23,10 @@ function transform(agentData) {
|
|
|
23
23
|
const whenToUse = agent.whenToUse || 'Use this agent for specific tasks';
|
|
24
24
|
const archetype = persona.archetype || '';
|
|
25
25
|
|
|
26
|
-
// Get quick visibility commands
|
|
27
|
-
const
|
|
28
|
-
const
|
|
26
|
+
// Get quick visibility commands (normalized to consistent format)
|
|
27
|
+
const allCommands = normalizeCommands(agentData.commands || []);
|
|
28
|
+
const quickCommands = getVisibleCommands(allCommands, 'quick');
|
|
29
|
+
const keyCommands = getVisibleCommands(allCommands, 'key');
|
|
29
30
|
|
|
30
31
|
// Build content (similar to Cursor)
|
|
31
32
|
let content = `# ${name} (@${agentData.id})
|
|
@@ -61,8 +62,7 @@ ${icon} **${title}**${archetype ? ` | ${archetype}` : ''}
|
|
|
61
62
|
content += '\n';
|
|
62
63
|
}
|
|
63
64
|
|
|
64
|
-
// Add all commands for reference
|
|
65
|
-
const allCommands = agentData.commands || [];
|
|
65
|
+
// Add all commands for reference (allCommands already normalized above)
|
|
66
66
|
if (allCommands.length > quickCommands.length + keyOnlyCommands.length) {
|
|
67
67
|
content += `## All Commands
|
|
68
68
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Target: .cursor/rules/agents/*.md
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
const { getVisibleCommands } = require('../agent-parser');
|
|
9
|
+
const { getVisibleCommands, normalizeCommands } = require('../agent-parser');
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Transform agent data to Cursor format
|
|
@@ -23,9 +23,10 @@ function transform(agentData) {
|
|
|
23
23
|
const whenToUse = agent.whenToUse || 'Use this agent for specific tasks';
|
|
24
24
|
const archetype = persona.archetype || '';
|
|
25
25
|
|
|
26
|
-
// Get quick visibility commands
|
|
27
|
-
const
|
|
28
|
-
const
|
|
26
|
+
// Get quick visibility commands (normalized to consistent format)
|
|
27
|
+
const allCommands = normalizeCommands(agentData.commands || []);
|
|
28
|
+
const quickCommands = getVisibleCommands(allCommands, 'quick');
|
|
29
|
+
const keyCommands = getVisibleCommands(allCommands, 'key');
|
|
29
30
|
|
|
30
31
|
// Build content
|
|
31
32
|
let content = `# ${name} (@${agentData.id})
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Target: .trae/rules/agents/*.md
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
const { getVisibleCommands } = require('../agent-parser');
|
|
9
|
+
const { getVisibleCommands, normalizeCommands } = require('../agent-parser');
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Transform agent data to Trae format
|
|
@@ -23,8 +23,8 @@ function transform(agentData) {
|
|
|
23
23
|
const whenToUse = agent.whenToUse || 'Use this agent for specific tasks';
|
|
24
24
|
const archetype = persona.archetype || '';
|
|
25
25
|
|
|
26
|
-
// Get commands by visibility
|
|
27
|
-
const allCommands = agentData.commands || [];
|
|
26
|
+
// Get commands by visibility (normalized to consistent format)
|
|
27
|
+
const allCommands = normalizeCommands(agentData.commands || []);
|
|
28
28
|
const keyCommands = getVisibleCommands(allCommands, 'key');
|
|
29
29
|
const quickCommands = getVisibleCommands(allCommands, 'quick');
|
|
30
30
|
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* Target: .windsurf/rules/agents/*.md
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
const { getVisibleCommands } = require('../agent-parser');
|
|
9
|
+
const { getVisibleCommands, normalizeCommands } = require('../agent-parser');
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Transform agent data to Windsurf format
|
|
@@ -23,8 +23,8 @@ function transform(agentData) {
|
|
|
23
23
|
const whenToUse = agent.whenToUse || 'Use this agent for specific tasks';
|
|
24
24
|
const archetype = persona.archetype || '';
|
|
25
25
|
|
|
26
|
-
// Get all commands
|
|
27
|
-
const allCommands = agentData.commands || [];
|
|
26
|
+
// Get all commands (normalized to consistent format)
|
|
27
|
+
const allCommands = normalizeCommands(agentData.commands || []);
|
|
28
28
|
const quickCommands = getVisibleCommands(allCommands, 'quick');
|
|
29
29
|
|
|
30
30
|
// Build content with XML tags
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
# - SHA256 hashes for change detection
|
|
8
8
|
# - File types for categorization
|
|
9
9
|
#
|
|
10
|
-
version: 3.
|
|
11
|
-
generated_at: "2025-12-
|
|
10
|
+
version: 3.7.0
|
|
11
|
+
generated_at: "2025-12-24T14:42:11.316Z"
|
|
12
12
|
generator: scripts/generate-install-manifest.js
|
|
13
|
-
file_count:
|
|
13
|
+
file_count: 579
|
|
14
14
|
files:
|
|
15
15
|
- path: cli/commands/generate/index.js
|
|
16
16
|
hash: sha256:36f8e38ab767fa5478d8dabac548c66dc2c0fc521c216e954ac33fcea0ba597b
|
|
@@ -393,17 +393,17 @@ files:
|
|
|
393
393
|
type: agent
|
|
394
394
|
size: 8767
|
|
395
395
|
- path: development/agents/architect.md
|
|
396
|
-
hash: sha256:
|
|
396
|
+
hash: sha256:c259c9f7e5293f8ffe72b7a265f30e49b4900e7b7e2196dbe2eafa20c9559d1d
|
|
397
397
|
type: agent
|
|
398
|
-
size:
|
|
398
|
+
size: 16776
|
|
399
399
|
- path: development/agents/data-engineer.md
|
|
400
400
|
hash: sha256:233f83bd856e84e58064aa20a6bfde8ea5bc74a88a6d9dafb10e6c9637b7c517
|
|
401
401
|
type: agent
|
|
402
402
|
size: 20268
|
|
403
403
|
- path: development/agents/dev.md
|
|
404
|
-
hash: sha256:
|
|
404
|
+
hash: sha256:69a342848917c90bcd91517d226c0b0e55e06abf0871ecf2e7a1eb6f7ea67026
|
|
405
405
|
type: agent
|
|
406
|
-
size:
|
|
406
|
+
size: 17964
|
|
407
407
|
- path: development/agents/devops.md
|
|
408
408
|
hash: sha256:0c7ea6fb80b5758d978003f17aa6c5ba8ca1a5433ac0c53b1dd131e7ecae18a5
|
|
409
409
|
type: agent
|
|
@@ -592,6 +592,10 @@ files:
|
|
|
592
592
|
hash: sha256:f6a7ac43c7834795e334062b70063ec4e6b4577090e0f3762dad0b4e3155c37f
|
|
593
593
|
type: task
|
|
594
594
|
size: 15464
|
|
595
|
+
- path: development/tasks/analyze-project-structure.md
|
|
596
|
+
hash: sha256:3336ea3c394e4746d65f999f3901c470bf21d17e0ae8faabd8b332482c04127b
|
|
597
|
+
type: task
|
|
598
|
+
size: 14542
|
|
595
599
|
- path: development/tasks/apply-qa-fixes.md
|
|
596
600
|
hash: sha256:9a7a3d6ab17732f22bae79257a8519d4e9175dd0f862b863185e03620d2753ce
|
|
597
601
|
type: task
|
|
@@ -676,6 +680,10 @@ files:
|
|
|
676
680
|
hash: sha256:f650cbb2056c31cf4b85fb83b4e030ccf613cd5270d1453b80bbc00dc6344a60
|
|
677
681
|
type: task
|
|
678
682
|
size: 29544
|
|
683
|
+
- path: development/tasks/create-service.md
|
|
684
|
+
hash: sha256:6ce3eeeab6ed8ff6c5804b4fc4c3006c298009ab60c35b51afedac57082eeb34
|
|
685
|
+
type: task
|
|
686
|
+
size: 8947
|
|
679
687
|
- path: development/tasks/create-suite.md
|
|
680
688
|
hash: sha256:8e57cba8aaed7f86a327e11185aca208af241ab41abc95188a2243375085ca15
|
|
681
689
|
type: task
|
|
@@ -1096,6 +1104,42 @@ files:
|
|
|
1096
1104
|
hash: sha256:7ff03b62614edeb2a9c2bab9681a56ce97cffc59af3bd51054b9dafb1c99701f
|
|
1097
1105
|
type: task
|
|
1098
1106
|
size: 14320
|
|
1107
|
+
- path: development/templates/service-template/__tests__/index.test.ts.hbs
|
|
1108
|
+
hash: sha256:04090b95bc0b606448c161d8e698fcf4d5c7da2517a5ac65663554a54c5acf91
|
|
1109
|
+
type: template
|
|
1110
|
+
size: 9573
|
|
1111
|
+
- path: development/templates/service-template/client.ts.hbs
|
|
1112
|
+
hash: sha256:3adbfb5a17d7f734a498bd2520fd44a1eadf05aad9f31b980f886ad6386394a6
|
|
1113
|
+
type: template
|
|
1114
|
+
size: 11810
|
|
1115
|
+
- path: development/templates/service-template/errors.ts.hbs
|
|
1116
|
+
hash: sha256:cc7139c0a2654dbd938ba79730fc97b6d30a79b8d1556fe43c61e0fca6553351
|
|
1117
|
+
type: template
|
|
1118
|
+
size: 5213
|
|
1119
|
+
- path: development/templates/service-template/index.ts.hbs
|
|
1120
|
+
hash: sha256:29d66364af401592a3ea0d5c4c4ebfb09e67373e62f21caac82b47b1bf78b3b8
|
|
1121
|
+
type: template
|
|
1122
|
+
size: 3086
|
|
1123
|
+
- path: development/templates/service-template/jest.config.js
|
|
1124
|
+
hash: sha256:1681bfd7fbc0d330d3487d3427515847c4d57ef300833f573af59e0ad69ed159
|
|
1125
|
+
type: template
|
|
1126
|
+
size: 1750
|
|
1127
|
+
- path: development/templates/service-template/package.json.hbs
|
|
1128
|
+
hash: sha256:7a25b377c72a98e44758afbe5a5b6d95971e47cca8e248b664ec63d7d1b7a590
|
|
1129
|
+
type: template
|
|
1130
|
+
size: 2227
|
|
1131
|
+
- path: development/templates/service-template/README.md.hbs
|
|
1132
|
+
hash: sha256:be6e4531587c37cc2ce1542dbd0c5487752d57f58c84e5dd23978d4173746c2e
|
|
1133
|
+
type: template
|
|
1134
|
+
size: 3426
|
|
1135
|
+
- path: development/templates/service-template/tsconfig.json
|
|
1136
|
+
hash: sha256:8b465fcbdd45c4d6821ba99aea62f2bd7998b1bca8de80486a1525e77d43c9a1
|
|
1137
|
+
type: template
|
|
1138
|
+
size: 1135
|
|
1139
|
+
- path: development/templates/service-template/types.ts.hbs
|
|
1140
|
+
hash: sha256:2338ab2e1ade619bf33a2c8f22b149402b513c05a6d1d8a805c5273c7233d151
|
|
1141
|
+
type: template
|
|
1142
|
+
size: 2516
|
|
1099
1143
|
- path: development/workflows/brownfield-fullstack.yaml
|
|
1100
1144
|
hash: sha256:e54b5ecf6fffd1351bad125c91be89b262773361785d1f0ee19a7dc2fcdf8822
|
|
1101
1145
|
type: workflow
|
|
@@ -1385,9 +1429,9 @@ files:
|
|
|
1385
1429
|
type: script
|
|
1386
1430
|
size: 9735
|
|
1387
1431
|
- path: infrastructure/scripts/ide-sync/agent-parser.js
|
|
1388
|
-
hash: sha256:
|
|
1432
|
+
hash: sha256:b4dceac261653d85d791b6cd8b010ebfaa75cab179477b193a2448482b4aa4d4
|
|
1389
1433
|
type: script
|
|
1390
|
-
size:
|
|
1434
|
+
size: 8846
|
|
1391
1435
|
- path: infrastructure/scripts/ide-sync/index.js
|
|
1392
1436
|
hash: sha256:9e792b680a1ed19893d10fe27aa14f2ccf2235004d62f83bd052d2dde75c1aeb
|
|
1393
1437
|
type: script
|
|
@@ -1397,25 +1441,25 @@ files:
|
|
|
1397
1441
|
type: script
|
|
1398
1442
|
size: 4518
|
|
1399
1443
|
- path: infrastructure/scripts/ide-sync/transformers/antigravity.js
|
|
1400
|
-
hash: sha256:
|
|
1444
|
+
hash: sha256:d8fe023ce70651e0d83151f9f90000d8ffb51ab260f246704c1616739a001622
|
|
1401
1445
|
type: script
|
|
1402
|
-
size:
|
|
1446
|
+
size: 2784
|
|
1403
1447
|
- path: infrastructure/scripts/ide-sync/transformers/claude-code.js
|
|
1404
1448
|
hash: sha256:f028bdef022e54a5f70c92fa6d6b0dc0877c2fc87a9f8d2f477b29d09248dab7
|
|
1405
1449
|
type: script
|
|
1406
1450
|
size: 2225
|
|
1407
1451
|
- path: infrastructure/scripts/ide-sync/transformers/cursor.js
|
|
1408
|
-
hash: sha256:
|
|
1452
|
+
hash: sha256:fe38ba6960cc7e1dd2f1de963cdfc5a4be83eb5240c696e9eea607421a23cf22
|
|
1409
1453
|
type: script
|
|
1410
|
-
size:
|
|
1454
|
+
size: 2427
|
|
1411
1455
|
- path: infrastructure/scripts/ide-sync/transformers/trae.js
|
|
1412
|
-
hash: sha256:
|
|
1456
|
+
hash: sha256:784660e839d1516ba7d4f12adbde43e412adb25d6557eccf234e041866790f5b
|
|
1413
1457
|
type: script
|
|
1414
|
-
size:
|
|
1458
|
+
size: 2967
|
|
1415
1459
|
- path: infrastructure/scripts/ide-sync/transformers/windsurf.js
|
|
1416
|
-
hash: sha256:
|
|
1460
|
+
hash: sha256:6eec13241f1216d64acb5b69af92fb36e22f22697dd166a1afe9e4e9048884db
|
|
1417
1461
|
type: script
|
|
1418
|
-
size:
|
|
1462
|
+
size: 2708
|
|
1419
1463
|
- path: infrastructure/scripts/ide-sync/validator.js
|
|
1420
1464
|
hash: sha256:356c78125db7f88d14f4e521808e96593d729291c3d7a1c36cb02f78b4aef8fc
|
|
1421
1465
|
type: script
|