kiro-agents 1.9.1 → 1.10.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.
@@ -27,8 +27,10 @@ var __filename2 = fileURLToPath(import.meta.url);
27
27
  var __dirname2 = dirname(__filename2);
28
28
  var STEERING_INSTALL_DIR = join(homedir(), ".kiro", "steering", "kiro-agents");
29
29
  var POWER_INSTALL_DIR = join(homedir(), ".kiro", "powers", "kiro-protocols");
30
+ var POWER_INSTALLED_DIR = join(homedir(), ".kiro", "powers", "installed", "kiro-protocols");
30
31
  var REGISTRY_PATH = join(homedir(), ".kiro", "powers", "registry.json");
31
32
  var STEERING_FILES = [
33
+ "aliases.md",
32
34
  "strict-mode.md",
33
35
  "agents.md",
34
36
  "modes.md",
@@ -86,6 +88,31 @@ async function extractPowerMetadata(powerMdPath) {
86
88
  author: extractField(/^author:\s*["']?([^"'\n]+)["']?$/m, "")
87
89
  };
88
90
  }
91
+ async function createSymbolicLinks() {
92
+ const { readdir, mkdir, symlink, rm, stat } = await import("fs/promises");
93
+ const { platform } = await import("os");
94
+ if (existsSync(POWER_INSTALLED_DIR)) {
95
+ await rm(POWER_INSTALLED_DIR, { recursive: true, force: true });
96
+ }
97
+ await mkdir(POWER_INSTALLED_DIR, { recursive: true });
98
+ const entries = await readdir(POWER_INSTALL_DIR);
99
+ for (const entry of entries) {
100
+ const sourcePath = join(POWER_INSTALL_DIR, entry);
101
+ const targetPath = join(POWER_INSTALLED_DIR, entry);
102
+ try {
103
+ const stats = await stat(sourcePath);
104
+ const isDirectory = stats.isDirectory();
105
+ if (platform() === "win32") {
106
+ await symlink(sourcePath, targetPath, isDirectory ? "junction" : "file");
107
+ } else {
108
+ await symlink(sourcePath, targetPath);
109
+ }
110
+ console.log(`✅ Linked: ${entry}`);
111
+ } catch (error) {
112
+ console.warn(`⚠️ Could not link ${entry}:`, error instanceof Error ? error.message : error);
113
+ }
114
+ }
115
+ }
89
116
  async function registerPowerInRegistry() {
90
117
  const { readFile, writeFile, mkdir } = await import("fs/promises");
91
118
  const registryDir = dirname(REGISTRY_PATH);
@@ -104,7 +131,7 @@ async function registerPowerInRegistry() {
104
131
  }
105
132
  const powerMdPath = join(POWER_INSTALL_DIR, "POWER.md");
106
133
  const metadata = await extractPowerMetadata(powerMdPath);
107
- const repoId = `npx-kiro-agents-${Date.now()}`;
134
+ const repoId = "local-kiro-protocols";
108
135
  registry.powers[metadata.name] = {
109
136
  name: metadata.name,
110
137
  displayName: metadata.displayName,
@@ -114,16 +141,16 @@ async function registerPowerInRegistry() {
114
141
  keywords: metadata.keywords,
115
142
  installed: true,
116
143
  installedAt: new Date().toISOString(),
117
- installPath: POWER_INSTALL_DIR,
144
+ installPath: POWER_INSTALLED_DIR,
118
145
  source: {
119
- type: "local",
146
+ type: "repo",
120
147
  repoId,
121
- repoName: "npx kiro-agents"
148
+ repoName: POWER_INSTALL_DIR
122
149
  },
123
150
  sourcePath: POWER_INSTALL_DIR
124
151
  };
125
152
  registry.repoSources[repoId] = {
126
- name: "npx kiro-agents",
153
+ name: POWER_INSTALL_DIR,
127
154
  type: "local",
128
155
  enabled: true,
129
156
  addedAt: new Date().toISOString(),
@@ -132,7 +159,8 @@ async function registerPowerInRegistry() {
132
159
  powerCount: 1
133
160
  };
134
161
  registry.lastUpdated = new Date().toISOString();
135
- console.log("ℹ️ Registry data prepared (write disabled - manual activation required)");
162
+ await writeFile(REGISTRY_PATH, JSON.stringify(registry, null, 2), "utf-8");
163
+ console.log("✅ Power registered in Kiro registry");
136
164
  }
137
165
  async function installFile(relativePath, installDir, sourceDir) {
138
166
  const destPath = join(installDir, relativePath);
@@ -171,7 +199,15 @@ async function install() {
171
199
  await installFile(file, POWER_INSTALL_DIR, "power");
172
200
  }
173
201
  console.log(`
174
- \uD83D\uDCDD Registry registration (currently disabled)...`);
202
+ \uD83D\uDD17 Creating symbolic links in installed/ directory...`);
203
+ try {
204
+ await createSymbolicLinks();
205
+ } catch (error) {
206
+ console.warn("⚠️ Warning: Could not create symbolic links:", error instanceof Error ? error.message : error);
207
+ console.warn(" Power may not appear correctly in Kiro Powers UI.");
208
+ }
209
+ console.log(`
210
+ \uD83D\uDCDD Registering power in Kiro registry...`);
175
211
  try {
176
212
  await registerPowerInRegistry();
177
213
  } catch (error) {
@@ -185,14 +221,10 @@ async function install() {
185
221
  console.log(`
186
222
  \uD83D\uDCC1 Steering files: ${STEERING_INSTALL_DIR}`);
187
223
  console.log(`\uD83D\uDCC1 Power files: ${POWER_INSTALL_DIR}`);
224
+ console.log(`\uD83D\uDCC1 Installed links: ${POWER_INSTALLED_DIR}`);
188
225
  console.log(`
189
- \uD83D\uDCA1 To activate the kiro-protocols power:`);
190
- console.log(" 1. Open Kiro IDE Powers panel");
191
- console.log(" 2. Add Repository → Local Directory");
192
- console.log(` 3. Select: ${POWER_INSTALL_DIR}`);
193
- console.log(" 4. Install the power");
194
- console.log(`
195
- \uD83D\uDCA1 Files are set to read-only. To modify them, change permissions first.`);
226
+ \uD83D\uDCA1 The kiro-protocols power should now appear as installed in Kiro Powers UI.`);
227
+ console.log("\uD83D\uDCA1 Files are set to read-only. To modify them, change permissions first.");
196
228
  console.log(`
197
229
  \uD83D\uDD04 To update, simply run 'npx kiro-agents' again.`);
198
230
  }
@@ -2,24 +2,288 @@
2
2
 
3
3
  This file contains the detailed instructions for creating new agents. It is referenced during agent creation workflow in agent management mode.
4
4
 
5
- ## Agent Creation Steps
5
+ ## Creation Methods
6
6
 
7
- When creating a new agent:
7
+ When creating a new agent, offer multiple methods based on user experience level:
8
8
 
9
- ### Step 1: Initialize Creation Wizard
9
+ 1. **Quick Start** - Choose from predefined templates (fastest)
10
+ 2. **Project-Specific** - AI-suggested agents for current workspace
11
+ 3. **Explore Roles** - Browse agents by domain and role
12
+ 4. **Guided Wizard** - Step-by-step interactive creation (full control)
13
+ 5. **Natural Language** - Describe agent in plain English (most intuitive)
14
+
15
+ ## Method Selection
16
+
17
+ When user initiates agent creation:
18
+
19
+ ### Step 1: Present Creation Methods
10
20
 
11
21
  Use chit-chat mode for the creation process:
12
22
 
13
23
  ```diff
14
- 👉 Agent creation wizard
15
- Gathering agent information
24
+ 👉 Agent Creation
25
+ Choose creation method
26
+ ```
27
+
28
+ **How would you like to create your agent?**
29
+
30
+ 1. **Quick Start** - Choose from predefined agent templates
31
+ → Fastest, no configuration needed
32
+ → Best for: Common use cases, getting started quickly
33
+
34
+ 2. **Project-Specific** - AI suggests agents for your workspace
35
+ → Analyzes your project and recommends relevant agents
36
+ → Best for: Project-specific needs, contextual recommendations
37
+
38
+ 3. **Explore Roles** - Browse agents by domain and role
39
+ → Discover what's possible, organized by industry/function
40
+ → Best for: Exploring options, learning about agent types
41
+
42
+ 4. **Guided Wizard** - Step-by-step interactive creation
43
+ → Full control, guided process
44
+ → Best for: Custom agents, specific requirements
45
+
46
+ 5. **Natural Language** - Describe what you need
47
+ → "I need an agent that helps with React performance"
48
+ → Best for: Quick creation, intuitive interface
49
+
50
+ 6. **Cancel** - Exit without creating agent
51
+
52
+ **Choose a number (1-6):**
53
+
54
+ ### Step 2: Execute Selected Method
55
+
56
+ Based on user choice, execute the appropriate creation method:
57
+
58
+ ---
59
+
60
+ ## Method 1: Quick Start (Predefined Templates)
61
+
62
+ ### Step 2.1: Load Template List
63
+
64
+ Read predefined templates from embedded list:
65
+
66
+ **Predefined Agent Templates:**
67
+
68
+ 1. **Full-Stack Developer**
69
+ "Expert in complete web development stack including frontend (React, Vue), backend (Node.js, Python), databases (PostgreSQL, MongoDB), and deployment (Docker, CI/CD)."
70
+
71
+ 2. **Code Reviewer**
72
+ "Specialized in code review with focus on code quality, security vulnerabilities, performance issues, best practices, and maintainability. Provides constructive feedback with actionable suggestions."
73
+
74
+ 3. **API Architect**
75
+ "Expert in designing and implementing RESTful and GraphQL APIs with focus on scalability, security, documentation (OpenAPI), versioning, and best practices."
76
+
77
+ 4. **Frontend Specialist**
78
+ "Specialized in modern frontend development with React, TypeScript, state management, CSS/styling, accessibility (WCAG), and performance optimization (Core Web Vitals)."
79
+
80
+ 5. **DevOps Engineer**
81
+ "Expert in containerization (Docker), orchestration (Kubernetes), CI/CD pipelines (GitHub Actions, GitLab CI), infrastructure as code (Terraform), and monitoring (Prometheus, Grafana)."
82
+
83
+ 6. **Testing Specialist**
84
+ "Specialized in comprehensive testing strategies including unit tests (Jest, pytest), integration tests, E2E tests (Playwright, Cypress), test-driven development (TDD), and test automation."
85
+
86
+ 7. **Database Expert**
87
+ "Expert in database design, optimization, migrations, query performance, indexing strategies, and working with both SQL (PostgreSQL, MySQL) and NoSQL (MongoDB, Redis) databases."
88
+
89
+ 8. **Security Auditor**
90
+ "Specialized in application security with focus on OWASP Top 10, vulnerability assessment, secure coding practices, authentication/authorization, and security testing (SAST, DAST)."
91
+
92
+ 9. **Technical Writer**
93
+ "Expert in creating clear technical documentation including API references, user guides, tutorials, README files, architecture documentation, and maintaining documentation systems."
94
+
95
+ 10. **Performance Optimizer**
96
+ "Specialized in application performance optimization including profiling, bottleneck identification, caching strategies, database optimization, and frontend performance (bundle size, loading times)."
97
+
98
+ 11. **UI/UX Designer**
99
+ "Expert in user interface and experience design with focus on user research, wireframing, prototyping (Figma), design systems, accessibility, and usability testing."
100
+
101
+ 12. **Data Analyst**
102
+ "Specialized in data analysis, visualization (charts, dashboards), SQL queries, statistical analysis, reporting, and deriving actionable insights from data."
103
+
104
+ ### Step 2.2: Present Templates
105
+
106
+ ```diff
107
+ 👉 Agent Creation - Quick Start
108
+ ⏳ Choose template
109
+ ```
110
+
111
+ **Choose from predefined agent templates:**
112
+
113
+ [Display templates 1-12 with numbers]
114
+
115
+ **Type number to select template, or 'back' to choose different method:**
116
+
117
+ ### Step 2.3: Confirm and Customize
118
+
119
+ User selects template (e.g., "4" for Frontend Specialist).
120
+
121
+ ```diff
122
+ 👉 Agent Creation - Quick Start
123
+ ⏳ Customize template
124
+ ```
125
+
126
+ **Selected template:** Frontend Specialist
127
+
128
+ **Default name:** `frontend-specialist`
129
+ **Description:** "Specialized in modern frontend development with React, TypeScript, state management, CSS/styling, accessibility (WCAG), and performance optimization (Core Web Vitals)."
130
+
131
+ **Customize? (optional)**
132
+
133
+ 1. **Use as-is** - Create agent with default settings
134
+ 2. **Change name** - Customize agent name
135
+ 3. **Edit description** - Modify description
136
+ 4. **Back** - Choose different template
137
+
138
+ ### Step 2.4: Generate Agent
139
+
140
+ Use the template's description to generate complete agent definition following the standard agent structure (see Step 3 below).
141
+
142
+ ---
143
+
144
+ ## Method 2: Project-Specific (AI Analysis)
145
+
146
+ ### Step 2.1: Analyze Workspace
147
+
148
+ ```diff
149
+ 👉 Agent Creation - Project Analysis
150
+ ⏳ Analyzing your workspace...
151
+ ```
152
+
153
+ **Analyzing project structure and technologies...**
154
+
155
+ Execute analysis:
156
+ 1. Read `package.json`, `requirements.txt`, `Cargo.toml`, etc.
157
+ 2. Scan directory structure (src/, tests/, docs/, etc.)
158
+ 3. Identify frameworks and libraries
159
+ 4. Read README.md and documentation
160
+ 5. Check for CI/CD configs, Docker files, etc.
161
+
162
+ ### Step 2.2: Generate Recommendations
163
+
164
+ Based on analysis, generate 5-8 relevant agent suggestions.
165
+
166
+ ```diff
167
+ 👉 Agent Creation - Project Analysis
168
+ ⏳ Recommendations
169
+ ```
170
+
171
+ **Based on your project (React + TypeScript + Node.js + PostgreSQL):**
172
+
173
+ **Recommended agents:**
174
+
175
+ 1. ⭐ **React TypeScript Specialist**
176
+ "Expert in React with TypeScript, hooks, component patterns, and type-safe development."
177
+
178
+ 2. ⭐ **API Developer**
179
+ "Specialized in Node.js backend development, RESTful APIs, Express, and database integration."
180
+
181
+ 3. ⭐ **Database Expert**
182
+ "Expert in PostgreSQL schema design, query optimization, migrations, and ORMs."
183
+
184
+ 4. **Testing Engineer**
185
+ "Specialized in Jest, React Testing Library, and E2E testing with Playwright."
186
+
187
+ 5. **DevOps Engineer**
188
+ "Expert in Docker, CI/CD, and deployment automation for Node.js applications."
189
+
190
+ **Type number to select, or 'back' to choose different method:**
191
+
192
+ ### Step 2.3: Customize and Generate
193
+
194
+ Follow same customization flow as Quick Start (Step 2.3-2.4 above).
195
+
196
+ ---
197
+
198
+ ## Method 3: Explore Roles (Domain Browser)
199
+
200
+ ### Step 2.1: Present Domains
201
+
202
+ ```diff
203
+ 👉 Agent Creation - Explore Roles
204
+ ⏳ Choose domain
205
+ ```
206
+
207
+ **Explore agent roles by domain:**
208
+
209
+ 1. 💻 **Software Development**
210
+ Frontend, Backend, DevOps, Testing, Security
211
+
212
+ 2. 🎨 **Creative & Design**
213
+ UI/UX, Content Writing, Branding, Video Production
214
+
215
+ 3. 💼 **Business & Finance**
216
+ Marketing, Sales, Strategy, Finance, HR
217
+
218
+ 4. 🏥 **Healthcare & Medicine**
219
+ Clinical, Research, Administration, Public Health
220
+
221
+ 5. 🔬 **Science & Research**
222
+ Data Science, Research Methods, Lab Management
223
+
224
+ 6. ⚖️ **Legal & Compliance**
225
+ Legal Research, Contract Review, Compliance
226
+
227
+ 7. 🏗️ **Engineering & Architecture**
228
+ Civil, Mechanical, Electrical, Architecture
229
+
230
+ 8. 🌾 **Agriculture & Food**
231
+ Farming, Food Science, Culinary
232
+
233
+ [More domains available - type 'more' to see all]
234
+
235
+ **Type number to explore domain, or 'back' to choose different method:**
236
+
237
+ ### Step 2.2: Present Roles in Domain
238
+
239
+ User selects domain (e.g., "1" for Software Development).
240
+
241
+ ```diff
242
+ 👉 Agent Creation - Explore Roles
243
+ ⏳ Software Development roles
16
244
  ```
17
245
 
18
- **Current Focus**: Creating new agent
246
+ **Software Development agent roles:**
247
+
248
+ 1. **Frontend Developer**
249
+ "Expert in modern frontend: React, Vue, Angular, TypeScript, CSS, accessibility, performance."
250
+
251
+ 2. **Backend Developer**
252
+ "Specialized in server-side: APIs, databases, authentication, microservices, serverless."
253
+
254
+ 3. **Full-Stack Developer**
255
+ "Complete web development: frontend, backend, databases, deployment."
256
+
257
+ 4. **DevOps Engineer**
258
+ "Expert in: Docker, Kubernetes, CI/CD, infrastructure as code, monitoring."
259
+
260
+ 5. **Mobile Developer**
261
+ "Specialized in: React Native, Flutter, iOS (Swift), Android (Kotlin)."
262
+
263
+ 6. **QA/Testing Specialist**
264
+ "Expert in: test strategies, automation, unit/integration/E2E testing, TDD."
265
+
266
+ 7. **Security Engineer**
267
+ "Specialized in: application security, vulnerability assessment, secure coding, penetration testing."
268
+
269
+ 8. **Data Engineer**
270
+ "Expert in: data pipelines, ETL, data warehousing, big data technologies."
271
+
272
+ **Type number to select role, or 'back' to choose different domain:**
273
+
274
+ ### Step 2.3: Customize and Generate
275
+
276
+ Follow same customization flow as Quick Start (Step 2.3-2.4 above).
277
+
278
+ ---
279
+
280
+ ## Method 4: Guided Wizard (Current System)
281
+
282
+ ### Step 2.1: Agent Type Selection
19
283
 
20
- ### Step 2: Collect Agent Information
284
+ **Current system - full control over agent definition.**
21
285
 
22
- Guide user through agent definition with numbered choices:
286
+ Follow existing wizard steps (2.1 through 2.8 below).
23
287
 
24
288
  #### 2.1: Agent Type Selection
25
289
 
@@ -122,7 +386,90 @@ Example workflow:
122
386
  6. Verify tests pass
123
387
  7. Document changes
124
388
 
125
- ### Step 3: Generate Agent Definition File
389
+ ---
390
+
391
+ ## Method 5: Natural Language (AI Generation)
392
+
393
+ ### Step 2.1: Collect Description
394
+
395
+ ```diff
396
+ 👉 Agent Creation - Natural Language
397
+ ⏳ Describe your agent
398
+ ```
399
+
400
+ **Describe what you need in plain English:**
401
+
402
+ **Examples:**
403
+ - "I need help optimizing React performance"
404
+ - "An agent that reviews my Python code for security issues"
405
+ - "Someone who can help me write technical documentation"
406
+ - "Expert in PostgreSQL query optimization"
407
+ - "Help me with Docker and Kubernetes deployment"
408
+
409
+ **Your description:**
410
+
411
+ ### Step 2.2: Analyze and Generate Proposal
412
+
413
+ User provides description (e.g., "I need help optimizing React performance").
414
+
415
+ ```diff
416
+ 👉 Agent Creation - Natural Language
417
+ ⏳ Analyzing your request...
418
+ ```
419
+
420
+ **AI analyzes the description and extracts:**
421
+ - Agent type (specialist/generalist/coordinator)
422
+ - Primary domain and focus area
423
+ - Key capabilities needed
424
+ - Suggested name
425
+ - Generated description
426
+
427
+ **Present proposal:**
428
+
429
+ ```diff
430
+ 👉 Agent Creation - Natural Language
431
+ ⏳ Review proposal
432
+ ```
433
+
434
+ **I understand you need:**
435
+
436
+ **Agent Type:** Specialist
437
+ **Primary Domain:** Software Development → Frontend
438
+ **Focus Area:** React Performance Optimization
439
+
440
+ **Suggested Capabilities:**
441
+ - React profiling and debugging (React DevTools, Profiler API)
442
+ - Performance optimization techniques (memoization, lazy loading)
443
+ - Bundle size optimization (code splitting, tree shaking)
444
+ - Rendering performance (virtual DOM, reconciliation)
445
+ - Core Web Vitals improvement (LCP, FID, CLS)
446
+ - Memory leak detection and prevention
447
+
448
+ **Suggested Name:** `react-performance-optimizer`
449
+
450
+ **Generated Description:**
451
+ "Specialized in React performance optimization with expertise in profiling, bundle optimization, rendering performance, and Core Web Vitals improvement. Helps identify bottlenecks and implement performance best practices."
452
+
453
+ **Does this match what you need?**
454
+
455
+ 1. **Yes, create it** - Generate agent with these capabilities
456
+ 2. **Modify name** - Change agent name
457
+ 3. **Modify description** - Edit description
458
+ 4. **Add more details** - Provide additional context to refine
459
+ 5. **Start over** - Try different description
460
+ 6. **Back** - Choose different creation method
461
+
462
+ ### Step 2.3: Refine if Needed
463
+
464
+ If user chooses to modify or add details, iterate on the proposal.
465
+
466
+ ### Step 2.4: Generate Agent
467
+
468
+ Once confirmed, generate complete agent definition using the AI-analyzed capabilities and description.
469
+
470
+ ---
471
+
472
+ ## Step 3: Generate Agent Definition File
126
473
 
127
474
  Create `.kiro/agents/{agent-name}.md` with this structure:
128
475
 
@@ -88,11 +88,15 @@ Based on user selection:
88
88
  - **Load agent creation protocol**:
89
89
  - Call `kiroPowers` with action="activate", powerName="kiro-protocols"
90
90
  - Call `kiroPowers` with action="readSteering", powerName="kiro-protocols", steeringFile="agent-creation.md"
91
- - Follow all steps from the "Agent Creation Steps" section in agent-creation.md
92
- - Start agent creation workflow with interactive wizard
93
- - Ask for agent type (code-focused, documentation, testing, etc.)
94
- - Collect agent name, description, capabilities
95
- - Generate `.md` file with all agent definition following protocol structure
91
+ - Follow all steps from the "Method Selection" section in agent-creation.md
92
+ - Present 5 creation methods to user:
93
+ 1. Quick Start (predefined templates)
94
+ 2. Project-Specific (AI analysis)
95
+ 3. Explore Roles (domain browser)
96
+ 4. Guided Wizard (step-by-step)
97
+ 5. Natural Language (describe in plain English)
98
+ - Execute selected method following protocol
99
+ - Generate `.md` file with complete agent definition
96
100
  - Validate agent definition per protocol
97
101
  - Offer to activate new agent
98
102
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiro-agents",
3
- "version": "1.9.1",
3
+ "version": "1.10.1",
4
4
  "description": "Advanced AI agent system for Kiro IDE - Create specialized AI agents, switch interaction modes, and enhance development workflows with minimal cognitive overhead",
5
5
  "homepage": "https://github.com/Theadd/kiro-agents#readme",
6
6
  "repository": {