@antomanc/aginit 0.4.1 → 0.5.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/CHANGELOG.md +28 -0
- package/README.md +108 -28
- package/THIRD_PARTY_NOTICES.md +92 -16
- package/dist/adapters/agent-docs.d.ts +32 -0
- package/dist/adapters/agent-docs.d.ts.map +1 -0
- package/dist/adapters/agent-docs.js +146 -0
- package/dist/adapters/agent-docs.js.map +1 -0
- package/dist/adapters/agents-md.d.ts +13 -1
- package/dist/adapters/agents-md.d.ts.map +1 -1
- package/dist/adapters/agents-md.js +137 -120
- package/dist/adapters/agents-md.js.map +1 -1
- package/dist/adapters/e2e.d.ts +15 -0
- package/dist/adapters/e2e.d.ts.map +1 -0
- package/dist/adapters/e2e.js +55 -0
- package/dist/adapters/e2e.js.map +1 -0
- package/dist/adapters/skills.d.ts +5 -0
- package/dist/adapters/skills.d.ts.map +1 -1
- package/dist/adapters/skills.js +17 -0
- package/dist/adapters/skills.js.map +1 -1
- package/dist/cli/capabilities.d.ts +17 -0
- package/dist/cli/capabilities.d.ts.map +1 -0
- package/dist/cli/capabilities.js +149 -0
- package/dist/cli/capabilities.js.map +1 -0
- package/dist/cli/doctor.d.ts +16 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +90 -70
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/init.js +1 -1
- package/dist/cli/init.js.map +1 -1
- package/dist/cli/main.d.ts.map +1 -1
- package/dist/cli/main.js +117 -20
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/new.d.ts +15 -1
- package/dist/cli/new.d.ts.map +1 -1
- package/dist/cli/new.js +157 -68
- package/dist/cli/new.js.map +1 -1
- package/dist/cli/wizard.d.ts +5 -0
- package/dist/cli/wizard.d.ts.map +1 -1
- package/dist/cli/wizard.js +104 -102
- package/dist/cli/wizard.js.map +1 -1
- package/dist/config/defaults.d.ts +14 -6
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +38 -174
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/schema.d.ts +14 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/config/validation.d.ts +1 -0
- package/dist/config/validation.d.ts.map +1 -1
- package/dist/config/validation.js +63 -0
- package/dist/config/validation.js.map +1 -1
- package/dist/detect/index.d.ts +18 -0
- package/dist/detect/index.d.ts.map +1 -0
- package/dist/detect/index.js +120 -0
- package/dist/detect/index.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/presets/cli.d.ts.map +1 -1
- package/dist/presets/cli.js +7 -0
- package/dist/presets/cli.js.map +1 -1
- package/dist/presets/generic.d.ts.map +1 -1
- package/dist/presets/generic.js +4 -1
- package/dist/presets/generic.js.map +1 -1
- package/dist/presets/testing.d.ts +1 -1
- package/dist/presets/testing.d.ts.map +1 -1
- package/dist/presets/testing.js +22 -8
- package/dist/presets/testing.js.map +1 -1
- package/dist/presets/web.d.ts.map +1 -1
- package/dist/presets/web.js +5 -2
- package/dist/presets/web.js.map +1 -1
- package/dist/registry/catalog.d.ts +13 -0
- package/dist/registry/catalog.d.ts.map +1 -0
- package/dist/registry/catalog.js +544 -0
- package/dist/registry/catalog.js.map +1 -0
- package/dist/registry/index.d.ts +84 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +309 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/registry/setup.d.ts +14 -0
- package/dist/registry/setup.d.ts.map +1 -0
- package/dist/registry/setup.js +25 -0
- package/dist/registry/setup.js.map +1 -0
- package/dist/registry/types.d.ts +115 -0
- package/dist/registry/types.d.ts.map +1 -0
- package/dist/registry/types.js +2 -0
- package/dist/registry/types.js.map +1 -0
- package/package.json +3 -2
- package/src/adapters/agent-docs.ts +184 -0
- package/src/adapters/agents-md.ts +160 -137
- package/src/adapters/e2e.ts +58 -0
- package/src/adapters/skills.ts +18 -0
- package/src/cli/capabilities.ts +176 -0
- package/src/cli/doctor.ts +83 -66
- package/src/cli/init.ts +1 -1
- package/src/cli/main.ts +125 -20
- package/src/cli/new.ts +195 -74
- package/src/cli/wizard.ts +130 -103
- package/src/config/defaults.ts +57 -179
- package/src/config/schema.ts +15 -0
- package/src/config/validation.ts +56 -0
- package/src/detect/index.ts +134 -0
- package/src/index.ts +5 -0
- package/src/presets/cli.ts +6 -0
- package/src/presets/generic.ts +4 -1
- package/src/presets/testing.ts +29 -12
- package/src/presets/web.ts +4 -2
- package/src/registry/catalog.ts +569 -0
- package/src/registry/index.ts +395 -0
- package/src/registry/setup.ts +40 -0
- package/src/registry/types.ts +109 -0
|
@@ -2,79 +2,121 @@ import path from 'node:path';
|
|
|
2
2
|
import { fileExists, readTextFile, safeWriteFile } from '../utils/fs.js';
|
|
3
3
|
import { readPackageManifest } from '../config/validation.js';
|
|
4
4
|
import { logger } from '../utils/logger.js';
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
})
|
|
5
|
+
import { isNodeStack } from '../registry/index.js';
|
|
6
|
+
import { microDocPath, plannedMicroDocs, projectProfile, resolvePlatformStack } from './agent-docs.js';
|
|
7
|
+
const PLATFORM_LABELS = {
|
|
8
|
+
web: 'Web',
|
|
9
|
+
'mobile-native': 'Native mobile',
|
|
10
|
+
'mobile-rn': 'React Native',
|
|
11
|
+
backend: 'Backend',
|
|
12
|
+
cli: 'CLI'
|
|
13
|
+
};
|
|
14
|
+
export const AGINIT_BLOCK_START = '<!-- aginit:start -->';
|
|
15
|
+
export const AGINIT_BLOCK_END = '<!-- aginit:end -->';
|
|
16
|
+
const BOOTSTRAP_SECTION = [
|
|
17
|
+
'## Bootstrap & First Session',
|
|
18
|
+
'When the user asks to "bootstrap this project" or kicks off a new initiative:',
|
|
19
|
+
'1. Understand product intent and ask 2-3 essential questions to resolve ambiguity.',
|
|
20
|
+
'2. Draft or refine canonical context in `PRODUCT.md` and `DESIGN.md` (or `docs/adr/`).',
|
|
21
|
+
'3. Plan in small verifiable increments and implement test-first using installed skills.'
|
|
22
|
+
];
|
|
23
|
+
/** Placeholder scripts used when AGENTS.md is rendered without a package.json to read. */
|
|
24
|
+
function presetScripts(config) {
|
|
25
|
+
return config.preset === 'generic'
|
|
26
|
+
? { test: 'vitest run' }
|
|
27
|
+
: { build: '', typecheck: '', test: '', dev: '', 'test:e2e': '' };
|
|
28
|
+
}
|
|
29
|
+
const table = (head, rows) => [
|
|
30
|
+
`| ${head[0]} | ${head[1]} |`,
|
|
31
|
+
'| --- | --- |',
|
|
32
|
+
...rows.map(([a, b]) => `| ${a} | ${b} |`)
|
|
33
|
+
];
|
|
34
|
+
/**
|
|
35
|
+
* The part of AGENTS.md aginit keeps in sync with the active capabilities:
|
|
36
|
+
* guardrails, the Task Routing table and the Anti-Rationalization table.
|
|
37
|
+
*/
|
|
38
|
+
export function renderAgentsBlock(config, profile, docs = plannedMicroDocs(profile)) {
|
|
33
39
|
const hasSkills = config.skills.sources.length > 0;
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
40
|
+
const routing = [
|
|
41
|
+
['Product intent, scope, target users', '`PRODUCT.md`']
|
|
42
|
+
];
|
|
43
|
+
const order = ['design', 'codebase-graph'];
|
|
44
|
+
const rank = (c) => (order.indexOf(c.category) + order.length + 1) % (order.length + 1);
|
|
45
|
+
const direct = profile.active.filter((c) => c.routing).sort((a, b) => rank(a) - rank(b));
|
|
46
|
+
const routeOf = (c) => [c.routing.task, c.routing.read];
|
|
47
|
+
// Design and codebase rows lead, discipline rows follow the micro-docs.
|
|
48
|
+
routing.push(...direct.filter((c) => c.category !== 'discipline').map(routeOf));
|
|
49
|
+
if (docs.includes('testing'))
|
|
50
|
+
routing.push(['Automated unit & E2E testing', '`' + microDocPath('testing') + '`']);
|
|
51
|
+
if (docs.includes('ui-verification'))
|
|
52
|
+
routing.push(['Live UI verification (Web / Mobile)', '`' + microDocPath('ui-verification') + '`']);
|
|
53
|
+
if (docs.includes('workflows'))
|
|
54
|
+
routing.push(['Engineering workflow & skills', '`' + microDocPath('workflows') + '`']);
|
|
55
|
+
routing.push(...direct.filter((c) => c.category === 'discipline').map(routeOf));
|
|
56
|
+
const rebuttals = new Map();
|
|
57
|
+
for (const capability of profile.active)
|
|
58
|
+
for (const { excuse, rule } of capability.rebuttals ?? [])
|
|
59
|
+
if (!rebuttals.has(excuse))
|
|
60
|
+
rebuttals.set(excuse, rule);
|
|
61
|
+
const unitExcuse = 'Unit tests pass, so the feature works.';
|
|
62
|
+
if (!rebuttals.has(unitExcuse) && profile.active.some((c) => c.category === 'testing-engine'))
|
|
63
|
+
rebuttals.set(unitExcuse, 'Insufficient. Unit tests do not verify wiring or rendering. Exercise the feature end to end ' +
|
|
64
|
+
`(${profile.commands.e2e && profile.has('playwright') ? '`' + profile.commands.e2e + '`' : 'integration or smoke run'}) before marking complete.`);
|
|
65
|
+
const lines = [
|
|
66
|
+
AGINIT_BLOCK_START,
|
|
67
|
+
...(profile.has('karpathy-guidelines')
|
|
68
|
+
? [
|
|
69
|
+
'## Guardrails (karpathy-guidelines)',
|
|
70
|
+
'- **Think before coding**: state assumptions and trade-offs; ask instead of guessing.',
|
|
71
|
+
'- **Simplicity first**: minimum code that solves the problem; no speculative features or abstractions.',
|
|
72
|
+
'- **Surgical changes**: touch only what the task needs; no silent scope creep or drive-by refactors.',
|
|
73
|
+
'- **Goal-driven execution**: define a verifiable success check first, then loop until it passes.',
|
|
74
|
+
''
|
|
75
|
+
]
|
|
76
|
+
: []),
|
|
77
|
+
'## Task Routing',
|
|
78
|
+
hasSkills
|
|
79
|
+
? config.agents.claudeCode === false
|
|
80
|
+
? 'Load only what the task needs. Skills live in `.agents/skills/`.'
|
|
81
|
+
: 'Load only what the task needs. Skills live in `.agents/skills/` (linked into `.claude/skills/` for Claude Code).'
|
|
82
|
+
: 'Load only what the task needs. Skills installation is disabled in this configuration.',
|
|
83
|
+
'',
|
|
84
|
+
...table(['Task', 'Read / Use'], routing),
|
|
85
|
+
...(rebuttals.size
|
|
86
|
+
? ['', '## Anti-Rationalization', ...table(['Excuse', 'Rule'], [...rebuttals].map(([e, r]) => [`"${e}"`, r]))]
|
|
87
|
+
: []),
|
|
88
|
+
AGINIT_BLOCK_END
|
|
89
|
+
];
|
|
90
|
+
return lines.join('\n');
|
|
91
|
+
}
|
|
92
|
+
export function generateAgentsMarkdown(config, scripts, targetDir) {
|
|
93
|
+
const resolved = resolvePlatformStack(config, targetDir);
|
|
94
|
+
const node = isNodeStack(resolved.stack);
|
|
95
|
+
const profile = projectProfile(config, {
|
|
96
|
+
targetDir,
|
|
97
|
+
scripts: node ? (scripts ?? presetScripts(config)) : undefined
|
|
98
|
+
});
|
|
99
|
+
const { commands } = profile;
|
|
100
|
+
const pm = config.packageManager || 'pnpm';
|
|
101
|
+
const isWeb = profile.platform === 'web';
|
|
102
|
+
const commandLines = [
|
|
103
|
+
node ? `- Package Manager: \`${pm}\`` : undefined,
|
|
104
|
+
commands.dev && isWeb && config.framework && config.framework !== 'none'
|
|
105
|
+
? `- Dev Server: \`${commands.dev}\``
|
|
106
|
+
: undefined,
|
|
107
|
+
commands.build ? `- Build: \`${commands.build}\`` : undefined,
|
|
108
|
+
commands.typecheck ? `- Typecheck: \`${commands.typecheck}\`` : undefined,
|
|
109
|
+
commands.lint ? `- Lint: \`${commands.lint}\`` : undefined,
|
|
110
|
+
commands.test ? `- Test: \`${commands.test}\`` : undefined,
|
|
111
|
+
commands.unitTest ? `- Unit Test: \`${commands.unitTest}\`` : undefined,
|
|
112
|
+
commands.e2e && profile.has('playwright')
|
|
113
|
+
? `- Test (E2E / Browser): \`${commands.e2e}\``
|
|
114
|
+
: undefined
|
|
115
|
+
].filter((line) => line !== undefined);
|
|
74
116
|
const sections = [
|
|
75
117
|
`# ${config.name}`,
|
|
76
118
|
'',
|
|
77
|
-
`AI-first ${config.preset} project configured with \`aginit
|
|
119
|
+
`AI-first ${config.preset} project configured with \`aginit\` (${PLATFORM_LABELS[profile.platform]}, ${profile.stack}).`,
|
|
78
120
|
'',
|
|
79
121
|
'## Core Invariants',
|
|
80
122
|
'- Keep changes small, focused, and test-verified.',
|
|
@@ -82,72 +124,47 @@ export function generateAgentsMarkdown(config, scripts) {
|
|
|
82
124
|
'- Never commit broken builds, failed typechecks, or unverified changes.',
|
|
83
125
|
'',
|
|
84
126
|
'## Essential Commands',
|
|
85
|
-
|
|
86
|
-
devCommand || undefined,
|
|
87
|
-
hasCommand('build') ? `- Build: \`${pmAdapter.runCmd('build')}\`` : undefined,
|
|
88
|
-
hasCommand('typecheck') ? `- Typecheck: \`${pmAdapter.runCmd('typecheck')}\`` : undefined,
|
|
89
|
-
hasCommand('test') ? `- Test: \`${pmAdapter.runCmd('test')}\`` : undefined,
|
|
90
|
-
hasCommand('test:unit') ? `- Unit Test: \`${pmAdapter.runCmd('test:unit')}\`` : undefined,
|
|
91
|
-
testE2E || undefined,
|
|
127
|
+
...(commandLines.length ? commandLines : ['- Add the build and test commands here once they exist.']),
|
|
92
128
|
'',
|
|
93
|
-
|
|
94
|
-
hasSkills
|
|
95
|
-
? config.agents.claudeCode === false
|
|
96
|
-
? 'Configured skills install into `.agents/skills/` (shared by Antigravity and Codex):'
|
|
97
|
-
: 'Configured skills install into `.agents/skills/` (shared by Antigravity and Codex, linked into `.claude/skills/` for Claude Code):'
|
|
98
|
-
: 'Skills installation is disabled in this configuration.',
|
|
99
|
-
engineeringCapability || undefined,
|
|
100
|
-
proseCapability || undefined,
|
|
101
|
-
simplicityCapability || undefined,
|
|
102
|
-
specCapability || undefined,
|
|
103
|
-
uiCapability || undefined,
|
|
104
|
-
browserCapability || undefined,
|
|
105
|
-
graftCapability || undefined,
|
|
129
|
+
renderAgentsBlock(config, profile),
|
|
106
130
|
'',
|
|
107
|
-
|
|
108
|
-
'When the user asks to "bootstrap this project" or kicks off a new initiative:',
|
|
109
|
-
'1. Understand product intent and ask 2-3 essential questions to resolve ambiguity.',
|
|
110
|
-
'2. Draft or refine canonical context in `PRODUCT.md` and `DESIGN.md` (or `docs/adr/`).',
|
|
111
|
-
'3. Plan in small verifiable increments and implement test-first using installed skills.',
|
|
131
|
+
...BOOTSTRAP_SECTION,
|
|
112
132
|
''
|
|
113
133
|
];
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
134
|
+
return sections.join('\n').replace(/\n{3,}/g, '\n\n').trim() + '\n';
|
|
135
|
+
}
|
|
136
|
+
/** Insert or refresh the aginit block in an existing AGENTS.md, leaving everything else as written. */
|
|
137
|
+
export function mergeAgentsBlock(existing, block) {
|
|
138
|
+
const start = existing.indexOf(AGINIT_BLOCK_START);
|
|
139
|
+
const end = existing.indexOf(AGINIT_BLOCK_END);
|
|
140
|
+
if (start !== -1 && end > start)
|
|
141
|
+
return existing.slice(0, start) + block + existing.slice(end + AGINIT_BLOCK_END.length);
|
|
142
|
+
// Above Graft's block when there is one, so Graft keeps owning the end of the file.
|
|
143
|
+
const graft = existing.indexOf('<!-- graft:start -->');
|
|
144
|
+
if (graft !== -1)
|
|
145
|
+
return existing.slice(0, graft).trimEnd() + '\n\n' + block + '\n\n' + existing.slice(graft);
|
|
146
|
+
return existing.trimEnd() + '\n\n' + block + '\n';
|
|
120
147
|
}
|
|
121
148
|
export function setupAgentsMarkdown(targetDir, config, options = {}) {
|
|
122
149
|
const { overwrite = false, dryRun = false, silent = false } = options;
|
|
123
150
|
const filePath = path.join(targetDir, 'AGENTS.md');
|
|
124
151
|
if (fileExists(filePath) && !overwrite) {
|
|
125
|
-
// File exists; check if it has the bootstrap guidance. If not, append it conservatively.
|
|
126
152
|
const existing = readTextFile(filePath) || '';
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
'2. Draft or refine canonical context in `PRODUCT.md` and `DESIGN.md` (or `docs/adr/`).',
|
|
134
|
-
'3. Plan in small verifiable increments and implement test-first using installed skills.',
|
|
135
|
-
''
|
|
136
|
-
].join('\n');
|
|
137
|
-
safeWriteFile(filePath, existing.trimEnd() + '\n' + addition, {
|
|
138
|
-
overwrite: true,
|
|
139
|
-
dryRun,
|
|
140
|
-
silent
|
|
141
|
-
});
|
|
153
|
+
const scripts = readPackageManifest(targetDir)?.scripts;
|
|
154
|
+
const profile = projectProfile(config, { targetDir, scripts });
|
|
155
|
+
let updated = mergeAgentsBlock(existing, renderAgentsBlock(config, profile, options.docs));
|
|
156
|
+
if (!updated.includes('## Bootstrap & First Session'))
|
|
157
|
+
updated = updated.trimEnd() + '\n\n' + BOOTSTRAP_SECTION.join('\n') + '\n';
|
|
158
|
+
if (updated === existing) {
|
|
142
159
|
if (!silent)
|
|
143
|
-
logger.dim('
|
|
160
|
+
logger.dim('AGENTS.md is up to date, preserving content.');
|
|
144
161
|
return true;
|
|
145
162
|
}
|
|
146
163
|
if (!silent)
|
|
147
|
-
logger.dim('
|
|
148
|
-
return true;
|
|
164
|
+
logger.dim('Refreshed the aginit section of the existing AGENTS.md');
|
|
165
|
+
return safeWriteFile(filePath, updated, { overwrite: true, dryRun, silent });
|
|
149
166
|
}
|
|
150
|
-
const content = generateAgentsMarkdown(config, readPackageManifest(targetDir)?.scripts);
|
|
167
|
+
const content = generateAgentsMarkdown(config, readPackageManifest(targetDir)?.scripts, targetDir);
|
|
151
168
|
return safeWriteFile(filePath, content, { overwrite: true, dryRun, silent });
|
|
152
169
|
}
|
|
153
170
|
export const CLAUDE_AGENTS_IMPORT = '@AGENTS.md';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents-md.js","sourceRoot":"","sources":["../../src/adapters/agents-md.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"agents-md.js","sourceRoot":"","sources":["../../src/adapters/agents-md.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Platform, Stack } from '../registry/index.js';
|
|
2
|
+
export declare function e2eConfigured(targetDir: string, stack: Stack): boolean;
|
|
3
|
+
/**
|
|
4
|
+
* Scaffold tester-army/e2e with its own `e2e init`: at the project root for
|
|
5
|
+
* Node projects, in an isolated `.agents/e2e/` workspace otherwise so the root
|
|
6
|
+
* never gets a package.json. The e2e skill comes from the Skills CLI, so init
|
|
7
|
+
* installs no skill or MCP entry; dependencies are installed by the user.
|
|
8
|
+
*/
|
|
9
|
+
export declare function setupE2e(targetDir: string, options: {
|
|
10
|
+
stack: Stack;
|
|
11
|
+
platform: Platform;
|
|
12
|
+
dryRun?: boolean;
|
|
13
|
+
silent?: boolean;
|
|
14
|
+
}): Promise<boolean>;
|
|
15
|
+
//# sourceMappingURL=e2e.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"e2e.d.ts","sourceRoot":"","sources":["../../src/adapters/e2e.ts"],"names":[],"mappings":"AAIA,OAAO,EAAa,QAAQ,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAIlE,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAGtE;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAChF,OAAO,CAAC,OAAO,CAAC,CAmClB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { fileExists } from '../utils/fs.js';
|
|
3
|
+
import { runExecutable } from '../utils/shell.js';
|
|
4
|
+
import { logger } from '../utils/logger.js';
|
|
5
|
+
import { e2eDirFor } from '../registry/index.js';
|
|
6
|
+
const E2E_CONFIGS = ['e2e.config.ts', 'e2e.config.mts', 'e2e.config.js', 'e2e.config.mjs'];
|
|
7
|
+
export function e2eConfigured(targetDir, stack) {
|
|
8
|
+
const dir = path.join(targetDir, e2eDirFor(stack));
|
|
9
|
+
return E2E_CONFIGS.some((name) => fileExists(path.join(dir, name)));
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Scaffold tester-army/e2e with its own `e2e init`: at the project root for
|
|
13
|
+
* Node projects, in an isolated `.agents/e2e/` workspace otherwise so the root
|
|
14
|
+
* never gets a package.json. The e2e skill comes from the Skills CLI, so init
|
|
15
|
+
* installs no skill or MCP entry; dependencies are installed by the user.
|
|
16
|
+
*/
|
|
17
|
+
export async function setupE2e(targetDir, options) {
|
|
18
|
+
const { stack, platform, dryRun = false, silent = false } = options;
|
|
19
|
+
if (e2eConfigured(targetDir, stack)) {
|
|
20
|
+
if (!silent)
|
|
21
|
+
logger.dim('e2e is already configured, preserving it.');
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
const dir = e2eDirFor(stack);
|
|
25
|
+
const engine = platform === 'mobile-native' || platform === 'mobile-rn' ? 'mobile' : 'web';
|
|
26
|
+
const args = [
|
|
27
|
+
'-y',
|
|
28
|
+
'e2e@latest',
|
|
29
|
+
'init',
|
|
30
|
+
...(dir ? [dir] : []),
|
|
31
|
+
'--yes',
|
|
32
|
+
'--engine',
|
|
33
|
+
engine,
|
|
34
|
+
'--skills',
|
|
35
|
+
'none',
|
|
36
|
+
'--mcp',
|
|
37
|
+
'none',
|
|
38
|
+
'--no-install'
|
|
39
|
+
];
|
|
40
|
+
if (!silent)
|
|
41
|
+
logger.dim(`Scaffolding e2e (${engine} engine) in ${dir || 'the project root'}...`);
|
|
42
|
+
const res = await runExecutable('npx', args, {
|
|
43
|
+
cwd: targetDir,
|
|
44
|
+
dryRun,
|
|
45
|
+
silent: true,
|
|
46
|
+
timeout: 600_000
|
|
47
|
+
});
|
|
48
|
+
if (!res.ok) {
|
|
49
|
+
logger.warn(`e2e init failed: ${res.stderr || res.stdout}`);
|
|
50
|
+
logger.dim(` Retry manually: npx e2e init ${dir} --engine ${engine}`.replace(/\s+/g, ' '));
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=e2e.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"e2e.js","sourceRoot":"","sources":["../../src/adapters/e2e.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAmB,MAAM,sBAAsB,CAAC;AAElE,MAAM,WAAW,GAAG,CAAC,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;AAE3F,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,KAAY;IAC3D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IACnD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,SAAiB,EACjB,OAAiF;IAEjF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACpE,IAAI,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,QAAQ,KAAK,eAAe,IAAI,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3F,MAAM,IAAI,GAAG;QACX,IAAI;QACJ,YAAY;QACZ,MAAM;QACN,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO;QACP,UAAU;QACV,MAAM;QACN,UAAU;QACV,MAAM;QACN,OAAO;QACP,MAAM;QACN,cAAc;KACf,CAAC;IACF,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,MAAM,eAAe,GAAG,IAAI,kBAAkB,KAAK,CAAC,CAAC;IACjG,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE;QAC3C,GAAG,EAAE,SAAS;QACd,MAAM;QACN,MAAM,EAAE,IAAI;QACZ,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,oBAAoB,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,CAAC,kCAAkC,GAAG,aAAa,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;QAC5F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -45,4 +45,9 @@ export declare function updateSkills(targetDir: string, options?: {
|
|
|
45
45
|
dryRun?: boolean;
|
|
46
46
|
silent?: boolean;
|
|
47
47
|
}): Promise<boolean>;
|
|
48
|
+
/** Remove skills from every agent through the Skills CLI (`npx skills remove`). */
|
|
49
|
+
export declare function removeSkills(targetDir: string, skills: string[], options?: {
|
|
50
|
+
dryRun?: boolean;
|
|
51
|
+
silent?: boolean;
|
|
52
|
+
}): Promise<boolean>;
|
|
48
53
|
//# sourceMappingURL=skills.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/adapters/skills.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEtE,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAE/C,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,OAAO,CAE/E;AAED,yDAAyD;AACzD,wBAAgB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,MAAM,EAAE,CAI1E;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,CACF,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA6B5C;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,EAAE,EAC5B,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAcpD;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAuB9D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAIrE;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,OAAO,CAAC,CASlB;AAED,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,OAAO,CAAC,CASlB"}
|
|
1
|
+
{"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/adapters/skills.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEtE,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,gBAAgB,CAAC;AAE/C,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,OAAO,CAE/E;AAED,yDAAyD;AACzD,wBAAgB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,GAAG,MAAM,EAAE,CAI1E;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,CACF,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA6B5C;AAED,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,iBAAiB,EAAE,EAC5B,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAcpD;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAuB9D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAIrE;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,OAAO,CAAC,CASlB;AAED,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,OAAO,CAAC,CASlB;AAED,mFAAmF;AACnF,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,OAAO,CAAC,CAWlB"}
|
package/dist/adapters/skills.js
CHANGED
|
@@ -118,4 +118,21 @@ export async function updateSkills(targetDir, options = {}) {
|
|
|
118
118
|
});
|
|
119
119
|
return res.ok;
|
|
120
120
|
}
|
|
121
|
+
/** Remove skills from every agent through the Skills CLI (`npx skills remove`). */
|
|
122
|
+
export async function removeSkills(targetDir, skills, options = {}) {
|
|
123
|
+
if (skills.length === 0)
|
|
124
|
+
return true;
|
|
125
|
+
for (const skill of skills)
|
|
126
|
+
validateUpstreamArgument(skill, 'skill name');
|
|
127
|
+
if (!options.silent)
|
|
128
|
+
logger.dim(`Removing skills: ${skills.join(', ')}...`);
|
|
129
|
+
const res = await runExecutable('npx', ['-y', 'skills', 'remove', ...skills, '-y'], {
|
|
130
|
+
cwd: targetDir,
|
|
131
|
+
dryRun: options.dryRun,
|
|
132
|
+
silent: true
|
|
133
|
+
});
|
|
134
|
+
if (!res.ok)
|
|
135
|
+
logger.warn(`Failed removing skills: ${res.stderr || res.stdout}`);
|
|
136
|
+
return res.ok;
|
|
137
|
+
}
|
|
121
138
|
//# sourceMappingURL=skills.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/adapters/skills.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/adapters/skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Print the registry grouped by category, marking what the project has enabled. */
|
|
2
|
+
export declare function listCapabilities(targetDir?: string): void;
|
|
3
|
+
export interface ChangeOptions {
|
|
4
|
+
dryRun?: boolean;
|
|
5
|
+
silent?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Enable or disable capabilities, then bring the project in line: config,
|
|
9
|
+
* skills (installed or removed through the Skills CLI), upstream setups,
|
|
10
|
+
* AGENTS.md and docs/agents/. Picking a methodology, design or UI driver
|
|
11
|
+
* replaces the current one in that category.
|
|
12
|
+
*/
|
|
13
|
+
export declare function changeCapabilities(targetDir: string, change: {
|
|
14
|
+
add?: string[];
|
|
15
|
+
remove?: string[];
|
|
16
|
+
}, options?: ChangeOptions): Promise<boolean>;
|
|
17
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/cli/capabilities.ts"],"names":[],"mappings":"AAoCA,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,MAAsB,GAAG,IAAI,CAoBxE;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAeD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EAC7C,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,OAAO,CAAC,CAwFlB"}
|