DeepSeek CLI
DeepSeek CLI 是一个命令行工具,通过调用 DeepSeek API 实现多轮对话,并支持对话历史记录的管理。~~是对jyy老师的拙劣模仿。~~
你可以在有记忆模式下新建/继续对话,也可以使用无记忆模式单次对话。
特性
- 无记忆模式:直接输入对话或使用命令
nomemory
启用,程序仅使用当前输入向 API 提问,不加载或保存历史记录。 - 记忆模式:使用命令
new
或continue
时会启用: new
:启动一个新的会话。continue
:继续上一次(最近一次的记忆模式)对话。- 你可以在
~/.config/deepseek/histories/
中找到你的对话历史记录(仅限记忆模式下)。 - ANSI 色彩提示,帮助你快速识别成功/错误信息。
- 对话历史记录以基于时间戳的文件保存,管理历史记录更加方便。
- 支持通过管道进行数据传输。
安装
- 克隆代码仓库:
git clone <仓库地址>
cd deepseek_cli
-
确保你已经安装了 Rust。
-
编译项目:
cargo build --release
-
可执行文件将在
target/release/deepseek_cli
中生成。 -
或者您可以直接从
release
中下载适合您系统的可执行文件。
配置
下面是针对 macOS、Linux 和 Windows 系统的示例步骤,帮助你将生成的可执行文件放入 PATH 中,从而实现全局调用,在操作前,请确认可执行文件正处在当前目录下:
macOS
在终端中执行以下命令(需要管理员权限),将可执行文件链接到 `/usr/local/bin` 目录(通常已在 PATH 中):sudo ln -s $(pwd)/deepseek_cli /usr/local/bin/ag
Linux
使用链接方式:sudo ln -s $(pwd)/deepseek_cli /usr/local/bin/ag
sudo cp $(pwd)/deepseek_cli /usr/local/bin/ag
Windows
在管理员权限下的命令提示符或 PowerShell 中执行:copy deepseek_cli.exe C:\Windows\System32\ag.exe
请确保你有足够的权限在对应目录中创建符号链接或复制文件,完成上述操作后,就可以在终端中直接使用 ag
命令全局调用该程序。
在 ~/.config/deepseek/
下创建配置文件 config.toml
,确保包含你的 DeepSeek API key,例如:
api_key = "your_api_key_here"
或者直接使用命令
ag set_api your_api_key
完成配置文件的生成,默认生成路径为 ~/.config/deepseek/config.toml
。
使用方法
无记忆模式
直接调用命令并输入对话内容:
ag "这是一条无记忆对话"
或通过 nomemory
命令启用无记忆模式:
ag nomemory "这是一条无记忆对话"
记忆模式
通过 new
或 continue
命令启用记忆模式。
- 新对话(清空历史记录):
ag new "这是我们的第一次对话吗"
- 继续对话:
使用 continue
命令输入对话内容:
ag continue "继续我们的对话"
程序会自动管理对话历史记录,并在记忆模式下显示相应的提示信息(绿色表示成功保存,黄色表示不保存历史记录)。
更多参数
使用 DeepSeek API 进行多轮对话,并管理对话历史
Usage: ag [OPTIONS] [query] [COMMAND]
Commands:
new 新对话
continue 继续上一次对话
nomemory 无记忆模式
set_api 设置 API Key
help Print this message or the help of the given subcommand(s)
Arguments:
[query] 查询内容
Options:
-v, --version <version> 模型版本, r1 表示 deepseek-reasoner [default: v3]
-t, --temperature <temperature> 温度(默认:1.0,范围:0.0-2.0,越高越随机) [default: 1.0]
-h, --help Print help
-V, --version Print version
示例
# 无记忆模式:
ag "你好,DeepSeek!"
# 开启记忆模式新对话:
ag new "你好,这是我们的第一次对话吗?"
# 开启记忆模式继续对话:
ag continue "请继续刚才的话题。"
开发
项目使用 Tokio 进行异步处理,使用 clap 解析命令行参数,并通过 Reqwest 调用 DeepSeek API。
你可以直接在 IDE 中打开项目,查看各模块文件:
- src/main.rs
– 主逻辑及参数解析
- src/history.rs
– 对话历史管理
- src/config.rs
– 配置读取
- src/models.rs
– 请求/响应数据结构
许可证
本项目遵循 MIT License。
联系方式
如有疑问或建议,请联系项目负责人或通过 issue 反馈。