@mthanhlm/autodev 0.4.3 → 0.5.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/plugin.json +2 -2
- package/PUBLISH.md +9 -40
- package/README.md +70 -91
- package/autodev/bin/autodev-tools.cjs +587 -811
- package/autodev/templates/brief.md +19 -0
- package/autodev/templates/context.md +16 -0
- package/autodev/templates/plan.md +26 -46
- package/autodev/templates/run.md +20 -0
- package/bin/install.js +229 -342
- package/commands/autodev/index.md +117 -9
- package/commands/autodev/status.md +22 -0
- package/hooks/autodev-auto-format.js +3 -3
- package/hooks/autodev-git-guard.js +5 -7
- package/hooks/autodev-paths.js +3 -3
- package/package.json +4 -5
- package/scripts/run-tests.cjs +10 -0
- package/agents/autodev-codebase-domain.md +0 -25
- package/agents/autodev-codebase-quality.md +0 -25
- package/agents/autodev-codebase-runtime.md +0 -25
- package/agents/autodev-codebase-structure.md +0 -25
- package/agents/autodev-review-integration.md +0 -30
- package/agents/autodev-review-polish.md +0 -30
- package/agents/autodev-review-quality.md +0 -30
- package/agents/autodev-review-security.md +0 -30
- package/agents/autodev-task-worker.md +0 -39
- package/autodev/templates/codebase/domain.md +0 -13
- package/autodev/templates/codebase/quality.md +0 -13
- package/autodev/templates/codebase/runtime.md +0 -13
- package/autodev/templates/codebase/structure.md +0 -13
- package/autodev/templates/codebase/summary.md +0 -13
- package/autodev/templates/config.json +0 -22
- package/autodev/templates/project-state.md +0 -13
- package/autodev/templates/project.md +0 -24
- package/autodev/templates/requirements.md +0 -14
- package/autodev/templates/review.md +0 -27
- package/autodev/templates/roadmap.md +0 -17
- package/autodev/templates/state.md +0 -13
- package/autodev/templates/summary.md +0 -22
- package/autodev/templates/task-summary.md +0 -18
- package/autodev/templates/task.md +0 -23
- package/autodev/templates/track-state.md +0 -14
- package/autodev/templates/track.md +0 -24
- package/autodev/templates/uat.md +0 -18
- package/autodev/workflows/autodev.md +0 -79
- package/autodev/workflows/cleanup.md +0 -51
- package/autodev/workflows/execute-phase.md +0 -127
- package/autodev/workflows/explore-codebase.md +0 -66
- package/autodev/workflows/help.md +0 -110
- package/autodev/workflows/new-project.md +0 -101
- package/autodev/workflows/plan-phase.md +0 -126
- package/autodev/workflows/progress.md +0 -18
- package/autodev/workflows/review-phase.md +0 -73
- package/autodev/workflows/review-plan.md +0 -55
- package/autodev/workflows/review-task.md +0 -70
- package/autodev/workflows/verify-work.md +0 -57
- package/commands/autodev/cleanup.md +0 -23
- package/commands/autodev/execute-phase.md +0 -29
- package/commands/autodev/explore-codebase.md +0 -33
- package/commands/autodev/help.md +0 -18
- package/commands/autodev/new-project.md +0 -30
- package/commands/autodev/plan-phase.md +0 -26
- package/commands/autodev/progress.md +0 -18
- package/commands/autodev/review-phase.md +0 -29
- package/commands/autodev/review-task.md +0 -25
- package/commands/autodev/verify-work.md +0 -24
- package/hooks/autodev-context-monitor.js +0 -59
- package/hooks/autodev-phase-boundary.sh +0 -49
- package/hooks/autodev-prompt-guard.js +0 -55
- package/hooks/autodev-read-guard.js +0 -42
- package/hooks/autodev-session-state.sh +0 -51
- package/hooks/autodev-statusline.js +0 -78
- package/hooks/autodev-workflow-guard.js +0 -43
- package/hooks/hooks.json +0 -89
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# Project State
|
|
2
|
-
|
|
3
|
-
Project Type: [greenfield or brownfield]
|
|
4
|
-
Active Track: [slug]
|
|
5
|
-
Current Step: initialized
|
|
6
|
-
Current Task: none
|
|
7
|
-
Current Task Status: idle
|
|
8
|
-
Status: active
|
|
9
|
-
Next Command: /autodev
|
|
10
|
-
Last Updated: [ISO timestamp]
|
|
11
|
-
|
|
12
|
-
## Notes
|
|
13
|
-
- Project initialized.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# Project
|
|
2
|
-
|
|
3
|
-
## One-Line Summary
|
|
4
|
-
[Describe the product in one sentence.]
|
|
5
|
-
|
|
6
|
-
## Project Type
|
|
7
|
-
[greenfield or brownfield]
|
|
8
|
-
|
|
9
|
-
## Problem
|
|
10
|
-
[What pain are you solving?]
|
|
11
|
-
|
|
12
|
-
## Users
|
|
13
|
-
[Who is this for?]
|
|
14
|
-
|
|
15
|
-
## Success Criteria
|
|
16
|
-
- [Primary outcome]
|
|
17
|
-
- [Primary quality bar]
|
|
18
|
-
|
|
19
|
-
## Constraints
|
|
20
|
-
- [Technical constraints]
|
|
21
|
-
- [Business or time constraints]
|
|
22
|
-
|
|
23
|
-
## Non-Goals
|
|
24
|
-
- [Out of scope]
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
# Phase [N] Review: [Name]
|
|
2
|
-
|
|
3
|
-
Status: pending
|
|
4
|
-
|
|
5
|
-
## Code Quality
|
|
6
|
-
- [Finding or "no blocking findings"]
|
|
7
|
-
|
|
8
|
-
## Security
|
|
9
|
-
- [Finding or "no blocking findings"]
|
|
10
|
-
|
|
11
|
-
## Integration And Regression
|
|
12
|
-
- [Finding or "no blocking findings"]
|
|
13
|
-
|
|
14
|
-
## Product Polish And AI-Look
|
|
15
|
-
- [Finding or "no blocking findings"]
|
|
16
|
-
|
|
17
|
-
## Blockers
|
|
18
|
-
- [Blocker or "none"]
|
|
19
|
-
|
|
20
|
-
## Strengths
|
|
21
|
-
- [What looks solid]
|
|
22
|
-
|
|
23
|
-
## Recommendation
|
|
24
|
-
- [Return to execution or continue to verification]
|
|
25
|
-
|
|
26
|
-
## Remediation Direction
|
|
27
|
-
- [If blocked, append fix task(s) to the same phase and preserve completed task history]
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# Track Roadmap
|
|
2
|
-
|
|
3
|
-
## Phase 1 [feature]: [Name]
|
|
4
|
-
Status: pending
|
|
5
|
-
Goal: [What this phase achieves]
|
|
6
|
-
Deliverables:
|
|
7
|
-
- [Deliverable]
|
|
8
|
-
Risks:
|
|
9
|
-
- [Risk]
|
|
10
|
-
|
|
11
|
-
## Phase 2 [feature]: [Name]
|
|
12
|
-
Status: pending
|
|
13
|
-
Goal: [What this phase achieves]
|
|
14
|
-
Deliverables:
|
|
15
|
-
- [Deliverable]
|
|
16
|
-
Risks:
|
|
17
|
-
- [Risk]
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
# Project State
|
|
2
|
-
|
|
3
|
-
Project Type: [greenfield or brownfield]
|
|
4
|
-
Active Track: [slug]
|
|
5
|
-
Current Step: initialized
|
|
6
|
-
Current Task: none
|
|
7
|
-
Current Task Status: idle
|
|
8
|
-
Status: active
|
|
9
|
-
Next Command: /autodev
|
|
10
|
-
Last Updated: [ISO timestamp]
|
|
11
|
-
|
|
12
|
-
## Notes
|
|
13
|
-
- Project initialized.
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
# Phase [N] Summary: [Name]
|
|
2
|
-
|
|
3
|
-
Type: [feature|bugfix|refactor|research|polish]
|
|
4
|
-
|
|
5
|
-
## Tasks Completed
|
|
6
|
-
- Task 01 - [Outcome]
|
|
7
|
-
- Task 02 - [Outcome]
|
|
8
|
-
|
|
9
|
-
## Phase Outcome
|
|
10
|
-
- [What shipped]
|
|
11
|
-
|
|
12
|
-
## Files Changed
|
|
13
|
-
- [path]
|
|
14
|
-
|
|
15
|
-
## Verification
|
|
16
|
-
- [Command and result]
|
|
17
|
-
|
|
18
|
-
## Remaining Risks
|
|
19
|
-
- [Known gap]
|
|
20
|
-
|
|
21
|
-
## Next Step
|
|
22
|
-
- Run `/autodev`
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# Task [NN] Summary: [Name]
|
|
2
|
-
|
|
3
|
-
Status: done
|
|
4
|
-
|
|
5
|
-
## Completed
|
|
6
|
-
- [What changed]
|
|
7
|
-
|
|
8
|
-
## Files Changed
|
|
9
|
-
- [path]
|
|
10
|
-
|
|
11
|
-
## Verification
|
|
12
|
-
- [Command and result]
|
|
13
|
-
|
|
14
|
-
## Risks Or Follow-Up
|
|
15
|
-
- [Risk or none]
|
|
16
|
-
|
|
17
|
-
## Recommended Next Step
|
|
18
|
-
- Return to `/autodev`
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
# Task [NN]: [Name]
|
|
2
|
-
|
|
3
|
-
Status: pending
|
|
4
|
-
Depends On: none
|
|
5
|
-
|
|
6
|
-
## Goal
|
|
7
|
-
[What this task accomplishes]
|
|
8
|
-
|
|
9
|
-
## Why This Task Exists
|
|
10
|
-
- [Why this should be a separate unit]
|
|
11
|
-
|
|
12
|
-
## Files Likely To Change
|
|
13
|
-
- [path]
|
|
14
|
-
|
|
15
|
-
## Implementation Notes
|
|
16
|
-
- [Concrete implementation guidance]
|
|
17
|
-
|
|
18
|
-
## Verification
|
|
19
|
-
- [Command]
|
|
20
|
-
- [Manual check]
|
|
21
|
-
|
|
22
|
-
## Done Looks Like
|
|
23
|
-
- [Observable completion signal]
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
# Track State
|
|
2
|
-
|
|
3
|
-
Track: [Name]
|
|
4
|
-
Current Phase: 1
|
|
5
|
-
Current Phase Type: [feature]
|
|
6
|
-
Current Step: planning
|
|
7
|
-
Current Task: none
|
|
8
|
-
Current Task Status: idle
|
|
9
|
-
Status: active
|
|
10
|
-
Next Command: /autodev
|
|
11
|
-
Last Updated: [ISO timestamp]
|
|
12
|
-
|
|
13
|
-
## Notes
|
|
14
|
-
- Track ready.
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# Track: [Name]
|
|
2
|
-
|
|
3
|
-
Type: [feature|bugfix|refactor|research|polish]
|
|
4
|
-
Status: active
|
|
5
|
-
|
|
6
|
-
## Why This Track
|
|
7
|
-
[Why this work matters right now.]
|
|
8
|
-
|
|
9
|
-
## Outcome
|
|
10
|
-
[What changes for the user or operator when this track is done.]
|
|
11
|
-
|
|
12
|
-
## Success Signals
|
|
13
|
-
- [Observable user or operator outcome]
|
|
14
|
-
- [Verification or quality bar]
|
|
15
|
-
|
|
16
|
-
## Scope Boundaries
|
|
17
|
-
- [What is in scope]
|
|
18
|
-
- [What is explicitly out of scope]
|
|
19
|
-
|
|
20
|
-
## Dependencies
|
|
21
|
-
- [Team, system, or technical dependency]
|
|
22
|
-
|
|
23
|
-
## Existing Code Notes
|
|
24
|
-
- [Important brownfield context or leave none]
|
package/autodev/templates/uat.md
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# Phase [N] UAT: [Name]
|
|
2
|
-
|
|
3
|
-
Status: pending
|
|
4
|
-
|
|
5
|
-
## Test Cases
|
|
6
|
-
- [ ] [Behavior to verify]
|
|
7
|
-
|
|
8
|
-
## Results
|
|
9
|
-
- [Pass or fail notes]
|
|
10
|
-
|
|
11
|
-
## Bugs Or Follow-Up
|
|
12
|
-
- [Issue or none]
|
|
13
|
-
|
|
14
|
-
## Fix Return
|
|
15
|
-
- [Only add when verification fails]
|
|
16
|
-
|
|
17
|
-
## Recommended Next Step
|
|
18
|
-
- `/autodev`
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Use `/autodev` as the single entrypoint for the normal workflow. Route automatically, keep git read-only, and move the project forward in the same turn whenever possible.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<rules>
|
|
6
|
-
- Prefer `/autodev` over telling the user to run a different command manually.
|
|
7
|
-
- Manual commands remain valid escape hatches. Mention them only as shortcuts.
|
|
8
|
-
- Keep the model `project -> track -> phase -> tasks`.
|
|
9
|
-
- Brownfield repositories should be mapped before detailed phase planning.
|
|
10
|
-
- Never run git write commands.
|
|
11
|
-
- Keep router context small. Do not preload workflow files that are not selected by the current route.
|
|
12
|
-
</rules>
|
|
13
|
-
|
|
14
|
-
<process>
|
|
15
|
-
1. Run:
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
AUTODEV_ROOT="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude}"
|
|
19
|
-
node "$AUTODEV_ROOT/autodev/bin/autodev-tools.cjs" status
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
2. Inspect the returned `route.kind`, `project_type`, `tracks`, and active track data.
|
|
23
|
-
|
|
24
|
-
3. Route as follows:
|
|
25
|
-
- `init_project`: load and perform the new-project workflow.
|
|
26
|
-
- `explore_codebase`: load and perform the explore-codebase workflow.
|
|
27
|
-
- `plan_phase`: load and perform the plan-phase workflow.
|
|
28
|
-
- `plan_review`: load and perform the review-plan workflow so the user can review the phase plan before any execution starts.
|
|
29
|
-
- `execute_phase`: load and perform the execute-phase workflow, which should advance one task-sized unit in the current phase session by trying a fresh foreground agent first and falling back cleanly when agent delegation is unavailable.
|
|
30
|
-
- `task_review`: load and perform the review-task workflow so the user can review one completed task before any further execution starts.
|
|
31
|
-
- `review_phase`: load and perform the review-phase workflow.
|
|
32
|
-
- `verify_phase`: load and perform the verify-work workflow.
|
|
33
|
-
|
|
34
|
-
4. Read only the workflow file needed for the selected route. Do not load the others "just in case".
|
|
35
|
-
|
|
36
|
-
5. Do not stop after identifying a brownfield codebase route. If the route is `explore_codebase`, perform the exploration as part of the same `/autodev` run instead of telling the user to switch commands.
|
|
37
|
-
|
|
38
|
-
6. If the route is `track_select` or `track_setup`, handle it directly:
|
|
39
|
-
- If tracks exist, ask whether to continue one of them or create a new track.
|
|
40
|
-
- When creating or repairing a track, do a short track-discovery pass before writing files.
|
|
41
|
-
- Ask for:
|
|
42
|
-
- the initiative name
|
|
43
|
-
- what the user wants to ship or change in this track
|
|
44
|
-
- what done looks like
|
|
45
|
-
- scope boundaries and explicit non-goals
|
|
46
|
-
- dependencies or constraints only if they affect planning
|
|
47
|
-
- If the request is vague, summarize the understanding in a few bullets and resolve ambiguity before writing.
|
|
48
|
-
- If no tracks exist, do not jump straight to phase types before the track goal is clear.
|
|
49
|
-
- Create or repair:
|
|
50
|
-
- `.autodev/ACTIVE_TRACK`
|
|
51
|
-
- `.autodev/tracks/<slug>/TRACK.md`
|
|
52
|
-
- `.autodev/tracks/<slug>/REQUIREMENTS.md`
|
|
53
|
-
- `.autodev/tracks/<slug>/ROADMAP.md`
|
|
54
|
-
- `.autodev/tracks/<slug>/STATE.md`
|
|
55
|
-
- Fill the track and requirements docs from the clarified intent, not generic placeholders.
|
|
56
|
-
- Use a lowercase hyphenated slug.
|
|
57
|
-
- Use roadmap headings in this format:
|
|
58
|
-
|
|
59
|
-
```text
|
|
60
|
-
## Phase N [type]: Name
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
- After track setup, continue in the same turn by re-running the route logic mentally and executing the next step.
|
|
64
|
-
|
|
65
|
-
7. If the route is `track_complete`, ask whether the user wants to:
|
|
66
|
-
- start a new track
|
|
67
|
-
- run cleanup
|
|
68
|
-
- stop here
|
|
69
|
-
|
|
70
|
-
8. When the user chooses a new track at step 7, create it immediately and continue routing in the same turn.
|
|
71
|
-
|
|
72
|
-
9. Every time you finish a routed step, keep both project-level and track-level state aligned. Default the state files to `Next Command: /autodev`.
|
|
73
|
-
|
|
74
|
-
10. End with:
|
|
75
|
-
- what step you completed
|
|
76
|
-
- the current route reason in plain language
|
|
77
|
-
- `/autodev` as the default next command
|
|
78
|
-
- the matching manual shortcut only as an optional escape hatch
|
|
79
|
-
</process>
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Clean or archive autodev state without flags. Prefer preserving useful project context over deleting it.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<rules>
|
|
6
|
-
- Ask the user which cleanup action to take. Do not rely on flags.
|
|
7
|
-
- Archive before delete when a safe archive path makes sense.
|
|
8
|
-
- Require a second explicit `AskUserQuestion` confirmation before deleting all `.autodev/` state.
|
|
9
|
-
- Never touch repository code outside `.autodev/`.
|
|
10
|
-
</rules>
|
|
11
|
-
|
|
12
|
-
<process>
|
|
13
|
-
1. Run:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
AUTODEV_ROOT="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude}"
|
|
17
|
-
node "$AUTODEV_ROOT/autodev/bin/autodev-tools.cjs" cleanup
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
2. If no `.autodev/` project exists, stop and say there is nothing to clean.
|
|
21
|
-
|
|
22
|
-
3. Use the `AskUserQuestion` tool for the choice below. Do not ask this in plain assistant text.
|
|
23
|
-
Ask the user to choose one action:
|
|
24
|
-
- archive completed phase artifacts only
|
|
25
|
-
- archive the current track and clear the active selection
|
|
26
|
-
- delete all `.autodev/` state
|
|
27
|
-
|
|
28
|
-
4. For `archive completed phase artifacts only`:
|
|
29
|
-
- create `.autodev/archive/<track-slug>/phases/` if needed
|
|
30
|
-
- move only verified phase directories there
|
|
31
|
-
- leave project docs, codebase docs, active track, and unfinished phases in place
|
|
32
|
-
- update project and track state to `Next Command: /autodev`
|
|
33
|
-
|
|
34
|
-
5. For `archive the current track and clear the active selection`:
|
|
35
|
-
- move `.autodev/tracks/<slug>/` to `.autodev/archive/tracks/<slug>-<timestamp>/`
|
|
36
|
-
- remove `.autodev/ACTIVE_TRACK`
|
|
37
|
-
- update `.autodev/STATE.md` to `Current Step: track-selection` and `Next Command: /autodev`
|
|
38
|
-
|
|
39
|
-
6. For `delete all .autodev state`:
|
|
40
|
-
- use the `AskUserQuestion` tool to ask for one more confirmation
|
|
41
|
-
- the confirmation should clearly say this removes the entire `.autodev/` directory and cannot be undone by the workflow
|
|
42
|
-
- offer only:
|
|
43
|
-
- delete all `.autodev/` state
|
|
44
|
-
- cancel cleanup
|
|
45
|
-
- only remove `.autodev/` if the user confirms the delete option
|
|
46
|
-
|
|
47
|
-
7. End with:
|
|
48
|
-
- what was archived or deleted
|
|
49
|
-
- what project context remains
|
|
50
|
-
- the next recommended route
|
|
51
|
-
</process>
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Execute an active-track phase through task-sized delegated runs, keep the main session orchestration-focused, and capture both task summaries and the final phase summary.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<rules>
|
|
6
|
-
- Never run git write commands.
|
|
7
|
-
- Do not create commits, branches, merges, or worktrees.
|
|
8
|
-
- Stay within the current phase. Do not silently expand scope.
|
|
9
|
-
- Execute one task at a time by default.
|
|
10
|
-
- Do not use waves.
|
|
11
|
-
- Prefer a fresh foreground agent for each task so the phase session does not bloat.
|
|
12
|
-
- If agent delegation is available in this environment, delegate task implementation.
|
|
13
|
-
- If a delegation attempt fails with an environment limitation like `specialized agents aren't available`, treat agent delegation as unavailable for this run and continue cleanly.
|
|
14
|
-
- The main phase session should remain orchestration-focused whenever delegation works.
|
|
15
|
-
- The main phase session may update `.autodev/` state and aggregate phase artifacts.
|
|
16
|
-
- Do not run autodev subagents as background tasks.
|
|
17
|
-
</rules>
|
|
18
|
-
|
|
19
|
-
<process>
|
|
20
|
-
1. Run:
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
AUTODEV_ROOT="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude}"
|
|
24
|
-
node "$AUTODEV_ROOT/autodev/bin/autodev-tools.cjs" init execute-phase "$ARGUMENTS"
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
2. If no phase is found or the plan file is missing, stop and direct the user to `/autodev-plan-phase`.
|
|
28
|
-
|
|
29
|
-
3. Read:
|
|
30
|
-
- `.autodev/STATE.md`
|
|
31
|
-
- `.autodev/tracks/<active-track>/STATE.md`
|
|
32
|
-
- `.autodev/codebase/summary.md` if it exists
|
|
33
|
-
- the target `NN-PLAN.md`
|
|
34
|
-
- all `TASK-*.md`
|
|
35
|
-
- all existing `TASK-*-SUMMARY.md`
|
|
36
|
-
|
|
37
|
-
4. If the phase has no `TASK-*.md` files:
|
|
38
|
-
- create `TASK-01.md` as a compatibility bridge from the current phase plan
|
|
39
|
-
- keep it narrow and explicit
|
|
40
|
-
- then continue
|
|
41
|
-
|
|
42
|
-
5. Determine the next executable task:
|
|
43
|
-
- prefer the first task without a summary whose dependencies are already done
|
|
44
|
-
- if no executable task remains and all task summaries exist, move to phase aggregation
|
|
45
|
-
- if `dependency_deadlock` is true, stop before execution, set both state files to `Current Step: planning`, set `Current Task: none`, set `Current Task Status: blocked_dependencies`, keep `Next Command: /autodev`, and ask the user how to repair the plan
|
|
46
|
-
|
|
47
|
-
6. Before running a task, show the user:
|
|
48
|
-
- task id and title
|
|
49
|
-
- likely files to touch
|
|
50
|
-
- verification plan
|
|
51
|
-
- any dependency note
|
|
52
|
-
|
|
53
|
-
7. If agent delegation is available, explicitly call the `Agent` tool and select the installed task-worker subagent for the selected task.
|
|
54
|
-
Use:
|
|
55
|
-
- `autodev-task-worker` when autodev is installed into `.claude/`
|
|
56
|
-
- `autodev:autodev-task-worker` only when this workflow is being run directly from a plugin directory
|
|
57
|
-
|
|
58
|
-
Run it in the foreground as part of the current workflow step.
|
|
59
|
-
|
|
60
|
-
Tell the subagent:
|
|
61
|
-
- phase path
|
|
62
|
-
- task path
|
|
63
|
-
- summary path to write
|
|
64
|
-
- required context files to read first
|
|
65
|
-
- that it owns the task implementation and the task summary
|
|
66
|
-
- that the main session should stay orchestration-focused
|
|
67
|
-
- to return a concise outcome only
|
|
68
|
-
|
|
69
|
-
8. If worker delegation is unavailable, do not stop on the raw platform message.
|
|
70
|
-
Treat messages like `specialized agents aren't available` as a capability limitation, then:
|
|
71
|
-
- tell the user plainly that delegated-agent execution is unavailable in this environment
|
|
72
|
-
- continue with the same task in the current session
|
|
73
|
-
- keep the same task boundaries
|
|
74
|
-
- still write the task summary before stopping
|
|
75
|
-
|
|
76
|
-
9. After the delegated agent returns, or after the current-session fallback completes:
|
|
77
|
-
- confirm `TASK-NN-SUMMARY.md` exists
|
|
78
|
-
- inspect whether the task is done or blocked
|
|
79
|
-
- report the result to the user
|
|
80
|
-
|
|
81
|
-
10. If more tasks remain:
|
|
82
|
-
- update project and track state to:
|
|
83
|
-
- `Current Step: task_review`
|
|
84
|
-
- `Current Task: <current-task>`
|
|
85
|
-
- `Current Task Status: complete`
|
|
86
|
-
- `Next Command: /autodev`
|
|
87
|
-
- stop after this task
|
|
88
|
-
- end by telling the user `/autodev` will open the task review checkpoint before any next-task execution
|
|
89
|
-
|
|
90
|
-
11. If all tasks are done:
|
|
91
|
-
- write or update `NN-SUMMARY.md` from the template with:
|
|
92
|
-
- completed tasks
|
|
93
|
-
- aggregate files changed
|
|
94
|
-
- overall verification results
|
|
95
|
-
- remaining risks
|
|
96
|
-
- next step
|
|
97
|
-
|
|
98
|
-
12. Update the active track `STATE.md` so it points to:
|
|
99
|
-
- `Current Phase: N`
|
|
100
|
-
- `Current Phase Type: <type>`
|
|
101
|
-
- `Current Step: task_review`
|
|
102
|
-
- `Current Task: <current-task>`
|
|
103
|
-
- `Current Task Status: complete`
|
|
104
|
-
- `Next Command: /autodev`
|
|
105
|
-
- current ISO timestamp
|
|
106
|
-
|
|
107
|
-
13. Update `.autodev/STATE.md` so it points to:
|
|
108
|
-
- `Active Track: <slug>`
|
|
109
|
-
- `Current Step: task_review`
|
|
110
|
-
- `Current Task: <current-task>`
|
|
111
|
-
- `Current Task Status: complete`
|
|
112
|
-
- `Next Command: /autodev`
|
|
113
|
-
- current ISO timestamp
|
|
114
|
-
|
|
115
|
-
14. If the current task is blocked or incomplete:
|
|
116
|
-
- say so clearly in the task summary
|
|
117
|
-
- set both state files to `Current Step: planning`
|
|
118
|
-
- set `Current Task: <same-task>`
|
|
119
|
-
- set `Current Task Status: blocked`
|
|
120
|
-
- keep `Next Command: /autodev`
|
|
121
|
-
- tell the user the phase should be revised before more execution
|
|
122
|
-
|
|
123
|
-
15. End with a short outcome summary and the next recommended command.
|
|
124
|
-
- Never execute a second task in the same run.
|
|
125
|
-
- If all tasks are now done, say `/autodev` will open the phase-review checkpoint next.
|
|
126
|
-
- Otherwise, say `/autodev` will open the task-review checkpoint for the completed task.
|
|
127
|
-
</process>
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
<purpose>
|
|
2
|
-
Map a brownfield repository quickly and produce a usable codebase brief without drifting into over-analysis.
|
|
3
|
-
</purpose>
|
|
4
|
-
|
|
5
|
-
<rules>
|
|
6
|
-
- The main `/autodev` session owns this workflow and the final synthesis.
|
|
7
|
-
- Specialized codebase agents are optional implementation helpers, not a separate user-facing mode.
|
|
8
|
-
- Prefer a small set of foreground codebase agents, run one at a time, only when agent delegation is clearly available.
|
|
9
|
-
- Give each agent a disjoint write target.
|
|
10
|
-
- If agent delegation is unavailable or unclear, continue inline without surfacing platform confusion.
|
|
11
|
-
- Use read-only investigation only. No git writes.
|
|
12
|
-
- Focus on information that will improve planning and execution for the active track.
|
|
13
|
-
</rules>
|
|
14
|
-
|
|
15
|
-
<process>
|
|
16
|
-
1. Run:
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
AUTODEV_ROOT="${CLAUDE_PLUGIN_ROOT:-$HOME/.claude}"
|
|
20
|
-
node "$AUTODEV_ROOT/autodev/bin/autodev-tools.cjs" init explore-codebase
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
2. If no project exists, stop and tell the user to use `/autodev` or `/autodev-new-project`.
|
|
24
|
-
|
|
25
|
-
3. Read:
|
|
26
|
-
- `.autodev/PROJECT.md`
|
|
27
|
-
- `.autodev/STATE.md`
|
|
28
|
-
- `.autodev/ACTIVE_TRACK`
|
|
29
|
-
- the active track docs if they exist
|
|
30
|
-
- representative repo files needed to orient the exploration
|
|
31
|
-
|
|
32
|
-
4. Do a small amount of direct repo reading first so the current session understands the workspace before deciding whether helper agents are useful.
|
|
33
|
-
|
|
34
|
-
5. If agent delegation is clearly available, explicitly call the `Agent` tool for these subagents, one at a time in the foreground, with owned outputs:
|
|
35
|
-
- `autodev-codebase-structure` for standalone installs, or `autodev:autodev-codebase-structure` in direct plugin runs, owns `.autodev/codebase/structure.md`
|
|
36
|
-
- `autodev-codebase-domain` for standalone installs, or `autodev:autodev-codebase-domain` in direct plugin runs, owns `.autodev/codebase/domain.md`
|
|
37
|
-
- `autodev-codebase-runtime` for standalone installs, or `autodev:autodev-codebase-runtime` in direct plugin runs, owns `.autodev/codebase/runtime.md`
|
|
38
|
-
- `autodev-codebase-quality` for standalone installs, or `autodev:autodev-codebase-quality` in direct plugin runs, owns `.autodev/codebase/quality.md`
|
|
39
|
-
|
|
40
|
-
6. Tell each agent:
|
|
41
|
-
- it is not alone in the codebase
|
|
42
|
-
- it must not overwrite another agent's file
|
|
43
|
-
- it should stay read-only except for its owned output file
|
|
44
|
-
- it should prefer concise, decision-useful findings over exhaustive listing
|
|
45
|
-
|
|
46
|
-
7. If agent delegation is unavailable, do not stop on the raw platform message.
|
|
47
|
-
Treat messages like `specialized agents aren't available` as an environment limitation, tell the user exploration will continue in the current session, and write the four owned output files directly.
|
|
48
|
-
|
|
49
|
-
8. After the four agent outputs are written, or after the current-session fallback writes them, review them and synthesize `.autodev/codebase/summary.md` with:
|
|
50
|
-
- architectural overview
|
|
51
|
-
- major constraints
|
|
52
|
-
- current track implications
|
|
53
|
-
- hotspots and likely safe change points
|
|
54
|
-
- the next planning risks to watch
|
|
55
|
-
|
|
56
|
-
9. Update `.autodev/STATE.md` and the active track `STATE.md` so they reflect:
|
|
57
|
-
- `Current Step: planning`
|
|
58
|
-
- `Next Command: /autodev`
|
|
59
|
-
- refreshed ISO timestamp
|
|
60
|
-
|
|
61
|
-
10. End with:
|
|
62
|
-
- the biggest structural insight
|
|
63
|
-
- the biggest risk
|
|
64
|
-
- `/autodev` as the next command
|
|
65
|
-
- `/autodev-plan-phase <n>` only as the optional manual shortcut when obvious
|
|
66
|
-
</process>
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
# autodev
|
|
2
|
-
|
|
3
|
-
Lean Claude Code workflow. No automatic commits. No branches. No worktrees. Git is read-only.
|
|
4
|
-
It resolves `.autodev/` state from the repo root even when you start Claude in a nested subdirectory.
|
|
5
|
-
It can auto-format edited code after writes when the repo already has a local formatter available.
|
|
6
|
-
|
|
7
|
-
## Main Entry
|
|
8
|
-
|
|
9
|
-
- `/autodev`
|
|
10
|
-
The normal command. It routes automatically through project setup, codebase mapping, planning, plan review, execution, review, verification, and cleanup.
|
|
11
|
-
|
|
12
|
-
## Manual Commands
|
|
13
|
-
|
|
14
|
-
- `/autodev-help`
|
|
15
|
-
Shows this reference.
|
|
16
|
-
- `/autodev-new-project`
|
|
17
|
-
Creates project state in `.autodev/` and the first active track under `.autodev/tracks/<track>/`.
|
|
18
|
-
- `/autodev-explore-codebase`
|
|
19
|
-
Uses foreground codebase agents, one at a time when available, to map a brownfield repo into `.autodev/codebase/`.
|
|
20
|
-
- `/autodev-plan-phase [phase]`
|
|
21
|
-
Creates or revises one phase plan plus task files in `.autodev/tracks/<track>/phases/NN-type-name/`.
|
|
22
|
-
- `/autodev-execute-phase [phase]`
|
|
23
|
-
Orchestrates exactly one task for the phase, preferring a fresh foreground delegated agent, and writes `TASK-NN-SUMMARY.md`.
|
|
24
|
-
- `/autodev-review-task [phase]`
|
|
25
|
-
Pauses after one completed task so the user can review the result before executing the next task or starting phase review.
|
|
26
|
-
- `/autodev-review-phase [phase]`
|
|
27
|
-
Uses foreground review agents, one at a time when available, for code quality, security, integration, and polish, then writes `NN-REVIEW.md`.
|
|
28
|
-
- `/autodev-verify-work [phase]`
|
|
29
|
-
Records manual verification in `NN-UAT.md` and captures fix-return gaps when verification fails.
|
|
30
|
-
- `/autodev-progress`
|
|
31
|
-
Shows project type, active track, phase status, and the next recommended route.
|
|
32
|
-
- `/autodev-cleanup`
|
|
33
|
-
Asks what to clean or archive. No flags required.
|
|
34
|
-
|
|
35
|
-
## Workflow Model
|
|
36
|
-
|
|
37
|
-
```text
|
|
38
|
-
project -> track -> phase -> tasks
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
- `project`
|
|
42
|
-
Whole repo or product context.
|
|
43
|
-
- `track`
|
|
44
|
-
The current initiative, feature line, refactor, or bugfix stream.
|
|
45
|
-
- `phase`
|
|
46
|
-
Small milestone slices inside the active track.
|
|
47
|
-
- `task`
|
|
48
|
-
Reviewable execution units inside a phase.
|
|
49
|
-
|
|
50
|
-
## Blocker Recovery
|
|
51
|
-
|
|
52
|
-
- Review or verification blockers should normally stay in the same phase.
|
|
53
|
-
- Preserve completed task history.
|
|
54
|
-
- Append `TASK-XX` remediation work to the same phase.
|
|
55
|
-
- Only create a new phase when the blocker reveals genuinely new scope.
|
|
56
|
-
|
|
57
|
-
## Default Flow
|
|
58
|
-
|
|
59
|
-
```text
|
|
60
|
-
/autodev
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Typical brownfield route:
|
|
64
|
-
|
|
65
|
-
```text
|
|
66
|
-
/autodev
|
|
67
|
-
-> new project
|
|
68
|
-
-> explore codebase
|
|
69
|
-
-> plan
|
|
70
|
-
-> review plan
|
|
71
|
-
-> execute
|
|
72
|
-
-> review task
|
|
73
|
-
-> execute
|
|
74
|
-
-> review task
|
|
75
|
-
-> review
|
|
76
|
-
-> verify
|
|
77
|
-
-> next track or cleanup
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
## Git Policy
|
|
81
|
-
|
|
82
|
-
Allowed:
|
|
83
|
-
|
|
84
|
-
- `git status`
|
|
85
|
-
- `git diff`
|
|
86
|
-
- `git log`
|
|
87
|
-
- `git show`
|
|
88
|
-
- `git rev-parse`
|
|
89
|
-
- `git ls-files`
|
|
90
|
-
- `git branch --show-current`
|
|
91
|
-
|
|
92
|
-
Blocked:
|
|
93
|
-
|
|
94
|
-
- `git init`
|
|
95
|
-
- `git add`
|
|
96
|
-
- `git commit`
|
|
97
|
-
- `git checkout`
|
|
98
|
-
- `git switch`
|
|
99
|
-
- `git merge`
|
|
100
|
-
- `git rebase`
|
|
101
|
-
- `git worktree`
|
|
102
|
-
- `git clean`
|
|
103
|
-
- `git cherry-pick`
|
|
104
|
-
- `git push`
|
|
105
|
-
- `git pull`
|
|
106
|
-
- `git stash`
|
|
107
|
-
- `git reset`
|
|
108
|
-
- `git fetch`
|
|
109
|
-
- `git clone`
|
|
110
|
-
- mutating `git branch`, `git tag`, and `git remote` commands
|