@codepawlhq/67js

中文文档
0.17.0发布于 2026/11/10MITES Module构建来源已验证近 30 天下载 3454

3D engine that AI agents drive: an MCP server, PNG previews and CPU or GPU export to images and video

原始使用文档
文档目录11 节
  1. Showcase
  2. Install
  3. Quick start
  4. For agents
  5. Addons
  6. Render images and video
  7. Run the site locally
  8. Performance claims
  9. Contributing
  10. Credits
  11. License

67js: 3D engine that AI agents drive, over a Bistro street rendered by it

npm version License: MIT Node.js 20.19 or later MCP server for agents

67js is a WebGL2 renderer with addons for terrain, vegetation, characters, liquid, vehicles and media export. A scene is plain data: each part has a geometry, a matrix and a material. An agent builds and changes a scene through an MCP server, looks at PNG previews and renders stills or MP4 video. The goal is to be as capable as Blender and as light as three.js. docs/goal.md defines each part. See the showcase, the documentation, the guide for agents and the changelog.

Showcase

Each picture below is a 67js render. The linked ones open live in the browser.

Airport ramp AI data center Container port
An airport ramp with an airliner at its stand and the turnaround crew A cutaway AI data center hall A container port with cranes and stacked containers
Bistro cafe corner Bistro plaza
A green corner restaurant with red awnings and a blue scooter in the Bistro scene A large plane tree in a hedged circle on a Bistro plaza

Install

Let your agent do it. Paste this prompt into Claude Code, Codex, Cursor, Gemini CLI or OpenCode. The agent installs the package, reads the guide and connects the MCP server.

Install 67js from npm as `67js@npm:@codepawlhq/67js` and connect its MCP server with `npx 67js-mcp`. Read
https://67js.codepawl.com/llms.txt first and follow it.

Claude Code plugin. One command adds the MCP server and both skills. The server starts from the published npm package with npx, so nothing is built locally.

/plugin marketplace add codepawl/67.js
/plugin install 67js@67js

By hand

npm install 67js@npm:@codepawlhq/67js

The registry name is @codepawlhq/67js. The command installs it under the alias 67js, so imports stay short. The package is ESM. The tools need Node.js 20.19 or later, and rendering needs a WebGL2 browser.

Quick start

import { Renderer67, box, sphere } from '67js';

// Column-major 4x4 matrix: scale, then move.
const placed = ([x, y, z], [width, height, depth] = [1, 1, 1]) =>
  new Float32Array([width, 0, 0, 0, 0, height, 0, 0, 0, 0, depth, 0, x, y, z, 1]);

const parts = [
  {
    name: 'Floor',
    geometry: box(),
    matrix: placed([0, 0, 0], [8, 0.1, 8]),
    material: { color: [0.4, 0.42, 0.45], metallic: 0, roughness: 0.9, emission: 0 },
  },
  {
    name: 'Ball',
    geometry: sphere(48, 24),
    matrix: placed([0, 1, 0]),
    material: { color: [0.8, 0.3, 0.2], metallic: 0, roughness: 0.35, emission: 0 },
  },
];

const canvas = document.querySelector('canvas');
const renderer = new Renderer67(canvas, parts, { samples: 4, memoryBudgetMiB: 256 });
renderer.render({ eye: [4, 3, 6], target: [0, 1, 0] });

Call renderer.updateParts(parts) to move or recolour parts without a new upload. Call renderer.resize() after the canvas changes size, and renderer.dispose() before you replace the renderer. The guide covers cameras, lights, effects and every material field. To save a PNG from a script, use the render-from-a-script recipe.

For agents

The package includes an MCP server that connects an agent to a persistent browser renderer. The server needs a local Chrome installation.

npx 67js-mcp --backend gpu --memory 192

Use --backend cpu on a machine without a GPU. With bun, bunx 67js-mcp takes the same flags; CI runs the packaged server under bun on every pull request. An agent authors a JSON recipe, sets lights and fog, imports GLB assets and adds motion. It gets PNG previews back, compares up to four views in a review grid and runs render jobs for stills and MP4 video. The server accepts no arbitrary code and no remote asset URLs. The MCP reference lists its tools.

Two skills teach an agent to drive the MCP tools: build-67js-scene for scenes and materials, and render-67js-media for image and video export. For a plain-text guide, give the agent llms.txt.

viz3d uses 67js. It is a skill that turns places, systems and events into 3D apps and films, and it renders its films and stills in 67js. To add it in Claude Code, run /plugin marketplace add codepawl/viz3d, then /plugin install visualize-in-3d@codepawl.

Addons

Each addon is a separate import, so a page loads only what it uses.

AreaImportGuide
Lighting67js/addons/hdriImage-based lighting from .hdr files
Terrain67js/addons/terrain, 67js/addons/texture-setChunked terrain with scanned ground layers
Vegetation67js/addons/vegetation, 67js/addons/grass, 67js/addons/clutterTrees, grass and ground clutter with wind and level of detail
Characters67js/addons/gltf, 67js/addons/retarget, 67js/addons/skeleton-poseglTF import, clip retargeting and pose layers with IK
Liquid67js/addons/spumeBaked liquid playback with refraction and spray
Vehicles67js/addons/vehicleWheeled vehicles on a path
Physics67js/addons/physicsRapier contacts and joints recorded into a timeline
Modeling67js/addons/mesh, 67js/addons/modeling, 67js/addons/sculptMesh editing, modeling and sculpt brushes
Offline light67js/addons/path-tracer, 67js/addons/light-bakePath-traced stills and baked lightmaps
Post passes67js/addons/user-passYour own full-screen GLSL passes: dither, pixel downscale, quantise
Agents67js/addons/agent-scene, 67js/addons/agent-assetScene sessions with revisions and checkpoints

The documentation page lists every guide.

Render images and video

The render command exports a scene to PNG or MP4 through headless Chrome, on the GPU or on the CPU.

npm run render -- --kind image --scene nature --backend gpu --preset high --output artifacts/nature.png

Video export streams one frame at a time, so a film never sits in memory. The render skill lists every preset and flag.

Run the site locally

  1. Install Node.js 22.12 or later.
  2. Run npm ci.
  3. Run npm run dev. Vite prints the local URL.

Performance claims

verification.md has the measured results and their limits. They compare matching scenes on the same hardware. They do not show a general speed advantage over three.js or visual parity with Blender.

Contributing

Read CONTRIBUTING.md before you open a pull request. It covers setup, checks, code style and the release flow. Coding agents start with AGENTS.md, and npm run preflight runs the pull request checks locally. Questions and bug reports: SUPPORT.md.

Credits

  • gl-matrix supplies the matrix math.
  • The glTF addon has its own parser. The Draco, meshopt and KTX2 decoders are three.js loaders that you pass in.
  • The textures and the HDRI on the site are CC0 scans from Poly Haven and ambientCG. See the texture credits.
  • The Bistro renders use Amazon Lumberyard Bistro (CC BY 4.0, from the NVIDIA ORCA library) under a CC0 Poly Haven sky.
  • The showcase models and their sources are listed in each world's scene.json under public/showcase/.
  • The banner wordmark uses Sora (SIL Open Font License).

License

MIT © CodePawl

版本与发布记录

@codepawlhq/67js 共发布 25 个版本,首次发布于 2026/10/09;过去 12 个月发布了 25 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.17.0latest2026/11/10今天
0.16.02026/11/082 天前
0.15.02026/11/036 天前
0.14.02026/10/3010 天前
0.13.12026/10/3010 天前
0.13.02026/10/3010 天前

关于 @codepawlhq/67js 的常见问题

@codepawlhq/67js 是什么?

3D engine that AI agents drive: an MCP server, PNG previews and CPU or GPU export to images and video

如何安装 @codepawlhq/67js?

在项目目录运行 npm install @codepawlhq/67js,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 67js-mcp,可以用 npx 67js-mcp 直接运行。

@codepawlhq/67js 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/codepawlhq__67js 是否存在。

@codepawlhq/67js 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@codepawlhq/67js 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.19.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@codepawlhq/67js 可以商用吗?

@codepawlhq/67js 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@codepawlhq/67js 的下载量有多少?

根据 npm 官方下载统计,@codepawlhq/67js 在 2026/10/10 – 2026/11/08 这 30 天内被下载 3,454 次,日均约 115 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@codepawlhq/67js 还在维护吗?

最新版本 0.17.0 发布于 2026/11/10(今天);至今共发布 25 个版本,其中过去 12 个月发布了 25 个;首次发布于 2026/10/09。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。