mirror of
https://github.com/trycua/computer.git
synced 2025-12-31 10:29:59 -06:00
Merge branch 'main' of https://github.com/trycua/cua
This commit is contained in:
@@ -457,7 +457,6 @@ cua delete my-vm-abc123
|
||||
|
||||
</Step>
|
||||
|
||||
|
||||
</Steps>
|
||||
|
||||
### What's Next?
|
||||
|
||||
@@ -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"
|
||||
```
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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);
|
||||
// }
|
||||
// );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user