mirror of
https://github.com/trycua/computer.git
synced 2025-12-20 12:29:50 -06:00
fix backlinks for seo
This commit is contained in:
24
README.md
24
README.md
@@ -22,14 +22,14 @@
|
||||
|
||||
With the [Computer SDK](#computer-sdk), you can:
|
||||
|
||||
- automate Windows, Linux, and macOS VMs with a consistent, [pyautogui-like API](https://docs.trycua.com/docs/libraries/computer#interface-actions)
|
||||
- create & manage VMs [locally](https://docs.trycua.com/docs/computer-sdk/computers#cua-local-containers) or using [Cua cloud](https://www.trycua.com/)
|
||||
- automate Windows, Linux, and macOS VMs with a consistent, [pyautogui-like API](https://cua.ai/docs/docs/libraries/computer#interface-actions)
|
||||
- create & manage VMs [locally](https://cua.ai/docs/docs/computer-sdk/computers#cua-local-containers) or using [Cua cloud](https://www.cua.ai/)
|
||||
|
||||
With the [Agent SDK](#agent-sdk), you can:
|
||||
|
||||
- run computer-use models with a [consistent schema](https://docs.trycua.com/docs/agent-sdk/message-format)
|
||||
- benchmark on OSWorld-Verified, SheetBench-V2, and more [with a single line of code using HUD](https://docs.trycua.com/docs/agent-sdk/integrations/hud) ([Notebook](https://github.com/trycua/cua/blob/main/notebooks/eval_osworld.ipynb))
|
||||
- combine UI grounding models with any LLM using [composed agents](https://docs.trycua.com/docs/agent-sdk/supported-agents/composed-agents)
|
||||
- run computer-use models with a [consistent schema](https://cua.ai/docs/docs/agent-sdk/message-format)
|
||||
- benchmark on OSWorld-Verified, SheetBench-V2, and more [with a single line of code using HUD](https://cua.ai/docs/docs/agent-sdk/integrations/hud) ([Notebook](https://github.com/trycua/cua/blob/main/notebooks/eval_osworld.ipynb))
|
||||
- combine UI grounding models with any LLM using [composed agents](https://cua.ai/docs/docs/agent-sdk/supported-agents/composed-agents)
|
||||
- use new UI agent models and UI grounding models from the Model Zoo below with just a model string (e.g., `ComputerAgent(model="openai/computer-use-preview")`)
|
||||
- use API or local inference by changing a prefix (e.g., `openai/`, `openrouter/`, `ollama/`, `huggingface-local/`, `mlx/`, [etc.](https://docs.litellm.ai/docs/providers))
|
||||
|
||||
@@ -96,8 +96,8 @@ Core utilities for Cua
|
||||
# Quick Start
|
||||
|
||||
- [Clone a starter template and run the code in <1 min](https://github.com/trycua/agent-template)
|
||||
- [Get started with the Cua SDKs](https://docs.trycua.com/docs/quickstart-devs)
|
||||
- [Get started with the Cua CLI](https://docs.trycua.com/docs/quickstart-cli)
|
||||
- [Get started with the Cua SDKs](https://cua.ai/docs/docs/quickstart-devs)
|
||||
- [Get started with the Cua CLI](https://cua.ai/docs/docs/quickstart-cli)
|
||||
|
||||
# Agent SDK
|
||||
|
||||
@@ -197,9 +197,9 @@ These are the valid model configurations for `ComputerAgent(model="...")`:
|
||||
| Configuration | Description |
|
||||
| ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `{computer-use-model}` | A single model to perform all computer-use tasks |
|
||||
| `{grounding-model}+{any-vlm-with-tools}` | [Composed](https://docs.trycua.com/docs/agent-sdk/supported-agents/composed-agents) with VLM for captioning and grounding LLM for element detection |
|
||||
| `moondream3+{any-llm-with-tools}` | [Composed](https://docs.trycua.com/docs/agent-sdk/supported-agents/composed-agents) with Moondream3 for captioning and UI element detection |
|
||||
| `human/human` | A [human-in-the-loop](https://docs.trycua.com/docs/agent-sdk/supported-agents/human-in-the-loop) in place of a model |
|
||||
| `{grounding-model}+{any-vlm-with-tools}` | [Composed](https://cua.ai/docs/docs/agent-sdk/supported-agents/composed-agents) with VLM for captioning and grounding LLM for element detection |
|
||||
| `moondream3+{any-llm-with-tools}` | [Composed](https://cua.ai/docs/docs/agent-sdk/supported-agents/composed-agents) with Moondream3 for captioning and UI element detection |
|
||||
| `human/human` | A [human-in-the-loop](https://cua.ai/docs/docs/agent-sdk/supported-agents/human-in-the-loop) in place of a model |
|
||||
|
||||
### Model Capabilities
|
||||
|
||||
@@ -333,8 +333,8 @@ Learn more in the [SOM documentation](./libs/python/som/README.md).
|
||||
|
||||
# Resources
|
||||
|
||||
- [Cua Blog](https://www.trycua.com/blog)
|
||||
- [Cua Docs](https://docs.trycua.com)
|
||||
- [Cua Blog](https://www.cua.ai/blog)
|
||||
- [Cua Docs](https://cua.ai/docs)
|
||||
|
||||
# Community and Contributions
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ By the end of this tutorial, you'll be able to:
|
||||
- Node.js 16+ and npm/yarn/pnpm
|
||||
- Basic JavaScript or TypeScript knowledge
|
||||
- OpenAI API access (Tier 3+ for computer-use-preview)
|
||||
- Cua cloud container credits ([get started here](https://trycua.com/pricing))
|
||||
- Cua cloud container credits ([get started here](https://cua.ai/pricing))
|
||||
|
||||
**Estimated Time:** 45-60 minutes
|
||||
|
||||
@@ -51,7 +51,7 @@ Luckily, the `@trycua/computer` library can be used in conjunction with other mo
|
||||
|
||||
To follow this guide, you’ll need access to a Cua cloud container.
|
||||
|
||||
Getting access is simple: purchase credits from our [pricing page](https://trycua.com/pricing), then create and provision a new container instance from the [dashboard](https://trycua.com/dashboard/containers). With your container running, you'll be ready to leverage the web SDK and bring automation to your JavaScript or TypeScript applications.
|
||||
Getting access is simple: purchase credits from our [pricing page](https://cua.ai/pricing), then create and provision a new container instance from the [dashboard](https://cua.ai/dashboard/containers). With your container running, you'll be ready to leverage the web SDK and bring automation to your JavaScript or TypeScript applications.
|
||||
|
||||
## Understanding the Flow
|
||||
|
||||
@@ -86,7 +86,7 @@ const res = await openai.responses.create({
|
||||
role: 'user',
|
||||
content: [
|
||||
// what we want the ai to do
|
||||
{ type: 'input_text', text: 'Open firefox and go to trycua.com' },
|
||||
{ type: 'input_text', text: 'Open firefox and go to cua.ai' },
|
||||
// first screenshot of the vm
|
||||
{
|
||||
type: 'input_image',
|
||||
@@ -144,7 +144,7 @@ Each response contains:
|
||||
|
||||
### Provision a Cua Cloud Container
|
||||
|
||||
1. Visit [trycua.com](https://trycua.com), sign up, purchase [credits](https://trycua.com/pricing), and create a new container instance from the [dashboard](https://trycua.com/dashboard).
|
||||
1. Visit [cua.ai](https://cua.ai), sign up, purchase [credits](https://cua.ai/pricing), and create a new container instance from the [dashboard](https://cua.ai/dashboard).
|
||||
2. Create an API key from the dashboard — be sure to save it in a secure location before continuing.
|
||||
3. Start the cloud container from the dashboard.
|
||||
|
||||
@@ -281,7 +281,7 @@ let res = await openai.responses.create({
|
||||
role: 'user',
|
||||
content: [
|
||||
// what we want the ai to do
|
||||
{ type: 'input_text', text: 'open firefox and go to trycua.com' },
|
||||
{ type: 'input_text', text: 'open firefox and go to cua.ai' },
|
||||
// current screenshot of the vm
|
||||
{
|
||||
type: 'input_image',
|
||||
|
||||
@@ -67,7 +67,7 @@ If you try out version 0.4.x, we'd love to hear how it goes. Join us on Discord
|
||||
|
||||
## Links
|
||||
|
||||
- **Composite Agent Docs:** [https://docs.trycua.com/docs/agent-sdk/supported-agents/composed-agents](https://docs.trycua.com/docs/agent-sdk/supported-agents/composed-agents)
|
||||
- **Composite Agent Docs:** [https://cua.ai/docs/agent-sdk/supported-agents/composed-agents](https://cua.ai/docs/agent-sdk/supported-agents/composed-agents)
|
||||
- **Discord:** [https://discord.gg/cua-ai](https://discord.gg/cua-ai)
|
||||
|
||||
Questions or weird edge cases? Ping us on Discord—we’re curious to see what you build.
|
||||
|
||||
@@ -84,4 +84,4 @@ Bring a team, pick a model stack, and push what agents can do on real computers.
|
||||
**Contact**
|
||||
Questions on Hack the North? Email **hackthenorth@trycua.com**.
|
||||
|
||||
_P.S. If you’re planning ahead, start with the Cua Agent Framework and OSWorld-Verified docs at docs.trycua.com; we’ll share office-hour times in both Discord channels._
|
||||
_P.S. If you’re planning ahead, start with the Cua Agent Framework and OSWorld-Verified docs at cua.ai/docs; we’ll share office-hour times in both Discord channels._
|
||||
|
||||
@@ -22,7 +22,7 @@ From day one, though, we knew we’d have to fight for sign-ups. This was a nich
|
||||
|
||||
Unfortunately, Hack the North (HTN) didn’t offer an interest form to help us estimate demand, which made capacity planning tricky—especially with early-stage infra. Stress-testing takes foresight, and multimodal language model usage is still costly (~1.5× to 3–4× the price of comparable text-only models).
|
||||
|
||||
On top of that, we were discouraged from external promotion on [lu.ma](http://lu.ma). So we spun up our own sign-up page at **trycua.com/hackathon** and built ad-hoc Discord channels to share track details. We emphasized—repeatedly—that only students already accepted to Hack the North should register.
|
||||
On top of that, we were discouraged from external promotion on [lu.ma](http://lu.ma). So we spun up our own sign-up page at **cua.ai/hackathon** and built ad-hoc Discord channels to share track details. We emphasized—repeatedly—that only students already accepted to Hack the North should register.
|
||||
|
||||
_(Moral: the “measure-zero effect”—no matter how many times you say it, some people won’t see it. Plenty of invalid sign-ups still slipped through.)_
|
||||
|
||||
|
||||
@@ -89,5 +89,5 @@ Customize your evaluation with these options:
|
||||
## Learn more
|
||||
|
||||
- Notebook with end‑to‑end examples: https://github.com/trycua/cua/blob/main/notebooks/eval_osworld.ipynb
|
||||
- Docs: https://docs.trycua.com/docs/agent-sdk/integrations/hud
|
||||
- Docs: https://cua.ai/docs/agent-sdk/integrations/hud
|
||||
- Live traces: https://app.hud.so
|
||||
|
||||
@@ -216,4 +216,4 @@ Ready to put humans back in the loop? The most sophisticated AI system knows whe
|
||||
|
||||
---
|
||||
|
||||
_Questions about human-in-the-loop agents? Join the conversation in our [Discord community](https://discord.gg/cua-ai) or check out our [documentation](https://docs.trycua.com/docs/agent-sdk/supported-agents/human-in-the-loop)._
|
||||
_Questions about human-in-the-loop agents? Join the conversation in our [Discord community](https://discord.gg/cua-ai) or check out our [documentation](https://cua.ai/docs/agent-sdk/supported-agents/human-in-the-loop)._
|
||||
|
||||
@@ -32,7 +32,7 @@ The result? **Instant deployment** in seconds instead of hours, with no infrastr
|
||||
|
||||
### Step 1: Get Your API Key
|
||||
|
||||
Sign up at [**trycua.com**](https://trycua.com) to get your API key.
|
||||
Sign up at [**cua.ai**](https://cua.ai) to get your API key.
|
||||
|
||||
```bash
|
||||
# Set your API key in environment variables
|
||||
@@ -226,6 +226,6 @@ Stay tuned for updates and join our [**Discord**](https://discord.gg/cua-ai) to
|
||||
|
||||
Ready to deploy your Computer-Use Agents in the cloud?
|
||||
|
||||
Visit [**trycua.com**](https://trycua.com) to sign up and get your API key. Join our [**Discord community**](https://discord.gg/cua-ai) for support and explore more examples on [**GitHub**](https://github.com/trycua/cua).
|
||||
Visit [**cua.ai**](https://cua.ai) to sign up and get your API key. Join our [**Discord community**](https://discord.gg/cua-ai) for support and explore more examples on [**GitHub**](https://github.com/trycua/cua).
|
||||
|
||||
Happy RPA 2.0! 🚀
|
||||
|
||||
@@ -174,7 +174,7 @@ Apple's announcement confirms we're on the right path. Here's what we're looking
|
||||
- [Apple Containerization Framework](https://github.com/apple/containerization)
|
||||
- [Lume - Direct VM Management](https://github.com/trycua/cua/tree/main/libs/lume)
|
||||
- [Lumier - Docker Interface for VMs](https://github.com/trycua/cua/tree/main/libs/lumier)
|
||||
- [Cua Cloud Sandbox](https://trycua.com)
|
||||
- [Cua Cloud Sandbox](https://cua.ai)
|
||||
- [Join our Discord](https://discord.gg/cua-ai)
|
||||
|
||||
---
|
||||
|
||||
@@ -32,7 +32,7 @@ The viewer allows you to see exactly what your agent observed and how it interac
|
||||
|
||||
## Opening Trajectory Viewer in 3 Simple Steps
|
||||
|
||||
1. **Visit**: Open your browser and go to [https://www.trycua.com/trajectory-viewer](https://www.trycua.com/trajectory-viewer).
|
||||
1. **Visit**: Open your browser and go to [https://cua.ai/trajectory-viewer](https://cua.ai/trajectory-viewer).
|
||||
2. **Upload**: Drag and drop a trajectories folder or click Select Folder.
|
||||
3. **Explore**: View your agent’s trajectories! All data stays in your browser unless you give permission otherwise.
|
||||
|
||||
|
||||
@@ -174,10 +174,10 @@ await computer.run()
|
||||
|
||||
## Links
|
||||
|
||||
- **Docker Provider Docs:** [https://docs.trycua.com/computers/docker](https://docs.trycua.com/computers/docker)
|
||||
- **Docker Provider Docs:** [https://cua.ai/docs/computers/docker](https://cua.ai/docs/computers/docker)
|
||||
- **KasmVNC:** [https://github.com/kasmtech/KasmVNC](https://github.com/kasmtech/KasmVNC)
|
||||
- **Container Source:** [https://github.com/trycua/cua/tree/main/libs/kasm](https://github.com/trycua/cua/tree/main/libs/kasm)
|
||||
- **Computer SDK:** [https://docs.trycua.com/docs/computer-sdk/computers](https://docs.trycua.com/docs/computer-sdk/computers)
|
||||
- **Computer SDK:** [https://cua.ai/docs/computer-sdk/computers](https://cua.ai/docs/computer-sdk/computers)
|
||||
- **Discord:** [https://discord.gg/cua-ai](https://discord.gg/cua-ai)
|
||||
|
||||
Questions or weird edge cases? Ping us on Discord—we’re curious to see what you build.
|
||||
|
||||
@@ -37,7 +37,7 @@ agent = ComputerAgent(
|
||||
## View Trajectories Online
|
||||
|
||||
View trajectories in the browser at:
|
||||
**[trycua.com/trajectory-viewer](http://trycua.com/trajectory-viewer)**
|
||||
**[cua.ai/trajectory-viewer](https://cua.ai/trajectory-viewer)**
|
||||
|
||||
The viewer provides:
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ Cua Computers are preconfigured virtual machines running the Computer Server. Th
|
||||
|
||||
**Easiest & safest way to get started - works on any host OS**
|
||||
|
||||
This is a Cloud Sandbox running the Computer Server. Get a container at [trycua.com](https://www.trycua.com/).
|
||||
This is a Cloud Sandbox running the Computer Server. Get a container at [cua.ai](https://cua.ai/).
|
||||
|
||||
<Tabs items={['Python', 'TypeScript']}>
|
||||
<Tab value="Python">
|
||||
|
||||
@@ -310,7 +310,7 @@ agent = ComputerAgent(
|
||||
)
|
||||
|
||||
# Agent operations will be automatically traced
|
||||
async for _ in agent.run("open trycua.com and navigate to docs"):
|
||||
async for _ in agent.run("open cua.ai and navigate to docs"):
|
||||
pass
|
||||
|
||||
# Save the combined trace
|
||||
|
||||
@@ -30,7 +30,7 @@ Choose how you want to run your Cua computer. **Cloud Sandbox is recommended** f
|
||||
|
||||
**Easiest & safest way to get started - works on any host OS**
|
||||
|
||||
1. Go to [trycua.com/signin](https://www.trycua.com/signin)
|
||||
1. Go to [cua.ai/signin](https://cua.ai/signin)
|
||||
2. Navigate to **Dashboard > Containers > Create Instance**
|
||||
3. Create a **Medium, Ubuntu 22** container
|
||||
4. Note your container name and API key
|
||||
@@ -312,7 +312,7 @@ python -m agent.cli omniparser+ollama_chat/llama3.2:latest
|
||||
|
||||
If you haven't set up environment variables, the CLI will guide you through the setup:
|
||||
|
||||
1. **Sandbox Name**: Enter your Cua sandbox name (or get one at [trycua.com](https://www.trycua.com/))
|
||||
1. **Sandbox Name**: Enter your Cua sandbox name (or get one at [cua.ai](https://cua.ai/))
|
||||
2. **CUA API Key**: Enter your Cua API key
|
||||
3. **Provider API Key**: Enter your AI provider API key (OpenAI, Anthropic, etc.)
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ You can run your Cua computer in the cloud (recommended for easiest setup), loca
|
||||
|
||||
Cua Cloud Sandbox provides virtual machines that run Ubuntu.
|
||||
|
||||
1. Go to [trycua.com/signin](https://www.trycua.com/signin)
|
||||
1. Go to [cua.ai/signin](https://cua.ai/signin)
|
||||
2. Navigate to **Dashboard > Containers > Create Instance**
|
||||
3. Create a **Medium, Ubuntu 22** sandbox
|
||||
4. Note your sandbox name and API key
|
||||
|
||||
@@ -6,7 +6,7 @@ import 'dotenv/config';
|
||||
|
||||
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
|
||||
|
||||
const COMPUTER_USE_PROMPT = 'Open firefox and go to trycua.com';
|
||||
const COMPUTER_USE_PROMPT = 'Open firefox and go to cua.ai';
|
||||
|
||||
// Initialize the Computer Connection
|
||||
const computer = new Computer({
|
||||
|
||||
@@ -38,8 +38,8 @@ def load_env_or_fail() -> None:
|
||||
"""
|
||||
Build Agent Config
|
||||
- customize agent behavior, tool integration, callbacks, resource management, and more
|
||||
- https://docs.trycua.com/docs/agent-sdk/agent-loops#parameters
|
||||
- https://docs.trycua.com/docs/agent-sdk/supported-model-providers
|
||||
- https://cua.ai/docs/agent-sdk/agent-loops#parameters
|
||||
- https://cua.ai/docs/agent-sdk/supported-model-providers
|
||||
"""
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ async def run_hud_eval() -> None:
|
||||
|
||||
"""
|
||||
Customize your hud eval below, check the doc for additional params
|
||||
- https://docs.trycua.com/docs/agent-sdk/integrations/hud#parameters-1
|
||||
- https://cua.ai/docs/agent-sdk/integrations/hud#parameters-1
|
||||
- recommend low max steps (5-10) for testing, then max 100 for benchmarking
|
||||
- also select specific tasks to run by using splitting the dataset
|
||||
"""
|
||||
|
||||
@@ -55,11 +55,11 @@ To get set up with Lume for development, read [these instructions](Development.m
|
||||
|
||||
## Docs
|
||||
|
||||
- [Installation](https://trycua.com/docs/libraries/lume/installation)
|
||||
- [Prebuilt Images](https://trycua.com/docs/libraries/lume/prebuilt-images)
|
||||
- [CLI Reference](https://trycua.com/docs/libraries/lume/cli-reference)
|
||||
- [HTTP API](https://trycua.com/docs/libraries/lume/http-api)
|
||||
- [FAQ](https://trycua.com/docs/libraries/lume/faq)
|
||||
- [Installation](https://cua.ai/docs/libraries/lume/installation)
|
||||
- [Prebuilt Images](https://cua.ai/docs/libraries/lume/prebuilt-images)
|
||||
- [CLI Reference](https://cua.ai/docs/libraries/lume/cli-reference)
|
||||
- [HTTP API](https://cuai.ai/docs/libraries/lume/http-api)
|
||||
- [FAQ](https://cua.ai/docs/libraries/lume/faq)
|
||||
|
||||
## Contributing
|
||||
|
||||
|
||||
@@ -58,14 +58,14 @@ docker run -it --rm \
|
||||
|
||||
After running the command above, you can access your macOS VM through a web browser (e.g., http://localhost:8006).
|
||||
|
||||
> **Note:** With the basic setup above, your VM will be reset when you stop the container (ephemeral mode). This means any changes you make inside the macOS VM will be lost. See [the documentation](https://trycua.com/docs/libraries/lumier/docker) for how to save your VM state.
|
||||
> **Note:** With the basic setup above, your VM will be reset when you stop the container (ephemeral mode). This means any changes you make inside the macOS VM will be lost. See [the documentation](https://cua.ai/docs/libraries/lumier/docker) for how to save your VM state.
|
||||
|
||||
## Docs
|
||||
|
||||
- [Installation](https://trycua.com/docs/libraries/lumier/installation)
|
||||
- [Docker](https://trycua.com/docs/libraries/lumier/docker)
|
||||
- [Docker Compose](https://trycua.com/docs/libraries/lumier/docker-compose)
|
||||
- [Building Lumier](https://trycua.com/docs/libraries/lumier/building-lumier)
|
||||
- [Installation](https://cua.ai/docs/libraries/lumier/installation)
|
||||
- [Docker](https://cua.ai/docs/libraries/lumier/docker)
|
||||
- [Docker Compose](https://cua.ai/docs/libraries/lumier/docker-compose)
|
||||
- [Building Lumier](https://cua.ai/docs/libraries/lumier/building-lumier)
|
||||
|
||||
## Credits
|
||||
|
||||
|
||||
@@ -72,16 +72,16 @@ if __name__ == "__main__":
|
||||
|
||||
## Docs
|
||||
|
||||
- [Agent Loops](https://trycua.com/docs/agent-sdk/agent-loops)
|
||||
- [Supported Agents](https://trycua.com/docs/agent-sdk/supported-agents/computer-use-agents)
|
||||
- [Supported Models](https://trycua.com/docs/agent-sdk/supported-model-providers)
|
||||
- [Chat History](https://trycua.com/docs/agent-sdk/chat-history)
|
||||
- [Callbacks](https://trycua.com/docs/agent-sdk/callbacks)
|
||||
- [Custom Tools](https://trycua.com/docs/agent-sdk/custom-tools)
|
||||
- [Custom Computer Handlers](https://trycua.com/docs/agent-sdk/custom-computer-handlers)
|
||||
- [Prompt Caching](https://trycua.com/docs/agent-sdk/prompt-caching)
|
||||
- [Usage Tracking](https://trycua.com/docs/agent-sdk/usage-tracking)
|
||||
- [Benchmarks](https://trycua.com/docs/agent-sdk/benchmarks)
|
||||
- [Agent Loops](https://cua.ai/docs/agent-sdk/agent-loops)
|
||||
- [Supported Agents](https://cua.ai/docs/agent-sdk/supported-agents/computer-use-agents)
|
||||
- [Supported Models](https://cua.ai/docs/agent-sdk/supported-model-providers)
|
||||
- [Chat History](https://cua.ai/docs/agent-sdk/chat-history)
|
||||
- [Callbacks](https://cua.ai/docs/agent-sdk/callbacks)
|
||||
- [Custom Tools](https://cua.ai/docs/agent-sdk/custom-tools)
|
||||
- [Custom Computer Handlers](https://cua.ai/docs/agent-sdk/custom-computer-handlers)
|
||||
- [Prompt Caching](https://cua.ai/docs/agent-sdk/prompt-caching)
|
||||
- [Usage Tracking](https://cua.ai/docs/agent-sdk/usage-tracking)
|
||||
- [Benchmarks](https://cua.ai/docs/agent-sdk/benchmarks)
|
||||
|
||||
## License
|
||||
|
||||
|
||||
@@ -321,7 +321,7 @@ Examples:
|
||||
if not container_name:
|
||||
if args.provider == "cloud":
|
||||
print_colored("CUA_CONTAINER_NAME not set.", dim=True)
|
||||
print_colored("You can get a CUA container at https://www.trycua.com/", dim=True)
|
||||
print_colored("You can get a CUA container at https://cua.ai/", dim=True)
|
||||
container_name = input("Enter your CUA container name: ").strip()
|
||||
if not container_name:
|
||||
print_colored("❌ Container name is required.")
|
||||
|
||||
@@ -40,7 +40,7 @@ Refer to this notebook for a step-by-step guide on how to use the Computer-Use S
|
||||
|
||||
## Docs
|
||||
|
||||
- [Commands](https://trycua.com/docs/libraries/computer-server/Commands)
|
||||
- [REST-API](https://trycua.com/docs/libraries/computer-server/REST-API)
|
||||
- [WebSocket-API](https://trycua.com/docs/libraries/computer-server/WebSocket-API)
|
||||
- [Index](https://trycua.com/docs/libraries/computer-server/index)
|
||||
- [Commands](https://cua.ai/docs/libraries/computer-server/Commands)
|
||||
- [REST-API](https://cua.ai/docs/libraries/computer-server/REST-API)
|
||||
- [WebSocket-API](https://cua.ai/docs/libraries/computer-server/WebSocket-API)
|
||||
- [Index](https://cua.ai/docs/libraries/computer-server/index)
|
||||
|
||||
@@ -68,7 +68,7 @@ Refer to this notebook for a step-by-step guide on how to use the Computer-Use I
|
||||
|
||||
## Docs
|
||||
|
||||
- [Computers](https://trycua.com/docs/computer-sdk/computers)
|
||||
- [Commands](https://trycua.com/docs/computer-sdk/commands)
|
||||
- [Computer UI](https://trycua.com/docs/computer-sdk/computer-ui)
|
||||
- [Sandboxed Python](https://trycua.com/docs/computer-sdk/sandboxed-python)
|
||||
- [Computers](https://cua.ai/docs/computer-sdk/computers)
|
||||
- [Commands](https://cua.ai/docs/computer-sdk/commands)
|
||||
- [Computer UI](https://cua.ai/docs/computer-sdk/computer-ui)
|
||||
- [Sandboxed Python](https://cua.ai/docs/computer-sdk/sandboxed-python)
|
||||
|
||||
@@ -1207,7 +1207,7 @@ def create_gradio_ui():
|
||||
label="Container Name",
|
||||
placeholder="Enter your container name",
|
||||
visible=False,
|
||||
info="Get your container from [trycua.com](https://trycua.com/)",
|
||||
info="Get your container from [cua.ai](https://cua.ai/)",
|
||||
)
|
||||
|
||||
# Check if CUA_API_KEY is set in environment
|
||||
|
||||
@@ -104,12 +104,12 @@ Expected results:
|
||||
|
||||
## Documentation
|
||||
|
||||
- Installation: https://trycua.com/docs/libraries/mcp-server/installation
|
||||
- Configuration: https://trycua.com/docs/libraries/mcp-server/configuration
|
||||
- Usage: https://trycua.com/docs/libraries/mcp-server/usage
|
||||
- Tools: https://trycua.com/docs/libraries/mcp-server/tools
|
||||
- Client Integrations: https://trycua.com/docs/libraries/mcp-server/client-integrations
|
||||
- LLM Integrations: https://trycua.com/docs/libraries/mcp-server/llm-integrations
|
||||
- Installation: https://cua.ai/docs/libraries/mcp-server/installation
|
||||
- Configuration: https://cua.ai/docs/libraries/mcp-server/configuration
|
||||
- Usage: https://cua.ai/docs/libraries/mcp-server/usage
|
||||
- Tools: https://cua.ai/docs/libraries/mcp-server/tools
|
||||
- Client Integrations: https://cua.ai/docs/libraries/mcp-server/client-integrations
|
||||
- LLM Integrations: https://cua.ai/docs/libraries/mcp-server/llm-integrations
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
|
||||
@@ -76,9 +76,9 @@ Refer to this example for a step-by-step guide on how to use the Computer-Use In
|
||||
|
||||
## Docs
|
||||
|
||||
- [Computers](https://trycua.com/docs/computer-sdk/computers)
|
||||
- [Commands](https://trycua.com/docs/computer-sdk/commands)
|
||||
- [Computer UI](https://trycua.com/docs/computer-sdk/computer-ui)
|
||||
- [Computers](https://cua.ai/docs/computer-sdk/computers)
|
||||
- [Commands](https://cua.ai/docs/computer-sdk/commands)
|
||||
- [Computer UI](https://cua.ai/docs/computer-sdk/computer-ui)
|
||||
|
||||
## License
|
||||
|
||||
|
||||
@@ -80,16 +80,7 @@
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"### Prerequisites for Cloud Sandbox\n",
|
||||
"\n",
|
||||
"To use Cua Cloud Sandbox, you need to:\n",
|
||||
"1. Sign up at https://trycua.com\n",
|
||||
"2. Create a Cloud Sandbox\n",
|
||||
"3. Generate an API Key\n",
|
||||
"\n",
|
||||
"Once you have these, you can connect to your Cloud Sandbox and run agents on it."
|
||||
]
|
||||
"source": "### Prerequisites for Cloud Sandbox\n\nTo use Cua Cloud Sandbox, you need to:\n1. Sign up at https://cua.ai\n2. Create a Cloud Sandbox\n3. Generate an API Key\n\nOnce you have these, you can connect to your Cloud Sandbox and run agents on it."
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -504,19 +495,14 @@
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"All agent runs save trajectories that can be viewed at https://trycua.com/trajectory-viewer"
|
||||
]
|
||||
"source": "All agent runs save trajectories that can be viewed at https://cua.ai/trajectory-viewer"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"print(f\"Trajectories saved to: {Path('trajectories').absolute()}\")\n",
|
||||
"print(\"Upload trajectory files to https://trycua.com/trajectory-viewer to visualize agent actions\")\n"
|
||||
]
|
||||
"source": "print(f\"Trajectories saved to: {Path('trajectories').absolute()}\")\nprint(\"Upload trajectory files to https://cua.ai/trajectory-viewer to visualize agent actions\")\n"
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
@@ -540,4 +526,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
}
|
||||
@@ -10,9 +10,7 @@
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Welcome to Part 1 of our tutorial series on building a Computer Use Automation (CUA) operator using OpenAI. For the complete guide, check out our [full blog post](https://www.trycua.com/blog/build-your-own-operator-on-macos-1)."
|
||||
]
|
||||
"source": "Welcome to Part 1 of our tutorial series on building a Computer Use Automation (CUA) operator using OpenAI. For the complete guide, check out our [full blog post](https://cua.ai/blog/build-your-own-operator-on-macos-1)."
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -304,4 +302,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
}
|
||||
@@ -10,9 +10,7 @@
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Welcome to Part 2 of our tutorial series on building a Computer Use Automation (CUA) operator, this time using the `cua-agent` package. For the complete guide, check out our [full blog post](https://www.trycua.com/blog/build-your-own-operator-on-macos-2)."
|
||||
]
|
||||
"source": "Welcome to Part 2 of our tutorial series on building a Computer Use Automation (CUA) operator, this time using the `cua-agent` package. For the complete guide, check out our [full blog post](https://cua.ai/blog/build-your-own-operator-on-macos-2)."
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -176,4 +174,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
}
|
||||
@@ -38,16 +38,7 @@
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"### Prerequisites for Cloud Sandbox\n",
|
||||
"\n",
|
||||
"To use Cua Cloud Sandbox, you need to:\n",
|
||||
"1. Sign up at https://trycua.com\n",
|
||||
"2. Create a Cloud Sandbox\n",
|
||||
"3. Generate an API Key\n",
|
||||
"\n",
|
||||
"Once you have these, you can connect to your Cloud Sandbox using its name."
|
||||
]
|
||||
"source": "### Prerequisites for Cloud Sandbox\n\nTo use Cua Cloud Sandbox, you need to:\n1. Sign up at https://cua.ai\n2. Create a Cloud Sandbox\n3. Generate an API Key\n\nOnce you have these, you can connect to your Cloud Sandbox using its name."
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -622,4 +613,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
}
|
||||
@@ -236,20 +236,7 @@
|
||||
"cell_type": "markdown",
|
||||
"id": "section-3-conceptual",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## 3) Customize your agent 🛠️\n",
|
||||
"\n",
|
||||
"For a few customization options, see: https://docs.trycua.com/docs/agent-sdk/customizing-computeragent\n",
|
||||
"\n",
|
||||
"Levels of customization you can explore:\n",
|
||||
"\n",
|
||||
"1) Simple — Prompt engineering\n",
|
||||
"2) Easy — Tools\n",
|
||||
"3) Intermediate — Callbacks\n",
|
||||
"4) Expert — Custom agent via `register_agent` (see `libs/python/agent/agent/decorators.py` → `register_agent`)\n",
|
||||
"\n",
|
||||
"or, incorporate the ComputerAgent into your own agent framework!\n"
|
||||
]
|
||||
"source": "## 3) Customize your agent 🛠️\n\nFor a few customization options, see: https://cua.ai/docs/agent-sdk/customizing-computeragent\n\nLevels of customization you can explore:\n\n1) Simple — Prompt engineering\n2) Easy — Tools\n3) Intermediate — Callbacks\n4) Expert — Custom agent via `register_agent` (see `libs/python/agent/agent/decorators.py` → `register_agent`)\n\nor, incorporate the ComputerAgent into your own agent framework!"
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -289,4 +276,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
}
|
||||
@@ -124,22 +124,7 @@
|
||||
"id": "cd4393b0",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import logging\n",
|
||||
"from pathlib import Path\n",
|
||||
"from agent import ComputerAgent\n",
|
||||
"\n",
|
||||
"# Here you can set the model and tools for your agent.\n",
|
||||
"# Computer use models: https://www.trycua.com/docs/agent-sdk/supported-agents/computer-use-agents\n",
|
||||
"# Composed agent models: https://www.trycua.com/docs/agent-sdk/supported-agents/composed-agents\n",
|
||||
"# Custom tools: https://www.trycua.com/docs/agent-sdk/custom-tools\n",
|
||||
"agent_config = {\n",
|
||||
" \"model\": \"openai/computer-use-preview\",\n",
|
||||
" \"trajectory_dir\": str(Path(\"trajectories\")),\n",
|
||||
" \"only_n_most_recent_images\": 3,\n",
|
||||
" \"verbosity\": logging.INFO\n",
|
||||
"}"
|
||||
]
|
||||
"source": "import logging\nfrom pathlib import Path\nfrom agent import ComputerAgent\n\n# Here you can set the model and tools for your agent.\n# Computer use models: https://cua.ai/docs/agent-sdk/supported-agents/computer-use-agents\n# Composed agent models: https://cua.ai/docs/agent-sdk/supported-agents/composed-agents\n# Custom tools: https://cua.ai/docs/agent-sdk/custom-tools\nagent_config = {\n \"model\": \"openai/computer-use-preview\",\n \"trajectory_dir\": str(Path(\"trajectories\")),\n \"only_n_most_recent_images\": 3,\n \"verbosity\": logging.INFO\n}"
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -233,41 +218,13 @@
|
||||
"id": "6bf0887e",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import uuid\n",
|
||||
"from pprint import pprint\n",
|
||||
"from agent.integrations.hud import run_full_dataset\n",
|
||||
"\n",
|
||||
"job_name = f\"osworld-test-{str(uuid.uuid4())[:4]}\"\n",
|
||||
"\n",
|
||||
"# Full dataset evaluation (runs via HUD's run_dataset under the hood)\n",
|
||||
"# See the documentation here: https://docs.trycua.com/docs/agent-sdk/integrations/hud#running-a-full-dataset\n",
|
||||
"results = await run_full_dataset(\n",
|
||||
" dataset=\"ddupont/OSWorld-Tiny-Public\",\n",
|
||||
" job_name=job_name,\n",
|
||||
" **agent_config,\n",
|
||||
" max_concurrent=20,\n",
|
||||
" max_steps=50,\n",
|
||||
" #split=\"train[:5]\"\n",
|
||||
")\n",
|
||||
"\n",
|
||||
"# results is a list from hud.datasets.run_dataset; inspect/aggregate as needed\n",
|
||||
"print(f\"Job: {job_name}\")\n",
|
||||
"print(f\"Total results: {len(results)}\")\n",
|
||||
"pprint(results[:3])"
|
||||
]
|
||||
"source": "import uuid\nfrom pprint import pprint\nfrom agent.integrations.hud import run_full_dataset\n\njob_name = f\"osworld-test-{str(uuid.uuid4())[:4]}\"\n\n# Full dataset evaluation (runs via HUD's run_dataset under the hood)\n# See the documentation here: https://cua.ai/docs/agent-sdk/integrations/hud#running-a-full-dataset\nresults = await run_full_dataset(\n dataset=\"ddupont/OSWorld-Tiny-Public\",\n job_name=job_name,\n **agent_config,\n max_concurrent=20,\n max_steps=50,\n #split=\"train[:5]\"\n)\n\n# results is a list from hud.datasets.run_dataset; inspect/aggregate as needed\nprint(f\"Job: {job_name}\")\nprint(f\"Total results: {len(results)}\")\npprint(results[:3])"
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5b89a103",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## 🦾 Improve your agent\n",
|
||||
"\n",
|
||||
"To improve your agent for OSWorld-Verified, experiment with different models and add custom tools that fit your use case. You can also dive into the ComputerAgent source code to design an improved version or subclass tailored to your needs.\n",
|
||||
"\n",
|
||||
"Learn more about [Customizing Your ComputerAgent](https://docs.trycua.com/docs/agent-sdk/customizing-computeragent) in the docs."
|
||||
]
|
||||
"source": "## 🦾 Improve your agent\n\nTo improve your agent for OSWorld-Verified, experiment with different models and add custom tools that fit your use case. You can also dive into the ComputerAgent source code to design an improved version or subclass tailored to your needs.\n\nLearn more about [Customizing Your ComputerAgent](https://cua.ai/docs/agent-sdk/customizing-computeragent) in the docs."
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
@@ -283,4 +240,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
}
|
||||
@@ -56,12 +56,7 @@
|
||||
"cell_type": "markdown",
|
||||
"id": "47171dc3",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"1. Create a Cua account at https://www.trycua.com/\n",
|
||||
"2. Start a small Cua sandbox at https://www.trycua.com/dashboard/containers (If you need credits, ask us!)\n",
|
||||
"3. Create a HUD account at https://www.hud.so/\n",
|
||||
"4. Create a .env file:"
|
||||
]
|
||||
"source": "1. Create a Cua account at https://cua.ai/\n2. Start a small Cua sandbox at https://cua.ai/dashboard/containers (If you need credits, ask us!)\n3. Create a HUD account at https://www.hud.so/\n4. Create a .env file:"
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -130,22 +125,7 @@
|
||||
"id": "cd4393b0",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import logging\n",
|
||||
"from pathlib import Path\n",
|
||||
"from agent import ComputerAgent\n",
|
||||
"\n",
|
||||
"# Here you can set the model and tools for your agent.\n",
|
||||
"# Computer use models: https://www.trycua.com/docs/agent-sdk/supported-agents/computer-use-agents\n",
|
||||
"# Composed agent models: https://www.trycua.com/docs/agent-sdk/supported-agents/composed-agents\n",
|
||||
"# Custom tools: https://www.trycua.com/docs/agent-sdk/custom-tools\n",
|
||||
"agent_config = {\n",
|
||||
" \"model\": \"openai/computer-use-preview\",\n",
|
||||
" \"trajectory_dir\": str(Path(\"trajectories\")),\n",
|
||||
" \"only_n_most_recent_images\": 3,\n",
|
||||
" \"verbosity\": logging.INFO\n",
|
||||
"}"
|
||||
]
|
||||
"source": "import logging\nfrom pathlib import Path\nfrom agent import ComputerAgent\n\n# Here you can set the model and tools for your agent.\n# Computer use models: https://cua.ai/docs/agent-sdk/supported-agents/computer-use-agents\n# Composed agent models: https://cua.ai/docs/agent-sdk/supported-agents/composed-agents\n# Custom tools: https://cua.ai/docs/agent-sdk/custom-tools\nagent_config = {\n \"model\": \"openai/computer-use-preview\",\n \"trajectory_dir\": str(Path(\"trajectories\")),\n \"only_n_most_recent_images\": 3,\n \"verbosity\": logging.INFO\n}"
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -161,11 +141,7 @@
|
||||
"cell_type": "markdown",
|
||||
"id": "12b9c22c",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Connect to an existing Cloud Sandbox through the Cua SDK.\n",
|
||||
"\n",
|
||||
"You can access the computer through VNC on the [Cua Dashboard](https://www.trycua.com/dashboard)."
|
||||
]
|
||||
"source": "Connect to an existing Cloud Sandbox through the Cua SDK.\n\nYou can access the computer through VNC on the [Cua Dashboard](https://cua.ai/dashboard)."
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -192,13 +168,7 @@
|
||||
"cell_type": "markdown",
|
||||
"id": "87a307e3",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Try running the computer use agent on a simple task.\n",
|
||||
"\n",
|
||||
"To view a replay of the agent's actions, upload the trajectory to the [trajectory viewer](https://www.trycua.com/trajectory-viewer).\n",
|
||||
"\n",
|
||||
"Trajectories are saved in the format: `trajectories/YYYY-MM-DD_computer-use-pre_XXX`."
|
||||
]
|
||||
"source": "Try running the computer use agent on a simple task.\n\nTo view a replay of the agent's actions, upload the trajectory to the [trajectory viewer](https://cua.ai/trajectory-viewer).\n\nTrajectories are saved in the format: `trajectories/YYYY-MM-DD_computer-use-pre_XXX`."
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -239,41 +209,13 @@
|
||||
"id": "6bf0887e",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import uuid\n",
|
||||
"from pprint import pprint\n",
|
||||
"from agent.integrations.hud import run_full_dataset\n",
|
||||
"\n",
|
||||
"job_name = f\"osworld-test-{str(uuid.uuid4())[:4]}\"\n",
|
||||
"\n",
|
||||
"# Full dataset evaluation (runs via HUD's run_dataset under the hood)\n",
|
||||
"# See the documentation here: https://docs.trycua.com/docs/agent-sdk/integrations/hud#running-a-full-dataset\n",
|
||||
"results = await run_full_dataset(\n",
|
||||
" dataset=\"ddupont/OSWorld-Tiny-Public\",\n",
|
||||
" job_name=job_name,\n",
|
||||
" **agent_config,\n",
|
||||
" max_concurrent=20,\n",
|
||||
" max_steps=50,\n",
|
||||
" #split=\"train[:5]\"\n",
|
||||
")\n",
|
||||
"\n",
|
||||
"# results is a list from hud.datasets.run_dataset; inspect/aggregate as needed\n",
|
||||
"print(f\"Job: {job_name}\")\n",
|
||||
"print(f\"Total results: {len(results)}\")\n",
|
||||
"pprint(results[:3])"
|
||||
]
|
||||
"source": "import uuid\nfrom pprint import pprint\nfrom agent.integrations.hud import run_full_dataset\n\njob_name = f\"osworld-test-{str(uuid.uuid4())[:4]}\"\n\n# Full dataset evaluation (runs via HUD's run_dataset under the hood)\n# See the documentation here: https://cua.ai/docs/agent-sdk/integrations/hud#running-a-full-dataset\nresults = await run_full_dataset(\n dataset=\"ddupont/OSWorld-Tiny-Public\",\n job_name=job_name,\n **agent_config,\n max_concurrent=20,\n max_steps=50,\n #split=\"train[:5]\"\n)\n\n# results is a list from hud.datasets.run_dataset; inspect/aggregate as needed\nprint(f\"Job: {job_name}\")\nprint(f\"Total results: {len(results)}\")\npprint(results[:3])"
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "5b89a103",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## 🦾 Improve your agent\n",
|
||||
"\n",
|
||||
"To improve your agent for OSWorld-Verified, experiment with different models and add custom tools that fit your use case. You can also dive into the ComputerAgent source code to design an improved version or subclass tailored to your needs.\n",
|
||||
"\n",
|
||||
"Learn more about [Customizing Your ComputerAgent](https://docs.trycua.com/docs/agent-sdk/customizing-computeragent) in the docs."
|
||||
]
|
||||
"source": "## 🦾 Improve your agent\n\nTo improve your agent for OSWorld-Verified, experiment with different models and add custom tools that fit your use case. You can also dive into the ComputerAgent source code to design an improved version or subclass tailored to your needs.\n\nLearn more about [Customizing Your ComputerAgent](https://cua.ai/docs/agent-sdk/customizing-computeragent) in the docs."
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
@@ -289,4 +231,4 @@
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
}
|
||||
@@ -117,7 +117,7 @@ if [[ "$CHOICE" == "1" ]]; then
|
||||
# If no valid API key found, prompt for one
|
||||
if [[ -z "$CUA_API_KEY" ]]; then
|
||||
echo "To use Cua Cloud Sandbox, you need to:"
|
||||
echo "1. Sign up at https://trycua.com"
|
||||
echo "1. Sign up at https://cua.ai"
|
||||
echo "2. Create a Cloud Sandbox"
|
||||
echo "3. Generate an Api Key"
|
||||
echo ""
|
||||
@@ -167,7 +167,7 @@ elif [[ "$CHOICE" == "3" ]]; then
|
||||
print_error "Local Windows VMs require Windows 10 or 11."
|
||||
echo "💡 Consider using Cua Cloud Sandbox instead (option 1)."
|
||||
echo ""
|
||||
echo "🔗 If you are using WSL, refer to the blog post to get started: https://www.trycua.com/blog/windows-sandbox"
|
||||
echo "🔗 If you are using WSL, refer to the blog post to get started: https://cua.ai/blog/windows-sandbox"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ if [[ "$CHOICE" == "1" ]]; then
|
||||
# If no valid API key found, prompt for one
|
||||
if [[ -z "$CUA_API_KEY" ]]; then
|
||||
echo "To use Cua Cloud Sandbox, you need to:"
|
||||
echo "1. Sign up at https://trycua.com"
|
||||
echo "1. Sign up at https://cua.ai"
|
||||
echo "2. Create a Cloud Sandbox"
|
||||
echo "3. Generate an Api Key"
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user