nonebot-plugin-ai-turtle-soup 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 xxtg666
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,167 @@
1
+ Metadata-Version: 2.4
2
+ Name: nonebot-plugin-ai-turtle-soup
3
+ Version: 1.0.0
4
+ Summary: AI驱动的海龟汤(情境猜谜)游戏
5
+ Author-email: xxtg666 <xxtg666@gmail.com>
6
+ License: MIT
7
+ Requires-Python: >=3.9
8
+ Description-Content-Type: text/markdown
9
+ License-File: LICENSE
10
+ Requires-Dist: nonebot2
11
+ Requires-Dist: nonebot-plugin-alconna
12
+ Requires-Dist: openai
13
+ Dynamic: license-file
14
+
15
+ ![](https://socialify.git.ci/xxtg666/nonebot-plugin-ai-turtle-soup/image?description=1&forks=1&issues=1&language=1&logo=https://raw.githubusercontent.com/xxtg666/nonebot-plugin-ai-turtle-soup/main/docs/nbp_logo.png&name=1&owner=1&pulls=1&stargazers=1&theme=Light)
16
+
17
+ <div align="center">
18
+
19
+ <a href="./LICENSE">
20
+ <img src="https://img.shields.io/github/license/xxtg666/nonebot-plugin-ai-turtle-soup.svg?style=for-the-badge" alt="license">
21
+ </a>
22
+
23
+ <a href="https://pypi.python.org/pypi/nonebot-plugin-ai-turtle-soup">
24
+ <img src="https://img.shields.io/pypi/v/nonebot-plugin-ai-turtle-soup.svg?style=for-the-badge" alt="pypi">
25
+ </a>
26
+
27
+ <img src="https://img.shields.io/badge/python-3.9+-blue.svg?style=for-the-badge" alt="python">
28
+
29
+ </div>
30
+
31
+ ## 📖 介绍
32
+
33
+ 一个由 AI 驱动的海龟汤(情境猜谜)游戏插件,为 NoneBot2 机器人提供互动式推理游戏体验。
34
+
35
+ ### 什么是海龟汤?
36
+
37
+ 海龟汤(Situation Puzzle / Lateral Thinking Puzzle)是一种情境猜谜游戏:
38
+ - 🧩 系统给出一个离奇的情境描述(汤面)
39
+ - 🤔 玩家通过提出封闭式问题来推理
40
+ - 💡 AI 只能回答"是"、"否"或"不重要"
41
+ - 🎯 最终推理出完整的故事真相(汤底)
42
+
43
+ ### 特色功能
44
+
45
+ - 🤖 **AI 生成谜题** - 每次都能获得全新的创意谜题
46
+ - 🎮 **智能主持** - AI 自动判断问题并给出合理答案
47
+ - 📊 **进度跟踪** - 实时显示游戏进度百分比
48
+ - 💡 **提示系统** - 卡关时可请求提示
49
+ - ⭐ **谜题评分** - 自动评估谜题质量(悬念度/逻辑性/创意性/可玩性)
50
+ - 🎨 **主题定制** - 可指定主题生成特定类型的谜题
51
+ - 🔄 **进度重算** - 支持重新评估当前进度
52
+
53
+ ## 💿 安装
54
+
55
+ ### 先决条件
56
+
57
+ 在安装之前,请确保您的环境符合以下条件:
58
+
59
+ 1. 拥有一个能够运行的 Python,版本在 3.9 及以上
60
+ 2. 已经安装并配置好 pip 等任意一款 Python3 包管理器
61
+ 3. 已经创建或拥有了一个 NoneBot2 机器人项目
62
+ 4. 拥有可用的 OpenRouter API 或兼容的 API 服务
63
+
64
+ ### 安装方法
65
+
66
+ <details>
67
+ <summary>通过文件安装</summary>
68
+
69
+ 1. 在您的 `pyproject.toml` 中配置一个插件目录
70
+ ```toml
71
+ plugin_dirs = ["src/plugins"]
72
+ ```
73
+ > 您需要确保此目录存在,下文将使用 `插件目录` 代指此目录。
74
+
75
+ 2. [下载本仓库](https://github.com/xxtg666/nonebot-plugin-ai-turtle-soup/archive/refs/heads/main.zip)
76
+
77
+ 3. 将 `src` 文件夹中的 `nonebot_plugin_ai_turtle_soup` 文件夹解压到插件目录
78
+
79
+ 4. 安装依赖
80
+ > 进入 `requirements.txt` 同目录下执行
81
+ ```bash
82
+ pip install -r requirements.txt
83
+ ```
84
+
85
+ </details>
86
+
87
+ <details>
88
+ <summary>通过 PIP 安装</summary>
89
+
90
+ 1. 使用 pip 安装插件
91
+ ```bash
92
+ pip install nonebot-plugin-ai-turtle-soup
93
+ ```
94
+
95
+ 2. 修改 `pyproject.toml` 在 `plugins` 中添加 `nonebot_plugin_ai_turtle_soup`
96
+
97
+ </details>
98
+
99
+ ## ⚙️ 配置
100
+
101
+ 请在机器人目录中创建一个 `.env` 文件(或编辑对应 `.env` 文件,可能为 `.env.dev` 或 `.env.prod`),然后参考下方的配置内容进行修改。
102
+
103
+ ### 配置项说明
104
+
105
+ ```env
106
+ # OpenAI API Configuration - 生成谜题
107
+ ATS_OPENAI_GENERATE_API_KEY=
108
+ ATS_OPENAI_GENERATE_BASE_URL=https://api-inference.modelscope.cn/v1
109
+ ATS_OPENAI_GENERATE_MODEL=ZhipuAI/GLM-4.5 # 推荐使用 GLM-4.5 / GLM-4.6
110
+
111
+ # OpenAI API Configuration - 评判问题、刷新进度、谜题打分
112
+ ATS_OPENAI_JUDGE_API_KEY=
113
+ ATS_OPENAI_JUDGE_BASE_URL=https://openrouter.ai/api/v1
114
+ ATS_OPENAI_JUDGE_MODEL=x-ai/grok-4-fast:free # 推荐使用 grok-4-fast,最好是带 reasoning 的模型
115
+
116
+ # 游戏配置
117
+ ATS_MAX_QUESTIONS=50 # 每局游戏最大提问次数
118
+ ATS_TIMEOUT=7200 # 游戏超时时间(秒),默认2小时
119
+ ```
120
+
121
+ ### 配置说明
122
+
123
+ - **双 API 配置**:插件使用两套 API 配置
124
+ - `GENERATE`: 用于生成新谜题(需要较高创造力)
125
+ - `JUDGE`: 用于游戏主持、回答问题、计算进度(需要较高准确性)
126
+ - 可以配置为相同或不同的 API 服务
127
+
128
+ - **API 兼容性**:支持 OpenAI 官方 API 以及任何兼容 OpenAI 格式的 API 服务
129
+
130
+ ## 🎉 使用
131
+
132
+ ### 基本命令
133
+
134
+ - `/开始海龟汤` - 开始一局随机主题的新游戏
135
+ - `/开始海龟汤 [主题]` - 开始指定主题的新游戏(如: `/开始海龟汤 密室`)
136
+ - `@bot <问题>` - 向 AI 提问(需要是封闭式问题)
137
+ - `@bot 查看进度` - 查看当前游戏进度和历史记录
138
+ - `@bot 提示` - 获取一条提示信息
139
+ - `@bot 重新计算进度` - 重新评估当前游戏进度
140
+ - `@bot 放弃` - 放弃游戏并查看完整答案
141
+ - `/海龟汤帮助` - 查看详细帮助信息
142
+
143
+ ### 游玩技巧
144
+
145
+ - ✅ **好的问题**:
146
+ - "这是故意的吗?"
147
+ - "他的身体有什么特殊情况吗?"
148
+ - "这件事发生在室内吗?"
149
+ - "时间因素重要吗?"
150
+
151
+ - ❌ **不好的问题**:
152
+ - "发生了什么?"(太开放)
153
+ - "他为什么这么做?"(无法用是/否回答)
154
+ - "是不是A或者B?"(尽量避免多选)
155
+
156
+ ### 多人游戏
157
+
158
+ - 支持群组和频道内多人协作
159
+ - 每个群组/频道独立维护游戏状态
160
+ - 所有成员都可以提问
161
+ - 建议协作讨论,共同推理
162
+
163
+ ## ⚠️ 注意事项
164
+
165
+ - 本插件需要调用 AI API,可能会产生相应的 API 费用
166
+ - 建议设置合理的 `ATS_MAX_QUESTIONS` 以控制单局游戏的 API 调用次数
167
+ - 游戏会话会在超时时间(`ATS_TIMEOUT`)后自动清除
@@ -0,0 +1,153 @@
1
+ ![](https://socialify.git.ci/xxtg666/nonebot-plugin-ai-turtle-soup/image?description=1&forks=1&issues=1&language=1&logo=https://raw.githubusercontent.com/xxtg666/nonebot-plugin-ai-turtle-soup/main/docs/nbp_logo.png&name=1&owner=1&pulls=1&stargazers=1&theme=Light)
2
+
3
+ <div align="center">
4
+
5
+ <a href="./LICENSE">
6
+ <img src="https://img.shields.io/github/license/xxtg666/nonebot-plugin-ai-turtle-soup.svg?style=for-the-badge" alt="license">
7
+ </a>
8
+
9
+ <a href="https://pypi.python.org/pypi/nonebot-plugin-ai-turtle-soup">
10
+ <img src="https://img.shields.io/pypi/v/nonebot-plugin-ai-turtle-soup.svg?style=for-the-badge" alt="pypi">
11
+ </a>
12
+
13
+ <img src="https://img.shields.io/badge/python-3.9+-blue.svg?style=for-the-badge" alt="python">
14
+
15
+ </div>
16
+
17
+ ## 📖 介绍
18
+
19
+ 一个由 AI 驱动的海龟汤(情境猜谜)游戏插件,为 NoneBot2 机器人提供互动式推理游戏体验。
20
+
21
+ ### 什么是海龟汤?
22
+
23
+ 海龟汤(Situation Puzzle / Lateral Thinking Puzzle)是一种情境猜谜游戏:
24
+ - 🧩 系统给出一个离奇的情境描述(汤面)
25
+ - 🤔 玩家通过提出封闭式问题来推理
26
+ - 💡 AI 只能回答"是"、"否"或"不重要"
27
+ - 🎯 最终推理出完整的故事真相(汤底)
28
+
29
+ ### 特色功能
30
+
31
+ - 🤖 **AI 生成谜题** - 每次都能获得全新的创意谜题
32
+ - 🎮 **智能主持** - AI 自动判断问题并给出合理答案
33
+ - 📊 **进度跟踪** - 实时显示游戏进度百分比
34
+ - 💡 **提示系统** - 卡关时可请求提示
35
+ - ⭐ **谜题评分** - 自动评估谜题质量(悬念度/逻辑性/创意性/可玩性)
36
+ - 🎨 **主题定制** - 可指定主题生成特定类型的谜题
37
+ - 🔄 **进度重算** - 支持重新评估当前进度
38
+
39
+ ## 💿 安装
40
+
41
+ ### 先决条件
42
+
43
+ 在安装之前,请确保您的环境符合以下条件:
44
+
45
+ 1. 拥有一个能够运行的 Python,版本在 3.9 及以上
46
+ 2. 已经安装并配置好 pip 等任意一款 Python3 包管理器
47
+ 3. 已经创建或拥有了一个 NoneBot2 机器人项目
48
+ 4. 拥有可用的 OpenRouter API 或兼容的 API 服务
49
+
50
+ ### 安装方法
51
+
52
+ <details>
53
+ <summary>通过文件安装</summary>
54
+
55
+ 1. 在您的 `pyproject.toml` 中配置一个插件目录
56
+ ```toml
57
+ plugin_dirs = ["src/plugins"]
58
+ ```
59
+ > 您需要确保此目录存在,下文将使用 `插件目录` 代指此目录。
60
+
61
+ 2. [下载本仓库](https://github.com/xxtg666/nonebot-plugin-ai-turtle-soup/archive/refs/heads/main.zip)
62
+
63
+ 3. 将 `src` 文件夹中的 `nonebot_plugin_ai_turtle_soup` 文件夹解压到插件目录
64
+
65
+ 4. 安装依赖
66
+ > 进入 `requirements.txt` 同目录下执行
67
+ ```bash
68
+ pip install -r requirements.txt
69
+ ```
70
+
71
+ </details>
72
+
73
+ <details>
74
+ <summary>通过 PIP 安装</summary>
75
+
76
+ 1. 使用 pip 安装插件
77
+ ```bash
78
+ pip install nonebot-plugin-ai-turtle-soup
79
+ ```
80
+
81
+ 2. 修改 `pyproject.toml` 在 `plugins` 中添加 `nonebot_plugin_ai_turtle_soup`
82
+
83
+ </details>
84
+
85
+ ## ⚙️ 配置
86
+
87
+ 请在机器人目录中创建一个 `.env` 文件(或编辑对应 `.env` 文件,可能为 `.env.dev` 或 `.env.prod`),然后参考下方的配置内容进行修改。
88
+
89
+ ### 配置项说明
90
+
91
+ ```env
92
+ # OpenAI API Configuration - 生成谜题
93
+ ATS_OPENAI_GENERATE_API_KEY=
94
+ ATS_OPENAI_GENERATE_BASE_URL=https://api-inference.modelscope.cn/v1
95
+ ATS_OPENAI_GENERATE_MODEL=ZhipuAI/GLM-4.5 # 推荐使用 GLM-4.5 / GLM-4.6
96
+
97
+ # OpenAI API Configuration - 评判问题、刷新进度、谜题打分
98
+ ATS_OPENAI_JUDGE_API_KEY=
99
+ ATS_OPENAI_JUDGE_BASE_URL=https://openrouter.ai/api/v1
100
+ ATS_OPENAI_JUDGE_MODEL=x-ai/grok-4-fast:free # 推荐使用 grok-4-fast,最好是带 reasoning 的模型
101
+
102
+ # 游戏配置
103
+ ATS_MAX_QUESTIONS=50 # 每局游戏最大提问次数
104
+ ATS_TIMEOUT=7200 # 游戏超时时间(秒),默认2小时
105
+ ```
106
+
107
+ ### 配置说明
108
+
109
+ - **双 API 配置**:插件使用两套 API 配置
110
+ - `GENERATE`: 用于生成新谜题(需要较高创造力)
111
+ - `JUDGE`: 用于游戏主持、回答问题、计算进度(需要较高准确性)
112
+ - 可以配置为相同或不同的 API 服务
113
+
114
+ - **API 兼容性**:支持 OpenAI 官方 API 以及任何兼容 OpenAI 格式的 API 服务
115
+
116
+ ## 🎉 使用
117
+
118
+ ### 基本命令
119
+
120
+ - `/开始海龟汤` - 开始一局随机主题的新游戏
121
+ - `/开始海龟汤 [主题]` - 开始指定主题的新游戏(如: `/开始海龟汤 密室`)
122
+ - `@bot <问题>` - 向 AI 提问(需要是封闭式问题)
123
+ - `@bot 查看进度` - 查看当前游戏进度和历史记录
124
+ - `@bot 提示` - 获取一条提示信息
125
+ - `@bot 重新计算进度` - 重新评估当前游戏进度
126
+ - `@bot 放弃` - 放弃游戏并查看完整答案
127
+ - `/海龟汤帮助` - 查看详细帮助信息
128
+
129
+ ### 游玩技巧
130
+
131
+ - ✅ **好的问题**:
132
+ - "这是故意的吗?"
133
+ - "他的身体有什么特殊情况吗?"
134
+ - "这件事发生在室内吗?"
135
+ - "时间因素重要吗?"
136
+
137
+ - ❌ **不好的问题**:
138
+ - "发生了什么?"(太开放)
139
+ - "他为什么这么做?"(无法用是/否回答)
140
+ - "是不是A或者B?"(尽量避免多选)
141
+
142
+ ### 多人游戏
143
+
144
+ - 支持群组和频道内多人协作
145
+ - 每个群组/频道独立维护游戏状态
146
+ - 所有成员都可以提问
147
+ - 建议协作讨论,共同推理
148
+
149
+ ## ⚠️ 注意事项
150
+
151
+ - 本插件需要调用 AI API,可能会产生相应的 API 费用
152
+ - 建议设置合理的 `ATS_MAX_QUESTIONS` 以控制单局游戏的 API 调用次数
153
+ - 游戏会话会在超时时间(`ATS_TIMEOUT`)后自动清除
@@ -0,0 +1,23 @@
1
+ [project]
2
+ name = "nonebot-plugin-ai-turtle-soup"
3
+
4
+ version = "1.0.0"
5
+
6
+ description = "AI驱动的海龟汤(情境猜谜)游戏"
7
+ authors = [
8
+ { name = "xxtg666", email = "xxtg666@gmail.com" }
9
+ ]
10
+ dependencies = [
11
+ "nonebot2",
12
+ "nonebot-plugin-alconna",
13
+ "openai"
14
+ ]
15
+ requires-python = ">=3.9"
16
+ readme = "README.md"
17
+ license = { text = "MIT" }
18
+
19
+ [tool.setuptools.packages.find]
20
+ where = ["src"]
21
+
22
+ [tool.setuptools.package-data]
23
+ "nonebot_plugin_ai_turtle_soup" = ["prompts/*.md"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+