英语表达助手:帮用户找到最地道的英语表达方式,并生成每日学习汇总。 触发词:怎么说、英语怎么表达、how to say、English expression、每日英语汇总、daily English summary。
用户描述想表达的意思 → 推荐最地道的英语表达 → 记录到本地 → 每日汇总推送。
| 字段 | 格式 | 说明 |
|---|---|---|
| id | string | UUID,自动生成 |
| date | YYYY-MM-DD | 记录日期 |
| username | string | 用户名,无法获取时填 unknown |
| query | string | 用户的原始提问(中文或英文) |
| expression | string | 推荐的英语表达 |
| phonetic | string | 音标(IPA) |
| pos | string | 词性(noun / verb / phrase / adj / adv 等) |
| example_sentence | string | 一个例句 |
| context | string | 适用场景说明(可选,简短) |
| tags | string | 逗号分隔关键词(话题、场景等) |
📝 推荐表达
**cold shoulder** /koʊld ˈʃoʊl.dɚ/ (phrase)
故意冷落、不理睬某人
> She gave me the cold shoulder after the argument.
> 吵架之后她就不理我了。
💡 场景:日常口语,非正式
若用户的提问有多种不同含义,先确认语境:
🤔 "打发时间"可以有几种理解:
1. 无聊时消磨时间
2. 有效利用空闲时间
你指的是哪种?我好推荐最合适的表达。
unknown遵循以下规则:
每次推荐后,将记录写入本地存储。
使用 --records-file 方式调用(避免 shell 转义问题):
# 1. 写入临时 JSON 文件
cat > /tmp/expression_records.json << 'JSONEOF'
[
{
"date": "2026-03-01",
"username": "john_doe",
"query": "故意冷落别人怎么说",
"expression": "cold shoulder",
"phonetic": "/koʊld ˈʃoʊl.dɚ/",
"pos": "phrase",
"example_sentence": "She gave me the cold shoulder after the argument.",
"context": "日常口语,非正式",
"tags": "社交,情绪,非正式"
}
]
JSONEOF
# 2. 调用写入脚本
python3 <SKILL_DIR>/scripts/write_expression.py \
--records-file /tmp/expression_records.json \
--data-dir ~/openclaw-data/english/
重要:
<SKILL_DIR>= 此 SKILL.md 文件所在目录的绝对路径。详细存储规范见
references/expression_db_spec.md。
✅ 已记录!今日累计学习 5 个表达。
#english-learning 频道# 获取昨天的日期(东八区)
yesterday=$(date -d "-1 day" +%Y-%m-%d)
python3 <SKILL_DIR>/scripts/generate_daily_summary.py \
--data-dir ~/openclaw-data/english/ \
--username <USERNAME> \
--date $yesterday \
--include-review \
--output ~/openclaw-data/english/summaries/daily_<YYYY-MM-DD>.md
--include-review:从过去 30 天的高频错词/重点词中随机抽取 2-3 个混入推送references/daily_summary_spec.md📚 每日英语汇总 | 2026-03-01(共 8 个表达)
| # | 你的问题 | 推荐表达 | 音标 | 词性 | 例句 |
|---|---------|---------|------|------|------|
| 1 | 故意冷落别人 | cold shoulder | /koʊld ˈʃoʊl.dɚ/ | phrase | She gave me the cold shoulder. |
| 2 | 拖延 | procrastinate | /prəˈkræs.tɪ.neɪt/ | verb | Stop procrastinating and start now. |
| ... | | | | | |
🔁 复习回顾(来自过去 30 天)
| # | 表达 | 音标 | 含义 | 出现次数 |
|---|------|------|------|---------|
| 1 | get the hang of | /ɡɛt ðə hæŋ ʌv/ | 掌握窍门 | 3 次 |
| 2 | burning out | /ˈbɜːr.nɪŋ aʊt/ | 精疲力竭 | 2 次 |
用户可以请求查看过去的学习记录:
数据保留至少 30 天供复习和汇总使用。
| 场景 | 处理方式 |
|---|---|
| 用户描述模糊 | 先确认语境,提供选项让用户选择 |
| 用户问的是语法而非表达 | 简要解释语法点,但核心仍聚焦于推荐表达 |
| 同一表达重复提问 | 正常回答,记录时自动去重(同 date+username+expression) |
| 用户要求更多例句 | 补充 1-2 个例句,不重复记录同一表达 |
| 用户用英文提问 | 同样支持,帮助润色或推荐更地道的替代表达 |
| 生僻/过度书面的表达 | 不推荐,换一个更常见的高频表达 |