make-it-done 0.1.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 (42) hide show
  1. package/README.md +263 -0
  2. package/agents/.gitkeep +0 -0
  3. package/agents/mid-debugger.md +88 -0
  4. package/agents/mid-executor.md +69 -0
  5. package/agents/mid-planner.md +97 -0
  6. package/agents/mid-researcher.md +101 -0
  7. package/agents/mid-verifier.md +92 -0
  8. package/bin/install.js +122 -0
  9. package/commands/mid/.gitkeep +0 -0
  10. package/commands/mid/debug.md +19 -0
  11. package/commands/mid/do.md +24 -0
  12. package/commands/mid/help.md +77 -0
  13. package/commands/mid/init.md +18 -0
  14. package/commands/mid/next.md +18 -0
  15. package/commands/mid/plan.md +21 -0
  16. package/commands/mid/quick.md +24 -0
  17. package/commands/mid/report.md +16 -0
  18. package/commands/mid/status.md +16 -0
  19. package/commands/mid/verify.md +19 -0
  20. package/makeitdone/bin/mid-tools.cjs +2048 -0
  21. package/makeitdone/steps/agent-contracts.md +184 -0
  22. package/makeitdone/steps/anti-patterns.md +291 -0
  23. package/makeitdone/steps/context-budget.md +157 -0
  24. package/makeitdone/steps/init-gate.md +42 -0
  25. package/makeitdone/steps/model-route.md +70 -0
  26. package/makeitdone/steps/state-read.md +56 -0
  27. package/makeitdone/templates/plan.md +94 -0
  28. package/makeitdone/templates/project.md +62 -0
  29. package/makeitdone/templates/requirements.md +97 -0
  30. package/makeitdone/templates/roadmap.md +111 -0
  31. package/makeitdone/templates/state.md +28 -0
  32. package/makeitdone/templates/summary.md +58 -0
  33. package/makeitdone/workflows/debug.md +135 -0
  34. package/makeitdone/workflows/execute.md +218 -0
  35. package/makeitdone/workflows/init.md +113 -0
  36. package/makeitdone/workflows/next.md +114 -0
  37. package/makeitdone/workflows/plan.md +231 -0
  38. package/makeitdone/workflows/quick.md +151 -0
  39. package/makeitdone/workflows/report.md +138 -0
  40. package/makeitdone/workflows/status.md +135 -0
  41. package/makeitdone/workflows/verify.md +177 -0
  42. package/package.json +50 -0
@@ -0,0 +1,151 @@
1
+ # Quick Task Execution Workflow
2
+
3
+ Ad-hoc task execution without full phase structure. Useful for out-of-band work.
4
+
5
+ **Token budget**: ~12K (direct executor spawn, no wave structure)
6
+
7
+ ---
8
+
9
+ ## Context Setup
10
+
11
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/model-route.md
12
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/agent-contracts.md
13
+
14
+ ---
15
+
16
+ ## Execution
17
+
18
+ ### 1. Parse Task Description
19
+
20
+ ```bash
21
+ TASK_DESC="$ARGUMENTS"
22
+
23
+ if [ -z "$TASK_DESC" ]; then
24
+ error "Usage: /mid:quick '<task description>'"
25
+ exit 1
26
+ fi
27
+ ```
28
+
29
+ ### 2. Route Model
30
+
31
+ ```bash
32
+ context_window=$(mid-tools config get context_window)
33
+ model_profile=$(mid-tools config get model_profile)
34
+
35
+ if [ "$context_window" -lt 500000 ]; then
36
+ # Degrade to haiku
37
+ EXECUTOR_MODEL=haiku
38
+ output "warn: Low context, using haiku"
39
+ else
40
+ # Use profile routing
41
+ case "$model_profile" in
42
+ budget) EXECUTOR_MODEL=haiku ;;
43
+ balanced) EXECUTOR_MODEL=sonnet ;;
44
+ quality) EXECUTOR_MODEL=opus ;;
45
+ esac
46
+ fi
47
+ ```
48
+
49
+ ### 3. Spawn Executor (Direct)
50
+
51
+ ```bash
52
+ EXECUTOR_OUTPUT=$(spawn agent \
53
+ name=mid-executor \
54
+ model=$EXECUTOR_MODEL \
55
+ context=$(cat << EOF
56
+ mode: quick
57
+ task: $TASK_DESC
58
+ interactive: $([ "$INTERACTIVE_FLAG" = true ] && echo "true" || echo "false")
59
+ EOF
60
+ ))
61
+ ```
62
+
63
+ ### 4. Parse Output
64
+
65
+ ```bash
66
+ if [[ $EXECUTOR_OUTPUT == *"## WAVE COMPLETE"* ]] || \
67
+ [[ $EXECUTOR_OUTPUT == *"completed"* ]]; then
68
+ output "## TASK COMPLETE"
69
+
70
+ # Extract results
71
+ RESULTS=$(echo "$EXECUTOR_OUTPUT" | grep -A 10 "Results:")
72
+ echo "$RESULTS"
73
+
74
+ if [ "$VERIFY_FLAG" = true ]; then
75
+ # Quick verification
76
+ spawn mid-verifier mode=integration
77
+ fi
78
+
79
+ elif [[ $EXECUTOR_OUTPUT == *"## BLOCKED"* ]]; then
80
+ output "## TASK BLOCKED"
81
+
82
+ # Show blocker
83
+ BLOCKER=$(echo "$EXECUTOR_OUTPUT" | grep -A 5 "BLOCKED")
84
+ echo "$BLOCKER"
85
+
86
+ ask_user "How to proceed?"
87
+
88
+ else
89
+ output "## TASK FAILED"
90
+ ask_user "Debug or skip?"
91
+ fi
92
+ ```
93
+
94
+ ### 5. Update STATE (Optional)
95
+
96
+ If task is part of current phase:
97
+
98
+ ```bash
99
+ if [ "$UPDATE_STATE" = true ]; then
100
+ mid-tools state set last_quick_task "$TASK_DESC"
101
+ mid-tools state set last_quick_time $(date -u +%s)
102
+ fi
103
+ ```
104
+
105
+ ---
106
+
107
+ ## Usage Examples
108
+
109
+ ```bash
110
+ # Simple task
111
+ /mid:quick "Write unit tests for auth module"
112
+
113
+ # With verification
114
+ /mid:quick "Refactor login endpoint" --verify
115
+
116
+ # Interactive (ask questions)
117
+ /mid:quick "Design database schema" --interactive
118
+
119
+ # Don't update state
120
+ /mid:quick "Review code in PR" --no-state-update
121
+ ```
122
+
123
+ ---
124
+
125
+ ## Key Differences from /mid:do
126
+
127
+ | Aspect | /mid:do | /mid:quick |
128
+ |--------|---------|-----------|
129
+ | **Scope** | Full phase execution | Single task |
130
+ | **Structure** | PLAN.md + waves | Task description only |
131
+ | **State** | Full tracking | Optional |
132
+ | **Verification** | Per-wave gates | Optional |
133
+ | **Time budget** | Hours | 30 minutes max |
134
+
135
+ ---
136
+
137
+ ## Error Handling
138
+
139
+ - **No task description**: Show usage error
140
+ - **Blocked task**: Escalate to user
141
+ - **Context too low**: Fail with suggestion to run `/mid:status`
142
+ - **Task too complex**: Suggest using `/mid:plan` + `/mid:do`
143
+
144
+ ---
145
+
146
+ ## Anti-patterns Avoided
147
+
148
+ ✓ Lightweight (direct executor spawn)
149
+ ✓ No wave structure (simpler context)
150
+ ✓ Optional state updates (don't force tracking)
151
+ ✓ Time-boxed execution
@@ -0,0 +1,138 @@
1
+ # Report Generation Workflow
2
+
3
+ Create comprehensive project report across all phases.
4
+
5
+ **Token budget**: ~6K (frontmatter reads + light processing)
6
+
7
+ ---
8
+
9
+ ## Context Setup
10
+
11
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/state-read.md
12
+
13
+ ---
14
+
15
+ ## Execution
16
+
17
+ ### 1. Gather Phase Summaries
18
+
19
+ ```bash
20
+ for phase in 1 2 3 4 5; do
21
+ PHASE_DIR=".planning/phases/$(printf '%02d' $phase)-*"
22
+
23
+ if [ ! -d "$PHASE_DIR" ]; then
24
+ break # No more phases
25
+ fi
26
+
27
+ if [ -f "$PHASE_DIR/SUMMARY.md" ]; then
28
+ # Extract frontmatter + first 10 lines
29
+ SUMMARY=$(mid-tools fm get "$PHASE_DIR/SUMMARY.md")
30
+ STATUS=$(echo "$SUMMARY" | grep "^status:" | cut -d: -f2)
31
+ ACTUAL_HOURS=$(echo "$SUMMARY" | grep "^actual_hours:" | cut -d: -f2)
32
+
33
+ accumulate_phase_data $phase "$STATUS" "$ACTUAL_HOURS"
34
+ fi
35
+ done
36
+ ```
37
+
38
+ ### 2. Generate Report
39
+
40
+ ```bash
41
+ cat > report_output.md << EOF
42
+ # Project Report
43
+
44
+ **Generated**: $(date)
45
+ **Project**: $(mid-tools config get project_name)
46
+
47
+ ## Summary
48
+
49
+ Total Phases: $TOTAL_PHASES
50
+ Completed: $COMPLETED_PHASES
51
+ In Progress: $IN_PROGRESS_PHASES
52
+ Total Hours: $TOTAL_HOURS
53
+ Average per Phase: $AVG_HOURS
54
+
55
+ ## Phase Breakdown
56
+
57
+ | Phase | Status | Hours | Variance |
58
+ |-------|--------|-------|----------|
59
+ EOF
60
+
61
+ for phase in phases_data; do
62
+ echo "| Phase $phase | $status | $hours | $var |" >> report_output.md
63
+ done
64
+
65
+ cat >> report_output.md << EOF
66
+
67
+ ## Key Metrics
68
+
69
+ - Time Efficiency: Actual vs Estimated
70
+ - Quality Gates: Tests passed, reviews completed
71
+ - Risks Resolved: [count]
72
+ - Blockers Encountered: [count]
73
+
74
+ ## Next Steps
75
+
76
+ - $(phase_specific_next_step)
77
+
78
+ ---
79
+ *Report generated by makeitdone*
80
+ EOF
81
+ ```
82
+
83
+ ### 3. Save Report
84
+
85
+ ```bash
86
+ cp report_output.md .planning/REPORT_$(date +%Y%m%d_%H%M%S).md
87
+ ```
88
+
89
+ ### 4. Output
90
+
91
+ ```
92
+ ## REPORT GENERATED
93
+
94
+ File: .planning/REPORT_$(date +%Y%m%d_%H%M%S).md
95
+ Phases covered: $COVERED_PHASES
96
+ Total hours: $TOTAL_HOURS
97
+
98
+ Key metrics above.
99
+ ```
100
+
101
+ ---
102
+
103
+ ## Formats
104
+
105
+ Text format (default): Markdown report (above)
106
+
107
+ JSON format (--format json):
108
+
109
+ ```bash
110
+ jq -n \
111
+ --arg project "$(mid-tools config get project_name)" \
112
+ --arg phases "$TOTAL_PHASES" \
113
+ --arg hours "$TOTAL_HOURS" \
114
+ '{project: $project, phases: $phases | tonumber, hours: $hours | tonumber}'
115
+ ```
116
+
117
+ TOON format (--format toon):
118
+
119
+ ```bash
120
+ echo '{project: "'$(mid-tools config get project_name)'", phases: '$TOTAL_PHASES', hours: '$TOTAL_HOURS'}' | \
121
+ node ~/.claude/makeitdone/bin/mid-tools.cjs toon -
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Error Handling
127
+
128
+ - **No SUMMARY.md files**: Report partial data (phases completed so far)
129
+ - **Invalid config**: Use defaults
130
+ - **Date formatting issue**: Use ISO format fallback
131
+
132
+ ---
133
+
134
+ ## Anti-patterns Avoided
135
+
136
+ ✓ Frontmatter-only reads (small data)
137
+ ✓ Report uses TOON for JSON output
138
+ ✓ No agent spawning (pure data aggregation)
@@ -0,0 +1,135 @@
1
+ # Status Workflow
2
+
3
+ Show current project status and phase progress.
4
+
5
+ **Token budget**: ~4K (frontmatter reads only)
6
+
7
+ ---
8
+
9
+ ## Context Setup
10
+
11
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/state-read.md
12
+
13
+ ---
14
+
15
+ ## Execution
16
+
17
+ ### 1. Load State
18
+
19
+ ```bash
20
+ context_window=$(mid-tools config get context_window)
21
+
22
+ if [ "$context_window" -lt 500000 ]; then
23
+ STATE=$(mid-tools fm get .planning/STATE.md)
24
+ else
25
+ STATE=$(mid-tools state get)
26
+ fi
27
+ ```
28
+
29
+ ### 2. Extract Metrics
30
+
31
+ ```bash
32
+ PHASE=$(echo "$STATE" | grep "^phase:" | cut -d: -f2 | tr -d ' ')
33
+ CURRENT_WAVE=$(echo "$STATE" | grep "^current_wave:" | cut -d: -f2 | tr -d ' ')
34
+ PHASE_START=$(echo "$STATE" | grep "phase_start_time:" | cut -d: -f2 | tr -d ' ')
35
+
36
+ # Calculate elapsed time
37
+ ELAPSED=$(($(date +%s) - $PHASE_START))
38
+ ELAPSED_HOURS=$(($ELAPSED / 3600))
39
+ ELAPSED_MINS=$((($ELAPSED % 3600) / 60))
40
+ ```
41
+
42
+ ### 3. Load Roadmap (frontmatter)
43
+
44
+ ```bash
45
+ ROADMAP_FM=$(mid-tools fm get .planning/ROADMAP.md)
46
+ TOTAL_PHASES=$(echo "$ROADMAP_FM" | grep -c "^## [0-9]")
47
+ ```
48
+
49
+ ### 4. Load Plan Progress
50
+
51
+ ```bash
52
+ PHASE_DIR=".planning/phases/$(printf '%02d' $PHASE)-*"
53
+
54
+ if [ -f "$PHASE_DIR/PLAN.md" ]; then
55
+ PLAN_FM=$(mid-tools fm get "$PHASE_DIR/PLAN.md")
56
+ TOTAL_TASKS=$(echo "$PLAN_FM" | grep "^tasks:" | cut -d: -f2)
57
+ TOTAL_WAVES=$(echo "$PLAN_FM" | grep "^waves:" | cut -d: -f2)
58
+ fi
59
+ ```
60
+
61
+ ### 5. Format Output
62
+
63
+ Text format (default):
64
+
65
+ ```
66
+ ╔════════════════════════════════════╗
67
+ ║ makeitdone Project Status ║
68
+ ╚════════════════════════════════════╝
69
+
70
+ Project: [from config.json]
71
+ Phase: $PHASE / $TOTAL_PHASES
72
+ Wave: $CURRENT_WAVE / $TOTAL_WAVES
73
+
74
+ Tasks: [count completed] / $TOTAL_TASKS
75
+ Time: ${ELAPSED_HOURS}h ${ELAPSED_MINS}m
76
+
77
+ Recent Updates:
78
+ - [from STATE.md notes]
79
+
80
+ Next: /mid:do $PHASE --wave $CURRENT_WAVE
81
+ ```
82
+
83
+ JSON format (--format json):
84
+
85
+ ```json
86
+ {
87
+ "phase": $PHASE,
88
+ "total_phases": $TOTAL_PHASES,
89
+ "wave": $CURRENT_WAVE,
90
+ "total_waves": $TOTAL_WAVES,
91
+ "tasks_total": $TOTAL_TASKS,
92
+ "elapsed_seconds": $ELAPSED,
93
+ "status": "in-progress"
94
+ }
95
+ ```
96
+
97
+ TOON format (--format toon):
98
+
99
+ ```
100
+ phase: $PHASE
101
+ total_phases: $TOTAL_PHASES
102
+ wave: $CURRENT_WAVE
103
+ total_waves: $TOTAL_WAVES
104
+ tasks_total: $TOTAL_TASKS
105
+ elapsed_seconds: $ELAPSED
106
+ status: in-progress
107
+ ```
108
+
109
+ ### 6. Output Status
110
+
111
+ ```
112
+ ## STATUS REPORT
113
+
114
+ Phase: $PHASE / $TOTAL_PHASES (progress%)
115
+ Wave: $CURRENT_WAVE / $TOTAL_WAVES
116
+ Time: ${ELAPSED_HOURS}h ${ELAPSED_MINS}m
117
+
118
+ Next: See command above
119
+ ```
120
+
121
+ ---
122
+
123
+ ## Error Handling
124
+
125
+ - **Missing STATE.md**: Suggest `/mid:init`
126
+ - **Missing PLAN.md**: Suggest `/mid:plan --mode phase --phase $PHASE`
127
+ - **Invalid format flag**: Default to text
128
+
129
+ ---
130
+
131
+ ## Anti-patterns Avoided
132
+
133
+ ✓ Frontmatter-only reads (no full files)
134
+ ✓ Multiple output formats (user choice)
135
+ ✓ Fast calculation (no spawning agents)
@@ -0,0 +1,177 @@
1
+ # Verify Phase Workflow
2
+
3
+ Quality gate for phase completion. Validates against acceptance criteria.
4
+
5
+ **Token budget**: ~8K (read-only work, haiku agents)
6
+
7
+ ---
8
+
9
+ ## Context Setup
10
+
11
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/state-read.md
12
+ @/Users/ismailalam/Development/my/makeitdone/makeitdone/steps/model-route.md
13
+
14
+ ---
15
+
16
+ ## Modes
17
+
18
+ - `--mode integration` — test coordination, file presence, contracts
19
+ - `--mode security` — OWASP checks, auth patterns, secret scanning
20
+ - `--mode ui` — visual validation checkpoints
21
+ - `--mode audit` — full verification (all three)
22
+
23
+ ---
24
+
25
+ ## Initialization
26
+
27
+ ### 1. Load Phase
28
+
29
+ ```bash
30
+ PHASE=${phase_arg}
31
+ PHASE_DIR=".planning/phases/$(printf '%02d' $PHASE)-*"
32
+
33
+ if [ ! -f "$PHASE_DIR/PLAN.md" ] || [ ! -f ".planning/REQUIREMENTS.md" ]; then
34
+ error "Phase or requirements not found"
35
+ fi
36
+ ```
37
+
38
+ ### 2. Check Acceptance Criteria
39
+
40
+ ```bash
41
+ ACCEPTANCE=$(mid-tools fm get ".planning/REQUIREMENTS.md" --field "acceptance_criteria" || \
42
+ mid-tools fm get "$PHASE_DIR/PLAN.md" --field "acceptance_criteria")
43
+
44
+ if [ -z "$ACCEPTANCE" ]; then
45
+ warn "No acceptance criteria found, skipping verification"
46
+ exit 0
47
+ fi
48
+ ```
49
+
50
+ ---
51
+
52
+ ## Execution (Integration Mode)
53
+
54
+ ### 1. Spawn Verifier
55
+
56
+ ```bash
57
+ VERIFIER_OUTPUT=$(spawn agent \
58
+ name=mid-verifier \
59
+ model=haiku \
60
+ context=$(cat << EOF
61
+ mode: integration
62
+ phase: $PHASE
63
+ acceptance_criteria: $ACCEPTANCE
64
+ phase_dir: $PHASE_DIR
65
+ EOF
66
+ ))
67
+ ```
68
+
69
+ ### 2. Parse Result
70
+
71
+ ```bash
72
+ if [[ $VERIFIER_OUTPUT == *"## VERIFICATION PASSED"* ]]; then
73
+ output_marker "## VERIFICATION PASSED"
74
+ exit 0
75
+ elif [[ $VERIFIER_OUTPUT == *"## VERIFICATION FAILED"* ]]; then
76
+ # Extract blocker reasons
77
+ BLOCKERS=$(echo "$VERIFIER_OUTPUT" | grep -A 10 "FAILED")
78
+ echo "$BLOCKERS"
79
+ output_marker "## VERIFICATION FAILED"
80
+ ask_user "Fix blockers and retry? /mid:verify --phase $PHASE"
81
+ else
82
+ output_marker "## VERIFICATION INCOMPLETE"
83
+ fi
84
+ ```
85
+
86
+ ---
87
+
88
+ ## Execution (Security Mode)
89
+
90
+ ```bash
91
+ VERIFIER_OUTPUT=$(spawn agent \
92
+ name=mid-verifier \
93
+ model=haiku \
94
+ context=$(cat << EOF
95
+ mode: security
96
+ phase: $PHASE
97
+ phase_dir: $PHASE_DIR
98
+ EOF
99
+ ))
100
+ ```
101
+
102
+ Parse same as integration mode. Typical blockers:
103
+ - Hardcoded secrets
104
+ - Missing auth checks
105
+ - Vulnerable dependencies
106
+ - SQL injection patterns
107
+
108
+ ---
109
+
110
+ ## Execution (Audit Mode)
111
+
112
+ Runs all three modes sequentially:
113
+
114
+ ```bash
115
+ for mode in integration security ui; do
116
+ spawn mid-verifier mode=$mode phase=$PHASE
117
+
118
+ if result contains "FAILED"; then
119
+ accumulate_blockers
120
+ fi
121
+ done
122
+
123
+ if [ ${#blockers[@]} -eq 0 ]; then
124
+ output_marker "## VERIFICATION PASSED"
125
+ mid-tools state advance $PHASE
126
+ else
127
+ output_marker "## VERIFICATION FAILED - $BLOCKER_COUNT issues"
128
+ fi
129
+ ```
130
+
131
+ ---
132
+
133
+ ## Success Path
134
+
135
+ ```
136
+ ## VERIFICATION PASSED
137
+
138
+ Criteria: 8/8 ✅
139
+ Duration: 3m
140
+ Phase: Ready for /mid:next
141
+ ```
142
+
143
+ ---
144
+
145
+ ## Failure Path
146
+
147
+ ```
148
+ ## VERIFICATION FAILED - Security issues
149
+
150
+ Blockers:
151
+ 1. Hardcoded API key in .env.example (line 5)
152
+ Fix: Move to .env, add to .gitignore
153
+
154
+ 2. Missing CSRF token on POST /user (route.ts:42)
155
+ Fix: Add csrf middleware
156
+
157
+ Action: Apply fixes, then /mid:verify --phase 1
158
+ ```
159
+
160
+ ---
161
+
162
+ ## Error Handling
163
+
164
+ - **No acceptance criteria**: Warn, skip verification
165
+ - **Verifier timeout**: Partial results OK, user can retry
166
+ - **Verification incomplete**: Mark as incomplete, ask for review
167
+ - **Critical blocker**: Escalate to user
168
+
169
+ ---
170
+
171
+ ## Anti-patterns Avoided
172
+
173
+ ✓ Read-only work (haiku agents only)
174
+ ✓ Frontmatter-only reads (context budget)
175
+ ✓ Exact completion marker checking
176
+ ✓ Fast-fail on critical blockers
177
+ ✓ No attempt to fix (diagnose + escalate)
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "make-it-done",
3
+ "version": "0.1.0",
4
+ "description": "Token-optimized skill orchestration framework for Claude Code",
5
+ "type": "module",
6
+ "bin": {
7
+ "makeitdone": "bin/install.js",
8
+ "mid": "bin/install.js"
9
+ },
10
+ "scripts": {
11
+ "prepublishOnly": "node -e \"import('fs').then(fs => fs.chmodSync('bin/install.js', '755'))\""
12
+ },
13
+ "keywords": [
14
+ "claude",
15
+ "claude-code",
16
+ "orchestration",
17
+ "toon",
18
+ "token-optimization",
19
+ "spec-driven"
20
+ ],
21
+ "author": "Ismail Alam",
22
+ "license": "MIT",
23
+ "dependencies": {
24
+ "@toon-format/toon": "^2.1.0"
25
+ },
26
+ "devDependencies": {
27
+ "@types/node": "^20.10.0",
28
+ "esbuild": "^0.19.10",
29
+ "typescript": "^5.3.3"
30
+ },
31
+ "engines": {
32
+ "node": ">=18.0.0"
33
+ },
34
+ "files": [
35
+ "bin/",
36
+ "makeitdone/",
37
+ "commands/",
38
+ "agents/",
39
+ "README.md",
40
+ "package.json"
41
+ ],
42
+ "repository": {
43
+ "type": "git",
44
+ "url": "git+https://github.com/itzmail/make-it-done.git"
45
+ },
46
+ "homepage": "https://github.com/itzmail/make-it-done#readme",
47
+ "bugs": {
48
+ "url": "https://github.com/itzmail/make-it-done/issues"
49
+ }
50
+ }