Skip to content

What are Packs?

A Pack is an extension that adds new powers to Superhuman.

What other platforms call plugins, add-ons, or extensions, we call "Packs". A Pack is how you extend Superhuman with your own code, adding new features or integrating it with other applications.

Anyone can build a Pack, and you can use it yourself, share it with your team, or publish it to the world. Packs are built using our TypeScript SDK, uploaded to our servers, and run within Superhuman products.

What can a Pack deliver?

A Pack is a container for the things you want to add to Superhuman, and what your users get depends on what you put inside it. Today a Pack delivers one thing, a connector, and we'll be adding more over time.

Connectors

A connector extends Superhuman with new capabilities, most often by integrating with an external application or service.

The following Superhuman products support connectors today:

  • Go — The connector gives Go tools and knowledge it can use to answer questions and complete tasks.
  • Docs — The connector adds new building blocks that you use directly in a doc to build something more powerful.

A single connector serves both products. If you already have a Pack built for Docs, see the Superhuman Go guide for how to make it work well in Go.

A connector is assembled from building blocks, which support different features and usage patterns in each product.

Building block What it does Go Docs
MCP Connect to a hosted MCP server and expose its tools
Skills Guide the LLM through a specific task or type of question
Formulas Calculate a value or pull in data from an external source
Actions Create, update, or delete data in an external application
Sync tables Pull in a large set of records and keep them up to date
Cards Display structured data as rich cards and mentions
Column formats Change how values in a table column are displayed

How do Packs work?

Each Pack is its own serverless application, fully managed and run by the platform. A Pack is a different shape from a typical web application, and much of what you would normally build or operate yourself is handled for you.

Aspect How it works in a Pack
Hosting Fully managed and serverless. You upload a version and the platform runs it.
Language and runtime TypeScript, executed in a sandbox compatible with the ES2022 standard. Browser and Node globals like window and fs aren't available.
Dependencies Install npm libraries when building with the CLI. Many aren't compatible with the custom runtime or network interface.
User interface Packs don't ship their own UI. Building blocks appear through each product's existing interfaces, which affects how you design them.
Data access A Pack only receives the parameters that the building block asked for, and can't otherwise read a user's data in Superhuman.
Storage Packs are stateless and have no database of their own. Sync table records are stored by Superhuman, and everything else stays in the API you connect to.
Authentication Declare the type of authentication your API needs, and the platform runs the sign-in flow, stores the tokens, and applies them to your requests. Your code never sees the raw credentials. Users connect an account once and it's available to them in every product.
Networking Outbound HTTP through the built-in fetcher, which handles encoding and attaches credentials automatically.
Caching HTTP responses and tool results are cached by default, with a TTL you control.
Logging Every execution is logged, scoped to a chat session or doc, and kept for about two weeks.
Testing Run building blocks on your own machine with the CLI, or test a version live before releasing it.

Who can use a Pack?

A Pack is private to you until you decide otherwise. You can keep it for your own use, share it with your team, or publish it so that anyone can install it. Publishing publicly involves a review first, after which your Pack is listed in the Superhuman Store or Superhuman Docs Gallery, where users can discover and install it.

How do you build a Pack?

Packs are written in TypeScript, and you can build them with your own toolchain or entirely in the browser.

Most developers work locally with the command line tool, using the editor, tooling, and version control they already have. You can run your connector on your own machine to verify it's working, then upload a new version to the Superhuman servers.

The Pack Studio is a browser-based alternative that bundles the editor, build, and deploy steps together, with nothing to install. It's a quick way to prototype, and a Pack that starts there can be moved into a local project later.

Either way, there's a library of sample Packs covering every major part of the SDK, and a community of Pack makers to ask when you get stuck.

Get started with the CLI Get started in the browser