@tacuchi/agent-factory 0.2.0 → 0.3.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
CHANGED
package/src/commands/create.js
CHANGED
|
@@ -25,9 +25,14 @@ async function runCreate(options = {}) {
|
|
|
25
25
|
stackResult = await detect(scope);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
const techLabel = stackResult.framework
|
|
29
|
+
? `${stackResult.framework} (${stackResult.primaryTech})`
|
|
30
|
+
: stackResult.primaryTech;
|
|
31
|
+
|
|
28
32
|
const templateData = {
|
|
29
33
|
name,
|
|
30
34
|
primary_tech: stackResult.primaryTech,
|
|
35
|
+
tech_label: techLabel,
|
|
31
36
|
framework: stackResult.framework,
|
|
32
37
|
scope: scope || '.',
|
|
33
38
|
stack_list: stackResult.stackParts.length > 0
|
|
@@ -38,8 +43,6 @@ async function runCreate(options = {}) {
|
|
|
38
43
|
specialist_list: formatSpecialistList(specialists),
|
|
39
44
|
N: repoCount ? String(repoCount) : '',
|
|
40
45
|
repos_word: repoCount === 1 ? 'repositorio' : 'repositorios',
|
|
41
|
-
skills_section: '',
|
|
42
|
-
mcp_section: '',
|
|
43
46
|
};
|
|
44
47
|
|
|
45
48
|
const templateFile = `${role}.md.tmpl`;
|
package/src/core/agent-writer.js
CHANGED
|
@@ -37,7 +37,12 @@ function buildSkillsFormat(name, description, body) {
|
|
|
37
37
|
return `---\nname: ${name}\ndescription: "${description}"\n---\n\n${body}\n`;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
function ensureAgentSuffix(name) {
|
|
41
|
+
return name.endsWith('-agent') ? name : `${name}-agent`;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
async function writeAgent({ name: rawName, role, model, tools, body, outputDir, target, description: customDesc }) {
|
|
45
|
+
const name = ensureAgentSuffix(rawName);
|
|
41
46
|
const results = { claude: null, codex: null, skills: null };
|
|
42
47
|
const description = customDesc || body.split('\n').find((l) => l.trim() && !l.startsWith('#'))?.trim() || name;
|
|
43
48
|
|
|
@@ -73,4 +78,4 @@ async function writeAgent({ name, role, model, tools, body, outputDir, target, d
|
|
|
73
78
|
return results;
|
|
74
79
|
}
|
|
75
80
|
|
|
76
|
-
module.exports = { writeAgent, buildClaudeFormat, buildCodexFormat, buildSkillsFormat, buildDescription, TOOLS_BY_ROLE };
|
|
81
|
+
module.exports = { writeAgent, buildClaudeFormat, buildCodexFormat, buildSkillsFormat, buildDescription, ensureAgentSuffix, TOOLS_BY_ROLE };
|
|
@@ -32,5 +32,3 @@ Cada especialista opera exclusivamente dentro de su repo asignado. Para ejecutar
|
|
|
32
32
|
## Agentes globales (gestionados por el usuario)
|
|
33
33
|
|
|
34
34
|
Si el usuario ha creado agentes globales/personales en el workspace (por ejemplo, agentes transversales de arquitectura, estilo o revision de codigo), puedes invocarlos para obtener analisis cross-repo. Estos agentes son gestionados directamente por el usuario y pueden no estar presentes en todos los workspaces.
|
|
35
|
-
{{skills_section}}
|
|
36
|
-
{{mcp_section}}
|