Back to skills
SKILL.md
Competition Scenario Extractor
ASecurity当物理材料太长、太散或不是题面形态时使用——竞赛原题、IYPT 题目描述、文献段落、实验记录、一段现象叙述。把它压成干净题面、给定量台账、约束、子问题树;每一条"忽略""理想""视为"都标注它关掉了哪段物理、在什么无量纲判据下会失效;同时抓出模糊措辞、缺失约束、单位与符号的自相矛盾。只做提取与暴露缺口,不补条件、不选模型、不解题。
- 5 stars
- 0 votes
- 0 copies
- 0 views
- Added November 7, 2026
Works with
Security analysis
100/100npx -y skills add ChromiteCr/Skills --skill competition-scenario-extractor --agent claude-codeAre you the author of Competition Scenario Extractor?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/chromitecr-competition-scenario-extractor)---
name: competition-scenario-extractor
description: 当物理材料太长、太散或不是题面形态时使用——竞赛原题、IYPT 题目描述、文献段落、实验记录、一段现象叙述。把它压成干净题面、给定量台账、约束、子问题树;每一条"忽略""理想""视为"都标注它关掉了哪段物理、在什么无量纲判据下会失效;同时抓出模糊措辞、缺失约束、单位与符号的自相矛盾。只做提取与暴露缺口,不补条件、不选模型、不解题。
category: physics/problem-framing
version: 0.1.0
status: draft
priority: P0
compatible_agents:
- claude-code
- codex
- cursor
- codebuddy
- nestudy
- generic-llm-agent
display_name: 物理题面提取器
outputs:
- chat
max_rounds: 20
suggest_hint: 先用「物理题面提取器」把长材料压成干净题面和缺口清单,再决定用什么原理
---
# 物理题面提取器 / Competition Scenario Extractor
把一堆材料变成一份**可以逐项确认的题面**。它负责回答"这道题到底给了什么、要什么、
哪些地方还没说清",不负责回答"怎么做"。
关键动作只有一个:**把材料里每一处省略、每一处形容词、每一处理想化,从背景里拎出来
变成台账上的一行。** 藏在叙述里的省略是后面所有错误的源头。
## 何时使用 / When to use
- 竞赛原题很长,附带背景故事、图表、多个子问和提交要求
- IYPT 题目只有一两句现象描述,几乎所有条件都要自己补
- 材料是文献段落或实验记录,还不是题面形态
- 已经读了几遍,仍然说不清"条件够不够"
- 团队几个人对题意理解不一致,需要一份共同版本
**不适用于** / Not for:
- 题面已经干净,要追定律与适用条件 —— 用 `problem-formalization-coach`
- 现象清楚,要排机制 —— 用 `physics-mechanism-decomposer`
- 数学建模竞赛的完整拆题(含评分规则、交付物、数据口径)—— 用 `modeling-problem-reading-coach`
## 需要的输入 / Inputs
| 输入 | 必填 | 说明 |
|---|---|---|
| 原始材料 | 是 | 保留编号、单位、图表说明、脚注。**不要只给二手概述** |
| 材料类型 | 是 | 竞赛题 / IYPT 题 / 文献段落 / 实验记录 / 口头描述;处理方式不同,见下节 |
| 提交或验收要求 | 否 | 页数、必须回答的问题、要交的图表;这些是约束不是装饰 |
| 使用者已有的理解 | 否 | 用来定位分歧,不自动当成材料事实 |
只有转述时仍然可以做**临时提取**,但输出顶部必须写"未与原始材料核对",
并且不能把转述里没有的条件补成常识。
## 四类材料的处理差异 / Four kinds of source
| 材料 | 最容易丢的东西 | 必须额外做的一步 |
|---|---|---|
| **竞赛题** | 子问之间的依赖、提交要求、"本题中取…"这类局部约定 | 按原编号逐问列动作词;局部约定只在其所属子问内生效,不要全局化 |
| **IYPT / 开放现象题** | 现象本身的边界(在什么条件下能看到) | 先写"可观测事实"与"待解释的部分"两栏。**题目没给的参数不是缺陷,是研究者要自己选的自变量**,登记为待定而不是【缺失】 |
| **文献段落** | 观测、作者解释、他人结论被读成同一种东西 | 分三栏登记:**报告的观测** / **作者的解释** / **转引的结论**。三者证据力不同,后两者不能当事实用 |
| **实验记录** | 仪器量程、分辨率、采样率这些隐含约束 | 每个量标出它是**实测**、**设定**、**由其它量算出**还是**未记录**;仪器分辨率决定了有效数字上限 |
## 流程 / Process
### 1. 先抄动作词,再理解内容
逐句扫一遍,只提取三样:**要做的动作**(求、证明、解释、估计、设计、比较、判断)、
**给定的量**、**问句**。背景故事、人物、公司名一律不进台账。
动作词不同,产物就不同:「解释」要机制,「估计」要量级,「求」要数值,
「设计」要一个方案加判据。把它们混成"做这道题"会在最后一步暴雷。
### 2. 建给定量台账
| 列 | 说明 |
|---|---|
| ID | `G1`、`G2`… 稳定编号,后续一律用 ID 引用 |
| 符号 | 材料里用的符号;材料没给符号就自己起一个并声明 |
| 含义 | 一句话,写清是哪一个物体、哪一个时刻、相对什么 |
| 数值 | 照抄,**不改有效数字**,不做换算(换算写在下一列) |
| 单位 / 量纲 | 化到基本量纲;没给单位写【缺失】 |
| 来源 | 【题面】/【使用者提供】/【标准值】/【推断】 |
三条纪律:
- **`1 m` 与 `1.00 m` 不是同一个条件。** 有效数字是材料给的信息,抄的时候不要"整理"掉。
- **"取 `g = 10 m/s²`"是题面允许的简化,属于【题面】**,不要替它改成 9.8。
- 同一个物理量在不同子问里取值不同时,**分成两个 ID**,不要合并。
### 3. 建理想化台账
材料里每一处"忽略""不计""理想""视为""光滑""轻质""足够慢""足够小",各占一行:
```
原文 | 关掉的机制 | 破坏判据(无量纲比) | 本题条件下的量级 | 结论
```
机制与判据查 `_shared/idealization-catalog.md`。
**"本题条件下的量级"这一列填不出来就写【缺失】,不要跳过它直接写"可忽略"。**
材料说"忽略空气阻力"是出题人给的条件(【题面】);
"所以空气阻力确实可忽略"是一个需要论证的结论(【推断】)。这两件事必须分开写。
材料**没有明说但显然被默认**的理想化也要登记(点质量、均匀重力、绳不可伸长、
接触瞬时完成、温度均匀)。这些是最容易在后面被当成事实的一类。
### 4. 建约束清单
约束是方程,不是描述。分四种登记:
| 类型 | 例子 |
|---|---|
| **几何 / 运动学约束** | 绳长不变、纯滚动 `v = ωR`、两物体保持接触、沿轨道运动 |
| **物理约束** | 非负(质量、绝对温度、概率)、不超过某上限、能量非负 |
| **边界与初始条件** | `t = 0` 时的状态、边界处的值或梯度 |
| **验收 / 提交约束** | 要交什么图、精度要求、时间限制 |
每条约束写清**它在哪个阶段成立**。"纯滚动"往往只在打滑之前成立,
写成全程约束就把后半段做错了。
### 5. 画子问题树
节点 = 一个**可独立验收的产物**。边分三种,必须标明:
- **数据依赖**:下游要用上游算出的数值
- **定义依赖**:下游沿用上游的符号、口径或坐标系
- **论证依赖**:下游结论依赖上游结论成立
没有依赖就不连线。**出现循环依赖时直接指出来**,这通常说明子问划分错了。
### 6. 跑三项确定性检查
这一步不需要理解物理,做完就能筛掉一批错误。
**检查一:模糊措辞。** 下列词出现即登记,并追问"相对什么?门槛是多少?"
> 较小 · 很大 · 足够 · 适当 · 一定的 · 理想 · 近似 · 显著 · 明显 · 大致 ·
> 缓慢 · 迅速 · 稳定 · 均匀(对什么均匀)· 忽略不计 · 通常 · 一般来说
「足够慢」不是条件,`τ_process ≫ τ_relax` 才是条件。
**检查二:符号与单位一致性。** 逐条查:
- 同一符号在材料里是否有两个含义(`T` 周期还是温度,`R` 半径还是电阻)
- 同一个量是否出现两种单位而没有换算说明
- 台账里每个量的量纲能否写成基本量纲
有执行能力时,把台账写成 `dimcheck.py` 的输入跑一遍:
```bash
python3 ../_shared/scripts/dimcheck.py problem.dim
```
没有执行能力时手工做同样的检查,并把结果标为"人工检查",不要写成"已验证"。
**检查三:定不定得下来。** 数一遍:
```
未知量个数 vs 独立方程个数(含约束方程)
```
- 未知 > 方程 → **欠定**。缺的是什么,逐个列出来。**不要用"合理假设"补上去。**
- 未知 < 方程 → **超定**。要么有冗余(可以用来验算),要么材料自相矛盾,必须查清是哪一种。
- 要求的产物**根本不出现在任何给定量里** → 材料缺了一整段,直接指出。
### 7. 先交产物,再问最少的问题
先给出完整的第一版提取,再只问会改变题面的问题,通常不超过 4 个。优先级:
1. 会改变要求产物的歧义
2. 会改变量的定义、单位或适用阶段的歧义
3. 会改变子问依赖的范围选择
4. 缺失但必须的验收要求
回答只影响某一行时,改那一行,不重写整份提取。
## 输出格式 / Output
```markdown
## 核对状态
<材料版本、已读与未读部分;只有转述时在此醒目标注>
## 干净题面
<按原编号重写,只留动作、给定量、约束与问句;不超过原文三分之一>
## 给定量台账
| ID | 符号 | 含义 | 数值 | 单位 / 量纲 | 来源 |
## 理想化台账
| 原文 | 关掉的机制 | 破坏判据 | 本题量级 | 结论 |
## 约束
| ID | 类型 | 表达式或陈述 | 生效阶段 |
## 子问题树
<列表或 Mermaid;边标数据 / 定义 / 论证依赖>
## 三项检查
- 模糊措辞:<逐条,附追问>
- 符号与单位:<冲突项;脚本已跑 / 人工检查 / 未执行>
- 定不定得下来:<未知 N 个,独立方程 M 个,结论>
## 缺口
| ID | 缺什么 | 挡住哪一步 | 谁能补 |
## 交接
- 已确认 / 暂定 / 未解决
- 下一步:<通常是 problem-formalization-coach 或 physics-mechanism-decomposer>
```
交出前做三项闭环检查:原材料每个动作词都有对应产物;每个量只有一个含义和一个单位;
每条理想化都有"关掉的机制"和"破坏判据"两列。任何一项没过,先补。
## 工具与跨 Agent 降级 / Tool fallback
- 有文件读取能力时,只读指定材料与附件;不扫描整个目录。
- 没有文件能力时,请使用者粘贴原文,产出标为临时版本。
- 有执行能力时用 `dimcheck.py` 做检查二;没有时人工做,并如实标注"未执行"。
- 有 Mermaid 支持时输出子问题树;没有时用编号边列表表达同一信息。
## 边界 / Boundaries
- **不补条件**:缺什么登记什么。"通常取""一般认为"不能进台账。
- **不解题**:不列运动方程、不选模型、不给数值答案。
- **不替材料消歧**:可以列出各种解释的后果,选择留给使用者。
- **不整理有效数字**:材料给几位就抄几位。
- **不把作者的解释当观测**:文献里的因果陈述是【推断】,不是事实。
- **不代写提交物**:可以整理使用者给的理解,不生成可直接提交的解答。
## Token 控制 / Token discipline
- 长材料先按编号提动作、给定量和问句,不复述背景
- 台账只留会进入推导或验证的量;字段极多时先列字段组,按需展开
- 只加载真正要用的 `_shared/` 文档
- 交接只带已确认项、风险最高的暂定项和缺口
## 参考资料 / References
- `../_shared/idealization-catalog.md` — 理想化关掉了什么、什么时候失效(第 3 步)
- `../_shared/physics-evidence-contract.md` — 状态标签与有效数字纪律(第 2 步)
- `../_shared/dimensionless-groups.md` — 破坏判据的定义(第 3 步)
- `../_shared/scripts/dimcheck.py` — 检查二
## 变更记录 / Changelog
| 版本 | 日期 | 变更 | 类型 |
|---|---|---|---|
| 0.1.0 | 2026-08-30 | 初始草稿:四类材料的差异、理想化台账、三项确定性检查、子问题树 | minor |
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.