DeepClaw
DeepClaw is a local AI agent powered by DeepSeek models, running in your terminal. It reads/writes files, executes shell commands, searches codebases, and browses the web — autonomously. Features streaming output, context compression, a Jinja2-driven Skill system, and a VS Code-style Plugin architecture for unlimited extensibility. Zero environment variables, one-command setup, ready to work.
Software Architecture
User → CLI (Rich TUI) → Agent Core (streaming + tool-call loop) → DeepSeek API
↓
Tool Execution Layer
(file I/O, shell, grep, web search, HTTP)
↓
Skill Engine (Jinja2) ←→ Plugin System (hot-load)
Built with Python, using openai SDK for API calls and Rich for terminal UI. Skills use Jinja2 templates with YAML front matter; Plugins are dynamically-loaded Python modules following a VS Code Extension-like contract.
Installation
# PyPI (recommended)
pip install deepclaw-ai
deepclaw
# From source
git clone https://github.com/boyin111-1/DeepClaw.git
cd DeepClaw
pip install -r requirements.txt
python -m deepclaw
On first run, you'll be guided through setup: choose DeepSeek official API (API Key only) or third-party API (Key + URL + model).
Usage
| Command | Description |
|---|---|
deepclaw |
Launch interactive CLI (when installed via pip) |
python -m deepclaw |
Launch from source |
python -m deepclaw --model deepseek-v4-pro |
Start with a specific model |
python -m deepclaw --plugin weather |
Load plugins at startup |
python -m deepclaw --resume |
Restore last session |
In-session commands:
| Command | Description |
|---|---|
/help |
Show all commands |
/skill <name> |
List / load / unload skills |
/plugin list |
Manage plugins |
/model |
View / switch models |
/config |
View / edit configuration |
/back |
Load / delete saved sessions |
/export |
Export conversation to Markdown |
/exit |
Quit (auto-saves session) |
Skill System
Skills are plain Markdown files with YAML front matter and Jinja2 templates. They define custom AI behavior — code review, project workflow, git operations, and more.
Place skills in ~/.deepclaw/skills/<name>/SKILL.md and load with /skill <name>. Example:
---
name: My Reviewer
params:
focus: { type: enum, values: [安全, 性能, 风格], default: 安全 }
---
# {{ name }}
Focus on **{{ focus }}** when reviewing code.
Load with /skill reviewer — interactive parameter forms appear for skills with parameters.
Plugin System
Plugins run arbitrary Python code with full freedom:
# ~/.deepclaw/plugins/my-plugin/main.py
def on_load(api):
api.register_tool({"function": {"name": "my_tool", ... }}, handler)
api.status_bar.set("my-plugin", "Ready")
api.on("chat:after", lambda resp: print(resp))
Extensions can: inject tools, register commands, subscribe to events, run background services, or even take over the UI entirely (mode: gui).
Contribution
- Fork the repository
- Create
Feat_xxxbranch - Commit your code
- Create Pull Request
Share skills and plugins via the Discussions tab.
License
MIT License — see LICENSE.
Release files for deepclaw-ai 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| deepclaw_ai-0.1.1.tar.gz | 31.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| deepclaw_ai-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.1 kB
Release files / deepclaw_ai-0.1.1.tar.gz
| Download URL | deepclaw_ai-0.1.1.tar.gz |
|---|---|
| Size | 31.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
45bbc3aeb3d9014d6a3fcdb21f5c839973becb09cba3201b428f403afacabab1
|
|
BLAKE2b-256 checksum How to use checksums |
cf448a113cd664625c72e36018d2b4491504e56e39b9dd825aec905f4b2a5cdd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / deepclaw_ai-0.1.1-py3-none-any.whl
| Download URL | deepclaw_ai-0.1.1-py3-none-any.whl |
|---|---|
| Size | 36.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f97c4b5514e39ad6814b5ff89352a8b984d5f4654649af41e266cfd8b269832f
|
|
BLAKE2b-256 checksum How to use checksums |
1d7c9adcb707fbf24cfeb48c4bb05b7ffcaef0b4476d753cb5689844e776e75b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|