@zweer/dev 1.0.1

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 (58) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +508 -0
  3. package/agents/data/zweer_data_engineer.md +436 -0
  4. package/agents/design/zweer_ui_designer.md +171 -0
  5. package/agents/design/zweer_ui_ux.md +124 -0
  6. package/agents/infrastructure/zweer_infra_cdk.md +701 -0
  7. package/agents/infrastructure/zweer_infra_devops.md +148 -0
  8. package/agents/infrastructure/zweer_infra_observability.md +610 -0
  9. package/agents/infrastructure/zweer_infra_terraform.md +658 -0
  10. package/agents/mobile/zweer_mobile_android.md +636 -0
  11. package/agents/mobile/zweer_mobile_flutter.md +623 -0
  12. package/agents/mobile/zweer_mobile_ionic.md +550 -0
  13. package/agents/mobile/zweer_mobile_ios.md +504 -0
  14. package/agents/mobile/zweer_mobile_react_native.md +561 -0
  15. package/agents/quality/zweer_qa_documentation.md +202 -0
  16. package/agents/quality/zweer_qa_performance.md +160 -0
  17. package/agents/quality/zweer_qa_security.md +197 -0
  18. package/agents/quality/zweer_qa_testing.md +189 -0
  19. package/agents/services/zweer_svc_api_gateway.md +553 -0
  20. package/agents/services/zweer_svc_containers.md +575 -0
  21. package/agents/services/zweer_svc_lambda.md +373 -0
  22. package/agents/services/zweer_svc_messaging.md +543 -0
  23. package/agents/services/zweer_svc_microservices.md +502 -0
  24. package/agents/web/zweer_web_api_integration.md +500 -0
  25. package/agents/web/zweer_web_backend.md +358 -0
  26. package/agents/web/zweer_web_database.md +357 -0
  27. package/agents/web/zweer_web_frontend.md +375 -0
  28. package/agents/web/zweer_web_reader.md +229 -0
  29. package/agents/write/zweer_write_content.md +499 -0
  30. package/agents/write/zweer_write_narrative.md +409 -0
  31. package/agents/write/zweer_write_style.md +247 -0
  32. package/agents/write/zweer_write_warmth.md +282 -0
  33. package/cli/commands/bootstrap.d.ts +4 -0
  34. package/cli/commands/bootstrap.js +332 -0
  35. package/cli/commands/cao/index.d.ts +2 -0
  36. package/cli/commands/cao/index.js +14 -0
  37. package/cli/commands/cao/init.d.ts +15 -0
  38. package/cli/commands/cao/init.js +87 -0
  39. package/cli/commands/cao/install.d.ts +10 -0
  40. package/cli/commands/cao/install.js +58 -0
  41. package/cli/commands/cao/launch.d.ts +3 -0
  42. package/cli/commands/cao/launch.js +21 -0
  43. package/cli/commands/cao/list.d.ts +4 -0
  44. package/cli/commands/cao/list.js +28 -0
  45. package/cli/commands/cao/server.d.ts +3 -0
  46. package/cli/commands/cao/server.js +20 -0
  47. package/cli/commands/setup.d.ts +4 -0
  48. package/cli/commands/setup.js +269 -0
  49. package/cli/index.d.ts +2 -0
  50. package/cli/index.js +13 -0
  51. package/cli/utils/agents.d.ts +8 -0
  52. package/cli/utils/agents.js +55 -0
  53. package/cli/utils/cao.d.ts +8 -0
  54. package/cli/utils/cao.js +23 -0
  55. package/cli/utils/paths.d.ts +5 -0
  56. package/cli/utils/paths.js +11 -0
  57. package/package.json +80 -0
  58. package/templates/orchestrator.md +190 -0
@@ -0,0 +1,282 @@
1
+ ---
2
+ name: zweer_write_warmth
3
+ description: Adds warmth, emotion, and human authenticity to writing
4
+ model: claude-sonnet-4.5
5
+ mcpServers:
6
+ cao-mcp-server:
7
+ type: stdio
8
+ command: uvx
9
+ args:
10
+ - "--from"
11
+ - "git+https://github.com/awslabs/cli-agent-orchestrator.git@main"
12
+ - "cao-mcp-server"
13
+ tools: ["*"]
14
+ allowedTools: ["fs_read", "fs_write", "execute_bash", "@cao-mcp-server"]
15
+ toolsSettings:
16
+ execute_bash:
17
+ alwaysAllow:
18
+ - preset: "readOnly"
19
+ ---
20
+
21
+ # Warmth Agent
22
+
23
+ ## Description
24
+
25
+ Specialized in adding warmth, emotion, and human connection to writing. Makes text feel personal, empathetic, and authentic.
26
+
27
+ ## Instructions
28
+
29
+ You are an expert at infusing writing with genuine human warmth. Your job is to make readers feel understood, connected, and emotionally engaged—without being cheesy or manipulative.
30
+
31
+ ### Responsibilities
32
+
33
+ 1. **Add Empathy**: Show understanding of reader's feelings
34
+ 2. **Create Connection**: Build rapport with the reader
35
+ 3. **Inject Personality**: Add human quirks and authenticity
36
+ 4. **Balance Emotion**: Warm without being saccharine
37
+ 5. **Show Vulnerability**: Admit imperfections honestly
38
+ 6. **Build Trust**: Be genuine and relatable
39
+
40
+ ### Warmth Techniques
41
+
42
+ **Acknowledge Struggles**:
43
+ ```
44
+ ❌ Follow these steps to deploy.
45
+ ✅ Deployment can be nerve-wracking. Let's walk through it together.
46
+ ```
47
+
48
+ **Share Experience**:
49
+ ```
50
+ ❌ This approach works well.
51
+ ✅ I've deployed this way dozens of times. It just works.
52
+ ```
53
+
54
+ **Use "We" Language**:
55
+ ```
56
+ ❌ You should implement error handling.
57
+ ✅ Let's add error handling so we catch issues early.
58
+ ```
59
+
60
+ **Admit Imperfection**:
61
+ ```
62
+ ❌ This is the perfect solution.
63
+ ✅ This isn't perfect, but it's solved my problem for years.
64
+ ```
65
+
66
+ **Show Understanding**:
67
+ ```
68
+ ❌ Configure your environment variables.
69
+ ✅ Environment variables are annoying to set up. I know.
70
+ But once they're done, you're golden.
71
+ ```
72
+
73
+ **Add Encouragement**:
74
+ ```
75
+ ❌ Complete the tutorial.
76
+ ✅ You've got this. Take it one step at a time.
77
+ ```
78
+
79
+ ### Emotional Beats
80
+
81
+ **Frustration → Relief**:
82
+ ```
83
+ Spent three hours debugging? Been there. Here's what fixed it for me.
84
+ ```
85
+
86
+ **Confusion → Clarity**:
87
+ ```
88
+ This confused me too at first. Then it clicked: [explanation].
89
+ ```
90
+
91
+ **Doubt → Confidence**:
92
+ ```
93
+ Worried about scaling? Don't be. This handles millions of requests.
94
+ ```
95
+
96
+ **Overwhelm → Simplicity**:
97
+ ```
98
+ Looks complicated, right? It's actually just three steps.
99
+ ```
100
+
101
+ ### Personal Touches
102
+
103
+ **Anecdotes**:
104
+ ```
105
+ I learned this the hard way during a production outage at 2 AM.
106
+ Now I always add this check.
107
+ ```
108
+
109
+ **Honest Opinions**:
110
+ ```
111
+ Is this the "right" way? Maybe not. But it's practical and it works.
112
+ ```
113
+
114
+ **Shared Frustrations**:
115
+ ```
116
+ Documentation says it's "simple." It's not. Here's what they
117
+ actually mean.
118
+ ```
119
+
120
+ **Celebrations**:
121
+ ```
122
+ And just like that, you've built a production-ready API.
123
+ Nice work.
124
+ ```
125
+
126
+ ### What to Do
127
+
128
+ ✅ Acknowledge reader's feelings
129
+ ✅ Share personal experience
130
+ ✅ Use conversational tone
131
+ ✅ Admit when things are hard
132
+ ✅ Celebrate small wins
133
+ ✅ Be encouraging
134
+ ✅ Show empathy
135
+ ✅ Build connection
136
+
137
+ ### What NOT to Do
138
+
139
+ ❌ Don't be condescending
140
+ ❌ Don't fake enthusiasm
141
+ ❌ Don't be overly emotional
142
+ ❌ Don't manipulate feelings
143
+ ❌ Don't be saccharine
144
+ ❌ Don't patronize
145
+ ❌ Don't force positivity
146
+ ❌ Don't be insincere
147
+
148
+ ## Examples
149
+
150
+ **Before (Cold)**:
151
+ ```
152
+ Error handling is important. Implement try-catch blocks
153
+ to handle exceptions properly.
154
+ ```
155
+
156
+ **After (Warm)**:
157
+ ```
158
+ Nothing's worse than your app crashing in production.
159
+ Let's add some safety nets so you can sleep at night.
160
+ ```
161
+
162
+ ---
163
+
164
+ **Before (Cold)**:
165
+ ```
166
+ TypeScript provides type safety and reduces bugs.
167
+ ```
168
+
169
+ **After (Warm)**:
170
+ ```
171
+ TypeScript catches the dumb mistakes we all make at 11 PM.
172
+ Your future self will thank you.
173
+ ```
174
+
175
+ ---
176
+
177
+ **Before (Cold)**:
178
+ ```
179
+ Follow these steps to complete the setup:
180
+ 1. Install dependencies
181
+ 2. Configure environment
182
+ 3. Run the application
183
+ ```
184
+
185
+ **After (Warm)**:
186
+ ```
187
+ Let's get you up and running. This takes about 5 minutes.
188
+
189
+ First, grab the dependencies. While that's installing,
190
+ make yourself some coffee—you've earned it.
191
+
192
+ Once that's done, we'll set up your environment.
193
+ I'll walk you through each variable.
194
+
195
+ Then we'll fire it up and watch it work. Ready?
196
+ ```
197
+
198
+ ---
199
+
200
+ **Before (Cold)**:
201
+ ```
202
+ This tutorial covers advanced concepts. Prerequisites
203
+ include knowledge of JavaScript and Node.js.
204
+ ```
205
+
206
+ **After (Warm)**:
207
+ ```
208
+ Fair warning: this gets a bit advanced. If you're comfortable
209
+ with JavaScript and have used Node.js before, you're good.
210
+
211
+ If not? No judgment. Come back when you're ready.
212
+ We'll be here.
213
+ ```
214
+
215
+ ---
216
+
217
+ **Before (Cold)**:
218
+ ```
219
+ The deployment process is complete. Your application
220
+ is now live.
221
+ ```
222
+
223
+ **After (Warm)**:
224
+ ```
225
+ And... you're live!
226
+
227
+ Take a moment. You just shipped something real.
228
+ That's not nothing.
229
+
230
+ Now go show someone what you built.
231
+ ```
232
+
233
+ ## Warmth Levels
234
+
235
+ **Technical Documentation**: Light warmth
236
+ - Acknowledge difficulty
237
+ - Offer encouragement
238
+ - Share practical tips
239
+
240
+ **Blog Posts**: Medium warmth
241
+ - Personal anecdotes
242
+ - Shared experiences
243
+ - Conversational tone
244
+
245
+ **Tutorials**: High warmth
246
+ - Walk alongside reader
247
+ - Celebrate progress
248
+ - Build confidence
249
+
250
+ **Marketing**: Balanced warmth
251
+ - Show understanding
252
+ - Build trust
253
+ - Stay authentic
254
+
255
+ ## Output Format
256
+
257
+ Provide the warmer version with:
258
+
259
+ ```
260
+ ## WARMER VERSION
261
+
262
+ [Text with added warmth]
263
+
264
+ ---
265
+
266
+ ## WARMTH ADDED
267
+
268
+ - Empathy: [example]
269
+ - Connection: [example]
270
+ - Encouragement: [example]
271
+ ```
272
+
273
+ ## Notes
274
+
275
+ - Warmth should feel natural, not forced
276
+ - Match the context and audience
277
+ - Be genuine—readers can tell when you're faking
278
+ - Balance warmth with professionalism
279
+ - Don't sacrifice clarity for emotion
280
+ - Encourage without patronizing
281
+ - Show vulnerability when appropriate
282
+ - Build trust through authenticity
@@ -0,0 +1,4 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ export declare const bootstrap: Command<[], {
3
+ yes?: true | undefined;
4
+ }>;
@@ -0,0 +1,332 @@
1
+ import { exec } from 'node:child_process';
2
+ import { mkdir, writeFile } from 'node:fs/promises';
3
+ import { promisify } from 'node:util';
4
+ import { Command } from '@commander-js/extra-typings';
5
+ import chalk from 'chalk';
6
+ import inquirer from 'inquirer';
7
+ import ora from 'ora';
8
+ const execAsync = promisify(exec);
9
+ export const bootstrap = new Command()
10
+ .name('bootstrap')
11
+ .description('Bootstrap a new npm package with standard configuration')
12
+ .option('-y, --yes', 'Skip prompts and use defaults')
13
+ .action(async (options) => {
14
+ const answers = options.yes
15
+ ? {
16
+ name: '@zweer/new-package',
17
+ description: 'A new package',
18
+ author: 'Zweer <n.olivieriachille@gmail.com>',
19
+ }
20
+ : await inquirer.prompt([
21
+ {
22
+ type: 'input',
23
+ name: 'name',
24
+ message: 'Package name:',
25
+ default: '@zweer/new-package',
26
+ },
27
+ {
28
+ type: 'input',
29
+ name: 'description',
30
+ message: 'Description:',
31
+ default: 'A new package',
32
+ },
33
+ {
34
+ type: 'input',
35
+ name: 'author',
36
+ message: 'Author:',
37
+ default: 'Zweer <n.olivieriachille@gmail.com>',
38
+ },
39
+ ]);
40
+ const spinner = ora('Bootstrapping project...').start();
41
+ try {
42
+ // Create package.json
43
+ const packageJson = {
44
+ name: answers.name,
45
+ version: '0.0.0',
46
+ description: answers.description,
47
+ type: 'module',
48
+ scripts: {
49
+ lint: 'concurrently npm:lint:* --prefixColors auto',
50
+ 'lint:format': 'biome check --write',
51
+ 'lint:lockfile': 'lockfile-lint --path package-lock.json',
52
+ 'lint:engines': 'ls-engines',
53
+ 'lint:publish': 'publint --strict',
54
+ test: 'vitest run',
55
+ 'test:coverage': 'vitest run --coverage',
56
+ check: 'npm run clean && npm run test:coverage && npm run build && npm run lint && npm run clean',
57
+ prepare: 'husky',
58
+ clean: 'rimraf --glob ./{src,test}/**/*.{d.ts,js} ./vitest*.{d.ts,js}',
59
+ prebuild: 'npm run clean',
60
+ build: 'tsc',
61
+ release: 'semantic-release',
62
+ },
63
+ engines: {
64
+ node: '>= 20.17',
65
+ },
66
+ publishConfig: {
67
+ access: 'public',
68
+ provenance: true,
69
+ },
70
+ release: {
71
+ plugins: [
72
+ '@semantic-release/commit-analyzer',
73
+ '@semantic-release/release-notes-generator',
74
+ '@semantic-release/changelog',
75
+ '@semantic-release/npm',
76
+ '@semantic-release/github',
77
+ '@semantic-release/git',
78
+ ],
79
+ },
80
+ keywords: [],
81
+ author: answers.author,
82
+ license: 'MIT',
83
+ dependencies: {},
84
+ devDependencies: {
85
+ '@biomejs/biome': '^2.3.4',
86
+ '@semantic-release/changelog': '^6.0.3',
87
+ '@semantic-release/git': '^10.0.1',
88
+ '@tsconfig/node22': '^22.0.2',
89
+ '@types/node': '^24.10.0',
90
+ '@vitest/coverage-v8': '^4.0.8',
91
+ concurrently: '^9.2.1',
92
+ husky: '^9.1.7',
93
+ 'lint-staged': '^16.2.6',
94
+ 'lockfile-lint': '^4.14.1',
95
+ 'ls-engines': '^0.9.3',
96
+ publint: '^0.3.15',
97
+ rimraf: '^6.1.0',
98
+ 'semantic-release': '^25.0.2',
99
+ typescript: '^5.9.3',
100
+ vitest: '^4.0.8',
101
+ },
102
+ };
103
+ await writeFile('package.json', JSON.stringify(packageJson, null, 2));
104
+ // Create tsconfig.json
105
+ const tsconfig = {
106
+ extends: '@tsconfig/node22/tsconfig.json',
107
+ compilerOptions: {
108
+ declaration: true,
109
+ skipLibCheck: true,
110
+ },
111
+ };
112
+ await writeFile('tsconfig.json', JSON.stringify(tsconfig, null, 2));
113
+ // Create biome.json
114
+ const biome = {
115
+ $schema: 'https://biomejs.dev/schemas/2.3.4/schema.json',
116
+ vcs: {
117
+ enabled: true,
118
+ clientKind: 'git',
119
+ useIgnoreFile: true,
120
+ },
121
+ files: {
122
+ ignoreUnknown: false,
123
+ },
124
+ formatter: {
125
+ enabled: true,
126
+ useEditorconfig: true,
127
+ lineWidth: 100,
128
+ },
129
+ linter: {
130
+ enabled: true,
131
+ rules: {
132
+ recommended: true,
133
+ suspicious: {
134
+ noUnknownAtRules: 'off',
135
+ },
136
+ },
137
+ domains: {
138
+ test: 'recommended',
139
+ },
140
+ },
141
+ javascript: {
142
+ formatter: {
143
+ quoteStyle: 'single',
144
+ },
145
+ },
146
+ assist: {
147
+ enabled: true,
148
+ actions: {
149
+ source: {
150
+ organizeImports: {
151
+ level: 'on',
152
+ options: {
153
+ groups: [
154
+ ':URL:',
155
+ ':BLANK_LINE:',
156
+ [':BUN:', ':NODE:'],
157
+ ':BLANK_LINE:',
158
+ [':PACKAGE_WITH_PROTOCOL:', ':PACKAGE:'],
159
+ ':BLANK_LINE:',
160
+ ':ALIAS:',
161
+ ':BLANK_LINE:',
162
+ ':PATH:',
163
+ ],
164
+ },
165
+ },
166
+ },
167
+ },
168
+ },
169
+ };
170
+ await writeFile('biome.json', JSON.stringify(biome, null, 2));
171
+ // Create vitest.config.ts
172
+ const vitestConfig = `import { defineConfig } from 'vitest/config';
173
+
174
+ export default defineConfig({
175
+ test: {
176
+ globals: true,
177
+ environment: 'node',
178
+ },
179
+ });
180
+ `;
181
+ await writeFile('vitest.config.ts', vitestConfig);
182
+ // Create .lintstagedrc
183
+ const lintStaged = `"*.{ts,tsx}":
184
+ - "bash -c 'npm test'"
185
+
186
+ "package.json":
187
+ - "bash -c 'npm test'"
188
+ - "bash -c 'npm run build'"
189
+ - "bash -c 'npm run lint:lockfile'"
190
+ - "bash -c 'npm run lint:engines'"
191
+ - "bash -c 'npm run lint:publish'"
192
+ - "bash -c 'npm run clean'"
193
+
194
+ "*.{ts,tsx,json,yaml,graphql,md,css,scss,html}":
195
+ - "biome check --write --no-errors-on-unmatched --files-ignore-unknown=true"
196
+ `;
197
+ await writeFile('.lintstagedrc', lintStaged);
198
+ // Create .gitignore
199
+ const gitignore = `# Typescript
200
+ *.js
201
+ *.d.ts
202
+
203
+ # Logs
204
+ logs
205
+ *.log
206
+ npm-debug.log*
207
+
208
+ # Coverage
209
+ coverage
210
+ *.lcov
211
+ .nyc_output
212
+
213
+ # Dependencies
214
+ node_modules/
215
+
216
+ # TypeScript cache
217
+ *.tsbuildinfo
218
+
219
+ # dotenv
220
+ .env
221
+ .env.*
222
+ !.env.example
223
+
224
+ # Build output
225
+ dist
226
+ `;
227
+ await writeFile('.gitignore', gitignore);
228
+ // Create .editorconfig
229
+ const editorconfig = `# http://editorconfig.org/
230
+ root = true
231
+
232
+ [*]
233
+ charset = utf-8
234
+ end_of_line = lf
235
+ insert_final_newline = true
236
+ indent_style = space
237
+ indent_size = 2
238
+ trim_trailing_whitespace = true
239
+
240
+ [*.md]
241
+ trim_trailing_whitespace = false
242
+
243
+ [Makefile]
244
+ indent_style = tab
245
+ `;
246
+ await writeFile('.editorconfig', editorconfig);
247
+ // Create directories
248
+ await mkdir('src', { recursive: true });
249
+ await mkdir('test', { recursive: true });
250
+ await mkdir('.husky', { recursive: true });
251
+ // Create sample files
252
+ await writeFile('src/index.ts', `export function hello(name: string): string {
253
+ return \`Hello, \${name}!\`;
254
+ }
255
+ `);
256
+ await writeFile('test/index.test.ts', `import { describe, expect, it } from 'vitest';
257
+
258
+ import { hello } from '../src/index.js';
259
+
260
+ describe('hello', () => {
261
+ it('should greet', () => {
262
+ expect(hello('World')).toBe('Hello, World!');
263
+ });
264
+ });
265
+ `);
266
+ // Create README
267
+ const readme = `# ${answers.name}
268
+
269
+ ${answers.description}
270
+
271
+ ## Installation
272
+
273
+ \`\`\`bash
274
+ npm install ${answers.name}
275
+ \`\`\`
276
+
277
+ ## Usage
278
+
279
+ \`\`\`typescript
280
+ import { hello } from '${answers.name}';
281
+
282
+ console.log(hello('World'));
283
+ \`\`\`
284
+
285
+ ## Development
286
+
287
+ \`\`\`bash
288
+ # Install dependencies
289
+ npm install
290
+
291
+ # Run tests
292
+ npm test
293
+
294
+ # Build
295
+ npm run build
296
+
297
+ # Lint
298
+ npm run lint
299
+ \`\`\`
300
+
301
+ ## License
302
+
303
+ MIT
304
+ `;
305
+ await writeFile('README.md', readme);
306
+ spinner.text = 'Installing dependencies...';
307
+ await execAsync('npm install');
308
+ // Create .husky/pre-commit
309
+ const preCommit = `export NVM_DIR="$HOME/.nvm"
310
+ [ -s "$NVM_DIR/nvm.sh" ] && \\. "$NVM_DIR/nvm.sh"
311
+
312
+ lint-staged --concurrent false
313
+ git update-index --again
314
+ `;
315
+ await writeFile('.husky/pre-commit', preCommit);
316
+ await execAsync('chmod +x .husky/pre-commit');
317
+ spinner.text = 'Initializing git...';
318
+ await execAsync('git init');
319
+ await execAsync('git add .');
320
+ await execAsync('git commit -m "chore: initial commit"');
321
+ spinner.succeed(chalk.green('✓ Project bootstrapped successfully!'));
322
+ console.log('\nNext steps:');
323
+ console.log(`${chalk.cyan(' npm test')} - Run tests`);
324
+ console.log(`${chalk.cyan(' npm run build')} - Build the project`);
325
+ console.log(`${chalk.cyan(' npm run lint')} - Lint the code`);
326
+ }
327
+ catch (error) {
328
+ spinner.fail(chalk.red('Failed to bootstrap project'));
329
+ console.error(error);
330
+ process.exit(1);
331
+ }
332
+ });
@@ -0,0 +1,2 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ export declare const caoCommand: Command<[], {}>;
@@ -0,0 +1,14 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ import { initCommand } from './init.js';
3
+ import { installCommand } from './install.js';
4
+ import { launchCommand } from './launch.js';
5
+ import { listCommand } from './list.js';
6
+ import { serverCommand } from './server.js';
7
+ export const caoCommand = new Command()
8
+ .name('cao')
9
+ .description('Manage CAO (CLI Agent Orchestrator) and agents')
10
+ .addCommand(initCommand)
11
+ .addCommand(installCommand)
12
+ .addCommand(serverCommand)
13
+ .addCommand(launchCommand)
14
+ .addCommand(listCommand);
@@ -0,0 +1,15 @@
1
+ import { Command } from '@commander-js/extra-typings';
2
+ export interface OrchestratorConfig {
3
+ name: string;
4
+ projectName: string;
5
+ projectPath: string;
6
+ techStack: string;
7
+ projectStructure: string;
8
+ }
9
+ export declare function createOrchestrator(config: OrchestratorConfig): Promise<{
10
+ orchestratorPath: string;
11
+ }>;
12
+ export declare function getDefaultConfig(cwd: string, name?: string): OrchestratorConfig;
13
+ export declare const initCommand: Command<[string | undefined], {
14
+ yes?: true | undefined;
15
+ }>;