CyberArcanum 赛博秘仪:当AI与塔罗相遇,我用代码重构了一场数字时代的占卜仪式

第一部分:The Vision —— 当神秘学的仪式感,撞上数字时代的代码 它的灵魂,藏在洗牌时指尖的触感、切牌时专注的呼吸、抽牌时心跳的停顿里——这一整套完整的仪式,本质是让你从浮躁的日常里抽离,沉下心来直面自己的困惑;而 78 张阿卡纳牌的符号,不过是你内心潜意识的投射载体。


前言

谈论 AI 的时候,我们总在谈论参数、算力、准确率。我们把它塞进对话框、表格、代码编辑器里,让它成为高效的工具,却忘了它也可以成为一扇门——一扇通往内心,连接传统神秘学与未来科技的门,一扇给我们带来更多有帮助、更多有意思内容的门。

这就是我做 CyberArcanum 赛博秘仪 的全部理由:让 AI 不再是冰冷的文本框,而是一位带着仪式感,陪你向内探索的数字导师。

当前开源实现以 Mystic Vision Tarot(灵启万物) 为名,完整保留了「手势选牌 + 握拳定契 + AI 解牌与多轮对谈」的仪式闭环,你可以直接在本地跑通并体验。


第一部分:The Vision —— 当神秘学的仪式感,撞上数字时代的代码

传统塔罗的核心,从来不是「预知未来」。

它的灵魂,藏在洗牌时指尖的触感、切牌时专注的呼吸、抽牌时心跳的停顿里——这一整套完整的仪式,本质是让你从浮躁的日常里抽离,沉下心来直面自己的困惑;而 78 张阿卡纳牌的符号,不过是你内心潜意识的投射载体。

但我见过太多数字塔罗产品,把这套充满力量的仪式,简化成了一个「点击抽卡」的按钮、一段复制粘贴的通用牌意、一个只会输出套话的 AI 对话框。它们用科技消解了神秘,用效率杀死了共情,最终变成了毫无灵魂的娱乐玩具。

我想做的事恰恰相反:用最前沿的前端技术、计算机视觉、大语言模型,完整重构塔罗占卜的仪式闭环。不是用代码解构神秘,而是用代码为神秘赋能,让千百年流传的向内探索的智慧,在数字世界里,获得更有沉浸感、更有共情力的新生。

在这里插入图片描述


第二部分:The Experience —— 一场完整的沉浸式数字占卜仪式

CyberArcanum 的核心设计准则,是把「仪式感」刻进每一个像素、每一次交互里。从你打开应用的那一刻起,你就进入了一个专属的、幽暗而充满力量的秘仪空间,每一步操作,都是占卜仪式不可分割的一部分。

1. 启程:向秘仪袒露你的困惑

打开应用,首先迎接你的不是繁杂的功能菜单,而是一片缓慢流动的暗紫色星云与深邃背景,幽微的星光粒子点缀其间。界面中央是「Mystic Vision」的标题与一行引导语,以及一个极简的、暗金描边风格的输入框:

刻录你的疑惑 · Engrave Thy Inquiry

没有「必填项」的红色提示,没有苛刻的字数限制,你可以写下关于职业、感情、成长的任何困惑,也可以只是一句「我想看看当下的状态」。例如:「我近期的事业发展如何?」在这里,你不需要迎合任何规则,只需要对自己坦诚。

当你写下困惑并点击 ASCEND(启程) 按钮的那一刻,摄像头将在此后悄然启动,背景与状态文案会引导你进入下一幕——共鸣

在这里插入图片描述

2. 共鸣:在虚空之中,拨动命运的牌阵

这是整个产品最核心的创新——我们彻底抛弃了「点击选牌」的传统交互,用 Google MediaPipe 的计算机视觉能力,让你用自己的手,在虚空之中完成选牌的仪式。

点击启程并授权摄像头后,界面会提示:「挥动手部移动,握拳 3 秒翻开命运」。此时,所有摄像头画面均在本地处理,绝不会上传到任何服务器。界面中央是一副塔罗牌阵:多张大阿卡纳牌以 3D 透视的方式排开,当前选中的牌位于正中,两侧牌面随透视逐渐隐入暗处。当你的手出现在画面中,MediaPipe 会以稳定帧率实时捕捉你手部的 21 个 3D 关键点

你只需要向左或向右挥动手掌,整副牌阵就会随着你手部的水平位移同步滚动——就像你真的在虚空之中,用手指拨动命运的牌。当前选中的牌会高亮并带有微弱光晕,左右两侧有「LEFT」「FIST」「RIGHT」的仪式化提示:挥动选牌,握拳定契。

当你找到那张与你共鸣的牌并停下挥动,选牌的仪式,就此完成。

在这里插入图片描述

3. 定契:以握拳之誓,锁定你的牌面

传统塔罗里,定牌是整个仪式里最神圣的环节——一旦选定,便不可更改,这是你与牌之间的契约。

在 CyberArcanum 里,我们没有用一个冰冷的「确认」按钮来完成这个环节,而是设计了握拳三秒定契的交互。当你在牌阵中选好当前牌面后,界面会持续提示你:

握拳 3 秒,翻开命运。

当你握紧拳头,MediaPipe 会实时识别握拳手势(通过指尖与手掌根部的相对位置判断手指是否蜷曲)。识别逻辑在端侧完成:当多根手指的指尖相对手腕的距离小于指节相对手腕的距离时,视为握拳。一旦握拳状态连续保持约 3 秒,便会触发定契——没有撤销,没有重选,你必须为自己的选择负责。这,就是仪式的力量。

4. 揭示:命运的牌面,在此刻缓缓掀开

定契完成,便到了整个仪式最有张力的环节——翻牌

当前选中的那张牌会从牌背缓缓翻转,暗金纹样与神秘符号的牌背逐渐被牌面取代,正面的阿卡纳牌图与牌名(中英双语)、基础释义,一点点呈现在你眼前。状态文案变为「星象已现 · 宿命归位」。翻牌动效与 3D 透视、背反隐藏(backface-hidden)结合,让一张牌从「未选中」到「翻开」的过渡充满张力。

每一张牌翻开的瞬间,都是留给你和自己内心对话的时间。当牌面完全掀开,界面的光线会稳定下来,牌面的能量在此刻完全释放,并同时开启下一幕——对谈

在这里插入图片描述

5. 对谈:AI 导师的深度解读,与无界的追问

牌面不是终点,而是对话的起点。这也是 CyberArcanum 和很多塔罗产品最核心的区别:我们没有给你一段固定的、复制粘贴的牌意,而是用 DeepSeek API,为你打造了一位真正懂牌、懂你、有温度的 Mystic Vision 导师

牌面翻开的同时,会向 AI 发送一段结构化提示:你的初始困惑、抽中的塔罗牌名称(中英文)、牌面基础释义。DeepSeek 会基于这些信息,生成一段专属的、流式输出的深度解读。它不会给你非黑即白的「算命结果」,也不会说模棱两可的套话,而是会把塔罗牌的符号寓意和你的具体处境结合起来,帮你梳理当下的状态,看见内心忽略的情绪,找到困惑的核心。

更重要的是,支持完整的多轮上下文对话。你可以随时在输入框中追问,例如:

  • 「这张牌给我的最大警示是什么?」
  • 「我该怎么突破当下的这个困境?」
  • 「如果我选择了这个方向,牌面给我的提示是什么?」

DeepSeek 会完整记住你最初的问题、牌面信息、以及之前的全部对话,像一位真正资深的塔罗师一样,陪着你一步步向内探索。回复以 Markdown 渲染(标题、加粗、列表等),阅读体验更清晰。AI 在这里不是算命的工具,而是陪你和自己对话的桥梁。

在这里插入图片描述


第三部分:The Tech Stack —— 藏在仪式感背后的技术实现

所有极致的体验,都离不开扎实的技术支撑。当前仓库(Mystic Vision Tarot)的技术架构,始终围绕着「沉浸式体验」与「仪式闭环」搭建,每一个技术选型,都为了让仪式感更完整、交互更流畅、解读更有温度。

前端架构:React + TypeScript + Vite

这是经过验证的、非常适合本项目的技术组合,核心解决了两点:开发效率运行与构建性能

  • Vite:毫秒级冷启动与热更新,在调试复杂翻牌动效与手势交互时,可以实时预览每一帧的细节。构建阶段能产出体积与加载速度都可控的静态资源,配合开发服务器配置(如端口 3000、host: '0.0.0.0'),本地与局域网体验都很顺畅。
  • React:组件化架构让「输入模块、手势识别与摄像头、牌阵与翻牌、对话模块」可以清晰解耦,状态通过 useState / useRef / useCallback 管理,翻牌与选牌逻辑集中在主组件内,可维护性高。React 19 与现代 Hooks 为异步流与 ref 同步提供了稳定基础。
  • TypeScript:在多模块、多 API 对接(MediaPipe 手势数据、DeepSeek 流式接口、塔罗牌数据与消息类型)的场景下,类型安全能在开发阶段规避大量潜在问题,交互状态流转也更清晰可控。

手势与摄像头:Google MediaPipe 端侧计算机视觉

整个产品最具辨识度的手势交互,完全基于 Google MediaPipe 实现,核心优势是:低延迟隐私安全

  • @mediapipe/hands:在浏览器端实时检测手部 21 个 3D 关键点(landmarks),通过 CDN 引入,无需后端参与。初始化时设置 maxNumHands: 1minDetectionConfidenceminTrackingConfidence(如 0.6),在弱光下也能保持稳定识别。
  • @mediapipe/camera_utils:负责从设备摄像头取帧并驱动 Hands 模型。视频流绑定到页面内一个隐藏的 <video> 元素,每一帧通过 hands.send({ image: videoElement }) 送入模型,在 onResults 回调中拿到 multiHandLandmarks
  • 交互逻辑
    • 选牌:取第一只手的手腕或掌心关键点的水平坐标 x,与上一帧比较,若水平位移超过阈值(如 0.02),则根据方向递增或递减当前选牌索引,实现牌阵左右滚动。
    • 握拳定契:自定义 checkIsFist(landmarks),根据 MediaPipe 的 21 点索引(如指尖 8、12、16、20,指节 6、10、14、18,手腕 0),计算指尖到手腕的距离与指节到手腕的距离;当「指尖更靠近手腕」的手指数量达到设定数量(如 ≥3),判定为握拳。握拳状态持续 3000ms 后触发翻牌;若中途松开超过约 1.2 秒,则重置计时,避免误触。
  • 隐私:所有摄像头画面的处理与手势识别均在用户本地完成,不会将视频或图像上传到云端,既保证低延迟,也守护隐私。

解牌与对话:DeepSeek API 流式多轮对话

当前版本的解牌与多轮对话全部由 DeepSeek API 驱动。

  • 系统角色:在请求中固定一位「资深塔罗牌占卜师 · Mystic Vision」的系统提示,要求根据牌面含义与用户问题,用专业、神秘且富有同理心的语调,以 Markdown 输出解读。
  • 流式输出:使用 DeepSeek 的 stream: true 接口,服务端以 SSE 形式返回 token,前端逐 chunk 拼接到当前助手消息并触发重绘,配合 marked 实时渲染 Markdown,形成「打字机」式的阅读体验。
  • 上下文:每次用户发送消息时,将「历史对话 + 当前用户输入」一并发送;翻牌后的首条解读则使用「占卜启动」专用 prompt(包含用户问题、选中牌名与释义),保证首答紧扣牌面与问题。这样即可实现长上下文、多轮追问,AI 不会忘记你的问题与之前的对话。

项目中依赖里仍保留 @google/genai,便于未来扩展多模态或其它模型;当前线上解牌与对话链路以 DeepSeek 为主。


第四部分:结语与展望

CyberArcanum 从来不是一个「用 AI 算命」的玩具。

做这个项目的初心,是想证明一件事:科技从来不是人文的对立面,代码也从来不是冰冷的符号。我们可以用最前沿的计算机视觉、大语言模型、前端技术,去守护千百年流传下来的、人类向内探索的智慧;我们可以用代码,重构一场充满仪式感的占卜,让 AI 不再是对话框里的工具,而是能陪你对话、陪你探索、陪你直面内心的伙伴。

传统神秘学的内核,是「看见自己」;而 AI 的能力,是帮我们更清晰地看见。当这两者相遇,便有了 CyberArcanum 赛博秘仪。

体验与开源

欢迎大家来体验这场数字时代的占卜仪式,也欢迎所有开发者一起参与进来,完善这个赛博秘仪的世界。未来,还会加入更多牌阵、更丰富的手势交互、以及语音对话等能力,让这场向内探索的旅程,有更多可能性。


第五部分:如何本地启动 —— 从零跑通赛博秘仪

下面步骤可以让你在本地完整运行 Mystic Vision Tarot 项目,无需部署即可体验「启程 → 手势选牌 → 握拳定契 → 翻牌 → AI 对谈」的完整流程。

环境要求

  • Node.js:建议 v18 或以上(推荐 LTS 版本),用于运行 npm 与 Vite。
  • 浏览器:支持摄像头与现代 JavaScript 的浏览器(如 Chrome、Edge、Firefox、Safari)。手势识别在 Chrome 系上表现最稳定。
  • 网络:首次安装依赖需要访问 npm 源;运行时需能访问 DeepSeek API(若已配置)及 MediaPipe 的 CDN(cdn.jsdelivr.net)。

步骤一:获取项目代码

若项目已在 Git 仓库中,可克隆:

git clone <你的仓库地址>
cd mystic-vision-tarot

若只有压缩包,解压后进入项目根目录即可:

cd mystic-vision-tarot

步骤二:安装依赖

在项目根目录执行:

npm install

等待依赖安装完成(包含 React、Vite、TypeScript、marked 等)。若使用国内网络,可配置 npm 镜像以加速(如 npm config set registry https://registry.npmmirror.com)。

步骤三:配置 DeepSeek API(可选但推荐)

解牌与对话依赖 DeepSeek API。当前实现中,API Key 在 services/api.ts 内配置;若你希望使用自己的 Key,可:

  • 打开 services/api.ts,找到 DEEPSEEK_API_KEY,替换为你自己的 Key;
  • 或通过环境变量 / 构建时注入(需在代码中改为读取 import.meta.env 等),避免把 Key 提交到仓库。

若暂时不配置,翻牌与界面仍可正常使用,仅 AI 解读请求会失败,可根据控制台报错排查。

步骤四:启动开发服务器

在项目根目录执行:

npm run dev

终端中会输出类似:

  VITE v6.x.x  ready in xxx ms
  ➜  Local:   http://localhost:3000/
  ➜  Network: http://192.168.x.x:3000/

表示开发服务器已启动。默认端口为 3000(在 vite.config.ts 中配置)。

步骤五:在浏览器中打开并授权摄像头

  1. 在浏览器地址栏输入:**http://localhost:3000/**(或终端里显示的 Local 地址)。
  2. 若为首次访问,浏览器可能会请求摄像头权限,请选择「允许」。摄像头仅用于本地手势识别,画面不会上传。
  3. 页面加载后,先等待几秒,直到界面出现「占卜引擎已就绪」或「ASCEND」按钮可点击,表示 MediaPipe 手部模型已加载完成。

步骤六:完整体验流程

  1. 启程:在「刻录你的疑惑」输入框中写下你的问题(例如「我近期的事业发展如何?」),点击 ASCEND
  2. 共鸣:允许摄像头后,在镜头前左右挥动手掌,观察牌阵随手势左右切换,选中心仪的那张牌。
  3. 定契:选好后握拳并保持约 3 秒,即可触发翻牌。
  4. 揭示:牌面翻转并展示牌名与释义。
  5. 对谈:若已配置 DeepSeek API,将自动收到一段基于你问题与牌面的解读;你可以在下方输入框中继续追问,进行多轮对话。

常用命令补充

  • 构建生产版本npm run build,产物在 dist 目录。
  • 本地预览构建结果npm run build 后再执行 npm run preview,可在本地模拟生产环境访问。

常见问题

  • 摄像头无法使用:请确认使用 HTTPS 或 localhost(多数浏览器仅在此环境下授权摄像头),并检查是否被其他应用占用。
  • 手势无反应:确保手部在画面内、光线充足;若仍无效,可打开开发者工具查看是否有 MediaPipe 或摄像头相关报错。
  • AI 无回复或报错:检查 DeepSeek API Key 是否有效、网络是否能访问 DeepSeek 接口,以及 services/api.ts 中的接口地址与参数是否正确。

按照以上步骤,即可在本地完整体验 CyberArcanum 赛博秘仪 的仪式闭环。若有问题,欢迎在仓库提 Issue 或参与贡献。

CyberArcanum 賽博秘儀:當AI與塔羅相遇,我用程式碼重構了一場數字時代的占卜儀式

第一部分:The Vision —— 當神秘學的儀式感,撞上數字時代的代碼 它的靈魂,藏在洗牌時指尖的觸感、切牌時專注的呼吸、抽牌時心跳的停頓裡——這一整套完整的儀式,本質是讓你從浮躁的日常裡抽離,沉下心來直面自己的困惑;而 78 張阿卡納牌的符號,不過是你內心潛意識的投射載體。

來源:https://blog.csdn.net/2403_87969572/article/details/158544724

抓取時間(ISO本地):2026-05-18 05:17:41


前言

談論 AI 的時候,我們總在談論引數、算力、準確率。我們把它塞進對話方塊、表格、程式碼編輯器裡,讓它成為高效的工具,卻忘了它也可以成為一扇門——一扇通往內心,連線傳統神秘學與未來科技的門,一扇給我們帶來更多有幫助、更多有意思內容的門。

這就是我做 CyberArcanum 賽博秘儀 的全部理由:讓 AI 不再是冰冷的文字框,而是一位帶著儀式感,陪你向內探索的數字導師。

當前開源實現以 Mystic Vision Tarot(靈啟萬物) 為名,完整保留了「手勢選牌 + 握拳定契 + AI 解牌與多輪對談」的儀式閉環,你可以直接在本地跑通並體驗。


第一部分:The Vision —— 當神秘學的儀式感,撞上數字時代的程式碼

傳統塔羅的核心,從來不是「預知未來」。

它的靈魂,藏在洗牌時指尖的觸感、切牌時專注的呼吸、抽牌時心跳的停頓裡——這一整套完整的儀式,本質是讓你從浮躁的日常裡抽離,沉下心來直面自己的困惑;而 78 張阿卡納牌的符號,不過是你內心潛意識的投射載體。

但我見過太多數字塔羅產品,把這套充滿力量的儀式,簡化成了一個「點選抽卡」的按鈕、一段複製貼上的通用牌意、一個只會輸出套話的 AI 對話方塊。它們用科技消解了神秘,用效率殺死了共情,最終變成了毫無靈魂的娛樂玩具。

我想做的事恰恰相反:用最前沿的前端技術、計算機視覺、大語言模型,完整重構塔羅占卜的儀式閉環。不是用程式碼解構神秘,而是用程式碼為神秘賦能,讓千百年流傳的向內探索的智慧,在數字世界裡,獲得更有沉浸感、更有共情力的新生。

在這裡插入圖片描述


第二部分:The Experience —— 一場完整的沉浸式數字占卜儀式

CyberArcanum 的核心設計準則,是把「儀式感」刻進每一個畫素、每一次互動裡。從你開啟應用的那一刻起,你就進入了一個專屬的、幽暗而充滿力量的秘儀空間,每一步操作,都是占卜儀式不可分割的一部分。

1. 啟程:向秘儀袒露你的困惑

開啟應用,首先迎接你的不是繁雜的功能選單,而是一片緩慢流動的暗紫色星雲與深邃背景,幽微的星光粒子點綴其間。介面中央是「Mystic Vision」的標題與一行引導語,以及一個極簡的、暗金描邊風格的輸入框:

燒錄你的疑惑 · Engrave Thy Inquiry

沒有「必填項」的紅色提示,沒有苛刻的字數限制,你可以寫下關於職業、感情、成長的任何困惑,也可以只是一句「我想看看當下的狀態」。例如:「我近期的事業發展如何?」在這裡,你不需要迎合任何規則,只需要對自己坦誠。

當你寫下困惑並點選 ASCEND(啟程) 按鈕的那一刻,攝像頭將在此後悄然啟動,背景與狀態文案會引導你進入下一幕——共鳴

在這裡插入圖片描述

2. 共鳴:在虛空之中,撥動命運的牌陣

這是整個產品最核心的創新——我們徹底拋棄了「點選選牌」的傳統互動,用 Google MediaPipe 的計算機視覺能力,讓你用自己的手,在虛空之中完成選牌的儀式。

點選啟程並授權攝像頭後,介面會提示:「揮動手部移動,握拳 3 秒翻開命運」。此時,所有攝像頭畫面均在本地處理,絕不會上傳到任何伺服器。介面中央是一副塔羅牌陣:多張大阿卡納牌以 3D 透視的方式排開,當前選中的牌位於正中,兩側牌面隨透視逐漸隱入暗處。當你的手出現在畫面中,MediaPipe 會以穩定幀率實時捕捉你手部的 21 個 3D 關鍵點

你只需要向左或向右揮動手掌,整副牌陣就會隨著你手部的水平位移同步滾動——就像你真的在虛空之中,用手指撥動命運的牌。當前選中的牌會高亮並帶有微弱光暈,左右兩側有「LEFT」「FIST」「RIGHT」的儀式化提示:揮動選牌,握拳定契。

當你找到那張與你共鳴的牌並停下揮動,選牌的儀式,就此完成。

在這裡插入圖片描述

3. 定契:以握拳之誓,鎖定你的牌面

傳統塔羅裡,定牌是整個儀式裡最神聖的環節——一旦選定,便不可更改,這是你與牌之間的契約。

在 CyberArcanum 裡,我們沒有用一個冰冷的「確認」按鈕來完成這個環節,而是設計了握拳三秒定契的互動。當你在牌陣中選好當前牌面後,介面會持續提示你:

握拳 3 秒,翻開命運。

當你握緊拳頭,MediaPipe 會實時識別握拳手勢(透過指尖與手掌根部的相對位置判斷手指是否蜷曲)。識別邏輯在端側完成:當多根手指的指尖相對手腕的距離小於指節相對手腕的距離時,視為握拳。一旦握拳狀態連續保持約 3 秒,便會觸發定契——沒有撤銷,沒有重選,你必須為自己的選擇負責。這,就是儀式的力量。

4. 揭示:命運的牌面,在此刻緩緩掀開

定契完成,便到了整個儀式最有張力的環節——翻牌

當前選中的那張牌會從牌背緩緩翻轉,暗金紋樣與神秘符號的牌背逐漸被牌面取代,正面的阿卡納牌圖與牌名(中英雙語)、基礎釋義,一點點呈現在你眼前。狀態文案變為「星象已現 · 宿命歸位」。翻牌動效與 3D 透視、背反隱藏(backface-hidden)結合,讓一張牌從「未選中」到「翻開」的過渡充滿張力。

每一張牌翻開的瞬間,都是留給你和自己內心對話的時間。當牌面完全掀開,介面的光線會穩定下來,牌面的能量在此刻完全釋放,並同時開啟下一幕——對談

在這裡插入圖片描述

5. 對談:AI 導師的深度解讀,與無界的追問

牌面不是終點,而是對話的起點。這也是 CyberArcanum 和很多塔羅產品最核心的區別:我們沒有給你一段固定的、複製貼上的牌意,而是用 DeepSeek API,為你打造了一位真正懂牌、懂你、有溫度的 Mystic Vision 導師

牌面翻開的同時,會向 AI 傳送一段結構化提示:你的初始困惑、抽中的塔羅牌名稱(中英文)、牌面基礎釋義。DeepSeek 會基於這些資訊,生成一段專屬的、流式輸出的深度解讀。它不會給你非黑即白的「算命結果」,也不會說模稜兩可的套話,而是會把塔羅牌的符號寓意和你的具體處境結合起來,幫你梳理當下的狀態,看見內心忽略的情緒,找到困惑的核心。

更重要的是,支援完整的多輪上下文對話。你可以隨時在輸入框中追問,例如:

  • 「這張牌給我的最大警示是什麼?」
  • 「我該怎麼突破當下的這個困境?」
  • 「如果我選擇了這個方向,牌面給我的提示是什麼?」

DeepSeek 會完整記住你最初的問題、牌面資訊、以及之前的全部對話,像一位真正資深的塔羅師一樣,陪著你一步步向內探索。回覆以 Markdown 渲染(標題、加粗、列表等),閱讀體驗更清晰。AI 在這裡不是算命的工具,而是陪你和自己對話的橋樑。

在這裡插入圖片描述


第三部分:The Tech Stack —— 藏在儀式感背後的技術實現

所有極致的體驗,都離不開紮實的技術支撐。當前倉庫(Mystic Vision Tarot)的技術架構,始終圍繞著「沉浸式體驗」與「儀式閉環」搭建,每一個技術選型,都為了讓儀式感更完整、互動更流暢、解讀更有溫度。

前端架構:React + TypeScript + Vite

這是經過驗證的、非常適合本專案的技術組合,核心解決了兩點:開發效率執行與構建效能

  • Vite:毫秒級冷啟動與熱更新,在除錯複雜翻牌動效與手勢互動時,可以實時預覽每一幀的細節。構建階段能產出體積與載入速度都可控的靜態資源,配合開發伺服器配置(如埠 3000、host: '0.0.0.0'),本地與區域網體驗都很順暢。
  • React:元件化架構讓「輸入模組、手勢識別與攝像頭、牌陣與翻牌、對話模組」可以清晰解耦,狀態透過 useState / useRef / useCallback 管理,翻牌與選牌邏輯集中在主元件內,可維護性高。React 19 與現代 Hooks 為非同步流與 ref 同步提供了穩定基礎。
  • TypeScript:在多模組、多 API 對接(MediaPipe 手勢資料、DeepSeek 流式介面、塔羅牌資料與訊息型別)的場景下,型別安全能在開發階段規避大量潛在問題,互動狀態流轉也更清晰可控。

手勢與攝像頭:Google MediaPipe 端側計算機視覺

整個產品最具辨識度的手勢互動,完全基於 Google MediaPipe 實現,核心優勢是:低延遲隱私安全

  • @mediapipe/hands:在瀏覽器端實時檢測手部 21 個 3D 關鍵點(landmarks),透過 CDN 引入,無需後端參與。初始化時設定 maxNumHands: 1minDetectionConfidenceminTrackingConfidence(如 0.6),在弱光下也能保持穩定識別。
  • @mediapipe/camera_utils:負責從裝置攝像頭取幀並驅動 Hands 模型。影片流繫結到頁面內一個隱藏的 <video> 元素,每一幀透過 hands.send({ image: videoElement }) 送入模型,在 onResults 回撥中拿到 multiHandLandmarks
  • 互動邏輯
    • 選牌:取第一隻手的手腕或掌心關鍵點的水平座標 x,與上一幀比較,若水平位移超過閾值(如 0.02),則根據方向遞增或遞減當前選牌索引,實現牌陣左右滾動。
    • 握拳定契:自定義 checkIsFist(landmarks),根據 MediaPipe 的 21 點索引(如指尖 8、12、16、20,指節 6、10、14、18,手腕 0),計算指尖到手腕的距離與指節到手腕的距離;當「指尖更靠近手腕」的手指數量達到設定數量(如 ≥3),判定為握拳。握拳狀態持續 3000ms 後觸發翻牌;若中途鬆開超過約 1.2 秒,則重置計時,避免誤觸。
  • 隱私:所有攝像頭畫面的處理與手勢識別均在使用者本地完成,不會將影片或影象上傳到雲端,既保證低延遲,也守護隱私。

解牌與對話:DeepSeek API 流式多輪對話

當前版本的解牌與多輪對話全部由 DeepSeek API 驅動。

  • 系統角色:在請求中固定一位「資深塔羅牌占卜師 · Mystic Vision」的系統提示,要求根據牌面含義與使用者問題,用專業、神秘且富有同理心的語調,以 Markdown 輸出解讀。
  • 流式輸出:使用 DeepSeek 的 stream: true 介面,服務端以 SSE 形式返回 token,前端逐 chunk 拼接到當前助手訊息並觸發重繪,配合 marked 實時渲染 Markdown,形成「打字機」式的閱讀體驗。
  • 上下文:每次使用者傳送訊息時,將「歷史對話 + 當前使用者輸入」一併傳送;翻牌後的首條解讀則使用「占卜啟動」專用 prompt(包含使用者問題、選中牌名與釋義),保證首答緊扣牌面與問題。這樣即可實現長上下文、多輪追問,AI 不會忘記你的問題與之前的對話。

專案中依賴裡仍保留 @google/genai,便於未來擴充套件多模態或其它模型;當前線上解牌與對話鏈路以 DeepSeek 為主。


第四部分:結語與展望

CyberArcanum 從來不是一個「用 AI 算命」的玩具。

做這個專案的初心,是想證明一件事:科技從來不是人文的對立面,程式碼也從來不是冰冷的符號。我們可以用最前沿的計算機視覺、大語言模型、前端技術,去守護千百年流傳下來的、人類向內探索的智慧;我們可以用程式碼,重構一場充滿儀式感的占卜,讓 AI 不再是對話方塊裡的工具,而是能陪你對話、陪你探索、陪你直面內心的夥伴。

傳統神秘學的核心,是「看見自己」;而 AI 的能力,是幫我們更清晰地看見。當這兩者相遇,便有了 CyberArcanum 賽博秘儀。

體驗與開源

歡迎大家來體驗這場數字時代的占卜儀式,也歡迎所有開發者一起參與進來,完善這個賽博秘儀的世界。未來,還會加入更多牌陣、更豐富的手勢互動、以及語音對話等能力,讓這場向內探索的旅程,有更多可能性。


第五部分:如何本地啟動 —— 從零跑通賽博秘儀

下面步驟可以讓你在本地完整執行 Mystic Vision Tarot 專案,無需部署即可體驗「啟程 → 手勢選牌 → 握拳定契 → 翻牌 → AI 對談」的完整流程。

環境要求

  • Node.js:建議 v18 或以上(推薦 LTS 版本),用於執行 npm 與 Vite。
  • 瀏覽器:支援攝像頭與現代 JavaScript 的瀏覽器(如 Chrome、Edge、Firefox、Safari)。手勢識別在 Chrome 繫上表現最穩定。
  • 網路:首次安裝依賴需要訪問 npm 源;執行時需能訪問 DeepSeek API(若已配置)及 MediaPipe 的 CDN(cdn.jsdelivr.net)。

步驟一:獲取專案程式碼

若專案已在 Git 倉庫中,可克隆:

git clone <你的倉庫地址>
cd mystic-vision-tarot

若只有壓縮包,解壓後進入專案根目錄即可:

cd mystic-vision-tarot

步驟二:安裝依賴

在專案根目錄執行:

npm install

等待依賴安裝完成(包含 React、Vite、TypeScript、marked 等)。若使用國內網路,可配置 npm 映象以加速(如 npm config set registry https://registry.npmmirror.com)。

步驟三:配置 DeepSeek API(可選但推薦)

解牌與對話依賴 DeepSeek API。當前實現中,API Key 在 services/api.ts 內配置;若你希望使用自己的 Key,可:

  • 開啟 services/api.ts,找到 DEEPSEEK_API_KEY,替換為你自己的 Key;
  • 或透過環境變數 / 構建時注入(需在程式碼中改為讀取 import.meta.env 等),避免把 Key 提交到倉庫。

若暫時不配置,翻牌與介面仍可正常使用,僅 AI 解讀請求會失敗,可根據控制檯報錯排查。

步驟四:啟動開發伺服器

在專案根目錄執行:

npm run dev

終端中會輸出類似:

  VITE v6.x.x  ready in xxx ms
  ➜  Local:   http://localhost:3000/
  ➜  Network: http://192.168.x.x:3000/

表示開發伺服器已啟動。預設埠為 3000(在 vite.config.ts 中配置)。

步驟五:在瀏覽器中開啟並授權攝像頭

  1. 在瀏覽器位址列輸入:**http://localhost:3000/**(或終端裡顯示的 Local 地址)。
  2. 若為首次訪問,瀏覽器可能會請求攝像頭許可權,請選擇「允許」。攝像頭僅用於本地手勢識別,畫面不會上傳。
  3. 頁面載入後,先等待幾秒,直到介面出現「占卜引擎已就緒」或「ASCEND」按鈕可點選,表示 MediaPipe 手部模型已載入完成。

步驟六:完整體驗流程

  1. 啟程:在「燒錄你的疑惑」輸入框中寫下你的問題(例如「我近期的事業發展如何?」),點選 ASCEND
  2. 共鳴:允許攝像頭後,在鏡頭前左右揮動手掌,觀察牌陣隨手勢左右切換,選中心儀的那張牌。
  3. 定契:選好後握拳並保持約 3 秒,即可觸發翻牌。
  4. 揭示:牌面翻轉並展示牌名與釋義。
  5. 對談:若已配置 DeepSeek API,將自動收到一段基於你問題與牌面的解讀;你可以在下方輸入框中繼續追問,進行多輪對話。

常用命令補充

  • 構建生產版本npm run build,產物在 dist 目錄。
  • 本地預覽構建結果npm run build 後再執行 npm run preview,可在本地模擬生產環境訪問。

常見問題

  • 攝像頭無法使用:請確認使用 HTTPS 或 localhost(多數瀏覽器僅在此環境下授權攝像頭),並檢查是否被其他應用佔用。
  • 手勢無反應:確保手部在畫面內、光線充足;若仍無效,可開啟開發者工具檢視是否有 MediaPipe 或攝像頭相關報錯。
  • AI 無回覆或報錯:檢查 DeepSeek API Key 是否有效、網路是否能訪問 DeepSeek 介面,以及 services/api.ts 中的介面地址與引數是否正確。

按照以上步驟,即可在本地完整體驗 CyberArcanum 賽博秘儀 的儀式閉環。若有問題,歡迎在倉庫提 Issue 或參與貢獻。

CyberArcanum 赛博秘仪:当AI与塔罗相遇,我用代码重构了一场数字时代的占卜仪式

cd mystic-vision-tarot cd mystic-vision-tarot VITE v6.x ready in xxx ms


前言

谈论 AI 的时候,我们总在谈论参数、算力、准确率。我们把它塞进对话框、表格、代码编辑器里,让它成为高效的工具,却忘了它也可以成为一扇门——一扇通往内心,连接传统神秘学与未来科技的门,一扇给我们带来更多有帮助、更多有意思内容的门。

这就是我做 CyberArcanum 赛博秘仪 的全部理由:让 AI 不再是冰冷的文本框,而是一位带着仪式感,陪你向内探索的数字导师。

当前开源实现以 Mystic Vision Tarot(灵启万物) 为名,完整保留了「手势选牌 + 握拳定契 + AI 解牌与多轮对谈」的仪式闭环,你可以直接在本地跑通并体验。


第一部分:The Vision —— 当神秘学的仪式感,撞上数字时代的代码

传统塔罗的核心,从来不是「预知未来」。

它的灵魂,藏在洗牌时指尖的触感、切牌时专注的呼吸、抽牌时心跳的停顿里——这一整套完整的仪式,本质是让你从浮躁的日常里抽离,沉下心来直面自己的困惑;而 78 张阿卡纳牌的符号,不过是你内心潜意识的投射载体。

但我见过太多数字塔罗产品,把这套充满力量的仪式,简化成了一个「点击抽卡」的按钮、一段复制粘贴的通用牌意、一个只会输出套话的 AI 对话框。它们用科技消解了神秘,用效率杀死了共情,最终变成了毫无灵魂的娱乐玩具。

我想做的事恰恰相反:用最前沿的前端技术、计算机视觉、大语言模型,完整重构塔罗占卜的仪式闭环。不是用代码解构神秘,而是用代码为神秘赋能,让千百年流传的向内探索的智慧,在数字世界里,获得更有沉浸感、更有共情力的新生。

在这里插入图片描述


第二部分:The Experience —— 一场完整的沉浸式数字占卜仪式

CyberArcanum 的核心设计准则,是把「仪式感」刻进每一个像素、每一次交互里。从你打开应用的那一刻起,你就进入了一个专属的、幽暗而充满力量的秘仪空间,每一步操作,都是占卜仪式不可分割的一部分。

1. 启程:向秘仪袒露你的困惑

打开应用,首先迎接你的不是繁杂的功能菜单,而是一片缓慢流动的暗紫色星云与深邃背景,幽微的星光粒子点缀其间。界面中央是「Mystic Vision」的标题与一行引导语,以及一个极简的、暗金描边风格的输入框:

刻录你的疑惑 · Engrave Thy Inquiry

没有「必填项」的红色提示,没有苛刻的字数限制,你可以写下关于职业、感情、成长的任何困惑,也可以只是一句「我想看看当下的状态」。例如:「我近期的事业发展如何?」在这里,你不需要迎合任何规则,只需要对自己坦诚。

当你写下困惑并点击 ASCEND(启程) 按钮的那一刻,摄像头将在此后悄然启动,背景与状态文案会引导你进入下一幕——共鸣

在这里插入图片描述

2. 共鸣:在虚空之中,拨动命运的牌阵

这是整个产品最核心的创新——我们彻底抛弃了「点击选牌」的传统交互,用 Google MediaPipe 的计算机视觉能力,让你用自己的手,在虚空之中完成选牌的仪式。

点击启程并授权摄像头后,界面会提示:「挥动手部移动,握拳 3 秒翻开命运」。此时,所有摄像头画面均在本地处理,绝不会上传到任何服务器。界面中央是一副塔罗牌阵:多张大阿卡纳牌以 3D 透视的方式排开,当前选中的牌位于正中,两侧牌面随透视逐渐隐入暗处。当你的手出现在画面中,MediaPipe 会以稳定帧率实时捕捉你手部的 21 个 3D 关键点

你只需要向左或向右挥动手掌,整副牌阵就会随着你手部的水平位移同步滚动——就像你真的在虚空之中,用手指拨动命运的牌。当前选中的牌会高亮并带有微弱光晕,左右两侧有「LEFT」「FIST」「RIGHT」的仪式化提示:挥动选牌,握拳定契。

当你找到那张与你共鸣的牌并停下挥动,选牌的仪式,就此完成。

在这里插入图片描述

3. 定契:以握拳之誓,锁定你的牌面

传统塔罗里,定牌是整个仪式里最神圣的环节——一旦选定,便不可更改,这是你与牌之间的契约。

在 CyberArcanum 里,我们没有用一个冰冷的「确认」按钮来完成这个环节,而是设计了握拳三秒定契的交互。当你在牌阵中选好当前牌面后,界面会持续提示你:

握拳 3 秒,翻开命运。

当你握紧拳头,MediaPipe 会实时识别握拳手势(通过指尖与手掌根部的相对位置判断手指是否蜷曲)。识别逻辑在端侧完成:当多根手指的指尖相对手腕的距离小于指节相对手腕的距离时,视为握拳。一旦握拳状态连续保持约 3 秒,便会触发定契——没有撤销,没有重选,你必须为自己的选择负责。这,就是仪式的力量。

4. 揭示:命运的牌面,在此刻缓缓掀开

定契完成,便到了整个仪式最有张力的环节——翻牌

当前选中的那张牌会从牌背缓缓翻转,暗金纹样与神秘符号的牌背逐渐被牌面取代,正面的阿卡纳牌图与牌名(中英双语)、基础释义,一点点呈现在你眼前。状态文案变为「星象已现 · 宿命归位」。翻牌动效与 3D 透视、背反隐藏(backface-hidden)结合,让一张牌从「未选中」到「翻开」的过渡充满张力。

每一张牌翻开的瞬间,都是留给你和自己内心对话的时间。当牌面完全掀开,界面的光线会稳定下来,牌面的能量在此刻完全释放,并同时开启下一幕——对谈

在这里插入图片描述

5. 对谈:AI 导师的深度解读,与无界的追问

牌面不是终点,而是对话的起点。这也是 CyberArcanum 和很多塔罗产品最核心的区别:我们没有给你一段固定的、复制粘贴的牌意,而是用 DeepSeek API,为你打造了一位真正懂牌、懂你、有温度的 Mystic Vision 导师

牌面翻开的同时,会向 AI 发送一段结构化提示:你的初始困惑、抽中的塔罗牌名称(中英文)、牌面基础释义。DeepSeek 会基于这些信息,生成一段专属的、流式输出的深度解读。它不会给你非黑即白的「算命结果」,也不会说模棱两可的套话,而是会把塔罗牌的符号寓意和你的具体处境结合起来,帮你梳理当下的状态,看见内心忽略的情绪,找到困惑的核心。

更重要的是,支持完整的多轮上下文对话。你可以随时在输入框中追问,例如:

  • 「这张牌给我的最大警示是什么?」
  • 「我该怎么突破当下的这个困境?」
  • 「如果我选择了这个方向,牌面给我的提示是什么?」

DeepSeek 会完整记住你最初的问题、牌面信息、以及之前的全部对话,像一位真正资深的塔罗师一样,陪着你一步步向内探索。回复以 Markdown 渲染(标题、加粗、列表等),阅读体验更清晰。AI 在这里不是算命的工具,而是陪你和自己对话的桥梁。

在这里插入图片描述


第三部分:The Tech Stack —— 藏在仪式感背后的技术实现

所有极致的体验,都离不开扎实的技术支撑。当前仓库(Mystic Vision Tarot)的技术架构,始终围绕着「沉浸式体验」与「仪式闭环」搭建,每一个技术选型,都为了让仪式感更完整、交互更流畅、解读更有温度。

前端架构:React + TypeScript + Vite

这是经过验证的、非常适合本项目的技术组合,核心解决了两点:开发效率运行与构建性能

  • Vite:毫秒级冷启动与热更新,在调试复杂翻牌动效与手势交互时,可以实时预览每一帧的细节。构建阶段能产出体积与加载速度都可控的静态资源,配合开发服务器配置(如端口 3000、host: '0.0.0.0'),本地与局域网体验都很顺畅。
  • React:组件化架构让「输入模块、手势识别与摄像头、牌阵与翻牌、对话模块」可以清晰解耦,状态通过 useState / useRef / useCallback 管理,翻牌与选牌逻辑集中在主组件内,可维护性高。React 19 与现代 Hooks 为异步流与 ref 同步提供了稳定基础。
  • TypeScript:在多模块、多 API 对接(MediaPipe 手势数据、DeepSeek 流式接口、塔罗牌数据与消息类型)的场景下,类型安全能在开发阶段规避大量潜在问题,交互状态流转也更清晰可控。

手势与摄像头:Google MediaPipe 端侧计算机视觉

整个产品最具辨识度的手势交互,完全基于 Google MediaPipe 实现,核心优势是:低延迟隐私安全

  • @mediapipe/hands:在浏览器端实时检测手部 21 个 3D 关键点(landmarks),通过 CDN 引入,无需后端参与。初始化时设置 maxNumHands: 1minDetectionConfidenceminTrackingConfidence(如 0.6),在弱光下也能保持稳定识别。
  • @mediapipe/camera_utils:负责从设备摄像头取帧并驱动 Hands 模型。视频流绑定到页面内一个隐藏的 <video> 元素,每一帧通过 hands.send({ image: videoElement }) 送入模型,在 onResults 回调中拿到 multiHandLandmarks
  • 交互逻辑
    • 选牌:取第一只手的手腕或掌心关键点的水平坐标 x,与上一帧比较,若水平位移超过阈值(如 0.02),则根据方向递增或递减当前选牌索引,实现牌阵左右滚动。
    • 握拳定契:自定义 checkIsFist(landmarks),根据 MediaPipe 的 21 点索引(如指尖 8、12、16、20,指节 6、10、14、18,手腕 0),计算指尖到手腕的距离与指节到手腕的距离;当「指尖更靠近手腕」的手指数量达到设定数量(如 ≥3),判定为握拳。握拳状态持续 3000ms 后触发翻牌;若中途松开超过约 1.2 秒,则重置计时,避免误触。
  • 隐私:所有摄像头画面的处理与手势识别均在用户本地完成,不会将视频或图像上传到云端,既保证低延迟,也守护隐私。

解牌与对话:DeepSeek API 流式多轮对话

当前版本的解牌与多轮对话全部由 DeepSeek API 驱动。

  • 系统角色:在请求中固定一位「资深塔罗牌占卜师 · Mystic Vision」的系统提示,要求根据牌面含义与用户问题,用专业、神秘且富有同理心的语调,以 Markdown 输出解读。
  • 流式输出:使用 DeepSeek 的 stream: true 接口,服务端以 SSE 形式返回 token,前端逐 chunk 拼接到当前助手消息并触发重绘,配合 marked 实时渲染 Markdown,形成「打字机」式的阅读体验。
  • 上下文:每次用户发送消息时,将「历史对话 + 当前用户输入」一并发送;翻牌后的首条解读则使用「占卜启动」专用 prompt(包含用户问题、选中牌名与释义),保证首答紧扣牌面与问题。这样即可实现长上下文、多轮追问,AI 不会忘记你的问题与之前的对话。

项目中依赖里仍保留 @google/genai,便于未来扩展多模态或其它模型;当前线上解牌与对话链路以 DeepSeek 为主。


第四部分:结语与展望

CyberArcanum 从来不是一个「用 AI 算命」的玩具。

做这个项目的初心,是想证明一件事:科技从来不是人文的对立面,代码也从来不是冰冷的符号。我们可以用最前沿的计算机视觉、大语言模型、前端技术,去守护千百年流传下来的、人类向内探索的智慧;我们可以用代码,重构一场充满仪式感的占卜,让 AI 不再是对话框里的工具,而是能陪你对话、陪你探索、陪你直面内心的伙伴。

传统神秘学的内核,是「看见自己」;而 AI 的能力,是帮我们更清晰地看见。当这两者相遇,便有了 CyberArcanum 赛博秘仪。

体验与开源

欢迎大家来体验这场数字时代的占卜仪式,也欢迎所有开发者一起参与进来,完善这个赛博秘仪的世界。未来,还会加入更多牌阵、更丰富的手势交互、以及语音对话等能力,让这场向内探索的旅程,有更多可能性。


第五部分:如何本地启动 —— 从零跑通赛博秘仪

下面步骤可以让你在本地完整运行 Mystic Vision Tarot 项目,无需部署即可体验「启程 → 手势选牌 → 握拳定契 → 翻牌 → AI 对谈」的完整流程。

环境要求

  • Node.js:建议 v18 或以上(推荐 LTS 版本),用于运行 npm 与 Vite。
  • 浏览器:支持摄像头与现代 JavaScript 的浏览器(如 Chrome、Edge、Firefox、Safari)。手势识别在 Chrome 系上表现最稳定。
  • 网络:首次安装依赖需要访问 npm 源;运行时需能访问 DeepSeek API(若已配置)及 MediaPipe 的 CDN(cdn.jsdelivr.net)。

步骤一:获取项目代码

若项目已在 Git 仓库中,可克隆:

git clone <你的仓库地址>
cd mystic-vision-tarot

若只有压缩包,解压后进入项目根目录即可:

cd mystic-vision-tarot

步骤二:安装依赖

在项目根目录执行:

npm install

等待依赖安装完成(包含 React、Vite、TypeScript、marked 等)。若使用国内网络,可配置 npm 镜像以加速(如 npm config set registry https://registry.npmmirror.com)。

步骤三:配置 DeepSeek API(可选但推荐)

解牌与对话依赖 DeepSeek API。当前实现中,API Key 在 services/api.ts 内配置;若你希望使用自己的 Key,可:

  • 打开 services/api.ts,找到 DEEPSEEK_API_KEY,替换为你自己的 Key;
  • 或通过环境变量 / 构建时注入(需在代码中改为读取 import.meta.env 等),避免把 Key 提交到仓库。

若暂时不配置,翻牌与界面仍可正常使用,仅 AI 解读请求会失败,可根据控制台报错排查。

步骤四:启动开发服务器

在项目根目录执行:

npm run dev

终端中会输出类似:

  VITE v6.x.x  ready in xxx ms
  ➜  Local:   http://localhost:3000/
  ➜  Network: http://192.168.x.x:3000/

表示开发服务器已启动。默认端口为 3000(在 vite.config.ts 中配置)。

步骤五:在浏览器中打开并授权摄像头

  1. 在浏览器地址栏输入:**http://localhost:3000/**(或终端里显示的 Local 地址)。
  2. 若为首次访问,浏览器可能会请求摄像头权限,请选择「允许」。摄像头仅用于本地手势识别,画面不会上传。
  3. 页面加载后,先等待几秒,直到界面出现「占卜引擎已就绪」或「ASCEND」按钮可点击,表示 MediaPipe 手部模型已加载完成。

步骤六:完整体验流程

  1. 启程:在「刻录你的疑惑」输入框中写下你的问题(例如「我近期的事业发展如何?」),点击 ASCEND
  2. 共鸣:允许摄像头后,在镜头前左右挥动手掌,观察牌阵随手势左右切换,选中心仪的那张牌。
  3. 定契:选好后握拳并保持约 3 秒,即可触发翻牌。
  4. 揭示:牌面翻转并展示牌名与释义。
  5. 对谈:若已配置 DeepSeek API,将自动收到一段基于你问题与牌面的解读;你可以在下方输入框中继续追问,进行多轮对话。

常用命令补充

  • 构建生产版本npm run build,产物在 dist 目录。
  • 本地预览构建结果npm run build 后再执行 npm run preview,可在本地模拟生产环境访问。

常见问题

  • 摄像头无法使用:请确认使用 HTTPS 或 localhost(多数浏览器仅在此环境下授权摄像头),并检查是否被其他应用占用。
  • 手势无反应:确保手部在画面内、光线充足;若仍无效,可打开开发者工具查看是否有 MediaPipe 或摄像头相关报错。
  • AI 无回复或报错:检查 DeepSeek API Key 是否有效、网络是否能访问 DeepSeek 接口,以及 services/api.ts 中的接口地址与参数是否正确。

按照以上步骤,即可在本地完整体验 CyberArcanum 赛博秘仪 的仪式闭环。若有问题,欢迎在仓库提 Issue 或参与贡献。