by SudoJacky
Tinybot is a lightweight personal AI Agent that is constantly evolving
# Add to your Claude Code skills
git clone https://github.com/SudoJacky/tinybot中文文档 | Quick Start | Features | Commands
A lightweight personal AI assistant framework that integrates Large Language Models with multiple chat platforms, tool systems, and automation mechanisms.


white mode
dark mode

Automatically decomposes complex tasks into executable subtask DAGs, supporting:
No comments yet. Be the first to share your thoughts!
A self-learning system that continuously improves from problem-solving experiences:
{
"id": "exp_86788c0e",
"timestamp": "2026-04-20T21:19:17",
"tool_name": "exec",
"error_type": "argument error",
"error_message": "",
"params": {},
"outcome": "resolved",
"resolution": "当使用opencli的scroll命令时,确保只传递一个参数,避免参数过多错误。检查命令调用格式,正确示例为`scroll(distance)`或`scroll(selector)`,而非多个参数。在工具调用前验证参数数量,可参考opencli文档或使用测试命令确认API要求。",
"context_summary": "网页自动化执行:使用opencli执行JavaScript命令时参数错误和代码语法/类型错误,通过调整命令和防御性编程解决",
"confidence": 0.7,
"session_key": "cli:direct",
"merged_count": 0,
"last_used_at": "2026-04-20T21:19:17",
"category": "api",
"tags": ["opencli", "scroll", "参数错误", "浏览器自动化"],
"use_count": 0,
"success_count": 0,
"feedback_positive": 0,
"feedback_negative": 0
}
Two-phase autonomous memory consolidation during idle periods:
Task execution shows real-time progress in CLI without disrupting main conversation
Full-screen terminal configuration editor accessible directly within the interactive chat:
Ctrl+O or type /config to open the editorq to save and return to chatConnect to external MCP servers and use their tools seamlessly:
# Install
uv sync
# Initialize configuration (interactive wizard)
uv run tinybot onboard
# Interactive chat mode
uv run tinybot agent
# Send single message
uv run tinybot agent -m "Hello"
# Start gateway (multi-channel + scheduled tasks + heartbeat)
uv run tinybot gateway
# Run as OpenAI-compatible API server
uv run tinybot api
Tinybot provides a browser-based web interface for chatting with the AI agent.
Edit your ~/.tinybot/config.json file, add the following under channels:
{
"channels": {
"websocket": {
"enabled": true,
"host": "127.0.0.1",
"port": 18790
}
}
}
uv run tinybot gateway
Visit http://127.0.0.1:18790 in your browser.
| Endpoint | Method | Description |
|----------|--------|-------------|
| /api/sessions | GET | List all chat sessions |
| /api/sessions/{key}/messages | GET | Get session messages |
| /api/sessions/{key} | DELETE/PATCH | Delete/update session |
| /api/sessions/{key}/clear | POST | Clear session history |
| /api/sessions/{key}/profile | GET | Get user profile |
| /api/config | GET/PATCH | Get/update configuration |
| /api/status | GET | Get system status |
| /api/tools | GET | Get available tools |
| /api/skills | GET | Get all skills |
| /api/skills/{name} | GET | Get skill detail |
| /api/workspace/files | GET | List workspace files |
| /ws | WebSocket | Real-time chat connection |
| Event | Direction | Description |
|-------|-----------|-------------|
| new_chat | Client → Server | Create new chat |
| attach | Client → Server | Attach to existing chat |
| message | Client → Server | Send message |
| interrupt | Client → Server | Stop AI generation |
| ping | Client → Server | Heartbeat |
| delta | Server → Client | Streaming text chunk |
| stream_end | Server → Client | Stream finished |
| message | Server → Client | Full message |
| file_updated | Server → Client | Workspace file changed |
When in interactive mode, the following commands are available:
| Command | Description |
|---------|-------------|
| /config or Ctrl+O | Open configuration editor |
| /help | Show available commands |
| /clear | Clear conversation history |
| /new | Start new conversation session |
| /exit or :q | Exit the chat |
Define custom skills through simple Markdown files.
Skills are automatically loaded and the Agent follows defined workflows when conditions match.
npm install -g @jackwener/opencli
OpenCLI connects to Chrome/Chromium through a lightweight Browser Bridge extension plus a small local daemon. The daemon auto-starts when needed.
opencli-extension-v{version}.zip from the GitHub Releases page.chrome://extensions, and enable Developer mode.opencli doctor
The Agent can actively manage its learning experiences:
| Tool | Description |
|------|-------------|
| query_experience | Search past problem-solving experiences |
| save_experience | Save a new solution for future reference |
| feedback_experience | Mark an experience as helpful or not |
| delete_experience | Remove outdated or incorrect experiences |