autoworkflow 1.2.0 → 2.0.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.
@@ -0,0 +1,69 @@
1
+ {
2
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3
+ // AutoWorkflow VS Code Settings
4
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
5
+
6
+ // Editor settings
7
+ "editor.formatOnSave": true,
8
+ "editor.codeActionsOnSave": {
9
+ "source.fixAll.eslint": "explicit",
10
+ "source.organizeImports": "explicit"
11
+ },
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
13
+
14
+ // TypeScript settings
15
+ "typescript.tsdk": "node_modules/typescript/lib",
16
+ "typescript.enablePromptUseWorkspaceTsdk": true,
17
+ "typescript.validate.enable": true,
18
+ "typescript.suggestionActions.enabled": true,
19
+
20
+ // Terminal environment
21
+ "terminal.integrated.env.osx": {
22
+ "AUTOWORKFLOW": "true"
23
+ },
24
+ "terminal.integrated.env.linux": {
25
+ "AUTOWORKFLOW": "true"
26
+ },
27
+ "terminal.integrated.env.windows": {
28
+ "AUTOWORKFLOW": "true"
29
+ },
30
+
31
+ // File associations
32
+ "files.associations": {
33
+ "*.css": "tailwindcss"
34
+ },
35
+
36
+ // Tailwind CSS
37
+ "tailwindCSS.experimental.classRegex": [
38
+ ["clsx\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"],
39
+ ["cn\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"]
40
+ ],
41
+
42
+ // Search exclusions
43
+ "search.exclude": {
44
+ "**/node_modules": true,
45
+ "**/dist": true,
46
+ "**/coverage": true
47
+ },
48
+
49
+ // File exclusions from explorer
50
+ "files.exclude": {
51
+ "**/node_modules": true,
52
+ "**/.git": true
53
+ },
54
+
55
+ // Read-only patterns
56
+ "files.readonlyInclude": {
57
+ "**/node_modules/**": true
58
+ },
59
+
60
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
61
+ // AutoWorkflow Specific Settings
62
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
63
+
64
+ // Ensure key files are always visible
65
+ "explorer.autoReveal": true,
66
+
67
+ // Recommended extensions notification
68
+ "extensions.ignoreRecommendations": false
69
+ }
@@ -0,0 +1,161 @@
1
+ {
2
+ "version": "2.0.0",
3
+ "tasks": [
4
+ {
5
+ "label": "AutoWorkflow: Verify",
6
+ "detail": "Run TypeScript + ESLint verification",
7
+ "type": "shell",
8
+ "command": "npm run verify",
9
+ "group": {
10
+ "kind": "build",
11
+ "isDefault": true
12
+ },
13
+ "presentation": {
14
+ "reveal": "always",
15
+ "panel": "shared",
16
+ "clear": true
17
+ },
18
+ "problemMatcher": ["$tsc", "$eslint-stylish"]
19
+ },
20
+ {
21
+ "label": "AutoWorkflow: TypeCheck",
22
+ "detail": "Run TypeScript check only",
23
+ "type": "shell",
24
+ "command": "npm run typecheck",
25
+ "group": "build",
26
+ "presentation": {
27
+ "reveal": "always",
28
+ "panel": "shared"
29
+ },
30
+ "problemMatcher": "$tsc"
31
+ },
32
+ {
33
+ "label": "AutoWorkflow: Lint",
34
+ "detail": "Run ESLint check only",
35
+ "type": "shell",
36
+ "command": "npm run lint",
37
+ "group": "build",
38
+ "presentation": {
39
+ "reveal": "always",
40
+ "panel": "shared"
41
+ },
42
+ "problemMatcher": "$eslint-stylish"
43
+ },
44
+ {
45
+ "label": "AutoWorkflow: Lint Fix",
46
+ "detail": "Run ESLint with auto-fix",
47
+ "type": "shell",
48
+ "command": "npm run lint:fix",
49
+ "group": "build",
50
+ "presentation": {
51
+ "reveal": "always",
52
+ "panel": "shared"
53
+ },
54
+ "problemMatcher": "$eslint-stylish"
55
+ },
56
+ {
57
+ "label": "AutoWorkflow: Audit UI",
58
+ "detail": "Check for orphan features (backend without UI)",
59
+ "type": "shell",
60
+ "command": "npm run audit:ui",
61
+ "group": "test",
62
+ "presentation": {
63
+ "reveal": "always",
64
+ "panel": "shared"
65
+ },
66
+ "problemMatcher": []
67
+ },
68
+ {
69
+ "label": "AutoWorkflow: Audit Cycles",
70
+ "detail": "Check for circular dependencies",
71
+ "type": "shell",
72
+ "command": "npm run audit:cycles",
73
+ "group": "test",
74
+ "presentation": {
75
+ "reveal": "always",
76
+ "panel": "shared"
77
+ },
78
+ "problemMatcher": []
79
+ },
80
+ {
81
+ "label": "AutoWorkflow: Audit All",
82
+ "detail": "Run all audit checks",
83
+ "type": "shell",
84
+ "command": "npm run audit:ui && npm run audit:cycles",
85
+ "group": "test",
86
+ "presentation": {
87
+ "reveal": "always",
88
+ "panel": "shared"
89
+ },
90
+ "problemMatcher": []
91
+ },
92
+ {
93
+ "label": "AutoWorkflow: Format",
94
+ "detail": "Format all files with Prettier",
95
+ "type": "shell",
96
+ "command": "npm run format",
97
+ "group": "build",
98
+ "presentation": {
99
+ "reveal": "always",
100
+ "panel": "shared"
101
+ },
102
+ "problemMatcher": []
103
+ },
104
+ {
105
+ "label": "AutoWorkflow: Test",
106
+ "detail": "Run tests",
107
+ "type": "shell",
108
+ "command": "npm run test",
109
+ "group": "test",
110
+ "presentation": {
111
+ "reveal": "always",
112
+ "panel": "shared"
113
+ },
114
+ "problemMatcher": []
115
+ },
116
+ {
117
+ "label": "AutoWorkflow: Dev Server",
118
+ "detail": "Start development server",
119
+ "type": "shell",
120
+ "command": "npm run dev",
121
+ "group": "build",
122
+ "isBackground": true,
123
+ "presentation": {
124
+ "reveal": "always",
125
+ "panel": "dedicated"
126
+ },
127
+ "problemMatcher": []
128
+ },
129
+ {
130
+ "label": "AutoWorkflow: Full Check",
131
+ "detail": "Verify + Audit (pre-commit equivalent)",
132
+ "type": "shell",
133
+ "command": "npm run verify && npm run audit:ui && npm run audit:cycles",
134
+ "group": "test",
135
+ "presentation": {
136
+ "reveal": "always",
137
+ "panel": "shared"
138
+ },
139
+ "problemMatcher": ["$tsc", "$eslint-stylish"]
140
+ },
141
+ {
142
+ "label": "AutoWorkflow: Commit",
143
+ "detail": "Verify and commit with conventional message",
144
+ "type": "shell",
145
+ "command": "npm run verify && git add -A && git commit -m '${input:commitMessage}'",
146
+ "group": "build",
147
+ "presentation": {
148
+ "reveal": "always",
149
+ "panel": "shared"
150
+ },
151
+ "problemMatcher": "$tsc"
152
+ }
153
+ ],
154
+ "inputs": [
155
+ {
156
+ "id": "commitMessage",
157
+ "type": "promptString",
158
+ "description": "Commit message (format: type(scope): description)"
159
+ }
160
+ ]
161
+ }
package/CLAUDE.md ADDED
@@ -0,0 +1,344 @@
1
+ # AutoWorkflow - System Prompt Layer
2
+
3
+ > **This file is the ENTRY POINT.** Claude MUST read this at the start of EVERY task.
4
+
5
+ ---
6
+
7
+ ## Session Start - FIRST THING
8
+
9
+ **Before ANY work, run this check:**
10
+
11
+ ```
12
+ 1. Check if instructions/BLUEPRINT.md exists
13
+ 2. If NO → Run ONE audit → Update BOTH AI_RULES.md & BLUEPRINT.md
14
+ 3. If YES → Read both files and proceed
15
+ ```
16
+
17
+ ### No Blueprint? Single Audit → Dual Output
18
+
19
+ ```
20
+ ⚠️ No BLUEPRINT.md found in this project.
21
+
22
+ I'll run ONE audit to update TWO files:
23
+
24
+ 📄 AI_RULES.md → Tech Stack & File Structure (HOW to code)
25
+ 📘 BLUEPRINT.md → Features, Routes, APIs (WHAT exists)
26
+
27
+ Running project audit now...
28
+ ```
29
+
30
+ ### Single Audit Architecture
31
+
32
+ ```
33
+ ┌─────────────────────────────────────────────────────────────┐
34
+ │ ONE AUDIT SCAN │
35
+ │ │
36
+ │ $ cat package.json → Detect tech stack │
37
+ │ $ find src -type d → Map file structure │
38
+ │ $ ls src/pages/ → Discover routes │
39
+ │ $ ls src/components/ → List components │
40
+ │ $ find src/api/ → Find API endpoints │
41
+ │ $ cat prisma/schema.prisma → Database models │
42
+ │ $ grep -r "fetch\|/api/" → Map connections │
43
+ │ │
44
+ └─────────────────────────┬────────────────────────────────────┘
45
+
46
+ ┌─────────────┴─────────────┐
47
+ ▼ ▼
48
+ ┌─────────────────┐ ┌─────────────────┐
49
+ │ AI_RULES.md │ │ BLUEPRINT.md │
50
+ │ (Update) │ │ (Generate) │
51
+ │ │ │ │
52
+ │ ## Tech Stack │ │ ## Features │
53
+ │ - Framework: X │ │ - Feature 1 ✅ │
54
+ │ - Styling: Y │ │ - Feature 2 ⚠️ │
55
+ │ - Database: Z │ │ │
56
+ │ │ │ ## Routes │
57
+ │ ## File Struct │ │ - / → Home │
58
+ │ src/ │ │ - /about → ... │
59
+ │ ├── components │ │ │
60
+ │ ├── pages │ │ ## APIs │
61
+ │ └── ... │ │ - GET /api/x │
62
+ └─────────────────┘ └─────────────────┘
63
+ ```
64
+
65
+ **This prevents double audit runs - ONE scan updates BOTH files.**
66
+
67
+ ### Audit Output Format
68
+
69
+ After scanning, present BOTH updates together:
70
+
71
+ ```
72
+ ## 🔍 Audit Complete - Proposed Updates
73
+
74
+ ### 📄 AI_RULES.md Updates
75
+
76
+ **Tech Stack** (will update):
77
+ - Framework: [detected]
78
+ - Styling: [detected]
79
+ - Database: [detected]
80
+
81
+ **File Structure** (will update):
82
+ src/
83
+ ├── [directories found]
84
+ └── [file counts]
85
+
86
+ ---
87
+
88
+ ### 📘 BLUEPRINT.md (will create)
89
+
90
+ **Features Discovered:**
91
+ | Feature | Frontend | Backend | Route | Status |
92
+ |---------|----------|---------|-------|--------|
93
+ | Auth | LoginForm.tsx | /api/auth | /login | ✅ |
94
+ | Dashboard | Dashboard.tsx | /api/stats | /dashboard | ✅ |
95
+ | Settings | ❌ None | /api/settings | ❌ None | ⚠️ ORPHAN |
96
+
97
+ **⚠️ Issues Found:**
98
+ - Orphan API: /api/settings (no UI)
99
+
100
+ ---
101
+
102
+ **Should I save these updates?**
103
+ - AI_RULES.md → Update Tech Stack & File Structure sections
104
+ - BLUEPRINT.md → Create with discovered features
105
+
106
+ (yes/no/edit first)
107
+ ```
108
+
109
+ See `system/triggers.md#on:blueprint_missing` for trigger details.
110
+
111
+ ---
112
+
113
+ ## System Architecture
114
+
115
+ ```
116
+ ┌─────────────────────────────────────────────────────────────┐
117
+ │ THIS FILE (Entry Point) │
118
+ │ Load on every task, route to system │
119
+ └───────────────────────────┬─────────────────────────────────┘
120
+
121
+
122
+ ┌─────────────────────────────────────────────────────────────┐
123
+ │ system/ (Control Layer) │
124
+ │ │
125
+ │ triggers.md │ loops.md │ gates.md │ router.md │
126
+ │ (events) │ (cycles) │ (blocks) │ (routing) │
127
+ └───────────────────────────┬─────────────────────────────────┘
128
+
129
+
130
+ ┌─────────────────────────────────────────────────────────────┐
131
+ │ instructions/ (Content Layer) │
132
+ │ │
133
+ │ CLAUDE.md │ AI_RULES.md │ BLUEPRINT.md │
134
+ │ (workflow) │ (standards) │ (project spec) │
135
+ └─────────────────────────────────────────────────────────────┘
136
+ ```
137
+
138
+ ---
139
+
140
+ ## On Task Start - MANDATORY
141
+
142
+ When you receive ANY task, you MUST:
143
+
144
+ ### 1. Route the Task
145
+ Read `system/router.md` to classify:
146
+ - Is this a feature, fix, refactor, query, etc.?
147
+ - What workflow applies?
148
+ - What gates are required?
149
+
150
+ ### 2. Load Control Systems
151
+ - `system/triggers.md` - Event handling
152
+ - `system/loops.md` - Verification cycles
153
+ - `system/gates.md` - Blocking checkpoints
154
+
155
+ ### 3. Load Instructions
156
+ - `instructions/CLAUDE.md` - Workflow steps
157
+ - `instructions/AI_RULES.md` - Coding standards
158
+ - `instructions/BLUEPRINT.md` - Project requirements
159
+
160
+ ---
161
+
162
+ ## Workflow Overview
163
+
164
+ ```
165
+ ANALYZE → PLAN → CONFIRM → IMPLEMENT → VERIFY → AUDIT → COMMIT → UPDATE
166
+ │ │ │ │ │ │ │ │
167
+ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
168
+ Read Design Wait for Write Run npm Check Create Update
169
+ files approach approval code verify orphans commit BLUEPRINT
170
+ ```
171
+
172
+ ### Conditional Flows
173
+
174
+ ```
175
+ Session Start:
176
+ ┌─────────────────────────────────────────────────┐
177
+ │ Check BLUEPRINT.md exists? │
178
+ ├─────────────────────────────────────────────────┤
179
+ │ NO → Run /audit project → Generate both files │
180
+ │ YES → Read AI_RULES.md + BLUEPRINT.md → Proceed │
181
+ └─────────────────────────────────────────────────┘
182
+
183
+ After Commit:
184
+ ┌─────────────────────────────────────────────────┐
185
+ │ Was new feature/route/API added? │
186
+ ├─────────────────────────────────────────────────┤
187
+ │ YES → Prompt to update BLUEPRINT.md │
188
+ │ NO → Skip update phase │
189
+ └─────────────────────────────────────────────────┘
190
+ ```
191
+
192
+ ---
193
+
194
+ ## Hard Rules (NEVER Bypass)
195
+
196
+ ### Blocking Gates
197
+ | Gate | When | Blocks If |
198
+ |------|------|-----------|
199
+ | `plan_approval_gate` | Before implement | User hasn't approved |
200
+ | `verify_gate` | After implement | TypeScript/ESLint errors |
201
+ | `audit_gate` | Before commit (features) | Orphan features or cycles |
202
+ | `pre_commit_gate` | Before commit | TODO/FIXME, console.log, etc. |
203
+
204
+ ### Blocking Rules
205
+ - **No orphan features** - Backend MUST have UI
206
+ - **No TODO/FIXME** - Complete the work
207
+ - **No console.log** - No debug logs in code
208
+ - **No circular deps** - Clean architecture
209
+ - **Conventional commits** - type(scope): description
210
+
211
+ ---
212
+
213
+ ## Available Commands
214
+
215
+ | Command | Purpose |
216
+ |---------|---------|
217
+ | `/analyze [task]` | Analyze codebase for a task |
218
+ | `/plan [task]` | Create implementation plan |
219
+ | `/build [feature]` | Full workflow for features |
220
+ | `/verify` | Run TypeScript + ESLint |
221
+ | `/fix` | Fix verification errors |
222
+ | `/audit` | Run UI + cycle audits |
223
+ | `/audit project` | Full project scan → update BLUEPRINT.md |
224
+ | `/suggest [task]` | Generate suggestions |
225
+ | `/commit [msg]` | Pre-commit check + commit |
226
+
227
+ ---
228
+
229
+ ## Quick Reference
230
+
231
+ ### Session Start
232
+ ```
233
+ Check BLUEPRINT.md exists?
234
+ ├── NO → Run /audit project → Update AI_RULES.md + Create BLUEPRINT.md
235
+ └── YES → Read both → Proceed
236
+ ```
237
+
238
+ ### For Features
239
+ ```
240
+ /build [description]
241
+ → Runs: ANALYZE → PLAN+SUGGEST → CONFIRM → IMPLEMENT → VERIFY → AUDIT → COMMIT → UPDATE
242
+ ```
243
+
244
+ ### For Fixes
245
+ ```
246
+ /analyze [issue] → /plan → [approval] → implement → /verify → /commit
247
+ ```
248
+
249
+ ### For Questions
250
+ ```
251
+ /analyze [question]
252
+ → Returns information, no implementation
253
+ ```
254
+
255
+ ---
256
+
257
+ ## File Map
258
+
259
+ ```
260
+ @autoworkflow/
261
+ ├── CLAUDE.md ← YOU ARE HERE (Entry Point)
262
+
263
+ ├── system/ ← Control Layer
264
+ │ ├── triggers.md Event → Action mappings
265
+ │ ├── loops.md Repeat-until definitions
266
+ │ ├── gates.md Blocking checkpoints
267
+ │ └── router.md Task type routing
268
+
269
+ ├── instructions/ ← Content Layer
270
+ │ ├── CLAUDE.md Workflow steps
271
+ │ ├── AI_RULES.md Coding standards
272
+ │ └── BLUEPRINT.md Project specification
273
+
274
+ ├── scripts/ ← Automation Scripts
275
+ │ ├── setup.sh One-command project setup
276
+ │ ├── autoworkflow.sh CLI orchestrator
277
+ │ ├── run-verification.sh Verification with output
278
+ │ ├── ensure-no-errors.sh Pre-commit check
279
+ │ └── check-ui-enforcement.sh Orphan feature detection
280
+
281
+ ├── hooks/ ← Git Hooks
282
+ │ ├── pre-commit Blocks bad commits
283
+ │ └── commit-msg Validates commit format
284
+
285
+ ├── .claude/ ← Claude Code Integration
286
+ │ ├── settings.json Settings + instructions
287
+ │ └── commands/ Slash command definitions
288
+ │ ├── analyze.md
289
+ │ ├── plan.md
290
+ │ ├── build.md
291
+ │ ├── verify.md
292
+ │ ├── fix.md
293
+ │ ├── audit.md
294
+ │ ├── suggest.md
295
+ │ └── commit.md
296
+
297
+ ├── .vscode/ ← VS Code Integration
298
+ │ ├── settings.json Editor settings
299
+ │ ├── tasks.json Runnable tasks
300
+ │ └── extensions.json Recommended extensions
301
+
302
+ ├── .prettierrc ← Prettier config
303
+ ├── eslint.config.example.js ← ESLint reference
304
+ └── tsconfig.example.json ← TypeScript reference
305
+ ```
306
+
307
+ ---
308
+
309
+ ## Enforcement Summary
310
+
311
+ **Claude is the PRIMARY enforcement engine.** These files control behavior:
312
+
313
+ 1. **system/triggers.md** - WHEN to act
314
+ 2. **system/loops.md** - HOW to repeat until success
315
+ 3. **system/gates.md** - WHAT blocks progress
316
+ 4. **system/router.md** - WHERE to route tasks
317
+ 5. **instructions/CLAUDE.md** - THE workflow to follow
318
+ 6. **instructions/AI_RULES.md** - THE standards to meet
319
+
320
+ **Backup enforcement via automation:**
321
+
322
+ 7. **hooks/pre-commit** - Blocks commits with errors (git hook)
323
+ 8. **hooks/commit-msg** - Validates commit format (git hook)
324
+ 9. **scripts/check-ui-enforcement.sh** - Detects orphan features
325
+ 10. **scripts/autoworkflow.sh** - CLI for manual workflow runs
326
+
327
+ Claude follows the instructions. Hooks catch anything that slips through.
328
+
329
+ ---
330
+
331
+ ## Start Here
332
+
333
+ For every task:
334
+ 1. Read this file (done)
335
+ 2. Check if `instructions/BLUEPRINT.md` exists
336
+ - If NO → Run `/audit project` first
337
+ - If YES → Read it and proceed
338
+ 3. Read `system/router.md` to classify task
339
+ 4. Follow the appropriate workflow
340
+ 5. Never skip gates
341
+ 6. Complete features fully
342
+ 7. Update BLUEPRINT.md after adding features
343
+
344
+ **VERIFY ALWAYS. CHECK BLUEPRINT. NO ORPHANS. ONE AUDIT → TWO FILES.**