Skip to content

ggb-plugins-dsh

Verified

ggb-plugins-dsh · v0.8.5 · MIT

GeoGebra construction Skill and verified delivery CLI for DeepSeek Harness

Install

dsh plugin add ggb-plugins-dsh

Confirm the layer applied with dsh --profile default --dump-config — see the install guide.

Source

Tags

Creators

Readme

ggb-plugins

English | 简体中文

把文字或图片中的二维数学题变成可交互的 GeoGebra 文件。宿主 Agent(Codex 或 DeepSeek Harness)理解题意并编写原生 Algebra/CAS 程序;本项目在本地执行、逐条件核验、导出 .ggb、重新加载,并交付文件、核验报告和截图。

支持中文和英文。Agent 根据你的偏好和上下文选择工作语言,保留题目原文,且只分析条件与构图方法,不替你给出题目答案。

需要什么

依赖 用途
Codex 或 DeepSeek Harness(DSH) 理解题意并编写原生 GeoGebra 程序
Node.js 22+ 与 pnpm 11 运行本地 CLI、准备依赖
curl 与 unzip 下载并解压固定版本的 GeoGebra 运行时
Google Chrome 或 Microsoft Edge 核验时以 headless 方式驱动 applet

不需要额外模型密钥。安装需要网络;GeoGebra 与浏览器不随包再分发。构建发布包时另外使用 zip、tar 与 npm。

安装

已公开资产见 GitHub Releases。当前 Codex 安装引导改动尚未公开发布;本地包已包含引导 Skill。版本可用性、安装与运行依赖准备见各客户端说明:

DSH bundle 也已发布到 npm:dsh plugin --profile desktop add [email protected]。

桌面用户可以把这一句安装指令粘贴到 DSH 对话框,由 DSH 代为安装。

两个客户端各自安装,共用同一套执行与核验管线。两份说明都以运行依赖准备(setup-plugin,会报告实际使用的浏览器)和就绪检查(doctor)结束。

第一道题

启用插件后,在新的宿主会话中直接描述题目,图片可以随题附上。

用 GeoGebra 作三角形 ABC,取 AB 的中点 M,连接 CM,把中线标红。拖动 A 验证中点和中线联动,保存文件并打开交互预览。

构造、重载和全部自动核验都以 headless 运行,不打开中间窗口。失败或无法核验的必需条件会阻止交付,而不是被跳过;失败会保留诊断,便于下一轮修正。必要条件缺失或歧义时 Agent 先澄清;未指定坐标时它会说明自行选择的初始构型。Agent 可以自行决定什么、不能决定什么,见 Skill。

你会得到什么

成功运行写出一个交付目录:

文件 用途
<题目>.ggb 按题目命名的原生文件,可在 GeoGebra 中打开、查看并继续编辑
verification.json 逐条件结果:构造、重载与交互样本
preview.png 交付构型截图
request.json、manifest.json 输入留档与交付清单

报告会说明实际执行了哪些检查、有限交互样本覆盖到哪里,不会声称构成一般性证明。

交付目录位于 <outputDir>/<题目>/delivery/;<题目> 同时是 GGB 文件名,同名题目自动追加 -2、-3,不覆盖旧文件。

交互预览

预览加载同一份交付的 GGB,支持适用的点拖动、参数变化与缩放,且不回写交付文件。预览进程在页面加载后自动退出,窗口继续可用;需要重新加载时再执行一次 preview;一次性宿主退出后进程可能被回收。自动复核加 --headless。

直接使用 CLI

宿主会替你调用这个 CLI,其他本地工具也可以直接驱动:

node <installed-plugin>/dist/src/cli.js doctor
node <installed-plugin>/dist/src/cli.js inspect --ggb /absolute/base.ggb
node <installed-plugin>/dist/src/cli.js build --request /absolute/request.json
node <installed-plugin>/dist/src/cli.js preview --delivery /absolute/delivery

已有 GGB 需要改颜色、线型、填充、可见性,或继续构造(增加对象、修改独立数值或坐标)时,在请求中声明 base;inspect 列出对象清单、当前值以及请求必须写入的摘要。删除、重命名和视图修改不支持。请求编写方式见 能力契约。

从源码运行

先满足上表依赖,然后:

pnpm install --frozen-lockfile
pnpm setup:runtime
pnpm build
pnpm demo

pnpm demo 会把内置三角形示例构造到 output/。验证与维护命令、Agent 的工作规则以及发布流程都在 AGENTS.md,这里不重复。

仓库结构

  • src/:CLI、执行、核验与交付管线。
  • viewer/:承载 GeoGebra applet 的本地页面。
  • skills/:两个宿主共用的 Skill。
  • codex/、dsh/:各宿主的插件资产、安装说明与验收记录。
  • examples/、tests/:可运行输入与回归用例。
  • scripts/:依赖准备、两种打包与覆盖记录工具。
  • docs/:需求与设计、重要修改记录与跨客户端验收记录;历史阶段结果见归档索引。

支持范围与边界

  • 支持:二维几何、函数、方程、微积分、列表矩阵与统计,中英文均可。
  • 不支持:三维构图、无法声明基线的外部 GGB 续题、一般数学证明。
  • 原生命令可以接入,不等于全部命令与重载都已验收;边界见 命令覆盖记录。
  • 数值采样与未决 CAS 结果是证据,不是证明。

项目采用 MIT 许可。GeoGebra 的独立许可与归属见 第三方说明。