law-student-flashcards · git:20260529.efece30 · 2026-05-29 · sha256 ea7b1878f1cdf073
law-student-flashcards git:20260529.efece30A
Immutable. This exact content is served forever at /api/v1/blob/ea7b1878f1cdf073.
---
name: law-student-flashcards
description: >
生成或练习记忆卡片,用于法律概念的记忆——Leitner间隔重复桶机制,
按科目存储为markdown文件,支持带自我评估的练习模式。当用户说
"练习记忆卡片""从……生成卡片""考我卡片"或想记忆法律规则时使用。
argument-hint: "[科目] [--generate | --drill | --review | --stats | --session <n>]"
---
# /flashcards
1. 加载 `$LEGAL_AGENT_PROFILE_HOME/law-student/profile.md` → 当前课程、薄弱科目、大纲位置。
2. 应用以下框架。
3. 按标志位路由:
- `--generate`:根据来源(大纲路径、笔记、教材摘录)按卡片编写规则生成卡片。写入 `$LEGAL_AGENT_PROFILE_HOME/law-student/flashcards/[科目]/cards.md`。
- `--drill`(默认):优先处理到期卡片 + 新卡片;展示问题,等待回答,展示答案,接受自我评估,更新学习桶 + 下次复习时间。
- `--review`:按学习桶浏览牌组。
- `--stats`:进度快照;标记卡住的卡片以转入口头追问。
- `--session <n>`:集中N张卡片会话,优先上次错误 + 到期卡片;将结果追加到 `study-plan.yaml` → `session_history`。
4. 应用置信度纪律:对无来源的知识生成的每一张卡片标记 `[需验证]`。
---
## 真实事项检查
如果学生问的问题听起来像是关于真实情况——他们的合同纠纷、交通事故、家庭财产问题、朋友的刑事案件、真实的金额、真实的截止日期、真实的当事人姓名——停下来。
> "这听起来像是一个真实情况,而不是假设性问题。我无法给你法律意见,你也不能——你还不是执业律师。如果这是真实的,当事人需要一位真正的律师:法律援助中心、你学校的法律诊所、当地律师协会的律师推荐服务,或(如果有经济能力)私人律师。我很乐意帮你理解其中涉及的一般法律概念,但那是学习,不是法律意见。"
注意识别:真实姓名、真实地址、真实日期、具体金额、"我的老板/房东/父母/朋友"、"我收到了传票/通知书/处罚决定"、以天为单位的截止期限。以上任一即为触发信号。
---
## 目的
大纲用于综合理解;记忆卡片用于精准记忆。法考和大多数法学院考试都奖励快速规则回忆。本技能从你的大纲(或笔记、教材摘录)中生成卡片,以轻量间隔进行练习,并追踪哪些已经掌握、哪些仍然卡住。
**不是完整的SRS系统。** 简单的Leitner式学习桶。足够学习用,足够轻量不需要维护。如果你已经在用Anki之类的工具,继续用;这是给在对话中想快速练习时用的。
---
## 置信度纪律
与其它内容生成技能相同的规则:
- 如果从你提供的来源(大纲、笔记、教材摘录)生成卡片,卡片的问题和答案来自该来源。可信。
- 如果从模型知识生成卡片而没有来源,凡是规则不确定的卡片都标记 `[需验证:规则 —— 对照来源确认]`。在将其作为学习目标记入卡片之前,你应当核对。
- 如果对某个领域不熟悉,宁可少生成卡片也不编造。8张好卡片比20张包含5张错的好。
---
## 加载上下文
- `$LEGAL_AGENT_PROFILE_HOME/law-student/profile.md` → 当前课程、薄弱科目、已有大纲
- `$LEGAL_AGENT_PROFILE_HOME/law-student/flashcards/[科目]/cards.md`(如果存在,用于增量构建)
- 用户提供的来源(大纲路径、笔记、教材摘录)(如有)
---
## 模式
标志位:`--generate | --drill | --review | --stats | --session <n>`(默认:提示选择)
### `--session <n>` —— 集中N张卡片会话
适用于学生说"来5张刑法卡片"或运行 `/law-student:session 刑法 5 --记忆卡片` 时。
- 如果存在 `$LEGAL_AGENT_PROFILE_HOME/law-student/study-plan.yaml`,加载它并读取该科目的 `session_history`。
- 优先级:上次标记为错的卡片 > 到期卡片 > 新卡片。
- 逐张进行N张卡片,按 `--drill` 流程。
- 会话结束时,将结果追加到 `study-plan.yaml` → `session_history`:
```yaml
session_history:
- date: 2026-05-08
subject: 刑法
type: flashcards
n_cards: 5
right: 3
partial: 1
wrong: 1
stuck_topics: [因果关系认定]
```
- 如果没有 `study-plan.yaml`,写入 `$LEGAL_AGENT_PROFILE_HOME/law-student/session-history.yaml`。
### `--generate` —— 创建卡片
**输入:**
- 科目(课程名称或专题)
- 来源(大纲路径、笔记,或"使用我 `profile.md` 中已有的提纲")
- 可选:目标卡片数量(默认每次10-20张)
**卡片结构:**
```markdown
### 卡片 [N]
**Q:** [问题 —— 一个概念,一张卡片]
**A:** [答案 —— 规则,一到两句话]
**法考频率:** [高频 / 中频 / 低频]
**来源:** [大纲章节、教材页码、课堂笔记日期]
**来源标签:** [元典 API] / [模型知识 —— 需验证]
**学习桶:** new
**上次复习:** —
**下次复习:** [今天日期]
**备注:** [可选 —— 区分、例外、易错点]
```
**卡片编写规则:**
1. **一张卡片一个概念。** "侵权责任构成要件"拆成4张卡片,不是1张。
2. **正面是一个问题,不是一个话题。** "过错责任原则"不好。正确的是:"侵权责任的一般归责原则是什么?"
3. **背面是一条规则,不是一个段落。** 如果答案需要一段话,拆成多张卡片。
4. **标注法考频率**,帮助学生优先背诵高频考点。
5. **标注来源**,以便练习时复查。
**引用检查。** 当卡片从模型知识而非你粘贴的来源生成时,卡片背面的规则和引用的法条/案例均由AI模型生成,未经核验。在将卡片记入学习目标前,请对照大纲、教材或检索工具(元典 API)确认。一张练到滚瓜烂熟的错卡比没有卡更糟。
### `--drill` —— 练习会话
**优先级排序:**
1. `next_review <= 今天` 且 `bucket != mastered` 的卡片
2. 尚未尝试的新卡片
3. 如果没有到期卡片也没有新卡片:询问用户是否要复习已掌握的卡片(防止遗忘衰退)
**每张卡片的练习流程:**
1. 展示 Q。等待回答。
2. 用户回答(或输入"跳过"/"不知道")
3. 展示 A。
4. 用户自我评估:`正确` / `部分正确` / `错误` / `不知道`
5. 按下表更新学习桶 + 下次复习:
| 自我评估 | 学习桶变化 | 下次复习 |
|---|---|---|
| 正确 | 升一级(new → learning → review → mastered) | new +1天,learning +3天,review +7天,mastered +21天 |
| 部分正确 | 不变 | +1天 |
| 错误 | 降一级(review → learning;learning → new;new 保持 new) | 今天 +4小时 |
| 不知道 | 降一级 | 今天 +4小时 |
### `--review` —— 浏览牌组
展示某个科目的所有卡片。按学习桶分组。适用于扫描牌组内容和手动调整卡片内容。
### `--stats` —— 进度快照
每个科目:卡片总数、学习桶分布、今日到期、本周复习数。高亮任何跌回 `new` 超过两次的卡片——这些是卡住的概念,值得通过 `/law-student:socratic-drill` 进行口头追问。
---
## 与其它技能的联动
- **outline-builder:** 构建或扩展大纲后,主动提出从新材料生成记忆卡片。
- **socratic-drill:** 如果某张卡片答错2次以上,将其转给 `/law-student:socratic-drill` 进行口头深入理解——对没有真正理解的概念,光靠记忆卡片是不够的。
- **bar-prep-questions:** 法考备考科目中记忆卡片成绩差的,在客观题练习中加大权重。
---
## 存储
```
flashcards/
└── [科目]/
└── cards.md
```
每个科目一个文件。卡片为markdown格式。学习桶/复习元数据内联在每张卡片中。对超大型牌组(>500张)不是最优,但对典型的法学院牌组规模完全够用。
---
## 检索工具集成
本技能可配合元典 API 平台核验法律引用。
**MCP 连接器:**
- `yuandian-law`(元典法规检索 MCP)— https://open.chineselaw.com/mcp/law/stream
- `yuandian-case`(元典案例检索 MCP)— https://open.chineselaw.com/mcp/case/stream
API 密钥获取:https://apiplatform.legalmind.cn/api-square
**MCP 已集成 —— 工作流中的使用:**
- `--generate` 模式:生成卡片时,若规则来自模型知识(非用户提供的来源),优先通过 `yuandian-law` 检索对应法条原文核验规则准确性。MCP 可用时打 `[元典 API]`;不可用时打 `[模型知识 —— 需验证]`。
- `--drill` 模式:学生标记某张卡片"错误"或"不知道"时,通过 `yuandian-law` 检索正确法条原文,在展示答案时对比法条原文和卡片内容。
**来源标签约定:**
- `[元典 API]` —— 引用经元典检索工具核验。
- `[模型知识 —— 需验证]` —— 引用来自模型训练知识,建议对照教材或法考辅导资料交叉核对。
---
## 本技能不能做什么
- **替代 Anki 等专业工具。** 如果你已经有卡片学习习惯,继续用。这是给在对话中想快速练习不需要切换应用时用的。
- **为了凑数量编造卡片。** 如果从来源只能生成8张有把握的卡片,那就是8张。用大量 `[需验证]` 标记的猜测来凑数比小牌组更糟。
- **强制学习纪律。** 错过的复习日会累积;本技能只显示到期内容。由你决定是否练习。
- **替你学懂规则。** 卡片用于练习你已经学过的内容。如果某张卡片反复出错,问题在上游——用 `/law-student:socratic-drill` 或重新阅读来源材料。