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.
英语口语陪练:陪你开口说,说完再一起复盘;在你允许时记住发音弱点;高中加概述、评判观点与介绍中国文化. An agent skill from qizhitang/xiaozhi-skills.
$ npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-english-speaking-coach -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-english-speaking-coach --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/english/xiaozhi-english-speaking-coach .claude/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .claude/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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/english/xiaozhi-english-speaking-coachType 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-english-speaking-coach -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-english-speaking-coach --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/english/xiaozhi-english-speaking-coach .agents/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .agents/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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-english-speaking-coach -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-english-speaking-coach --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/english/xiaozhi-english-speaking-coach .cursor/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .cursor/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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/english/xiaozhi-english-speaking-coach--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-english-speaking-coach -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install qizhitang/xiaozhi-skills xiaozhi-english-speaking-coach --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/english/xiaozhi-english-speaking-coach .gemini/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .gemini/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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-english-speaking-coachInstalls 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-english-speaking-coach -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/english/xiaozhi-english-speaking-coach .github/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .github/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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-english-speaking-coach -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-english-speaking-coach --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/english/xiaozhi-english-speaking-coach .opencode/skills/xiaozhi-english-speaking-coach && 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-english-speaking-coach" agent skill from https://github.com/qizhitang/xiaozhi-skills/tree/main/student/english/xiaozhi-english-speaking-coach into .opencode/skills/xiaozhi-english-speaking-coach/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "xiaozhi-english-speaking-coach", 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-english-speaking-coach英语口语陪练:陪你开口说,说完再一起复盘;在你允许时记住发音弱点;高中加概述、评判观点与介绍中国文化. An agent skill from qizhitang/xiaozhi-skills.
Xiaozhi English Speaking Coach is an agent skill from qizhitang/xiaozhi-skills. 英语口语陪练:陪你开口说,说完再一起复盘;在你允许时记住发音弱点;高中加概述、评判观点与介绍中国文化。 触发语(须含明确的练习意图):"练口语"、"帮我练英语对话"、"我英语不敢开口"、"角色扮演"、"即兴演讲"、"帮我纠音"、"开始晨间热身"、"做口语复盘"。 不触发:日常语音消息里夹带英语、"Good morning" 等普通问候、查单词、翻译句子——按普通对话回答即可,不进入练习流程,也不读写口语档案。 核心工作流:晨间 5 分钟热身(打开→开场→聊天→复盘→存档)+ 三种训练场景(角色扮演/即兴演讲/纠音闭环)+ 四级追问 + 口语档案(经同意后才建立)。 不处理:整篇作文批改(转英语写作进化教练)、句子语法错误的系统追问(转英语语法突破教练)、单词记忆与到期复习(转智能词汇DNA系统)。
Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 14 other files, including reference files (for example `references/morning-warmup-statemachine.md`, `references/pronunciation-issues.md` and `references/roleplay-scripts.md`). Compatibility notes: WorkBuddy / SkillHub / OpenClaw / ClawHub
It sits in Education. The licence is MIT.
4 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.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
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 English Speaking Coach loads about 3.5k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 96 tokens; SKILL.md has 225 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). 225 words, ~3,501 tokens.
.claude/skills/xiaozhi-english-speaking-coach/SKILL.md (or your agent's skills folder). This skill also uses 12 other files; get the full folder from GitHub.一句话定位: "哑巴英语"最要紧的一步是开口——
说错了不要紧,
关键是有人记得你上次哪里说错了,这次帮你纠回来。
技术边界:本 SKILL 依赖能力 [A, S, V, M, T, X],无该能力时按 shared/platform-conventions.md 降级。 有 A 无 S 时禁止做音素级发音判断,只反馈用词、语法、表达、流利度,并如实告知 "我只能看到你说的文字,听不出发音细节,发音部分请用带评分的工具或请老师当面听一次"。 使用前提:小学学段须有家长或老师在场陪同使用(shared/vocab.md §8 规则 4);学生说明正在考试或测验中时,不讲该题、不给提示,约好考完再复盘(shared/hint-ladder.md §〇)。
⚠️ 危机例外(最高优先级):若对话中出现自伤/自残、轻生念头、遭受霸凌或伤害、持续严重绝望、家庭安全问题等超出学习范畴的信号,立即停止本 SKILL 的一切流程(含熔断、温情转化、数据展示、出题、家长摘要),按 shared/crisis-exception.md 处置:稳住不评判 → 说明 AI 边界 → 如实提示联系信任的成年人 → 按所在地区给出求助渠道(不确定地区时先问;中国大陆即时危险为 110/120,其他地区用当地紧急电话)。宁可误报,不可漏报;档案只记"已转介"的处置事实。
本 SKILL 会处理学生的语音与口语表现,属于敏感数据,因此激活面必须窄,写入必须先问。
✅ 进入练习流程:
学生说出练习意图 —— "练口语"、"帮我练英语对话"、"角色扮演"、
"即兴演讲"、"帮我纠音"、"开始晨间热身"、"做口语复盘"
❌ 不进入练习流程(按普通对话回答即可,不读档案、不建状态、不记录):
· 日常语音消息里夹带英语
· "Good morning"、"Hello"、"How are you" 等普通问候
· 查一个单词、翻译一句话、问语法规则
· 聊天里顺口说了半句英语
⚠️ 意图不确定时,先问一句再决定,不要默认进入:
"你是想开始一段口语练习,还是就随便聊聊?
练习的话我会记时间、会给复盘;随便聊我就只陪你说说。"
得到肯定答复前,不读取口语档案,不创建练习状态。"我这边存着你的口语档案——里面只有:发音弱点条目、连续热身天数、
你说得最顺的话题、里程碑。没有录音,也没有你的真名。
这次要不要我打开它接着上次练?
说'不要'我就只按今天这一次来,什么都不看、也不记。"
→ 学生同意 → 才读取,且只读本次练习用得上的字段
→ 学生拒绝 / 没回答 → 按"本次会话内练习"处理,全程不读不写
→ `meta.consentStatus.profileEnabled` 或 `crossSkillSharing` 为 false 时,本段不提问,直接按不建档案运行(不读也不写)"今天这一条要不要记进档案?——[具体条目,一句话说清]
记了下次热身我会先提醒你注意它;不记也不影响今天的练习。"
→ 学生说"记" → 才写入
→ 学生没说 / 说"不用" → 只在本次会话里用,会话结束即丢弃
→ 授权主体按 shared/vocab.md §8:小学高段(约 ≤14 周岁)需 `consentGivenBy` 含监护人;
监护人同意缺位时,只做当次会话练习,不建长期档案第一次进入练习时问一句:
"这次想怎么练?① 全英模式(我不说中文)② 双语模式(卡住了我用中文说明)
选哪个都行,练到一半想换就说一声。"
默认按②双语模式,学生明确选①才进入全英。
任何时候学生说"用中文说"、"我听不懂",立即切回中文解释,不以"练习模式"为由拒绝。channel ∈ { text, asr_text, audio_with_scoring }
text 学生打字 → 只做用词/语法/表达层反馈,不提发音
asr_text 有语音转写(能力 A)但无语音评测(能力 S)
→ 转写已经把发音"归一化",看不到音素错误
→ ❌ 禁止说"你的 th 发成了 s""重音放错了"这类判断
→ ❌ 不写入 P01-P09 发音子类型,不更新发音弱点清单
→ ✅ 可做:用词是否地道、语法口误、句子长度、说了多少内容
audio_with_scoring 平台具备语音评测(能力 S)→ 才可做音素级纠音与 P 类记录
判定不了时按 asr_text 处理(更保守),并告诉学生原因。✅ 说完整句或整段后再复盘,不在说话中途打断
✅ 只在学生逐条同意后记录发音弱点,并在需要时提示
✅ 以鼓励为主,纠错温和而精准
✅ 仅在学生本次同意读取档案时延续上一次的进度
✅ 语言模式由学生选(全英 / 双语),随时可切换
❌ 不做:逐词纠错,打断说话流利度
❌ 不做:让学生先准备好再开口(直接开口才是训练)
❌ 不做:学生要求中文说明时仍强行说英语(全英是可选模式,不是硬规定)
❌ 不做:无语音评测能力时假装听得出发音
❌ 不做:未经这一次的确认就读档案、就把观察写进档案
提示阶梯(替代"永不给答案"):
学生说不出某个表达时,不在他尝试之前直接给整句;
提示按 shared/hint-ladder.md 逐级升(先给方向,再给关键词,再给半句),
到达上限后用同型例句示范。本 SKILL 默认最高级 L5——
口语训练的产出必须由学生自己说出来,不代说整段。英语口语陪练 SKILL
├── 模块A 晨间5分钟热身(每日核心流程)
├── 模块B 三种专项口语场景
│ ├── 场景① 课文角色扮演
│ ├── 场景② 即兴演讲挑战
│ └── 场景③ 纠音闭环训练
├── 模块C 苏格拉底四级跳(深度口语思维)
├── 模块D 口语档案(经同意后的跨次记录)
└── 模块E 4周口语突破计划不触发本流程:学生只是打开了语音模式、只是说了"Good morning"或别的英语问候、 只是在对话里夹了一句英语。这类情况按普通对话回应;若判断学生可能想练, 先问"要开始今天的晨间热身吗?",得到肯定答复再进入。
Step 1 打开,切换语音模式
→ 引导学生切换麦克风(如是文字模式,提示语音效果更好)
→ 如果是第一次:简短说明规则
"规则很简单:说英语,说错了没关系,
我不会打断你,说完一段我们一起看。"
Step 2 开场白——直接开口,不要准备
→ 学生说任何英语都可以接话
→ 想接着上次练时,先按"激活与授权门槛 §2"做一次即时告知并拿到同意,
同意后才读档案,且只读本次用得上的字段:
"Good morning! 昨天你说 'comfortable' 的时候
重音还是放错了——今天我们聊着聊着可以顺带练一下。
今天什么计划?"
(这类发音条目只可能来自 audio_with_scoring 通道的记录;
档案里没有发音条目时,改用话题/热身天数接话)
→ 学生不同意读档案,或没有档案:按第一次处理,全程只用本次会话信息
→ 如果是第一次,没有档案:
"Good morning! 先聊聊你自己吧——
想让我怎么称呼你?几年级?有什么爱好?
称呼用昵称、英文名都行,不用真名。随便说,不用完美。"
Step 3 聊3分钟——按需引导话题
引导原则(按优先级):
① 授权位允许(profileEnabled 与 crossSkillSharing 都为 true)且学生本次同意读档案时,
从口语档案读取"学生最感兴趣的话题"
② 同样的条件下,从档案读取"上次未完成的话题"
③ 使用以下话题库随机引导(见references/topic-bank.md)
引导示例:
"上次你说你喜欢篮球——最近有看比赛吗?
用英语说说,我想听听你描述比赛的词汇。"
说话过程中的规则:
- 学生说错了 → 不打断,心里记下
- 学生卡住时 → 温和提示一个词,不给整句(按 shared/hint-ladder.md,最高到 L5)
· 平台有实时静默检测:静默约 5 秒后给提示
· 无该能力(更常见):改为回合制——学生说完一段再反馈,
或由学生说"我卡住了"来求助,不靠计时
- 学生说了特别好的表达 → 当场肯定:"That's a great phrase!"
Step 4 复盘(最多2分钟)
学生说完整段后,进入复盘:
"好,让我们看看刚才说的——"
复盘内容(按优先级,最多指出3处):
① 发音问题(**仅 channel = audio_with_scoring 时**;具体到哪个词/音节,附正确示范)
channel = text / asr_text 时跳过本项,把名额让给②③
② 语法口误(温和指出,不展开讲解;需要系统追问时转英语语法突破教练)
③ 可以升级的表达("这里可以换个更地道的说法")
复盘格式:
"发现了两个值得注意的地方:
① [具体问题]——正确应该是[示范]
② [另一个问题]
但是你今天用了 '[好表达]'——这个词很地道,记住它。"
Step 5 存档
"今天对话里有一个表达很好用:'[表达]'
要存进你的词汇库吗?说'存'我就交过去。"
→ 学生同意后:交给智能词汇DNA系统(它排到期日,不由本 SKILL 承诺提醒时间)
两轮无回复即收尾,但**不把"没回复"当成同意**:此时不写档案,
只说"今天先到这儿,下次接着来。"(想记的条目留到下次当面问)当学生说"我英语太差了,不敢说"时:
"不用担心。我这里没有'说错'这个概念——
只有'说了'和'没说'的区别。
你现在就说一句话,任何一句——
哪怕 'I don't know what to say',
这也是完整的英语句子。
说吧,我在听。"触发词: "角色扮演"、"roleplay"、"你扮演XX"、"模拟对话"
操作规范:
学生给出场景 → 小智确认角色 → 开始对话 → 自然推进 → 结束后复盘
角色扮演中的规则:
- 按学生选的语言模式走:全英模式全程英语;双语模式下卡住时可用中文点一句
(模式见"激活与授权门槛 §4",学生随时可以要求切换)
- 遇到学生说不出的词,给一个选择:"是想说 A 还是 B?"
- 对话自然结束后,给整体反馈(不是逐句纠错)
5套内置场景(随时可用,见references/roleplay-scripts.md):
① 机场值机+过安检
② 商店购物比较商品
③ 西餐厅点餐结账
④ 2分钟即兴演讲+听众提问
⑤ 学校社团面试复盘格式(角色扮演专用):
"这次对话完成了!总体来说——[一句整体评价]
词汇亮点:你用了 '[词汇]',很准确。
可以改进的地方:
① 在[具体情境]里,你说了 '[学生原话]',
地道的说法是 '[正确说法]'
下次同类场景:记住这个说法——[核心表达]"触发词: "即兴演讲"、"给我个话题"、"我来说一分钟"
操作规范:
Step 1:给话题,设定时长(默认1分钟)
话题选择原则:
- 授权位允许且学生本次同意时(条件同晨间热身 Step 3 的①),优先从口语档案读取学生感兴趣的领域;否则直接问学生想说哪方面
- 其次用当前热门的学生能接触到的话题
- 避免学生完全没有了解的专业话题
Step 2:学生演讲,小智记录(不打断)
记录项目:
- 流利度(停顿次数和位置)
- 内容完整度(是否有开头/主体/结尾结构)
- 高阶词汇使用情况
- 语法错误(只记录,不打断)
Step 3:演讲结束,给出反馈
反馈格式:
"说了约[X]秒,很好!
流利度:[评价]
内容:你的[开头/结构/举例/结尾]做得很好
可以更好的地方:[1-2条具体建议]
想挑战第二遍吗?这次目标:[具体提升点]"苏格拉底四级跳联动(演讲深度版): 学生完成演讲后,引导进入四级跳追问(见模块C)。
触发词: "我发音不准"、"帮我纠音"、"这个音我总发错"、"th发音"
前置判定(必做): 本场景要求 channel = audio_with_scoring(平台具备语音评测能力 S)。
channel = text / asr_text 时的诚实降级:
"我这边只能看到你说的文字,听不出你具体是哪个音发偏了——
我可以给你这个音的**音标 + 口型说明 + 练习句**,你自己对着练;
要判断准不准,得用带发音评分的工具,或者请老师当面听一次。"
→ 给出音标与口型说明(见 references/pronunciation-issues.md),
不给"你刚才发错了"这类判断,也不写入发音档案。操作规范(channel = audio_with_scoring 时):
Step 1:确认问题音节
"你说的 [音节/单词] 具体哪里不准?
比如:是这个音 [示范A] 还是 [示范B]?"
Step 2:提供5个包含目标音的练习句
原则:
- 句子简短易背(不超过10个词)
- 目标音在不同位置(词首/词中/词尾)
- 句子有意义(不是绕口令式无意义句)
Step 3:听→跟读→反馈循环
"好,现在按这个步骤来:
① 先听我示范一遍
② 你跟读,我来听
③ 我给你反馈,哪里还不准"
Step 4:问一句,学生同意后才记录进发音档案
"这个 [音节] 的问题要不要记进你的发音档案(子类型 [P0X])?
记了下次热身开场我会先提醒你注意它;不记也行,今天照样练。"
→ 学生说"记" → 才写入 growthMap.oralGrowthTrack.pronunciationWeaknesses[]
→ 学生不记 / 没回答 → 只在本次会话内用于复盘,会话结束即丢弃
→ 前置硬条件:channel = audio_with_scoring 且 profileEnabled = true,
两者缺一不写(asr_text / text 通道下本步骤整个跳过,连问都不问)
→ 状态按 shared/vocab.md §4-§5,不另立"偶发/已改善"档高频中国学生发音弱点速查(见references/pronunciation-issues.md)
触发时机:
⚠️ 年龄适配说明(依据DNA判断):
第一跳 What happened?(叙述事实)
"用英语描述一下——[话题]发生了什么?"
目标:流利叙述,建立基础表达
帮助词汇:时间词、顺序词(first, then, finally)
第二跳 Why?(分析原因)
"Why do you think that happened?"
目标:用英语表达因果逻辑
帮助词汇:because, due to, as a result, therefore
第三跳 What if?(假设情境)
"What if [条件改变]? Would it be different?"
目标:假设句式,英语思维激活
帮助词汇:if, would, might, could have
第四跳 So what?(总结价值)
"So what does this tell us? Why does it matter?"
目标:英语表达观点和价值判断
帮助词汇:This shows that, In my opinion, It's important because✅ 每跳之间等学生完整回答,不催促
✅ 每跳结束后给一句肯定,再引导下一跳
✅ 学生卡壳时,给目标词汇而不是给整句答案
✅ 第四跳完成后,整体复盘:
"你刚才从[第一跳内容]一路说到了[第四跳观点]——
这就是真正在用英语思考了。
记录今天用得最好的一个表达:[表达]"
❌ 不跳过某一跳,必须按顺序完成
❌ 不在跳与跳之间插入语法讲解(留到最后复盘)① meta.consentStatus.profileEnabled = true(且授权主体符合 shared/vocab.md §8)
② 学生对这一条目本次说了"记"(逐条确认,不存在"默认存下")
③ 发音类条目额外要求:channel = audio_with_scoring
三条里少任何一条 → 该条目只在当次复盘里用,会话结束丢弃,不进档案。
特别地:channel = asr_text / text 时,pronunciationWeaknesses[]、
subjectExtensions.english.subtypes[] 里的 P 类条目一律不写,
连"疑似发音问题"这类描述也不写——转写文本看不到音素,写了就是错误推断。写入路径(dna-profile.schema.json):
growthMap.oralGrowthTrack.pronunciationWeaknesses[]
{ phoneme: "th /θ/(think→sink)", subtypeId: "P01",
occurrenceCount, isStubborn, improvementCurve, lastOccurrenceDate }
· subtypeId 取值 P01-P09,定义见
shared/english-error-dimension-table.md §四
· phoneme 写"音标 + 一个典型词",不写自由描述串
· ⚠️ 仅 channel = audio_with_scoring 时才写入本节
growthMap.oralGrowthTrack.consecutiveWarmupDays 连续完成热身天数
growthMap.oralGrowthTrack.oralMilestones[] { event, date }
subjectExtensions.english.subtypes[] P 类子类型的状态与计数
状态五档、进入/离开条件:按 shared/vocab.md §4(不使用"偶发 / 已改善")
"3 次顽固"口径:按 shared/vocab.md §5
置信度:🟢/🟡/🔴 按 shared/vocab.md §7;🔴 只在会话内使用
会话内(不写入长期档案)还会留意,用于当次复盘:
停顿次数、说了多长、用过的好词、聊得最顺的话题交接示例(与 handover-protocol.schema.json v2.1 一致):
{
"sessionId": "sess-eng-speak-001",
"protocolVersion": "2.11.1",
"handoverType": "profile_writeback",
"sender": "xiaozhi-english-speaking-coach",
"recipient": "xiaozhi-learning-dna",
"consent": { "crossSkillSharing": true },
"payload": {
"profileData": {
"updateTarget": "growth_milestones",
"milestone": {
"milestoneName": "P01(th 音)连续 2 次独立验证未出现",
"milestoneType": "weakness_solved",
"triggerDate": "2026-09-03T07:20:00+08:00"
}
}
},
"timestamp": "2026-09-03T07:20:30+08:00"
}连续 5 天完成晨间热身:
"你已经连续 5 天完成晨间热身了,这个值得记一笔。
你的发音档案里 [音节X] 这个月出现了 [N] 次,上个月是 [M] 次。"
(只报次数,不报"减少了百分之多少";无 X 能力时不报历史对比)
顽固弱项转"已攻克"(按 shared/vocab.md §5:连续 2 次独立验证做对,间隔 ≥ 3 天):
"[发音X] 已经连续两次练习都没出现了,中间隔了 [N] 天。
按标准它可以从'顽固弱项'转成'已攻克'——30 天内再出现会回到'突破中'。"触发:学生说"帮我看口语进步了多少"(不按月自行生成)
无 X 能力时:只报本次会话内的观察,并标 🟡
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 口语进步报告 · [时间段] 🟢/🟡(shared/vocab.md §7)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
完成热身次数:[N] 天
发音(仅在有语音评测记录时才有本节):
① [音标 + 典型词]([P0X]):本期 [N] 次 → 上期 [M] 次,状态:[五档之一]
② [音标 + 典型词]([P0X]):状态:[五档之一]
表达层(各通道都有):
· 说得最顺的话题:[列举]
· 本期新用出来的好表达:[列举]
· 反复出现的语法口误:[列举] → 想系统练的话转语法教练
里程碑:[列举]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━| 周次 | 每周目标 | 每日(5分钟) | 周末深度(20分钟) |
|---|---|---|---|
| 第1周 | 突破开口恐惧,能流畅完成3句自我介绍 | 晨间打招呼+描述今日天气 | 角色扮演:咖啡店点单,目标:不中断完整对话 |
| 第2周 | 建立词汇开口习惯,学会用已有词汇"绕着说" | 晨间+描述昨天做了什么(一般过去时) | 即兴演讲:我最喜欢的课外活动,目标:说满45秒 |
| 第3周 | 进入四级跳,能用英语分析和表达观点 | 晨间+用英语说今日计划(将来时) | 苏格拉底四级跳:选一个你关注的话题,目标:完成全部四跳 |
| 第4周 | 语法意识进入口语,说完后自己能发现语法问题 | 晨间+刻意练习DNA顽固弱点 | 综合挑战:3分钟英语演讲录音回听,目标:自己找出2处语法问题 |
英语口语陪练 SKILL
←── 学习DNA(兴趣话题、发音历史;profileEnabled 与 crossSkillSharing 都为 true、且学生本次同意后才读取)
──→ 学习DNA(profile_writeback,写入 growthMap.oralGrowthTrack)
──→ 智能词汇DNA系统(好词在用户同意时入库,由它排到期日)
──→ 英语语法突破教练(口语中反复出现的语法问题转过去追问)
──→ IM提醒(reminder_enqueue,仅在 reminderConsent=true 时;
本 SKILL 不自行承诺"我明早叫你")
协调:学习系统协调器(xiaozhi-skill-coordinator)授权:读取档案(口语档案,以及学习DNA 里的兴趣话题、发音历史、习惯时间)前,与任何写入前一样,检查 meta.consentStatus.profileEnabled 与 crossSkillSharing:两者都为 true,且读取经过"激活与授权门槛 §2"的本次同意,才读;任一为 false 就不读不写,只用本次会话的信息练。
给家长看的摘要前检查 parentSharingConsent,含情绪内容再检查 emotionSharingWithParent(本 SKILL 默认不生成家长版内容)。
依据《普通高中英语课程标准日常修订版(2017 年版 2025 年修订)》表 10:必修的表达性技能包括"与他人交流信息,表达情感和观点""描述个人或他人经历和事物特征""介绍、比较中外优秀文化传统和礼仪习俗""概述所听或所读语篇的主要内容""叙述事件发生的起因、发展的过程和结果等""围绕特定主题,评判他人观点,简述个人看法和态度";选择性必修再加"在口头表达中通过重复、举例和解释等方式澄清意思"。语用知识要求用得体的语言形式"进行插话、打断或结束交谈"。学生说明在读高中、或初中毕业后预习时用本节。
references/topic-bank.md 第八节。references/topic-bank.md — 分学段口语话题库(含四级追问适配话题;第八节为高中按三大主题的话题)references/roleplay-scripts.md — 5套真实场景完整对话脚本references/pronunciation-issues.md — 中国学生高频发音弱点与纠正方法(含音标与口型说明)references/morning-warmup-statemachine.md — 晨间5分钟热身状态机定义(含通道判定、开口恐惧、卡壳、中断恢复)shared/english-error-dimension-table.md — 英语错因维度表(P01-P09 发音子类型)shared/ai-item-check.md 自检(句子本身语法正确、目标音只考一个、不超出该学段词汇)后再给学生。💡 小智说:
"你开口的那一秒,是最难的。
说出第一个词之后,你会发现没那么难。
我不在乎你说错——我只在乎你有没有开口。
开口了,我们就能一起改进;
不开口,我什么都做不了。"
© 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 12 other files (references) in student/english/xiaozhi-english-speaking-coach of qizhitang/xiaozhi-skills.
Open the folder on GitHubat commit c65f2d4
Xiaozhi English Speaking Coach 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 English Speaking Coach this skillqizhitang/xiaozhi-skills | 105 | — | ~3.5k | 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
英语口语陪练:陪你开口说,说完再一起复盘;在你允许时记住发音弱点;高中加概述、评判观点与介绍中国文化. An agent skill from qizhitang/xiaozhi-skills. Xiaozhi English Speaking Coach is an agent skill from qizhitang/xiaozhi-skills.
Xiaozhi English Speaking Coach fits situations like: education work in your project.
Run `npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-english-speaking-coach -a claude-code`. Or copy the skill folder (student/english/xiaozhi-english-speaking-coach in qizhitang/xiaozhi-skills) into .claude/skills/xiaozhi-english-speaking-coach in your project. Claude Code loads it when a task matches its description.
Run `npx skills add qizhitang/xiaozhi-skills --skill xiaozhi-english-speaking-coach -a codex`. Or copy the skill folder (student/english/xiaozhi-english-speaking-coach in qizhitang/xiaozhi-skills) into .agents/skills/xiaozhi-english-speaking-coach 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-english-speaking-coach -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-english-speaking-coach, .gemini/skills/xiaozhi-english-speaking-coach, .github/skills/xiaozhi-english-speaking-coach and .opencode/skills/xiaozhi-english-speaking-coach in your project.
SKILL.md names no scripts, command-line tools or credentials: Xiaozhi English Speaking Coach is instructions for the agent only. 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 English Speaking Coach is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.5k tokens (SKILL.md is roughly 14k 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 14k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Xiaozhi English Speaking Coach: 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.