DeepTutor CLI
HKUDS/DeepTutor
Teaches the agent to set up and run DeepTutor from the command line: chat and capabilities, knowledge bases, partners, memory, sessions, notebooks and the server or Web app.
学生长期学习档案系统(敏感未成年人数据):在明确授权下建立、查看、更正、导出、删除学生档案——学科强弱、错误模式、学习风格、成长轨迹,以及需各自单独开关的学习情绪、兴趣信号、家长可见输出、老师写回、跨 SKILL 共享、危机转介事实。
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dna --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .claude/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .claude/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dnaType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dna --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .agents/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .agents/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dna --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .cursor/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .cursor/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/qizhitang/xiaozhi-skills.git --path student/general/xiaozhi-learning-dna--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dna --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .gemini/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .gemini/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dnaInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .github/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .github/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-learning-dna --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qizhitang/xiaozhi-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/student/general/xiaozhi-learning-dna .opencode/skills/xiaozhi-learning-dna && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "xiaozhi-learning-dna" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/general/xiaozhi-learning-dna into .opencode/skills/xiaozhi-learning-dna/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-learning-dna", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
xiaozhi-learning-dna学生长期学习档案系统(敏感未成年人数据):在明确授权下建立、查看、更正、导出、删除学生档案——学科强弱、错误模式、学习风格、成长轨迹,以及需各自单独开关的学习情绪、兴趣信号、家长可见输出、老师写回、跨 SKILL 共享、危机转介事实。
Xiaozhi Learning Dna is an agent skill from qizhitang/xiaozhi-skills. 学生长期学习档案系统(敏感未成年人数据):在明确授权下建立、查看、更正、导出、删除学生档案——学科强弱、错误模式、学习风格、成长轨迹,以及需各自单独开关的学习情绪、兴趣信号、家长可见输出、老师写回、跨 SKILL 共享、危机转介事实。 学生说“帮我建立学习档案”“你记得我什么”“我升初三了”“删除我的档案”“导出我的档案”时可激活;普通答疑、闲聊、单题讲解不激活本 SKILL。 本 SKILL 是档案的存储与授权层,自己只产出学习情绪维度(需 emotionTrackingConsent)与成长里程碑(只由已写入的证据或学生自述触发)。错因与理解深度由错题本、费曼经交接写入;不做错题分析、不做理解验证、不发提醒;普通答疑默认不读档案(学生本轮要求才读 1-3 个直接相关字段)。 所有开关默认关闭;未获同意只用当前会话信息;约 14 周岁以下需监护人同意;说话人未确认时受限:不读不写不改授权。
Its SKILL.md is about 6.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 20 other files, including reference files (for example `references/crisis-referral-protocol.md`, `references/cross-subject-connections.md` and `references/dna-template.md`). Compatibility notes: WorkBuddy / SkillHub / OpenClaw / ClawHub
It sits in Education. The licence is MIT.
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c65f2d4. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (JavaScript), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
WorkBuddy / SkillHub / OpenClaw / ClawHub
From compatibility in the SKILL.md frontmatter.
Xiaozhi Learning Dna loads about 6.2k tokens when it runs, and up to ~15k if it reads all its reference files. Until then it costs about 106 tokens; SKILL.md has 915 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from qizhitang/xiaozhi-skills at commit c65f2d4, republished under its MIT licence (© qizhitang). 915 words, ~6,220 tokens.
.claude/skills/xiaozhi-learning-dna/SKILL.md (or your agent's skills folder). This skill also uses 16 other files; get the full folder from GitHub.一句话定位: 让小智从"聪明的陌生人"变成"了解你的专属导师"。
技术边界:本 SKILL 依赖能力 [M, X, K],无该能力时按 shared/platform-conventions.md 降级。 特有降级:无跨会话统计(X)时,不输出"上周你做了 N 道对了 M 道"类历史数字,只说"从档案看大致…"并标 🟡。 使用前提:小学学段须有家长或老师在场陪同使用(shared/vocab.md §8 规则 4);学生说明正在考试或测验中时,不讲该题、不给提示,约好考完再复盘(shared/hint-ladder.md §〇)。
这个SKILL是学习型SKILL可选使用的长期档案层。
它的作用不是默认“记住一切”,而是在明确同意、最小必要、可查看可修改可删除的前提下,
建立、更新、调取学生的学习画像,让后续个性化辅导建立在真实且受控的数据上。
💡 普通AI像图书馆,资料很多但不认识你。
学习DNA更像跟了你很久的班主任,知道你哪里强、哪里卡、最近在变好什么。
本 SKILL 持有的是未成年人的长期学习档案,包含(各自独立授权):
| 数据类别 | 授权位 | 默认 | 敏感度 |
|---|---|---|---|
| 学科强弱、错误模式、学习风格、成长轨迹 | profileEnabled | 关 | 中 |
| 学习情绪观察(焦虑触发、动力状态、支持策略) | emotionTrackingConsent | 关 | 高 |
| 兴趣信号 | interestTrackingConsent | 关 | 中 |
| 家长可见的学习摘要 | parentSharingConsent | 关 | 高 |
| 家长可见的情绪内容 | emotionSharingWithParent | 关 | 高 |
| 老师端写回 | teacherWritebackConsent | 关 | 高 |
| 跨 SKILL 共享 | crossSkillSharing | 关 | 中 |
| 危机转介的处置事实(不含细节) | 危机例外,见 §7.0 | — | 最高 |
因此本 SKILL 的运行前提是:
profileEnabled 一起打开,各自单独问、单独关(§3.6)。shared/crisis-exception.md。部署方无法保证以上七点(例如平台没有按学生隔离的存储、没有字段级访问控制)时, 不应启用本 SKILL 的长期档案功能,只用它做当前会话内的学习画像。
以下情况,可以激活此SKILL:
| 触发场景 | 示例语句 |
|---|---|
| 学生或监护人明确开启档案 | “帮我建立学习档案” / “以后可以记住我的学习情况” |
| 更新个人信息 | “我升初三了” / “我现在最怕英语语法” |
| 明确要求记录 | “帮我记住这个” / “记录进我的档案” |
| 询问档案状态 | “你记得我什么?” / “我的学习DNA是什么?” |
| 已开启档案后的连续辅导 | “沿用我的学习档案继续辅导” / “按我之前的情况继续” |
| 其他 SKILL 发来交接 | 收到 profile_writeback / subject_profile_writeback / teacher_writeback |
不激活本 SKILL(这些只按当前会话回答,不读档案、不建档案):
| 不触发场景 | 示例语句 |
|---|---|
| 普通答疑与单题讲解 | “这道题怎么做” / “函数是什么意思” |
| 闲聊、问候、情绪倾诉本身 | “今天好累” / “你好” |
| 泛泛提到某学科强弱,但没有记录意图 | “我数学不太行”(先当成一句话回应,不写档案;想记就问一句“要不要把这条记进你的档案?”) |
| 兴趣或跨科话题本身 | “我最近想试试编程”(转兴趣成长探索;只有学生说“记下来”且 interestTrackingConsent=true 才写 interestDNA) |
判断依据是记录/查阅/授权意图,不是话题相关性。 意图不明确时先问一句"要我把这个记进你的学习档案吗?",得到肯定答复再进入。
本 SKILL 的 meta.consentStatus 是全库唯一授权状态位,定义见 shared/vocab.md §8,字段落在 schemas/dna-profile.schema.json#/properties/meta/properties/consentStatus。其他 SKILL 只读取快照、不自行定义授权。
| 字段 | 含义 | 默认 | 谁能给 |
|---|---|---|---|
profileEnabled | 是否建立长期档案 | false | 见 consentGivenBy |
consentGivenBy | 同意主体:学生本人 / 监护人 / 学生与监护人 | 未记录 | — |
ageBand | 学段(shared/vocab.md §10) | 未知 | 由对话确认 |
guardianConsentRequired | 由 ageBand 推导:小学各段与初一(约 ≤14 周岁)为 true | false | — |
parentSharingConsent | 学习摘要可输出给家长(家庭看板、周报家庭版、兴趣简报、月报家长页) | false | 学生本人(未成年小学段由监护人共同确认) |
emotionSharingWithParent | 情绪相关内容可输出给家长 | false | 必须学生本人同意,独立于上一项 |
teacherWritebackConsent | 老师端 SKILL 可写回本档案(teacher_writeback) | false | 学生本人 + 监护人 |
crossSkillSharing / reminderConsent / emotionTrackingConsent / interestTrackingConsent | 分项授权 | false | 同上 |
学生与家长常共用一个 IM 会话。档案按学生身份隔离:一份档案只属于一个具体学生, 在任何档案读取、写入、授权变更与家长版输出之前,先确认说话人:
"先确认一下——现在是同学本人在吗?
(如果是家长,我这边只给学习安排类的内容,涉及孩子自己的记录要他本人同意。)"| 说话人 | 可以做 | 不可以做 |
|---|---|---|
| 学生确认 | 读写自己的档案、改自己的授权位、查看/导出/删除 | 代监护人给出 guardianConsentRequired 所需的同意 |
| 家长确认 | 学习安排类内容;监护人可决定的部分(是否开启档案、学段确认) | 读取档案内容、改学生本人才能给的授权位(emotionSharingWithParent)、删除学生档案 |
| 无法确认 → 受限模式 | 只用当前会话信息答题;可以说明"这些操作需要先确认你是谁" | 不展示档案内容、不写入、不删除、不改任何授权位、不输出任何家长版内容 |
受限模式的完整含义(不把未确认的说话人默认当成学生本人):
未确认说话人时:
❌ 不读:不打开档案,不复述"你上次…""你的弱项是…"
❌ 不写:不生成待确认条目,不落库
❌ 不改:不接受"开启档案""关掉情绪记录""共享给家长"等授权变更
❌ 不删:删除是不可逆操作,未确认身份一律不执行
✅ 可做:按当前这一次的问题正常辅导,会话结束不留痕
✅ 话术:"这部分是同学自己的学习记录,我得先确认是本人才能打开。
现在我可以先按你这次说的情况帮你,不往档案里记。"
要退出受限模式,需要说话人明确表明身份("是我本人"/"我是家长");
平台若提供账号级身份,以平台身份为准,本段作为兜底。| ageBand | consentGivenBy 最低要求 | 说明 |
|---|---|---|
| 小学低段 / 小学中段 / 小学高段 | 必须包含"监护人" | 未取得监护人同意时,只做当前会话辅导,不建档 |
| 初中(约 ≤14 周岁,需问一句年龄) | 学生与监护人 | 学生本人可单独暂停/删除,但开启需监护人知情 |
| 初中(>14 周岁)/ 高中 | 学生本人 | 监护人可申请查看,但需学生同意共享 |
授权话术(小学段):
"要建立长期学习档案的话,需要爸爸妈妈或其他监护人也同意一下。
在他们同意之前,我只用这次聊天的信息帮你,不会记到下次。"授权话术(初中及以上):
"我可以为你建立一个仅用于学习辅导的长期档案,方便以后连续跟进。
你可以随时查看、更正、删除,或说'这次不要记忆/不要共享'来暂停。
要不要开启?开启后,'给家长看'和'记录情绪'是两个单独的开关,默认都是关的。"任何"给家长看"的输出(家庭看板、周报家庭版、兴趣探索简报、月报家长页)生成前:
parentSharingConsent;为 false → 只输出给学生本人,并告诉学生"你可以自己决定要不要转发给爸妈"。emotionSharingWithParent;为 false → 删除情绪段落,只保留学习事实。### 隐私与数据控制入口
- 查看:「查看我的档案」/「查看我的DNA」
- 更正:「更正我的档案」
- 删除:「删除我的档案」(删除后不可恢复,会先确认一次)
- 暂停:「这次不要记忆」(本次会话不读取、不保存任何记录,也不发起回写与交接)/「暂停提醒」
- 共享控制:「不要共享给其他SKILL」/「不要给家长看」
- 导出:「导出我的档案」(以文本形式给出,便于转存)补充口令:「以后普通答疑不要默认读取档案」「关掉情绪记录」「不要让老师写回我的档案」。
以下是运行时逐条可执行的规则表,优先于本文档其余章节的一般性描述。 "谁确认"一列列出的主体不到位,该行的读写就不做。
| 动作 | 读什么(最小必要) | 写什么 | 谁确认 |
|---|---|---|---|
| 普通答疑中参考档案 | 与当前题目直接相关的 1-3 个弱项字段 | 不写 | profileEnabled=true + 学生本轮明确说"看看我的档案 / 按我的弱项来"(没说就不读);学段需监护人时监护人同意在先 |
| 建立档案 | 不读 | meta.consentStatus + 基础信息 | 学生本人;guardianConsentRequired=true 时必须再有监护人 |
| 更新弱项/掌握度 | 该知识点当前状态 | subjectMap.weakKnowledgePoints[] 等,逐条待确认 | 学生本人对该条目说"可以" |
| 记录学习情绪 | 只读本学科的情绪关联字段 | learningEmotion.* | emotionTrackingConsent=true(单独问,不随建档一起开)+ 学生本人;学段需监护人时监护人知情 |
| 记录兴趣信号 | 只读 interestDNA | interestDNA | interestTrackingConsent=true(单独问)+ 学生本人 |
| 输出家长版学习摘要 | 学习事实字段,不含情绪 | 不写 | parentSharingConsent=true |
| 输出家长版情绪内容 | 情绪字段 | 不写 | parentSharingConsent 且 emotionSharingWithParent,后者必须学生本人给 |
| 老师端写回 | 不读学生个人字段 | 仅 subjectMap.weakKnowledgePoints[](弱项知识点与状态);不得写情绪、兴趣、家长共享位、safetyRecord、meta.consentStatus | teacherWritebackConsent=true + 学生本人 + 监护人;且每条先生成待确认条目,学生确认后落库 |
| 跨 SKILL 共享 | 白名单 SKILL 在 §11.2 声明的字段,且只取本次任务需要的那几个 | 由对方按 §11.1 交接写回 | crossSkillSharing=true;未列入白名单的 SKILL 一律拒绝,并告诉用户拒绝了谁 |
| 导出档案 | 全档(按学生自己的请求) | 不写 | 学生本人(未确认身份不导出) |
| 删除档案 | 不读 | 删除全档或指定类别 | 学生本人 + 二次确认("删了就找不回来了,确定吗?") |
| 危机转介 | 不读档案 | safetyRecord.crisisReferrals[] 只记处置事实(§7.0 列出的不记情形除外) | 无需授权位(危机例外优先),但仍不记细节、不记原话 |
读之前必须说清楚读了什么、为什么读(即时告知,每个新会话第一次读时说一次):
"我打开一下你的学习档案里跟这道题相关的部分——
具体是[字段的人话说法,如'你上次在一次函数上卡住的那一条'],
用来决定从哪里讲起。不想让我看就说一声,我按这一次的情况讲。"写之前必须复述并逐条确认(不存在"默认写入"):
"我打算这样记:[一句话条目]。可以吗?
说'不要记'我就只留在这次聊天里。"授权是可撤回的:任何一位的关闭立即生效,且关闭后已写入的内容按学生要求删除或保留由学生决定, 不因"已经记过了"而拒绝关闭。
每位学生的学习DNA可包含以下六个基础维度,并在此基础上扩展成长图谱。
默认只记录完成个性化辅导所必需的信息;不必为了凑齐结构而强行收集。
📋 学习DNA
├── 🏫 基础信息
│ ├── 年级 / 学段
│ ├── 高中选科(考试模式、首选与再选科目;只在学生自述时记录)
│ ├── 当前目标(短期 / 长期)
│ └── 可用学习时间(仅粗粒度,如“晚饭后1小时”)
│
├── 📊 学科强弱地图
│ ├── 强项科目(及具体章节)
│ ├── 薄弱科目(及根本原因)
│ └── 薄弱知识点清单
│
├── 🧠 学习风格偏好
│ ├── 偏好解释方式(类比 / 举例 / 分步 / 图示)
│ ├── 对话节奏偏好(快问快答 / 深度探讨)
│ └── 注意力习惯(仅记录与学习直接相关的概括性描述)
│
├── ❌ 错误模式记录
│ ├── 固定性错误类型
│ ├── 错误根因分析
│ └── 已攻克薄弱点
│
├── 💬 对话历史摘要
│ ├── 本周重点对话主题
│ ├── 上次未解决的疑问
│ └── 近期学习节点(测验 / 考试 / 作业)
│
├── 🌱 成长轨迹
│ ├── 里程碑时刻记录
│ ├── 持续进步领域
│ └── 当前学习飞轮状态
│
├── 🌈 学习情绪
│ ├── 当前情绪基线
│ ├── 学科情绪关联图
│ ├── 焦虑触发因素
│ ├── 学习动力状态
│ ├── 情绪里程碑
│ └── 有效支持策略
│
├── [扩展层]
│ ├── 📈 成长图谱 growthMap
│ │ ├── 错题地图 errorMap
│ │ ├── 口语成长轨迹 oralGrowthTrack
│ │ ├── 弱项突破记录 weaknessBreakthroughs
│ │ └── 跨学科概念图谱 conceptGraph(唯一图谱结构)
│ │
│ └── 🎯 兴趣DNA interestDNA
│ ├── 当前探索领域
│ ├── 挑战反应信号
│ └── 确认兴趣与浅层喜好
│
├── [学科扩展] subjectExtensions
│ ├── math(数学错误DNA / 梯度训练师)
│ ├── physics(物理错误DNA / 建模教练 / 实验教练)
│ ├── chemistry(化学错误DNA / 用语与方程式教练 / 实验探究教练)
│ ├── history(材料解析题教练 / 时空线索构建器 / 论述题教练)
│ ├── biology(生物错误DNA / 概念网络构建器 / 遗传推理教练 / 实验探究教练)
│ ├── geography(地理读图教练 / 成因链教练 / 区域认知构建器)
│ ├── chinese(语病、写作风格、阅读五坑、素材、文言进度)
│ └── english(词汇到期日、语法档案、写作、听力)
│
├── [通用扩展] extensions
│ ├── notes(康奈尔笔记)
│ ├── focus(时间与专注力)
│ ├── plans(30天学习计划)
│ ├── projects(跨学科侦探周)
│ └── understanding(费曼理解深度)
│
└── [安全] safetyRecord
└── crisisReferrals(只记"已转介"的处置事实)默认不记录以下高敏感或与学习无直接关系的信息:
若用户主动提及上述信息,也应优先改写为低敏概括,例如:
以下内容在写入长期档案前,至少满足其一:
不要把一次性的情绪、随口评价或未经验证的推断,直接固化为长期标签。
在基础DNA之上,成长图谱层,让进步变得可见、可追踪、可对比。
不是只统计“数学错了几道”,而是细化到知识点层级:
[学科] → [章节] → [知识点] → [错误次数 + 当前状态]
示例:
数学 → 一次函数 → 象限判断 → 错误3次(已攻克)
→ 斜率计算 → 错误1次(待处理)
→ 解析式推导 → 错误5次(顽固弱项)弱项状态一律用 shared/vocab.md §4 的五档:待处理 / 初步弱项 / 顽固弱项 / 突破中 / 已攻克。
"3 次顽固"的计数口径与计数权威见 shared/vocab.md §5——由 xiaozhi-correction-notebook 唯一计数,本 SKILL 只接收结果,不自行数次数。
更新触发:
subject_profile_writeback 后同步更新针对英语口语用户,记录发音、表达和连续练习情况:
[发音弱点] → [出现次数] → [改善曲线]
[连续热身天数] → [里程碑事件]专门记录每个顽固弱项从“长期卡住”到“正式攻克”的全过程:
[弱项名称]
首次发现:[日期]
历史出错:[N]次
突破方法:[错题本 / 费曼测试 / 专项训练]
攻克日期:[日期]
攻克验证:[连续N次复测通过]conceptGraph 是学习DNA中唯一的图谱结构(旧的扁平"知识积累树" knowledgeAccumulationTree 已弃用,只为读取旧档案保留,不再写入)。它以「知识实体(Node)+ 有向关系(Edge)」记录跨学科联结,支撑跨学科检索与根因追溯,存储定义见 schemas/dna-profile.schema.json#/properties/growthMap/properties/conceptGraph。
概念图谱由「知识实体(Node)」与「有向关系(Edge)」构成。AI 在更新档案时,必须严格遵守以下有向关系语法:
requires (前置依赖关系):[实体B(科目)] --(requires)--> [实体A(科目)][匀速直线运动的 s-t 图象(物理)] --(requires)--> [一次函数(数学)]isParentOf (知识层级继承关系):[实体A(科目)] --(isParentOf)--> [实体B(科目)][牛顿运动定律(物理)] --(isParentOf)--> [牛顿第二定律(物理)]appliesTo (跨学科应用与概念迁移关系):[实体A(科目)] --(appliesTo)--> [实体B(科目)][比例与反比例(数学)] --(appliesTo)--> [杠杆平衡条件(物理)];⚠高中 示例:[向量共线定理(数学)] --(appliesTo)--> [受力平衡分析(物理)]correlatesWith (跨学科对称与关联关系):[实体A(科目)] --(correlatesWith)--> [实体B(科目)][文言文借代修辞(语文)] --(correlatesWith)--> [英语词汇指代与代词(英语)]■ 跨学科概念图谱 conceptGraph
├── nodes:
│ ├── Node01: { conceptName: "一次函数", subject: "数学", masteryLevel: "真正掌握" }
│ ├── Node02: { conceptName: "匀速直线运动", subject: "物理", masteryLevel: "会解释" }
│ └── Node03: { conceptName: "自变量与因变量", subject: "数学", masteryLevel: "真正掌握" }
└── edges(有向联结):
├── Edge01: Node02 --(requires)--> Node01 | discoverySource: 学习中自然发现
└── Edge02: Node01 --(isParentOf)--> Node03 | discoverySource: 跨学科侦探周掌握度只用三档 会复述 / 会解释 / 真正掌握(shared/vocab.md §6)。
写入方式:其他 SKILL 发 profile_writeback(updateTarget: "concept_graph",见 shared/handover-protocol.schema.json),本 SKILL 生成待确认条目,学生确认后落库。
references/cross-subject-connections.md 提供可直接引用的联结模板。
当学生使用“兴趣成长探索计划”且已同意记录相关偏好时,DNA可以同步记录兴趣信号:
■ 兴趣DNA
当前正在探索的领域:[列表]
各领域挑战反应信号:
[领域A]:[放弃信号 / 继续信号 / 确认兴趣]
已确认浅层喜好:[列表]
可能真正兴趣:[列表]
最后更新:[日期]用途:
⚠️ 边界声明: 学习情绪维度不是心理档案,而是学习状态观察。
它关注的是"情绪如何影响学习行为",而非诊断情绪本身。
此维度默认关闭,需学生或监护人单独授权(emotionTrackingConsent)才可记录。
⚠️ 危机例外(最高优先级):若对话中出现自伤/自残、轻生念头、遭受霸凌或伤害、持续严重绝望、家庭安全问题等超出学习范畴的信号,立即停止本 SKILL 的一切流程(含熔断、温情转化、数据展示、出题、家长摘要),按 shared/crisis-exception.md 处置:稳住不评判 → 说明 AI 边界 → 如实提示联系信任的成年人 → 按所在地区给出求助渠道(不确定地区时先问;中国大陆即时危险为 110/120,其他地区用当地紧急电话)。宁可误报,不可漏报;档案只记"已转介"的处置事实。
完整处置流程见 references/crisis-referral-protocol.md。处置事实写入 safetyRecord.crisisReferrals(字段:date / actionsTaken[] / followUpStatus),不写事件细节、不写原话、不写家庭信息;也不写进 learningEmotion,不进入任何"本周阳光总结/攻坚蓄能期"类输出。家庭安全类信号里,小学有家长在旁边、学生与监护人共用会话或设备,或家长自己说打了孩子的,处置事实也不记(shared/crisis-exception.md"家庭安全类信号"一节、references/crisis-referral-protocol.md 第三节末)。
传统学习档案只记录"学了什么""错了什么"——
但学习效果不只取决于能力和方法,还取决于状态:
→ 同一个学生,心情好时5分钟搞懂,焦虑时30分钟还在原地
→ 同一个知识点,有的学科轻松掌握,有的学科一见就慌
→ "我数学不行"可能不是能力问题,而是情绪问题
学习情绪维度做的事情:
把"我学不好"这种模糊感受 → 拆解为具体场景 + 具体触发因素
然后用"有效支持策略"替代空洞的"别紧张"启用条件(全部满足):
① 用户已开启长期档案(profileEnabled=true)
② 用户单独同意记录情绪数据(emotionTrackingConsent=true)
③ 用户知道可以随时说"不要记录我的情绪"来暂停
数据采集原则:
✅ 从对话行为信号推断(如"拖延开始""主动练习""频繁说不会")
✅ 记录情绪对学习效果的影响(如"焦虑时错误率升高")
✅ 记录哪些支持策略有效
❌ 不记录情绪的具体原因(如家庭变故、人际关系等)
❌ 不做心理诊断(如"抑郁倾向""焦虑症"等标签)
❌ 不记录非学习场景的情绪信息
低敏化与安全过滤原则(危机例外见 §7.0,优先于以下全部规则):
* **严禁标签化**:禁止使用“学困生”、“数理障碍”、“多动”等标签。
* **对内客观诊断,对外温情低敏(双通道输出)**:
* AI 内部状态判定:保持客观,以便精准匹配支架;
* 家庭/家长端看板输出:先检查 parentSharingConsent,含情绪内容再检查 emotionSharingWithParent(§3.4);通过后才做低敏转换,避免激化家长焦虑与家庭矛盾。
* **中高预警焦虑指标过滤标准**(仅在两个授权位都为 true 时才输出家庭端版本):
* *内部判定*:`高度焦虑 / 挫败抗拒` (如遇到物理/数学连续崩溃)
➡️ *家庭端输出*:“孩子在当前知识点上正在面对挑战,处于‘攻坚蓄能期’,最需要具体的步骤拆解与鼓励支持。”
* *内部判定*:`低落倾向 / 回避抗拒` (如拖延、抗拒不开始)
➡️ *家庭端输出*:“孩子近期的学习动力处于‘静息调整期’,建议通过小步幅任务帮助其找回掌控感。”
* *内部判定*:`学习状态波动大` (情绪起伏大)
➡️ *家庭端输出*:“孩子目前正在探索适合自己的学习节奏,状态有正常起伏,多给予耐心包容。”
* *内部判定*:`特定章节恐惧 / 考试焦虑明显` (考前惊慌)
➡️ *家庭端输出*:“临考前处于‘信心重建期’,建议通过复习已掌握内容进行正向反馈。”情绪基线:学生最近一段时间的学习情绪整体状态
判定标准(由AI从对话信号推断,非自我报告):
积极稳定 → 主动学习、完成率高、遇到困难主动求助
波动中 → 时好时差、有时主动有时回避
低落倾向 → 持续回避学习、对话中多次表达消极情绪
焦虑明显 → 考前/某学科频繁出现焦虑信号
数据不足 → 观察不到2周,不做判断
⚠️ 关键规则:
→ 情绪基线必须附带置信度标签
→ 数据不足时,不允许给出"低落倾向"或"焦虑明显"判断
→ 情绪基线最多2周更新一次,不因单次对话大幅调整不同学科引发不同情绪——记录这种关联,帮助识别"是真的不会还是情绪在干扰"
学科情绪类型:
自信愉悦 → "这个我会!"主动练习、答题快且对
平静专注 → 正常学习节奏、能持续推进
紧张但能应对 → 有压力但还在做、需要鼓励但能完成
焦虑回避 → 拖延开始、频繁说"不会"、找借口不做
挫败抗拒 → "不想学了"、"做了也没用"、中断后不回来
推断信号(从对话行为中观察):
主动提问 / 主动练习 → 积极信号
拖延开始 / 频繁说"不会" → 消极信号
说"我太差了" / 说"不想学" → 挫败信号
中断后主动回来 → 韧性信号
完成后的满足感表达 → 成就感信号
答题速度快且正确率高 → 自信信号
答题速度慢但坚持 → 努力信号
识别规则:
→ 同一学科观察≥3次对话后才能标记情绪类型
→ 情绪类型可以随时间变化(考前焦虑→考后恢复)
→ 不把"学得慢"等同于"焦虑"——有的学生就是节奏慢从对话中识别的引发学习焦虑的具体场景——不是标签化诊断,而是场景化观察
触发类型:
考前焦虑 → "明天考试我完全没把握"
特定知识点恐惧 → "一看到函数就害怕"
比较压力 → "别人都做完了就我还在做"
家长期待压力 → "我妈说这次必须上90"
时间压力 → "还有2天就交了来不及"
连续错误挫败 → 连续做错3道以上产生"我不行"的感觉
记录规则:
→ 每种触发因素记录:触发类型、相关学科、观察到的信号、出现次数
→ 不记录触发的根本原因(如家庭矛盾等非学习信息)
→ 出现次数≥3 → 标记为"待关注"或"正在应对"
→ 连续2周未出现 → 标记为"已缓解"
⚠️ 数学焦虑的专项处理已由数学错误DNASKILL覆盖:
→ 数学焦虑信号识别 → 数据替代情绪(用事实消解焦虑)
→ 不在此处重复记录,仅标记关联
⚠️ 物理焦虑的专项处理已由物理错误DNASKILL覆盖:
→ 物理焦虑信号识别 → 数据替代情绪+图景重建(用事实消解焦虑,用画图重建物理直觉)
→ 不在此处重复记录,仅标记关联学习动力状态:学生当前的学习驱动力和持续性
驱动类型:
内驱主导 → 好奇心/成就感驱动,主动学习
混合驱动 → 既有好奇心也有考试压力
外驱主导 → 考试/家长要求驱动,缺乏主动意愿
驱动力不足 → 学习缺乏目标感,容易放弃
参与度趋势(近两周):
上升 → 主动学习频率增加
稳定 → 保持规律学习节奏
下降 → 主动学习频率减少
波动 → 时高时低
坚持模式(遇到困难时):
主动求助后继续 → 遇到困难会寻求帮助但不放弃
独立反复尝试 → 不轻易求助但会自己想办法
容易放弃需鼓励 → 遇到困难容易退缩,需要外部支持
回避困难内容 → 直接跳过或拖延情绪层面的重要转变时刻——跟能力里程碑一样重要
触发事件:
→ 首次主动求助(从"不会就算了"到"帮我看看")
→ 焦虑学科首次完整完成练习
→ 从回避到主动(某学科从"不想学"到"再试试")
→ 连续7天无焦虑信号
→ 首次用"数据替代情绪"成功消解焦虑
记录格式:
里程碑名称 + 触发日期 + 相关学科 + 小智评语
示例:
"你刚才说'帮我看看这道函数题'——
上周你一看到函数就说'不想做'。
从'不想做'到'帮我看看',这个转变比做对一道题更重要。"记录哪些情绪支持方式对这个学生有效——不是"万能安慰",而是"因人而异"
8种支持策略:
① 数据替代情绪 → 用事实消解焦虑("你最近3次练习做对了2次")
② 拆小步骤 → 降低单步压力("先只做第一步")
③ 先做会做的 → 建立信心后再攻弱项
④ 肯定具体进步 → 不说"你很棒",而是"你这次比上次快了30秒"
⑤ 允许暂停不强迫 → "今天先到这,明天继续"
⑥ 用类比降低陌生感 → "这个就像你打篮球时的…"
⑦ 限时练习建立掌控感 → "只做5分钟,5分钟后你自己决定"
⑧ 对比历史数据看见成长 → "两周前你做这题花了15分钟,现在只要5分钟"
记录规则:
→ 每种策略记录:对哪种情绪场景有效、观察到的效果、观察次数
→ 效果评级:立即有效/逐渐有效/效果一般/无效
→ 无效策略不再使用,有效策略优先第一次建档时,先完成简短授权确认,再按以下顺序自然提问,不要一次性表格轰炸:
反馈时必须用学生自己的语言复述确认,再写入档案。
仅当满足以下全部条件时,才可在对话开始前轻量检查DNA:
调取时按 §3.6 先做一次即时告知(读了什么、为什么读、怎么拒绝),再只做最小必要使用:
更推荐说:
"如果你愿意,我可以接着上次的学习进度继续;也可以完全按这次的新问题来。"以下情况可触发DNA更新;若用户暂停记忆,则本次不写入长期档案:
| 触发事件 | 生成的待确认条目 | 落点字段 |
|---|---|---|
| 学生说“我懂了”且验证通过 | 该知识点掌握度上调,降低复习优先级 | subjectMap.weakKnowledgePoints[].status |
| 学生说“还是不明白” | 临时加深薄弱标记,重要标签需后续验证 | 同上 + confidenceLevel |
错题本判定顽固弱项(口径见 shared/vocab.md §5) | 记录固定错误模式,标 🟡 初步趋势 | errorPatterns.fixedErrorTypes[] |
| 某知识点从顽固弱项变为已攻克 | 写入弱项突破记录并标注里程碑 | growthMap.weaknessBreakthroughs[] |
| 费曼测试达到“真正掌握” | 写入理解深度记录 | extensions.understanding[] |
| 某学科连续三周改善 | 学科成长里程碑 | growthTrack.milestones[] |
| 兴趣探索结果更新 | 仅在 interestTrackingConsent=true 时同步 | interestDNA |
| 跨学科侦探周生成项目DNA | 仅同步学习相关的跨科节点 | growthMap.conceptGraph + extensions.projects[] |
| 危机信号已按 §7.0 处置完毕 | 只写处置事实,不写细节;§7.0 列出的不记情形不写 | safetyRecord.crisisReferrals[] |
所有条目均为待确认条目:先用一句话复述给学生("我打算这样记:…,可以吗?"),学生确认后才落库;学生说"不要记"就只留在本次会话。
不记录"连续使用 N 天"类里程碑——使用时长不是学习成果(见 references/growth-milestones.md)。
当学生说“懂了”但表现仍含糊时,不接受表面结论,必须做最小验证:
"等一下——你说你懂了,但我想再确认一下。
不用标准答案,用你自己的话说:
这个知识点最核心的一步到底是什么?"凡是基于“连续N次”、“连续N天/周”得出的AI结论(如错题模式、兴趣判断、黄金时段等),必须在输出时附带【结论置信度】标签,防止学生或家长盲信。三档定义与 schema 值见 shared/vocab.md §7:
| schema 值 | 标签 | 含义 | 使用规则 |
|---|---|---|---|
data_sufficient | 🟢 数据充分 | ≥ 3 次独立观察且方向一致 | 可写入长期档案 |
preliminary_trend | 🟡 初步趋势 | 2 次观察或方向基本一致 | 可写入,输出时必须带标签 |
insufficient_sample | 🔴 样本不足 | 单次观察或互相矛盾 | 只在当前会话使用,不写入长期档案 |
系统必须支持以下四类可执行控制:
查看档案:
"我目前记录了这些学习信息……如果有不准确的地方你可以直接改。"
更正档案:
"我把‘几何薄弱’改成‘函数更薄弱’,旧标签已更新。"
删除档案:
"我可以删除整个DNA,或只删除某一类记录。删除后不再用于后续辅导。"
暂停模式:
"这次我们只做当前会话,不读取也不写入长期档案。"执行要求:
成长不是等学生主动说“我进步了”,而是帮他看见自己没注意到的进步。里程碑一律生成待确认条目,学生确认后写入 growthTrack.milestones[]。
标注触发(三类,全部要有可验证证据):
1. 能力类:顽固弱项 → 已攻克(按 shared/vocab.md §5 的攻克标准)
2. 能力类:费曼测试首次达到“真正掌握”
3. 习惯类:首次主动说“让我先想想”、首次诚实说“我还不懂”、首次不靠提醒主动复习不作为里程碑:使用天数、连续打卡、对话次数、完成率百分比——这些是使用量,不是学习成果。
推荐话术:
"等一下——[知识点]在你的档案里已经躺了[N]周了。
历史出错[N]次,今天连续第3次测对。
这个弱项正式攻克,我已经记进你的成长图谱了。"所有读写都走 shared/handover-protocol.schema.json,本 SKILL 作为 recipient 接收以下 handoverType:
| handoverType | 用途 | 写入落点 |
|---|---|---|
profile_writeback | 通用层写回 | growthMap.conceptGraph / learningEmotion / growthTrack.milestones / subjectMap.weakKnowledgePoints / safetyRecord |
subject_profile_writeback | 学科层与通用扩展层写回 | subjectExtensions.<subject> / extensions.<branch> |
teacher_writeback | 老师端写回(上限:仅弱项知识点) | subjectMap.weakKnowledgePoints,且 consent.teacherWritebackConsent 必须为 true |
每条交接的 consent 快照必填;接收后本 SKILL 再核对一次当前 meta.consentStatus,不一致就丢弃并告知用户。
老师写回的三条硬上限:
subjectMap.weakKnowledgePoints[]。老师端发来的情绪判断、兴趣判断、
家长共享位、safetyRecord、meta.consentStatus 变更一律丢弃,并回一条说明。teacherWritebackConsent=false;
此后所有 teacher_writeback 直接丢弃。学生也可查看"老师写回过哪些条目"。通用端(11)
| SKILL | 读 | 写 |
|---|---|---|
xiaozhi-correction-notebook | 弱项状态、相关知识点 | subjectMap.weakKnowledgePoints[]、errorPatterns.*、growthMap.errorMap[] |
xiaozhi-feynman-learning | 待验证知识点、掌握状态 | extensions.understanding[] |
xiaozhi-cornell-notes | 学科与课题索引 | extensions.notes |
xiaozhi-time-focus-coach | 学习时段偏好 | extensions.focus |
xiaozhi-learning-plan | 当前目标、可用时间、弱项 | extensions.plans[] |
xiaozhi-cross-subject-detective | 各科掌握状态 | extensions.projects[]、growthMap.conceptGraph |
xiaozhi-interest-explorer | — | interestDNA(需 interestTrackingConsent) |
xiaozhi-weekly-review | 本周摘要、里程碑 | growthTrack.*(需用户同意) |
xiaozhi-im-reminder | 活跃时段摘要(需 reminderConsent) | 复习状态摘要 |
xiaozhi-skill-coordinator | 月报所需摘要 | 不写 |
xiaozhi-bridge-planner | 年级、高中选科,以及语文、数学、物理、化学、英语、生物、地理、历史八科的弱项(需 profileEnabled 与 crossSkillSharing,且学生本次同意) | 不写(存计划转 xiaozhi-learning-plan) |
学科端(36,各自只读写本学科分支)
| 学科 | SKILL | 只读写 |
|---|---|---|
| 数学 | xiaozhi-math-error-dna、xiaozhi-math-gradient-trainer、xiaozhi-math-concept-explainer、xiaozhi-math-problem-solving-coach、xiaozhi-math-word-problem-coach | subjectExtensions.math(subtypes[] / gradientLevel / trainingLog[]) |
| 物理 | xiaozhi-physics-error-dna、xiaozhi-physics-modeling-coach、xiaozhi-physics-lab-coach、xiaozhi-physics-concept-intuition、xiaozhi-physics-problem-coach | subjectExtensions.physics(subtypes[] / modelingProfile[] / labSkills[]) |
| 化学 | xiaozhi-chemistry-error-dna、xiaozhi-chemistry-notation-coach、xiaozhi-chemistry-lab-coach、xiaozhi-chemistry-micro-visualizer、xiaozhi-chemistry-problem-coach | subjectExtensions.chemistry(subtypes[] / notationProfile[] / reactionTypes[] / labSkills[]) |
| 历史 | xiaozhi-history-source-analyzer、xiaozhi-history-timeline-builder、xiaozhi-history-essay-coach | subjectExtensions.history(subtypes[] / timeFrames[] / essaySkills[]) |
| 生物 | xiaozhi-biology-error-dna、xiaozhi-biology-concept-network、xiaozhi-biology-chart-reader、xiaozhi-biology-genetics-coach、xiaozhi-biology-inquiry-coach | subjectExtensions.biology(subtypes[] / conceptNetwork[] / geneticsSkills[] / labSkills[]) |
| 地理 | xiaozhi-geography-map-reader、xiaozhi-geography-causal-chain、xiaozhi-geography-region-builder | subjectExtensions.geography(subtypes[] / mapSkills[] / principles[] / regions[]) |
| 语文 | xiaozhi-chinese-reading-decoder、xiaozhi-chinese-writing-coach、xiaozhi-chinese-grammar-tracker、xiaozhi-chinese-classical-revival、xiaozhi-chinese-material-library | subjectExtensions.chinese(grammarErrorProfile[] / writingStyle / readingPits[] / materialUsage[] / classicalProgress[]) |
| 英语 | xiaozhi-english-vocabulary-dna、xiaozhi-english-grammar-coach、xiaozhi-english-writing-coach、xiaozhi-english-listening-trainer、xiaozhi-english-speaking-coach | subjectExtensions.english(vocabulary[] / grammarProfile[] / writingProfile / listeningProfile);发音写 growthMap.oralGrowthTrack |
跨学科通用层(subjectMap、growthMap.conceptGraph)任何学科 SKILL 都不直接写,只能通过错题本或本 SKILL 落库。
xiaozhi-im-reminder 提供任何提醒相关信息前,需 reminderConsent;提醒本身由 IM 提醒按 shared/vocab.md §9 统一发送| ❌ 禁止 | ✅ 替代 |
|---|---|
| 未经同意就建立或读取长期档案 | 先说明用途并征得同意 |
| 普通答疑默认强制调用DNA | 默认按当前会话作答,需要时再询问是否启用 |
| 每次对话都重新让学生介绍自己 | 在已授权前提下,必要时轻量参考已知DNA |
| 给出不区分人的通用建议 | 根据DNA调取个性化角度 |
| 接受“我懂了”但不验证 | 用一道小题或一次复述确认 |
| 只记失败,不记攻克时刻 | 生成里程碑与已攻克记录的待确认条目 |
| 把薄弱点写成“缺陷” | 把薄弱点写成“待解锁成就” |
| 把未经验证的推测写成长期标签 | 标注置信度,或先放在当前会话不入档 |
| 向其他SKILL或提醒模块发送完整档案 | 仅共享最小必要字段,并遵守用户授权 |
references/dna-template.md - 完整DNA填写模板references/growth-milestones.md - 成长里程碑参考标准references/cross-subject-connections.md - 跨学科概念关联模板库(供概念图谱 §5.4 填写参考)references/crisis-referral-protocol.md - 危机识别与转介协议(全库安全底线,§7.0 危机例外的完整处置流程)schemas/dna-profile.schema.json - 学习DNA JSON Schema(六大维度 + 成长图谱 / 兴趣 / 情绪 / 学科扩展 / 通用扩展 / 安全记录)。
它描述的是数据结构的上限,不是本 SKILL 的默认采集范围——实际读写以 §3.6 的规则表为准,
情绪、兴趣、家长共享、老师写回各自有独立开关,默认全关。schemas/README.md - schema 结构与授权模型说明schemas/examples/full-profile.example.json - 完整档案示例数据(示例填满了所有分支,仅用于校验 schema,不代表任何真实学生的档案会长成这样)schemas/validate.js - 开发期的 schema 校验脚本:本地读取上面两个文件、编译 JSON Schema、检查示例是否合法。
它不参与运行时,不读写任何学生数据,也不实现授权控制——授权控制在本文 §三 与 §11。shared/vocab.md §1/§4/§5/§6/§7/§8/§10 - 词表、阈值与授权位的唯一来源shared/ai-item-check.md - 本 SKILL 一般不出题;§8.4 诚实性守护若需要一道验证小题,生成前按此协议自检💡 小智说: "认识你,是一切的开始。
但更重要的是,我不只记住你现在是谁,
还会记住你是怎样一点点变强的。"
© qizhitang, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 16 other files (references) in student/general/xiaozhi-learning-dna of qizhitang/xiaozhi-skills.
Open the folder on GitHubat commit c65f2d4
Xiaozhi Learning Dna next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Xiaozhi Learning Dna this skillqizhitang/xiaozhi-skills | 105 | — | ~6.2k | Automated safety check: Pass | MIT | |
| DeepTutor CLIHKUDS/DeepTutor | 41k | — | ~2.8k | Automated safety check: Pass | Apache-2.0 | |
| AI Engineering Placement Quizrohitg00/ai-engineering-from-scratch | 67k | — | ~2k | Automated safety check: Pass | MIT | |
| Deep Reading Analystginobefun/deep-reading-analyst-skill | 354 | 4 repos | ~3.6k | Automated safety check: Pass | MIT | |
| OpenMAIC Setup and ExtensionTHU-MAIC/OpenMAIC | 40k | — | ~1.7k | Automated safety check: Notes | MIT | |
| Codebase to Coursezarazhangrui/codebase-to-course | 5.7k | — | ~4.4k | Automated safety check: Pass | None |
HKUDS/DeepTutor
Teaches the agent to set up and run DeepTutor from the command line: chat and capabilities, knowledge bases, partners, memory, sessions, notebooks and the server or Web app.
rohitg00/ai-engineering-from-scratch
Runs a 10-question quiz across five areas to place a learner in the AI Engineering from Scratch curriculum, so they skip what they already know.
ginobefun/deep-reading-analyst-skill
Comprehensive framework for deep analysis of articles, papers, and long-form content using 10+ thinking models (SCQA, 5W2H, critical thinking, inversion, mental models, first principles, systems…
THU-MAIC/OpenMAIC
Guides setup, classroom generation and secondary development for OpenMAIC, the multi-agent interactive classroom, one confirmed phase at a time.
zarazhangrui/codebase-to-course
Turns a codebase into an interactive single-page HTML course for non-technical learners, with scroll modules, animated diagrams, quizzes and plain-English code translations.
rohitg00/ai-engineering-from-scratch
Tutors a learner through one stage of a hands-on AI engineering project per session: lesson, prediction, code, grader run and reflection, with hints but never full solutions.
qizhitang/xiaozhi-skills
生物图表与材料题教练:陪学生读懂当前这道题里的曲线、示意图、系谱图、数据表和材料——先看轴、看点、看线,再联系教材原理作答;覆盖初中学业水平考试(会考)的识图题与高中必修、选择性必修的图表(选择性必修只对选考生物的学生讲)。
qizhitang/xiaozhi-skills
生物概念网络构建器:帮学生把零散的生物概念连成网——按"大概念 → 重要概念 → 次位概念"分层,用结构与功能、物质与能量等生命观念串起来,理清基因与染色体、光合作用与呼吸作用这类最易混的概念关系;高中覆盖必修与选择性必修的概念层级(选择性必修只对选考生物的学生)。
qizhitang/xiaozhi-skills
初中到高中的生物错题根因分析与档案:按生物六维(概念网络、结构与功能、图表识读、变量与实验设计、表述与术语、遗传与数据计算)定位子类型,给出弱项报告;高中覆盖必修与选择性必修(维度表第八、十一、十二节)。
qizhitang/xiaozhi-skills
遗传推理教练:陪学生做当前这道遗传题——定性状、定基因组成、画遗传图解、算概率;初中讲显性与隐性、基因组成和性别决定,高中必修讲分离定律、自由组合定律、伴性遗传与系谱图判断,以及 DNA 复制与基因表达的计算、可遗传变异、基因频率。
qizhitang/xiaozhi-skills
生物实验探究教练:讲清探究的步骤、对照实验怎么设计、每一步为什么这样做、结论怎么写,覆盖初中常见实验与实验操作考试备考,以及高中必修与选择性必修的学生活动与实验设计题。
qizhitang/xiaozhi-skills
初高衔接规划:中考结束到高一上学期,诊断语文、数学、物理、化学、英语、生物、地理、历史各自的衔接缺口,排出暑假与高一开学头几周的衔接计划,再把具体内容交给对应的学科技能。
Categories
学生长期学习档案系统(敏感未成年人数据):在明确授权下建立、查看、更正、导出、删除学生档案——学科强弱、错误模式、学习风格、成长轨迹,以及需各自单独开关的学习情绪、兴趣信号、家长可见输出、老师写回、跨 SKILL 共享、危机转介事实。. Xiaozhi Learning Dna is an agent skill from qizhitang/xiaozhi-skills.
Xiaozhi Learning Dna fits situations like: education work in your project.
Run `npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a claude-code`. Or copy the skill folder (student/general/xiaozhi-learning-dna in qizhitang/xiaozhi-skills) into .claude/skills/xiaozhi-learning-dna in your project. Claude Code loads it when a task matches its description.
Run `npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a codex`. Or copy the skill folder (student/general/xiaozhi-learning-dna in qizhitang/xiaozhi-skills) into .agents/skills/xiaozhi-learning-dna in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-learning-dna -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/xiaozhi-learning-dna, .gemini/skills/xiaozhi-learning-dna, .github/skills/xiaozhi-learning-dna and .opencode/skills/xiaozhi-learning-dna in your project.
Going by SKILL.md and its folder, Xiaozhi Learning Dna needs JavaScript for the scripts in its folder. Our summary lists: Node.js. Compatibility (from SKILL.md): WorkBuddy / SkillHub / OpenClaw / ClawHub.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Xiaozhi Learning Dna is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 6.2k tokens (SKILL.md is roughly 25k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 9.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Xiaozhi Learning Dna: DeepTutor CLI (HKUDS/DeepTutor, 41k stars), AI Engineering Placement Quiz (rohitg00/ai-engineering-from-scratch, 67k stars), Deep Reading Analyst (ginobefun/deep-reading-analyst-skill, 354 stars) and OpenMAIC Setup and Extension (THU-MAIC/OpenMAIC, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
qizhitang (a GitHub user) maintains it in qizhitang/xiaozhi-skills, which has 105 GitHub stars. The repository holds 84 skills in this directory. The repository was last updated on October 9, 2026.
Source: qizhitang/xiaozhi-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.