Merge pull request #578 from trycua/feat/disable-cli-playground

Disable `cua chat` cli
This commit is contained in:
ddupont
2025-11-14 17:44:14 -05:00
committed by GitHub
4 changed files with 41 additions and 59 deletions

View File

@@ -431,15 +431,15 @@ Host: my-vm-abc123.containers.cloud.trycua.com
You can now interact with your sandbox in multiple ways:
#### Option 1: Open the AI Playground (Recommended)
<!-- #### Option 1: Open the AI Playground (Recommended)
```bash
cua chat my-vm-abc123
```
This opens the full CUA playground in your browser where you can chat with AI agents that control your sandbox.
This opens the full CUA playground in your browser where you can chat with AI agents that control your sandbox. -->
#### Option 2: Access VNC Desktop
#### Option 1: Access VNC Desktop
```bash
cua open my-vm-abc123
@@ -447,7 +447,7 @@ cua open my-vm-abc123
This opens a remote desktop connection to your sandbox.
#### Option 3: List and Manage Sandboxes
#### Option 2: List and Manage Sandboxes
```bash
# List all your sandboxes
@@ -463,7 +463,7 @@ cua delete my-vm-abc123
</Step>
<Step>
<!-- <Step>
### Try Some AI Tasks
@@ -477,7 +477,7 @@ Once you have the playground open (`cua chat`), try asking the AI to:
The AI agent will automatically control your sandbox to complete these tasks!
</Step>
</Step> -->
</Steps>
### What's Next?

View File

@@ -11,7 +11,7 @@ import { Callout } from 'fumadocs-ui/components/callout';
The CUA CLI provides commands for authentication and sandbox management:
- **Authentication** - `cua login`, `cua env`, `cua logout`
- **Sandbox Management** - `cua list`, `cua create`, `cua start`, `cua stop`, `cua restart`, `cua delete`, `cua open`, `cua chat`
- **Sandbox Management** - `cua list`, `cua create`, `cua start`, `cua stop`, `cua restart`, `cua delete`, `cua open`
## Authentication Commands
@@ -219,21 +219,6 @@ Opening NoVNC: https://my-dev-sandbox.containers.cloud.trycua.com/vnc.html?autoc
This command automatically opens your default browser to the VNC interface with the correct password pre-filled.
### `cua chat`
Open the CUA playground for a sandbox in your browser.
```bash
cua chat <name>
```
**Example:**
```bash
$ cua chat my-dev-sandbox
Opening Playground: https://cua.ai/dashboard/playground?host=...
```
This opens the full CUA playground interface where you can interact with your sandbox using AI agents.
## Global Options
@@ -310,7 +295,7 @@ cua env
### 3. Quick Sandbox Access
```bash
# Create aliases for frequently used sandboxes
alias dev-sandbox="cua chat my-development-sandbox"
alias dev-sandbox="cua open my-development-sandbox"
alias prod-sandbox="cua open my-production-sandbox"
```

View File

@@ -29,9 +29,6 @@ cua create --os linux --configuration small --region north-america
# List your sandboxes
cua list
# Open the playground for your sandbox
cua chat my-sandbox-name
```
## Use Cases

View File

@@ -281,37 +281,37 @@ export function registerVmCommands(y: Argv) {
await openInBrowser(url);
}
)
.command(
'chat <name>',
'Open CUA playground for a sandbox',
(y) => y.positional('name', { type: 'string', describe: 'Sandbox name' }),
async (argv: Record<string, unknown>) => {
const token = await ensureApiKeyInteractive();
const name = String((argv as any).name);
const listRes = await http('/v1/vms', { token });
if (listRes.status === 401) {
clearApiKey();
console.error("Unauthorized. Try 'cua login' again.");
process.exit(1);
}
if (!listRes.ok) {
console.error(`Request failed: ${listRes.status}`);
process.exit(1);
}
const vms = (await listRes.json()) as VmItem[];
const vm = vms.find((v) => v.name === name);
if (!vm) {
console.error('Sandbox not found');
process.exit(1);
}
const host =
vm.host && vm.host.length
? vm.host
: `${vm.name}.containers.cloud.trycua.com`;
const base = WEBSITE_URL.replace(/\/$/, '');
const url = `${base}/dashboard/playground?host=${encodeURIComponent(host)}&id=${encodeURIComponent(vm.name)}&name=${encodeURIComponent(vm.name)}&vnc_password=${encodeURIComponent(vm.password)}&fullscreen=true`;
console.log(`Opening Playground: ${url}`);
await openInBrowser(url);
}
);
// .command(
// 'chat <name>',
// 'Open CUA playground for a sandbox',
// (y) => y.positional('name', { type: 'string', describe: 'Sandbox name' }),
// async (argv: Record<string, unknown>) => {
// const token = await ensureApiKeyInteractive();
// const name = String((argv as any).name);
// const listRes = await http('/v1/vms', { token });
// if (listRes.status === 401) {
// clearApiKey();
// console.error("Unauthorized. Try 'cua login' again.");
// process.exit(1);
// }
// if (!listRes.ok) {
// console.error(`Request failed: ${listRes.status}`);
// process.exit(1);
// }
// const vms = (await listRes.json()) as VmItem[];
// const vm = vms.find((v) => v.name === name);
// if (!vm) {
// console.error('Sandbox not found');
// process.exit(1);
// }
// const host =
// vm.host && vm.host.length
// ? vm.host
// : `${vm.name}.containers.cloud.trycua.com`;
// const base = WEBSITE_URL.replace(/\/$/, '');
// const url = `${base}/dashboard/playground?host=${encodeURIComponent(host)}&id=${encodeURIComponent(vm.name)}&name=${encodeURIComponent(vm.name)}&vnc_password=${encodeURIComponent(vm.password)}&fullscreen=true`;
// console.log(`Opening Playground: ${url}`);
// await openInBrowser(url);
// }
// );
}