# AI use cases for Open Bot (CopilotKit/OpenBot)

Repo: [CopilotKit/OpenBot](https://github.com/CopilotKit/OpenBot) | Use cases: 4 | Page: https://dedupedai.com/use-cases/copilotkit-openbot/

OpenBot is an open-source, self-hosted template for AI coworkers that each get their own browser, files and tools, with every action checked before it runs and logged after.

This file holds every use case of this repo. Each one starts with a "## " heading and ends with its URL.

- Run a private AI coworker on your own laptop: https://dedupedai.com/use-cases/copilotkit-openbot/run-private-ai-coworker-on-laptop/
- Gate a Bot's browser actions with deny rules: https://dedupedai.com/use-cases/copilotkit-openbot/gate-browser-actions-with-boundaries/
- Bring your own AG-UI agent as a Bot: https://dedupedai.com/use-cases/copilotkit-openbot/bring-own-ag-ui-agent-as-bot/
- Deploy Open Bot as one image for a small team: https://dedupedai.com/use-cases/copilotkit-openbot/deploy-openbot-single-image-for-team/

## How to run a private AI coworker on your own laptop with Open Bot

Repo: [CopilotKit/OpenBot](https://github.com/CopilotKit/OpenBot) | Difficulty: Intermediate | Time: 1 hour | Basis: From the README

Start Open Bot locally with Docker and Bun, then chat with a General Assistant that runs on your machine.

**Who it is for:** A developer or IT lead evaluating an internal AI assistant who wants to see it run on a laptop before any company rollout.

**The problem:** Hosted AI assistants keep data and tool access outside your control, which makes it hard to test how an agent behaves on your own systems.

**The outcome:** A working Open Bot stack on your machine with the General Assistant answering in the /bot route, running on infrastructure you control.

### Steps

1. Run `cp .env.example .env` and then `bun install` in the cloned repository.
2. Run `npx --yes copilotkit@latest login` and `npx --yes copilotkit@latest project select`, then run `bun scripts/setup-learning.ts`.
3. Open `.env` and set `OPENAI_API_KEY`, keeping the managed Intelligence URLs from `.env.example`.
4. Run `bash scripts/start.sh` and wait for the health checks to pass.
5. Open the app on port 3010 and go to `/bot`, then ask it to open news.ycombinator.com and report the top story.

### Prompt to paste into your agent

```text
In the OpenBot repository at <repo-path>, follow the Quick start in README.md to start the stack, then send the message 'Open news.ycombinator.com and tell me the top story' to the /bot route. Report the story title it returns and confirm that the start script printed a passing health check for the API on port 3001.
```

### Caveat

The README says it is alpha software written for a laptop and that `.env.example` sets OPENBOT_SINGLE_USER=true, which admits every request as one administrator until sign-in is configured.

Risk, credentials: The OPENAI_API_KEY you enter is stored in your local .env file, so keep that file out of version control.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/copilotkit-openbot/run-private-ai-coworker-on-laptop/

## How to gate a Bot's browser actions with deny rules with Open Bot

Repo: [CopilotKit/OpenBot](https://github.com/CopilotKit/OpenBot) | Difficulty: Intermediate | Time: 1 hour | Basis: From the README

Add a deny rule in the boundaries admin page, retry a browser action, then read the audit log.

**Who it is for:** A security-minded operator who needs to show that an AI coworker can be stopped from doing a specific browser action before letting it near company systems.

**The problem:** An agent that can drive a browser can take actions nobody reviewed, and it is hard to show that a rule blocked one.

**The outcome:** A tested deny rule in /admin/boundaries, a retried action that is blocked, and an audit entry in /admin/audit that records what happened.

### Steps

1. Start the stack with `bash scripts/start.sh` after completing the Quick start.
2. Open `/bot` and ask the Bot to open news.ycombinator.com and tell you the top story, so you have a baseline run.
3. Open `/admin/boundaries`, add a deny rule or preset that covers the browser action, and save it.
4. Return to `/bot` and retry the same request.
5. Open `/admin/audit` and check the entries for both attempts.

### Prompt to paste into your agent

```text
In the OpenBot repository at <repo-path>, start the stack per README.md, add a deny rule at /admin/boundaries that blocks browser navigation, then retry the news.ycombinator.com request from /bot. Report whether the action was blocked and quote the matching entry from /admin/audit.
```

### Caveat

The README describes the deny rule flow and the audit route but does not show their exact output, so check the result in the UI rather than assuming a rule works as written.

Risk, credentials: Logins saved through /settings/passwords let a Bot sign in to websites, so review which accounts are stored before testing.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/copilotkit-openbot/gate-browser-actions-with-boundaries/

## How to bring your own AG-UI agent as a Bot with Open Bot

Repo: [CopilotKit/OpenBot](https://github.com/CopilotKit/OpenBot) | Difficulty: Advanced | Time: 3 hours | Basis: From the README

Connect an agent written in any framework through AG-UI and run it as a coworker with its own channel.

**Who it is for:** A developer whose team already built an agent in LangGraph, Mastra, CrewAI, Pydantic AI, Google ADK, or by hand, and who wants it inside Open Bot's governance.

**The problem:** Existing agents have no shared place to run with a visible screen, approval step, and audit trail, so teams rebuild these controls for each one.

**The outcome:** Your agent appears as a Bot that can be chatted with, while Open Bot governs its actions and records them.

### Steps

1. Start from the cloned repository and confirm the stack runs with `bash scripts/start.sh`.
2. Expose your agent as an endpoint that speaks AG-UI, the open protocol the README names.
3. Replace or add the example tenant package under `examples/` with your own coworker, or describe it in `agents.yaml`.
4. Copy your agent definition into `examples/fintech/agents/` or create it from `/bots` in the UI.
5. Open `/bots`, select your Bot, and send it a test message from its page.

### Prompt to paste into your agent

```text
In the OpenBot repository at <repo-path>, add a new Bot that points at an AG-UI endpoint for <agent-name> following the README's Built on AG-UI and Bots sections. Confirm the Bot appears in /bots and returns a reply to a test message, and report that reply.
```

### Caveat

The README says the repository is a template and every workspace is private, so you should clone and change it rather than installing it as a dependency.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/copilotkit-openbot/bring-own-ag-ui-agent-as-bot/

## How to deploy Open Bot as one image for a small team with Open Bot

Repo: [CopilotKit/OpenBot](https://github.com/CopilotKit/OpenBot) | Difficulty: Advanced | Time: 2 hours | Basis: From the README

Run the published Docker image with your .env and an embedded database, then lock down sign-in before sharing it.

**Who it is for:** An IT or DevOps engineer who needs to host an internal AI assistant for colleagues on one machine without Kubernetes.

**The problem:** Setting up separate app, API, browser, and database services by hand is slow, and the default single-user mode is unsafe for other people.

**The outcome:** A running Open Bot container on port 3001 with its data in a named volume, ready for sign-in to be configured before others use it.

### Steps

1. Run `docker run -p 3001:3001 --env-file .env -e EMBEDDED_POSTGRES=on -v openbot-data:/var/lib/postgresql ghcr.io/copilotkit/openbot:latest`. (inferred, check the README)
2. Pin a release by replacing `latest` with a version tag such as `:v0.0.9` if you need a fixed build.
3. Configure sign-in as described in the README's Sign-in section before anyone else can reach the deployment.
4. Check that the app loads on port 3001 and that the database volume `openbot-data` exists.
5. Run `scripts/stop.sh` on your local clone only when you need to stop local services, since it leaves volumes intact.

### Prompt to paste into your agent

```text
For the OpenBot repository at <repo-path>, deploy the image ghcr.io/copilotkit/openbot:latest with the README's docker run command and the local .env file. Report whether the container answers on port 3001 and confirm that sign-in is configured before the URL is shared.
```

### Caveat

The README says the example KEY_ENCRYPTION_KEY is public and fine only for local use, so generate your own with openssl before any shared deployment.

Risk, credentials: The .env file passed to the container holds your model key and encryption key, so restrict who can read the host and the mounted volume.

Disclaimer: Third-party repos we don't own or vouch for. AI-generated use cases can be wrong: review everything and run at your own risk. Full text: https://dedupedai.com/disclaimer/

URL: https://dedupedai.com/use-cases/copilotkit-openbot/deploy-openbot-single-image-for-team/
