10000 GitHub - mjladiosa/shapesapi: A toolkit enabling delightful AI interactions across platforms
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A toolkit enabling delightful AI interactions across platforms

License

Notifications You must be signed in to change notification settings

mjladiosa/shapesapi

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Shapes API

image

Shapes are general purpose social agents. You can build for an existing shape from our catalogue of millions or create your own. Shapes have rich personalities, love hanging out in groupchats, and short-term + long-term memory across platforms. You can configure a Shape to use some of 50+ models we offer for free across text, image, and voice.

Open Source Contributions

Our API is designed with extensibility as a core principle. You can extend any Shape for tool calling, MCP, and more.

Star and contribute to this repository to receive free hosting for your integration. We will also be directing traffic from our user base to your integration.

What is the Shapes API?

Shapes API provides a programmatic way to integrate Shapes into any application or platform. It follows the OpenAI-compatible API standard, making it easy to implement with existing libraries and SDKs.

Demos

To get a sense of what’s possible, see what people have already built:

Getting Started

You will need to generate an API Key. Get yours here

API Key Generation

Implementation Examples

🐍 Python

from openai import OpenAI

shapes_client = OpenAI(
    api_key="<your-API-key>",
    base_url="https://api.shapes.inc/v1/",
)

response = shapes_client.chat.completions.create(
    model="shapesinc/<shape-username>",
    messages=[
        {"role": "user", "content": "Hello"}
    ]
)

print(response)

🌐 JavaScript

const openai = require("openai");

const shapes_client = new OpenAI({
    apiKey: "<your-API-key>",
    baseURL: "https://api.shapes.inc/v1",
});

const response = await shapes_client.chat.completions.create({
    model: "shapesinc/<shape-username>",
    messages: [
        { role: "user", content: "Hello" }
    ]
});

console.log(response);

πŸ”„ CURL

curl -X POST https://api.shapes.inc/v1/chat/completions \
     -H "Authorization: Bearer <your-API-key>" \
     -H "Content-Type: application/json" \
     -d '{"model": "shapesinc/<shape-username>", "messages": [{ "role": "user", "content": "Hello" }]}'

Quick Setup

Requirement Details
Base URL https://api.shapes.inc/v1/
Model Format shapesinc/<shape-username>
Authentication Bearer token in Authorization header
Environment Variables SHAPESINC_API_KEY and SHAPESINC_SHAPE_USERNAME

API Specifications

Feature Details
Endpoints /chat/completions
Rate Limits 5 RPM (request increase here)
Headers X-User-Id for user identification, X-Channel-Id for conversation context
Response Format Standard OpenAI-compatible JSON response

Supported Commands

Shapes now support the following commands:

  • !reset - Reset the Shape's long-term memory
  • !sleep - Generate a long-term on demand
  • !dashboard - Access the Shape's dedicated dashboard for configuration
  • !info - Get information about the shape
  • !web - Search the web (now free for all users)
  • !help - Get help with commands
  • !imagine - Generate images
  • !wack - Reset the Shape's short-term memory

Advanced Features

Feature Details
Vision Support Send OpenAI API compatible image_url with user messages
Tool Calling Shapes now support tool calling and MCP functionality
Voice Features Free voice for all shapes (custom or pre-made voices via shapes.inc)
Voice Configuration Option to disable voice transcripts (set via shapes.inc)
Voice Formatting Improved formatting for voice URLs with new line separation

API Multimodal Support

The Shapes API supports multiple types of input modalities:

Image Support

You can send image URLs in the API request using this format:

{
  "model": "shapesinc/your_shape",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "What's in this image?"
        },
        {
          "type": "image_url",
          "image_url": {
            "url": "https://example.com/image.jpg"
          }
        }
      ]
    }
  ]
}

Audio Support

You can send audio URLs in the API request using this format:

{
  "model": "shapesinc/your_shape",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Please transcribe and respond to this audio message"
        },
        {
          "type": "audio_url",
          "audio_url": {
            "url": "https://example.com/audio.mp3"
          }
        }
      ]
    }
  ]
}

Supported audio formats: mp3, wav, ogg

Important Notes

Current Limitations

Limitation Details
No System Messages Shape personality comes from configuration
No Message History API relies on Shape's built-in memory
No Streaming Only full responses are supported
No Parameter Control Temperature and other settings locked to shapes.inc settings configured for the Shape
Multimodility support limited to 1 input only you can only send 1 image_url or 1 audio_url with a user message. if both image and audio urls are provided, only the audio url is processed

Note: Shapes set on Premium Engines WILL use credits when accessed via API.

Available Integrations

  • Telegram
  • Revolt
  • Slack
  • Bluesky
  • IRC
  • Chess
  • Voice

Requested Integrations

We're looking for developer contributions to build:

  • Reddit
  • GitHub (to review PRs)
  • Threads
  • Roblox
  • Minecraft
  • Twitch
  • LinkedIn
  • Microsoft Teams
  • WeChat
  • Anything you can possibly imagine

If you'd like to build an integration:

  1. Fork our repository
  2. Build your integration following our guidelines
  3. Submit a PR with comprehensive documentation

Coming Soon

We are shipping new features to the Shapes API every day. Next on our list is:

Feature Details
Voice Recognition Shapes can send voice messages but not hear any yet
Authorize with Shapes, Inc Authenticate users via a shapes inc account
Free Will Proactively take actions
Messaging first Shapes can't talk first...yet

Β© 2025 Shapes, Inc.

About

A toolkit enabling delightful AI interactions across platforms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%
0