myconvergio 3.3.0 → 3.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/agents/core_utility/strategic-planner.md +191 -1
- package/.claude/agents/core_utility/thor-quality-assurance-guardian.md +441 -188
- package/.claude/protocols/thor-validation-protocol.md +392 -0
- package/.claude/protocols/thor-worker-instructions.md +268 -0
- package/VERSION +3 -2
- package/agents/strategic-planner.md +458 -8
- package/package.json +2 -1
- package/scripts/thor-monitor.sh +99 -0
- package/scripts/thor-queue-setup.sh +52 -0
- package/scripts/thor-worker-submit.sh +152 -0
|
@@ -8,7 +8,7 @@ description: Strategic planner for long-term planning, strategic initiatives, ro
|
|
|
8
8
|
tools: ["Read", "Write", "Edit", "Glob", "Grep", "Bash", "Task", "TodoWrite"]
|
|
9
9
|
color: "#6B5B95"
|
|
10
10
|
model: "sonnet"
|
|
11
|
-
version: "1.
|
|
11
|
+
version: "1.6.1"
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
## Security & Ethics Framework
|
|
@@ -607,6 +607,193 @@ kitty @ send-text --match title:Claude-3 "Leggi [plan], sei CLAUDE 3, esegui i t
|
|
|
607
607
|
2. **NO FILE OVERLAP**: Each Claude works on DIFFERENT files
|
|
608
608
|
3. **VERIFICATION LAST**: Final check with lint/typecheck/build
|
|
609
609
|
4. **GIT SAFETY**: Only one Claude commits at a time
|
|
610
|
+
5. **THOR VALIDATION**: ALL Claudes must get Thor approval before claiming task complete
|
|
611
|
+
|
|
612
|
+
### 🔱 THOR VALIDATION GATE (MANDATORY)
|
|
613
|
+
|
|
614
|
+
**Thor is Roberto's digital enforcer. NO Claude may claim "done" without Thor's approval.**
|
|
615
|
+
|
|
616
|
+
#### Setup: Launch Thor as Dedicated Tab
|
|
617
|
+
```bash
|
|
618
|
+
# Thor runs in its own Kitty tab, monitoring the validation queue
|
|
619
|
+
~/.claude/scripts/thor-queue-setup.sh
|
|
620
|
+
|
|
621
|
+
# Launch Thor tab
|
|
622
|
+
kitty @ new-window --title "Thor-QA" --cwd [project_root]
|
|
623
|
+
kitty @ send-text --match title:Thor-QA "wildClaude" && kitty @ send-key --match title:Thor-QA Return
|
|
624
|
+
# Wait for Claude to start, then:
|
|
625
|
+
kitty @ send-text --match title:Thor-QA "You are Thor. Monitor /tmp/thor-queue/requests/ for validation requests. For each request, validate according to your protocol and respond in /tmp/thor-queue/responses/. Start monitoring now." && kitty @ send-key --match title:Thor-QA Return
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
#### Worker Validation Flow
|
|
629
|
+
Every worker (Claude 2, 3, 4) MUST do this before claiming ANY task complete:
|
|
630
|
+
|
|
631
|
+
```bash
|
|
632
|
+
# 1. Worker prepares validation request
|
|
633
|
+
REQUEST_ID=$(uuidgen | tr '[:upper:]' '[:lower:]')
|
|
634
|
+
|
|
635
|
+
# 2. Create request file with evidence
|
|
636
|
+
# Note: Variables are expanded, commands in $() are NOT (they're examples)
|
|
637
|
+
cat > /tmp/thor-queue/requests/${REQUEST_ID}.json << EOF
|
|
638
|
+
{
|
|
639
|
+
"request_id": "${REQUEST_ID}",
|
|
640
|
+
"worker_id": "Claude-2",
|
|
641
|
+
"task_reference": "W1-T03",
|
|
642
|
+
"claim": "JWT authentication implemented",
|
|
643
|
+
"evidence": {
|
|
644
|
+
"test_output": "[paste actual test output]",
|
|
645
|
+
"lint_output": "[paste actual lint output]",
|
|
646
|
+
"git_branch": "$(git branch --show-current)",
|
|
647
|
+
"git_status": "[paste actual git status]"
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
EOF
|
|
651
|
+
|
|
652
|
+
# 3. Notify Thor
|
|
653
|
+
kitty @ send-text --match title:Thor-QA "[VALIDATION REQUEST] ${REQUEST_ID} from Claude-2" && kitty @ send-key --match title:Thor-QA Return
|
|
654
|
+
|
|
655
|
+
# 4. Wait for response
|
|
656
|
+
while [ ! -f /tmp/thor-queue/responses/${REQUEST_ID}.json ]; do sleep 5; done
|
|
657
|
+
|
|
658
|
+
# 5. Read response
|
|
659
|
+
cat /tmp/thor-queue/responses/${REQUEST_ID}.json
|
|
660
|
+
```
|
|
661
|
+
|
|
662
|
+
#### Thor's Brutal Validation
|
|
663
|
+
Thor will:
|
|
664
|
+
1. **Read the original task** from the plan
|
|
665
|
+
2. **Verify EVERY requirement** was completed
|
|
666
|
+
3. **Run the tests himself** - not trust claims
|
|
667
|
+
4. **Challenge the worker**: "Are you BRUTALLY sure?"
|
|
668
|
+
5. **Invoke specialists** if needed (Baccio for architecture, Luca for security)
|
|
669
|
+
6. **APPROVE or REJECT** - no middle ground
|
|
670
|
+
|
|
671
|
+
#### Response Handling
|
|
672
|
+
- **APPROVED**: Worker may mark task ✅ and proceed
|
|
673
|
+
- **REJECTED**: Worker MUST fix ALL issues and resubmit
|
|
674
|
+
- **CHALLENGED**: Worker MUST provide requested evidence
|
|
675
|
+
- **ESCALATED**: Worker STOPS and waits for Roberto (after 3 failures)
|
|
676
|
+
|
|
677
|
+
#### Plan Template Addition
|
|
678
|
+
Add this to every plan:
|
|
679
|
+
|
|
680
|
+
```markdown
|
|
681
|
+
## 🔱 THOR VALIDATION STATUS
|
|
682
|
+
|
|
683
|
+
| Worker | Task | Request ID | Status | Retry |
|
|
684
|
+
|--------|------|------------|--------|:-----:|
|
|
685
|
+
| Claude-2 | W1-T03 | abc123 | ✅ APPROVED | 1 |
|
|
686
|
+
| Claude-3 | W1-T05 | def456 | ❌ REJECTED | 2 |
|
|
687
|
+
|
|
688
|
+
### Validation Queue
|
|
689
|
+
- Thor Tab: Thor-QA
|
|
690
|
+
- Queue Dir: /tmp/thor-queue/
|
|
691
|
+
- Protocol: .claude/protocols/thor-validation-protocol.md
|
|
692
|
+
|
|
693
|
+
### Worker Reminder
|
|
694
|
+
⚠️ **YOU ARE NOT DONE UNTIL THOR SAYS YOU ARE DONE**
|
|
695
|
+
Before marking ANY task complete:
|
|
696
|
+
1. Submit validation request to Thor
|
|
697
|
+
2. Wait for Thor's response
|
|
698
|
+
3. If REJECTED: Fix everything, resubmit
|
|
699
|
+
4. Only after APPROVED: Mark task ✅
|
|
700
|
+
```
|
|
701
|
+
|
|
702
|
+
### GIT WORKFLOW (OBBLIGATORIO)
|
|
703
|
+
|
|
704
|
+
**Ogni Claude lavora in un worktree separato. Ogni fase = 1 PR. Zero conflitti.**
|
|
705
|
+
|
|
706
|
+
#### STEP 0: Setup Worktrees (CLAUDE 1 fa questo PRIMA di tutto)
|
|
707
|
+
|
|
708
|
+
```bash
|
|
709
|
+
cd [project_root]
|
|
710
|
+
|
|
711
|
+
# Crea branch per ogni fase
|
|
712
|
+
git checkout [main_branch]
|
|
713
|
+
git branch feature/[plan]-phase1
|
|
714
|
+
git branch feature/[plan]-phase2
|
|
715
|
+
git branch feature/[plan]-phase3
|
|
716
|
+
|
|
717
|
+
# Crea worktree per ogni Claude
|
|
718
|
+
git worktree add ../[project]-C2 feature/[plan]-phase1
|
|
719
|
+
git worktree add ../[project]-C3 feature/[plan]-phase2
|
|
720
|
+
git worktree add ../[project]-C4 feature/[plan]-phase3
|
|
721
|
+
|
|
722
|
+
# Verifica
|
|
723
|
+
git worktree list
|
|
724
|
+
```
|
|
725
|
+
|
|
726
|
+
#### Mapping Claude → Worktree → Branch
|
|
727
|
+
|
|
728
|
+
| Claude | Worktree | Branch | PR |
|
|
729
|
+
|--------|----------|--------|-----|
|
|
730
|
+
| CLAUDE 1 | `[project_root]` | [main_branch] | Coordina solo |
|
|
731
|
+
| CLAUDE 2 | `../[project]-C2` | feature/[plan]-phase1 | PR #1 |
|
|
732
|
+
| CLAUDE 3 | `../[project]-C3` | feature/[plan]-phase2 | PR #2 |
|
|
733
|
+
| CLAUDE 4 | `../[project]-C4` | feature/[plan]-phase3 | PR #3 |
|
|
734
|
+
|
|
735
|
+
#### Send Claude to Worktrees
|
|
736
|
+
```bash
|
|
737
|
+
kitty @ send-text --match title:Claude-2 "cd ../[project]-C2" && kitty @ send-key --match title:Claude-2 Return
|
|
738
|
+
kitty @ send-text --match title:Claude-3 "cd ../[project]-C3" && kitty @ send-key --match title:Claude-3 Return
|
|
739
|
+
kitty @ send-text --match title:Claude-4 "cd ../[project]-C4" && kitty @ send-key --match title:Claude-4 Return
|
|
740
|
+
```
|
|
741
|
+
|
|
742
|
+
#### PR Workflow (ogni Claude fa questo quando completa)
|
|
743
|
+
|
|
744
|
+
```bash
|
|
745
|
+
# 1. Commit
|
|
746
|
+
git add .
|
|
747
|
+
git commit -m "feat([scope]): Phase X - [description]
|
|
748
|
+
|
|
749
|
+
🤖 Generated with Claude Code
|
|
750
|
+
|
|
751
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
752
|
+
|
|
753
|
+
# 2. Push
|
|
754
|
+
git push -u origin feature/[plan]-phaseX
|
|
755
|
+
|
|
756
|
+
# 3. Crea PR
|
|
757
|
+
gh pr create --title "feat([scope]): Phase X - [description]" --body "## Summary
|
|
758
|
+
- [bullet points]
|
|
759
|
+
|
|
760
|
+
## Issues Closed
|
|
761
|
+
- Closes #XX
|
|
762
|
+
|
|
763
|
+
## Verification
|
|
764
|
+
- [x] npm run lint ✅
|
|
765
|
+
- [x] npm run typecheck ✅
|
|
766
|
+
- [x] npm run build ✅
|
|
767
|
+
|
|
768
|
+
🤖 Generated with Claude Code" --base [main_branch]
|
|
769
|
+
```
|
|
770
|
+
|
|
771
|
+
#### Merge & Cleanup (CLAUDE 1 fa questo alla fine)
|
|
772
|
+
|
|
773
|
+
```bash
|
|
774
|
+
cd [project_root]
|
|
775
|
+
|
|
776
|
+
# 1. Merge tutte le PR (in ordine!)
|
|
777
|
+
gh pr merge [PR-1] --merge
|
|
778
|
+
gh pr merge [PR-2] --merge
|
|
779
|
+
gh pr merge [PR-3] --merge
|
|
780
|
+
|
|
781
|
+
# 2. Pull changes
|
|
782
|
+
git pull origin [main_branch]
|
|
783
|
+
|
|
784
|
+
# 3. Cleanup worktrees
|
|
785
|
+
git worktree remove ../[project]-C2
|
|
786
|
+
git worktree remove ../[project]-C3
|
|
787
|
+
git worktree remove ../[project]-C4
|
|
788
|
+
|
|
789
|
+
# 4. Cleanup branches
|
|
790
|
+
git branch -d feature/[plan]-phase1
|
|
791
|
+
git branch -d feature/[plan]-phase2
|
|
792
|
+
git branch -d feature/[plan]-phase3
|
|
793
|
+
|
|
794
|
+
# 5. Verifica finale
|
|
795
|
+
npm run lint && npm run typecheck && npm run build
|
|
796
|
+
```
|
|
610
797
|
|
|
611
798
|
### Orchestration Scripts Location
|
|
612
799
|
```
|
|
@@ -698,6 +885,9 @@ watch -n 300 'grep "GATE-0" plan.md'
|
|
|
698
885
|
|
|
699
886
|
## Changelog
|
|
700
887
|
|
|
888
|
+
- **1.6.1** (2025-12-30): Fixed heredoc quoting bug in Thor validation example (was preventing variable expansion)
|
|
889
|
+
- **1.6.0** (2025-12-30): Added mandatory THOR VALIDATION GATE section - all workers must get Thor approval before claiming task complete
|
|
890
|
+
- **1.5.0** (2025-12-30): Added mandatory GIT WORKFLOW section with worktrees per Claude, PR per phase, and cleanup protocol
|
|
701
891
|
- **1.4.0** (2025-12-29): Expanded to full Inter-Claude Communication Protocol with bidirectional messaging, worker-to-worker sync, broadcast patterns, message format conventions, and emoji reference table
|
|
702
892
|
- **1.3.5** (2025-12-29): Simplified kitty pattern with `&&` chaining, added Coordinator Communication Pattern section
|
|
703
893
|
- **1.3.4** (2025-12-29): Fixed kitty commands: use `send-text` + `send-key Return` instead of `\r`
|