multimodel-dev-os 2.6.0 → 2.8.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/.ai/plugins/README.md +30 -0
- package/.ai/plugins/plugin.example.yaml +32 -0
- package/.ai/schema/plugin.schema.json +56 -0
- package/README.md +76 -219
- package/assets/adapter-sync-flow.svg +84 -0
- package/assets/architecture-preview.svg +46 -31
- package/assets/onboarding-flow.svg +79 -0
- package/assets/social-preview.svg +1 -1
- package/assets/terminal-demo.svg +22 -23
- package/bin/multimodel-dev-os.js +601 -1
- package/docs/.vitepress/config.js +25 -8
- package/docs/5-day-roadmap.md +9 -9
- package/docs/CLI.md +250 -111
- package/docs/architecture.md +31 -7
- package/docs/comparison.md +72 -25
- package/docs/compatibility.md +2 -2
- package/docs/dashboard.md +105 -0
- package/docs/demo.md +23 -60
- package/docs/demos/adapter-sync.md +103 -0
- package/docs/demos/existing-repo-onboarding.md +125 -0
- package/docs/demos/index.md +91 -0
- package/docs/demos/multi-agent-handoff.md +88 -0
- package/docs/demos/release-check.md +109 -0
- package/docs/demos/safe-improvement-loop.md +119 -0
- package/docs/distribution.md +195 -0
- package/docs/faq.md +91 -24
- package/docs/index.md +192 -81
- package/docs/installers.md +18 -4
- package/docs/launch-kit.md +97 -49
- package/docs/npm-publishing.md +6 -6
- package/docs/plugin-authoring.md +99 -0
- package/docs/plugin-hooks.md +80 -0
- package/docs/public/assets/adapter-sync-flow.svg +84 -0
- package/docs/public/assets/onboarding-flow.svg +79 -0
- package/docs/public/llms-full.txt +16 -3
- package/docs/public/llms.txt +13 -1
- package/docs/public/sitemap.xml +55 -0
- package/docs/quickstart.md +80 -26
- package/docs/repository-command-center.md +16 -0
- package/docs/tui-safety.md +59 -0
- package/docs/use-cases.md +21 -0
- package/docs/v2-roadmap.md +75 -88
- package/docs/workflow-orchestration.md +3 -0
- package/examples/adapter-sync/README.md +45 -0
- package/examples/command-center/README.md +59 -0
- package/examples/real-repo-onboarding/README.md +53 -0
- package/examples/safe-improvement-loop/README.md +48 -0
- package/package.json +1 -1
- package/scripts/install.ps1 +1 -1
- package/scripts/install.sh +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 820
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 820 420" width="100%" height="100%" style="font-family: 'Outfit', 'Inter', -apple-system, sans-serif;">
|
|
2
2
|
<defs>
|
|
3
3
|
<!-- Card Gradients -->
|
|
4
4
|
<linearGradient id="rootCard" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
<stop offset="0%" stop-color="#111827" />
|
|
10
10
|
<stop offset="100%" stop-color="#1f2937" />
|
|
11
11
|
</linearGradient>
|
|
12
|
+
<linearGradient id="engineCard" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
13
|
+
<stop offset="0%" stop-color="#064e3b" />
|
|
14
|
+
<stop offset="100%" stop-color="#022c22" />
|
|
15
|
+
</linearGradient>
|
|
12
16
|
|
|
13
17
|
<!-- Flow Connector -->
|
|
14
18
|
<linearGradient id="flowGrad" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
@@ -18,75 +22,86 @@
|
|
|
18
22
|
</defs>
|
|
19
23
|
|
|
20
24
|
<!-- Canvas Container -->
|
|
21
|
-
<rect width="820" height="
|
|
25
|
+
<rect width="820" height="420" rx="12" fill="#090d16" stroke="#1e293b" stroke-width="1.5"/>
|
|
26
|
+
|
|
27
|
+
<!-- Layer 1: Central Root Contracts -->
|
|
28
|
+
<g transform="translate(110, 15)">
|
|
29
|
+
<rect width="600" height="60" rx="12" fill="url(#rootCard)" stroke="#4f46e5" stroke-width="2"/>
|
|
30
|
+
<text x="300" y="24" font-size="12" font-weight="800" fill="#a5b4fc" text-anchor="middle" letter-spacing="1">LAYER 1: CENTRAL ROOT CONTRACTS (SINGLE SOURCE)</text>
|
|
31
|
+
<text x="300" y="46" font-size="14" font-weight="700" fill="#f8fafc" text-anchor="middle">AGENTS.md • MEMORY.md • TASKS.md • RUNBOOK.md</text>
|
|
32
|
+
</g>
|
|
33
|
+
|
|
34
|
+
<!-- Flow Connector L1 -> L2 -->
|
|
35
|
+
<path d="M 410,75 L 410,95" stroke="url(#flowGrad)" stroke-width="3" stroke-dasharray="4,4" fill="none"/>
|
|
22
36
|
|
|
23
|
-
<!-- Layer
|
|
24
|
-
<g transform="translate(110,
|
|
25
|
-
<rect width="600" height="
|
|
26
|
-
<text x="300" y="
|
|
27
|
-
<text x="300" y="
|
|
37
|
+
<!-- Layer 2: Configuration & Intelligence (.ai/) -->
|
|
38
|
+
<g transform="translate(110, 95)">
|
|
39
|
+
<rect width="600" height="60" rx="12" fill="url(#aiCard)" stroke="#8b5cf6" stroke-width="1.5"/>
|
|
40
|
+
<text x="300" y="22" font-size="11" font-weight="800" fill="#c084fc" text-anchor="middle" letter-spacing="1">LAYER 2: .AI/ CONFIGURATION & INTELLIGENCE</text>
|
|
41
|
+
<text x="300" y="44" font-size="13" font-weight="700" fill="#e2e8f0" text-anchor="middle">context • agents • skills • prompts • checks • session logs</text>
|
|
28
42
|
</g>
|
|
29
43
|
|
|
30
|
-
<!-- Flow Connector
|
|
31
|
-
<path d="M 410,
|
|
44
|
+
<!-- Flow Connector L2 -> L3 -->
|
|
45
|
+
<path d="M 410,155 L 410,175" stroke="url(#flowGrad)" stroke-width="3" fill="none"/>
|
|
46
|
+
<polygon points="410,175 405,165 415,165" fill="#10b981"/>
|
|
32
47
|
|
|
33
|
-
<!-- Layer
|
|
34
|
-
<g transform="translate(110,
|
|
35
|
-
<rect width="600" height="
|
|
36
|
-
<text x="300" y="
|
|
37
|
-
<text x="300" y="
|
|
48
|
+
<!-- Layer 3: Dev OS Engine & Safety -->
|
|
49
|
+
<g transform="translate(110, 175)">
|
|
50
|
+
<rect width="600" height="60" rx="12" fill="url(#engineCard)" stroke="#10b981" stroke-width="1.5"/>
|
|
51
|
+
<text x="300" y="22" font-size="11" font-weight="800" fill="#34d399" text-anchor="middle" letter-spacing="1">LAYER 3: ENGINE WORKFLOWS & SAFETY GATES</text>
|
|
52
|
+
<text x="300" y="44" font-size="13" font-weight="700" fill="#e2e8f0" text-anchor="middle">onboard analyze • adapter sync • improve propose • verify doctor</text>
|
|
38
53
|
</g>
|
|
39
54
|
|
|
40
|
-
<!-- Flow Connector
|
|
41
|
-
<path d="M 410,
|
|
42
|
-
<polygon points="410,260 405,250 415,250" fill="#
|
|
55
|
+
<!-- Flow Connector L3 -> L4 -->
|
|
56
|
+
<path d="M 410,235 L 410,260" stroke="#334155" stroke-width="3" fill="none"/>
|
|
57
|
+
<polygon points="410,260 405,250 415,250" fill="#334155"/>
|
|
43
58
|
|
|
44
|
-
<!-- Layer
|
|
45
|
-
<path d="M 100,265 L
|
|
46
|
-
<path d="M 100,265 L 100,
|
|
47
|
-
<path d="M
|
|
48
|
-
<path d="M
|
|
49
|
-
<path d="M
|
|
50
|
-
<path d="M
|
|
59
|
+
<!-- Layer 4: Target Tools Connection Tree -->
|
|
60
|
+
<path d="M 100,265 L 725,265 L 725,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
61
|
+
<path d="M 100,265 L 100,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
62
|
+
<path d="M 225,265 L 225,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
63
|
+
<path d="M 350,265 L 350,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
64
|
+
<path d="M 475,265 L 475,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
65
|
+
<path d="M 600,265 L 600,285" stroke="#334155" stroke-width="2" fill="none"/>
|
|
51
66
|
|
|
52
|
-
<!-- Adapter
|
|
67
|
+
<!-- Universal Adapter Nodes -->
|
|
53
68
|
<!-- Node 1: Codex -->
|
|
54
|
-
<g transform="translate(40,
|
|
69
|
+
<g transform="translate(40, 285)">
|
|
55
70
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
56
71
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">Codex</text>
|
|
57
72
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">adapters/codex/</text>
|
|
58
73
|
</g>
|
|
59
74
|
|
|
60
75
|
<!-- Node 2: Antigravity -->
|
|
61
|
-
<g transform="translate(165,
|
|
76
|
+
<g transform="translate(165, 285)">
|
|
62
77
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
63
78
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">Antigravity</text>
|
|
64
79
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">.gemini/settings</text>
|
|
65
80
|
</g>
|
|
66
81
|
|
|
67
82
|
<!-- Node 3: Cursor -->
|
|
68
|
-
<g transform="translate(290,
|
|
83
|
+
<g transform="translate(290, 285)">
|
|
69
84
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
70
85
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">Cursor</text>
|
|
71
86
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">.cursorrules</text>
|
|
72
87
|
</g>
|
|
73
88
|
|
|
74
89
|
<!-- Node 4: Claude -->
|
|
75
|
-
<g transform="translate(415,
|
|
90
|
+
<g transform="translate(415, 285)">
|
|
76
91
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
77
92
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">Claude</text>
|
|
78
93
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">CLAUDE.md</text>
|
|
79
94
|
</g>
|
|
80
95
|
|
|
81
96
|
<!-- Node 5: Gemini -->
|
|
82
|
-
<g transform="translate(540,
|
|
97
|
+
<g transform="translate(540, 285)">
|
|
83
98
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
84
99
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">Gemini</text>
|
|
85
100
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">GEMINI.md</text>
|
|
86
101
|
</g>
|
|
87
102
|
|
|
88
103
|
<!-- Node 6: VS Code -->
|
|
89
|
-
<g transform="translate(665,
|
|
104
|
+
<g transform="translate(665, 285)">
|
|
90
105
|
<rect width="120" height="50" rx="8" fill="#0f172a" stroke="#334155" stroke-width="1"/>
|
|
91
106
|
<text x="60" y="24" font-size="12" font-weight="700" fill="#f8fafc" text-anchor="middle">VS Code</text>
|
|
92
107
|
<text x="60" y="40" font-size="10" fill="#94a3b8" text-anchor="middle">.vscode/settings</text>
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 900 340" width="100%" height="100%" style="font-family: 'Outfit', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;">
|
|
2
|
+
<defs>
|
|
3
|
+
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
4
|
+
<stop offset="0%" stop-color="#070a13" />
|
|
5
|
+
<stop offset="100%" stop-color="#0d111d" />
|
|
6
|
+
</linearGradient>
|
|
7
|
+
<linearGradient id="accent" x1="0%" y1="0%" x2="100%" y2="0%">
|
|
8
|
+
<stop offset="0%" stop-color="#6366f1" />
|
|
9
|
+
<stop offset="100%" stop-color="#10b981" />
|
|
10
|
+
</linearGradient>
|
|
11
|
+
<linearGradient id="card" x1="0%" y1="0%" x2="0%" y2="100%">
|
|
12
|
+
<stop offset="0%" stop-color="#ffffff" stop-opacity="0.06" />
|
|
13
|
+
<stop offset="100%" stop-color="#ffffff" stop-opacity="0.02" />
|
|
14
|
+
</linearGradient>
|
|
15
|
+
</defs>
|
|
16
|
+
|
|
17
|
+
<!-- Background -->
|
|
18
|
+
<rect width="900" height="340" rx="16" fill="url(#bg)" />
|
|
19
|
+
<rect x="1" y="1" width="898" height="338" rx="15" fill="none" stroke="#1e293b" stroke-width="1" />
|
|
20
|
+
|
|
21
|
+
<!-- Title -->
|
|
22
|
+
<text x="450" y="38" text-anchor="middle" font-size="18" font-weight="800" fill="#e2e8f0" letter-spacing="0.5">EXISTING REPO ONBOARDING FLOW</text>
|
|
23
|
+
<rect x="150" y="48" width="600" height="2" rx="1" fill="url(#accent)" opacity="0.4" />
|
|
24
|
+
|
|
25
|
+
<!-- Step 1 -->
|
|
26
|
+
<rect x="30" y="75" width="160" height="100" rx="12" fill="url(#card)" stroke="#334155" stroke-width="1" />
|
|
27
|
+
<text x="110" y="100" text-anchor="middle" font-size="28">🔍</text>
|
|
28
|
+
<text x="110" y="124" text-anchor="middle" font-size="13" font-weight="700" fill="#f8fafc">1. Analyze</text>
|
|
29
|
+
<text x="110" y="142" text-anchor="middle" font-size="10" fill="#94a3b8">Scan frameworks,</text>
|
|
30
|
+
<text x="110" y="155" text-anchor="middle" font-size="10" fill="#94a3b8">languages, config</text>
|
|
31
|
+
<text x="110" y="168" text-anchor="middle" font-size="9" fill="#10b981" font-weight="600">READ-ONLY</text>
|
|
32
|
+
|
|
33
|
+
<!-- Arrow 1→2 -->
|
|
34
|
+
<line x1="195" y1="125" x2="225" y2="125" stroke="#6366f1" stroke-width="2" />
|
|
35
|
+
<polygon points="225,120 235,125 225,130" fill="#6366f1" />
|
|
36
|
+
|
|
37
|
+
<!-- Step 2 -->
|
|
38
|
+
<rect x="240" y="75" width="160" height="100" rx="12" fill="url(#card)" stroke="#334155" stroke-width="1" />
|
|
39
|
+
<text x="320" y="100" text-anchor="middle" font-size="28">📋</text>
|
|
40
|
+
<text x="320" y="124" text-anchor="middle" font-size="13" font-weight="700" fill="#f8fafc">2. Recommend</text>
|
|
41
|
+
<text x="320" y="142" text-anchor="middle" font-size="10" fill="#94a3b8">Template match,</text>
|
|
42
|
+
<text x="320" y="155" text-anchor="middle" font-size="10" fill="#94a3b8">adapter suggestions</text>
|
|
43
|
+
<text x="320" y="168" text-anchor="middle" font-size="9" fill="#10b981" font-weight="600">READ-ONLY</text>
|
|
44
|
+
|
|
45
|
+
<!-- Arrow 2→3 -->
|
|
46
|
+
<line x1="405" y1="125" x2="435" y2="125" stroke="#6366f1" stroke-width="2" />
|
|
47
|
+
<polygon points="435,120 445,125 435,130" fill="#6366f1" />
|
|
48
|
+
|
|
49
|
+
<!-- Step 3 -->
|
|
50
|
+
<rect x="450" y="75" width="160" height="100" rx="12" fill="url(#card)" stroke="#334155" stroke-width="1" />
|
|
51
|
+
<text x="530" y="100" text-anchor="middle" font-size="28">📝</text>
|
|
52
|
+
<text x="530" y="124" text-anchor="middle" font-size="13" font-weight="700" fill="#f8fafc">3. Plan</text>
|
|
53
|
+
<text x="530" y="142" text-anchor="middle" font-size="10" fill="#94a3b8">Generate onboarding</text>
|
|
54
|
+
<text x="530" y="155" text-anchor="middle" font-size="10" fill="#94a3b8">plan + report</text>
|
|
55
|
+
<text x="530" y="168" text-anchor="middle" font-size="9" fill="#10b981" font-weight="600">GITIGNORED OUTPUT</text>
|
|
56
|
+
|
|
57
|
+
<!-- Arrow 3→4 -->
|
|
58
|
+
<line x1="615" y1="125" x2="645" y2="125" stroke="#6366f1" stroke-width="2" />
|
|
59
|
+
<polygon points="645,120 655,125 645,130" fill="#6366f1" />
|
|
60
|
+
|
|
61
|
+
<!-- Step 4 -->
|
|
62
|
+
<rect x="660" y="75" width="210" height="100" rx="12" fill="url(#card)" stroke="#4f46e5" stroke-width="1.5" />
|
|
63
|
+
<text x="765" y="100" text-anchor="middle" font-size="28">✅</text>
|
|
64
|
+
<text x="765" y="124" text-anchor="middle" font-size="13" font-weight="700" fill="#f8fafc">4. Apply + Status</text>
|
|
65
|
+
<text x="765" y="142" text-anchor="middle" font-size="10" fill="#94a3b8">Bootstrap configs,</text>
|
|
66
|
+
<text x="765" y="155" text-anchor="middle" font-size="10" fill="#94a3b8">auto-backups, verify</text>
|
|
67
|
+
<text x="765" y="168" text-anchor="middle" font-size="9" fill="#f59e0b" font-weight="600">REQUIRES --approved</text>
|
|
68
|
+
|
|
69
|
+
<!-- Command examples -->
|
|
70
|
+
<rect x="30" y="200" width="840" height="120" rx="12" fill="#090d16" stroke="#1e293b" stroke-width="1" />
|
|
71
|
+
<text x="50" y="228" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#34d399">$</text>
|
|
72
|
+
<text x="68" y="228" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#e2e8f0">npx multimodel-dev-os@latest onboard analyze</text>
|
|
73
|
+
<text x="50" y="252" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#34d399">$</text>
|
|
74
|
+
<text x="68" y="252" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#e2e8f0">npx multimodel-dev-os@latest onboard recommend</text>
|
|
75
|
+
<text x="50" y="276" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#34d399">$</text>
|
|
76
|
+
<text x="68" y="276" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#e2e8f0">npx multimodel-dev-os@latest onboard plan</text>
|
|
77
|
+
<text x="50" y="300" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#34d399">$</text>
|
|
78
|
+
<text x="68" y="300" font-family="'Fira Code', 'JetBrains Mono', monospace" font-size="13" fill="#e2e8f0">npx multimodel-dev-os@latest onboard apply --approved</text>
|
|
79
|
+
</svg>
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
|
|
51
51
|
<!-- Titles -->
|
|
52
52
|
<text x="260" y="205" font-size="68" font-weight="900" fill="#ffffff" letter-spacing="-1.5">MultiModel Dev OS</text>
|
|
53
|
-
<text x="260" y="252" font-size="28" font-weight="700" fill="#a78bfa" letter-spacing="-0.5">One
|
|
53
|
+
<text x="260" y="252" font-size="28" font-weight="700" fill="#a78bfa" letter-spacing="-0.5">One config. Every AI tool. Zero lock-in.</text>
|
|
54
54
|
|
|
55
55
|
<!-- Scaffolding Highlight Commands -->
|
|
56
56
|
<g transform="translate(130, 320)">
|
package/assets/terminal-demo.svg
CHANGED
|
@@ -31,40 +31,39 @@
|
|
|
31
31
|
|
|
32
32
|
<!-- Terminal Content Console -->
|
|
33
33
|
<g font-size="13.5" fill="#e2e8f0" xml:space="preserve">
|
|
34
|
-
<!-- COMMAND 1:
|
|
34
|
+
<!-- COMMAND 1: onboard analyze -->
|
|
35
35
|
<text x="30" y="70" font-weight="bold">
|
|
36
|
-
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">
|
|
36
|
+
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">onboard analyze</tspan>
|
|
37
37
|
</text>
|
|
38
38
|
|
|
39
|
-
<!--
|
|
40
|
-
<text x="30" y="95" fill="#a78bfa" font-weight="600"
|
|
41
|
-
<text x="50" y="115" fill="#34d399">✓ <tspan fill="#e2e8f0">
|
|
42
|
-
<text x="50" y="132" fill="#34d399">✓ <tspan fill="#e2e8f0">
|
|
39
|
+
<!-- Onboard Analyze Output -->
|
|
40
|
+
<text x="30" y="95" fill="#a78bfa" font-weight="600">🔍 Analyzing repository structure...</text>
|
|
41
|
+
<text x="50" y="115" fill="#34d399">✓ <tspan fill="#e2e8f0">Detected stack:</tspan> <tspan fill="#818cf8">Next.js + TypeScript</tspan></text>
|
|
42
|
+
<text x="50" y="132" fill="#34d399">✓ <tspan fill="#e2e8f0">Recommended template:</tspan> <tspan fill="#fb7185">nextjs-saas</tspan></text>
|
|
43
43
|
|
|
44
|
-
<!-- COMMAND 2:
|
|
44
|
+
<!-- COMMAND 2: init -->
|
|
45
45
|
<text x="30" y="175" font-weight="bold">
|
|
46
|
-
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">
|
|
46
|
+
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">init</tspan> <tspan fill="#94a3b8">--template nextjs-saas</tspan>
|
|
47
47
|
</text>
|
|
48
48
|
|
|
49
|
-
<!--
|
|
50
|
-
<text x="30" y="200" fill="#a78bfa" font-weight="600"
|
|
51
|
-
<text x="50" y="220" fill="#34d399">✓ <tspan fill="#e2e8f0">
|
|
52
|
-
<text x="50" y="237" fill="#34d399">✓ <tspan fill="#e2e8f0">
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">doctor</tspan> <tspan fill="#94a3b8">--target ./my-app</tspan>
|
|
49
|
+
<!-- Scaffolding Output -->
|
|
50
|
+
<text x="30" y="200" fill="#a78bfa" font-weight="600">🧠 Scaffolding MultiModel Dev OS environment...</text>
|
|
51
|
+
<text x="50" y="220" fill="#34d399">✓ <tspan fill="#e2e8f0">Created root contracts</tspan> <tspan fill="#64748b">(AGENTS.md, MEMORY.md, TASKS.md)</tspan></text>
|
|
52
|
+
<text x="50" y="237" fill="#34d399">✓ <tspan fill="#e2e8f0">Configured adapters</tspan> <tspan fill="#64748b">(.cursorrules, CLAUDE.md, .gemini/)</tspan></text>
|
|
53
|
+
|
|
54
|
+
<!-- COMMAND 3: adapter sync -->
|
|
55
|
+
<text x="30" y="280" font-weight="bold">
|
|
56
|
+
<tspan fill="#38bdf8">~</tspan> <tspan fill="#f43f5e">❯</tspan> <tspan fill="#818cf8">npx</tspan> <tspan fill="#f472b6">multimodel-dev-os@latest</tspan> <tspan fill="#34d399">adapter sync</tspan>
|
|
58
57
|
</text>
|
|
59
58
|
|
|
60
|
-
<!--
|
|
61
|
-
<text x="30" y="
|
|
62
|
-
<text x="50" y="
|
|
63
|
-
<text x="50" y="
|
|
64
|
-
<text x="50" y="
|
|
59
|
+
<!-- Adapter Sync Output -->
|
|
60
|
+
<text x="30" y="305" fill="#a78bfa" font-weight="600">🔄 Synchronizing workspace adapters...</text>
|
|
61
|
+
<text x="50" y="325" fill="#34d399">✓ <tspan fill="#e2e8f0">Synced Cursor rules</tspan> <tspan fill="#64748b">(→ .cursorrules)</tspan></text>
|
|
62
|
+
<text x="50" y="342" fill="#34d399">✓ <tspan fill="#e2e8f0">Synced Claude instructions</tspan> <tspan fill="#64748b">(→ CLAUDE.md)</tspan></text>
|
|
63
|
+
<text x="50" y="359" fill="#34d399">✓ <tspan fill="#e2e8f0">Synced Gemini configuration</tspan> <tspan fill="#64748b">(→ .gemini/settings)</tspan></text>
|
|
65
64
|
|
|
66
65
|
<!-- Success banner -->
|
|
67
|
-
<text x="30" y="415" fill="#34d399" font-weight="bold">🚀
|
|
66
|
+
<text x="30" y="415" fill="#34d399" font-weight="bold">🚀 Workspace synchronized and secured successfully!</text>
|
|
68
67
|
|
|
69
68
|
<!-- Next Active Prompt Cursor -->
|
|
70
69
|
<text x="30" y="455" fill="#f43f5e">❯ <tspan fill="#e2e8f0">█</tspan></text>
|