@antomanc/aginit 0.4.0 → 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.
Files changed (117) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +108 -28
  3. package/THIRD_PARTY_NOTICES.md +92 -16
  4. package/dist/adapters/agent-docs.d.ts +32 -0
  5. package/dist/adapters/agent-docs.d.ts.map +1 -0
  6. package/dist/adapters/agent-docs.js +146 -0
  7. package/dist/adapters/agent-docs.js.map +1 -0
  8. package/dist/adapters/agents-md.d.ts +13 -1
  9. package/dist/adapters/agents-md.d.ts.map +1 -1
  10. package/dist/adapters/agents-md.js +137 -120
  11. package/dist/adapters/agents-md.js.map +1 -1
  12. package/dist/adapters/e2e.d.ts +15 -0
  13. package/dist/adapters/e2e.d.ts.map +1 -0
  14. package/dist/adapters/e2e.js +55 -0
  15. package/dist/adapters/e2e.js.map +1 -0
  16. package/dist/adapters/skills.d.ts +5 -0
  17. package/dist/adapters/skills.d.ts.map +1 -1
  18. package/dist/adapters/skills.js +17 -0
  19. package/dist/adapters/skills.js.map +1 -1
  20. package/dist/adapters/tool-ignores.d.ts +9 -0
  21. package/dist/adapters/tool-ignores.d.ts.map +1 -0
  22. package/dist/adapters/tool-ignores.js +121 -0
  23. package/dist/adapters/tool-ignores.js.map +1 -0
  24. package/dist/cli/capabilities.d.ts +17 -0
  25. package/dist/cli/capabilities.d.ts.map +1 -0
  26. package/dist/cli/capabilities.js +149 -0
  27. package/dist/cli/capabilities.js.map +1 -0
  28. package/dist/cli/doctor.d.ts +16 -0
  29. package/dist/cli/doctor.d.ts.map +1 -1
  30. package/dist/cli/doctor.js +104 -70
  31. package/dist/cli/doctor.js.map +1 -1
  32. package/dist/cli/init.js +1 -1
  33. package/dist/cli/init.js.map +1 -1
  34. package/dist/cli/main.d.ts.map +1 -1
  35. package/dist/cli/main.js +123 -20
  36. package/dist/cli/main.js.map +1 -1
  37. package/dist/cli/new.d.ts +15 -1
  38. package/dist/cli/new.d.ts.map +1 -1
  39. package/dist/cli/new.js +163 -67
  40. package/dist/cli/new.js.map +1 -1
  41. package/dist/cli/wizard.d.ts +5 -0
  42. package/dist/cli/wizard.d.ts.map +1 -1
  43. package/dist/cli/wizard.js +104 -102
  44. package/dist/cli/wizard.js.map +1 -1
  45. package/dist/config/defaults.d.ts +14 -6
  46. package/dist/config/defaults.d.ts.map +1 -1
  47. package/dist/config/defaults.js +38 -174
  48. package/dist/config/defaults.js.map +1 -1
  49. package/dist/config/schema.d.ts +14 -0
  50. package/dist/config/schema.d.ts.map +1 -1
  51. package/dist/config/schema.js.map +1 -1
  52. package/dist/config/validation.d.ts +1 -0
  53. package/dist/config/validation.d.ts.map +1 -1
  54. package/dist/config/validation.js +63 -0
  55. package/dist/config/validation.js.map +1 -1
  56. package/dist/detect/index.d.ts +18 -0
  57. package/dist/detect/index.d.ts.map +1 -0
  58. package/dist/detect/index.js +120 -0
  59. package/dist/detect/index.js.map +1 -0
  60. package/dist/index.d.ts +5 -0
  61. package/dist/index.d.ts.map +1 -1
  62. package/dist/index.js +5 -0
  63. package/dist/index.js.map +1 -1
  64. package/dist/presets/cli.d.ts.map +1 -1
  65. package/dist/presets/cli.js +7 -0
  66. package/dist/presets/cli.js.map +1 -1
  67. package/dist/presets/generic.d.ts.map +1 -1
  68. package/dist/presets/generic.js +4 -1
  69. package/dist/presets/generic.js.map +1 -1
  70. package/dist/presets/testing.d.ts +1 -1
  71. package/dist/presets/testing.d.ts.map +1 -1
  72. package/dist/presets/testing.js +22 -8
  73. package/dist/presets/testing.js.map +1 -1
  74. package/dist/presets/web.d.ts.map +1 -1
  75. package/dist/presets/web.js +39 -5
  76. package/dist/presets/web.js.map +1 -1
  77. package/dist/registry/catalog.d.ts +13 -0
  78. package/dist/registry/catalog.d.ts.map +1 -0
  79. package/dist/registry/catalog.js +544 -0
  80. package/dist/registry/catalog.js.map +1 -0
  81. package/dist/registry/index.d.ts +84 -0
  82. package/dist/registry/index.d.ts.map +1 -0
  83. package/dist/registry/index.js +309 -0
  84. package/dist/registry/index.js.map +1 -0
  85. package/dist/registry/setup.d.ts +14 -0
  86. package/dist/registry/setup.d.ts.map +1 -0
  87. package/dist/registry/setup.js +25 -0
  88. package/dist/registry/setup.js.map +1 -0
  89. package/dist/registry/types.d.ts +115 -0
  90. package/dist/registry/types.d.ts.map +1 -0
  91. package/dist/registry/types.js +2 -0
  92. package/dist/registry/types.js.map +1 -0
  93. package/package.json +3 -2
  94. package/src/adapters/agent-docs.ts +184 -0
  95. package/src/adapters/agents-md.ts +160 -137
  96. package/src/adapters/e2e.ts +58 -0
  97. package/src/adapters/skills.ts +18 -0
  98. package/src/adapters/tool-ignores.ts +158 -0
  99. package/src/cli/capabilities.ts +176 -0
  100. package/src/cli/doctor.ts +100 -66
  101. package/src/cli/init.ts +1 -1
  102. package/src/cli/main.ts +130 -20
  103. package/src/cli/new.ts +199 -73
  104. package/src/cli/wizard.ts +130 -103
  105. package/src/config/defaults.ts +57 -179
  106. package/src/config/schema.ts +15 -0
  107. package/src/config/validation.ts +56 -0
  108. package/src/detect/index.ts +134 -0
  109. package/src/index.ts +5 -0
  110. package/src/presets/cli.ts +6 -0
  111. package/src/presets/generic.ts +4 -1
  112. package/src/presets/testing.ts +29 -12
  113. package/src/presets/web.ts +39 -5
  114. package/src/registry/catalog.ts +569 -0
  115. package/src/registry/index.ts +395 -0
  116. package/src/registry/setup.ts +40 -0
  117. package/src/registry/types.ts +109 -0
@@ -2,6 +2,9 @@ import * as p from '@clack/prompts';
2
2
  import pc from 'picocolors';
3
3
  import { validateProjectName, readProjectConfig } from '../config/validation.js';
4
4
  import { detectPackageManager } from '../adapters/package-manager.js';
5
+ import { detectProject } from '../detect/index.js';
6
+ import { presetPlatform } from '../config/defaults.js';
7
+ import { CATALOG, PLATFORMS, defaultCapabilities, isNodeStack, supports } from '../registry/index.js';
5
8
  import { createProject } from './new.js';
6
9
  import { initCurrentDirectory } from './init.js';
7
10
  export function isInteractive() {
@@ -33,27 +36,10 @@ export async function promptNewProject(defaults) {
33
36
  });
34
37
  projectName = String(assertNotCancelled(res)).trim();
35
38
  }
36
- let preset = defaults?.preset;
37
- if (!preset) {
38
- const res = await p.select({
39
- message: 'Select a project preset:',
40
- initialValue: 'web',
41
- options: [
42
- {
43
- value: 'web',
44
- label: 'Web Application',
45
- hint: 'React, Next.js, Vite, or agnostic + Vitest/Playwright'
46
- },
47
- { value: 'cli', label: 'CLI Tool', hint: 'TypeScript, Commander, Picocolors + Vitest' },
48
- {
49
- value: 'generic',
50
- label: 'Generic / Existing Codebase',
51
- hint: 'Codebase graph + agent intake guide'
52
- }
53
- ]
54
- });
55
- preset = assertNotCancelled(res);
56
- }
39
+ const platform = defaults?.profile?.platform ??
40
+ await promptPlatform(presetPlatform(defaults?.preset ?? 'web'));
41
+ const preset = defaults?.preset ??
42
+ (platform === 'web' ? 'web' : platform === 'cli' ? 'cli' : 'generic');
57
43
  let framework = defaults?.framework || 'none';
58
44
  if (preset === 'web' && defaults?.framework === undefined) {
59
45
  const res = await p.select({
@@ -62,8 +48,8 @@ export async function promptNewProject(defaults) {
62
48
  options: [
63
49
  {
64
50
  value: 'none',
65
- label: 'Framework-agnostic (Recommended)',
66
- hint: 'Clean TypeScript + Vitest, zero bundler lock-in'
51
+ label: 'None',
52
+ hint: 'TypeScript baseline'
67
53
  },
68
54
  {
69
55
  value: 'vite',
@@ -77,107 +63,113 @@ export async function promptNewProject(defaults) {
77
63
  }
78
64
  let packageManager = defaults?.packageManager;
79
65
  if (!packageManager) {
80
- const res = await p.select({
81
- message: 'Select package manager:',
82
- initialValue: 'pnpm',
83
- options: [
84
- {
85
- value: 'pnpm',
86
- label: 'pnpm (Recommended)',
87
- hint: 'Fast, disk-efficient & compliant workspace'
88
- },
89
- { value: 'npm', label: 'npm', hint: 'Standard Node.js package manager' },
90
- { value: 'yarn', label: 'yarn', hint: 'Yarn package manager' },
91
- { value: 'bun', label: 'bun', hint: 'Fast all-in-one JavaScript runtime & toolkit' }
92
- ]
93
- });
94
- packageManager = assertNotCancelled(res);
66
+ packageManager = platform === 'mobile-native' ? 'pnpm' : await promptPackageManager();
95
67
  }
68
+ const profile = await promptProfile(platform, 'unknown', framework, true, { ...defaults?.profile, platform });
96
69
  return {
97
70
  projectName,
98
71
  preset,
99
72
  framework,
100
- packageManager
73
+ packageManager,
74
+ profile
101
75
  };
102
76
  }
103
77
  export async function promptInitProject(defaults) {
104
78
  const targetDir = defaults?.targetDir || process.cwd();
105
- let preset = defaults?.preset;
106
- if (!preset) {
107
- const res = await p.select({
108
- message: 'Select project preset to configure in this directory:',
109
- initialValue: 'web',
110
- options: [
111
- { value: 'web', label: 'Web Application', hint: 'Impeccable UI, agent-browser, Vitest' },
112
- { value: 'cli', label: 'CLI Tool', hint: 'TypeScript, Vitest' },
113
- {
114
- value: 'generic',
115
- label: 'Generic Repository',
116
- hint: 'Codebase graph + agent intake guide'
117
- }
118
- ]
119
- });
120
- preset = assertNotCancelled(res);
121
- }
122
- let framework = defaults?.framework || 'existing';
123
- if (preset === 'web' && defaults?.framework === undefined) {
124
- const res = await p.select({
125
- message: 'Select web framework setting:',
126
- initialValue: 'existing',
79
+ const detected = detectProject(targetDir);
80
+ const preset = defaults?.preset ?? 'generic';
81
+ const framework = defaults?.framework ?? 'existing';
82
+ const platform = defaults?.profile?.platform ??
83
+ (preset !== 'generic' ? presetPlatform(preset) : detected.platform ?? 'cli');
84
+ const stack = detected.stack;
85
+ p.note(stack === 'unknown'
86
+ ? 'No stack detected. Choose a platform below.'
87
+ : `Detected ${stack}. Existing project files are preserved.`, 'Project');
88
+ const profile = await promptProfile(platform, stack, framework, preset !== 'generic' || detected.stack === 'unknown', defaults?.profile);
89
+ const packageManager = defaults?.packageManager ?? detectPackageManager(targetDir) ??
90
+ (isNodeStack(stack) || (stack === 'unknown' && profile.platform !== 'mobile-native')
91
+ ? await promptPackageManager()
92
+ : 'pnpm');
93
+ return { preset, framework, packageManager, profile };
94
+ }
95
+ async function promptPackageManager() {
96
+ return assertNotCancelled(await p.select({
97
+ message: 'Package manager',
98
+ initialValue: 'pnpm',
99
+ options: ['pnpm', 'npm', 'yarn', 'bun'].map((value) => ({ value, label: value }))
100
+ }));
101
+ }
102
+ async function promptPlatform(initialValue) {
103
+ const labels = {
104
+ web: 'Web',
105
+ 'mobile-native': 'Native mobile',
106
+ 'mobile-rn': 'React Native / Expo',
107
+ backend: 'Backend',
108
+ cli: 'CLI / library'
109
+ };
110
+ return assertNotCancelled(await p.select({
111
+ message: 'Platform',
112
+ initialValue,
113
+ options: PLATFORMS.map((value) => ({ value, label: labels[value] }))
114
+ }));
115
+ }
116
+ async function promptProfile(initialPlatform, stack, framework, harness, flags = {}) {
117
+ const platform = flags.platform ?? await promptPlatform(initialPlatform);
118
+ const resolvedStack = stack === 'unknown' && platform !== 'mobile-native' ? 'node' : stack;
119
+ const defaults = defaultCapabilities({ platform, stack: resolvedStack, framework, harness });
120
+ const choose = async (category, message, allowNone = false) => {
121
+ const entries = CATALOG.filter((c) => c.category === category && !c.addon && supports(c, platform) &&
122
+ (!c.requiresNodeInProjectRoot || isNodeStack(resolvedStack)));
123
+ return assertNotCancelled(await p.select({
124
+ message,
125
+ initialValue: [...defaults].reverse().find((id) => entries.some((c) => c.id === id)) ??
126
+ (allowNone ? 'none' : entries[0]?.id),
127
127
  options: [
128
- {
129
- value: 'existing',
130
- label: 'Existing Web Setup (Recommended)',
131
- hint: 'Preserve existing bundler and dependencies'
132
- },
133
- { value: 'none', label: 'Framework-agnostic', hint: 'Baseline TypeScript' },
134
- { value: 'vite', label: 'Vite', hint: 'Vite React setup' },
135
- { value: 'next', label: 'Next.js', hint: 'Next.js setup' }
128
+ ...entries.map((c) => ({ value: c.id, label: c.name, hint: c.description })),
129
+ ...(allowNone ? [{ value: 'none', label: 'None' }] : [])
136
130
  ]
137
- });
138
- framework = assertNotCancelled(res);
139
- }
140
- // Auto-detect and preserve existing package manager without prompting
141
- let packageManager = defaults?.packageManager;
142
- if (!packageManager) {
143
- const detected = detectPackageManager(targetDir);
144
- if (detected) {
145
- packageManager = detected;
146
- }
147
- else {
148
- const res = await p.select({
149
- message: 'Select package manager for this project:',
150
- initialValue: 'pnpm',
151
- options: [
152
- { value: 'pnpm', label: 'pnpm (Recommended)', hint: 'Fast, disk-efficient workspace' },
153
- { value: 'npm', label: 'npm', hint: 'Standard Node.js package manager' },
154
- { value: 'yarn', label: 'yarn', hint: 'Yarn package manager' },
155
- { value: 'bun', label: 'bun', hint: 'Fast runtime and package manager' }
156
- ]
157
- });
158
- packageManager = assertNotCancelled(res);
159
- }
160
- }
161
- return {
162
- preset,
163
- framework,
164
- packageManager
131
+ }));
165
132
  };
133
+ const methodology = flags.methodology ?? await choose('methodology', 'Methodology');
134
+ const design = flags.design ?? await choose('design', 'Design', true);
135
+ const testing = flags.testing ?? await choose('testing-engine', 'Testing engine');
136
+ const uiDriver = flags.uiDriver ?? await choose('ui-driver', 'UI driver', true);
137
+ const addons = flags.addons ?? assertNotCancelled(await p.multiselect({
138
+ message: 'Add-ons',
139
+ required: false,
140
+ options: CATALOG.filter((c) => c.addon && supports(c, platform) &&
141
+ (!c.requiresNodeInProjectRoot || isNodeStack(resolvedStack)))
142
+ .map((c) => ({ value: c.id, label: c.name, hint: c.description }))
143
+ }));
144
+ return { ...flags, platform, methodology, design, testing: testing, uiDriver, addons };
145
+ }
146
+ async function confirmSetup(answers) {
147
+ const profile = answers.profile;
148
+ const name = (id) => CATALOG.find((c) => c.id === id)?.name ?? id;
149
+ p.note([
150
+ `Platform: ${profile.platform}`,
151
+ `Methodology: ${name(profile.methodology)}`,
152
+ `Design: ${name(profile.design)}`,
153
+ `Testing: ${name(profile.testing)}`,
154
+ `UI driver: ${name(profile.uiDriver)}`,
155
+ `Add-ons: ${profile.addons?.map(name).join(', ') || 'None'}`
156
+ ].join('\n'), 'Setup');
157
+ return assertNotCancelled(await p.confirm({ message: 'Apply this setup?', initialValue: true }));
166
158
  }
167
159
  export async function runInteractiveWizard() {
168
160
  p.intro(pc.bgCyan(pc.black(' aginit ')) + pc.dim(' — AI-First Project Bootstrap'));
169
161
  const action = assertNotCancelled(await p.select({
170
162
  message: 'What would you like to do?',
171
- initialValue: 'new',
163
+ initialValue: detectProject(process.cwd()).platform ? 'init' : 'new',
172
164
  options: [
173
165
  {
174
166
  value: 'new',
175
- label: 'Create a brand new AI-first project',
167
+ label: 'New project',
176
168
  hint: 'Scaffold in a new directory'
177
169
  },
178
170
  {
179
171
  value: 'init',
180
- label: 'Initialize AI capabilities in current directory',
172
+ label: 'Current directory',
181
173
  hint: 'Add AGENTS.md, skills & Graft safely'
182
174
  }
183
175
  ]
@@ -185,11 +177,16 @@ export async function runInteractiveWizard() {
185
177
  let complete;
186
178
  if (action === 'new') {
187
179
  const answers = await promptNewProject();
180
+ if (!(await confirmSetup(answers))) {
181
+ p.outro('Setup cancelled.');
182
+ return;
183
+ }
188
184
  p.outro(pc.cyan(`Scaffolding "${answers.projectName}"...`));
189
185
  complete = await createProject(answers.projectName, {
190
186
  preset: answers.preset,
191
187
  framework: answers.framework,
192
- packageManager: answers.packageManager
188
+ packageManager: answers.packageManager,
189
+ profile: answers.profile
193
190
  });
194
191
  }
195
192
  else {
@@ -200,11 +197,16 @@ export async function runInteractiveWizard() {
200
197
  }
201
198
  else {
202
199
  const answers = await promptInitProject();
200
+ if (!(await confirmSetup(answers))) {
201
+ p.outro('Setup cancelled.');
202
+ return;
203
+ }
203
204
  p.outro(pc.cyan('Configuring current directory...'));
204
205
  complete = await initCurrentDirectory({
205
206
  preset: answers.preset,
206
207
  framework: answers.framework,
207
- packageManager: answers.packageManager
208
+ packageManager: answers.packageManager,
209
+ profile: answers.profile
208
210
  });
209
211
  }
210
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/cli/wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wizard.js","sourceRoot":"","sources":["../../src/cli/wizard.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,24 @@
1
1
  import { AginitConfig, PresetType, WebFramework, PackageManager } from './schema.js';
2
+ import { MATT_POCOCK_SKILLS, Platform, ProfileFlags, Stack } from '../registry/index.js';
3
+ export { MATT_POCOCK_SKILLS };
2
4
  export interface DefaultConfigOptions {
3
5
  framework?: WebFramework;
4
6
  packageManager?: PackageManager;
7
+ /** Defaults to the preset's platform (generic: cli). */
8
+ platform?: Platform;
9
+ /** Defaults to node: every preset scaffolds a Node project unless a stack is detected. */
10
+ stack?: Stack;
11
+ flags?: ProfileFlags;
12
+ /** Skip skill sources (`--no-skills`). */
13
+ skills?: boolean;
14
+ /** false when the preset will not scaffold a Vitest harness. */
15
+ harness?: boolean;
5
16
  }
17
+ export declare function presetPlatform(preset: PresetType): Platform;
6
18
  /**
7
- * The stable skill set from mattpocock/skills installed by default:
8
- * every skill in the `engineering` and `productivity` categories.
9
- *
10
- * The `misc` (rarely used) and `in-progress` categories are deliberately
11
- * excluded. Re-evaluate when the upstream repository reshuffles categories.
19
+ * A fresh config: the preset's scaffolding settings plus the capabilities the
20
+ * registry enables for the platform, stack and profile flags.
12
21
  */
13
- export declare const MATT_POCOCK_SKILLS: readonly ['ask-matt', 'code-review', 'codebase-design', 'diagnosing-bugs', 'domain-modeling', 'grill-with-docs', 'implement', 'implement-spec', 'improve-codebase-architecture', 'pr', 'prototype', 'research', 'retro', 'setup-matt-pocock-skills', 'tdd', 'to-spec', 'to-tickets', 'triage', 'wayfinder', 'wizard', 'grill-me', 'grilling', 'handoff', 'teach', 'to-questionnaire', 'wait-what', 'writing-for-agents'];
14
22
  export declare function getDefaultConfig(name: string, preset: PresetType, options?: DefaultConfigOptions): AginitConfig;
15
23
  /**
16
24
  * Bring a saved `skills` section forward to the current standard: install the
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,cAAc,EAEf,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,YAE7B,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,+BAA+B,EAC/B,IAAI,EACJ,WAAW,EACX,UAAU,EACV,OAAO,EACP,0BAA0B,EAC1B,KAAK,EACL,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,QAAQ,EAER,UAAU,EACV,UAAU,EACV,SAAS,EACT,OAAO,EACP,kBAAkB,EAClB,WAAW,EACX,oBAAoB,CACZ,CAAC;AAEX,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,oBAAyB,GACjC,YAAY,CAgJd;AAeD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,GAC7B,YAAY,CAAC,QAAQ,CAAC,CAYxB"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,cAAc,EAEf,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,kBAAkB,EAClB,QAAQ,EACR,YAAY,EAEZ,KAAK,EACN,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,wDAAwD;IACxD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,0FAA0F;IAC1F,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAE3D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,oBAAyB,GACjC,YAAY,CAiCd;AAeD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,YAAY,CAAC,QAAQ,CAAC,GAC7B,YAAY,CAAC,QAAQ,CAAC,CAYxB"}
@@ -1,181 +1,45 @@
1
+ import { applyResolvedProfile, isNodeStack, MATT_POCOCK_SKILLS, resolveCapabilities } from '../registry/index.js';
2
+ export { MATT_POCOCK_SKILLS };
3
+ export function presetPlatform(preset) {
4
+ return preset === 'web' ? 'web' : 'cli';
5
+ }
1
6
  /**
2
- * The stable skill set from mattpocock/skills installed by default:
3
- * every skill in the `engineering` and `productivity` categories.
4
- *
5
- * The `misc` (rarely used) and `in-progress` categories are deliberately
6
- * excluded. Re-evaluate when the upstream repository reshuffles categories.
7
+ * A fresh config: the preset's scaffolding settings plus the capabilities the
8
+ * registry enables for the platform, stack and profile flags.
7
9
  */
8
- export const MATT_POCOCK_SKILLS = [
9
- // engineering
10
- 'ask-matt',
11
- 'code-review',
12
- 'codebase-design',
13
- 'diagnosing-bugs',
14
- 'domain-modeling',
15
- 'grill-with-docs',
16
- 'implement',
17
- 'implement-spec',
18
- 'improve-codebase-architecture',
19
- 'pr',
20
- 'prototype',
21
- 'research',
22
- 'retro',
23
- 'setup-matt-pocock-skills',
24
- 'tdd',
25
- 'to-spec',
26
- 'to-tickets',
27
- 'triage',
28
- 'wayfinder',
29
- 'wizard',
30
- // productivity
31
- 'grill-me',
32
- 'grilling',
33
- 'handoff',
34
- 'teach',
35
- 'to-questionnaire',
36
- 'wait-what',
37
- 'writing-for-agents'
38
- ];
39
10
  export function getDefaultConfig(name, preset, options = {}) {
40
11
  const packageManager = options.packageManager || 'pnpm';
41
- switch (preset) {
42
- case 'web': {
43
- const framework = options.framework || 'none';
44
- const hasWebTarget = framework === 'vite' || framework === 'next';
45
- return {
46
- schemaVersion: '1.0.0',
47
- name,
48
- preset: 'web',
49
- framework,
50
- packageManager,
51
- agents: {
52
- primary: 'antigravity',
53
- secondary: 'codex',
54
- claudeCode: true
55
- },
56
- skills: {
57
- sources: [
58
- {
59
- package: 'mattpocock/skills',
60
- skills: [...MATT_POCOCK_SKILLS]
61
- },
62
- {
63
- package: 'blader/humanizer',
64
- skills: ['humanizer']
65
- },
66
- {
67
- package: 'dietrichgebert/ponytail',
68
- skills: ['ponytail']
69
- },
70
- {
71
- package: 'pbakaus/impeccable',
72
- skills: ['impeccable']
73
- },
74
- {
75
- package: 'vercel-labs/agent-browser',
76
- skills: ['agent-browser']
77
- }
78
- ]
79
- },
80
- codebase: {
81
- graft: true
82
- },
83
- browser: {
84
- visualAgent: true,
85
- playwright: hasWebTarget
86
- },
87
- docs: {
88
- adr: true
89
- },
90
- github: {
91
- ci: true
92
- }
93
- };
94
- }
95
- case 'cli':
96
- return {
97
- schemaVersion: '1.0.0',
98
- name,
99
- preset: 'cli',
100
- packageManager,
101
- agents: {
102
- primary: 'antigravity',
103
- secondary: 'codex',
104
- claudeCode: true
105
- },
106
- skills: {
107
- sources: [
108
- {
109
- package: 'mattpocock/skills',
110
- skills: [...MATT_POCOCK_SKILLS]
111
- },
112
- {
113
- package: 'blader/humanizer',
114
- skills: ['humanizer']
115
- },
116
- {
117
- package: 'dietrichgebert/ponytail',
118
- skills: ['ponytail']
119
- }
120
- ]
121
- },
122
- codebase: {
123
- graft: true
124
- },
125
- browser: {
126
- visualAgent: false,
127
- playwright: false
128
- },
129
- docs: {
130
- adr: true
131
- },
132
- github: {
133
- ci: true
134
- }
135
- };
136
- case 'generic':
137
- default:
138
- return {
139
- schemaVersion: '1.0.0',
140
- name,
141
- preset: 'generic',
142
- packageManager,
143
- agents: {
144
- primary: 'antigravity',
145
- secondary: 'codex',
146
- claudeCode: true
147
- },
148
- skills: {
149
- sources: [
150
- {
151
- package: 'mattpocock/skills',
152
- skills: [...MATT_POCOCK_SKILLS]
153
- },
154
- {
155
- package: 'blader/humanizer',
156
- skills: ['humanizer']
157
- },
158
- {
159
- package: 'dietrichgebert/ponytail',
160
- skills: ['ponytail']
161
- }
162
- ]
163
- },
164
- codebase: {
165
- graft: true
166
- },
167
- browser: {
168
- visualAgent: false,
169
- playwright: false
170
- },
171
- docs: {
172
- adr: true
173
- },
174
- github: {
175
- ci: false
176
- }
177
- };
178
- }
12
+ const platform = options.platform ?? presetPlatform(preset);
13
+ const stack = options.stack ?? 'node';
14
+ const framework = preset === 'web' ? options.framework || 'none' : undefined;
15
+ const base = {
16
+ schemaVersion: '1.0.0',
17
+ name,
18
+ preset,
19
+ ...(framework ? { framework } : {}),
20
+ // Only Node projects have a package manager; the others use their host toolchain.
21
+ ...(isNodeStack(stack) ? { packageManager } : {}),
22
+ platform,
23
+ stack,
24
+ agents: {
25
+ primary: 'antigravity',
26
+ secondary: 'codex',
27
+ claudeCode: true
28
+ },
29
+ skills: { sources: [] },
30
+ codebase: { graft: true },
31
+ browser: { visualAgent: false, playwright: false },
32
+ docs: { adr: true },
33
+ github: { ci: preset !== 'generic' }
34
+ };
35
+ const profile = resolveCapabilities({
36
+ platform,
37
+ stack,
38
+ framework,
39
+ harness: options.harness,
40
+ flags: options.flags
41
+ });
42
+ return applyResolvedProfile(base, profile, { skills: options.skills !== false });
179
43
  }
180
44
  /** The skill selections that older versions of aginit wrote as defaults. */
181
45
  const LEGACY_MATT_SKILL_SELECTIONS = [
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { CustomCapabilityConfig, Platform, Stack } from '../registry/types.js';
1
2
  export type PresetType = 'web' | 'cli' | 'generic';
2
3
  export type WebFramework = 'none' | 'vite' | 'next' | 'existing';
3
4
  export type PackageManager = 'pnpm' | 'npm' | 'yarn' | 'bun';
@@ -42,6 +43,19 @@ export interface AginitConfig {
42
43
  github: {
43
44
  ci: boolean;
44
45
  };
46
+ /** Target platform. Missing in pre-v2 configs; detected from the project then. */
47
+ platform?: Platform;
48
+ /** Host toolchain. Missing in pre-v2 configs; detected from the project then. */
49
+ stack?: Stack;
50
+ /**
51
+ * Enabled capability ids from the registry (src/registry/catalog.ts).
52
+ * Missing in pre-v2 configs; inferred from skills.sources and the switches above.
53
+ */
54
+ capabilities?: string[];
55
+ /** Skill repositories added on top of the registry; always enabled unless disabled. */
56
+ customCapabilities?: CustomCapabilityConfig[];
57
+ /** Capability ids to keep off, even when a preset or platform default would enable them. */
58
+ disabledCapabilities?: string[];
45
59
  }
46
60
  export type AIProjectConfig = AginitConfig;
47
61
  export declare const AGINIT_CONFIG_FILENAME = "aginit.config.json";