@monoes/monomindcli 1.10.46 β†’ 1.10.54

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 (144) hide show
  1. package/.claude/commands/monomind/do.md +52 -0
  2. package/.claude/commands/monomind/improve.md +2 -0
  3. package/.claude/helpers/handlers/route-handler.cjs +61 -11
  4. package/.claude/helpers/skill-registry.json +99 -51
  5. package/.claude/skills/agent-browser-testing/SKILL.md +522 -152
  6. package/.claude/skills/github-issue-triage/SKILL.md +354 -0
  7. package/.claude/skills/github-repo-recap/SKILL.md +207 -0
  8. package/.claude/skills/mastermind/_delegation.md +83 -0
  9. package/.claude/skills/mastermind/_protocol.md +14 -0
  10. package/dist/src/init/executor.d.ts.map +1 -1
  11. package/dist/src/init/executor.js +18 -19
  12. package/dist/src/init/executor.js.map +1 -1
  13. package/dist/src/init/helpers-generator.js +3 -3
  14. package/dist/src/init/helpers-generator.js.map +1 -1
  15. package/dist/src/ui/dashboard-v2.html +782 -42
  16. package/dist/src/ui/dashboard.html +1 -0
  17. package/dist/src/ui/data/agent-avatars.html +763 -0
  18. package/dist/src/ui/data/agent-avatars.json +966 -0
  19. package/dist/src/ui/data/avatars/account-strategist.svg +58 -0
  20. package/dist/src/ui/data/avatars/accounts-payable.svg +54 -0
  21. package/dist/src/ui/data/avatars/adaptive-coordinator.svg +55 -0
  22. package/dist/src/ui/data/avatars/adaptive-coordinator2.svg +54 -0
  23. package/dist/src/ui/data/avatars/ai-citation.svg +57 -0
  24. package/dist/src/ui/data/avatars/ai-engineer.svg +61 -0
  25. package/dist/src/ui/data/avatars/analytics-reporter.svg +53 -0
  26. package/dist/src/ui/data/avatars/api-tester.svg +53 -0
  27. package/dist/src/ui/data/avatars/architecture.svg +54 -0
  28. package/dist/src/ui/data/avatars/automation-governance.svg +55 -0
  29. package/dist/src/ui/data/avatars/backend-dev.svg +53 -0
  30. package/dist/src/ui/data/avatars/benchmarker.svg +54 -0
  31. package/dist/src/ui/data/avatars/blockchain-auditor.svg +53 -0
  32. package/dist/src/ui/data/avatars/byzantine-coord.svg +57 -0
  33. package/dist/src/ui/data/avatars/case-analyst.svg +57 -0
  34. package/dist/src/ui/data/avatars/cicd-engineer.svg +55 -0
  35. package/dist/src/ui/data/avatars/cloud-architect.svg +54 -0
  36. package/dist/src/ui/data/avatars/code-review-swarm.svg +57 -0
  37. package/dist/src/ui/data/avatars/coder-v119.svg +57 -0
  38. package/dist/src/ui/data/avatars/coder.svg +58 -0
  39. package/dist/src/ui/data/avatars/collective-coord.svg +54 -0
  40. package/dist/src/ui/data/avatars/compliance-auditor.svg +58 -0
  41. package/dist/src/ui/data/avatars/consensus-coordinator.svg +54 -0
  42. package/dist/src/ui/data/avatars/content-creator.svg +54 -0
  43. package/dist/src/ui/data/avatars/crdt-synchronizer.svg +53 -0
  44. package/dist/src/ui/data/avatars/cro-specialist.svg +58 -0
  45. package/dist/src/ui/data/avatars/data-consolidator.svg +54 -0
  46. package/dist/src/ui/data/avatars/data-engineer.svg +53 -0
  47. package/dist/src/ui/data/avatars/database-optimizer.svg +61 -0
  48. package/dist/src/ui/data/avatars/deal-strategist.svg +54 -0
  49. package/dist/src/ui/data/avatars/defender.svg +53 -0
  50. package/dist/src/ui/data/avatars/devops-automator.svg +56 -0
  51. package/dist/src/ui/data/avatars/discovery-coach.svg +54 -0
  52. package/dist/src/ui/data/avatars/email-marketing.svg +57 -0
  53. package/dist/src/ui/data/avatars/embedded-firmware.svg +61 -0
  54. package/dist/src/ui/data/avatars/evidence-collector.svg +57 -0
  55. package/dist/src/ui/data/avatars/experiment-tracker.svg +53 -0
  56. package/dist/src/ui/data/avatars/feedback-synthesizer.svg +54 -0
  57. package/dist/src/ui/data/avatars/finance-tracker.svg +54 -0
  58. package/dist/src/ui/data/avatars/frontend-developer.svg +54 -0
  59. package/dist/src/ui/data/avatars/game-audio-engineer.svg +59 -0
  60. package/dist/src/ui/data/avatars/game-designer.svg +54 -0
  61. package/dist/src/ui/data/avatars/gossip-coordinator.svg +54 -0
  62. package/dist/src/ui/data/avatars/hierarchical-coord.svg +54 -0
  63. package/dist/src/ui/data/avatars/incident-commander.svg +57 -0
  64. package/dist/src/ui/data/avatars/infrastructure.svg +54 -0
  65. package/dist/src/ui/data/avatars/input-validator.svg +53 -0
  66. package/dist/src/ui/data/avatars/ios-developer.svg +54 -0
  67. package/dist/src/ui/data/avatars/issue-tracker.svg +53 -0
  68. package/dist/src/ui/data/avatars/judge.svg +55 -0
  69. package/dist/src/ui/data/avatars/launch-strategist.svg +54 -0
  70. package/dist/src/ui/data/avatars/legal-compliance.svg +53 -0
  71. package/dist/src/ui/data/avatars/level-designer.svg +53 -0
  72. package/dist/src/ui/data/avatars/load-balancer.svg +57 -0
  73. package/dist/src/ui/data/avatars/mcp-builder.svg +53 -0
  74. package/dist/src/ui/data/avatars/memory-coordinator.svg +55 -0
  75. package/dist/src/ui/data/avatars/mesh-coordinator.svg +55 -0
  76. package/dist/src/ui/data/avatars/ml-developer.svg +58 -0
  77. package/dist/src/ui/data/avatars/mobile-app-builder.svg +53 -0
  78. package/dist/src/ui/data/avatars/mobile-dev.svg +54 -0
  79. package/dist/src/ui/data/avatars/model-qa.svg +58 -0
  80. package/dist/src/ui/data/avatars/narrative-designer.svg +58 -0
  81. package/dist/src/ui/data/avatars/outbound-strategist.svg +55 -0
  82. package/dist/src/ui/data/avatars/path-validator.svg +54 -0
  83. package/dist/src/ui/data/avatars/payment-agent.svg +53 -0
  84. package/dist/src/ui/data/avatars/perf-analyzer.svg +58 -0
  85. package/dist/src/ui/data/avatars/pipeline-analyst.svg +54 -0
  86. package/dist/src/ui/data/avatars/planner.svg +55 -0
  87. package/dist/src/ui/data/avatars/pr-manager.svg +54 -0
  88. package/dist/src/ui/data/avatars/pricing-strategist.svg +54 -0
  89. package/dist/src/ui/data/avatars/product-manager.svg +54 -0
  90. package/dist/src/ui/data/avatars/production-validator.svg +54 -0
  91. package/dist/src/ui/data/avatars/project-shepherd.svg +54 -0
  92. package/dist/src/ui/data/avatars/proposal-strategist.svg +54 -0
  93. package/dist/src/ui/data/avatars/prosecutor.svg +57 -0
  94. package/dist/src/ui/data/avatars/pseudocode.svg +53 -0
  95. package/dist/src/ui/data/avatars/queen-coordinator.svg +55 -0
  96. package/dist/src/ui/data/avatars/quorum-manager.svg +53 -0
  97. package/dist/src/ui/data/avatars/raft-manager.svg +53 -0
  98. package/dist/src/ui/data/avatars/reality-checker.svg +58 -0
  99. package/dist/src/ui/data/avatars/recruitment.svg +58 -0
  100. package/dist/src/ui/data/avatars/refinement.svg +53 -0
  101. package/dist/src/ui/data/avatars/release-manager.svg +54 -0
  102. package/dist/src/ui/data/avatars/repo-architect.svg +54 -0
  103. package/dist/src/ui/data/avatars/researcher.svg +58 -0
  104. package/dist/src/ui/data/avatars/resource-allocator.svg +53 -0
  105. package/dist/src/ui/data/avatars/reviewer.svg +53 -0
  106. package/dist/src/ui/data/avatars/safe-executor.svg +53 -0
  107. package/dist/src/ui/data/avatars/sales-coach.svg +53 -0
  108. package/dist/src/ui/data/avatars/sales-engineer.svg +58 -0
  109. package/dist/src/ui/data/avatars/scout-explorer.svg +58 -0
  110. package/dist/src/ui/data/avatars/security-architect.svg +54 -0
  111. package/dist/src/ui/data/avatars/security-auditor.svg +55 -0
  112. package/dist/src/ui/data/avatars/senior-developer.svg +58 -0
  113. package/dist/src/ui/data/avatars/senior-pm.svg +58 -0
  114. package/dist/src/ui/data/avatars/seo-specialist.svg +57 -0
  115. package/dist/src/ui/data/avatars/social-media.svg +54 -0
  116. package/dist/src/ui/data/avatars/solidity-engineer.svg +58 -0
  117. package/dist/src/ui/data/avatars/sparc-coder.svg +58 -0
  118. package/dist/src/ui/data/avatars/sparc-coord.svg +56 -0
  119. package/dist/src/ui/data/avatars/specification.svg +57 -0
  120. package/dist/src/ui/data/avatars/sprint-prioritizer.svg +53 -0
  121. package/dist/src/ui/data/avatars/sre.svg +54 -0
  122. package/dist/src/ui/data/avatars/studio-operations.svg +53 -0
  123. package/dist/src/ui/data/avatars/studio-producer.svg +55 -0
  124. package/dist/src/ui/data/avatars/support-responder.svg +56 -0
  125. package/dist/src/ui/data/avatars/system-architect.svg +54 -0
  126. package/dist/src/ui/data/avatars/task-orchestrator.svg +56 -0
  127. package/dist/src/ui/data/avatars/technical-artist.svg +53 -0
  128. package/dist/src/ui/data/avatars/technical-writer.svg +59 -0
  129. package/dist/src/ui/data/avatars/tester.svg +53 -0
  130. package/dist/src/ui/data/avatars/threat-detection.svg +61 -0
  131. package/dist/src/ui/data/avatars/trend-researcher.svg +54 -0
  132. package/dist/src/ui/data/avatars/trial-director.svg +55 -0
  133. package/dist/src/ui/data/avatars/unity-architect.svg +54 -0
  134. package/dist/src/ui/data/avatars/visionos-engineer.svg +57 -0
  135. package/dist/src/ui/data/avatars/worker-specialist.svg +55 -0
  136. package/dist/src/ui/data/avatars/workflow-architect.svg +57 -0
  137. package/dist/src/ui/data/avatars/workflow-automation.svg +54 -0
  138. package/dist/src/ui/data/avatars/zk-steward.svg +54 -0
  139. package/dist/src/ui/data/known-projects.json +1 -1
  140. package/dist/src/ui/data/mastermind-events.jsonl +28 -0
  141. package/dist/src/ui/orgs.html +1171 -0
  142. package/dist/src/ui/server.mjs +25 -8
  143. package/dist/tsconfig.tsbuildinfo +1 -1
  144. package/package.json +1 -1
@@ -0,0 +1,57 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#F0FFF4"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#38A169" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#38A169"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#2D8656"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#F0FFF4"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#F5C18E"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#F5C18E"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#F5C18E"/>
29
+ <circle cx="38" cy="46" r="3" fill="#F5C18E" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#F5C18E"/>
31
+ <circle cx="82" cy="46" r="3" fill="#F5C18E" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="21" rx="21" ry="12" fill="#C0A060"/>
35
+ <rect x="39" y="21" width="10" height="22" rx="5" fill="#C0A060"/>
36
+ <rect x="71" y="21" width="10" height="22" rx="5" fill="#C0A060"/>
37
+ <!-- face features -->
38
+ <ellipse cx="51" cy="44" rx="5" ry="2.5" fill="white"/>
39
+ <ellipse cx="69" cy="44" rx="5" ry="2.5" fill="white"/>
40
+ <circle cx="51" cy="44" r="2.2" fill="#1a5c4a"/>
41
+ <circle cx="69" cy="44" r="2.2" fill="#1a5c4a"/>
42
+ <circle cx="52" cy="43.2" r="1" fill="white"/>
43
+ <circle cx="70" cy="43.2" r="1" fill="white"/>
44
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#F5C18E" opacity="0.7" stroke="#F5C18E" stroke-width="0.5"/>
45
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
46
+ <ellipse cx="46" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
47
+ <ellipse cx="74" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
48
+ <!-- accessory -->
49
+ <path d="M38,36 Q38,22 60,22 Q82,22 82,36" stroke="#444" stroke-width="3" fill="none"/>
50
+ <rect x="33" y="34" width="9" height="12" rx="4" fill="#444"/>
51
+ <rect x="78" y="34" width="9" height="12" rx="4" fill="#444"/>
52
+ </g>
53
+
54
+ <!-- role badge -->
55
+ <circle cx="88" cy="88" r="16" fill="#38A169" opacity="0.95"/>
56
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">🚨</text>
57
+ </svg>
@@ -0,0 +1,54 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#F1FFF4"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#16A34A" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#16A34A"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#0F7F36"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#F1FFF4"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#FDDBB4"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#FDDBB4"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#FDDBB4"/>
29
+ <circle cx="38" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#FDDBB4"/>
31
+ <circle cx="82" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="20" rx="22" ry="13" fill="#1a1208"/>
35
+ <rect x="37" y="20" width="11" height="42" rx="5" fill="#1a1208"/>
36
+ <rect x="72" y="20" width="11" height="42" rx="5" fill="#1a1208"/>
37
+ <!-- face features -->
38
+ <circle cx="51" cy="44" r="4.5" fill="white"/>
39
+ <circle cx="69" cy="44" r="4.5" fill="white"/>
40
+ <circle cx="51" cy="44" r="3" fill="#5B2D8E"/>
41
+ <circle cx="69" cy="44" r="3" fill="#5B2D8E"/>
42
+ <circle cx="52" cy="43" r="1.2" fill="white"/>
43
+ <circle cx="70" cy="43" r="1.2" fill="white"/>
44
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#FDDBB4" opacity="0.7" stroke="#FDDBB4" stroke-width="0.5"/>
45
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
46
+
47
+ <!-- accessory -->
48
+
49
+ </g>
50
+
51
+ <!-- role badge -->
52
+ <circle cx="88" cy="88" r="16" fill="#16A34A" opacity="0.95"/>
53
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ—οΈ</text>
54
+ </svg>
@@ -0,0 +1,53 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFF0F0"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#E63946" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#E63946"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#b52835"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFF0F0"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#FDDBB4"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#FDDBB4"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#FDDBB4"/>
29
+ <circle cx="38" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#FDDBB4"/>
31
+ <circle cx="82" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="22" rx="18" ry="9" fill="#D4D4D4"/>
35
+ <rect x="55" y="6" width="10" height="20" rx="5" fill="#D4D4D4"/>
36
+ <!-- face features -->
37
+ <circle cx="51" cy="44" r="4.5" fill="white"/>
38
+ <circle cx="69" cy="44" r="4.5" fill="white"/>
39
+ <circle cx="51" cy="44" r="3" fill="#2a3a5c"/>
40
+ <circle cx="69" cy="44" r="3" fill="#2a3a5c"/>
41
+ <circle cx="52" cy="43" r="1.2" fill="white"/>
42
+ <circle cx="70" cy="43" r="1.2" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#FDDBB4" opacity="0.7" stroke="#FDDBB4" stroke-width="0.5"/>
44
+ <path d="M54,60 L66,60" stroke="#C4726A" stroke-width="2" stroke-linecap="round"/>
45
+
46
+ <!-- accessory -->
47
+
48
+ </g>
49
+
50
+ <!-- role badge -->
51
+ <circle cx="88" cy="88" r="16" fill="#E63946" opacity="0.95"/>
52
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">βœ…</text>
53
+ </svg>
@@ -0,0 +1,54 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFF0FB"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#C026D3" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#C026D3"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#9A1AAA"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFF0FB"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#E8A977"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#E8A977"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#E8A977"/>
29
+ <circle cx="38" cy="46" r="3" fill="#E8A977" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#E8A977"/>
31
+ <circle cx="82" cy="46" r="3" fill="#E8A977" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="22" rx="18" ry="9" fill="#5B5BCC"/>
35
+ <rect x="55" y="6" width="10" height="20" rx="5" fill="#5B5BCC"/>
36
+ <!-- face features -->
37
+ <ellipse cx="51" cy="44" rx="5.5" ry="4" fill="white"/>
38
+ <ellipse cx="69" cy="44" rx="5.5" ry="4" fill="white"/>
39
+ <circle cx="51" cy="44" r="3" fill="#2a3a5c"/>
40
+ <circle cx="69" cy="44" r="3" fill="#2a3a5c"/>
41
+ <circle cx="52.5" cy="43" r="1.2" fill="white"/>
42
+ <circle cx="70.5" cy="43" r="1.2" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#E8A977" opacity="0.7" stroke="#E8A977" stroke-width="0.5"/>
44
+ <path d="M53,61 Q60,65 67,61" stroke="#C4726A" stroke-width="1.8" fill="none" stroke-linecap="round"/>
45
+ <ellipse cx="46" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
46
+ <ellipse cx="74" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
47
+ <!-- accessory -->
48
+
49
+ </g>
50
+
51
+ <!-- role badge -->
52
+ <circle cx="88" cy="88" r="16" fill="#C026D3" opacity="0.95"/>
53
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ“±</text>
54
+ </svg>
@@ -0,0 +1,53 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#F0F2F5"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#2D3748" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#2D3748"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#1a212e"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#F0F2F5"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#F5C18E"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#F5C18E"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#F5C18E"/>
29
+ <circle cx="38" cy="46" r="3" fill="#F5C18E" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#F5C18E"/>
31
+ <circle cx="82" cy="46" r="3" fill="#F5C18E" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="24" rx="19" ry="8" fill="#3B2314"/>
35
+ <circle cx="60" cy="14" r="10" fill="#3B2314"/>
36
+ <!-- face features -->
37
+ <ellipse cx="51" cy="44" rx="5" ry="2.5" fill="white"/>
38
+ <ellipse cx="69" cy="44" rx="5" ry="2.5" fill="white"/>
39
+ <circle cx="51" cy="44" r="2.2" fill="#1a5c4a"/>
40
+ <circle cx="69" cy="44" r="2.2" fill="#1a5c4a"/>
41
+ <circle cx="52" cy="43.2" r="1" fill="white"/>
42
+ <circle cx="70" cy="43.2" r="1" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#F5C18E" opacity="0.7" stroke="#F5C18E" stroke-width="0.5"/>
44
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
45
+
46
+ <!-- accessory -->
47
+
48
+ </g>
49
+
50
+ <!-- role badge -->
51
+ <circle cx="88" cy="88" r="16" fill="#2D3748" opacity="0.95"/>
52
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ›</text>
53
+ </svg>
@@ -0,0 +1,55 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFFBEC"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#8B6914" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#8B6914"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#6B4F10"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFFBEC"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#C68642"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#C68642"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#C68642"/>
29
+ <circle cx="38" cy="46" r="3" fill="#C68642" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#C68642"/>
31
+ <circle cx="82" cy="46" r="3" fill="#C68642" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="24" rx="19" ry="8" fill="#C0A060"/>
35
+ <circle cx="60" cy="14" r="10" fill="#C0A060"/>
36
+ <!-- face features -->
37
+ <path d="M45,44 Q51,39 57,44 Q51,49 45,44Z" fill="white"/>
38
+ <path d="M63,44 Q69,39 75,44 Q69,49 63,44Z" fill="white"/>
39
+ <circle cx="51" cy="44" r="2.8" fill="#3B7DD8"/>
40
+ <circle cx="69" cy="44" r="2.8" fill="#3B7DD8"/>
41
+ <circle cx="52" cy="43" r="1.1" fill="white"/>
42
+ <circle cx="70" cy="43" r="1.1" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#C68642" opacity="0.7" stroke="#C68642" stroke-width="0.5"/>
44
+ <path d="M54,60 L66,60" stroke="#C4726A" stroke-width="2" stroke-linecap="round"/>
45
+ <ellipse cx="46" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
46
+ <ellipse cx="74" cy="52" rx="5" ry="3" fill="#ff9999" opacity="0.3"/>
47
+ <!-- accessory -->
48
+ <polygon points="48,24 60,14 72,24 76,22 72,30 48,30 44,22" fill="#D4A017"/>
49
+ <circle cx="60" cy="14" r="3" fill="#E84040"/>
50
+ </g>
51
+
52
+ <!-- role badge -->
53
+ <circle cx="88" cy="88" r="16" fill="#8B6914" opacity="0.95"/>
54
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">βš–οΈ</text>
55
+ </svg>
@@ -0,0 +1,54 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#F0F9F0"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#2E8B57" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#2E8B57"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#1E6B42"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#F0F9F0"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#D4956A"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#D4956A"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#D4956A"/>
29
+ <circle cx="38" cy="46" r="3" fill="#D4956A" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#D4956A"/>
31
+ <circle cx="82" cy="46" r="3" fill="#D4956A" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="21" rx="21" ry="12" fill="#2C2C2C"/>
35
+ <rect x="39" y="21" width="10" height="22" rx="5" fill="#2C2C2C"/>
36
+ <rect x="71" y="21" width="10" height="22" rx="5" fill="#2C2C2C"/>
37
+ <!-- face features -->
38
+ <path d="M45,44 Q51,39 57,44 Q51,49 45,44Z" fill="white"/>
39
+ <path d="M63,44 Q69,39 75,44 Q69,49 63,44Z" fill="white"/>
40
+ <circle cx="51" cy="44" r="2.8" fill="#3B7DD8"/>
41
+ <circle cx="69" cy="44" r="2.8" fill="#3B7DD8"/>
42
+ <circle cx="52" cy="43" r="1.1" fill="white"/>
43
+ <circle cx="70" cy="43" r="1.1" fill="white"/>
44
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#D4956A" opacity="0.7" stroke="#D4956A" stroke-width="0.5"/>
45
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
46
+
47
+ <!-- accessory -->
48
+
49
+ </g>
50
+
51
+ <!-- role badge -->
52
+ <circle cx="88" cy="88" r="16" fill="#2E8B57" opacity="0.95"/>
53
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸš€</text>
54
+ </svg>
@@ -0,0 +1,53 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFFBEC"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#8B6914" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#8B6914"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#6B4F10"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFFBEC"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#FDDBB4"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#FDDBB4"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#FDDBB4"/>
29
+ <circle cx="38" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#FDDBB4"/>
31
+ <circle cx="82" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="22" rx="20" ry="10" fill="#B8860B"/>
35
+ <rect x="40" y="22" width="40" height="8" rx="4" fill="#B8860B"/>
36
+ <!-- face features -->
37
+ <circle cx="51" cy="44" r="4.5" fill="white"/>
38
+ <circle cx="69" cy="44" r="4.5" fill="white"/>
39
+ <circle cx="51" cy="44" r="3" fill="#2E8B57"/>
40
+ <circle cx="69" cy="44" r="3" fill="#2E8B57"/>
41
+ <circle cx="52" cy="43" r="1.2" fill="white"/>
42
+ <circle cx="70" cy="43" r="1.2" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#FDDBB4" opacity="0.7" stroke="#FDDBB4" stroke-width="0.5"/>
44
+ <path d="M54,60 L66,60" stroke="#C4726A" stroke-width="2" stroke-linecap="round"/>
45
+
46
+ <!-- accessory -->
47
+
48
+ </g>
49
+
50
+ <!-- role badge -->
51
+ <circle cx="88" cy="88" r="16" fill="#8B6914" opacity="0.95"/>
52
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ“œ</text>
53
+ </svg>
@@ -0,0 +1,53 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFF8E8"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#D4A017" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#D4A017"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#A87B10"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFF8E8"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#FDDBB4"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#FDDBB4"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#FDDBB4"/>
29
+ <circle cx="38" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#FDDBB4"/>
31
+ <circle cx="82" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="22" rx="18" ry="9" fill="#B8860B"/>
35
+ <rect x="55" y="6" width="10" height="20" rx="5" fill="#B8860B"/>
36
+ <!-- face features -->
37
+ <circle cx="51" cy="44" r="4.5" fill="white"/>
38
+ <circle cx="69" cy="44" r="4.5" fill="white"/>
39
+ <circle cx="51" cy="44" r="3" fill="#2E8B57"/>
40
+ <circle cx="69" cy="44" r="3" fill="#2E8B57"/>
41
+ <circle cx="52" cy="43" r="1.2" fill="white"/>
42
+ <circle cx="70" cy="43" r="1.2" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#FDDBB4" opacity="0.7" stroke="#FDDBB4" stroke-width="0.5"/>
44
+ <path d="M54,60 L66,60" stroke="#C4726A" stroke-width="2" stroke-linecap="round"/>
45
+
46
+ <!-- accessory -->
47
+
48
+ </g>
49
+
50
+ <!-- role badge -->
51
+ <circle cx="88" cy="88" r="16" fill="#D4A017" opacity="0.95"/>
52
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ—ΊοΈ</text>
53
+ </svg>
@@ -0,0 +1,57 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#FFF6EE"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#F4A261" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#F4A261"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#D4824A"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#FFF6EE"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#6B3F2A"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#6B3F2A"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#6B3F2A"/>
29
+ <circle cx="38" cy="46" r="3" fill="#6B3F2A" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#6B3F2A"/>
31
+ <circle cx="82" cy="46" r="3" fill="#6B3F2A" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="18" rx="24" ry="14" fill="#3B2314"/>
35
+ <circle cx="38" cy="25" r="9" fill="#3B2314"/>
36
+ <circle cx="82" cy="25" r="9" fill="#3B2314"/>
37
+ <circle cx="48" cy="14" r="8" fill="#3B2314"/>
38
+ <circle cx="72" cy="14" r="8" fill="#3B2314"/>
39
+ <circle cx="60" cy="11" r="9" fill="#3B2314"/>
40
+ <!-- face features -->
41
+ <ellipse cx="51" cy="44" rx="5" ry="2.5" fill="white"/>
42
+ <ellipse cx="69" cy="44" rx="5" ry="2.5" fill="white"/>
43
+ <circle cx="51" cy="44" r="2.2" fill="#8B4513"/>
44
+ <circle cx="69" cy="44" r="2.2" fill="#8B4513"/>
45
+ <circle cx="52" cy="43.2" r="1" fill="white"/>
46
+ <circle cx="70" cy="43.2" r="1" fill="white"/>
47
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#6B3F2A" opacity="0.7" stroke="#6B3F2A" stroke-width="0.5"/>
48
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
49
+
50
+ <!-- accessory -->
51
+
52
+ </g>
53
+
54
+ <!-- role badge -->
55
+ <circle cx="88" cy="88" r="16" fill="#F4A261" opacity="0.95"/>
56
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">βš–οΈ</text>
57
+ </svg>
@@ -0,0 +1,53 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120" width="120" height="120">
2
+ <defs>
3
+ <clipPath id="circ">
4
+ <circle cx="60" cy="60" r="58"/>
5
+ </clipPath>
6
+ <clipPath id="headClip">
7
+ <ellipse cx="60" cy="42" rx="24" ry="28"/>
8
+ </clipPath>
9
+ </defs>
10
+
11
+ <!-- Background -->
12
+ <circle cx="60" cy="60" r="58" fill="#EBF4FF"/>
13
+ <circle cx="60" cy="60" r="58" fill="none" stroke="#3B7DD8" stroke-width="3"/>
14
+
15
+ <g clip-path="url(#circ)">
16
+
17
+ <!-- body -->
18
+ <ellipse cx="60" cy="112" rx="26" ry="36" fill="#3B7DD8"/>
19
+ <ellipse cx="60" cy="110" rx="22" ry="32" fill="#1a5bb5"/>
20
+ <!-- collar -->
21
+ <path d="M44,96 Q60,108 76,96" fill="#EBF4FF"/>
22
+ <!-- neck -->
23
+ <rect x="54" y="70" width="12" height="10" rx="4" fill="#FDDBB4"/>
24
+
25
+ <!-- head base -->
26
+ <ellipse cx="60" cy="44" rx="22" ry="26" fill="#FDDBB4"/>
27
+
28
+ <circle cx="38" cy="46" r="5" fill="#FDDBB4"/>
29
+ <circle cx="38" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
30
+ <circle cx="82" cy="46" r="5" fill="#FDDBB4"/>
31
+ <circle cx="82" cy="46" r="3" fill="#FDDBB4" opacity="0.5"/>
32
+
33
+ <!-- hair -->
34
+ <ellipse cx="60" cy="22" rx="20" ry="10" fill="#5B5BCC"/>
35
+ <rect x="40" y="22" width="40" height="8" rx="4" fill="#5B5BCC"/>
36
+ <!-- face features -->
37
+ <circle cx="51" cy="44" r="4.5" fill="white"/>
38
+ <circle cx="69" cy="44" r="4.5" fill="white"/>
39
+ <circle cx="51" cy="44" r="3" fill="#2E8B57"/>
40
+ <circle cx="69" cy="44" r="3" fill="#2E8B57"/>
41
+ <circle cx="52" cy="43" r="1.2" fill="white"/>
42
+ <circle cx="70" cy="43" r="1.2" fill="white"/>
43
+ <ellipse cx="60" cy="52" rx="2.5" ry="1.8" fill="#FDDBB4" opacity="0.7" stroke="#FDDBB4" stroke-width="0.5"/>
44
+ <path d="M52,60 Q60,66 68,60" stroke="#C4726A" stroke-width="2" fill="none" stroke-linecap="round"/>
45
+
46
+ <!-- accessory -->
47
+
48
+ </g>
49
+
50
+ <!-- role badge -->
51
+ <circle cx="88" cy="88" r="16" fill="#3B7DD8" opacity="0.95"/>
52
+ <text x="88" y="93" text-anchor="middle" font-size="14" fill="white" font-family="sans-serif">πŸ”§</text>
53
+ </svg>