GeoGebra-Studio

mcp
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: GPL-2.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Uyari
  • fs module — File system access in .github/workflows/check.yml
  • process.env — Environment variable access in .github/workflows/publish-npm.yml
  • fs module — File system access in .github/workflows/publish-npm.yml
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

A native GeoGebra skill for AI agents to create, edit, and export mathematical diagrams in GGB, TikZ, SVG, and more.

README.md

GeoGebra Studio

CI License: GPL-2.0-or-later Node.js GitHub stars

A portable Agent Skill for editable mathematical constructions. Describe a 2D or 3D figure, generate a local interactive GeoGebra HTML, inspect and edit it in a browser, then export the current construction.

English · 简体中文 · 繁體中文 · Español · Français · Deutsch · 日本語 · 한국어 · Português (Brasil)

Right triangle rendered by the official GeoGebra applet

What it does

  • Native editable GeoGebra figures with free/dependent objects and Algebra View.
  • Responsive 2D/3D viewer, nine theme families, light/dark mode and a toolbar outside the canvas.
  • Seven in-viewer downloads: GGB, HTML, PNG, SVG, PDF, XML, TikZ.
  • Additional local Asymptote and mixed TSQX/Asymptote source exports from GeoGebra XML.
  • Bundled Gikz cleans native GeoGebra PGF before TikZ export.
  • No MCP server, backend, database or separate Chrome setup for normal usage.

Requirements: Node.js 22.12+ and internet access when opening a generated HTML (GeoGebra's official engine is loaded remotely). No separate GeoGebra Studio npm installation is required for the standalone Skill.

Install as an Agent Skill (recommended)

In an Agent Skills-compatible environment, install from the GitHub repository and select geogebra-studio:

npx skills add YZDame/GeoGebra-Studio --skill geogebra-studio

Alternatively, copy the entire skills/geogebra-studio/ folder into your agent's skills directory. It must contain SKILL.md, scripts/, references/, and the bundled runtime/. The runtime is packaged with the Skill; do not copy only SKILL.md. The CLI uses Node.js built-ins and bundled code, without npm install.

Agents need file-write/shell access. Open HTML in the client's built-in browser when available, or a normal browser. A built-in browser pane is not a universal Agent Skills feature. Native plugin installation has been developed for Codex; other clients require environment-specific verification.

Optional Codex Plugin

The Codex distribution is only a convenience wrapper around the same Skill. Install version 0.6.0:

npx @lydt/[email protected] install

Restart the Codex session so installed Skills are reloaded. For source development, run npm ci && npm run build, then node dist/cli.js install --local.

Quick start

Write diagram.json in your working directory:

{
  "filename": "circle.html",
  "commands": ["A=(0,0)", "B=(4,0)", "c=Circle(A,B)"],
  "visibleLabels": ["A", "B"]
}

Then ask your agent to use the installed geogebra-studio Skill. Or run directly:

node /path/to/geogebra-studio/scripts/geogebra-studio.cjs generate --input /absolute/project/diagram.json --workspace /absolute/project

For agent clients, use a real browser pane; an HTML file-preview pane may restrict GeoGebra's remote scripts. The bundled runtime includes a single-document HTTP preview:

node /path/to/geogebra-studio/scripts/geogebra-studio.cjs preview --input /absolute/project/diagram.html --workspace /absolute/project

Keep the process running and open its returned loopback URL in the client browser. It serves only the selected HTML snapshot; restart it after changing that file. Normal browsers can open the HTML directly. This does not override host access policies; stop and report a security rejection rather than switching transports to evade it. Verify window.geogebraStudio.status === "ready" and the visible drawing in the intended client before claiming successful rendering.

The generator writes new files only; it does not execute or validate the geometry. The viewer reports errors, but a mathematical/visual check requires inspection of the actual figure.

Edit, save and export

Drag free points or open the native object editor using the toolbar's left button. Theme and download controls are aligned to the right. User edits are not automatically written back to the original JSON/HTML: download current HTML or GGB before closing or refreshing. Current HTML embeds packed GGB and preserves edits when reopened.

For additional source formats, download the current XML from the viewer (or obtain await window.geogebraStudio.snapshot() in the page), then run:

node /path/to/geogebra-studio/scripts/geogebra-studio.cjs export --input /absolute/project/figure.xml --format tsqx --workspace /absolute/project --output figure.tsqx
node /path/to/geogebra-studio/scripts/geogebra-studio.cjs export --input /absolute/project/figure.xml --format asymptote --workspace /absolute/project --output figure.asy

These exports cover a documented semantic subset and reject unsupported dependencies rather than silently freezing them. TSQX is mixed TSQX/Asymptote, not pure TSQX. TikZ is a static visual snapshot generated via native GeoGebra PGF and bundled Gikz.

Architecture

Agent → SKILL.md → construction JSON → bundled local CLI/HTML viewer → official GeoGebra applet → current-state files

The one Skill uses progressively loaded references/ for construction, export, visual standards and troubleshooting. The standalone runtime and the Codex Plugin share the same build sources. The project ships no MCP server.

See teacher walkthrough, sample constructions, architecture, and contributing.

Develop and verify

npm ci
npm run verify
npm run test:unit

Optional browser/real-engine verification requires an available Chrome executable and internet. A clean Skill install is checked without installing dependencies inside the installed Skill.

GeoGebra Studio is an independent community project, not affiliated with GeoGebra. Combined distribution: GPL-2.0-or-later. Third-party notices and prior MIT attributions are retained in LICENSE, LICENSE-MIT and THIRD_PARTY_NOTICES.md.

Yorumlar (0)

Sonuc bulunamadi