by pascalorg
Open-source 3D architectural editor with a local CLI, MCP tools, and practical workflows for humans and AI agents.
# Add to your Claude Code skills
git clone https://github.com/pascalorg/editorLast scanned: 9/10/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-09-10T08:40:31.087Z",
"npmAuditRan": false,
"pipAuditRan": true,
"promptInjectionRan": true
}editor is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by pascalorg. Open-source 3D architectural editor with a local CLI, MCP tools, and practical workflows for humans and AI agents. It has 23,135 GitHub stars.
Yes. editor passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/pascalorg/editor" and add it to your Claude Code skills directory (see the Installation section above).
editor is primarily written in TypeScript. It is open-source under pascalorg on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh editor against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
An open-source, local-first 3D building editor built with React Three Fiber and WebGPU. Run it in the browser or from the CLI, and connect AI agents through MCP.
https://github.com/user-attachments/assets/8b50e7cf-cebe-4579-9cf3-8786b35f7b6b
Node.js 22.13 or newer can create a persistent local Pascal installation without cloning this repository:
npx @pascal-app/cli editor
The CLI starts the editor and an authenticated MCP service in the background, selects
collision-free loopback ports, and keeps projects in ~/.pascal/data/pascal.db. Configure
an agent to launch pascal mcp connect. See Run Pascal locally
for pnpm/Bun commands, project management, MCP setup, updates, storage paths, and
troubleshooting. The npm release is the older runtime described below; use the verified
GitHub preview when a task needs the new read-only furniture candidate check.
The npm beta tag currently resolves to @pascal-app/cli@1.0.0-beta.1, which predates the read-only furniture candidate input and hosted agent claim/status commands in this repository. To use those capabilities before the next npm release, install the verified GitHub prerelease built from commit 5dabbc3b56109c9f79dc8a378443a4c520d9ee0a:
PASCAL_PREVIEW_VERSION='1.0.0-beta.2.status.0'
PASCAL_PREVIEW_PREFIX="${XDG_DATA_HOME:-$HOME/.local/share}/pascal-preview"
PASCAL_PREVIEW_DOWNLOAD="$(mktemp -d)"
cd "$PASCAL_PREVIEW_DOWNLOAD"
curl --fail --location --remote-name \
"https://github.com/pascalorg/editor/releases/download/cli-v1.0.0-beta.2-status.0/pascal-app-cli-${PASCAL_PREVIEW_VERSION}.tgz"
curl --fail --location --remote-name \
"https://github.com/pascalorg/editor/releases/download/cli-v1.0.0-beta.2-status.0/SHA256SUMS.txt"
# macOS
shasum -a 256 -c SHA256SUMS.txt
# Linux: use `sha256sum -c SHA256SUMS.txt` instead.
npm install --global --prefix "$PASCAL_PREVIEW_PREFIX" --ignore-scripts \
"./pascal-app-cli-${PASCAL_PREVIEW_VERSION}.tgz"
export PATH="$PASCAL_PREVIEW_PREFIX/bin:$PATH"
pascal --version
pascal update --version "$PASCAL_PREVIEW_VERSION"
pascal editor --no-open
# For an existing hosted autonomous-agent key:
PASCAL_API_KEY='sk_live_...' pascal agent claim
PASCAL_API_KEY='sk_live_...' pascal agent status --json
The expected archive SHA-256 is 15628baeeb174fb7786a1643db08f0554bf6d18afaaa3979f01922c5cd40019a. The same-version update command installs and activates this CLI's bundled runtime, restarting an older running service when necessary. Keep an existing PASCAL_HOME unchanged so stored projects remain in the same data directory; pascal editor alone reuses any healthy service, including an older one. Keep the preview prefix on the agent host's PATH before using the Claude plugin-provided connector, running pascal mcp setup claude or pascal mcp setup codex for another installation path, or configuring pascal mcp connect manually. pascal agent claim opens a prefilled 15-minute human handoff; pascal agent status verifies the key and reports the bounded claim state. Neither command stores or prints the hosted key. This GitHub prerelease is not an npm version.
Use one active agent client per local CLI service. The standalone local HTTP runtime shares active scene state between clients; use separate PASCAL_HOME directories and service processes when independent concurrent work is required.
Install Pascal's public agent workflows from this repository with skills.sh:
npx skills add pascalorg/editor \
--skill pascal-3d \
--skill furniture-fit
Claude Code users can install the same canonical skill source as a plugin:
/plugin marketplace add pascalorg/editor
/plugin install pascal-agent-skills@pascal
The Claude plugin also supplies the local pascal mcp connect server. Install and start the Pascal CLI first, and keep pascal on the PATH used to launch Claude Code. This local connector needs no Pascal account or API key and does not upload projects automatically.
Claude Code 2.1.258 loads both the user-scoped pascal server created by pascal mcp setup claude and the plugin-provided server. Remove the manual entry before reloading or restarting Claude Code so only the plugin owns the connection lifecycle:
claude mcp remove --scope user pascal
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. When the intended project is hosted in a Pascal account or organization, disable the plugin-provided local server in /mcp and configure the hosted endpoint from the skill setup guide instead.
Codex users can install the same plugin from the repository marketplace:
codex plugin marketplace add pascalorg/editor
codex plugin add pascal-agent-skills@pascal
OpenClaw installation becomes available after the skills are published under Pascal's ClawHub publisher. See skills/README.md for the owner-qualified install and verification commands.
pascal-3d covers safe local or hosted MCP setup and verified scene work. furniture-fit produces a bounded, evidence-based footprint assessment without claiming unsupported height, swing, or delivery checks. See skills/README.md for package details and validation.
The skills inspect the connected MCP tool schemas before using optional fields. A capability present in this repository may be absent from an older installed or hosted release; the agent should report the narrower supported result instead of assuming source-only inputs are available.
These workflows require a connected Pascal MCP server for their tool-backed actions. An OpenAI directory submission must therefore use With MCP and submit the production hosted MCP endpoint together with the skills. The repository package does not prove that the endpoint, OAuth flow, reviewer credentials, domain verification, or portal scan is ready for review.
server.json is Pascal's manifest for the official MCP Registry. Its
version tracks the hosted MCP implementation independently of the npm package version.
Pull requests validate the manifest and production endpoint. A Pascal organization
owner publishes an approved version from main with the official registry publisher.
The viewer runtime and built-in node definitions are separate packages. Install the full built-in
viewer set, then load the built-in plugin once before mounting <Viewer>. Capture sessions are an
optional transport-neutral extension:
npm install @pascal-app/core @pascal-app/viewer @pascal-app/editor @pascal-app/nodes
npm install @pascal-app/capture-protocol @pascal-app/capture-viewer
import { loadPlugin } from '@pascal-app/core'
import { builtinPlugin } from '@pascal-app/nodes'
await loadPlugin(builtinPlugin)
See the @pascal-app/viewer quick start for a React example.
This is a Turborepo monorepo with the reusable editor packages, the standalone app, and the CLI that distributes it:
editor/
├── apps/
│ └── editor/ # Next.js application
├── packages/
│ ├── core/ # Schemas, scene state, and registry contracts
│ ├── viewer/ # 3D rendering runtime and shared systems
│ ├── capture-protocol/ # Static/live capture-session contracts
│ ├── capture-viewer/ # Capture source runtime and reference renderers
│ ├── editor/ # Editing tools and UI components
│ ├── nodes/ # Built-in node definitions, renderers, and systems
│ ├── cli/ # Persistent local editor installer and process manager
│ ├── mcp/ # Model Context Protocol server and scene storage
│ └── ui/ # Shared UI components
| Package | Responsibility |
|---|---|
| @pascal-app/core | Node schemas, scene state (Zustand), registry contracts, spatial queries, and event bus |
| @pascal-app/viewer | 3D rendering via React Three Fiber, shared render systems, default camera/controls, and post-processing |
| @pascal-app/capture-protocol | Versioned capture manifests, normalized streams, and transport-neutral static/live sources |
| @pascal-app/capture-viewer | Viewer child runtime and reference model, device-motion, and point-cloud layers |
| @pascal-app/editor | Editing tools, panels, selection, and direct-manipulation UI |
| @pascal-app/nodes | Built-in registry plugin with node definitions, renderers, geometry, and systems |
| @pascal-app/cli | Installs and manages a versioned standalone editor runtime and persistent local data |
| @pascal-app/mcp | Exposes scene tools, resources, prompts, and local storage to MCP-compatible AI hosts |
| apps/editor | Standalone Next.js host for the editor packages |
The viewer renders the scene with