功能
- 60s 早报:发送
60s或早报,获取每日早报图片 - 新人入群验证:支持数字验证(100 以内加减法)与手性碳验证两种模式,超时 / 超限自动踢出,错误答案自动撤回
- 自定义入群欢迎:按群设置欢迎文案与欢迎图片,可与入群验证联动(验证通过后发送)
- 表情回应:自动给群消息中的 QQ 表情 / emoji 贴上表情回应(需 NapCat 等支持扩展 API 的协议端)
- 戳一戳:戳 bot 随机回复并按概率回戳;戳主人会被警告并回戳;主人戳人时 bot 跟着戳
- 早晚安:早晚安关键词按时段随机回复,主人有专属词库
移植范围说明:原项目的「晶灵智能 AI 对话」「点歌」「RSS 订阅」功能不在本插件范围内。
安装
使用 nb-cli 安装
nb plugin install nonebot-plugin-crystelf
使用 pip 安装
pip install nonebot-plugin-crystelf
使用 poetry 安装
poetry add nonebot-plugin-crystelf
配置
在 NoneBot 项目的 .env 文件中添加(均有默认值,可零配置使用):
# 机器人昵称(用于戳一戳等文案中的名字替换)
CRYSTELF_NICKNAME=馒头
# 数据存储路径
CRYSTELF_DATA_PATH=data/crystelf
# 功能开关
CRYSTELF_60S=true
CRYSTELF_AUTH=true
CRYSTELF_WELCOME=true
CRYSTELF_FACE_REPLY=true
CRYSTELF_POKE=true
CRYSTELF_ZWA=true
# 60s 早报 API
CRYSTELF_60S_URL=https://60s.crystelf.top
# 手性碳验证 API
CRYSTELF_AUTH_URL=https://carbon.crystelf.top
# 戳一戳回戳概率(0~1)
CRYSTELF_REPLY_POKE=0.4
「主人」使用 NoneBot 的 SUPERUSERS 配置。
使用方法
60s 早报
| 指令 | 权限 | 范围 | 说明 |
|---|---|---|---|
| 60s / 早报 | 所有人 | 群聊/私聊 | 获取每日早报图片 |
新人入群验证
bot 需要为群管理及以上,操作者需为主人或群管理员
| 指令 | 权限 | 范围 | 说明 |
|---|---|---|---|
| #开启验证 | 群主/管理/主人 | 群聊 | 在本群开启验证,默认为数字验证(100 以内加减法) |
| #关闭验证 | 群主/管理/主人 | 群聊 | 在本群关闭验证 |
| #切换验证模式 | 群主/管理/主人 | 群聊 | 在数字验证和手性碳验证模式之间切换 |
| #重新验证@某人 | 群主/管理/主人 | 群聊 | 让这个人重新验证一次 |
| #绕过验证@某人 | 群主/管理/主人 | 群聊 | 直接通过验证 |
| #设置验证提示模式开启/关闭 | 群主/管理/主人 | 群聊 | 提示模式开启时图上用 * 标记手性碳位置 |
| #设置验证困难模式开启/关闭 | 群主/管理/主人 | 群聊 | 困难模式需回答出全部手性碳位置 |
| #设置验证次数+次数 | 群主/管理/主人 | 群聊 | 设置最大验证次数 |
| #设置撤回开启/关闭 | 群主/管理/主人 | 群聊 | 是否撤回错误答案 |
自定义入群欢迎
| 指令 | 权限 | 范围 | 说明 |
|---|---|---|---|
| #设置欢迎文案+欢迎词 | 群主/管理/主人 | 群聊 | 设置本群欢迎文案 |
| #设置欢迎图片+图片(或引用图片) | 群主/管理/主人 | 群聊 | 设置本群欢迎图片 |
| #查看欢迎 | 所有人 | 群聊 | 查看当前群欢迎内容 |
| #清除欢迎 | 群主/管理/主人 | 群聊 | 清除当前群欢迎设置 |
表情回应
| 指令 | 权限 | 范围 | 说明 |
|---|---|---|---|
| (自动) | - | 群聊 | 监听群消息中的表情并贴表情回应 |
| #回应+emoji | 所有人 | 群聊 | 查看 emoji 对应类型及 id,并贴表情回应 |
早晚安
| 指令 | 权限 | 范围 | 说明 |
|---|---|---|---|
| 早 / 早安 / 早上好 / 早啊 等 | 所有人 | 群聊/私聊 | 早安问候(按时段随机回复) |
| 晚安 / 安 / 睡了 / 睡觉 等 | 所有人 | 群聊/私聊 | 晚安问候(按时段随机回复) |
示例
用户:早报
机器人:[早报图片]
新人加入群聊
机器人:@新人 请在180秒内发送 42 + 37 的计算结果..
新人:79
机器人:@新人 验证通过,欢迎加入本群~
用户:戳一戳 bot
机器人:被戳晕了……轻一点啦!
馒头好感度联动(可选)
同时加载 nonebot-plugin-mantou-affection 后,群友戳 bot 会按联动冷却增加 1 点馒头好感,
并依据当前关系阶段切换从熟悉到暧昧的回复。文案来自好感插件文案库的 crystelf.poke 场景,
可通过 MANTOU_AFFECTION_TEXT_PATH 扩充到大量文案;未加载好感度插件时仍使用原有戳一戳词库。
与原项目的对应关系
| 原项目功能 (Yunzai) | 本插件实现位置 | 是否完成 | 备注 |
|---|---|---|---|
| 60s 早报 (apps/60s.js) | apps/sixties.py | 是 | - |
| 手性碳/数字验证 (apps/auth.js) | apps/auth.py | 是 | redis 欢迎缓存改为内存缓存(300 秒过期) |
| 验证设置 (apps/auth-set.js) | apps/auth.py | 是 | 配置改为 JSON 文件持久化,结构一致 |
| 入群欢迎 (apps/welcome.js) | apps/welcome.py | 是 | redis 群冷却改为内存冷却(30 秒) |
| 欢迎设置 (apps/welcome-set.js) | apps/welcome.py | 是 | - |
| 表情回应 (apps/face-reply*.js) | apps/face_reply.py | 是 | 统一走 NapCat set_msg_emoji_like |
| 戳一戳 (apps/poke.js) | apps/poke.py | 是 | masterQQ 改为 SUPERUSERS |
| 早晚安 (apps/zwa.js) | apps/zwa.py | 是 | - |
| 晶灵智能 (apps/ai.js) | - | 否 | 不在移植范围内 |
| 点歌 (apps/music.js) | - | 否 | 不在移植范围内 |
| RSS 订阅 (apps/rssPush.js) | - | 否 | 不在移植范围内 |
许可证
MIT
Metadata
Release files for nonebot-plugin-crystelf 0.1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| nonebot_plugin_crystelf-0.1.7.tar.gz | 159.8 kB | Without provenance | Details for nonebot_plugin_crystelf-0.1.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| nonebot_plugin_crystelf-0.1.7-py3-none-any.whl | Python 3 | none | any | Details for nonebot_plugin_crystelf-0.1.7-py3-none-any.whl |
Total release size: 323.6 kB
Release files / nonebot_plugin_crystelf-0.1.7.tar.gz
| Download URL | nonebot_plugin_crystelf-0.1.7.tar.gz |
|---|---|
| Size | 159.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c1066eedf07bb244812441f5ee075cf62e871942b6c4678dfe587468c598d6dc
|
|
BLAKE2b-256 checksum How to use checksums |
51568c76b64a81995c134eb55f26163b97d0bd093daa013495d7fa66806b0fc0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Release files / nonebot_plugin_crystelf-0.1.7-py3-none-any.whl
| Download URL | nonebot_plugin_crystelf-0.1.7-py3-none-any.whl |
|---|---|
| Size | 163.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b8082be22c544d96a7599394a4af730ec0f24f90dd3702fcb32a924c836e39a6
|
|
BLAKE2b-256 checksum How to use checksums |
366a0ff95a243b1bff9d3af22957dba8a7e92e6bd570e09227f83f2ca426517b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.9
|
Security for nonebot-plugin-crystelf 0.1.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.