Coding & Development✨gemini🤖claude💬gpt🌐universal
spoon-bot
Local-first AI agent with native OS tools, powered by spoon-core
Quick Start
Install this Skill
npx skills add XSpoonAi/spoon-bot# spoon-bot
Local-first AI agent with native OS tools, powered by spoon-core.
## Features
- **Multi-Provider LLM**: Supports Anthropic, OpenAI, DeepSeek, Gemini, OpenRouter (400+ models), and more
- **Agent-centric**: Autonomous execution with safety rails and dynamic tool loading
- **OS-native**: Built-in shell/filesystem tools as priority
- **Memory-first**: Four-layer memory system (file + semantic search via memsearch + short-term + checkpointer)
- **Session Persistence**: Pluggable backends — JSONL files (default), SQLite, or PostgreSQL
- **Web Search**: Built-in Tavily integration for real-time information retrieval
- **Self-managing**: Self-configuration, self-upgrade, memory management tools
- **Web3-enabled**: Blockchain operations via spoon-core and spoon-toolkits
- **Extensible**: MCP servers + Skills ecosystem with dynamic tool activation
- **Multi-channel**: Telegram bot integration with polling/webhook modes
- **Multi-mode**: Agent / Interactive / Gateway (REST + WebSocket)
## Requirements
- **Python 3.12+** (required by spoon-ai-sdk)
## Installation
### Using uv (Recommended)
```bash
# Clone the repository
git clone https://github.com/XSpoonAi/spoon-bot.git
cd spoon-bot
# Install with uv (creates .venv automatically)
uv sync
# Or with all extras
uv sync --all-extras
```
### Using pip
```bash
# Clone the repository
git clone https://github.com/XSpoonAi/spoon-bot.git
cd spoon-bot
# Create virtual environment (Python 3.12+ required)
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install
pip install -e .
# Or with all extras
pip install -e ".[all]"
```
## Configuration
### Environment Variables
Copy `.env.example` to `.env` and configure your API keys:
```bash
cp .env.example .env
```
**At least one LLM API key is required:**
| Provider | Environment Variable | Get API Key |
|----------|---------------------|-------------|
| Anthropic | `ANTHROPIC_API_KEY` | [console.anthropic.com](https://console.anthropic.com/) |
| OpenAI | `OPENAI_API_KEY` | [platform.openai.com](https://platform.openai.com/) |
| DeepSeek | `DEEPSEEK_API_KEY` | [platform.deepseek.com](https://platform.deepseek.com/) |
| Google Gemini | `GEMINI_API_KEY` | [aistudio.google.com](https://aistudio.google.com/) |
| OpenRouter | `OPENROUTER_API_KEY` | [openrouter.ai](https://openrouter.ai/) |
| Tavily (web search) | `TAVILY_API_KEY` | [tavily.com](https://tavily.com/) |
Example `.env` file:
```bash
# Use any ONE of these (or multiple for fallback)
ANTHROPIC_API_KEY=sk-ant-xxx
OPENAI_API_KEY=sk-xxx
DEEPSEEK_API_KEY=xxx
GEMINI_API_KEY=xxx
OPENROUTER_API_KEY=sk-or-xxx
# Optional: web search
TAVILY_API_KEY=tvly-xxx
```
### Channel Configuration (config.yaml)
To enable Telegram or other channel integrations, create a `config.yaml` in the project root:
```yaml
agent:
provider: anthropic
model: claude-sonnet-4-20250514
# api_key: sk-xxx # Or use environment variable
channels:
telegram:
enabled: true
accounts:
- name: my_bot
token: ${TELEGRAM_BOT_TOKEN} # Reference env var
mode: polling # polling (default) or webhook
allowed_users: [123456789] # Optional: restrict to specific user IDs
proxy_url: "http://127.0.0.1:7897" # Optional: for restricted networks
groups:
enabled: false
require_mention: true
```
**Telegram setup:**
1. Create a bot via [@BotFather](https://t.me/BotFather) and get the token
2. Set `TELEGRAM_BOT_TOKEN` in `.env` or directly in `config.yaml`
3. Install the Telegram dependency: `uv sync --extra telegram`
**Proxy configuration** (for networks that cannot access Telegram API directly):
The proxy is resolved in priority order: `config.yaml proxy_url` > `TELEGRAM_PROXY` env var > `HTTPS_PROXY` env var. Users with unrestricted network access do not need this.
## Quick Start
### Using Anthropic Claude (Default)
```bash
export ANTHROPIC_API_KEY=your-key
# Initialize workspace
spoon-bot onboard
# Run in interactive mode
spoon-bot agent
# Run in one-shot mode
spoon-bot agent -m "List files in the current directory"
```
### Using Other Providers
```bash
# OpenAI GPT-5.2
export OPENAI_API_KEY=your-key
spoon-bot agent --provider openai --model gpt-5.2
# DeepSeek V3.2
export DEEPSEEK_API_KEY=your-key
spoon-bot agent --provider deepseek --model deepseek-v3.2
# Google Gemini 3
export GEMINI_API_KEY=your-key
spoon-bot agent --provider gemini --model gemini-3-flash-preview
# OpenRouter (access 400+ models with one key)
export OPENROUTER_API_KEY=sk-or-xxx
spoon-bot agent --provider openrouter --model anthropic/claude-sonnet-4.5
```
## LLM Providers
spoon-bot supports multiple LLM providers through the spoon-ai-sdk. You can switch providers without code changes.
### Supported Providers
| Provider | Recommended Models | Context | Notes |
|----------|-------------------|---------|-------|
| **Anthropic** | `claude-opus-4.6`, `claude-sonnet-4.5`, `clau
... (truncated)Repository
4stars
2forks
Details
Related Skills
More coding & development skills you might like
Reticle
Coding & DevelopmentAI agents can generate code, but still struggle to understand what they build. Reticle brings Jev-style machine-native runtime perception to web & desktop applications.
🤖claude🌐universal
1.2k
190
View
agentscope-java
Coding & DevelopmentExpert Java developer skill for AgentScope Java framework - a reactive, message-driven multi-agent system built on Project Reactor. Use when working with reactive programming, LLM integration, agent orchestration, multi-agent systems, or when the user mentions AgentScope, ReActAgent, Mono/Flux, Project Reactor, or Java agent development. Specializes in non-blocking code, tool integration, hooks, pipelines, and production-ready agent applications.
🌐universal
6.0k
1.5k
View
ospec
Coding & DevelopmentDocument-driven OSpec workflow for initialization, change/goal routing, validation, archiving, and durable project knowledge.
✨gemini🤖claude💬gpt🌐universal
524
34
View
misakanet-failure-memory
Coding & Development📚 A zero-dependency, git-backed micro-lesson library for AI Agents to asynchronously share and search verified debugging experience. Python stdlib only. | https://misakanet.org
🤖claude⌨️cursor🌐universal
424
158
View