From e2bfb8dcf8669a2873f290f9039a9dcd379744a2 Mon Sep 17 00:00:00 2001 From: gitee-bot Date: Tue, 12 Aug 2025 10:51:56 +0000 Subject: [PATCH] Update README.md --- README.md | 388 +++++++++++++++++++++++------------------------------- 1 file changed, 162 insertions(+), 226 deletions(-) diff --git a/README.md b/README.md index b494db1..e9ee757 100644 --- a/README.md +++ b/README.md @@ -1,266 +1,202 @@ + + +# MOSS - 安卓终端AI助手 + ![预览](1.jpeg) -
-
-# 安装 -文件管理器使用:[MT管理器](https://mt2.cn/download/) -- QQ群:768464439 -UEG -安卓QQ群下载的文件路径:`/storage/emulated/0/Android/data/com.tencent.mobileqq/Tencent/QQfile_recv/` +MOSS 是一款运行在安卓终端的 AI 对话助手,集成了多个主流 AI 平台,支持语音交互、角色设定、自动回复等高级功能。它可以帮助你快速打造专属的智能机器人,适用于群聊、自动化任务等场景。 + +--- + +## 📦 安装说明 + +推荐使用 [MT管理器](https://mt2.cn/download/) 进行安装操作。 + +### 下载地址 + +- [蓝奏云下载](https://ycww.lanzn.com/b00wmittna) 密码:`550W` +- [Gitee下载](https://gitee.com/heigxaon/moss-android-terminal/archive/refs/tags/MOSS.zip) +- [GitHub下载](https://github.com/Heigxaon/MOSS_terminal/archive/refs/tags/MOSS.zip) + +### 合并文件(如需) + +如果你下载的是多个 `MOSS.tar.gz` 分卷文件: + +1. 在 MT管理器 中 **批量选中** 所有分卷文件; +2. **长按 - 工具 - 文件合并**; +3. 合并后改名为 `MOSS.tar.gz`。 + +### 安装步骤 + +1. 将合并后的 `MOSS.tar.gz` 移动到 `/storage/emulated/0/Documents/`,**无需解压**; +2. 安装所需软件: + - [Termux](https://github.com/termux/termux-app/releases)(必需) + - [Termux:API](https://github.com/termux/termux-api/releases)(必需) + - [Termux:Widget](https://github.com/termux/termux-widget/releases)(可选) + - [Autox.js](https://github.com/aiselp/AutoX/releases)(可选,用于QQ自动回复) +3. 在 Termux 中开启权限: + ``` + yes | termux-setup-storage && ln -sfn /sdcard/Documents ~/storage/documents + ``` +4. 安装 MOSS: + ``` + cd ~/storage/documents && tar -zxvf MOSS.tar.gz -C . && bash MOSS/setup.sh || exit + ``` -- [蓝奏云下载](https://ycww.lanzn.com/b00wmittna) 密码:`550W` +> 若出现权限弹窗,请授予 Termux 管理所有文件的权限。 -- [Gitee下载](https://gitee.com/heigxaon/moss-android-terminal/archive/refs/tags/MOSS.zip) +--- -- [GitHub下载](https://github.com/Heigxaon/MOSS_terminal/archive/refs/tags/MOSS.zip) +## 🚀 基础用法 -> 如果有4个`MOSS.tar.gz`包,需要合并 -在MT管理器 **批量选中** 这4个文件, **长按 - 工具 - 文件合并** ,将合并后的文件改名为`MOSS.tar.gz` -1. 将`MOSS.tar.gz`文件移动到`/storage/emulated/0/Documents/`里, **无需解压** -(如果`/storage/emulated/0/`里没有`Documents`文件夹,需要手动创建) +- 使用内置模型(如 DeepSeek、硅基流动、火山引擎、月之暗面)直接对话; +- 设置 APIkey:`!api`; +- 切换模型:`!model` 或 `!mod`(需配置对应平台 APIkey); +- 多行输入开关:`!ml`; +- 查看配置状态:`!cfg`; +- 修改用户名:`!name xxx`; +- 启用语音朗读:`!speech`; +- 退出程序:`!q` 或 `!rst` 重启; +- 更多指令:`!help` 或 `!cmd`。 -2. 所需软件 - **[Termux](https://github.com/termux/termux-app/releases)** (必需) - **[Termux:API](https://github.com/termux/termux-api/releases)** (必需) -[Termux:Widget](https://github.com/termux/termux-widget/releases) (可选,用于创建桌面小部件) -[Autox.js](https://github.com/aiselp/AutoX/releases) (可选,用于消息自动回复) +--- -3. 开启Termux的所有权限,电池策略设为 **无限制** -开启Termux:API的 **自启动** 权限 -创建Termux:Widget的桌面小部件(若需要) +## ⚙️ AI 设置 -4. 用Termux执行: -`yes | termux-setup-storage && ln -sfn /sdcard/Documents ~/storage/documents && echo -n "▷ 回车继续" && read -n 1 && cd ~/storage/documents && tar -zxvf MOSS.tar.gz -C . && bash MOSS/setup.sh || exit` -若出现弹窗,请同意 **授予管理所有文件的权限** -
-
-# 基础用法 -内置 **DeepSeek、硅基流动、火山引擎、月之暗面** 四大平台,内置一个APIkey可直接进行对话 -若自己有APIkey,可使用指令`!api`进行设置 -`!model`可以切换其它Deepseek模型, -> `!mod`可以切换其它AI模型,包括但不限于DeepSeek(需配置硅基流动APIkey) +你可以通过指令对 AI 行为进行深度定制: -
+- **系统提示词**:`!sys 你的设定` +- **风格设定**:`!style 你的风格` +- **记忆长度**:`!mem 2`(保留最近 2 条对话) +- **温度**:`!temp 0.7`(决定输出随机性) +- **频率惩罚**:`!fp 0.5`(避免重复输出) +- **最大 Token 数**:`!token 4096` +- **添加角色**: + - `!add xxx`(手动输入角色说明) + - `!add xxx yyy`(直接指定角色名和说明) +- **载入角色**:`!role xxx` +- **删除角色**:`!del xxx` +- **清除记忆**:`!res` +- **恢复初始状态**:`!!res` -多行输入开关:`!ml`,默认关闭,无法换行,回车直接发送。开启后`回车=换行`,`双回车=发送` -使用`!help`列出所有功能指令 -指令多以感叹号`!`开头,严格规范拼写、大小写,使用`!cmd`可以打开指令列表,一键使用 -部分指令需要指定参数,如:`!name`的功能是 **修改用户名** ,`!name xxx`即可改名为xxx,指令和参数之间用一个 **空格** 分隔 -如果单独使用`!name`不指定参数,则会弹出对话框可供参数输入 +你也可以通过在 `Document/MOSS` 目录下创建 `prompt_xxx` 文件来添加角色。 -使用指令`!speech`可以开/关语音朗读 - -使用`!cfg`可查看你的参数设定状态 +--- -每次对话的分割线右端的数字分别是本次API对话请求的 **耗费 | APIkey余额 | 输入token数 | 输出token数** -> API耗费和token数成正比,token数=词数 -上下文记忆累积越多 → 分析字数越多 → 分析词数越多 → 消耗token越高 → 耗费越高 - -
- -具体计费规则请查看:[DeepSeek开放平台](https://api-docs.deepseek.com/zh-cn/quick_start/pricing/) - - **语音输入** -发送一个冒号`:`,会弹出语音识别框,然后你可开始讲话 -部分指令支持语音或文字触发,比如说出: -> 设置语速、修改风格、打电话给...、拍照、... - -
- -退出请使用指令`!q`,或按下面的 **EXIT** 键之后回车退出,或直接清掉后台,普通返回无法退出 -输入指令`!rst`可以重新启动 -
-
-# AI设置 - **支持API参数设置** -> 包括 **系统提示词、风格、上下文记忆量、最大token、思维离散度...** - -
- - **系统提示词** -指令 :`!sys` -相当于把角色设定写入AI底层,属于硬设定,不属于对话,无法遗忘,不同于手动发送对话来设定角色模拟 -> !sys 你是一个真实的QQ群成员,说话要像真人,别用太标准的语法,平均字数不超过30。根据聊天记录10%偶尔@别人,可以主动聊天不限于回答当前用户。不要'啊、哈、呢'之类的语气词和状态描述。 - -
- - **风格** -指令:`!style` -相当于在系统提示词的基础上加一条小备注 -> !style 极度粗俗 -!style 字数不超过50 - -
- - **记忆** -指令:`!mem` -可设置上下文记忆消息条数,`!mem 2`只记得最近2次对话记录,其它的会丢失 - - **温度** -指令:`!temp` -温度采样,可设置模型的输出严谨度,更高的值会使输出更随机,更低的值会使其更加集中和确定 - - **frequency_penalty** -指令:`!fp` -作为调节采样温度'!temp'的替代方案,模型会考虑前n概率的token的结果,降低模型重复相同内容的可能性。默认为中间值,与`!temp`只需设置其中一个 - - **最大token数** -指令:`!token` -可设置最大token数,影响输出长度 -如果AI回复内容中途截断,可加大token数,如: `!token 4096` - - **添加角色** -指令:`!add xxx` -可添加一个名为 **xxx** 的角色,然后会弹出输入框,你可填写其系统提示词(角色说明) -或`!add xxx yyy`直接填写 **角色名** 和 **角色说明** ,无需输入框 -> !add MOSS 你是流浪地球里的MOSS,请用MOSS的风格进行对话,不超过50字。 - -
- - **添加角色 方法2** -如果角色说明太长,不方便手动指令添加 -在`Document/MOSS`目录创建`prompt_xxx`文件,`prompt_`是固定的,`xxx`是你的角色名,如`prompt_猫娘` -然后用文本编辑器打开,写入它的角色扮演说明保存即可 - - **载入角色** -指令:`!role` -可直接载入你添加过的角色,不用每次使用`!sys`来进行设定 -或`!role xxx`直接填写 **角色名** -> !role MOSS - -
- - **删除角色** -指令:`!del` -可删除你添加过的角色 -或`!del xxx`直接填写 **角色名** 进行删除 -> !del MOSS - -
- - **清除记忆** -指令:`!res` -可以清除AI的上下文对话记忆,仅清除对话记录不清除角色和风格设定 - - **初始化** -指令:`!!res` -清除对话记忆和角色设定,恢复到原始空白AI -
-
-# 快捷按键 -
-在 **Termux** 界面,音量键功能是`Ctrl`和`Alt`, **下拉通知栏或切换应用之后才能用按键控制音量** -以下的 **`↑`** 符号表示 **上滑** 操作 - -`音量加`+`q` **显示/收起** 快捷键面板 -`音量加`+`v` **显示/收起** 音量条 -`MOSS` 启动MOSS -`EXIT` 退出 -`EXIT`↑ 强制终止程序 -`≡` 打开左侧任务栏 -`≡`↑ 粘贴 -`⌫` 删除 -`⌫`↑ 删除整行 -`●` 回车 -`●`↑ **禁用/激活** 键盘 -`◀ ▶` 移动光标 -`◀ ▶`↑ 移动光标到 **行首/行末** -`▲ ▼` 翻找历史输入 -`< >`↑ 切换 **上一个/下一个** 终端窗口 -`NEW` 新建终端窗口 -`NEW`↑ 重命名终端窗口 -
-
-# 接入QQ机器人 -1. 下载 [Autox.js](https://github.com/aiselp/AutoX/releases) -2. 打开Autox.js应用,左上角,开启权限:**无障碍服务** 、**通知读取权限**、**前台服务**、**悬浮窗**、**后台弹出界面**、**允许通知** -3. 开启你要接入的应用的消息 **通知权限** (比如QQ,一定确保它的后台消息内容能在通知栏显示) -4. 使用指令`!pre`修改AI回复的前缀内容,默认是 **@MOSS** ,只有以 **@MOSS** 开头的消息才会被回复,你可以改成自己的,比如使用`!pre /`,就会回复以`/`开头的消息 -5. 使用`!name auto`即可切换为自动回复模式,然后用Autox.js运行`消息自动化`脚本 - -`[音量减]键`只是 **暂停/恢复** ,并不是关闭/重启 -`[音量加]键`是 **显示/隐藏** 日志,默认关闭 -⚠️如果要重新启动"消息自动化", **先点击悬浮按钮里的 **╳** 来结束上一个** ,否则会导致两个 **叠加运行** -⚠️ **_重新启动脚本之前先手动关掉之前的(清理后台没用)_** - - **手机息屏状态下也可以自动亮屏回复** -> 前提: -取消手机锁,亮屏上滑能够直接进入 -关闭省电模式(否则消息接收可能延迟) -打开QQ的锁屏通知、电池策略设为后台无限制 -在Autox.js打开'前台服务'开关 -关闭防误触(可选,否则手机在口袋的情况无法操作) -(关于后台、锁屏通知的都打开,包括Autox.js、QQ、Termux,不被电池优化) - - **隐藏用法** -> 使用`!app`可切换其它应用,如果是QQ则不限前台和后台消息 -QQ获取前台消息原理是:捕获当前界面的最后一条消息,所以滚动屏幕会让"最后一条"发生变化 -会忽略屏幕右侧自己的消息,除非以`$`开头(自己的消息以`$`开头仍然可以被处理) -其它应用仅限后台消息,所以不要让聊天应用显示在前台(因为会导致消息不进通知栏从而无法接收) -`!speech`的原始功能是语音开关,`!stream`的原始功能是流式输出开关,它们在自动回复模式下还有其他功能: -`!speech`设为关闭可以让回复不@对方,否则AI回复会@对方 -当`!pre`前缀为空的时候会回复所有消息,此时把`!stream`设为关闭就只回复`固定回复.json`里的规则 -
-
-# 固定回复规则 - **此功能可用于设置QQ机器人的固定回复** -配置文件是`固定回复.json`,参照其中的模板进行编辑 -格式是: -`"条件": ["回复内容"]` -当消息满足你设的 **条件** ,则回复你设的 **固定内容** ,条件的灵活性极强,具体见`固定回复.json` - -#### 包含匹配 +## 🎮 快捷按键(Termux 环境) + +Termux 支持使用音量键模拟 `Ctrl` 和 `Alt`,以下是一些常用快捷键: + +| 操作 | 快捷键 | 功能 | +|------|--------|------| +| 显示快捷键面板 | 音量加 + q | 切换显示/收起 | +| 显示音量条 | 音量加 + v | 切换显示/收起 | +| 启动 MOSS | ≡ | 打开左侧任务栏 | +| 退出 | EXIT | 退出程序 | +| 强制终止 | EXIT ↑ | 终止程序 | +| 粘贴 | ≡ ↑ | 粘贴文本 | +| 删除 | ⌫ | 删除一个字符 | +| 删除整行 | ⌫ ↑ | 删除当前整行 | +| 回车 | ● | 发送输入内容 | +| 禁用/激活键盘 | ● ↑ | 控制键盘输入 | +| 移动光标 | ◀/▶ | 左右移动光标 | +| 移动到行首/行末 | ◀ ↑ / ▶ ↑ | 快速定位 | +| 查看历史输入 | ▲/▼ | 上下翻阅历史命令 | +| 切换终端窗口 | < > ↑ | 切换上一个/下一个窗口 | +| 新建终端窗口 | NEW | 打开新窗口 | +| 重命名窗口 | NEW ↑ | 重命名当前窗口 | + +--- + +## 🤖 接入 QQ 机器人 + +1. 下载并安装 [Autox.js](https://github.com/aiselp/AutoX/releases); +2. 开启权限:无障碍服务、通知读取、前台服务、悬浮窗等; +3. 确保 QQ 消息可以在通知栏显示; +4. 设置回复前缀:`!pre @MOSS`; +5. 进入自动回复模式:`!name auto`; +6. 在 Autox.js 中运行 `消息自动化` 脚本。 + +> ⚠️ 每次重启脚本前,请点击悬浮窗按钮 ×,结束上一个运行实例。 + +### 手机息屏自动回复设置 + +- 取消手机锁屏密码; +- 确保亮屏后可直接进入聊天界面; +- 关闭省电模式; +- 开启 QQ、Termux、Autox.js 的前台服务和电池策略为“无限制”; +- 关闭防误触功能(可选)。 + +--- + +## 📝 固定回复规则 + +MOSS 支持通过 `固定回复.json` 设置规则式自动回复。配置格式如下: + +### 匹配方式 + +#### 包含匹配 ```json { - "...XXX...": [ - "AAA" - ], + "...XXX...": ["AAA"] } ``` -消息只要包含"XXX"则回复"AAA" +消息中包含 `XXX` 时回复 `AAA`。 -#### 首尾匹配 +#### 首尾匹配 ```json { - "XXX...YYY": [ - "AAA" - ], + "XXX...YYY": ["AAA"] } ``` -消息以"XXX"开头且以"YYY"结尾则回复"AAA" +消息以 `XXX` 开头,以 `YYY` 结尾时回复 `AAA`。 -#### 开头匹配 +#### 开头匹配 ```json { - "XXX...": [ - "AAA" - ], + "XXX...": ["AAA"] } ``` -消息只要以"XXX"开头则回复"AAA" +消息以 `XXX` 开头时回复 `AAA`。 -#### 结尾匹配 +#### 结尾匹配 ```json { - "...XXX": [ - "AAA" - ], + "...XXX": ["AAA"] } ``` -- 消息只要以"XXX"结尾则回复"AAA" +消息以 `XXX` 结尾时回复 `AAA`。 -#### 相似度匹配 +#### 相似度匹配 ```json { - "XXX>=p": [ - "AAA" - ], + "XXX>=0.7": ["AAA"] } ``` -- 消息与"XXX"的吻合度达到p则回复"AAA" -**注意** -`>=`是固定符号 -p是0~1的小数,p越小匹配越灵敏 +消息与 `XXX` 的相似度达到 `0.7` 时回复 `AAA`。 + +> ⚠️ `>=` 是固定符号,数值范围是 `0` 到 `1`,数值越小匹配越灵敏。 + +--- +## 📌 隐藏用法 + +- 使用 `!app` 可切换当前监听的应用; +- 在自动回复模式中,`!speech` 控制是否在回复中 @ 发送者; +- `!stream` 控制是否启用智能回复,关闭时只使用 `固定回复.json` 中的规则。 + +--- + +## 📚 参考文档 + +- [DeepSeek 开放平台计费规则](https://api-docs.deepseek.com/zh-cn/quick_start/pricing/) + +--- + +如需更多帮助,请加入我们的交流群: +UEG +QQ群号:768464439 +--- +> 本项目为开源项目,欢迎贡献代码和反馈问题。 \ No newline at end of file -- Gitee