@theproductguy/create-mission-control 1.0.5 → 1.0.7
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/README.md +1 -1
- package/bin/cli.js +2 -1
- package/package.json +1 -1
- package/src/template/control-center/frontend/src/App.tsx +27 -13
package/README.md
CHANGED
package/bin/cli.js
CHANGED
|
@@ -67,7 +67,8 @@ async function init() {
|
|
|
67
67
|
|
|
68
68
|
// Use npm create vite to scaffold the app inside the 'app' folder
|
|
69
69
|
// Pin version to avoid experimental prompts
|
|
70
|
-
const
|
|
70
|
+
const cmd = process.platform === 'win32' ? 'npx.cmd' : 'npx';
|
|
71
|
+
const viteProcess = spawn(cmd, ['-y', 'create-vite@5.2.0', 'app', '--template', 'react-ts'], {
|
|
71
72
|
stdio: 'inherit',
|
|
72
73
|
shell: false, // Don't use shell, it messes up CWD in some environments
|
|
73
74
|
cwd: root, // Explicitly set CWD for the child process
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useEffect, useState } from 'react';
|
|
2
2
|
import axios from 'axios';
|
|
3
|
-
import { Layout, Layers, FileText, Code, CheckSquare, RefreshCw, ArrowRight, X, Plus, Trash2, WalletCards, LayoutDashboard, Copy, Package } from 'lucide-react';
|
|
3
|
+
import { Layout, Layers, FileText, Code, CheckSquare, RefreshCw, ArrowRight, X, Plus, Trash2, WalletCards, LayoutDashboard, Copy, Package, Play } from 'lucide-react';
|
|
4
4
|
import { useToast } from './components/ui/ToastContext';
|
|
5
5
|
import { ThemeToggle } from '@theproductguy/agent-os-ui';
|
|
6
6
|
import '@theproductguy/agent-os-ui/style.css';
|
|
@@ -145,19 +145,33 @@ function StatusItem({ label, status, icon, small, onClick }: any) {
|
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
function PromptButton({ label, prompt, onClick, small, primary }: any) {
|
|
148
|
+
const deepLink = `vscode://vscode.executeCommand/workbench.action.chat.open?query=${encodeURIComponent(prompt)}`;
|
|
149
|
+
|
|
148
150
|
return (
|
|
149
|
-
<
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
151
|
+
<div className={`flex gap-1 items-center ${!small ? 'w-full' : 'flex-1'}`}>
|
|
152
|
+
<button
|
|
153
|
+
onClick={() => onClick(prompt)}
|
|
154
|
+
className={`flex items-center justify-center gap-2 rounded-lg font-medium transition cursor-pointer flex-1
|
|
155
|
+
${small ? 'px-3 py-1.5 text-xs' : 'px-4 py-2 text-sm'}
|
|
156
|
+
${primary
|
|
157
|
+
? 'bg-primary hover:bg-primary/90 text-primary-foreground shadow-sm'
|
|
158
|
+
: 'bg-background hover:bg-secondary border border-border text-foreground hover:text-foreground'}
|
|
159
|
+
`}
|
|
160
|
+
>
|
|
161
|
+
<Copy size={small ? 12 : 14} />
|
|
162
|
+
{label}
|
|
163
|
+
</button>
|
|
164
|
+
|
|
165
|
+
<a
|
|
166
|
+
href={deepLink}
|
|
167
|
+
className={`flex items-center justify-center rounded-lg border border-border bg-secondary hover:bg-secondary/80 text-foreground transition
|
|
168
|
+
${small ? 'w-8 h-[30px]' : 'w-10 h-[38px]'}
|
|
169
|
+
`}
|
|
170
|
+
title="Run in IDE (Deep Link)"
|
|
171
|
+
>
|
|
172
|
+
<Play size={small ? 12 : 14} fill="currentColor" className="opacity-70" />
|
|
173
|
+
</a>
|
|
174
|
+
</div>
|
|
161
175
|
)
|
|
162
176
|
}
|
|
163
177
|
|