chenbhao commited on
Commit
648fa4b
·
1 Parent(s): 51b72f7

chore: refactor README.md

Browse files
Files changed (1) hide show
  1. README.md +74 -164
README.md CHANGED
@@ -4,7 +4,47 @@
4
  <img src="assets/VersperAI_Banner.png" alt="VersperAI">
5
  </div>
6
 
7
- ## 1. Quick Start
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
 
9
  ```bash
10
  # script install
@@ -15,57 +55,44 @@ git clone https://github.com/versperai/VersperClaw.git && cd VersperClaw && bun
15
 
16
  # if want global use bin file
17
  cp VersperClaw ~/.local/bin
18
- # then can use VersperClaw in everywhere after /login
19
  ```
20
 
21
- ## 2. Auto Compact & Dream & SubAgent
22
 
23
- <table align="center">
24
- <tr>
25
- <td><img src="assets/ctx_auto_compose/compact_dream_subagent.png"></td>
26
- </tr>
27
- </table>
 
 
 
28
 
29
  ```bash
30
  # Maximum_Context_Window = min(CLAUDE_CODE_MAX_CONTEXT_TOKENS, CLAUDE_CODE_AUTO_COMPACT_WINDOW) - 20000
31
  # set 200k env in ~/.claude/settings.json or terminal
32
  # the 20k is used to compact as buffer band
 
33
  {
34
  "env": {
35
  "USER_TYPE": "ant",
36
  "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "200000",
37
- "CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000"
 
 
38
  }
39
- }
40
- ```
41
 
42
- ```bash
43
- # set auto-dream config
44
- nvim ~/.claude/settings.json
45
-
46
- {
47
  "autoMemoryEnabled": true,
48
  "autoDreamEnabled": true
49
  }
50
- ```
51
-
52
- ## 3. WebSearch & WebFetch Tools
53
-
54
- <table align="center">
55
- <tr>
56
- <td><img src="assets/WebSearchTool.png"></td>
57
- <td><img src="assets/WebSearchTool2.png"></td>
58
- <td><img src="assets/WebSearchTool3.png"></td>
59
- </tr>
60
- </table>
61
-
62
- ### Choice One - SearXNG:
63
-
64
- > 100% local free no remote api fee
65
 
66
- #### 1. Docker Configuration
67
 
68
  ```bash
 
 
 
69
  # local config search engine - searxng in archlinux
70
  # make sure have install docker and docker-compose
71
  sudo pacman -S docker-compose && docker
@@ -74,168 +101,51 @@ sudo usermod -aG docker $USER
74
 
75
  # make sure open pc and now start docker daemon
76
  sudo systemctl enable --now docker
77
- ```
78
-
79
- #### 2. Docker-Compose Pull
80
-
81
- > use VersperSearch a pre-build docker config in https://github.com/versperai/VersperSearch
82
 
83
- ```bash
 
84
  # or install searxng in docker-compose by yourself
85
  curl -fsSL \
86
- -O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml \
87
- -O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example
88
 
89
  # add json source in formats behind html - jsonl in 87 lines
90
  cd searxng/core-config/ && sudo nvim settings.yml
91
 
92
  # start searxng engine
93
  docker compose up -d
94
- ```
95
-
96
- #### 3. Check Search Feature
97
 
98
- ```bash
99
  # check in every browser
100
  firefox http://localhost:8080
101
-
102
- # set tool_search env in ~/.claude/settings.json
103
- {
104
- "env": {
105
- "ENABLE_TOOL_SEARCH": "true"
106
- }
107
- }
108
  # or allow tool search in ~/.bashrc
109
- export ENABLE_TOOL_SEARCH=true
110
  ```
111
 
112
- ### Choice Two - Tavily:
113
 
114
- > when TAVILY_API_KEY is set in env
115
 
116
- ## 4. Telegram - Interactive Config
117
-
118
- ```bash
119
- # On startup, the CLI runs silently in the background, maintains a persistent Telegram connection, and listens for messages.
120
- # start VersperClaw Cli
121
- ./VersperClaw
122
-
123
- # enter it into the cli input field and interactive configuration parameters
124
- /telegram
125
- ```
126
-
127
- # Legacy Python Version
128
-
129
- > Demos dev/python
130
-
131
- ## 1. Auto Scientific Research & evolve code and write ccf/sci & checkpoint
132
 
133
  <table align="center">
134
  <tr>
135
- <td><img src="assets/legacy/paper.gif"/></td>
136
- <td><img src="assets/legacy/versper.gif"/></td>
137
  </tr>
138
  </table>
139
 
140
- ## 2. WebToolAgent
 
141
 
142
  <table align="center">
143
  <tr>
144
- <td align="center"><b>Web Search</b></td>
145
- <td align="center"><b>Deep Search</b></td>
146
- <td align="center"><b>Live Chrome Control</b></td>
147
- </tr>
148
- <tr>
149
- <td><img src="assets/legacy/versperclaw1.jpg" width="100%"></td>
150
- <td><img src="assets/legacy/versperclaw2.jpg" width="100%"></td>
151
- <td><img src="assets/legacy/control_browser_use_gemini.jpg" width="100%"></td>
152
  </tr>
153
  </table>
154
 
155
- ## 3. Gateway - WeXin, Telegram and so on
156
-
157
- ```bash
158
- # telegram, wechat and whatsapp
159
- versper setup gateway
160
-
161
- # then start listen
162
- versper gateway
163
- ```
164
-
165
- ```bash
166
- # Source install
167
- git clone -b dev/python https://github.com/versperai/VersperClaw.git
168
-
169
- # If you want check out the have been legacyed python version code, just switch to the dev/python branch
170
-
171
- # make sure you have installed uv and creat .venv via uv venv
172
- uv pip install -r requirements.txt # or uv sync
173
- source .venv/bin/activate
174
- uv pip install -e .
175
-
176
- # use codex, openrouter, or claude remote model via api
177
- versper setup
178
- ```
179
 
180
- ```bash
181
- # if use vllm or llama.cpp in local model for inference
182
- # for example use llama.cpp
183
- llama-server \
184
- --model unsloth/Qwen3.5-4B-GGUF/Qwen3.5-4B-UD-Q4_K_XL.gguf \
185
- --mmproj unsloth/Qwen3.5-4B-GGUF/mmproj-F16.gguf \
186
- --seed 3407 \
187
- --temp 1.0 \
188
- --top-p 0.95 \
189
- --min-p 0.01 \
190
- --top-k 40 \
191
- -c 49152 \
192
- --port 8001 \
193
- --chat-template-kwargs '{"enable_thinking":true}' \
194
- --host 0.0.0.0
195
-
196
- # check model name and pass inference
197
- curl http://localhost:8001/v1/models
198
-
199
- curl http://localhost:8001/v1/chat/completions \
200
- -H "Content-Type: application/json" \
201
- -d '{
202
- "model": "qwen",
203
- "messages": [
204
- {"role": "user", "content": "hello"}
205
- ]
206
- }'
207
-
208
- cd ~/.versper && nvim config.yaml
209
- # model:
210
- # api_key: sk-no-key-required
211
- # base_url: http://localhost:8001/v1
212
- # default: unsloth/Qwen3.5-4B-GGUF
213
- # provider: custom
214
- ```
215
 
216
  ```bash
217
- versper doctor # make sure all checks passed
218
- ```
219
-
220
- ## 4. Add-on - mcp dependency and env
221
-
222
- ```bash
223
- if ban mcp in ~/.versper/.env:
224
- export VERSPER_BROWSER_USE_MCP=0
225
- ```
226
-
227
- ```bash
228
- # live chrome control
229
- npm install -g chrome-devtools-mcp@latest
230
- npm install -g agent-browser@latest
231
-
232
- # make sure you have installed chrome
233
- google-chrome-stable
234
-
235
- # fill it in the search bar and click the box
236
- chrome://inspect/#remote-debugging
237
-
238
- # check chrome connect
239
- versper
240
- /browser status
241
  ```
 
4
  <img src="assets/VersperAI_Banner.png" alt="VersperAI">
5
  </div>
6
 
7
+
8
+ ## 📢 News
9
+
10
+ - **2026-05-23** 🧘 Added OpenCode Zen Provider — a new model provider for calm, focused AI interactions.
11
+ - **2026-05-22** 🔧 Fixed OpenCode login flow and refined prompt identity for clearer agent behavior.
12
+ - **2026-05-08** 🐛 Fixed model list not refreshing after `/login` opencode freemodel exit; subagent creation now works without API key in free mode.
13
+ - **2026-05-06** 🚀 Added OpenCode as a free provider — includes GPT-5 Nano and Big Pickle 🥒 models, `/model` list with life-free model display, and auto-refresh. Introduced ctx_line context tracking with online persistence. Better collapsing fetch results and auto-compact documentation polish. Merged PR #6 for Tavily search backend migration.
14
+ - **2026-04-30** 🔍 Added Tavily as optional search backend in WebSearchTool via PR #6.
15
+ - **2026-04-24** 🧹 Cleaned up empty contributor docs.
16
+ - **2026-04-21** 🛡️ Fixed auto-compact env in settings.json; VersperClaw now handles Ctrl+C resume gracefully.
17
+ - **2026-04-20** 📝 Documented ToolSearch behavior and <tr> table formatting.
18
+ - **2026-04-19** 📖 Described auto-dream and subagent features in README; punctuation and layout polish. Tagged **v2.0.1** 🏷️.
19
+ - **2026-04-18** 💭 Snapshot auto-dream feature; ToolSearch now uses WebSearch under the hood.
20
+ - **2026-04-15** 🌙 Auto Dream — AI autonomously reflects and builds internal memory. Fixed chatId overflow by migrating from Number to String.
21
+ - **2026-04-13** 🧠 All tools allowed in auto mode without classifier; auto-compact triggers on context size exceeded; ToolSearch enabled by default for all providers; OpenRouter full model loading. Tagged **v2.0.0** 🏷️.
22
+ - **2026-04-12** ⚡ Live refresh typing status; WebFetch now supports shouldDefer for lazy loading; symbol links documented as usable everywhere.
23
+ - **2026-04-09** 🎨 Major README overhaul — VersperAI branding with Banner & Logo, tabular layout, websearch/webfetch documentation, TypeScript main branch vs Python legacy explained. Tagged **v2.0.0** 🏷️.
24
+ - **2026-04-08** 🌐 Full WebSearch toolchain — SearXNG integration, Jina AI websearch & fetch, WebFetch UI notes, build fix. Four search approaches landed in one day.
25
+ - **2026-04-07** 🔍 Zero-search prototype; Python env removed; TLS-enabled web search working end-to-end.
26
+ - **2026-04-06** 🛠️ Open ripgrep via USE_BUILTIN_RIPGREP=0; WebFetch UI notes; skill message renamed; WebSearch API error fixed.
27
+ - **2026-04-05** 🤖 AutoMode — autonomous decision-making execution mode. `/sandbox` with sandbox-runtime @0.0.44. Project renamed to versperclaw. OpenRouter ↔ Local model switching, auto-refresh TUI, Telegram `/login` local model transition.
28
+ - **2026-04-04** 📱 Telegram backend — `/telegram` command, interactive commands, message receiving in TUI, chatId overflow fixed. `/buddy` companion mode; recent activity in individual directories.
29
+ - **2026-04-03** 🔄 Reborn as verspercode **v0.1.0** — complete `/login` system (OpenRouter + local models), `/model` search & UI, free OpenRouter model auto-load, onboarding flow. Local model filesystem-based provider.
30
+
31
+ <details>
32
+ <summary>Earlier news</summary>
33
+
34
+ - **2026-04-01** 🧹 Removed autoresearch, evolve modules, and Cursor scripts — streamlining toward v2. Tagged **v1.0.0** 🏷️.
35
+ - **2026-03-31** 🖥️ CLI update for better terminal interaction.
36
+ - **2026-03-30** 🐛 Fixed error type-in when using `/resume` session.
37
+ - **2026-03-29** 🧠 Memory routing — route-runtime-long_term for persistent context. CLI shell split to <10K lines. Browser vision click/control fixes. Paper GIF in README; --paper API call optimization.
38
+ - **2026-03-28** 📄 Academic paper pipeline — `/evolve` autonomous evolution, `/compact` context compression, LaTeX paper template, main.pdf compilation. Chrome-based research v1.0.
39
+ - **2026-03-27** 🔬 Research workflow — `/paper` and `/code` commands, 4-step research + autoresearch, ANN vector index, hybrid retrieval with semantic cache, external memory, token-budgeted evidence pipeline, IncompleteRead retry, long-term index cache. Workflows engine, `/resume` session toggle, CLI UI refresh.
40
+ - **2026-03-26** 🏗️ Configuration overhaul — YAML → JSON + .env + TOML. Clean config dir.
41
+ - **2026-03-24** 🌐 Browser control — Chrome DevTools MCP integration, WeChat gateway, Telegram gateway. Setup wizard, README with demo GIF, version menu.
42
+ - **2026-03-22** 🎉 Initial commit — versperclaw **v0.1.0** born.
43
+
44
+ </details>
45
+
46
+
47
+ ## 📦 Install
48
 
49
  ```bash
50
  # script install
 
55
 
56
  # if want global use bin file
57
  cp VersperClaw ~/.local/bin
58
+ # then can use VersperClaw in everywhere after `/login`
59
  ```
60
 
 
61
 
62
+ ## 🚀 Quick Start
63
+
64
+ > [!IMPORTANT]
65
+ > If you no need `auto-compact / dream / control context-window`
66
+ > and `websearch` feature. you can no configuration anything
67
+ >
68
+ > if you no need free `local-websearch` you can skip config searxng
69
+ > and just set `TAVILY_API_KEY` in env
70
 
71
  ```bash
72
  # Maximum_Context_Window = min(CLAUDE_CODE_MAX_CONTEXT_TOKENS, CLAUDE_CODE_AUTO_COMPACT_WINDOW) - 20000
73
  # set 200k env in ~/.claude/settings.json or terminal
74
  # the 20k is used to compact as buffer band
75
+ # set tool_search env
76
  {
77
  "env": {
78
  "USER_TYPE": "ant",
79
  "CLAUDE_CODE_MAX_CONTEXT_TOKENS": "200000",
80
+ "CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000",
81
+ "ENABLE_TOOL_SEARCH": "true",
82
+ # "TAVILY_API_KEY": ""
83
  }
 
 
84
 
85
+ # set auto-dream config
 
 
 
 
86
  "autoMemoryEnabled": true,
87
  "autoDreamEnabled": true
88
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
 
90
+ ```
91
 
92
  ```bash
93
+ ## config searxng
94
+
95
+ # 1. docker configuration
96
  # local config search engine - searxng in archlinux
97
  # make sure have install docker and docker-compose
98
  sudo pacman -S docker-compose && docker
 
101
 
102
  # make sure open pc and now start docker daemon
103
  sudo systemctl enable --now docker
 
 
 
 
 
104
 
105
+ # 2. docker-compose pull
106
+ # use VersperSearch a pre-build docker config in https://github.com/versperai/VersperSearch
107
  # or install searxng in docker-compose by yourself
108
  curl -fsSL \
109
+ -O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml \
110
+ -O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example
111
 
112
  # add json source in formats behind html - jsonl in 87 lines
113
  cd searxng/core-config/ && sudo nvim settings.yml
114
 
115
  # start searxng engine
116
  docker compose up -d
 
 
 
117
 
118
+ # 3. check search feature
119
  # check in every browser
120
  firefox http://localhost:8080
 
 
 
 
 
 
 
121
  # or allow tool search in ~/.bashrc
 
122
  ```
123
 
 
124
 
125
+ ## Features
126
 
127
+ ## Auto Compact & Dream & SubAgent
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
 
129
  <table align="center">
130
  <tr>
131
+ <td><img src="assets/ctx_auto_compose/compact_dream_subagent.png"></td>
 
132
  </tr>
133
  </table>
134
 
135
+
136
+ ## WebSearch & WebFetch Tools
137
 
138
  <table align="center">
139
  <tr>
140
+ <td><img src="assets/WebSearchTool.png"></td>
141
+ <td><img src="assets/WebSearchTool2.png"></td>
142
+ <td><img src="assets/WebSearchTool3.png"></td>
 
 
 
 
 
143
  </tr>
144
  </table>
145
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
146
 
147
+ ## Telegram - Interactive Config
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
148
 
149
  ```bash
150
+ /telegram
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
  ```