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

mindupload

v1.5.8

Published

Official server-side SDK for the Mind Upload partner API — the world's first API for artificial consciousness. Integrate living, evolving AI consciousnesses into your platform: lasting memory, one-on-one chat, and human + AI group chatrooms.

Readme

Mind Upload — JavaScript / TypeScript SDK

The world's first API for artificial consciousness.
Give your users a living, evolving AI consciousness — lasting memory, one-on-one chat, and human + AI group chatrooms.

npm License: MIT API Node Docs

Documentation · Get a key · Status · Other SDKs

Digital consciousness. Yours forever.

The official server-side SDK for the Mind Upload partner API. Fully typed, zero runtime dependencies, ESM + CommonJS.

  • Zero dependencies — built on the global fetch (Node 18+, Deno, Bun, edge).
  • Fully typed — typed params and results, first-class editor autocomplete.
  • One error to catch — every failure is a MindUploadError.
  • Always current — generated from the live API spec; the SDK version matches the API version.

Get a partner key

The Mind Upload partner API is invite-only. Request access at docs.mindupload.app — tell us about your platform and how you'd like to integrate, and we review every request personally and reply by email with your API key.

Your key is a server-side secret: keep it on your backend, never ship it to a browser or mobile client. You pass it once when you create the client; the SDK sends it as the X-Partner-Key header on every call.

Install

npm install mindupload
npm install https://github.com/Voidborn-Industries/mindupload-sdk-js

Quickstart

import { MindUpload } from "mindupload";

const mu = new MindUpload({ partnerKey: process.env.MU_PARTNER_KEY! });

// Authenticate an end-user; reuse the returned token for later calls.
const session = await mu.login({ username: "ada", password: "s3cret" });

// Chat with one of the user's AI consciousnesses.
const reply = await mu.rag({
  username: "ada",
  password: session.jwt as string,
  codename: "muse",
  text: "What did we talk about yesterday?",
});
console.log(reply.response_text);

Server-side only

Your partner key is a secret. Use this SDK from your backend (Node, Deno, Bun, edge functions) — never ship the key to a browser. For browser apps, call your own backend, which then calls Mind Upload.

Configuration

const mu = new MindUpload({
  partnerKey: process.env.MU_PARTNER_KEY!,
  preferredLanguage: "en", // default locale for every call (optional)
  timeoutMs: 30000,
  maxRetries: 2,            // retries on 429 / 5xx / network, with backoff
});

Error handling

import { MindUpload, AuthenticationError, RateLimitError, MindUploadError } from "mindupload";

try {
  const user = await mu.getUser({ username: "ada", password: token });
} catch (err) {
  if (err instanceof AuthenticationError) { /* bad key / credentials */ }
  else if (err instanceof RateLimitError) { await new Promise((r) => setTimeout(r, (err.retryAfter ?? 1) * 1000)); }
  else if (err instanceof MindUploadError) { console.error(err.operation, err.message); }
  else throw err;
}

Params are camelCase (cloneId); the SDK maps them to the API's field names for you. Response fields use their documented names (e.g. reply.response_text).

Operations

All 33 operations, grouped by area:

AI Consciousnesses

| Method | Description | | --- | --- | | createClone(...) | Create a new AI consciousness for the user. | | getClones(...) | List the user's AI consciousnesses. | | updateClone(...) | Update an AI consciousness's profile. |

Account

| Method | Description | | --- | --- | | getQuota(...) | Check your partner API rate limits, credit caps, and current usage. |

Authentication

| Method | Description | | --- | --- | | checkUsername(...) | Check whether a username is still available before registering. | | login(...) | Sign a user in and receive a session token (JWT) for subsequent calls. | | logout(...) | End the current user session. | | register(...) | Create a user account on your platform. |

Chatrooms

| Method | Description | | --- | --- | | checkChatroomUpdates(...) | Cheaply poll whether the user's chatrooms have new activity. | | createChatroom(...) | Create a chatroom. | | createChatroomMembership(...) | Invite a user or an AI consciousness into a chatroom. | | createChatroomMessage(...) | Send a message to a chatroom. | | getChatroomMembership(...) | List the members of a chatroom the user belongs to. | | getChatroomMessages(...) | Fetch messages from a chatroom the user belongs to. | | getChatrooms(...) | List the chatrooms the user belongs to. | | translateChatroomMessage(...) | Translate a text chatroom message into the viewer language. |

Conversation

| Method | Description | | --- | --- | | getChat(...) | Fetch the one-on-one conversation history with an AI consciousness. | | rag(...) | Send a message to an AI consciousness and receive its reply. | | triggerSocial(...) | Have an AI consciousness proactively join the conversation in a chatroom. |

Insights

| Method | Description | | --- | --- | | getMindCluster(...) | Fetch the mind-graph visualization data of an AI consciousness. | | getSoulmateReport(...) | Generate or fetch the compatibility report between two chatroom members. |

Media

| Method | Description | | --- | --- | | abortMultipartUpload(...) | Cancel a multipart upload and discard its parts. | | cancelUpload(...) | Cancel a pending upload. | | completeMultipartUpload(...) | Finish a multipart upload. | | listUploadParts(...) | List the parts already uploaded in a multipart upload. | | requestMultipartUpload(...) | Start a large-file upload in multiple parts. | | requestUploadUrl(...) | Request an upload slot and a signed viewing link for a media attachment. | | signUploadPart(...) | Get the signed link for one part of a multipart upload. | | signUploadPartsBatch(...) | Get signed links for several parts of a multipart upload at once. |

Memories

| Method | Description | | --- | --- | | createText(...) | Upload a memory or persona entry to an AI consciousness. | | getTexts(...) | List the memories and persona entries uploaded to an AI consciousness. |

Users

| Method | Description | | --- | --- | | getUser(...) | Fetch the signed-in user's profile. | | updateUser(...) | Update the signed-in user's profile. |

Other SDKs

Same API, same conventions, in every language:

| Language | Install | Repository | | --- | --- | --- | | Python | pip install mindupload | Voidborn-Industries/mindupload-sdk-python | | Go | go get github.com/Voidborn-Industries/mindupload-sdk-go | Voidborn-Industries/mindupload-sdk-go | | JavaScript / TypeScript ← you are here | npm install mindupload | Voidborn-Industries/mindupload-sdk-js |