agileflow 2.61.0 → 2.63.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 (68) hide show
  1. package/README.md +9 -9
  2. package/package.json +1 -1
  3. package/scripts/lib/counter.js +103 -0
  4. package/src/core/commands/auto.md +1 -0
  5. package/src/core/commands/babysit.md +170 -29
  6. package/src/core/commands/board.md +1 -0
  7. package/src/core/commands/ci.md +1 -0
  8. package/src/core/commands/compress.md +1 -0
  9. package/src/core/commands/deploy.md +1 -0
  10. package/src/core/commands/help.md +1 -0
  11. package/src/core/commands/research.md +1 -0
  12. package/src/core/commands/skill/create.md +566 -0
  13. package/src/core/commands/skill/delete.md +189 -0
  14. package/src/core/commands/skill/edit.md +245 -0
  15. package/src/core/commands/skill/list.md +155 -0
  16. package/src/core/commands/skill/test.md +249 -0
  17. package/src/core/commands/template.md +1 -0
  18. package/src/core/commands/tests.md +1 -0
  19. package/src/core/commands/update.md +1 -0
  20. package/src/core/commands/velocity.md +1 -0
  21. package/src/core/experts/refactor/expertise.yaml +17 -12
  22. package/src/core/templates/claude-settings.advanced.example.json +1 -1
  23. package/src/core/templates/claude-settings.example.json +1 -1
  24. package/tools/cli/commands/list.js +8 -13
  25. package/tools/cli/commands/uninstall.js +70 -0
  26. package/tools/cli/commands/update.js +21 -4
  27. package/tools/cli/installers/core/installer.js +20 -19
  28. package/tools/cli/installers/ide/_base-ide.js +18 -4
  29. package/tools/cli/installers/ide/claude-code.js +4 -15
  30. package/tools/cli/installers/ide/codex.js +9 -13
  31. package/tools/cli/lib/content-injector.js +162 -31
  32. package/tools/cli/lib/utils.js +87 -0
  33. package/src/core/skills/acceptance-criteria-generator/SKILL.md +0 -46
  34. package/src/core/skills/adr-template/SKILL.md +0 -62
  35. package/src/core/skills/agileflow-acceptance-criteria/SKILL.md +0 -156
  36. package/src/core/skills/agileflow-adr/SKILL.md +0 -147
  37. package/src/core/skills/agileflow-adr/examples/database-choice-example.md +0 -122
  38. package/src/core/skills/agileflow-adr/templates/adr-template.md +0 -69
  39. package/src/core/skills/agileflow-commit-messages/SKILL.md +0 -130
  40. package/src/core/skills/agileflow-commit-messages/reference/bad-examples.md +0 -168
  41. package/src/core/skills/agileflow-commit-messages/reference/good-examples.md +0 -120
  42. package/src/core/skills/agileflow-commit-messages/scripts/check-attribution.sh +0 -15
  43. package/src/core/skills/agileflow-epic-planner/SKILL.md +0 -184
  44. package/src/core/skills/agileflow-retro-facilitator/SKILL.md +0 -119
  45. package/src/core/skills/agileflow-retro-facilitator/cookbook/4ls.md +0 -86
  46. package/src/core/skills/agileflow-retro-facilitator/cookbook/glad-sad-mad.md +0 -79
  47. package/src/core/skills/agileflow-retro-facilitator/cookbook/start-stop-continue.md +0 -142
  48. package/src/core/skills/agileflow-retro-facilitator/prompts/action-items.md +0 -83
  49. package/src/core/skills/agileflow-sprint-planner/SKILL.md +0 -212
  50. package/src/core/skills/agileflow-story-writer/SKILL.md +0 -163
  51. package/src/core/skills/agileflow-story-writer/examples/good-story-example.md +0 -63
  52. package/src/core/skills/agileflow-story-writer/templates/story-template.md +0 -44
  53. package/src/core/skills/agileflow-tech-debt/SKILL.md +0 -215
  54. package/src/core/skills/api-documentation-generator/SKILL.md +0 -65
  55. package/src/core/skills/changelog-entry/SKILL.md +0 -55
  56. package/src/core/skills/commit-message-formatter/SKILL.md +0 -50
  57. package/src/core/skills/deployment-guide-generator/SKILL.md +0 -84
  58. package/src/core/skills/diagram-generator/SKILL.md +0 -65
  59. package/src/core/skills/error-handler-template/SKILL.md +0 -78
  60. package/src/core/skills/migration-checklist/SKILL.md +0 -82
  61. package/src/core/skills/pr-description/SKILL.md +0 -65
  62. package/src/core/skills/sql-schema-generator/SKILL.md +0 -69
  63. package/src/core/skills/story-skeleton/SKILL.md +0 -34
  64. package/src/core/skills/test-case-generator/SKILL.md +0 -63
  65. package/src/core/skills/type-definitions/SKILL.md +0 -65
  66. package/src/core/skills/validation-schema-generator/SKILL.md +0 -64
  67. package/src/core/skills/writing-skills/SKILL.md +0 -352
  68. package/src/core/skills/writing-skills/testing-skills-with-subagents.md +0 -232
@@ -1,78 +0,0 @@
1
- ---
2
- name: error-handler-template
3
- description: Generate error handling boilerplate with custom error classes and try/catch patterns
4
- ---
5
-
6
- # error-handler-template
7
-
8
- Generate error handling boilerplate for different languages.
9
-
10
- ## Activation Keywords
11
- - "error handling", "try catch", "error handler", "exception handling"
12
-
13
- ## When to Use
14
- - Implementing error handling for new features
15
- - Standardizing error responses across API
16
- - Creating error logging patterns
17
-
18
- ## What This Does
19
- Generates language-specific error handling code including:
20
- - **Error classes** with custom fields
21
- - **Try/catch patterns** for common scenarios
22
- - **Error middleware** for API servers
23
- - **Logging integration** for errors
24
- - **User-friendly error messages**
25
- - **HTTP status code mapping**
26
- - **Stack trace and context capture**
27
-
28
- Supports: JavaScript/TypeScript, Python, Java, Go, Rust
29
-
30
- ## Output
31
- Error handling code ready to integrate
32
-
33
- ## Example Activation
34
- User: "Create error handling for login endpoint"
35
- Skill: Generates (TypeScript):
36
- ```typescript
37
- // Custom error class
38
- class AuthError extends Error {
39
- constructor(
40
- public code: string,
41
- public statusCode: number,
42
- message: string,
43
- public context?: Record<string, any>
44
- ) {
45
- super(message);
46
- }
47
- }
48
-
49
- // Try/catch pattern
50
- async function login(email: string, password: string) {
51
- try {
52
- const user = await findUserByEmail(email);
53
- if (!user) {
54
- throw new AuthError('USER_NOT_FOUND', 404, 'User not found', { email });
55
- }
56
-
57
- const isValid = await verifyPassword(password, user.passwordHash);
58
- if (!isValid) {
59
- logger.warn('Invalid password attempt', { email });
60
- throw new AuthError(
61
- 'INVALID_CREDENTIALS',
62
- 401,
63
- 'Invalid email or password'
64
- );
65
- }
66
-
67
- return generateToken(user);
68
- } catch (error) {
69
- if (error instanceof AuthError) {
70
- logger.error(error.message, { code: error.code, context: error.context });
71
- throw error;
72
- }
73
- // Handle unexpected errors
74
- logger.error('Unexpected error in login', { error });
75
- throw new AuthError('INTERNAL_ERROR', 500, 'Internal server error');
76
- }
77
- }
78
- ```
@@ -1,82 +0,0 @@
1
- ---
2
- name: migration-checklist
3
- description: Generate data migration checklist with validation, rollback, and zero-downtime procedures
4
- ---
5
-
6
- # migration-checklist
7
-
8
- Generate data migration checklist.
9
-
10
- ## Activation Keywords
11
- - "migration", "zero-downtime", "data migration", "migration checklist"
12
-
13
- ## When to Use
14
- - Planning data migrations (schema changes, zero-downtime)
15
- - Moving data between systems
16
- - Large-scale data transformations
17
-
18
- ## What This Does
19
- Generates comprehensive migration checklist including:
20
- - **Pre-migration validation** (backup, verify counts)
21
- - **Migration phases** (dual-write, backfill, switch)
22
- - **Rollback procedures** (tested and documented)
23
- - **Data validation rules** (checksums, counts, integrity)
24
- - **Monitoring during migration** (watch for anomalies)
25
- - **Post-migration verification** (smoke tests, queries)
26
- - **Cleanup procedures** (remove old schema/data)
27
- - **Communication timeline**
28
-
29
- Coordinates with datamigration agent for detailed migration planning.
30
-
31
- ## Output
32
- Ready-to-execute migration checklist
33
-
34
- ## Example Activation
35
- User: "Plan zero-downtime migration from sessions to JWT"
36
- Skill: Generates:
37
- ```markdown
38
- ## Migration Checklist: Session → JWT Migration
39
-
40
- ### Phase 1: Preparation (pre-migration)
41
- - [ ] Create full database backup (test restore)
42
- - [ ] Verify staging matches production (data volume, schema)
43
- - [ ] Prepare rollback procedure (documented and tested)
44
- - [ ] Brief team on timeline and communication
45
- - [ ] Schedule 2-hour maintenance window
46
- - [ ] Set up monitoring dashboards
47
-
48
- ### Phase 2: Dual-Write (no downtime)
49
- - [ ] Deploy code that writes to BOTH sessions + JWT
50
- - [ ] Monitor for errors (should be zero)
51
- - [ ] Backfill JWT for existing sessions (background job)
52
- - [ ] Track conversion progress (% of sessions migrated)
53
- - [ ] Once 100% converted: Wait 24h for safety
54
-
55
- ### Phase 3: Verify
56
- - [ ] Check record counts match:
57
- - SELECT COUNT(*) FROM sessions
58
- - SELECT COUNT(*) FROM jwt_tokens
59
- - Should be equal
60
- - [ ] Validate JWT expiration timestamps
61
- - [ ] Check no orphaned sessions
62
- - [ ] Spot-check 100 random sessions
63
-
64
- ### Phase 4: Switch Reads
65
- - [ ] Deploy code to read from JWT instead of sessions
66
- - [ ] Monitor error rate (should be zero)
67
- - [ ] Keep writing to BOTH for 24h (safety)
68
- - [ ] Verify user experience
69
-
70
- ### Phase 5: Cleanup
71
- - [ ] Stop writing to sessions table
72
- - [ ] Archive sessions (backup)
73
- - [ ] Drop sessions table
74
- - [ ] Update documentation
75
-
76
- ### Rollback Point
77
- If issues during Phase 1-2: Revert to code writing sessions only (backward compatible)
78
- If issues during Phase 3-4: Switch reads back to sessions (keep JWT as backup)
79
-
80
- **Estimated Timeline**: 3-4 hours total
81
- **Expected Downtime**: 0 (zero-downtime migration)
82
- ```
@@ -1,65 +0,0 @@
1
- ---
2
- name: pr-description
3
- description: Generate pull request description with testing instructions and comprehensive checklist
4
- ---
5
-
6
- # pr-description
7
-
8
- Generate pull request description with testing instructions.
9
-
10
- ## Activation Keywords
11
- - "pull request", "create PR", "merge request", "pr description", "pr body"
12
-
13
- ## When to Use
14
- - Creating pull request on GitHub/GitLab
15
- - Need comprehensive PR description with testing steps
16
- - Documenting changes for code review
17
-
18
- ## What This Does
19
- Generates complete PR description including:
20
- - **Summary**: 2-3 sentence overview of changes
21
- - **Related Issues**: Links to GitHub issues/stories
22
- - **Changes Made**: Bulleted list of modifications
23
- - **Testing Instructions**: Step-by-step testing guide
24
- - **Checklist**: Pre-merge verification items
25
- - **Migration Guide**: Steps for deploying if needed
26
- - **Screenshots/Links**: If UI changes or demos
27
-
28
- Coordinates with relevant agents (testing, documentation, etc.).
29
-
30
- ## Output
31
- Ready-to-paste PR description
32
-
33
- ## Example Activation
34
- User: "Create PR for user login feature"
35
- Skill: Generates:
36
- ```markdown
37
- ## Summary
38
- Implements user authentication system with JWT tokens and rate limiting.
39
- Includes login endpoint, password reset flow, and token refresh.
40
-
41
- ## Related Issues
42
- Closes #42 (User Authentication Epic)
43
- Relates to: US-0001, US-0002, US-0003
44
-
45
- ## Changes Made
46
- - ✨ POST /api/auth/login endpoint with JWT generation
47
- - ✨ POST /api/auth/logout endpoint
48
- - ✨ Password reset flow with email verification
49
- - 🐛 Fixed rate limiting to prevent brute force
50
- - 📝 Updated API documentation
51
- - ✅ Added 45 test cases (98% coverage)
52
-
53
- ## Testing Instructions
54
- 1. Start dev server: `npm run dev`
55
- 2. Test login: curl -X POST http://localhost:3000/api/auth/login
56
- 3. Verify JWT: Check token expiration (24h)
57
- 4. Test rate limiting: 5+ failed attempts should block
58
-
59
- ## Checklist
60
- - [x] Tests passing
61
- - [x] Code coverage >80%
62
- - [x] No console errors
63
- - [x] API docs updated
64
- - [x] Database migrations run
65
- ```
@@ -1,69 +0,0 @@
1
- ---
2
- name: sql-schema-generator
3
- description: Generate SQL schemas with migrations and database table definitions
4
- ---
5
-
6
- # sql-schema-generator
7
-
8
- Generate SQL schemas with migrations.
9
-
10
- ## Activation Keywords
11
- - "SQL", "schema", "database design", "CREATE TABLE", "migration"
12
-
13
- ## When to Use
14
- - Designing database schemas
15
- - Creating migrations for new features
16
- - Defining table structures and relationships
17
-
18
- ## What This Does
19
- Generates SQL DDL statements including:
20
- - **CREATE TABLE** statements with data types
21
- - **Indexes** for performance
22
- - **Foreign keys** for relationships
23
- - **Constraints** (NOT NULL, UNIQUE, CHECK)
24
- - **Default values** where applicable
25
- - **Comments** explaining purpose
26
-
27
- Also generates:
28
- - **Migration files** (with up/down versions)
29
- - **Rollback procedures**
30
- - **Data migration scripts** if needed
31
-
32
- Coordinates with database agent.
33
-
34
- ## Output
35
- SQL migration files in migrations/ directory
36
-
37
- ## Example Activation
38
- User: "Create users and sessions tables"
39
- Skill: Generates:
40
- ```sql
41
- -- Migration: 2025-10-28_create_users_table
42
-
43
- -- UP: Create tables
44
- CREATE TABLE users (
45
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
46
- email VARCHAR(255) NOT NULL UNIQUE,
47
- password_hash VARCHAR(255) NOT NULL,
48
- created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
49
- updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
50
- is_active BOOLEAN DEFAULT true,
51
- INDEX idx_email (email),
52
- INDEX idx_created_at (created_at)
53
- );
54
-
55
- CREATE TABLE sessions (
56
- id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
57
- user_id UUID NOT NULL,
58
- token VARCHAR(500) NOT NULL UNIQUE,
59
- expires_at TIMESTAMP NOT NULL,
60
- created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
61
- FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
62
- INDEX idx_user_id (user_id),
63
- INDEX idx_expires_at (expires_at)
64
- );
65
-
66
- -- DOWN: Drop tables (for rollback)
67
- DROP TABLE IF EXISTS sessions;
68
- DROP TABLE IF EXISTS users;
69
- ```
@@ -1,34 +0,0 @@
1
- ---
2
- name: story-skeleton
3
- description: Auto-generate story template with boilerplate sections pre-filled
4
- ---
5
-
6
- # story-skeleton
7
-
8
- Auto-generate story template with boilerplate sections pre-filled.
9
-
10
- ## Activation Keywords
11
- - "create story", "new story", "story template", "story skeleton"
12
-
13
- ## When to Use
14
- - User requests to create a new user story
15
- - Need to quickly scaffold a story structure
16
- - Starting epic implementation
17
-
18
- ## What This Does
19
- Generates story YAML frontmatter + markdown template with:
20
- - Story ID (auto-generated from epic context)
21
- - Epic reference
22
- - Title and description sections
23
- - Acceptance Criteria (Given/When/Then format stubs)
24
- - Architecture Context section with 6 subsections
25
- - Previous Story Insights section
26
- - Testing Strategy section
27
- - Dev Agent Record template
28
-
29
- ## Output
30
- Complete story file ready for population by epic-planner agent.
31
-
32
- ## Example Activation
33
- User: "Create a story for user login API"
34
- Skill: Generates story skeleton with all sections, ready for epic-planner to fill in details
@@ -1,63 +0,0 @@
1
- ---
2
- name: test-case-generator
3
- description: Generate test cases from acceptance criteria with unit, integration, and E2E scenarios
4
- ---
5
-
6
- # test-case-generator
7
-
8
- Generate test cases from acceptance criteria.
9
-
10
- ## Activation Keywords
11
- - "test cases", "test plan", "from AC", "test from acceptance"
12
-
13
- ## When to Use
14
- - Converting acceptance criteria to test cases
15
- - Creating test stubs for new features
16
- - Planning test coverage
17
-
18
- ## What This Does
19
- Converts Given/When/Then acceptance criteria into:
20
- - **Unit test cases** (if applicable)
21
- - **Integration test cases** (API, database)
22
- - **E2E test cases** (full user workflow)
23
- - **Negative test cases** (error scenarios)
24
- - **Edge cases** (boundary conditions)
25
-
26
- Generates test case names, setup steps, assertions, and expected results.
27
-
28
- Coordinates with testing and qa agents.
29
-
30
- ## Output
31
- Test case stub at docs/07-testing/test-cases/<STORY_ID>.md
32
-
33
- ## Example Activation
34
- User: "Generate test cases from user login AC"
35
- Skill: Generates:
36
- ```markdown
37
- ## Test Cases for User Login (US-0001)
38
-
39
- ### TC-001: Valid login succeeds
40
- Given: Valid user registered with email/password
41
- When: POST to /api/auth/login with valid credentials
42
- Then: Returns 200 with JWT token (24h expiration)
43
-
44
- ### TC-002: Wrong password fails
45
- Given: User exists, wrong password provided
46
- When: POST to /api/auth/login
47
- Then: Returns 401 with error message
48
-
49
- ### TC-003: Rate limiting active
50
- Given: User failed login 5 times
51
- When: Attempt 6th login
52
- Then: Returns 429 Too Many Requests
53
-
54
- ### TC-004: Invalid email format
55
- Given: Malformed email address
56
- When: POST to /api/auth/login
57
- Then: Returns 400 Bad Request
58
-
59
- ### Edge Cases
60
- - Empty email/password
61
- - SQL injection attempts
62
- - Token validation after expiration
63
- ```
@@ -1,65 +0,0 @@
1
- ---
2
- name: type-definitions
3
- description: Generate TypeScript interfaces and types from data structure descriptions
4
- ---
5
-
6
- # type-definitions
7
-
8
- Generate TypeScript interfaces and types from descriptions.
9
-
10
- ## Activation Keywords
11
- - "TypeScript", "types", "@interface", "type definition", "interface definition"
12
-
13
- ## When to Use
14
- - Creating TypeScript interfaces for data structures
15
- - Defining function signatures
16
- - Type-safe API request/response types
17
-
18
- ## What This Does
19
- Generates TypeScript/TypeScript-compatible types including:
20
- - **Interfaces** for data structures
21
- - **Type aliases** for unions and primitives
22
- - **Enums** for fixed sets of values
23
- - **Generic types** for reusable patterns
24
- - **JSDoc comments** for IDE intellisense
25
- - **Type guards** for runtime validation
26
-
27
- Includes proper typing with optionals, required fields, and readonly modifiers.
28
-
29
- ## Output
30
- TypeScript code ready to add to types/ directory
31
-
32
- ## Example Activation
33
- User: "Create types for User and LoginRequest"
34
- Skill: Generates:
35
- ```typescript
36
- /** User account information */
37
- export interface User {
38
- id: string;
39
- email: string;
40
- passwordHash: string;
41
- createdAt: Date;
42
- updatedAt: Date;
43
- isActive: boolean;
44
- }
45
-
46
- /** Login request payload */
47
- export interface LoginRequest {
48
- email: string;
49
- password: string;
50
- }
51
-
52
- /** Login response payload */
53
- export interface LoginResponse {
54
- token: string;
55
- expiresIn: number;
56
- user: Omit<User, 'passwordHash'>;
57
- }
58
-
59
- /** Authentication error response */
60
- export interface AuthError {
61
- code: 'INVALID_CREDENTIALS' | 'USER_NOT_FOUND' | 'RATE_LIMITED';
62
- message: string;
63
- retryAfter?: number;
64
- }
65
- ```
@@ -1,64 +0,0 @@
1
- ---
2
- name: validation-schema-generator
3
- description: Generate input validation schemas for Joi, Zod, Yup, or Pydantic
4
- ---
5
-
6
- # validation-schema-generator
7
-
8
- Generate input validation schemas (Joi, Zod, Yup).
9
-
10
- ## Activation Keywords
11
- - "validation", "schema", "joi", "zod", "yup", "validate input"
12
-
13
- ## When to Use
14
- - Creating request body validation
15
- - Form validation schemas
16
- - Input sanitization and validation
17
-
18
- ## What This Does
19
- Generates validation schemas for popular libraries:
20
- - **Joi** (Node.js)
21
- - **Zod** (TypeScript)
22
- - **Yup** (React forms)
23
- - **Pydantic** (Python)
24
-
25
- Includes:
26
- - **Required/optional fields**
27
- - **Type validation** (string, number, email, etc.)
28
- - **Length constraints** (min, max)
29
- - **Pattern validation** (regex)
30
- - **Custom validators**
31
- - **Error messages** (user-friendly)
32
- - **Transformation rules** (trim, lowercase, etc.)
33
-
34
- ## Output
35
- Validation schema code ready for integration
36
-
37
- ## Example Activation
38
- User: "Create Zod validation for login request"
39
- Skill: Generates:
40
- ```typescript
41
- import { z } from 'zod';
42
-
43
- export const loginRequestSchema = z.object({
44
- email: z
45
- .string('Email is required')
46
- .email('Invalid email format')
47
- .toLowerCase()
48
- .trim(),
49
- password: z
50
- .string('Password is required')
51
- .min(8, 'Password must be at least 8 characters')
52
- .regex(/[A-Z]/, 'Password must contain uppercase')
53
- .regex(/[0-9]/, 'Password must contain number'),
54
- });
55
-
56
- export type LoginRequest = z.infer<typeof loginRequestSchema>;
57
-
58
- // Usage
59
- const validateLogin = (data: unknown) => {
60
- return loginRequestSchema.parse(data);
61
- };
62
- ```
63
-
64
- Also generates Joi, Yup, Pydantic versions.