关于 Ask m' AI
Ask m' AI 是一款可脚本化的桌面聊天应用,可连接多种大模型服务。它支持自定义工具,也能作为 MCP 服务运行。
主要功能
- 01连接多种大模型服务
- 02定义自定义和内置工具
- 03通过配置文件、环境变量或命令行配置
- 04在终端输出对话
- 05选择界面和代码主题
适用场景
- 01通过桌面界面与大模型聊天
- 02从终端脚本运行对话
- 03向大模型提供自定义工具
- 04向兼容 MCP 的应用提供工具
MCP 相关
可作为 MCP 服务运行,向其他应用提供内置及用户定义的工具。它也能连接配置的 MCP 服务,并让大模型使用其工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Ask m' AI
Ask m' AI(ask my ai -> ask m' ai)是一款面向大语言模型(例如 OpenAI 的 GPT)的轻量级桌面聊天应用。
与市面上的许多聊天应用不同,这款应用旨在支持脚本调用。 这意味着你可以在终端中调用它,并通过参数提供所有必要的选项。 对话内容也会输出到终端,因此你可以在脚本中使用它。

https://github.com/user-attachments/assets/a6d16332-55a1-4866-9f3e-31490a488935
快速入门
LocalAI
ask-mai -b localai --llm.localai.base-url=http://localhost:8080/v1 --llm.localai.model=gpt-4
OpenAI
ask-mai -b openai --llm.openai.api-key.plain=YOUR_OPENAI_API_KEY
Ollama
ask-mai -b ollama --llm.ollama.server-url=http://localhost:11434 --llm.ollama.model=llama3.2
Anthropic
ask-mai -b anthropic --llm.anthropic.api-key.plain=YOUR_ANTHROPIC_API_KEY
Mistral
ask-mai -b mistral --llm.mistral.api-key.plain=YOUR_MISTRAL_API_KEY --llm.mistral.model=mistral-small-latest
DeepSeek
ask-mai -b deepseek --llm.deepseek.api-key.plain=YOUR_DEEPSEEK_API_KEY
Google Gemini
ask-mai -b google --llm.google.api-key.plain=YOUR_GOOGLE_API_KEY
功能
- 支持不同的大模型提供商
- 工具支持
- 你可以定义自己的工具,供大模型调用
- 内置了一些工具:
- "getSystemInformation" - 获取系统信息
- "getEnvironment" - 读取系统环境变量
- "getSystemTime" - 获取当前系统时间
- "getStats" - 获取文件或目录的统计信息
- "changeMode" - 更改文件或目录的模式
- "changeOwner" - 更改文件或目录的所有者
- "changeTimes" - 更改文件或目录的访问时间和/或修改时间
- "createFile" - 在系统上创建文件
- "createTempFile" - 在系统上创建临时文件
- "appendFile" - 向现有文件追加内容
- "readTextFile" - 读取系统上的文本文件
- "deleteFile" - 删除文件
- "createDirectory" - 在系统上创建新目录
- "createTempDirectory" - 在系统上创建新的临时目录
- "deleteDirectory" - 删除目录
- "executeCommand" - 在系统上执行命令
- "callHttp" - 发起 HTTP 请求
- 作为 MCP 服务运行(见下文)
- 这样你就可以在其他支持 MCP 服务的应用中使用 ask-mai' 的工具(包括你自己的自定义工具)
- MCP 服务支持
- 你可以定义多个 MCP 服务,供大模型使用(目前仅支持工具)
- 支持脚本调用
- 所有设置均可通过以下方式设置:
- yaml 配置文件
- 环境变量
- 命令行参数
- 用户的问题和模型的回答会输出到终端
- 所有设置均可通过以下方式设置:
- 可自定义
- 可选择浅色或深色主题
- 可选择不同语言(英语、德语)
- 可选择不同的代码主题(所有可用主题请参阅帮助)
安装此应用
AUR(Arch Linux)
yay -S ask-mai
下载此应用
你可以从发布页面下载此应用的最新版本。 这里提供许多适用于不同操作系统、架构和功能集的版本。
文件名遵循以下格式:
ask-mai-${OS}-${ARCH}-${FEATURE}.${EXTENSION}
可用操作系统:
- darwin - MacOS
- linux - Linux
- windows - Windows
可用架构:
- amd64 - 64 位
- 386 - 32 位
- arm64 - ARM 64 位
可用功能:
- compressed - 二进制文件已压缩(可能会与某些杀毒软件不兼容,尤其是在 Windows 上)
- console - 二进制文件是控制台应用(仅适用于 Windows)
- debug - 二进制文件包含开发工具(你可以检查 GUI 源代码)
将此应用程序作为 MCP 服务启动
你可以将 ask-mai-mcp-server 作为第一个位置参数,以 MCP 服务模式启动此应用程序:
ask-mai ask-mai-mcp-server
或者,你可以将二进制文件重命名为 ask-mai-mcp-server,然后这样启动:
ask-mai-mcp-server
要将 MCP 服务作为可流式传输的 HTTP 服务运行,可以使用 -http-address 标志:
ask-mai ask-mai-mcp-server --http-address=":8080"
如何构建此应用程序
- 安装依赖项[参见 wails 文档]
- 构建应用程序:
wails build
如何自行构建并安装此应用程序(flatpak)
flatpak-builder .flatpak-build de.rainu.ask-mai.yml --repo=.flatpak-repo --install-deps-from=flathub --force-clean --default-branch=master --arch=x86_64 --ccache
flatpak build-bundle .flatpak-repo ask-mai.flatpak --runtime-repo=https://flathub.org/repo/flathub.flatpakrepo --arch=x86_64 de.rainu.ask-mai master
sudo flatpak install --reinstall ask-mai.flatpak
应用程序启动速度不够快
如果应用程序的启动速度无法满足你的需求,可以自行获取提示词,并使用 -ui-prompt 标志,在启动应用程序时指定该提示词。
以下是使用 rofi 的示例:
#!/bin/sh
PROMPT=$(rofi -dmenu -p "Ask-mAI" -l 0 -location 2)
if [ $? -ne 0 ]; then
exit 1
fi
ask-mai -ui-prompt "${PROMPT}"
参与贡献
如果你使用 nix,可以使用 nix develop 进入包含所有贡献所需依赖项的 shell。该 flake 还使用 treefmt 格式化所有 *.nix 和 *.go 文件。你可以通过 nix fmt 执行格式化,并通过 nix flake check 检查。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。