Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
96 commits
Select commit Hold shift + click to select a range
68c5b92
添加 ImageUtil 工具类,支持图像读取、裁剪、高斯模糊和马赛克处理;更新 QQApi 和 RankGuessCommandHand…
ZayrexDev Sep 17, 2026
2a225b6
优化 ReplyFactory 中的好友状态回复格式,增强信息呈现
ZayrexDev Sep 17, 2026
2e8e49d
优化 ReplyFactory 中的好友状态回复格式,增强信息呈现
ZayrexDev Sep 17, 2026
9505cd3
优化 Round 和 SocialCommandHandler 中的头像处理逻辑,增强用户信息展示
ZayrexDev Sep 17, 2026
d059ec8
优化 ReplyFactory 中的粉丝数量计算逻辑,确保不出现负值
ZayrexDev Sep 17, 2026
405f01a
优化 SocialCommandHandler 中的用户引用解析逻辑,增强好友状态信息展示
ZayrexDev Sep 17, 2026
390aca8
优化 SocialCommandHandler 中的头像处理逻辑,简化代码并增强用户信息展示
ZayrexDev Sep 17, 2026
2082ac7
优化 SocialCommandHandler 中的用户身份判断逻辑,增强用户交互体验
ZayrexDev Sep 17, 2026
52017b7
优化 BeatmapPreview 任务创建逻辑,支持时间范围参数并简化代码
ZayrexDev Sep 18, 2026
4325273
优化 ConsoleCommandProcessor,新增 group 子命令以获取群组信息和状态
ZayrexDev Sep 18, 2026
a149ceb
优化 ScoreCommandHandler,重构 parseScoreListRange 方法并增强处理逻辑
ZayrexDev Sep 18, 2026
bcfedd2
优化 ScoreFilterArguments,增强字段支持和简化代码逻辑
ZayrexDev Sep 19, 2026
8d49e8a
优化 ScoreFilterArguments
ZayrexDev Sep 19, 2026
fb0e6df
优化 TaskCoordinator,新增请求超时处理逻辑并简化请求计时功能
ZayrexDev Sep 19, 2026
dd3c968
优化 Context 和 TaskCoordinator,新增对 Markdown 格式的支持以增强消息发送功能
ZayrexDev Sep 19, 2026
6827df8
重构解析逻辑,移除 RscTarget 类并优化 TargetResolution 结构
ZayrexDev Sep 19, 2026
b8d96aa
新增对 /sm 命令的支持,优化成绩处理逻辑
ZayrexDev Sep 19, 2026
089c325
重构解析逻辑,移除 UserRef、UserRefResolution、TargetResolution 和 ShortcutTarget…
ZayrexDev Sep 19, 2026
a4e37bb
优化缓存命令,新增对 beatmap-json 和 beatmapset-json 类型的支持
ZayrexDev Sep 20, 2026
a0e8549
新增对服务令牌的支持,优化 API 请求构建逻辑
ZayrexDev Sep 20, 2026
ee19b1a
优化请求处理逻辑,新增超时通知选项
ZayrexDev Sep 20, 2026
ec81ae4
新增 AI 聊天功能,重构相关服务与权限管理
ZayrexDev Sep 20, 2026
83a28a7
更新版本号至 1.12.4
ZayrexDev Sep 20, 2026
aac6e3f
更新版本号至 1.12.4
ZayrexDev Sep 20, 2026
5b5b7de
更新版本号至 1.12.4
ZayrexDev Sep 20, 2026
be6bdf1
新增清除群组和用户状态的方法,更新版本号至 1.12.5
ZayrexDev Sep 20, 2026
34a59d4
新增清除群组和用户状态的方法,更新版本号至 1.12.5
ZayrexDev Sep 20, 2026
8f17b1e
新增获取活动群组ID的方法,并在通知中包含代理服务群组
ZayrexDev Sep 20, 2026
fd5baba
更新权限不足提示信息,说明功能测试阶段及联系管理员使用方式
ZayrexDev Sep 20, 2026
fc047e3
新增记录消息历史的方法,优化状态管理逻辑
ZayrexDev Sep 21, 2026
e38e7c7
优化消息记录逻辑,新增恢复和清理历史消息的方法
ZayrexDev Sep 21, 2026
df64172
优化 AgentService 中的消息恢复逻辑,移除冗余注释并简化代码
ZayrexDev Sep 21, 2026
222e615
优化 AgentService 中的消息恢复逻辑,移除冗余注释并简化代码
ZayrexDev Sep 21, 2026
047e812
优化 AgentService 和 AiChatHandler 中的消息处理逻辑,记录历史消息并简化输入格式
ZayrexDev Sep 21, 2026
fbd782c
优化 AgentService 和 Router 中的消息处理逻辑,更新版本号并移除冗余代码
ZayrexDev Sep 21, 2026
6698ed0
优化 ReplayCommandHandler 和 TaskCoordinator 中的请求处理逻辑,新增超时通知功能并简化代码
ZayrexDev Sep 21, 2026
98e1136
优化 AgentService 和 AiChatHandler 中的消息处理逻辑,新增流式处理功能并简化代码
ZayrexDev Sep 22, 2026
eab1dcf
优化消息处理逻辑,重构 CommandReplyChannel 为 ReplyChannel,新增消息引用功能并简化代码
ZayrexDev Sep 22, 2026
a33e2ce
优化 ReplyFactory 中的消息格式,新增 Markdown 样式以增强可读性
ZayrexDev Sep 22, 2026
14172c5
优化 AgentService 和 Router 中的消息格式,新增消息记录功能以增强历史记录管理
ZayrexDev Sep 22, 2026
2942779
优化 AiChatHandler 和 Resolver 中的消息处理逻辑,新增群组提及历史功能以增强消息管理
ZayrexDev Sep 22, 2026
974aad8
优化消息发送逻辑,新增消息记录功能以增强消息管理
ZayrexDev Sep 22, 2026
a9be5a9
优化 AiChatHandler 和 Router 中的消息处理逻辑,新增附件支持以增强消息记录功能
ZayrexDev Sep 22, 2026
3c1f63c
优化 Resolver 中的消息处理逻辑,新增对数字加号格式的支持以增强命令识别
ZayrexDev Sep 22, 2026
69736fe
优化 Resolver 中的消息处理逻辑,新增对数字加号格式的支持以增强命令识别
ZayrexDev Sep 22, 2026
5c8ba83
重构多人房间监视相关类,统一命名为 MPNotifier、MPVersion 和 MPWatchService,优化消息处理逻辑
ZayrexDev Sep 22, 2026
f2ddd2f
重命名 MultiplayerRoomWatchCommandHandler 为 MPWatchCommandHandler,更新相关引用…
ZayrexDev Sep 22, 2026
9c0aa55
优化 MPNotifier 和 MPWatchCommandHandler 中的消息格式,调整房间监视信息的显示方式
ZayrexDev Sep 22, 2026
d80cd75
优化 MPWatchCommandHandler 和 MPWatchService 中的房间监视逻辑,简化版本处理和异常捕获
ZayrexDev Sep 22, 2026
f628828
重命名 APIHelper 为 ApiHelper,更新相关引用,新增 RomAIApi 和 RomAIMatch 类以支持 RomAI …
ZayrexDev Sep 22, 2026
295b274
优化 RomAIApi 中的 HTTP 客户端配置,添加代理支持以适应 DiscordProxyConfig
ZayrexDev Sep 22, 2026
055bad1
修复 ReplyChannel 中的 sendProactive 方法调用,确保正确使用方法名
ZayrexDev Sep 22, 2026
4bdbbc5
优化 Round 类中的图像处理逻辑,调整马赛克和模糊效果的参数
ZayrexDev Sep 22, 2026
39ca53e
优化 MPWatchCommandHandler 中的用户查找逻辑,使用更准确的方法获取用户信息
ZayrexDev Sep 22, 2026
5dbb378
优化 MPWatchCommandHandler 中的消息格式,改进团队信息的显示方式
ZayrexDev Sep 22, 2026
e711e4a
优化 MPWatchCommandHandler 中的消息格式,改进团队信息的显示方式
ZayrexDev Sep 22, 2026
4848ca5
优化 MPWatchCommandHandler 中的消息格式,改进比赛信息的显示方式;更新 WatchCommandHandler 的用法说明
ZayrexDev Sep 22, 2026
314880f
优化 AiChatHandler 中的历史记录记录逻辑,增加对空内容的处理
ZayrexDev Sep 22, 2026
9165706
优化 TargetInput 中的玩家分数匹配逻辑,增加对 "rbp" 的处理并更新错误提示信息
ZayrexDev Sep 23, 2026
e9b099e
优化 Resolver 中的内容清理逻辑,增加对特定字符的替换处理;更新 ScoreFilterArguments 的过滤模式
ZayrexDev Sep 23, 2026
37044bc
优化 Resolver 中的命令模式,增加对 "rbp" 的支持
ZayrexDev Sep 23, 2026
f29d3d0
优化 AgentService 中的历史记录记录逻辑,增加对消息内容的缩短处理
ZayrexDev Sep 23, 2026
27ff6b1
优化 MPWatchCommandHandler 和 MPWatchService,增加对自定义 BO 参数的支持
ZayrexDev Sep 23, 2026
a26a2d7
优化 MPWatchCommandHandler,更新对方不在打 RomAI 的回复信息,增加用户名提示
ZayrexDev Sep 23, 2026
f168c78
优化 Resolver 和 Router,增加对 "rbp" 命令的支持;更新 README 文档以反映新命令
ZayrexDev Sep 23, 2026
820e80f
优化 MPWatchApi 和 MPWatchService,增加对自定义 BO 参数的支持
ZayrexDev Sep 23, 2026
0b69c8e
优化 MPWatchApi 和 MPWatchService,增加对自定义 BO 参数的支持
ZayrexDev Sep 23, 2026
c404b7c
优化 MPWatchApi 和 MPWatchService,增加对自定义 BO 参数的支持
ZayrexDev Sep 23, 2026
e062151
优化 SocialCommandHandler,修复用户提及格式化问题
ZayrexDev Sep 23, 2026
57d9e7c
添加骰子功能,支持骰子表达式解析和掷骰结果处理
ZayrexDev Sep 23, 2026
5c16a4a
优化 AgentService 和 AiChatHandler,重构对话创建和更新逻辑,增加清除对话功能
ZayrexDev Sep 25, 2026
a33c3a8
添加 AsteroidConfig 和 AsteroidApi,支持 Minecraft 服务器状态查询功能
ZayrexDev Sep 27, 2026
209efad
添加 /mc 命令,支持获取指定 Minecraft 服务器状态
ZayrexDev Sep 27, 2026
6d012ac
添加 /@ 命令,支持获取自己或指定用户的文字版信息
ZayrexDev Sep 27, 2026
97e6009
优化 AgentService 和 AiChatHandler,重构消息处理逻辑,支持引用内容和附件处理
ZayrexDev Sep 27, 2026
801a9dd
优化 ApiUtil,增加 requireResultArray 方法以确保响应数据为结果数组;优化 AiChatHandler,过滤无效…
ZayrexDev Sep 27, 2026
aa1ffde
更新版本号至 1.12.12
ZayrexDev Sep 27, 2026
399fd80
添加停止对话功能,支持通过命令停止当前AI对话;优化消息处理逻辑,增强状态管理
ZayrexDev Sep 28, 2026
7417539
优化状态报告,增加在线工作者状态提示,提升可读性
ZayrexDev Sep 28, 2026
971cf57
优化状态报告,增加在线工作者状态提示,提升可读性
ZayrexDev Sep 28, 2026
506103a
优化 AiChatHandler,调整权限检查逻辑,确保只有管理员可以使用特定命令
ZayrexDev Sep 28, 2026
181591d
优化社交命令处理,更新用户主页链接格式,增强可读性
ZayrexDev Sep 28, 2026
9b1be31
优化社交命令处理,更新用户主页链接文本,增强可读性
ZayrexDev Sep 28, 2026
9d5cfc3
优化消息发送,支持私聊和群聊的Markdown格式,提升消息表现力
ZayrexDev Sep 28, 2026
ac4a63b
优化 AiChatHandler,增强错误提示信息,提供重置会话的建议
ZayrexDev Sep 28, 2026
ec78bdd
优化 AgentService 处理逻辑
ZayrexDev Sep 28, 2026
4a37104
优化 AsteroidApi,添加服务器状态检查功能并增强日志记录
ZayrexDev Sep 28, 2026
830ddf3
优化import
ZayrexDev Sep 28, 2026
13a178f
修复 AsteroidApi 中的服务器状态检查逻辑
ZayrexDev Sep 28, 2026
36671cc
重构 AiChatHandler,替换 AgentService 为 ChatProvider,增强代码可读性
ZayrexDev Sep 28, 2026
ba74366
优化权限配置链接,使用常量替代硬编码,增强代码可维护性
ZayrexDev Sep 28, 2026
ca6a6e4
Update CHANNEL URL in ExternalUrls class
ZayrexDev Sep 28, 2026
9ea6378
增强服务器地址验证,优化错误提示信息,改善代码可读性
ZayrexDev Sep 29, 2026
ebc91d0
重构 AiChatHandler 和 AiPermission,优化权限管理逻辑,增强代码可读性和可维护性
ZayrexDev Sep 29, 2026
8b2885d
更新版本至1.13.0
ZayrexDev Sep 29, 2026
45b32ec
重构 AsteroidApi 和 ReplyFactory,优化服务器状态获取逻辑,增强代码可读性
ZayrexDev Sep 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 17 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会
| `/sa` | `/sa <id/locId/rsN/bpN>` | 获取指定成绩分析图 |
| `/ma` | `/ma [id/locId/rsN/bpN] [n/#n]` | 获取指定或最近目标成绩的Miss分析;省略目标时用`#n`指定Miss |
| `/u` | `/u [uid/username/@user]` | 获取指定用户信息 |
| `/@` | `/@[someone]` | 获取自己或指定用户的文字版信息 |
| `/r` | `/r [id/locId/rsN/bpN] [[mm:ss]-[mm:ss]]` | 生成并发送指定或最近目标的回放视频。省略范围时自动识别高光,使用`-`渲染整个回放 |
| `/rg` | `/rg <start/group/#Rank/end/wish/stats [all]/lb [all]>` | 猜 Rank 游戏及个人战绩查询 |
| `/rsc` | `/rsc [id/locId/rsN/bpN] [+<id1>,<id2>...]` | 生成并发送指定或最近目标的成绩同屏回放视频;追加用户和范围顺序不限 |
Expand All @@ -94,10 +95,15 @@ Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会
| `/sms` | `/sms <query>` | 搜索谱面集 |
| `/lb` | `/lb [id] [<uid1>,<uid2>...]` | 列出指定谱面排行或表现分排行 |
| `/daily` | `/daily` | 每日挑战信息 |
| `/roll` | `/roll [dice]` | 掷骰子 |
| `/luck` | `/luck` | 今日人品 |
| `/rbp` | `/rbp [uid/username/@user]` | 获取随机BP |
| `/mp` | `/mp` | 多人房间列表 |
| `/watch` | `/watch add/del/list [目标]` | 添加/删除/列出监视任务 |
| `/mpwatch` | `/mpwatch start/stop/status [目标]` | 按群成员添加、停止或查看多人房间监视;`stop all` 可停止本群全部监视 |
| `/romai` | `/romai [目标]` | 开始监视自己或目标正在进行的RomAI比赛 |
| `/mc` | `/mc <服务器地址>` | 获取指定MC服务器状态 |
| `/ai` | `/ai [on/off/reset/reset all]` | 开启/关闭/重置本群的AI对话 |
| `/wx` | `/wx start <UID列表> <谱面ID列表>` / `/wx stop` | 监视指定玩家在指定谱面取得的成绩,重启后自动恢复 |
| `/dcs` | `/dcs start <guild-id>.<channel-id>` / `/dcs stop` | 开启或解除当前 QQ 群与 Discord 频道的双向消息同步 |
| `/stat` | `/stat` | 服务状态和统计信息文本 |
Expand All @@ -108,17 +114,21 @@ Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会

`/r`和`/rsc`(回放渲染)会先返回“生成请求正在等待中,队列位置:N”,随后返回请求状态,最后在渲染完成后再发送回放视频。

上传 osu! 服务器上不存在的 `.osr` 回放后,机器人会返回形如 `loc123456789` 的本地成绩ID;该ID可用于 `/s`、`/sa`、`/ma`、`/r`、`/rsc` 等成绩目标指令。
上传 osu! 服务器上不存在的 `.osr` 回放后,机器人会返回形如 `loc123456789` 的本地成绩ID;该ID可用于 `/s`、`/sa`、`/ma`、`/r`、
`/rsc` 等成绩目标指令。

### 快捷查询

对于一些需要指定谱面ID或成绩ID的指令(如 `/m`、`/s`、`/ms` 等),支持快捷查询写法,格式为 `rs5`、`bp3`、`rp2`。

快捷查询也可以直接作为指令使用,并在后面指定玩家,例如 `/bp5 @用户`;紧凑写法同样支持列表范围,例如 `/bp21-30`、`/rp6-10 @用户`。
快捷查询也可以直接作为指令使用,并在后面指定玩家,例如 `/bp5 @用户`;紧凑写法同样支持列表范围,例如 `/bp21-30`、
`/rp6-10 @用户`。

这些指令会共享最近一次显式指定的查询目标。已有最近目标时,`/r`、`/rsc`、`/ma` 可以省略目标,例如 `/r 01:00-01:30`、`/rsc +12345,67890 -`、`/ma #2`。
这些指令会共享最近一次显式指定的查询目标。已有最近目标时,`/r`、`/rsc`、`/ma` 可以省略目标,例如 `/r 01:00-01:30`、
`/rsc +12345,67890 -`、`/ma #2`。

也可以在前面写上玩家ID、用户名或@用户,例如 `123456 rs5`、`peppy bp3`、`@ABC bp3`,表示查询指定玩家的最近成绩第 5 条或最好成绩第 3 条。
也可以在前面写上玩家ID、用户名或@用户,例如 `123456 rs5`、`peppy bp3`、`@ABC bp3`,表示查询指定玩家的最近成绩第 5 条或最好成绩第
3 条。

- `rs5`:使用你已绑定的玩家ID,查询“最近成绩第 5 条”
- `rp1`:使用你已绑定的玩家ID,查询“最近通过成绩第 1 条”
Expand All @@ -129,8 +139,6 @@ Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会

省略玩家目标时,使用快捷查询前需要先执行 `/bind`,否则会提示无法使用快捷查询。

> 由于QQ业务调整,暂时无法使用`@用户`查询绑定信息,请改用直接输入uid的方式。

### 回放上传

你可以在私聊中直接发送你的回放文件,Seira会将其转存。
Expand All @@ -139,11 +147,11 @@ Seira正在活跃开发中,在使用的过程中可能会有一些Bug,也会
## 调试命令

> [!WARNING]
>
>
> **警告:危险区域!**
>
>
> 以下命令仅用于调试,使用不当可能会造成数据丢失、账号封禁等后果,且仅在调试模式启用且发送者为bpt管理员的情况下可用。
>
>
> 这些指令可能会随时进行添加、修改或删除,且不保证向后兼容。

| 命令 | 结果 |
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.github.BotSeira</groupId>
<artifactId>SeiraCore</artifactId>
<version>1.12.0</version>
<version>1.13.0</version>

<properties>
<maven.compiler.source>25</maven.compiler.source>
Expand Down
7 changes: 3 additions & 4 deletions src/main/java/xyz/zcraft/seira/SeiraApplication.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,7 @@
import xyz.zcraft.seira.console.JLineConsole;
import xyz.zcraft.seira.console.UserDataConsoleAccess;
import xyz.zcraft.seira.db.SqliteDatabase;
import xyz.zcraft.seira.services.BindingService;
import xyz.zcraft.seira.services.BotStat;
import xyz.zcraft.seira.services.DailyLuck;
import xyz.zcraft.seira.services.NoticeStore;
import xyz.zcraft.seira.services.*;
import xyz.zcraft.seira.util.AdminRegistry;
import xyz.zcraft.seira.util.ApplicationExecutors;

Expand Down Expand Up @@ -47,6 +44,7 @@ public SeiraApplication(AppConfig config) {
DailyLuck.initialize(config.qq().appId());
BotStat.initialize();
NoticeStore.initialize();
AiPermission.initialize();

ApplicationExecutors createdExecutors = new ApplicationExecutors();
BindingService createdBindingService = new BindingService(
Expand Down Expand Up @@ -97,6 +95,7 @@ public void close() {
bot.close();
DailyLuck.saveToFile();
BotStat.shutdown();
AiPermission.saveToFile();
LOG.info("Shutdown complete");
}
}
Loading
Loading