These public skills teach MCP-capable agents to use Pascal for editable building models and bounded spatial answers.
Status on 2026-09-10. Installable and publicly listed are separate results.
| Channel | Status |
|---|---|
| skills.sh | Indexed automatically from this repository; installable, with install counts on that listing. |
| Claude Code plugin | Installable from this Git marketplace; not submitted to the Anthropic plugin directory. |
| Codex and Cursor Agent Plugin | Installable from this repository, including the root mcp.json server; a Cursor-native .cursor-plugin/plugin.json carries the marketplace logo and category and adds an optional hosted key; not submitted to the OpenAI or Cursor marketplaces. |
| Gemini CLI extension | Root gemini-extension.json is present; installable from a release tag that carries it, and gallery listing waits on the gemini-cli-extension repository topic. |
| Official MCP Registry | io.github.pascalorg/editor 0.6.1 is published. |
| ClawHub and OpenClaw | Not published; waiting on an authorized publisher accepting the MIT-0 terms. |
List the available skills:
npx skills add https://github.com/pascalorg/editor/tree/main/skills --listInstall both skills:
npx skills add https://github.com/pascalorg/editor/tree/main/skills \
--skill pascal-3d \
--skill furniture-fitInstall just the furniture workflow:
npx skills add https://github.com/pascalorg/editor/tree/main/skills/furniture-fitUse -g for a user-wide installation or -a claude-code -a codex to choose hosts explicitly.
skills.sh indexes this repository automatically, so no submission step is involved; its listing at skills.sh/pascalorg/editor also reports install counts from the skills CLI.
After publication under Pascal's ClawHub publisher, use the owner-qualified registry references and verify their trust envelopes:
openclaw skills install @pascalorg/pascal-3d
openclaw skills install @pascalorg/furniture-fit
openclaw skills verify @pascalorg/pascal-3d
openclaw skills verify @pascalorg/furniture-fitThe references above remain unavailable until an authorized Pascal publisher accepts ClawHub's MIT-0 publication terms and creates the releases. OpenClaw's skills-sh: resolver also requires the skill to be indexed by ClawHub, so the existing skills.sh listing is not a pre-publication workaround. Installing either skill provides instructions only; follow its setup reference to connect Pascal MCP.
This repository is also a shared plugin marketplace containing one plugin backed by the same skills/ folders. For Claude Code:
/plugin marketplace add pascalorg/editor
/plugin install pascal-agent-skills@pascal
For Codex:
codex plugin marketplace add pascalorg/editor
codex plugin add pascal-agent-skills@pascalThe Claude plugin installs the instructions from the canonical skills/ directory and supplies two servers: a local stdio server that runs pascal mcp connect, and a hosted pascal-hosted server for https://editor.pascal.app/api/mcp that prompts for an optional Pascal API key when the plugin is enabled and keeps it in the OS keychain. This skills/ directory is itself the Claude plugin root, so an install copies only the two skill bundles and their plugin metadata rather than the repository. Install and start the Pascal CLI first, and keep pascal on Claude Code's PATH. The bundled local connector needs no Pascal account or API key and does not upload projects automatically; leaving the hosted key empty keeps the install local-only. Codex and individually installed skills still use the setup reference included in either skill.
Claude Code 2.1.258 loads both the user-scoped pascal server created by pascal mcp setup claude and the plugin-provided server. Run claude mcp remove --scope user pascal before reloading or restarting Claude Code so only the plugin owns the connection lifecycle. Use /mcp to remove or disable any project- or local-scoped Pascal connection too. Leaving both connections active violates the one-active-agent-client-per-local-service requirement. For a hosted Pascal project, disable the plugin-provided local server in /mcp, then configure the hosted endpoint from the setup reference.
Plugin installation alone never creates an account, uploads a project, or authorizes paid work.
The root plugin.json is the portable Agent Plugins manifest used for OpenAI submission, and the root mcp.json is the MCP configuration path Codex reads; Claude Code reads the same local server from .mcp.json in its skills/ plugin root, next to .claude-plugin/plugin.json, and Cursor reads it from .cursor-plugin/mcp.json. Each host keeps its own copy of the hosted server because the credential placeholder is host-specific — ${user_config.pascal_api_key} in Claude Code, the bare ${PASCAL_API_KEY} plugin variable in Cursor — while the portable mcp.json stays local-only: Agent Plugins 1.0.0 forbids secrets and placeholder expansion in headers, and Codex strips a plugin-supplied Authorization, so Codex users register the hosted endpoint with codex mcp add --bearer-token-env-var PASCAL_API_KEY. The repository keeps .codex-plugin/plugin.json as a compatibility fallback and validates that both expose the same OpenAI listing metadata. Public-directory submission, review, and publication are separate external steps; a Git marketplace install does not make the plugin publicly listed in ChatGPT or Codex.
@pascal-app/cli 1.0.0 on the npm latest tag carries the read-only check_collisions.candidate capability used by the current furniture workflow.
Use one active agent client per local CLI service. Its standalone HTTP runtime shares active scene state; the hosted endpoint uses a separate session-isolated bridge.
The root gemini-extension.json declares the same pascal mcp connect server and loads this file as the extension context. Gemini CLI resolves a plain repository URL to the GitHub release marked Latest, which predates this manifest, so install from a release tag that contains it:
gemini extensions install https://github.com/pascalorg/editor --ref <release tag>Gemini CLI copies the extension on install; run gemini extensions update pascal to pull later changes.
| Skill | Use it for |
|---|---|
pascal-3d |
Connect Pascal safely, inspect or edit a scene, validate it, save it, and return a verified handoff. |
furniture-fit |
Assess a furniture footprint at stated poses and report collisions, door keep-outs, evidence gaps, and one bounded blocker-aware next action. |
Each skill is standalone. Its references/, examples/, and evals/ folders travel with that skill when installed individually.
The source-reviewed date records a code and public-documentation review. The native-host-validation field points to a source-specific record rather than asserting that every host passed. See the validation record for evaluated versions, completed checks, and remaining limits. Package installation, native task completion, and public directory listing are separate results.
bun run skills:validateRun claude plugin validate . --strict manually as well. It stays out of the script and out of CI because it needs the Claude Code CLI, which is not installed on every runner.
The repository validator checks the exact two-skill public discovery surface, keeps contributor-only workflows internal, and checks frontmatter, semantic skill versions, bundled links and their heading anchors, task and trigger fixtures, semantic furniture next-action decision cases, scoped ClawHub ignore policies without re-inclusion overrides, the exact Claude local and hosted MCP configuration with the hosted key declared as an optional, sensitive user-configuration option, an identical local pascal server in the mcp.json files Codex and Cursor read, the Cursor hosted server and its optional, never-required PASCAL_API_KEY plugin variable with no undeclared placeholders, a Gemini CLI manifest that runs the same command at the same version, Claude marketplace and plugin skills lists that equal the packaged bundles exactly, the publishing suite, the exact 46-tool OpenAI annotation and justification packet, portable and compatibility manifest consistency with one plugin version, description, and author across every plugin descriptor, OpenAI public-directory metadata limits including its documented interface fields, bundled branding assets, and accidental private-path or credential leakage.