Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/wy51ai/edulab/edu-solid-geometrynpx skills add wy51ai/edulab --skill edu-solid-geometrygit clone --depth 1 https://github.com/wy51ai/edulabWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/wy51ai/edulab/edu-solid-geometry)<a href="https://agentmods.dev/skills/wy51ai/edulab/edu-solid-geometry"><img src="https://agentmods.dev/badge/skills/wy51ai/edulab/edu-solid-geometry.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00283 | $0.02187 |
| Opus 5 | $0.00142 | $0.01094 |
| Sonnet 5 | $0.00057 | $0.00437 |
| Haiku 4.5 | $0.00028 | $0.00219 |
Grade A, and why
edu-solid-geometry scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 116 lines — stays where its author put it; the contents beside it link to each section on GitHub.
立体几何解题 → 交互网页
这个技能产出什么
一个可直接用浏览器打开的单页 HTML:左侧题面/答案/分步解析(公式用 MathJax),
右侧是题目对应的 3D 模型(Three.js,可旋转缩放,分步高亮关键元素并切换镜头)。
形态与 template/lesson.html 一致。
依赖(重要)
计算核心 lib/geometry_kernel.py 依赖 sympy。运行脚本前先确认有一个能 import sympy 的
python3:跑 python3 -c "import sympy"。
缺库时的处理(重要):若 import 报错(sympy 或后续用到的任何库都同理),先询问用户是否安装,
得到同意后再帮忙安装(python3 -m pip install <库名>),或换一个已装该库的解释器;不要未经询问直接装。
下文命令里的 python3 均指这个能跑通依赖的解释器。
工作流程
第 1 步:得到 problem spec(三入口归一)
把题目整理成结构化 spec(格式见 references/problem-schema.md):几何体类型与尺寸、
已知构造点/条件、所求类型与对象、语言。
- 文字题目:直接抽取。
- 图片:用视觉读图抽取,并把识别到的题目回显给用户确认(题面/几何体/尺寸/所求/语言)后再继续。
- 随机出题:选定几何体与题型,用 kernel 随机参数求解,答案不规整就重抽。
输出语言跟随提示词语言:英文提示 → 英文网页,中文 → 中文。spec 里记下
language。
第 2 步:用 kernel 精确计算(不要心算)
按 references/conventions.md 的建系约定与解法配方,调用 lib/geometry_kernel.py:
得到精确坐标、关键向量、法向量、最终答案,以及各步骤要展示的中间量(均为 LaTeX 字符串)。
顶点的 three.js 坐标用 kernel.to_three(points, scale) 得到。
可先在命令行跑 kernel 验证答案,例如:
python3 lib/geometry_kernel.py # 内置样例自检
第 3 步:组装 lesson data 并注入模板
📍 输出位置(重要):成品 HTML 一律写到用户当前工作目录(
Path.cwd()),除非用户显式指定路径。 绝不要写进技能自身目录(skills/edu-solid-geometry/output/等)——那是技能内部的开发样例目录。 临时构建脚本也放到 cwd 或临时目录(如/tmp),用完可删。
写一个临时构建脚本,导入 kernel、bodies、generate,拼出 lesson / steps / model 数据
(schema 见 references/problem-schema.md),再调用 generate.render_html(data, out) 注入模板产出 HTML。
out 用 cwd 下的绝对路径:
from pathlib import Path
out = Path.cwd() / "solution-<题目简述>.html" # 落在用户当前目录,而非技能目录
generate.render_html(data, out)
steps[*].content里的所有数值直接引用 kernel 的计算结果,模型只负责组织讲解文字(按目标语言书写)。model.points用kernel.to_three(...)的结果;model.spheres/edges用lib/bodies.py的拓扑 (quad_pyramid/tri_pyramid/cuboid/cube/prism),罕见几何体可手写 edges。- 每步配
highlight(该步可见元素的绝对集合)与cameraPos。 - 题面给出线段长度时:为对应棱加
measure元素(label用 LaTeX,如2\sqrt{2}), 并把它放进"建系/列已知条件"那步的highlight,在 3D 图中点处标出长度(见 problem-schema)。 - 英文输出时填
lesson.ui英文文案并设lesson.language="en"。
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 116 lines · 283 tokens per session scan A d3ac945d78ee
edu-solid-geometry is a skill published in the GitHub repository wy51ai/edulab (1,131 stars, last pushed 24d ago), licensed Apache-2.0. It adds 283 tokens to every session and 2,187 once invoked, about $0.0014 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…