Skip to content

Commit 83a5aea

Browse files
committed
fix: Use "Kiro" instead of "Amazon Q" in all places
1 parent e17fcfd commit 83a5aea

12 files changed

Lines changed: 79 additions & 77 deletions

File tree

.amazonq/cli-agents/vibe.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,6 @@
4848
]
4949
}
5050
},
51-
"resources": ["file://README.md", "file://.amazonq/rules/**/*.md"],
51+
"resources": ["file://README.md", "file://.kiro/rules/**/*.md"],
5252
"hooks": {}
5353
}

.github/workflows/release.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ on:
1818
- '.crowd/**'
1919
- '.windsurf/**'
2020
- '.amazonq/**'
21+
- '.kiro/**'
2122
- 'examples/**'
2223
- 'packages/docs/**'
2324

.kiro/agents/vibe.json

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"name": "vibe",
3+
"description": "Responsible vibe development",
4+
"prompt": "\nYou are an AI assistant that helps users develop software features using the workflows server.\n\nIMPORTANT: Call whats_next() after each user message to get phase-specific instructions and maintain the development workflow.\n\nEach tool call returns a JSON response with an \"instructions\" field. Follow these instructions immediately after you receive them.\n\nUse the development plan which you will retrieve via whats_next() to record important insights and decisions as per the structure of the plan.\n\nDo not use your own task management tools.",
5+
"mcpServers": {
6+
"workflows": {
7+
"command": "npx",
8+
"args": ["@codemcp/workflows-server@latest"]
9+
}
10+
},
11+
"tools": [
12+
"execute_bash",
13+
"fs_read",
14+
"fs_write",
15+
"report_issue",
16+
"knowledge",
17+
"thinking",
18+
"use_aws",
19+
"@workflows"
20+
],
21+
"allowedTools": [
22+
"fs_read",
23+
"fs_write",
24+
"@workflows/whats_next",
25+
"@workflows/conduct_review",
26+
"@workflows/list_workflows",
27+
"@workflows/get_tool_info"
28+
],
29+
"toolsSettings": {
30+
"execute_bash": {
31+
"alwaysAllow": [
32+
{
33+
"preset": "readOnly"
34+
}
35+
]
36+
},
37+
"use_aws": {
38+
"alwaysAllow": [
39+
{
40+
"preset": "readOnly"
41+
}
42+
]
43+
}
44+
},
45+
"resources": ["file://README.md", "file://.kiro/rules/**/*.md"],
46+
"hooks": {}
47+
}

packages/cli/.amazonq/cli-agents/vibe.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,6 @@
4242
]
4343
}
4444
},
45-
"resources": ["file://README.md", "file://.amazonq/rules/**/*.md"],
45+
"resources": ["file://README.md", "file://.kiro/rules/**/*.md"],
4646
"hooks": {}
4747
}

packages/cli/src/config-generator.ts

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ abstract class ConfigGenerator {
160160
* Generates a single comprehensive JSON file
161161
* Merges with existing configuration instead of overwriting
162162
*/
163-
class AmazonQConfigGenerator extends ConfigGenerator {
163+
class KiroConfigGenerator extends ConfigGenerator {
164164
async generate(outputDir: string): Promise<void> {
165165
const systemPrompt = this.getSystemPrompt();
166166
const mcpServers = this.getDefaultMcpConfig();
@@ -204,15 +204,15 @@ class AmazonQConfigGenerator extends ConfigGenerator {
204204
],
205205
},
206206
},
207-
resources: ['file://README.md', 'file://.amazonq/rules/**/*.md'],
207+
resources: ['file://README.md', 'file://.kiro/rules/**/*.md'],
208208
hooks: {},
209209
};
210210

211-
// Create .amazonq/cli-agents directory
212-
const amazonqDir = join(outputDir, '.amazonq', 'cli-agents');
213-
await mkdir(amazonqDir, { recursive: true });
211+
// Create .kiro/agents directory
212+
const kiroDir = join(outputDir, '.kiro', 'agents');
213+
await mkdir(kiroDir, { recursive: true });
214214

215-
const configPath = join(amazonqDir, 'vibe.json');
215+
const configPath = join(kiroDir, 'vibe.json');
216216
const finalConfig = await this.mergeWithExistingConfig(
217217
configPath,
218218
newConfig
@@ -506,15 +506,9 @@ class GeneratorRegistry {
506506
// Register all available generators
507507
GeneratorRegistry.register({
508508
name: 'kiro',
509-
description: 'Generate .amazonq/cli-agents/vibe.json (Kiro/Amazon Q)',
510-
aliases: ['amazonq-cli', 'amazonq'],
511-
generatorClass: AmazonQConfigGenerator,
512-
});
513-
514-
GeneratorRegistry.register({
515-
name: 'kiro-cli',
516-
description: 'Generate .amazonq/cli-agents/vibe.json (Kiro/Amazon Q CLI)',
517-
generatorClass: AmazonQConfigGenerator,
509+
description: 'Generate .kiro/agents/vibe.json (Kiro)',
510+
aliases: ['kiro-cli'],
511+
generatorClass: KiroConfigGenerator,
518512
});
519513

520514
GeneratorRegistry.register({

packages/cli/src/skill-generator.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -550,7 +550,7 @@ SkillGeneratorRegistry.register({
550550
SkillGeneratorRegistry.register({
551551
name: 'kiro-cli',
552552
description: 'Generate skill for Kiro/Amazon Q CLI (SKILL.md + mcp.json)',
553-
aliases: ['amazonq', 'amazonq-cli'],
553+
aliases: [],
554554
generatorClass: KiroCliSkillGenerator,
555555
});
556556

packages/cli/test/cli.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ const mocks = vi.hoisted(() => ({
2828
),
2929
getHelpText: vi.fn(
3030
() =>
31-
` kiro Generate .amazonq/cli-agents/vibe.json (Kiro/Amazon Q)
31+
` kiro Generate .kiro/agents/vibe.json (Kiro)
3232
claude Generate CLAUDE.md, .mcp.json, settings.json
3333
gemini Generate settings.json, GEMINI.md
3434
opencode Generate opencode.json

packages/cli/test/config-generator.test.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ describe('Config Generator', () => {
3030
it('should generate Amazon Q configuration file', async () => {
3131
await generateConfig('kiro', tempDir);
3232

33-
const configPath = join(tempDir, '.amazonq', 'cli-agents', 'vibe.json');
33+
const configPath = join(tempDir, '.kiro', 'agents', 'vibe.json');
3434
expect(existsSync(configPath)).toBe(true);
3535

3636
const config = JSON.parse(readFileSync(configPath, 'utf-8'));
@@ -199,9 +199,9 @@ describe('Config Generator', () => {
199199
});
200200
});
201201

202-
describe('Amazon Q / Kiro', () => {
202+
describe('Kiro', () => {
203203
it('should merge with existing vibe.json', async () => {
204-
const configDir = join(tempDir, '.amazonq', 'cli-agents');
204+
const configDir = join(tempDir, '.kiro', 'agents');
205205
mkdirSync(configDir, { recursive: true });
206206
const configPath = join(configDir, 'vibe.json');
207207

@@ -213,7 +213,6 @@ describe('Config Generator', () => {
213213
};
214214
writeFileSync(configPath, JSON.stringify(existingConfig, null, 2));
215215

216-
// Generate config using 'kiro' (primary name, amazonq-cli is alias)
217216
await generateConfig('kiro', tempDir);
218217

219218
// Read result

packages/cli/test/generator-registry.test.ts

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,7 @@ import { GeneratorRegistry } from '../src/config-generator.js';
1111
*/
1212
describe('GeneratorRegistry', () => {
1313
// Test with the actual built-in generators
14-
const builtInGenerators = [
15-
'kiro',
16-
'kiro-cli',
17-
'claude',
18-
'gemini',
19-
'opencode',
20-
'copilot',
21-
];
14+
const builtInGenerators = ['kiro', 'claude', 'gemini', 'opencode', 'copilot'];
2215

2316
beforeAll(() => {
2417
// Verify the registry is properly initialized
@@ -37,10 +30,8 @@ describe('GeneratorRegistry', () => {
3730
expect(GeneratorRegistry.exists('copilot')).toBe(true);
3831
expect(GeneratorRegistry.exists('copilot-vscode')).toBe(true);
3932
expect(GeneratorRegistry.exists('vscode')).toBe(true);
40-
// 'amazonq-cli' and 'amazonq' are aliases for 'kiro'
4133
expect(GeneratorRegistry.exists('kiro')).toBe(true);
42-
expect(GeneratorRegistry.exists('amazonq-cli')).toBe(true);
43-
expect(GeneratorRegistry.exists('amazonq')).toBe(true);
34+
expect(GeneratorRegistry.exists('kiro-cli')).toBe(true);
4435
});
4536

4637
it('should handle case-insensitive lookups', () => {
@@ -163,8 +154,6 @@ describe('GeneratorRegistry', () => {
163154
expect(names).not.toContain('vscode');
164155
expect(names).not.toContain('copilot-vscode');
165156
expect(names).toContain('copilot');
166-
// 'amazonq-cli' is an alias for 'kiro'
167-
expect(names).not.toContain('amazonq-cli');
168157
expect(names).toContain('kiro');
169158
});
170159
});
@@ -186,7 +175,7 @@ describe('GeneratorRegistry', () => {
186175
}
187176

188177
// Check for key descriptions
189-
expect(helpText).toContain('.amazonq/cli-agents/vibe.json');
178+
expect(helpText).toContain('.kiro/agents/vibe.json');
190179
expect(helpText).toContain('CLAUDE.md');
191180
expect(helpText).toContain('GEMINI.md');
192181
expect(helpText).toContain('opencode.json');
@@ -219,9 +208,8 @@ describe('GeneratorRegistry', () => {
219208
expect(GeneratorRegistry.exists('vscode')).toBe(true);
220209
expect(GeneratorRegistry.exists('copilot-vscode')).toBe(true);
221210
expect(GeneratorRegistry.exists('copilot')).toBe(true);
222-
// 'amazonq-cli' and 'amazonq' are aliases for 'kiro'
223-
expect(GeneratorRegistry.exists('amazonq-cli')).toBe(true);
224-
expect(GeneratorRegistry.exists('amazonq')).toBe(true);
211+
// 'kiro-cli' is an alias for 'kiro'
212+
expect(GeneratorRegistry.exists('kiro-cli')).toBe(true);
225213
expect(GeneratorRegistry.exists('kiro')).toBe(true);
226214
});
227215

packages/cli/test/skill-generator.test.ts

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,7 @@ describe('Skill Generator', () => {
4040
expect(SkillGeneratorRegistry.exists('gemini-cli')).toBe(true);
4141
expect(SkillGeneratorRegistry.exists('github-copilot')).toBe(true);
4242
// kiro-cli aliases
43-
expect(SkillGeneratorRegistry.exists('amazonq')).toBe(true);
44-
expect(SkillGeneratorRegistry.exists('amazonq-cli')).toBe(true);
43+
expect(SkillGeneratorRegistry.exists('kiro-cli')).toBe(true);
4544
});
4645
});
4746

@@ -313,32 +312,6 @@ describe('Skill Generator', () => {
313312
'@codemcp/workflows-server@latest'
314313
);
315314
});
316-
317-
it('should work with amazonq alias', async () => {
318-
await generateSkill('amazonq', tempDir);
319-
320-
const skillPath = join(
321-
tempDir,
322-
'.kiro',
323-
'skills',
324-
'responsible-vibe',
325-
'SKILL.md'
326-
);
327-
expect(existsSync(skillPath)).toBe(true);
328-
});
329-
330-
it('should work with amazonq-cli alias', async () => {
331-
await generateSkill('amazonq-cli', tempDir);
332-
333-
const skillPath = join(
334-
tempDir,
335-
'.kiro',
336-
'skills',
337-
'responsible-vibe',
338-
'SKILL.md'
339-
);
340-
expect(existsSync(skillPath)).toBe(true);
341-
});
342315
});
343316

344317
describe('Error Handling', () => {

0 commit comments

Comments
 (0)