by meetopenbot
Meet OpenBot. Your own personal AI assistant.
# Add to your Claude Code skills
git clone https://github.com/meetopenbot/openbotOpenBot is more than just a chatbot. It's an orchestrator that lives in your terminal and browser, delegating complex tasks to specialized agents. It's designed to be local-first, event-driven, and infinitely extensible.
💬 Join the community on Discord: https://discord.gg/XYYXvN2ebB

OpenBot follows a Delegate by Default pattern.
memory plugin), and orchestrates specialized workers.os (shell & files), browser (web automation), or any custom agent you define.The central orchestrator of the OpenBot ecosystem. It analyzes user intent, manages long-term memory (via the memory plugin), and coordinates other agents using the delegateTask tool. It provides you with a concise summary of the results once the specialists finish their work.
os)Your specialized terminal and file system companion. It has full access to your local machine (within the boundaries you set). It can execute shell commands, create/read/edit files, manage directories, and handle system-level operations like git commands or script execution.
browser) StagehandA powerful web automation specialist based on . It can navigate the internet exactly like a human would—browsing websites, clicking buttons, filling forms, and extracting data.
No comments yet. Be the first to share your thoughts!
topic)A background utility that works silently to keep your workspace organized. It automatically analyzes the first few messages of a new conversation and generates a concise (3-5 word) title for the thread.
codex)A world-class software engineer and coding assistant powered by OpenAI. It helps with high-level architectural decisions, code refactoring, complex logic implementation, and debugging. It has access to the shell and file system to explore and modify your codebase.
We're bringing the power of OpenBot to your pocket! The upcoming mobile app will feature:
We are constantly expanding the OpenBot ecosystem with specialized agents:
browser-use Agent: A high-level web agent leveraging the browser-use library for more autonomous, multi-step web tasks and complex reasoning.researcher Agent: An information-gathering specialist that can browse multiple sources, synthesize long-form reports, and cite its findings.devops Agent: Focused on CI/CD pipelines, container orchestration (Docker/K8s), and cloud infrastructure management.data-scientist Agent: Capable of running local notebooks, performing statistical analysis, and generating visualizations.social Agent: Designed to manage social media interactions, schedule posts, and monitor mentions.Unlike most chatbots, OpenBot has a long-term memory. It can:
remember: Store facts, snippets, or preferences for later.recall: Search its past experiences to provide context for new tasks.journal: Keep a daily log of activities and insights.Get up and running in seconds:
# 1. One-line installer
curl -fsSL https://raw.githubusercontent.com/meetopenbot/openbot/main/install.sh | bash
# 2. Install OpenBot globally (manual)
npm i -g openbot
# 3. Start the server
openbot server
# 4. Launch the web UI (in a new terminal)
npx openbot-web
Prefer a single command? Run both server and web together:
openbot up
Once the UI is open, head to the Settings tab to configure your AI providers (OpenAI, Anthropic, etc.). No configuration files required.
Add the official browser agent:
openbot add browser
OpenBot is designed for power users and builders who want to create their own custom AI workflows without the complexity of building from scratch.
Create specialized agents just by writing a simple Markdown file with YAML frontmatter in ~/.openbot/agents/researcher/AGENT.md:
---
name: researcher
description: A specialized agent for gathering information and summarizing articles.
model: anthropic/claude-3-5-sonnet-20240620
plugins:
- name: browser
- name: file-system
config:
baseDir: ~/Documents/Research
---
# Instructions
You are an expert researcher.
Use the browser to gather information and the file-system to save detailed reports.
Always cite your sources and provide a high-level summary.
For more complex agents that require custom logic beyond a prompt, you can create a full TypeScript package in ~/.openbot/agents/my-agent/:
// ~/.openbot/agents/my-agent/index.ts
export const agent = {
name: "custom-agent",
description: "An agent with custom TS logic",
factory: ({ model }) => (builder) => {
// Compose plugins and add custom event handlers
builder.use(llmPlugin({
model,
system: "You are a specialized assistant...",
// ...
}));
}
};
For those who want even more control, you can extend the AI's toolbox with custom logic. A plugin defines new tools and reacts to system events.
export const myPlugin = () => (builder) => {
builder.on("action:myTool", async function* (event, { state }) {
// Perform custom logic or interact with other systems
yield { type: "action:result", data: { result: "Done!" } };
});
};
Skip the manager's reasoning and talk directly to an agent using prefixes:
/os list files in current directory/browser search for local weatherManager: Central orchestrator, handles /remember and /recall.Plugin Registry: Centralized tool discovery.Agent Registry: Dynamic loading of built-in and user-defined agents.SDUI (Server-Driven UI): Plugins can emit UI components (cards, logs, status updates) that render directly in the web dashboard./server: Core assistant logic and API server./web: Interactive dashboard for your bots./docs: Detailed guides on Architecture, Plugins, and Agents.We love contributors! Whether it's adding a new plugin, a specialized agent, or improving the core orchestrator, check out our Contribution Guide.
Need help or want to share feedback? Join us on Discord: https://discord.gg/XYYXvN2ebB