moai-adk 0.15.0__py3-none-any.whl → 0.15.1__py3-none-any.whl
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.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +78 -44
- moai_adk/templates/.claude/commands/alfred/0-project.md +510 -181
- moai_adk/templates/.claude/commands/alfred/1-plan.md +94 -16
- moai_adk/templates/.claude/commands/alfred/2-run.md +97 -13
- moai_adk/templates/.claude/commands/alfred/3-sync.md +92 -17
- {moai_adk-0.15.0.dist-info → moai_adk-0.15.1.dist-info}/METADATA +89 -74
- {moai_adk-0.15.0.dist-info → moai_adk-0.15.1.dist-info}/RECORD +10 -10
- {moai_adk-0.15.0.dist-info → moai_adk-0.15.1.dist-info}/WHEEL +0 -0
- {moai_adk-0.15.0.dist-info → moai_adk-0.15.1.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.15.0.dist-info → moai_adk-0.15.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -444,15 +444,72 @@ Present your plan in the following format:
|
|
|
444
444
|
- **Branches/PR**: [Git operations by mode]
|
|
445
445
|
|
|
446
446
|
---
|
|
447
|
-
|
|
448
|
-
|
|
447
|
+
|
|
448
|
+
## Plan Approval Decision Point
|
|
449
|
+
|
|
450
|
+
After the planning phase is complete, Alfred uses `AskUserQuestion` tool (documented in moai-alfred-interactive-questions skill) to obtain explicit user approval before proceeding to SPEC creation.
|
|
451
|
+
|
|
452
|
+
**Example AskUserQuestion Call**:
|
|
453
|
+
```python
|
|
454
|
+
AskUserQuestion(
|
|
455
|
+
questions=[
|
|
456
|
+
{
|
|
457
|
+
"question": "Plan development is complete. Would you like to proceed with SPEC creation based on this plan?",
|
|
458
|
+
"header": "Plan Approval",
|
|
459
|
+
"multiSelect": false,
|
|
460
|
+
"options": [
|
|
461
|
+
{
|
|
462
|
+
"label": "✅ Proceed with SPEC Creation",
|
|
463
|
+
"description": "Create SPEC files in .moai/specs/SPEC-{ID}/ based on approved plan"
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"label": "🔄 Request Modifications",
|
|
467
|
+
"description": "Specify changes to the plan before SPEC creation"
|
|
468
|
+
},
|
|
469
|
+
{
|
|
470
|
+
"label": "⏸️ Save as Draft",
|
|
471
|
+
"description": "Save plan as draft without creating SPEC files yet"
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
"label": "❌ Cancel",
|
|
475
|
+
"description": "Discard plan and return to planning phase"
|
|
476
|
+
}
|
|
477
|
+
]
|
|
478
|
+
}
|
|
479
|
+
]
|
|
480
|
+
)
|
|
481
|
+
```
|
|
482
|
+
|
|
483
|
+
**Response Processing**:
|
|
484
|
+
- **"✅ Proceed with SPEC Creation"** (`answers["0"] === "✅ Proceed with SPEC Creation"`) → Execute Phase 2
|
|
485
|
+
- Invoke spec-builder agent with approved plan
|
|
486
|
+
- Create spec.md, plan.md, acceptance.md files in `.moai/specs/SPEC-{ID}/`
|
|
487
|
+
- Initialize @SPEC TAG system
|
|
488
|
+
- Create feature branch via git-manager
|
|
489
|
+
- Create Draft PR for review
|
|
490
|
+
|
|
491
|
+
- **"🔄 Request Modifications"** (`answers["0"] === "🔄 Request Modifications"`) → Repeat planning phase
|
|
492
|
+
- Collect modification requests from user
|
|
493
|
+
- Update plan based on feedback
|
|
494
|
+
- Re-present plan for approval (recursive decision)
|
|
495
|
+
|
|
496
|
+
- **"⏸️ Save as Draft"** (`answers["0"] === "⏸️ Save as Draft"`) → Save without SPEC
|
|
497
|
+
- Save plan to `.moai/specs/SPEC-{ID}/plan.md` with status: draft
|
|
498
|
+
- Commit with message "draft(spec): WIP SPEC-{ID} - {title}"
|
|
499
|
+
- User can resume with `/alfred:1-plan resume SPEC-{ID}`
|
|
500
|
+
|
|
501
|
+
- **"❌ Cancel"** (`answers["0"] === "❌ Cancel"`) → End task
|
|
502
|
+
- Discard plan artifacts
|
|
503
|
+
- Return user to initial planning prompt
|
|
504
|
+
- No files created or modified
|
|
505
|
+
|
|
449
506
|
```
|
|
450
507
|
|
|
451
508
|
---
|
|
452
509
|
|
|
453
510
|
## 🚀 STEP 2 Implementation Guide: Create a Plan (After Approval)
|
|
454
511
|
|
|
455
|
-
Only if the user selects **"Proceed
|
|
512
|
+
Only if the user selects **"✅ Proceed with SPEC Creation"** will Alfred call the spec-builder agent to begin building the SPEC document.
|
|
456
513
|
|
|
457
514
|
### EARS specification writing guide
|
|
458
515
|
|
|
@@ -759,27 +816,32 @@ See `.coderabbit.yaml` for detailed SPEC review checklist.
|
|
|
759
816
|
|
|
760
817
|
## Final Step
|
|
761
818
|
|
|
762
|
-
After
|
|
819
|
+
After SPEC creation completes, Alfred automatically invokes AskUserQuestion to ask the user what to do next:
|
|
763
820
|
|
|
821
|
+
**Example AskUserQuestion Call**:
|
|
764
822
|
```python
|
|
765
823
|
AskUserQuestion(
|
|
766
824
|
questions=[
|
|
767
825
|
{
|
|
768
|
-
"question": "
|
|
769
|
-
"header": "
|
|
826
|
+
"question": "SPEC creation is complete. What would you like to do next?",
|
|
827
|
+
"header": "Next Steps",
|
|
770
828
|
"multiSelect": false,
|
|
771
829
|
"options": [
|
|
772
830
|
{
|
|
773
|
-
"label": "🔨
|
|
774
|
-
"description": "/alfred:2-run SPEC-XXX
|
|
831
|
+
"label": "🔨 Start Implementation",
|
|
832
|
+
"description": "Proceed to /alfred:2-run SPEC-XXX for TDD implementation"
|
|
833
|
+
},
|
|
834
|
+
{
|
|
835
|
+
"label": "📝 Review SPEC",
|
|
836
|
+
"description": "Review and modify SPEC documents before implementation"
|
|
775
837
|
},
|
|
776
838
|
{
|
|
777
|
-
"label": "
|
|
778
|
-
"description": "
|
|
839
|
+
"label": "🔄 New Session",
|
|
840
|
+
"description": "Execute /clear for better context management (recommended)"
|
|
779
841
|
},
|
|
780
842
|
{
|
|
781
|
-
"label": "
|
|
782
|
-
"description": "
|
|
843
|
+
"label": "❌ Cancel",
|
|
844
|
+
"description": "Return to planning phase"
|
|
783
845
|
}
|
|
784
846
|
]
|
|
785
847
|
}
|
|
@@ -787,10 +849,26 @@ AskUserQuestion(
|
|
|
787
849
|
)
|
|
788
850
|
```
|
|
789
851
|
|
|
790
|
-
**
|
|
791
|
-
-
|
|
792
|
-
-
|
|
793
|
-
-
|
|
852
|
+
**Response Processing**:
|
|
853
|
+
- **"🔨 Start Implementation"** (`answers["0"] === "🔨 Start Implementation"`) → Proceed to `/alfred:2-run`
|
|
854
|
+
- Display: "Starting TDD implementation workflow..."
|
|
855
|
+
- User can execute: `/alfred:2-run SPEC-XXX`
|
|
856
|
+
- Continue to next phase without session break
|
|
857
|
+
|
|
858
|
+
- **"📝 Review SPEC"** (`answers["0"] === "📝 Review SPEC"`) → Review generated SPEC
|
|
859
|
+
- Display: "📁 SPEC files created in `.moai/specs/SPEC-XXX/`"
|
|
860
|
+
- Show files: spec.md, plan.md, acceptance.md
|
|
861
|
+
- User can modify and then run `/alfred:2-run SPEC-XXX`
|
|
862
|
+
|
|
863
|
+
- **"🔄 New Session"** (`answers["0"] === "🔄 New Session"`) → Clear and restart
|
|
864
|
+
- Display: "⏳ Clearing session for better context management..."
|
|
865
|
+
- Note: Improves performance for large projects
|
|
866
|
+
- Next session: User can run `/alfred:2-run SPEC-XXX`
|
|
867
|
+
|
|
868
|
+
- **"❌ Cancel"** (`answers["0"] === "❌ Cancel"`) → Return to planning
|
|
869
|
+
- Display: "Returning to planning phase..."
|
|
870
|
+
- SPEC files preserved for future use
|
|
871
|
+
- User can create more SPECs with `/alfred:1-plan`
|
|
794
872
|
|
|
795
873
|
---
|
|
796
874
|
|
|
@@ -231,9 +231,72 @@ After reviewing the action plan, select one of the following:
|
|
|
231
231
|
|
|
232
232
|
---
|
|
233
233
|
|
|
234
|
+
## Implementation Strategy Approval
|
|
235
|
+
|
|
236
|
+
After the execution plan is ready, Alfred uses `AskUserQuestion` tool (documented in moai-alfred-interactive-questions skill) to obtain explicit user approval before proceeding to TDD implementation.
|
|
237
|
+
|
|
238
|
+
**Example AskUserQuestion Call**:
|
|
239
|
+
```python
|
|
240
|
+
AskUserQuestion(
|
|
241
|
+
questions=[
|
|
242
|
+
{
|
|
243
|
+
"question": "Implementation plan is ready. How would you like to proceed?",
|
|
244
|
+
"header": "Implementation Approval",
|
|
245
|
+
"multiSelect": false,
|
|
246
|
+
"options": [
|
|
247
|
+
{
|
|
248
|
+
"label": "✅ Proceed with TDD",
|
|
249
|
+
"description": "Start RED → GREEN → REFACTOR cycle"
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"label": "🔍 Research First",
|
|
253
|
+
"description": "Invoke Explore agent to study existing code patterns"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"label": "🔄 Modify Strategy",
|
|
257
|
+
"description": "Request changes to implementation approach"
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
"label": "⏸️ Postpone",
|
|
261
|
+
"description": "Save plan and return later"
|
|
262
|
+
}
|
|
263
|
+
]
|
|
264
|
+
}
|
|
265
|
+
]
|
|
266
|
+
)
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
**Response Processing**:
|
|
270
|
+
- **"✅ Proceed with TDD"** (`answers["0"] === "✅ Proceed with TDD"`) → Execute Phase 2
|
|
271
|
+
- Proceed directly to STEP 2 (TDD implementation)
|
|
272
|
+
- Invoke tdd-implementer agent with approved plan
|
|
273
|
+
- Begin RED phase (write failing tests)
|
|
274
|
+
- Display: "🔴 Starting RED phase..."
|
|
275
|
+
|
|
276
|
+
- **"🔍 Research First"** (`answers["0"] === "🔍 Research First"`) → Run exploration first
|
|
277
|
+
- Invoke Explore agent to analyze existing codebase
|
|
278
|
+
- Pass exploration results to implementation-planner
|
|
279
|
+
- Re-generate plan with research insights
|
|
280
|
+
- Re-present plan for approval
|
|
281
|
+
- Display: "🔍 Codebase exploration complete. Plan updated."
|
|
282
|
+
|
|
283
|
+
- **"🔄 Modify Strategy"** (`answers["0"] === "🔄 Modify Strategy"`) → Revise plan
|
|
284
|
+
- Collect strategy modification requests from user
|
|
285
|
+
- Update implementation plan with changes
|
|
286
|
+
- Re-present for approval (recursive)
|
|
287
|
+
- Display: "🔄 Plan modified. Please review updated strategy."
|
|
288
|
+
|
|
289
|
+
- **"⏸️ Postpone"** (`answers["0"] === "⏸️ Postpone"`) → Save and resume later
|
|
290
|
+
- Save plan to `.moai/specs/SPEC-{ID}/plan.md`
|
|
291
|
+
- Commit with message "plan(spec): Save implementation plan for SPEC-{ID}"
|
|
292
|
+
- User can resume with `/alfred:2-run SPEC-{ID}`
|
|
293
|
+
- Display: "⏸️ Plan saved. Resume with `/alfred:2-run SPEC-{ID}`"
|
|
294
|
+
|
|
295
|
+
---
|
|
296
|
+
|
|
234
297
|
## 🚀 STEP 2: Execute task (after user approval)
|
|
235
298
|
|
|
236
|
-
After user approval (
|
|
299
|
+
After user approval (collected via the AskUserQuestion decision point above), **call the tdd-implementer agent using the Task tool**.
|
|
237
300
|
|
|
238
301
|
---
|
|
239
302
|
|
|
@@ -667,25 +730,30 @@ Only if the user selects **"Proceed"** or **"Start"** will Alfred call the tdd-i
|
|
|
667
730
|
|
|
668
731
|
Alfred calls AskUserQuestion to collect user's next action:
|
|
669
732
|
|
|
733
|
+
**Example AskUserQuestion Call**:
|
|
670
734
|
```python
|
|
671
735
|
AskUserQuestion(
|
|
672
736
|
questions=[
|
|
673
737
|
{
|
|
674
|
-
"question": "
|
|
675
|
-
"header": "
|
|
738
|
+
"question": "Implementation is complete. What would you like to do next?",
|
|
739
|
+
"header": "Next Steps",
|
|
676
740
|
"multiSelect": false,
|
|
677
741
|
"options": [
|
|
678
742
|
{
|
|
679
|
-
"label": "📚
|
|
680
|
-
"description": "/alfred:3-sync
|
|
743
|
+
"label": "📚 Synchronize Documentation",
|
|
744
|
+
"description": "Proceed to /alfred:3-sync for documentation synchronization"
|
|
745
|
+
},
|
|
746
|
+
{
|
|
747
|
+
"label": "🔨 Implement More Features",
|
|
748
|
+
"description": "Continue with /alfred:2-run SPEC-XXX for next feature"
|
|
681
749
|
},
|
|
682
750
|
{
|
|
683
|
-
"label": "
|
|
684
|
-
"description": "
|
|
751
|
+
"label": "🔄 New Session",
|
|
752
|
+
"description": "Execute /clear for better context management (recommended)"
|
|
685
753
|
},
|
|
686
754
|
{
|
|
687
|
-
"label": "
|
|
688
|
-
"description": "
|
|
755
|
+
"label": "✅ Complete",
|
|
756
|
+
"description": "Finish current session"
|
|
689
757
|
}
|
|
690
758
|
]
|
|
691
759
|
}
|
|
@@ -693,10 +761,26 @@ AskUserQuestion(
|
|
|
693
761
|
)
|
|
694
762
|
```
|
|
695
763
|
|
|
696
|
-
**
|
|
697
|
-
-
|
|
698
|
-
-
|
|
699
|
-
-
|
|
764
|
+
**Response Processing**:
|
|
765
|
+
- **"📚 Synchronize Documentation"** (`answers["0"] === "📚 Synchronize Documentation"`) → Proceed to `/alfred:3-sync`
|
|
766
|
+
- Display: "Starting documentation synchronization..."
|
|
767
|
+
- User can execute: `/alfred:3-sync auto`
|
|
768
|
+
- This verifies TAGs, updates docs, and prepares for PR merge
|
|
769
|
+
|
|
770
|
+
- **"🔨 Implement More Features"** (`answers["0"] === "🔨 Implement More Features"`) → Continue implementation
|
|
771
|
+
- Display: "Ready for next feature implementation..."
|
|
772
|
+
- User can run: `/alfred:2-run SPEC-YYY` for another feature
|
|
773
|
+
- Maintains current session context
|
|
774
|
+
|
|
775
|
+
- **"🔄 New Session"** (`answers["0"] === "🔄 New Session"`) → Clear and restart
|
|
776
|
+
- Display: "⏳ Clearing session for better context management..."
|
|
777
|
+
- Recommended after large implementations
|
|
778
|
+
- Next session: Can run any command
|
|
779
|
+
|
|
780
|
+
- **"✅ Complete"** (`answers["0"] === "✅ Complete"`) → End current workflow
|
|
781
|
+
- Display: "Implementation workflow complete!"
|
|
782
|
+
- Recommend next manual steps via `/alfred:3-sync`
|
|
783
|
+
- User can review work or plan next features
|
|
700
784
|
|
|
701
785
|
---
|
|
702
786
|
|
|
@@ -303,12 +303,45 @@ To skip pre-verification, use the `/alfred:3-sync --skip-pre-check` option.
|
|
|
303
303
|
|
|
304
304
|
---
|
|
305
305
|
|
|
306
|
-
###
|
|
306
|
+
### 🎯 Synchronization Plan Approval (DECISION POINT 1)
|
|
307
307
|
|
|
308
|
-
After
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
308
|
+
After completing synchronization analysis and establishing a plan, Alfred invokes AskUserQuestion to gather user approval:
|
|
309
|
+
|
|
310
|
+
```python
|
|
311
|
+
AskUserQuestion(
|
|
312
|
+
questions=[
|
|
313
|
+
{
|
|
314
|
+
"question": "Synchronization plan is ready. How would you like to proceed?",
|
|
315
|
+
"header": "Plan Approval",
|
|
316
|
+
"multiSelect": false,
|
|
317
|
+
"options": [
|
|
318
|
+
{
|
|
319
|
+
"label": "✅ Proceed with Sync",
|
|
320
|
+
"description": "Execute document synchronization as planned"
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
"label": "🔄 Request Modifications",
|
|
324
|
+
"description": "Specify changes to the synchronization strategy"
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"label": "🔍 Review Details",
|
|
328
|
+
"description": "Re-examine TAG validation results and changes"
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
"label": "❌ Abort",
|
|
332
|
+
"description": "Cancel synchronization, keep current state"
|
|
333
|
+
}
|
|
334
|
+
]
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
)
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
**Response Processing**:
|
|
341
|
+
- **✅ Proceed with Sync** (`answers["0"] === "Proceed"`) → Execute Phase 2 (document synchronization)
|
|
342
|
+
- **🔄 Request Modifications** (`answers["0"] === "Modifications"`) → Collect feedback and re-analyze
|
|
343
|
+
- **🔍 Review Details** (`answers["0"] === "Review"`) → Display TAG validation results, then re-present decision
|
|
344
|
+
- **❌ Abort** (`answers["0"] === "Abort"`) → Stop synchronization, maintain current branches
|
|
312
345
|
|
|
313
346
|
---
|
|
314
347
|
|
|
@@ -879,29 +912,71 @@ Report synchronization results in a structured format:
|
|
|
879
912
|
3. Orphan TAG cleanup
|
|
880
913
|
```
|
|
881
914
|
|
|
915
|
+
## 🎯 PR Merge Strategy Selection (DECISION POINT 2)
|
|
916
|
+
|
|
917
|
+
After document synchronization completes successfully, Alfred checks team mode and invokes AskUserQuestion for PR merge strategy:
|
|
918
|
+
|
|
919
|
+
```python
|
|
920
|
+
AskUserQuestion(
|
|
921
|
+
questions=[
|
|
922
|
+
{
|
|
923
|
+
"question": "Document synchronization complete. How would you like to handle the PR?",
|
|
924
|
+
"header": "PR Merge Strategy",
|
|
925
|
+
"multiSelect": false,
|
|
926
|
+
"options": [
|
|
927
|
+
{
|
|
928
|
+
"label": "🤖 Auto-Merge (Recommended)",
|
|
929
|
+
"description": "Automatically merge PR and clean up branch (team mode)"
|
|
930
|
+
},
|
|
931
|
+
{
|
|
932
|
+
"label": "📋 Manual Review",
|
|
933
|
+
"description": "Keep PR in Ready state for manual review and merge"
|
|
934
|
+
},
|
|
935
|
+
{
|
|
936
|
+
"label": "✏️ Keep as Draft",
|
|
937
|
+
"description": "Maintain PR in draft state for further refinement"
|
|
938
|
+
},
|
|
939
|
+
{
|
|
940
|
+
"label": "🔄 New Cycle",
|
|
941
|
+
"description": "Save changes and start new feature (skip PR for now)"
|
|
942
|
+
}
|
|
943
|
+
]
|
|
944
|
+
}
|
|
945
|
+
]
|
|
946
|
+
)
|
|
947
|
+
```
|
|
948
|
+
|
|
949
|
+
**Response Processing**:
|
|
950
|
+
- **🤖 Auto-Merge** (`answers["0"] === "Auto-Merge"`) → Execute PR auto-merge with CI checks, update develop branch
|
|
951
|
+
- **📋 Manual Review** (`answers["0"] === "Manual"`) → Transition PR to Ready state, notify reviewers
|
|
952
|
+
- **✏️ Keep as Draft** (`answers["0"] === "Draft"`) → Leave PR in draft, ready for refinement
|
|
953
|
+
- **🔄 New Cycle** (`answers["0"] === "New"`) → Skip PR handling, proceed to next feature planning
|
|
954
|
+
|
|
955
|
+
---
|
|
956
|
+
|
|
882
957
|
## Final Step
|
|
883
958
|
|
|
884
|
-
After
|
|
959
|
+
After PR strategy is confirmed, Alfred invokes AskUserQuestion to ask the user what to do next:
|
|
885
960
|
|
|
886
961
|
```python
|
|
887
962
|
AskUserQuestion(
|
|
888
963
|
questions=[
|
|
889
964
|
{
|
|
890
|
-
"question": "
|
|
891
|
-
"header": "
|
|
965
|
+
"question": "Documentation synchronization complete. What would you like to do next?",
|
|
966
|
+
"header": "Next Steps",
|
|
892
967
|
"multiSelect": false,
|
|
893
968
|
"options": [
|
|
894
969
|
{
|
|
895
|
-
"label": "📋
|
|
896
|
-
"description": "/alfred:1-plan
|
|
970
|
+
"label": "📋 Create Next SPEC",
|
|
971
|
+
"description": "Start new feature planning with /alfred:1-plan"
|
|
897
972
|
},
|
|
898
973
|
{
|
|
899
|
-
"label": "📤 PR
|
|
900
|
-
"description": "
|
|
974
|
+
"label": "📤 Merge PR",
|
|
975
|
+
"description": "Review and merge PR to develop branch"
|
|
901
976
|
},
|
|
902
977
|
{
|
|
903
|
-
"label": "🔄
|
|
904
|
-
"description": "
|
|
978
|
+
"label": "🔄 Start New Session",
|
|
979
|
+
"description": "Execute /clear for fresh session (recommended for performance)"
|
|
905
980
|
}
|
|
906
981
|
]
|
|
907
982
|
}
|
|
@@ -910,9 +985,9 @@ AskUserQuestion(
|
|
|
910
985
|
```
|
|
911
986
|
|
|
912
987
|
**User Responses**:
|
|
913
|
-
- **📋
|
|
914
|
-
- **📤 PR
|
|
915
|
-
- **🔄
|
|
988
|
+
- **📋 Create Next SPEC**: Proceed to `/alfred:1-plan` for creating next SPEC
|
|
989
|
+
- **📤 Merge PR**: Manual PR review and merge on GitHub
|
|
990
|
+
- **🔄 Start New Session**: Execute `/clear` to start fresh session (recommended for performance)
|
|
916
991
|
|
|
917
992
|
---
|
|
918
993
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: moai-adk
|
|
3
|
-
Version: 0.15.
|
|
3
|
+
Version: 0.15.1
|
|
4
4
|
Summary: MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent & Complete Skills v2.0
|
|
5
5
|
Project-URL: Homepage, https://github.com/modu-ai/moai-adk
|
|
6
6
|
Project-URL: Repository, https://github.com/modu-ai/moai-adk
|
|
@@ -1714,122 +1714,137 @@ When working in your **local development environment**, CodeRabbit provides auto
|
|
|
1714
1714
|
|
|
1715
1715
|
---
|
|
1716
1716
|
|
|
1717
|
-
## Quick Issue Creation with `/alfred:9-feedback`
|
|
1717
|
+
## 🚀 Quick Issue Creation with `/alfred:9-feedback`
|
|
1718
1718
|
|
|
1719
|
-
|
|
1719
|
+
Encountered a bug or want to suggest a feature while using MoAI-ADK? Create GitHub Issues instantly with a single command directly from Claude Code without interrupting your workflow.
|
|
1720
1720
|
|
|
1721
|
-
###
|
|
1721
|
+
### Overview
|
|
1722
1722
|
|
|
1723
|
-
|
|
1724
|
-
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1723
|
+
```bash
|
|
1724
|
+
/alfred:9-feedback
|
|
1725
|
+
```
|
|
1726
|
+
|
|
1727
|
+
When you run this command, Alfred guides you through an interactive dialog to automatically create an issue:
|
|
1728
|
+
- 🐛 **Bug Report** - Document problems you encounter
|
|
1729
|
+
- ✨ **Feature Request** - Suggest new capabilities
|
|
1730
|
+
- ⚡ **Improvement** - Propose enhancements to existing features
|
|
1731
|
+
- ❓ **Question/Discussion** - Ask questions for team discussion
|
|
1732
|
+
|
|
1733
|
+
### Quick Example
|
|
1728
1734
|
|
|
1729
|
-
|
|
1730
|
-
|
|
1735
|
+
```bash
|
|
1736
|
+
# Run in Claude Code
|
|
1737
|
+
/alfred:9-feedback
|
|
1738
|
+
```
|
|
1731
1739
|
|
|
1732
|
-
### Interactive
|
|
1740
|
+
### Interactive Step-by-Step Flow
|
|
1733
1741
|
|
|
1734
|
-
|
|
1742
|
+
**1️⃣ Select Issue Type**
|
|
1735
1743
|
|
|
1736
|
-
**Step 1: Select Issue Type**
|
|
1737
1744
|
```
|
|
1738
|
-
|
|
1745
|
+
What type of issue do you want to create?
|
|
1746
|
+
|
|
1739
1747
|
[ ] 🐛 Bug Report - Something isn't working
|
|
1740
1748
|
[ ] ✨ Feature Request - Suggest new functionality
|
|
1741
1749
|
[ ] ⚡ Improvement - Enhance existing features
|
|
1742
1750
|
[ ] ❓ Question/Discussion - Ask the team
|
|
1743
1751
|
```
|
|
1744
1752
|
|
|
1745
|
-
**
|
|
1753
|
+
**2️⃣ Enter Issue Title**
|
|
1754
|
+
|
|
1746
1755
|
```
|
|
1747
|
-
|
|
1748
|
-
|
|
1756
|
+
What's the issue title? (be concise)
|
|
1757
|
+
Example: moai-adk update fails with template sync error
|
|
1749
1758
|
```
|
|
1750
1759
|
|
|
1751
|
-
**
|
|
1760
|
+
**3️⃣ Enter Detailed Description (Optional)**
|
|
1761
|
+
|
|
1752
1762
|
```
|
|
1753
|
-
|
|
1754
|
-
|
|
1763
|
+
Provide a detailed description (optional—press Enter to skip):
|
|
1764
|
+
|
|
1765
|
+
Example:
|
|
1766
|
+
When running moai-adk update:
|
|
1767
|
+
- Symptom: .claude/ directory permission error
|
|
1768
|
+
- Environment: macOS 14.2, Python 3.13, moai-adk v0.15.0
|
|
1769
|
+
- Expected: Templates should synchronize successfully
|
|
1770
|
+
- Actual: Permission denied error and termination
|
|
1755
1771
|
```
|
|
1756
1772
|
|
|
1757
|
-
**
|
|
1773
|
+
**4️⃣ Select Priority Level**
|
|
1774
|
+
|
|
1758
1775
|
```
|
|
1759
|
-
|
|
1776
|
+
What's the priority level?
|
|
1777
|
+
|
|
1760
1778
|
[ ] 🔴 Critical - System down, data loss, security breach
|
|
1761
1779
|
[ ] 🟠 High - Major feature broken, significant impact
|
|
1762
1780
|
[✓] 🟡 Medium - Normal priority (default)
|
|
1763
1781
|
[ ] 🟢 Low - Minor issues, nice-to-have
|
|
1764
1782
|
```
|
|
1765
1783
|
|
|
1766
|
-
|
|
1767
|
-
```
|
|
1768
|
-
Alfred automatically:
|
|
1769
|
-
1. Determines appropriate labels based on issue type and priority
|
|
1770
|
-
2. Formats title with emoji: "🐛 [BUG] Login button not responding..."
|
|
1771
|
-
3. Creates GitHub Issue with all information
|
|
1772
|
-
4. Returns the issue number and URL
|
|
1773
|
-
```
|
|
1784
|
+
### Automatic Issue Creation
|
|
1774
1785
|
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
4. **🔗 Team Visibility**: Issues immediately visible and discussable
|
|
1781
|
-
5. **📋 Standardized Format**: All issues follow consistent structure
|
|
1786
|
+
Alfred automatically:
|
|
1787
|
+
1. Adds emoji to title: `🐛 [BUG] moai-adk update fails with template sync error`
|
|
1788
|
+
2. Formats the issue in GitHub format
|
|
1789
|
+
3. Auto-applies appropriate labels: `bug`, `reported`, `priority-high`
|
|
1790
|
+
4. Creates the issue in your repository
|
|
1782
1791
|
|
|
1783
|
-
###
|
|
1792
|
+
### Completion Output
|
|
1784
1793
|
|
|
1785
|
-
```
|
|
1786
|
-
|
|
1787
|
-
$ /alfred:9-feedback
|
|
1794
|
+
```
|
|
1795
|
+
✅ GitHub Issue #245 created successfully!
|
|
1788
1796
|
|
|
1789
|
-
|
|
1790
|
-
|
|
1797
|
+
📋 Title: 🐛 [BUG] moai-adk update fails with template sync error
|
|
1798
|
+
🔴 Priority: High
|
|
1799
|
+
🏷️ Labels: bug, reported, priority-high
|
|
1800
|
+
🔗 URL: https://github.com/modu-ai/moai-adk/issues/245
|
|
1791
1801
|
|
|
1792
|
-
|
|
1793
|
-
|
|
1802
|
+
💡 Tip: Reference this issue number in your commit messages
|
|
1803
|
+
```
|
|
1794
1804
|
|
|
1795
|
-
|
|
1796
|
-
> Tapping the login button on iPhone 15 causes app to freeze for 5 seconds then crash.
|
|
1797
|
-
> Tested on iOS 17.2, Chrome 120 on macOS 14.2.
|
|
1798
|
-
> Expected: Login modal should appear
|
|
1799
|
-
> Actual: No response then crash
|
|
1805
|
+
### Key Features
|
|
1800
1806
|
|
|
1801
|
-
|
|
1802
|
-
|
|
1807
|
+
| Feature | Description |
|
|
1808
|
+
|---------|-------------|
|
|
1809
|
+
| **Simple Command** | Just `/alfred:9-feedback`—no arguments needed |
|
|
1810
|
+
| **Interactive** | Step-by-step dialog for intuitive issue creation |
|
|
1811
|
+
| **Auto-labeled** | Issue type and priority automatically assigned as labels |
|
|
1812
|
+
| **Instant Creation** | Issue created in GitHub within ~30 seconds |
|
|
1813
|
+
| **Team Shared** | Issue immediately visible and trackable for your team |
|
|
1803
1814
|
|
|
1804
|
-
|
|
1815
|
+
### Use Cases
|
|
1805
1816
|
|
|
1806
|
-
|
|
1807
|
-
🟠 Priority: High
|
|
1808
|
-
🏷️ Labels: bug, reported, priority-high
|
|
1809
|
-
🔗 URL: https://github.com/owner/repo/issues/234
|
|
1817
|
+
**📌 Bug Report Example**
|
|
1810
1818
|
|
|
1811
|
-
|
|
1819
|
+
```
|
|
1820
|
+
/alfred:9-feedback
|
|
1821
|
+
→ Select 🐛 Bug Report
|
|
1822
|
+
→ Title: "moai-adk update fails with template sync error"
|
|
1823
|
+
→ Describe the symptom and environment
|
|
1824
|
+
→ Select 🟠 High priority
|
|
1825
|
+
→ Issue #246 automatically created
|
|
1812
1826
|
```
|
|
1813
1827
|
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
1. **During Development**: Use `/alfred:9-help` to report bugs/ideas instantly
|
|
1817
|
-
2. **In Code Review**: Convert improvement suggestions to tracked issues
|
|
1818
|
-
3. **When Planning**: Reference created issues in SPEC documents
|
|
1819
|
-
4. **During Sync**: Link issues to SPEC requirements with `/alfred:3-sync`
|
|
1828
|
+
**💡 Feature Request Example**
|
|
1820
1829
|
|
|
1821
|
-
|
|
1830
|
+
```
|
|
1831
|
+
/alfred:9-feedback
|
|
1832
|
+
→ Select ✨ Feature Request
|
|
1833
|
+
→ Title: "Add --dry-run option to moai-adk update"
|
|
1834
|
+
→ Describe the desired behavior
|
|
1835
|
+
→ Select 🟡 Medium priority
|
|
1836
|
+
→ Issue #247 automatically created
|
|
1837
|
+
```
|
|
1822
1838
|
|
|
1823
|
-
|
|
1824
|
-
- Repository initialized with Git
|
|
1839
|
+
### Best Practices
|
|
1825
1840
|
|
|
1826
|
-
|
|
1841
|
+
- ✅ Be clear and concise in your title
|
|
1842
|
+
- ✅ Include environment details for bug reports (OS, Python version, moai-adk version)
|
|
1843
|
+
- ✅ Description is optional—skip if title is self-explanatory
|
|
1844
|
+
- ❌ Avoid including personal information or sensitive data
|
|
1845
|
+
- ❌ Check existing issues to prevent duplicates before creating new ones
|
|
1827
1846
|
|
|
1828
|
-
|
|
1829
|
-
- Detailed usage examples
|
|
1830
|
-
- Best practices and tips
|
|
1831
|
-
- Troubleshooting guide
|
|
1832
|
-
- Integration with SPEC documents
|
|
1847
|
+
---
|
|
1833
1848
|
|
|
1834
1849
|
---
|
|
1835
1850
|
|