npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

spellshape-agent

v0.1.2

Published

Official JS SDK for SpellShape AI parametric 3D endpoints

Readme

🧙‍♂️ spellshape-agent

spellshape-agent is the official JavaScript/TypeScript SDK for interacting with the SpellShape AI 3D design endpoints from any Node.js or browser project.

It makes it easy to:

  • Expand terse object prompts into rich 3D briefs
  • Generate parametric 3D model schemas from text
  • Chat about — and with — generated scene data
  • Analyze images and extract visual information for 3D design

Built for use in creative coding, generative design, and AI-augmented workflows.


🚀 Installation

npm install spellshape-agent

🪄 Quick Start

import SpellshapeAgent from 'spellshape-agent';

const agent = new SpellshapeAgent({ apiKey: 'YOUR_X_API_KEY' });

// Expand a brief text prompt into a detailed 3D modeling instruction:
const expanded = await agent.expand('a chair');

// Generate a full parametric schema from the expanded prompt:
const schema = await agent.generate(expanded);

// Chat with the agent about your schema:
const response = await agent.chat('How tall is the chair?', schema);

// Analyze an image and extract design information:
const imagePrompt = await agent.vision('https://example.com/chair-image.jpg');

console.log({ expanded, schema, response, imagePrompt });

📚 API

new SpellshapeAgent({ apiKey, apiBase? })

  • apiKey: string (required) — Your API key (X-API-Key header)
  • apiBase: string (optional) — Custom API base URL (defaults to https://agent.spellshape.com/api/agent/v1)

agent.expand(prompt)

Expands a short user prompt (e.g. "a chair") into a richly described 3D object brief.

  • prompt: string
  • Returns: Promise<string> — Detailed modeling prompt

agent.generate(promptOrExpandedPrompt, opts)

Generates a parametric 3D scene/model schema from a prompt or modifies an existing schema.

  • promptOrExpandedPrompt: string — Can be either a raw prompt or an already expanded prompt
  • opts: object (optional) — Additional generation options
  • Returns: Promise<object> — JSON schema for use in 3D pipelines

agent.chat(prompt, schema?, chatHistory?, opts?)

Chats with the agent about your current scene.

  • prompt: string — Your question or message
  • schema: object (optional) — The current 3D schema context
  • chatHistory: array (optional) — For multi-turn conversations
  • opts: object (optional) — Additional chat options
  • Returns: Promise<string> — Answer or guidance

agent.vision(imageUrl)

Analyzes an image and extracts visual information that can be used for 3D design prompts.

  • imageUrl: string (required) — A publicly accessible URL to an image
  • Returns: Promise<string> — Extracted design prompt based on the image analysis
  • Throws: Error if imageUrl is not provided or not a valid string

🧩 Why Use spellshape-agent?

  • AI-native: Speak and reason with your 3D design data
  • Vision-enabled: Extract design insights from images
  • Cross-platform: Use in Node, browser, design tools, servers, and plugins
  • Future-proof: Powers .spell pipelines, LLM-native CAD, and metaverse automation

🛠 Integrations & Ecosystem

Use spellshape-agent to:

  • Automate web or desktop 3D editors (Three.js, Unity, Blender plugins, etc)
  • Prototype generative pipelines with live chat/design feedback loops
  • Analyze reference images to inform parametric design decisions
  • Rapidly bootstrap new tools atop the SpellShape schema

See the SpellShape meta repo for docs and ideas.


⚠️ Limitations & Status

  • Experimental and in flux - APIs and schemas may evolve
  • Requires a valid API key (create one in our web app) (see here)
  • Vision endpoint requires publicly accessible image URLs
  • For feedback, issues, or PRs: open an issue here

✨ Vision

Imagine describing a scene in plain language, analyzing reference images, and seeing it all come alive as a parametric, editable 3D schema—one you can manipulate, render, and automate across platforms.

spellshape-agent helps you build that bridge.


SpellShape is a living experiment. Shape your ideas with us.