No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-04-21 18:26:25 +08:00
.vscode Initial Commit 2026-04-21 18:26:25 +08:00
Properties Initial Commit 2026-04-21 18:26:25 +08:00
Settings Initial Commit 2026-04-21 18:26:25 +08:00
.gitignore Initial Commit 2026-04-21 18:26:25 +08:00
AITools.cs Initial Commit 2026-04-21 18:26:25 +08:00
appsettings.Development.json Initial Commit 2026-04-21 18:26:25 +08:00
appsettings.json Initial Commit 2026-04-21 18:26:25 +08:00
KodoShion.csproj Initial Commit 2026-04-21 18:26:25 +08:00
KodoShion.slnx Initial Commit 2026-04-21 18:26:25 +08:00
MilkyWorker.cs Initial Commit 2026-04-21 18:26:25 +08:00
Program.cs Initial Commit 2026-04-21 18:26:25 +08:00
README.md Initial Commit 2026-04-21 18:26:25 +08:00
Shion.cs Initial Commit 2026-04-21 18:26:25 +08:00

KodoShion

一个基于 .NET Worker 的 QQ 群聊 AI 机器人项目。

它通过 Milky 接收群消息,使用 Ollama 本地模型生成回复,并支持按需调用工具获取随机图片。

功能简介

  • 监听指定 QQ 群消息
  • 被 @ 时触发 AI 回复
  • 维护最近对话上下文(最多 10 轮)
  • 支持工具调用:随机图片 URL
  • 支持配置 HTTP 代理下载图片

技术栈

  • .NET 10 Worker Service
  • Milky.Net.Client
  • OllamaSharp
  • Microsoft.Agents.AI

环境要求

  • .NET 10 SDK
  • 可用的 Milky 服务(用于接收/发送 QQ 消息)
  • 可用的 Ollama 服务与模型

快速开始

  1. 克隆项目并进入目录。

  2. 还原依赖:

    dotnet restore
    
  3. 修改 appsettings.json 中的配置(见下文)。

  4. 运行项目:

    dotnet run
    

配置说明

appsettings.json 主要配置项:

  • Milky.BaseAddressMilky 服务地址(示例:ws://localhost:3010/
  • Milky.TargetGroupId:目标群号
  • Ollama.EndpointOllama 服务地址(示例:http://localhost:11434
  • Ollama.ModelId:使用的模型 ID
  • App.HttpProxy可选HTTP 代理地址(用于拉取图片)

运行逻辑(简版)

  1. 程序启动后连接 Milky WebSocket。
  2. 接收到目标群消息时:
    • 未 @ 机器人:仅写入上下文。
    • @ 机器人:调用模型生成回复并发送回群。
  3. 若模型工具调用返回图片 URL则尝试下载并以图片形式发送。

说明

  • 这是一个实验性质项目,建议先在测试群验证行为与配置。
  • 如需更安全的生产部署,请补充鉴权、审计、限流与异常告警策略。