Skip to content

Commit f2a0d39

Browse files
committed
docs: Update README with a revised project overview, detailed architecture, and new getting started and development sections.
1 parent 35c8ce1 commit f2a0d39

1 file changed

Lines changed: 53 additions & 63 deletions

File tree

README.md

Lines changed: 53 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -11,106 +11,96 @@
1111
1212
---
1313

14-
## The Problem with "Smart" Tools
14+
## 🌟 The "End of Friction" Promise
1515

16-
Most AI agents are like eager interns who refuse to tie their own shoelaces. They are undeniably smart, yet completely helpless. You have to configure them, deploy them, manage their environments, and restart them when they trip over a missing API key.
16+
Most AI agents are smart but helpless. They need you to configure environments, manage keys, and restart processes.
17+
**Charl** is different. It's a fleet of self-managing **OpenClaw** agents that live on the edge.
1718

18-
We asked a simple question: **Why can't the intern just tie their own shoes?**
19-
20-
## The Solution: OpenClaw
21-
22-
When you deploy **Charl**, you aren't just deploying software. You are hiring a fleet of **OpenClaw** agents who are biologically designed to manage themselves.
23-
24-
### 🌟 The "End of Friction" Workflow
25-
26-
Forget `ssh`, `vim`, and `.env` files. If you want to change OpenClaw's configuration, you don't act like a systems administrator. You act like a boss.
27-
28-
You simply say:
19+
When you want to change something, you don't edit a config file. You just tell the agent:
2920

3021
> **You:** "We've switched to the new Claude Sonnet model. Please update yourself."
31-
>
3222
> **OpenClaw:** "Consider it done."
3323
34-
And here is where the alchemy happens:
35-
1. The agent **writes its own config file**.
36-
2. The agent **restarts its own process**.
37-
3. The agent **verifies the new settings**.
38-
39-
It feels less like engineering, and more like magic.
24+
And it happens. The agent updates its own state, persists it, and adapts instantly.
4025

4126
---
4227

43-
## 🏗️ The Anatomy of Agency
28+
## 🏗️ Architecture & Agency
29+
30+
Charl is built on the **Cloudflare Agents SDK**, leveraging the power of Durable Objects for persistence and stateful autonomy.
4431

45-
**Charl** (The Mothership)
46-
A Cloudflare Worker that acts as the hive mind. It routes traffic, handles the API (MCP), and manages the flock.
32+
### Core Components
4733

48-
**OpenClaw** (The Worker)
49-
A living, stateful entity running in a secure Sandbox. It possesses:
50-
* **The Hands**: Tools to control IoT devices and manage files.
51-
* **The Eyes**: Serverless Puppeteer to browse the web and verify reality.
52-
* **The Will**: The autonomy to fix its own problems.
34+
1. **Charl (The Platform)**: A high-performance Worker that acts as the orchestrator.
35+
2. **Registry Agent**: The "Phonebook" of the system.
36+
* **Service Discovery**: Automatically registers new agents.
37+
* **Real-time State**: Uses WebSockets to sync fleet status to the dashboard instantly.
38+
* **Presence**: Tracks agent heartbeats (Online/Offline status).
39+
3. **OpenClaw Agents (The Workers)**:
40+
* **AI Brain**: Powered by `gpt-4o` (or compatible models).
41+
* **Tool Use**: Can schedule tasks, perform calculations, and browse the web.
42+
* **Sandbox**: Optional integration with `Moltbot` for secure, sandboxed execution of complex code.
5343

54-
### 🧠 The Hive Mind Visualization
44+
### 🧠 The Hive Mind
5545

5646
```mermaid
5747
graph TD
5848
classDef platform fill:#f48120,color:#fff,stroke:#333,stroke-width:2px;
5949
classDef agent fill:#e1e1e1,color:#333,stroke:#333,stroke-width:1px;
6050
classDef client fill:#f9fafb,color:#333,stroke:#333,stroke-width:1px;
6151
62-
User("User / IDE / Claude"):::client
52+
User("User / Dashboard"):::client
6353
64-
subgraph Charl_Cloud ["☁️ Charl (The Platform)"]
54+
subgraph Cloudflare_Worker ["☁️ Charl Worker"]
6555
direction TB
66-
Router["Orchestrator / Router"]:::platform
67-
68-
subgraph Agent_1 ["Agent 1: 'The DevOps Eng'"]
69-
OC1["🦁 OpenClaw <br/>(Self-Configuring)"]:::agent
70-
end
56+
Registry["📖 Registry Agent"]:::platform
7157
72-
subgraph Agent_2 ["Agent 2: 'The Researcher'"]
73-
OC2["🦁 OpenClaw <br/>(Browsing Web)"]:::agent
74-
end
75-
76-
subgraph Agent_3 ["Agent 3: 'Home Automation'"]
77-
OC3["🦁 OpenClaw <br/>(IoT Control)"]:::agent
58+
subgraph Agents
59+
A1["🦁 Agent: Research"]:::agent
60+
A2["🦁 Agent: DevOps"]:::agent
7861
end
7962
end
80-
81-
User -->|HTTP / MCP| Router
82-
Router -->|"Routes Task"| Agent_1
83-
Router -->|"Routes Task"| Agent_2
84-
Router -->|"Routes Task"| Agent_3
63+
64+
User <-->|WebSocket| Registry
65+
Registry <-->|JSRPC| A1
66+
Registry <-->|JSRPC| A2
8567
```
8668

8769
---
8870

89-
## 🚀 Why You'll Love It
71+
## 🚀 Getting Started
9072

91-
### 1. It Sees What You See
92-
When you ask OpenClaw to check a website, it doesn't hallucinate. It spins up a browser, takes a photo, and acts on ground truth. It’s the difference between guessing and knowing.
73+
### 1. Zero-Config Deployment
74+
Deploy the entire platform to your Cloudflare account in seconds.
9375

94-
### 2. It Plug & Plays (Literally)
95-
Through the **Model Context Protocol (MCP)**, Charl turns your entire agent fleet into a backend for your favorite tools. Connect **Cursor** or **Claude Desktop** to Charl, and suddenly your local code editor has eyes and hands in the cloud.
76+
```bash
77+
npm run deploy
78+
```
79+
80+
### 2. Access the Dashboard
81+
Visit your deployed worker URL (e.g., `https://charl.your-subdomain.workers.dev`).
82+
* **Create Agents**: Spin up new workers with a click.
83+
* **Monitor Fleet**: See real-time status and heartbeats.
84+
* **Broadcast**: Send system-wide commands to all agents.
9685

97-
### 3. It Scales Without Drama
98-
Add one agent or one hundred. Charl coordinates them all without you needing to learn Kubernetes.
86+
### 3. Documentation
87+
For detailed guides on architecture, configuration, and API usage, visit the **Docs** page on your deployed instance at `/docs`.
9988

10089
---
10190

102-
## Quick Start (The Low-Friction Way)
91+
## 🛠️ Development
10392

104-
1. **Deploy Charl**:
105-
```bash
106-
npm run deploy
107-
```
93+
Run the full stack locally:
94+
95+
```bash
96+
npm run dev
97+
```
10898

109-
2. **Connect**:
110-
Add Charl to your Claude Desktop config (see `package.json` for the MCP snippet).
99+
This starts the Worker, the Client (Vite), and the connection to Cloudflare services locally.
111100

112-
3. **Delegation**:
113-
Open the chat. Ask the agent to configure itself. Then go make a coffee.
101+
### Key Config
102+
* `wrangler.jsonc`: Cloudflare bindings and configuration.
103+
* `.dev.vars`: Local secrets (OPENAI_API_KEY, etc.).
114104

115105
---
116106

0 commit comments

Comments
 (0)