这东西怎么发现的
事情要从我翻代码的时候说起。
在 oss/core/ 目录下面,有一个叫 achievements.py 的文件。我本来以为是正经的配置文件校验模块——注释写得一本正经,说什么”配置验证与完整性检查”。
直到我看到了这几行:
_DebugPrefix = "!!"还有一个叫 _ConfigValidator 的类,里面藏了十个内部命令。而且这十个命令的名字起得特别随意:echo、help、list、stats、reset、export、import、verify、debug、info。
这哪是什么配置验证啊,这分明就是个成就系统。
入口:两个感叹号
在 NebulaShell 的 CLI 里,正常的命令是这样的:
nebula servenebula infonebula nbpf pack ...但如果你在命令前面加两个感叹号,就能进入隐藏模式:
python main.py !!help就这么简单。两个感叹号是进入这个彩蛋系统的唯一入口。
而且你运气好的话,在输入
nebula info的时候,有 10% 的概率会看到一行提示: ”✨ 奇怪的提示:试试在命令前加两个感叹号会怎样?比如 !!help” 还有 5% 的概率看到: ”🤔 听说有人用 !! 开头的命令发现了不得了的东西…”
所有隐藏命令
目前有十个隐藏命令,每个都能干点不一样的事。
!!help
查看所有可用的隐藏命令。
python main.py !!help
# 输出:# === 内部调试命令列表 ===# !!echo# !!help# !!list# !!stats# !!reset# !!export# !!import# !!verify# !!debug# !!info这是第一个该用的命令。先看看都有什么。
!!list
列出所有成就和当前的解锁状态。
python main.py !!list
# 输出类似这样:# 总规则数:30# [ ] 系统启动验证 (common)# [✓] 调试状态检测 (uncommon)# [ ] 配置变更追踪 (rare)# [ ] 命令α检测点 (uncommon)# ...[✓] 表示已解锁,[ ] 表示还没拿到。后面的括号里是稀有度。
!!stats
查看你的成就统计数据。
python main.py !!stats
# 输出示例:# === 验证器统计 ===# total_rules: 30# validated_count: 5# completion_rate: 16.7%# startup_count: 12# error_total: 3# config_changes: 2# internal_cmds_used: 4# first_validated: 2026-05-10可以看到总共有多少成就、解锁了几个、完成率多少。
!!echo
最简单的命令,就是把你说的话打印回来。
python main.py !!echo 你好世界# 你好世界没什么用,但用了就算一次隐藏命令使用记录,某些成就跟这个有关。
!!export
把你的成就数据导出成一段文本。
python main.py !!export会输出一大段看起像乱码的东西——实际上是用 base64 + zlib 压缩过的成就数据。你可以把这段文本分享给别人,或者备份起来。
!!import
导入成就数据(目前这个功能还没写完,是个占位符)。
python main.py !!import# 导入功能暂未实现!!verify
验证你的成就缓存数据有没有损坏。
python main.py !!verify# 缓存数据完整性验证通过# 或者# 缓存数据完整性验证失败!!debug
开启调试模式。
python main.py !!debug# 调试模式已启用调用这个命令本身也会解锁一个成就(“调试状态检测”)。
!!info
显示系统信息。
python main.py !!info
# 输出示例:# === 系统信息 ===# 已解锁成就:5# 隐藏命令使用:4!!reset
重置成就进度。注意这个操作不可逆。
python main.py !!reset# 使用 !!reset --confirm 来确认重置
# 如果你真的想清空:python main.py !!reset --confirm所有成就一览
成就按稀有度分为五档:
| 颜色 | 稀有度 | 大概概率 |
|---|---|---|
| 白色 | common(普通) | 随便就能拿 |
| 绿色 | uncommon(不凡) | 稍微留意一下 |
| 蓝色 | rare(稀有) | 特定条件才能拿 |
| 紫色 | epic(史诗) | 比较难拿 |
| 金色 | legendary(传说) | 极难或需要特定时机 |
下面我把能挖到的成就都列出来,按获取方式分类。
基础成就(启动就送)
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 系统启动验证 | common | 第一次启动 NebulaShell |
| 调试状态检测 | uncommon | 使用 !!debug 命令 |
这两个基本等于白送。
命令使用成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 命令α检测点 | uncommon | 使用 !!echo 命令 |
| 命令β检测点 | uncommon | 使用 !!help 命令 |
| 命令γ检测点 | uncommon | 使用 !!list 命令 |
| 全命令验证 | epic | 使用过全部 10 个隐藏命令 |
前面三个随便用一下就拿到了。最后一个需要把所有隐藏命令都试一遍。
时间成就
这几个成就跟你运行的时间有关。
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 夜猫子 | rare | 凌晨 2 点到 5 点之间启动 NebulaShell |
| 早起的鸟儿 | rare | 清晨 5 点到 7 点之间启动 |
| 午夜阳光 | legendary | 正好在午夜 0 点 0 分启动 |
“午夜阳光”是传说级成就——你得卡在 00:00 那一瞬间启动框架。一年只有 365 次机会,错过就等明天。
节日成就
特定日期启动自动解锁。
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 新年 | epic | 1 月 1 日启动 |
| 情人节 | rare | 2 月 14 日启动 |
| 万圣节 | rare | 10 月 31 日启动 |
| 圣诞节 | epic | 12 月 25 日启动 |
一年就一次机会,错过了只能等明年。
插件数量成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 插件数量>5 | uncommon | 加载超过 5 个模组 |
| 插件数量>20 | epic | 加载超过 20 个模组 |
| 全插件收集 | legendary | 收集所有可用模组 |
“全插件收集”是传说级——不仅要多,还得集齐。
启动速度成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 快速启动<1s | rare | 框架在 1 秒内启动完成 |
如果你的运行环境性能较好、模组数量不多,有可能拿到。
运行时长成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 连续运行>7天 | epic | NebulaShell 连续运行超过 7 天不重启 |
| 运行时长>30天 | legendary | 累计运行超过 30 天 |
第一个需要你的服务器稳定运行一周。第二个是传说级的——累计运行时长超过一个月。
错误处理成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 错误处理>100 | rare | 框架累计报错超过 100 次 |
| 崩溃恢复检测 | epic | 模组崩溃后成功恢复 |
“错误处理>100”——看到这个成就的时候,说明你的框架已经爆炸过一百次了。某种意义上也是一种勋章。
特殊成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 经典序列输入 | legendary | 在控制台依次输入:上上下下左右左右BA |
| 深度扫描检测 | epic | 触发深度扫描 |
| 配置文件黑客 | rare | 修改配置文件超过 10 次 |
| 启动次数=77 | legendary | 正好启动 77 次 |
| 早期用户 | legendary | 在 2024 年 6 月 1 日之前开始使用 |
| 测试版本检测 | rare | 使用 beta 版本 |
其中最出名的是”经典序列输入”——就是科乐美秘籍,那个在魂斗罗里调 30 条命的秘籍。在 NebulaShell 里你不需要手柄,只需要连续输入对应的隐藏命令(具体顺序你得自己摸索,我说出来就没意思了)。
开发者成就
| 成就名 | 稀有度 | 解锁条件 |
|---|---|---|
| 内存使用峰值 | rare | 内存使用达到过峰值 |
| CPU峰值检测 | uncommon | CPU 使用率飙高过 |
| 网络IO异常 | rare | 网络出现异常 IO |
| 磁盘空间警告 | uncommon | 磁盘空间不足过 |
| 权限变更记录 | epic | 发生过权限变更 |
| 安全扫描完成 | rare | 安全扫描跑完一轮 |
| 备份成功验证 | uncommon | 备份操作成功 |
| 更新检查触发 | common | 触发过更新检查 |
| 日志轮转检测 | uncommon | 日志轮转过 |
这些你不用刻意去刷,正常使用过程中慢慢都会解锁。
成就数据的存储位置
成就数据存在这里:
NebulaShell/oss/core/__pycache__/.validator_cache不是明文存储的——它经过了 base64 + zlib 压缩 双重编码。如果你直接打开这个文件,看到的是一堆乱码,别慌,那是正常的。
# 如果你手贱打开了,大概长这样:eJyLVspMLFGyqlZKLFLSUUpLzClRslJKTixIBQAOoQTR要用 !!export 命令导出成可分享的文本,不要手动改这个文件。
换机器了怎么办?
用 !!export 导出数据,保存到文本文件。到了新机器上用 !!import 导入(等这个功能实现了之后)。
目前最靠谱的方式:直接把整个 .validator_cache 文件复制到新机器的对应目录。
一些小细节
成就通知的颜色
每次解锁成就的时候,控制台会打印一行带颜色的消息:
- 普通(common):白色
- 不凡(uncommon):绿色
- 稀有(rare):蓝色
- 史诗(epic):紫色
- 传说(legendary):金色
NOTE如果你在终端里看到一行彩色文字突然冒出来,那就是解锁成就了。
深海潜水员
每次执行 PluginManager.load() 的时候,会尝试解锁一个叫 deep_diver 的隐藏成就。这个成就在上面的列表里是找不到的——它是更深层的彩蛋。
具体解锁条件可以看看源码,目前只看到这么一句:
validator.unlock("deep_diver")但触发条件被藏得很深。如果你解锁了,记得告诉我。
崩溃幸存者
每次框架停止的时候,会尝试解锁 crash_survivor。触发条件同样被刻意隐藏了。
validator.track_progress("session_end")猜测是跟”在崩溃后成功重启”有关。
连续运行检测
框架后台有一个线程在默默计时,检测连续运行时长。如果你跑了 7 天没重启,就能拿到”连续运行>7天”的史诗成就。
快速入门:十分钟拿五个成就
如果你想快速看看这个系统长什么样,按下面几步做:
# 1. 随便启动一次(基础成就)python main.py &sleep 3kill %1
# 2. 使用 !!debug(调试状态检测)python main.py !!debug
# 3. 试三个隐藏命令(命令检测)python main.py !!echo 你好python main.py !!helppython main.py !!list
# 4. 看看你都拿了哪些python main.py !!stats这五步走完,你至少能拿到三四个成就。
写在最后
这个成就系统是整个 NebulaShell 里最”没用”的功能——它不影响框架运行,不提供任何实质能力,纯粹就是为了好玩。
但我觉得,这正是它最可贵的部分。
写代码的人愿意在正经功能之外,埋一堆需要用户去探索的彩蛋,说明这个项目是有灵魂的。
最后留个彩蛋:源码里有一行注释写着——“试试在命令前加两个感叹号会怎样?” 你现在已经试过了。 但你觉得,我真的只藏了这十一个彩蛋吗?
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时






