本项目和直接使用OpenCLI命令行有什么区别?
- 用LLM判断并考虑调用OpenCLI的顺序和逻辑。
- 可以在WEBUI中查看调用多个命令的详细过程。
- 用户只需要提出自己的问题或需求。
- 提供友好的提示:所有可操作的sites以及帮助示例。
- 缓存sites列表及描述提高LLM查询成功率。
本项目和用Agent通过skill调用openCLI有什么区别?
- 简化操作流程和数据结构,只能操作网站(site)类型。
- 用在线LLM可以省很多Token。
- 用本地LLM更容易Hold住,成功完成任务。
- 也许相当于自行车对比汽车: 下坡省力,上坡省油?
- 安装
Node.js20+:Node.js官方 - 安装
OpenCLI:npm install -g @jackwener/opencli: 详情参考仓库。 - 按照OpenCLI的文档配置好OpenCLI。
我自己用的环境是python 3.10,没测试过新的python版本。
- 将仓库代码克隆到一个本地目录:
git clone https://github.com/ShionWakanae/llamaIndexSample.git - 进入这个目录建立虚拟环境:
python -m venv venv - 激活虚拟环境:
.\venv\scripts\activate - 安装依赖:
pip install -r requirements.txt
将.env_sample拷贝成.env,并修改其中的API地址密钥,各种模型配置(本地或在线),其它参数可保留原样,后根据实际情况修改,配置样例如下:
STORAGE_SECRET=xxxxxx #输入任意的固定字符串
LLM_API_BASE=https://api.openai.com/v1 #本地或在线的OpenAI或兼容API地址
LLM_API_KEY=sk-xxxxx #密钥
LLM_MODEL=gpt-4.1-mini #模型名称
WEBUI_USERNAME=janedoe #WebUI用户名
WEBUI_PASSWORD=123456 #WebUI密码
HOST=127.0.0.1 #WebUI主机地址
PORT=7860 #WebUI端口
LANGUAGE=简体中文 #人类语言的全程首次查询或OpenCLI支持的Sites发生变化时,会维护Sites列表及描述缓存。 这个过程需要LLM通过解读指令来反推site的作用,速度稍慢,请耐心等待。
日志类似:
[2026-06-17 16:15:14.913] [Service] init...
[2026-06-17 16:15:19.010] [SiteMetadata] Added: huodongxing <4.10s>
[2026-06-17 16:15:20.697] [SiteMetadata] Added: slock <1.69s>缓存位置:.\data\sites_metadata.json
只会维护变动的内容,所以从第二次执行开始,速度就很快了。
.\venv\scripts\activate
python .\src\open_cli.py '你的问题' #比如:B站最热门的5条视频- 启动WebUI服务。
python .\src\open_web.py- 打开浏览器,访问
http://127.0.0.1:7860/主界面通过星环方式,展示了多个使用示例,以及所有的site(每颗星星都是一个site)。
- 发送问题进行基于OpenCLI的网站查询。
点击打开B站视频:
还有更多的视频更新,有需要请站内自行查看。
Important
本项目基于MIT许可证开源,您可以在遵守许可证条款的前提下自由使用、修改和分发本项目的代码。




