all-for-claudecode 2.1.0 → 2.2.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.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +62 -111
- package/commands/analyze.md +5 -6
- package/commands/architect.md +5 -7
- package/commands/auto.md +14 -12
- package/commands/checkpoint.md +0 -1
- package/commands/debug.md +1 -1
- package/commands/doctor.md +1 -2
- package/commands/ideate.md +191 -0
- package/commands/implement.md +4 -4
- package/commands/init.md +56 -46
- package/commands/launch.md +181 -0
- package/commands/plan.md +1 -7
- package/commands/principles.md +0 -1
- package/commands/resume.md +0 -1
- package/commands/review.md +2 -2
- package/commands/security.md +10 -13
- package/commands/test.md +4 -4
- package/docs/phase-gate-protocol.md +1 -1
- package/package.json +15 -9
- package/scripts/afc-consistency-check.sh +261 -0
- package/scripts/afc-permission-request.sh +11 -1
- package/scripts/afc-pipeline-manage.sh +8 -11
- package/scripts/afc-state.sh +20 -0
- package/scripts/afc-stop-gate.sh +4 -6
- package/scripts/afc-subagent-context.sh +7 -0
- package/scripts/afc-task-completed-gate.sh +4 -6
- package/templates/afc.config.template.md +12 -76
- package/templates/afc.config.express-api.md +0 -99
- package/templates/afc.config.monorepo.md +0 -98
- package/templates/afc.config.nextjs-fsd.md +0 -107
- package/templates/afc.config.react-spa.md +0 -96
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
# all-for-claudecode Configuration
|
|
2
|
-
|
|
3
|
-
> This file defines project-specific settings for the afc command system.
|
|
4
|
-
> All afc commands reference this file to determine project-specific behavior.
|
|
5
|
-
|
|
6
|
-
## CI Commands
|
|
7
|
-
|
|
8
|
-
```yaml
|
|
9
|
-
ci: "pnpm turbo build lint test" # Full CI (lint + typecheck + build)
|
|
10
|
-
typecheck: "pnpm turbo typecheck" # Typecheck only
|
|
11
|
-
lint: "pnpm turbo lint" # Lint only
|
|
12
|
-
lint_fix: "pnpm turbo lint -- --fix" # Auto-fix lint
|
|
13
|
-
gate: "pnpm turbo typecheck lint" # Phase gate (run repeatedly during implement)
|
|
14
|
-
test: "pnpm turbo test" # Tests
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Architecture
|
|
18
|
-
|
|
19
|
-
```yaml
|
|
20
|
-
style: "Monorepo"
|
|
21
|
-
layers: # Root → package order
|
|
22
|
-
- apps/
|
|
23
|
-
- packages/
|
|
24
|
-
import_rule: "apps/ may only import from packages/. packages/ must declare explicit dependencies (package.json)"
|
|
25
|
-
segments:
|
|
26
|
-
- apps/web # Web app
|
|
27
|
-
- apps/api # API server
|
|
28
|
-
- packages/ui # Shared UI components
|
|
29
|
-
- packages/config # Shared configuration (ESLint, Prettier, etc.)
|
|
30
|
-
- packages/tsconfig # Shared TypeScript configuration
|
|
31
|
-
- packages/utils # Shared utilities
|
|
32
|
-
path_alias: "@repo/* → packages/*"
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## Framework
|
|
36
|
-
|
|
37
|
-
```yaml
|
|
38
|
-
name: "Turborepo + pnpm workspace"
|
|
39
|
-
runtime: "Multiple (varies per app)"
|
|
40
|
-
client_directive: "Varies per app"
|
|
41
|
-
server_client_boundary: "Varies per app" # Determined by each app's framework
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
## Code Style
|
|
45
|
-
|
|
46
|
-
```yaml
|
|
47
|
-
language: "TypeScript"
|
|
48
|
-
strict_mode: true
|
|
49
|
-
type_keyword: "type" # Use type instead of interface
|
|
50
|
-
import_type: true # Use import type { ... }
|
|
51
|
-
component_style: "PascalCase"
|
|
52
|
-
props_position: "above component" # Define Props type above the component
|
|
53
|
-
handler_naming: "handle[Event]"
|
|
54
|
-
boolean_naming: "is/has/can[State]"
|
|
55
|
-
constant_naming: "UPPER_SNAKE_CASE"
|
|
56
|
-
any_policy: "minimize (especially strict for shared packages)"
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
## State Management
|
|
60
|
-
|
|
61
|
-
```yaml
|
|
62
|
-
global_state: "Varies per app"
|
|
63
|
-
server_state: "Varies per app"
|
|
64
|
-
local_state: "Varies per app"
|
|
65
|
-
store_location: "Within each app"
|
|
66
|
-
query_location: "Within each app"
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Styling
|
|
70
|
-
|
|
71
|
-
```yaml
|
|
72
|
-
framework: "Varies per app (shared UI package uses Tailwind CSS)"
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
## Testing
|
|
76
|
-
|
|
77
|
-
```yaml
|
|
78
|
-
framework: "Varies per app (Vitest or Jest)"
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
## Project-Specific Risks
|
|
82
|
-
|
|
83
|
-
> Project-specific risk patterns that must be checked in the Plan's RISK Critic
|
|
84
|
-
|
|
85
|
-
1. Circular dependencies between packages (turborepo detects, but runtime errors possible)
|
|
86
|
-
2. Build failures in dependent apps when shared packages change
|
|
87
|
-
3. npm publish errors when pnpm workspace protocol (workspace:*) is missing
|
|
88
|
-
4. tsconfig inheritance chain mismatch (extends path errors)
|
|
89
|
-
5. Stale builds due to incorrect pipeline cache settings in turbo.json
|
|
90
|
-
|
|
91
|
-
## Mini-Review Checklist
|
|
92
|
-
|
|
93
|
-
> Items to inspect for each file in the Mini-Review of the Implement Phase gate
|
|
94
|
-
|
|
95
|
-
1. Dependency direction between packages (apps → packages only)
|
|
96
|
-
2. Shared package export paths (package.json exports field)
|
|
97
|
-
3. TypeScript strict mode + path alias consistency
|
|
98
|
-
4. turbo.json pipeline configuration matches actual scripts
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
# all-for-claudecode Configuration
|
|
2
|
-
|
|
3
|
-
> This file defines project-specific settings for the afc command system.
|
|
4
|
-
> All afc commands reference this file to determine project-specific behavior.
|
|
5
|
-
|
|
6
|
-
## CI Commands
|
|
7
|
-
|
|
8
|
-
```yaml
|
|
9
|
-
ci: "yarn ci" # Full CI (lint + typecheck + build)
|
|
10
|
-
typecheck: "yarn typecheck" # Typecheck only
|
|
11
|
-
lint: "yarn lint" # Lint only
|
|
12
|
-
lint_fix: "yarn lint:fix" # Auto-fix lint
|
|
13
|
-
gate: "yarn typecheck && yarn lint" # Phase gate (run repeatedly during implement)
|
|
14
|
-
test: "yarn test" # Tests
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Architecture
|
|
18
|
-
|
|
19
|
-
```yaml
|
|
20
|
-
style: "FSD" # Feature-Sliced Design
|
|
21
|
-
layers: # Top → bottom order
|
|
22
|
-
- app
|
|
23
|
-
- views
|
|
24
|
-
- widgets
|
|
25
|
-
- features
|
|
26
|
-
- entities
|
|
27
|
-
- shared
|
|
28
|
-
- core
|
|
29
|
-
import_rule: "Upper layers may only import from lower layers (no reverse direction)"
|
|
30
|
-
segments:
|
|
31
|
-
- api # API-related logic (React Query hooks)
|
|
32
|
-
- model # State management and type definitions
|
|
33
|
-
- ui # UI components
|
|
34
|
-
- lib # Utility functions
|
|
35
|
-
- config # Configuration and constants
|
|
36
|
-
- hooks # Custom hooks
|
|
37
|
-
path_alias: "@/* → ./src/*"
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
## Framework
|
|
41
|
-
|
|
42
|
-
```yaml
|
|
43
|
-
name: "Next.js 14"
|
|
44
|
-
runtime: "App Router"
|
|
45
|
-
client_directive: "'use client'"
|
|
46
|
-
client_directive_rule: >
|
|
47
|
-
Files using client hooks such as useState/useEffect/useRef must
|
|
48
|
-
declare 'use client'. Pay special attention when indirectly imported
|
|
49
|
-
from server components via barrel exports (index.ts).
|
|
50
|
-
server_client_boundary: true # Server/client boundary exists
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Code Style
|
|
54
|
-
|
|
55
|
-
```yaml
|
|
56
|
-
language: "TypeScript"
|
|
57
|
-
strict_mode: true
|
|
58
|
-
type_keyword: "type" # Use type instead of interface
|
|
59
|
-
import_type: true # Use import type { ... }
|
|
60
|
-
component_style: "PascalCase"
|
|
61
|
-
props_position: "above component" # Define Props type above the component
|
|
62
|
-
handler_naming: "handle[Event]"
|
|
63
|
-
boolean_naming: "is/has/can[State]"
|
|
64
|
-
constant_naming: "UPPER_SNAKE_CASE"
|
|
65
|
-
any_policy: "minimize (comply with strict mode)"
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
## State Management
|
|
69
|
-
|
|
70
|
-
```yaml
|
|
71
|
-
global_state: "Zustand"
|
|
72
|
-
server_state: "React Query v5"
|
|
73
|
-
local_state: "Context API (use-context-selector)"
|
|
74
|
-
store_location: "model/ segment"
|
|
75
|
-
query_location: "api/ segment"
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
## Styling
|
|
79
|
-
|
|
80
|
-
```yaml
|
|
81
|
-
framework: "Tailwind CSS v3"
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
## Testing
|
|
85
|
-
|
|
86
|
-
```yaml
|
|
87
|
-
framework: "Jest + React Testing Library"
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Project-Specific Risks
|
|
91
|
-
|
|
92
|
-
> Project-specific risk patterns that must be checked in the Plan's RISK Critic
|
|
93
|
-
|
|
94
|
-
1. Missing `'use client'` in barrel export chain → build failure
|
|
95
|
-
2. Import order violation (ESLint FSD import order)
|
|
96
|
-
3. Circular reference (when using barrel imports inside shared/ui)
|
|
97
|
-
4. FSD layer reverse import
|
|
98
|
-
5. Residual `as any` → typecheck bypass
|
|
99
|
-
|
|
100
|
-
## Mini-Review Checklist
|
|
101
|
-
|
|
102
|
-
> Items to inspect for each file in the Mini-Review of the Implement Phase gate
|
|
103
|
-
|
|
104
|
-
1. Whether `'use client'` is required (mandatory when using client hooks)
|
|
105
|
-
2. FSD layer violations (M violations out of N import paths)
|
|
106
|
-
3. Project patterns (`type` vs `interface`, naming, import order)
|
|
107
|
-
4. Dead code (unused imports, empty exports, dead code)
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
# all-for-claudecode Configuration
|
|
2
|
-
|
|
3
|
-
> This file defines project-specific settings for the afc command system.
|
|
4
|
-
> All afc commands reference this file to determine project-specific behavior.
|
|
5
|
-
|
|
6
|
-
## CI Commands
|
|
7
|
-
|
|
8
|
-
```yaml
|
|
9
|
-
ci: "npm run build && npm run lint && npm run test" # Full CI (build + lint + test)
|
|
10
|
-
typecheck: "npx tsc --noEmit" # Typecheck only
|
|
11
|
-
lint: "npx eslint src/" # Lint only
|
|
12
|
-
lint_fix: "npx eslint src/ --fix" # Auto-fix lint
|
|
13
|
-
gate: "npx tsc --noEmit && npx eslint src/" # Phase gate (run repeatedly during implement)
|
|
14
|
-
test: "npx vitest run" # Tests
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Architecture
|
|
18
|
-
|
|
19
|
-
```yaml
|
|
20
|
-
style: "Modular"
|
|
21
|
-
layers: # Role-based separation structure
|
|
22
|
-
- src/components
|
|
23
|
-
- src/features
|
|
24
|
-
- src/hooks
|
|
25
|
-
- src/lib
|
|
26
|
-
- src/stores
|
|
27
|
-
- src/types
|
|
28
|
-
- src/api
|
|
29
|
-
import_rule: "No direct imports between features/ (route via shared)"
|
|
30
|
-
segments: []
|
|
31
|
-
path_alias: "@/* → ./src/*"
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Framework
|
|
35
|
-
|
|
36
|
-
```yaml
|
|
37
|
-
name: "Vite + React 18"
|
|
38
|
-
runtime: "SPA (Client-Side)"
|
|
39
|
-
client_directive: "" # Not needed for SPA
|
|
40
|
-
server_client_boundary: false # No server/client boundary
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Code Style
|
|
44
|
-
|
|
45
|
-
```yaml
|
|
46
|
-
language: "TypeScript"
|
|
47
|
-
strict_mode: true
|
|
48
|
-
type_keyword: "type" # Use type instead of interface
|
|
49
|
-
import_type: true # Use import type { ... }
|
|
50
|
-
component_style: "PascalCase"
|
|
51
|
-
props_position: "above component" # Define Props type above the component
|
|
52
|
-
handler_naming: "handle[Event]"
|
|
53
|
-
boolean_naming: "is/has/can[State]"
|
|
54
|
-
constant_naming: "UPPER_SNAKE_CASE"
|
|
55
|
-
any_policy: "minimize (comply with strict mode)"
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## State Management
|
|
59
|
-
|
|
60
|
-
```yaml
|
|
61
|
-
global_state: "Zustand"
|
|
62
|
-
server_state: "React Query v5"
|
|
63
|
-
local_state: "useState / useReducer"
|
|
64
|
-
store_location: "src/stores/"
|
|
65
|
-
query_location: "src/api/"
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
## Styling
|
|
69
|
-
|
|
70
|
-
```yaml
|
|
71
|
-
framework: "Tailwind CSS v3"
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
## Testing
|
|
75
|
-
|
|
76
|
-
```yaml
|
|
77
|
-
framework: "Vitest + React Testing Library"
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
## Project-Specific Risks
|
|
81
|
-
|
|
82
|
-
> Project-specific risk patterns that must be checked in the Plan's RISK Critic
|
|
83
|
-
|
|
84
|
-
1. Missing environment variables when building with Vite HMR disabled
|
|
85
|
-
2. Stale data displayed due to missing React Query cache invalidation
|
|
86
|
-
3. Unnecessary re-renders when selectors are not used in Zustand store
|
|
87
|
-
4. Mismatch between path alias and Vite resolve.alias
|
|
88
|
-
|
|
89
|
-
## Mini-Review Checklist
|
|
90
|
-
|
|
91
|
-
> Items to inspect for each file in the Mini-Review of the Implement Phase gate
|
|
92
|
-
|
|
93
|
-
1. TypeScript strict mode violations (any, as unknown)
|
|
94
|
-
2. Whether import paths use path alias (@/)
|
|
95
|
-
3. React hooks rules (no conditional hook calls)
|
|
96
|
-
4. Unused imports / dead code
|