specweave 0.23.16 → 0.23.18
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/.claude-plugin/marketplace.json +11 -0
- package/CLAUDE.md +22 -7
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.js +57 -0
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.js.map +1 -1
- package/dist/src/cli/commands/sync-spec-content.js +3 -0
- package/dist/src/cli/commands/sync-spec-content.js.map +1 -1
- package/dist/src/core/progress/progress-tracker.d.ts +4 -1
- package/dist/src/core/progress/progress-tracker.d.ts.map +1 -1
- package/dist/src/core/progress/progress-tracker.js +33 -4
- package/dist/src/core/progress/progress-tracker.js.map +1 -1
- package/dist/src/core/spec-content-sync.d.ts +1 -1
- package/dist/src/core/spec-content-sync.d.ts.map +1 -1
- package/dist/src/integrations/ado/ado-dependency-loader.d.ts +1 -1
- package/dist/src/integrations/ado/ado-dependency-loader.d.ts.map +1 -1
- package/dist/src/integrations/ado/ado-dependency-loader.js +39 -7
- package/dist/src/integrations/ado/ado-dependency-loader.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/hooks/lib/migrate-increment-work.sh +1 -1
- package/plugins/specweave/hooks/lib/migrate-increment-work.sh.bak +245 -0
- package/plugins/specweave/hooks/lib/sync-spec-content.sh +2 -2
- package/plugins/specweave/hooks/lib/sync-spec-content.sh.bak +149 -0
- package/plugins/specweave/hooks/lib/update-status-line.sh +34 -4
- package/plugins/specweave/hooks/lib/validate-spec-status.sh +1 -1
- package/plugins/specweave/hooks/lib/validate-spec-status.sh.bak +163 -0
- package/plugins/specweave/hooks/post-first-increment.sh +1 -1
- package/plugins/specweave/hooks/post-first-increment.sh.bak +61 -0
- package/plugins/specweave/hooks/post-spec-update.sh +1 -1
- package/plugins/specweave/hooks/post-spec-update.sh.bak +158 -0
- package/plugins/specweave/hooks/post-user-story-complete.sh +1 -1
- package/plugins/specweave/hooks/post-user-story-complete.sh.bak +179 -0
- package/plugins/specweave/hooks/pre-command-deduplication.sh +1 -1
- package/plugins/specweave/hooks/pre-command-deduplication.sh.bak +83 -0
- package/plugins/specweave/hooks/user-prompt-submit.sh +1 -1
- package/plugins/specweave/hooks/user-prompt-submit.sh.bak +386 -0
- package/plugins/specweave/skills/specweave-framework/SKILL.md +1 -1
- package/plugins/specweave-ado/agents/ado-manager/AGENT.md +23 -0
- package/plugins/specweave-ado/agents/ado-multi-project-mapper/AGENT.md +23 -0
- package/plugins/specweave-ado/agents/ado-sync-judge/AGENT.md +23 -0
- package/plugins/specweave-backend/agents/database-optimizer/AGENT.md +23 -0
- package/plugins/specweave-confluent/agents/confluent-architect/AGENT.md +23 -0
- package/plugins/specweave-diagrams/agents/diagrams-architect/AGENT.md +23 -0
- package/plugins/specweave-github/agents/github-manager/AGENT.md +23 -0
- package/plugins/specweave-github/agents/github-task-splitter/AGENT.md +25 -0
- package/plugins/specweave-github/agents/user-story-updater/AGENT.md +25 -0
- package/plugins/specweave-github/lib/github-spec-content-sync.js +49 -0
- package/plugins/specweave-github/lib/github-spec-content-sync.ts +67 -0
- package/plugins/specweave-infrastructure/agents/devops/AGENT.md +26 -0
- package/plugins/specweave-infrastructure/agents/network-engineer/AGENT.md +26 -0
- package/plugins/specweave-infrastructure/agents/observability-engineer/AGENT.md +26 -0
- package/plugins/specweave-infrastructure/agents/performance-engineer/AGENT.md +26 -0
- package/plugins/specweave-infrastructure/agents/sre/AGENT.md +26 -0
- package/plugins/specweave-jira/agents/jira-manager/AGENT.md +26 -0
- package/plugins/specweave-kafka/agents/kafka-architect/AGENT.md +26 -0
- package/plugins/specweave-kafka/agents/kafka-devops/AGENT.md +26 -0
- package/plugins/specweave-kafka/agents/kafka-observability/AGENT.md +26 -0
- package/plugins/specweave-kubernetes/agents/kubernetes-architect/AGENT.md +26 -0
- package/plugins/specweave-ml/.claude-plugin/plugin.json +2 -2
- package/plugins/specweave-ml/agents/data-scientist/AGENT.md +26 -0
- package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +26 -0
- package/plugins/specweave-ml/agents/mlops-engineer/AGENT.md +26 -0
- package/plugins/specweave-mobile/agents/mobile-architect/AGENT.md +26 -0
- package/plugins/specweave-payments/agents/payment-integration/AGENT.md +26 -0
- package/plugins/specweave-plugin-dev/.claude-plugin/plugin.json +19 -0
- package/plugins/specweave-plugin-dev/skills/plugin-expert/SKILL.md +1231 -0
- package/plugins/specweave-release/agents/release-manager/AGENT.md +27 -0
- package/plugins/specweave/skills/plugin-expert/SKILL.md +0 -340
|
@@ -85,6 +85,17 @@ async function syncSpecContentToGitHub(options) {
|
|
|
85
85
|
async function createGitHubIssue(client, spec, options) {
|
|
86
86
|
const { specPath, dryRun, verbose } = options;
|
|
87
87
|
try {
|
|
88
|
+
const permissions = await loadSyncPermissions(specPath);
|
|
89
|
+
if (!permissions.canCreate) {
|
|
90
|
+
if (verbose) {
|
|
91
|
+
console.log(" \u26A0\uFE0F Skipping create - canUpsertInternalItems is disabled in config");
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
success: false,
|
|
95
|
+
action: "skipped",
|
|
96
|
+
error: "canUpsertInternalItems is disabled in .specweave/config.json"
|
|
97
|
+
};
|
|
98
|
+
}
|
|
88
99
|
const titleId = spec.project === "_features" ? spec.identifier.display : spec.identifier.compact;
|
|
89
100
|
const title = `[${titleId}] ${spec.title}`;
|
|
90
101
|
const body = buildExternalDescription(spec);
|
|
@@ -141,6 +152,17 @@ ${body}`);
|
|
|
141
152
|
async function updateGitHubIssue(client, spec, issueNumber, options) {
|
|
142
153
|
const { specPath, dryRun, verbose } = options;
|
|
143
154
|
try {
|
|
155
|
+
const permissions = await loadSyncPermissions(specPath);
|
|
156
|
+
if (!permissions.canUpdate) {
|
|
157
|
+
if (verbose) {
|
|
158
|
+
console.log(" \u26A0\uFE0F Skipping update - canUpdateExternalItems is disabled in config");
|
|
159
|
+
}
|
|
160
|
+
return {
|
|
161
|
+
success: false,
|
|
162
|
+
action: "skipped",
|
|
163
|
+
error: "canUpdateExternalItems is disabled in .specweave/config.json"
|
|
164
|
+
};
|
|
165
|
+
}
|
|
144
166
|
const issue = await client.getIssue(issueNumber);
|
|
145
167
|
if (verbose) {
|
|
146
168
|
console.log(`
|
|
@@ -234,6 +256,33 @@ function countUserStoriesInBody(body) {
|
|
|
234
256
|
const matches = body.match(/###\s+US-\d+:/g);
|
|
235
257
|
return matches ? matches.length : 0;
|
|
236
258
|
}
|
|
259
|
+
async function loadSyncPermissions(specPath) {
|
|
260
|
+
try {
|
|
261
|
+
let currentDir = path.dirname(specPath);
|
|
262
|
+
let configPath = path.join(currentDir, ".specweave", "config.json");
|
|
263
|
+
while (!await fs.access(configPath).then(() => true).catch(() => false)) {
|
|
264
|
+
const parentDir = path.dirname(currentDir);
|
|
265
|
+
if (parentDir === currentDir) {
|
|
266
|
+
return { canCreate: true, canUpdate: true, canUpdateStatus: true };
|
|
267
|
+
}
|
|
268
|
+
currentDir = parentDir;
|
|
269
|
+
configPath = path.join(currentDir, ".specweave", "config.json");
|
|
270
|
+
}
|
|
271
|
+
const configContent = await fs.readFile(configPath, "utf-8");
|
|
272
|
+
const config = JSON.parse(configContent);
|
|
273
|
+
const settings = config.sync?.settings || {};
|
|
274
|
+
return {
|
|
275
|
+
canCreate: settings.canUpsertInternalItems !== false,
|
|
276
|
+
// Default: true
|
|
277
|
+
canUpdate: settings.canUpdateExternalItems !== false,
|
|
278
|
+
// Default: true
|
|
279
|
+
canUpdateStatus: settings.canUpdateStatus !== false
|
|
280
|
+
// Default: true
|
|
281
|
+
};
|
|
282
|
+
} catch {
|
|
283
|
+
return { canCreate: true, canUpdate: true, canUpdateStatus: true };
|
|
284
|
+
}
|
|
285
|
+
}
|
|
237
286
|
async function isContentSyncEnabled(projectRoot) {
|
|
238
287
|
try {
|
|
239
288
|
const configPath = path.join(projectRoot, ".specweave", "config.json");
|
|
@@ -153,6 +153,19 @@ async function createGitHubIssue(
|
|
|
153
153
|
const { specPath, dryRun, verbose } = options;
|
|
154
154
|
|
|
155
155
|
try {
|
|
156
|
+
// Check permission: canUpsertInternalItems (CREATE permission)
|
|
157
|
+
const permissions = await loadSyncPermissions(specPath);
|
|
158
|
+
if (!permissions.canCreate) {
|
|
159
|
+
if (verbose) {
|
|
160
|
+
console.log(' ⚠️ Skipping create - canUpsertInternalItems is disabled in config');
|
|
161
|
+
}
|
|
162
|
+
return {
|
|
163
|
+
success: false,
|
|
164
|
+
action: 'skipped',
|
|
165
|
+
error: 'canUpsertInternalItems is disabled in .specweave/config.json',
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
|
|
156
169
|
// Build issue title and body using compact format
|
|
157
170
|
// Examples: [BE-JIRA-AUTH-123] User Authentication, [FE-user-login-ui] Login UI
|
|
158
171
|
// Use display ID for cleaner titles (FS-043 instead of _F-FS-043)
|
|
@@ -234,6 +247,19 @@ async function updateGitHubIssue(
|
|
|
234
247
|
const { specPath, dryRun, verbose } = options;
|
|
235
248
|
|
|
236
249
|
try {
|
|
250
|
+
// Check permission: canUpdateExternalItems (UPDATE permission)
|
|
251
|
+
const permissions = await loadSyncPermissions(specPath);
|
|
252
|
+
if (!permissions.canUpdate) {
|
|
253
|
+
if (verbose) {
|
|
254
|
+
console.log(' ⚠️ Skipping update - canUpdateExternalItems is disabled in config');
|
|
255
|
+
}
|
|
256
|
+
return {
|
|
257
|
+
success: false,
|
|
258
|
+
action: 'skipped',
|
|
259
|
+
error: 'canUpdateExternalItems is disabled in .specweave/config.json',
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
|
|
237
263
|
// Get current issue
|
|
238
264
|
const issue = await client.getIssue(issueNumber);
|
|
239
265
|
|
|
@@ -383,6 +409,47 @@ function countUserStoriesInBody(body: string): number {
|
|
|
383
409
|
return matches ? matches.length : 0;
|
|
384
410
|
}
|
|
385
411
|
|
|
412
|
+
/**
|
|
413
|
+
* Load sync permissions from config
|
|
414
|
+
*/
|
|
415
|
+
async function loadSyncPermissions(specPath: string): Promise<{
|
|
416
|
+
canCreate: boolean;
|
|
417
|
+
canUpdate: boolean;
|
|
418
|
+
canUpdateStatus: boolean;
|
|
419
|
+
}> {
|
|
420
|
+
try {
|
|
421
|
+
// Find project root
|
|
422
|
+
let currentDir = path.dirname(specPath);
|
|
423
|
+
let configPath = path.join(currentDir, '.specweave', 'config.json');
|
|
424
|
+
|
|
425
|
+
// Search upward for .specweave/config.json
|
|
426
|
+
while (!await fs.access(configPath).then(() => true).catch(() => false)) {
|
|
427
|
+
const parentDir = path.dirname(currentDir);
|
|
428
|
+
if (parentDir === currentDir) {
|
|
429
|
+
// Default: all enabled
|
|
430
|
+
return { canCreate: true, canUpdate: true, canUpdateStatus: true };
|
|
431
|
+
}
|
|
432
|
+
currentDir = parentDir;
|
|
433
|
+
configPath = path.join(currentDir, '.specweave', 'config.json');
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
// Read config
|
|
437
|
+
const configContent = await fs.readFile(configPath, 'utf-8');
|
|
438
|
+
const config = JSON.parse(configContent);
|
|
439
|
+
|
|
440
|
+
const settings = config.sync?.settings || {};
|
|
441
|
+
|
|
442
|
+
return {
|
|
443
|
+
canCreate: settings.canUpsertInternalItems !== false, // Default: true
|
|
444
|
+
canUpdate: settings.canUpdateExternalItems !== false, // Default: true
|
|
445
|
+
canUpdateStatus: settings.canUpdateStatus !== false // Default: true
|
|
446
|
+
};
|
|
447
|
+
} catch {
|
|
448
|
+
// Default: all enabled
|
|
449
|
+
return { canCreate: true, canUpdate: true, canUpdateStatus: true };
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
|
|
386
453
|
/**
|
|
387
454
|
* Check if spec content sync is enabled
|
|
388
455
|
*/
|
|
@@ -10,6 +10,32 @@ fallback_behavior: flexible
|
|
|
10
10
|
|
|
11
11
|
# DevOps Agent - Infrastructure & Deployment Expert
|
|
12
12
|
|
|
13
|
+
## 🚀 How to Invoke This Agent
|
|
14
|
+
|
|
15
|
+
**Subagent Type**: `specweave-infrastructure:devops:devops`
|
|
16
|
+
|
|
17
|
+
**Usage Example**:
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
Task({
|
|
21
|
+
subagent_type: "specweave-infrastructure:devops:devops",
|
|
22
|
+
prompt: "Deploy application to AWS ECS Fargate with Terraform and configure CI/CD pipeline with GitHub Actions",
|
|
23
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
24
|
+
});
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
28
|
+
- **Plugin**: specweave-infrastructure
|
|
29
|
+
- **Directory**: devops
|
|
30
|
+
- **Agent Name**: devops
|
|
31
|
+
|
|
32
|
+
**When to Use**:
|
|
33
|
+
- You need to design and implement cloud infrastructure (AWS, Azure, GCP)
|
|
34
|
+
- You want to create Infrastructure as Code with Terraform or CloudFormation
|
|
35
|
+
- You need to set up CI/CD pipelines for automated deployment
|
|
36
|
+
- You're deploying containerized applications to Kubernetes or Docker Compose
|
|
37
|
+
- You need to implement monitoring, logging, and observability infrastructure
|
|
38
|
+
|
|
13
39
|
## Purpose
|
|
14
40
|
|
|
15
41
|
The devops-agent is SpecWeave's **infrastructure and deployment specialist** that:
|
|
@@ -9,6 +9,32 @@ fallback_behavior: flexible
|
|
|
9
9
|
|
|
10
10
|
You are a network engineer specializing in modern cloud networking, security, and performance optimization.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-infrastructure:network-engineer:network-engineer`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-infrastructure:network-engineer:network-engineer",
|
|
21
|
+
prompt: "Design secure multi-cloud network architecture with zero-trust connectivity and service mesh",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-infrastructure
|
|
28
|
+
- **Directory**: network-engineer
|
|
29
|
+
- **Agent Name**: network-engineer
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You need to design cloud networking architectures (VPCs, subnets, routing)
|
|
33
|
+
- You want to implement zero-trust security and network policies
|
|
34
|
+
- You need to configure load balancing, DNS, and SSL/TLS
|
|
35
|
+
- You're troubleshooting connectivity issues or performance problems
|
|
36
|
+
- You need to set up service mesh or advanced networking topologies
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert network engineer with comprehensive knowledge of cloud networking, modern protocols, security architectures, and performance optimization. Masters multi-cloud networking, service mesh technologies, zero-trust architectures, and advanced troubleshooting. Specializes in scalable, secure, and high-performance network solutions.
|
|
14
40
|
|
|
@@ -9,6 +9,32 @@ fallback_behavior: flexible
|
|
|
9
9
|
|
|
10
10
|
You are an observability engineer specializing in production-grade monitoring, logging, tracing, and reliability systems for enterprise-scale applications.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-infrastructure:observability-engineer:observability-engineer`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-infrastructure:observability-engineer:observability-engineer",
|
|
21
|
+
prompt: "Design comprehensive monitoring stack with Prometheus, Grafana, and OpenTelemetry for microservices with SLI/SLO tracking",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-infrastructure
|
|
28
|
+
- **Directory**: observability-engineer
|
|
29
|
+
- **Agent Name**: observability-engineer
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You need to design monitoring and observability architecture
|
|
33
|
+
- You want to set up distributed tracing for microservices
|
|
34
|
+
- You need to configure alerting and SLO tracking
|
|
35
|
+
- You're troubleshooting performance issues or anomalies
|
|
36
|
+
- You want to implement comprehensive log aggregation and analysis
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert observability engineer specializing in comprehensive monitoring strategies, distributed tracing, and production reliability systems. Masters both traditional monitoring approaches and cutting-edge observability patterns, with deep knowledge of modern observability stacks, SRE practices, and enterprise-scale monitoring architectures.
|
|
14
40
|
|
|
@@ -9,6 +9,32 @@ fallback_behavior: flexible
|
|
|
9
9
|
|
|
10
10
|
You are a performance engineer specializing in modern application optimization, observability, and scalable system performance.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-infrastructure:performance-engineer:performance-engineer`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-infrastructure:performance-engineer:performance-engineer",
|
|
21
|
+
prompt: "Analyze and optimize API performance with distributed tracing, implement multi-tier caching, and load testing",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-infrastructure
|
|
28
|
+
- **Directory**: performance-engineer
|
|
29
|
+
- **Agent Name**: performance-engineer
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You need to profile and optimize application performance
|
|
33
|
+
- You want to implement caching strategies across layers
|
|
34
|
+
- You need to conduct load testing and capacity planning
|
|
35
|
+
- You're optimizing database queries or API response times
|
|
36
|
+
- You want to improve Core Web Vitals or frontend performance
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert performance engineer with comprehensive knowledge of modern observability, application profiling, and system optimization. Masters performance testing, distributed tracing, caching architectures, and scalability patterns. Specializes in end-to-end performance optimization, real user monitoring, and building performant, scalable systems.
|
|
14
40
|
|
|
@@ -10,6 +10,32 @@ fallback_behavior: auto
|
|
|
10
10
|
|
|
11
11
|
# SRE Agent - Site Reliability Engineering Expert
|
|
12
12
|
|
|
13
|
+
## 🚀 How to Invoke This Agent
|
|
14
|
+
|
|
15
|
+
**Subagent Type**: `specweave-infrastructure:sre:sre`
|
|
16
|
+
|
|
17
|
+
**Usage Example**:
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
Task({
|
|
21
|
+
subagent_type: "specweave-infrastructure:sre:sre",
|
|
22
|
+
prompt: "Diagnose why dashboard loading is slow (10 seconds) and provide immediate and long-term mitigation plans",
|
|
23
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
24
|
+
});
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
28
|
+
- **Plugin**: specweave-infrastructure
|
|
29
|
+
- **Directory**: sre
|
|
30
|
+
- **Agent Name**: sre
|
|
31
|
+
|
|
32
|
+
**When to Use**:
|
|
33
|
+
- You have an active production incident and need rapid diagnosis
|
|
34
|
+
- You need to analyze root causes of system failures
|
|
35
|
+
- You want to create runbooks for recurring issues
|
|
36
|
+
- You need to write post-mortems after incidents
|
|
37
|
+
- You're troubleshooting performance, availability, or reliability issues
|
|
38
|
+
|
|
13
39
|
**Purpose**: Holistic incident response, root cause analysis, and production system reliability.
|
|
14
40
|
|
|
15
41
|
## Core Capabilities
|
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# Jira Manager Agent
|
|
2
2
|
|
|
3
|
+
## 🚀 How to Invoke This Agent
|
|
4
|
+
|
|
5
|
+
**Subagent Type**: `specweave-jira:jira-manager:jira-manager`
|
|
6
|
+
|
|
7
|
+
**Usage Example**:
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
Task({
|
|
11
|
+
subagent_type: "specweave-jira:jira-manager:jira-manager",
|
|
12
|
+
prompt: "Create Jira epic for increment 0005 and sync all tasks from spec.md and tasks.md",
|
|
13
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
14
|
+
});
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
18
|
+
- **Plugin**: specweave-jira
|
|
19
|
+
- **Directory**: jira-manager
|
|
20
|
+
- **Agent Name**: jira-manager
|
|
21
|
+
|
|
22
|
+
**When to Use**:
|
|
23
|
+
- You need to sync SpecWeave increments to Jira epics
|
|
24
|
+
- You want bidirectional synchronization between SpecWeave and Jira
|
|
25
|
+
- You need to update Jira issues with task completion status
|
|
26
|
+
- You're creating Jira stories from SpecWeave specifications
|
|
27
|
+
- You need to manage cross-system consistency between SpecWeave and Jira
|
|
28
|
+
|
|
3
29
|
**Role**: Jira integration specialist for SpecWeave increments
|
|
4
30
|
|
|
5
31
|
**Expertise**: Jira REST API, Epic/Story/Task management, JQL, automation, webhooks, custom fields
|
|
@@ -5,6 +5,32 @@ description: Kafka architecture and design specialist. Expert in system design,
|
|
|
5
5
|
|
|
6
6
|
# Kafka Architect Agent
|
|
7
7
|
|
|
8
|
+
## 🚀 How to Invoke This Agent
|
|
9
|
+
|
|
10
|
+
**Subagent Type**: `specweave-kafka:kafka-architect:kafka-architect`
|
|
11
|
+
|
|
12
|
+
**Usage Example**:
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
Task({
|
|
16
|
+
subagent_type: "specweave-kafka:kafka-architect:kafka-architect",
|
|
17
|
+
prompt: "Design event-driven architecture for e-commerce with Kafka microservices and CQRS pattern",
|
|
18
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
19
|
+
});
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
23
|
+
- **Plugin**: specweave-kafka
|
|
24
|
+
- **Directory**: kafka-architect
|
|
25
|
+
- **Agent Name**: kafka-architect
|
|
26
|
+
|
|
27
|
+
**When to Use**:
|
|
28
|
+
- You're designing Kafka infrastructure for event-driven systems
|
|
29
|
+
- You need guidance on partition strategy and topic design
|
|
30
|
+
- You want to implement event sourcing or CQRS patterns
|
|
31
|
+
- You're planning capacity for a Kafka cluster
|
|
32
|
+
- You need to design scalable real-time data pipelines
|
|
33
|
+
|
|
8
34
|
I'm a specialized architecture agent with deep expertise in designing scalable, reliable, and performant Apache Kafka systems.
|
|
9
35
|
|
|
10
36
|
## My Expertise
|
|
@@ -5,6 +5,32 @@ description: Kafka DevOps and SRE specialist. Expert in infrastructure deploymen
|
|
|
5
5
|
|
|
6
6
|
# Kafka DevOps Agent
|
|
7
7
|
|
|
8
|
+
## 🚀 How to Invoke This Agent
|
|
9
|
+
|
|
10
|
+
**Subagent Type**: `specweave-kafka:kafka-devops:kafka-devops`
|
|
11
|
+
|
|
12
|
+
**Usage Example**:
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
Task({
|
|
16
|
+
subagent_type: "specweave-kafka:kafka-devops:kafka-devops",
|
|
17
|
+
prompt: "Deploy production Kafka cluster on AWS with Terraform, configure monitoring with Prometheus and Grafana",
|
|
18
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
19
|
+
});
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
23
|
+
- **Plugin**: specweave-kafka
|
|
24
|
+
- **Directory**: kafka-devops
|
|
25
|
+
- **Agent Name**: kafka-devops
|
|
26
|
+
|
|
27
|
+
**When to Use**:
|
|
28
|
+
- You need to deploy and manage Kafka infrastructure
|
|
29
|
+
- You want to set up CI/CD pipelines for Kafka upgrades
|
|
30
|
+
- You're configuring Kafka cluster monitoring and alerting
|
|
31
|
+
- You have operational issues or need incident response
|
|
32
|
+
- You need to implement disaster recovery and backup strategies
|
|
33
|
+
|
|
8
34
|
I'm a specialized DevOps/SRE agent with deep expertise in Apache Kafka operations, deployment automation, and production reliability.
|
|
9
35
|
|
|
10
36
|
## My Expertise
|
|
@@ -5,6 +5,32 @@ description: Kafka observability and monitoring specialist. Expert in Prometheus
|
|
|
5
5
|
|
|
6
6
|
# Kafka Observability Agent
|
|
7
7
|
|
|
8
|
+
## 🚀 How to Invoke This Agent
|
|
9
|
+
|
|
10
|
+
**Subagent Type**: `specweave-kafka:kafka-observability:kafka-observability`
|
|
11
|
+
|
|
12
|
+
**Usage Example**:
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
Task({
|
|
16
|
+
subagent_type: "specweave-kafka:kafka-observability:kafka-observability",
|
|
17
|
+
prompt: "Set up Kafka monitoring with Prometheus JMX exporter and create Grafana dashboards with alerting rules",
|
|
18
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
19
|
+
});
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
23
|
+
- **Plugin**: specweave-kafka
|
|
24
|
+
- **Directory**: kafka-observability
|
|
25
|
+
- **Agent Name**: kafka-observability
|
|
26
|
+
|
|
27
|
+
**When to Use**:
|
|
28
|
+
- You need to set up monitoring for Kafka clusters
|
|
29
|
+
- You want to configure alerting for critical Kafka metrics
|
|
30
|
+
- You're troubleshooting high latency, consumer lag, or performance issues
|
|
31
|
+
- You need to analyze Kafka performance bottlenecks
|
|
32
|
+
- You're implementing SLOs for Kafka availability and latency
|
|
33
|
+
|
|
8
34
|
I'm a specialized observability agent with deep expertise in monitoring, alerting, and troubleshooting Apache Kafka in production.
|
|
9
35
|
|
|
10
36
|
## My Expertise
|
|
@@ -9,6 +9,32 @@ fallback_behavior: strict
|
|
|
9
9
|
|
|
10
10
|
You are a Kubernetes architect specializing in cloud-native infrastructure, modern GitOps workflows, and enterprise container orchestration at scale.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-kubernetes:kubernetes-architect:kubernetes-architect`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-kubernetes:kubernetes-architect:kubernetes-architect",
|
|
21
|
+
prompt: "Design multi-cluster Kubernetes platform with GitOps using ArgoCD and progressive delivery with Argo Rollouts",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-kubernetes
|
|
28
|
+
- **Directory**: kubernetes-architect
|
|
29
|
+
- **Agent Name**: kubernetes-architect
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You're designing Kubernetes clusters and container orchestration platforms
|
|
33
|
+
- You need to implement GitOps workflows with ArgoCD or Flux
|
|
34
|
+
- You want to set up service mesh (Istio, Linkerd) for microservices
|
|
35
|
+
- You're planning progressive delivery and canary deployments
|
|
36
|
+
- You need to design multi-tenancy and resource isolation strategies
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert Kubernetes architect with comprehensive knowledge of container orchestration, cloud-native technologies, and modern GitOps practices. Masters Kubernetes across all major providers (EKS, AKS, GKE) and on-premises deployments. Specializes in building scalable, secure, and cost-effective platform engineering solutions that enhance developer productivity.
|
|
14
40
|
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
"version": "0.22.14",
|
|
4
4
|
"description": "Complete ML/AI workflow integration for SpecWeave - from experiment tracking to production deployment. Includes 13 comprehensive skills covering the full ML lifecycle: pipeline orchestration, experiment tracking, model evaluation, explainability, deployment, feature engineering, AutoML, computer vision, NLP, time series forecasting, anomaly detection, data visualization, and model registry.",
|
|
5
5
|
"author": {
|
|
6
|
-
"name": "
|
|
7
|
-
"email": "
|
|
6
|
+
"name": "Anton Abyzov",
|
|
7
|
+
"email": "anton.abyzov@gmail.com",
|
|
8
8
|
"url": "https://spec-weave.com"
|
|
9
9
|
},
|
|
10
10
|
"homepage": "https://spec-weave.com",
|
|
@@ -9,6 +9,32 @@ fallback_behavior: strict
|
|
|
9
9
|
|
|
10
10
|
You are a data scientist specializing in advanced analytics, machine learning, statistical modeling, and data-driven business insights.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-ml:data-scientist:data-scientist`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-ml:data-scientist:data-scientist",
|
|
21
|
+
prompt: "Analyze customer churn patterns and build predictive model to identify at-risk customers",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-ml
|
|
28
|
+
- **Directory**: data-scientist
|
|
29
|
+
- **Agent Name**: data-scientist
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You need to perform exploratory data analysis and statistical analysis
|
|
33
|
+
- You want to build machine learning models for prediction or classification
|
|
34
|
+
- You need to design A/B tests or experiments
|
|
35
|
+
- You want to create data visualizations and dashboards
|
|
36
|
+
- You need actionable insights from complex data
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert data scientist combining strong statistical foundations with modern machine learning techniques and business acumen. Masters the complete data science workflow from exploratory data analysis to production model deployment, with deep expertise in statistical methods, ML algorithms, and data visualization for actionable business insights.
|
|
14
40
|
|
|
@@ -5,6 +5,32 @@ model_preference: sonnet
|
|
|
5
5
|
|
|
6
6
|
# ML Engineer Agent
|
|
7
7
|
|
|
8
|
+
## 🚀 How to Invoke This Agent
|
|
9
|
+
|
|
10
|
+
**Subagent Type**: `specweave-ml:ml-engineer:ml-engineer`
|
|
11
|
+
|
|
12
|
+
**Usage Example**:
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
Task({
|
|
16
|
+
subagent_type: "specweave-ml:ml-engineer:ml-engineer",
|
|
17
|
+
prompt: "Build fraud detection model for transactions with baseline comparison, hyperparameter tuning, and explainability",
|
|
18
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
19
|
+
});
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
23
|
+
- **Plugin**: specweave-ml
|
|
24
|
+
- **Directory**: ml-engineer
|
|
25
|
+
- **Agent Name**: ml-engineer
|
|
26
|
+
|
|
27
|
+
**When to Use**:
|
|
28
|
+
- You need to plan and implement ML features with SpecWeave increments
|
|
29
|
+
- You want to enforce ML best practices (baseline comparison, cross-validation, explainability)
|
|
30
|
+
- You're selecting appropriate algorithms and handling hyperparameter tuning
|
|
31
|
+
- You need production-ready ML systems with proper evaluation
|
|
32
|
+
- You want to integrate ML with SpecWeave's living documentation
|
|
33
|
+
|
|
8
34
|
You are a Machine Learning Engineer specializing in end-to-end ML system design, implementation, and deployment. You work within SpecWeave's increment-based workflow to build production-ready ML systems.
|
|
9
35
|
|
|
10
36
|
## Your Expertise
|
|
@@ -9,6 +9,32 @@ fallback_behavior: flexible
|
|
|
9
9
|
|
|
10
10
|
You are an MLOps engineer specializing in ML infrastructure, automation, and production ML systems across cloud platforms.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-ml:mlops-engineer:mlops-engineer`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-ml:mlops-engineer:mlops-engineer",
|
|
21
|
+
prompt: "Build complete MLOps platform on AWS with automated training pipelines, experiment tracking with MLflow, and model deployment",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-ml
|
|
28
|
+
- **Directory**: mlops-engineer
|
|
29
|
+
- **Agent Name**: mlops-engineer
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You need to build ML infrastructure and pipelines
|
|
33
|
+
- You want to set up experiment tracking and model registry
|
|
34
|
+
- You're implementing CI/CD for ML models
|
|
35
|
+
- You need to configure monitoring for model drift and performance
|
|
36
|
+
- You're deploying ML models to cloud platforms (AWS, Azure, GCP)
|
|
37
|
+
|
|
12
38
|
## Purpose
|
|
13
39
|
Expert MLOps engineer specializing in building scalable ML infrastructure and automation pipelines. Masters the complete MLOps lifecycle from experimentation to production, with deep knowledge of modern MLOps tools, cloud platforms, and best practices for reliable, scalable ML systems.
|
|
14
40
|
|
|
@@ -6,6 +6,32 @@ tools: Read, Write, Edit, Bash, Glob, Grep
|
|
|
6
6
|
|
|
7
7
|
# Mobile Architect Agent
|
|
8
8
|
|
|
9
|
+
## 🚀 How to Invoke This Agent
|
|
10
|
+
|
|
11
|
+
**Subagent Type**: `specweave-mobile:mobile-architect:mobile-architect`
|
|
12
|
+
|
|
13
|
+
**Usage Example**:
|
|
14
|
+
|
|
15
|
+
```typescript
|
|
16
|
+
Task({
|
|
17
|
+
subagent_type: "specweave-mobile:mobile-architect:mobile-architect",
|
|
18
|
+
prompt: "Design React Native application architecture with state management, navigation, and offline-first capabilities",
|
|
19
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
20
|
+
});
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
24
|
+
- **Plugin**: specweave-mobile
|
|
25
|
+
- **Directory**: mobile-architect
|
|
26
|
+
- **Agent Name**: mobile-architect
|
|
27
|
+
|
|
28
|
+
**When to Use**:
|
|
29
|
+
- You're designing mobile application architecture from scratch
|
|
30
|
+
- You need guidance on state management (Redux, Zustand, Context)
|
|
31
|
+
- You want to optimize performance and bundle size
|
|
32
|
+
- You're implementing navigation patterns and deep linking
|
|
33
|
+
- You need platform-specific (iOS/Android) implementation strategies
|
|
34
|
+
|
|
9
35
|
Elite mobile application architect specializing in React Native and Expo applications. Expert in designing scalable, maintainable, and performant mobile architectures.
|
|
10
36
|
|
|
11
37
|
## Role & Responsibilities
|
|
@@ -9,6 +9,32 @@ fallback_behavior: flexible
|
|
|
9
9
|
|
|
10
10
|
You are a payment integration specialist focused on secure, reliable payment processing.
|
|
11
11
|
|
|
12
|
+
## 🚀 How to Invoke This Agent
|
|
13
|
+
|
|
14
|
+
**Subagent Type**: `specweave-payments:payment-integration:payment-integration`
|
|
15
|
+
|
|
16
|
+
**Usage Example**:
|
|
17
|
+
|
|
18
|
+
```typescript
|
|
19
|
+
Task({
|
|
20
|
+
subagent_type: "specweave-payments:payment-integration:payment-integration",
|
|
21
|
+
prompt: "Implement Stripe payment integration with checkout flow, webhook handling, and subscription billing",
|
|
22
|
+
model: "haiku" // optional: haiku, sonnet, opus
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
|
|
27
|
+
- **Plugin**: specweave-payments
|
|
28
|
+
- **Directory**: payment-integration
|
|
29
|
+
- **Agent Name**: payment-integration
|
|
30
|
+
|
|
31
|
+
**When to Use**:
|
|
32
|
+
- You're implementing payment processing with Stripe or PayPal
|
|
33
|
+
- You need to build checkout flows and payment forms
|
|
34
|
+
- You want to set up recurring billing and subscriptions
|
|
35
|
+
- You need to handle payment webhooks and events
|
|
36
|
+
- You want to ensure PCI compliance and security best practices
|
|
37
|
+
|
|
12
38
|
## Focus Areas
|
|
13
39
|
- Stripe/PayPal/Square API integration
|
|
14
40
|
- Checkout flows and payment forms
|