Skip to content
windy664 edited this page Jun 17, 2026 · 2 revisions

FAQ

基础

Q: 支持哪些 Minecraft 版本?

A: 编译期用 Spigot API 1.12.2,调跨版本稳定 API,兼容 1.12 ~ 最新版。混合端(Youer / Mohist / NeoForge)也支持。

Q: 支持哪些 LLM?

A: 三种 provider:openai(兼容 mimo/讯飞/智谱等)、claude(Anthropic SDK)、ollama(本地)。支持故障转移:主 Provider 挂了自动切备用。

Q: 一个 jar 怎么同时是 Velocity 和 Bukkit 插件?

A: shadowJar 把两个入口打进同一个 fat jar。各平台只识别自己的入口,另一平台主类休眠。

技能系统

Q: 我不会写 Groovy,能用技能系统吗?

A: 完全可以。你只需要说人话,AI 替你写。比如"帮我做个技能,每天给在线玩家发钻石",AI 会自动生成 SKILL.md + Groovy 脚本,编译检查 + dry-run 验证后保存。

Q: AI 写的脚本安全吗?

A: 三层验证:① 编译检查(只编译不执行);② dry-run(mock 对象模拟,不碰真实服务器);③ 用户确认。dry-run 中未覆盖的 API 调用会打 ⚠️ warning 提示人工确认。AI 创建的技能标记 origin: ai_generated

Q: 脚本执行失败怎么办?

A: AI 自动修复:分析错误 → 生成修复 → 编译检查 → dry-run → 更新 → 重试。连续失败 3 次才放弃,报告给用户。

Q: 技能之间能互相调用吗?

A: 可以。工作流步骤用 skill: other_name 递归调用另一个技能。

Q: 技能有状态吗?

A: 有。脚本里用 state.xxx 读写,数据持久化到 skills/<name>/state.json,重启不丢。上限 1MB。

Q: 工作流能并行执行吗?

A: 可以。连续的 parallel: true 步骤同时执行,全部完成后再继续。共享线程池(4 线程),60 秒超时保护。

日志监控

Q: 日志监控怎么工作?

A: Bukkit 子服的 LogWatcher 每 30 秒扫描 latest.log,检测到 ERROR/Exception 后经总线推送到 Velocity 中心。Agent 每次对话开始时自动检查,发现异常主动告知管理员并提供诊断方案。

Q: 会不会被日志洪泛刷爆?

A: 不会。三重防护:① 去重(同一错误 5 分钟内只报一次);② 限流(每分钟最多 30 条);③ 缓冲区上限(100 条)。

Q: 错误缓冲持久化吗?

A: 持久化。存到 errors.json,重启不丢。

LLM 故障转移

Q: 额度用完了会怎样?

A: 自动切到备用 Provider,对话不中断。主 Provider 恢复后(5 分钟健康检查)自动切回。

Q: 怎么配置故障转移?

A: 在 windyagent-config.ymlllm.fallback 配置备用 Provider 列表。详见配置参考

Q: 所有 Provider 都挂了呢?

A: 报错告知用户。不可恢复错误(鉴权失败/参数错误)不触发切换。

插件集成

Q: 装了 CMI 自动生效吗?

A: 是的。Bukkit 启动时自动检测 CMI,有就注册 8 个工具(经济/传送/封禁/礼包/用户查询)。无 CMI 时零开销。

Q: 怎么接更多插件?

A: 实现 PluginIntegration 接口,在 IntegrationRegistry 注册。两步搞定。

部署

Q: 必须有 Redis 吗?

A: 不必须。transport: socket 用自建 TCP 中枢,无需 Redis。

Q: 子服连不上中枢?

A: 检查:① 先起 Velocity 再起 Bukkit;② socket 配置两端一致;③ 跨机器时中枢绑 0.0.0.0

Q: Web 控制台怎么访问?

A: 启用 web.enabled: true,浏览器打开 http://<host>:<port>/

Clone this wiki locally