> ISPO SDK documentation. [HTML](https://ispo.ai/docs/index.html) · [Documentation index](https://ispo.ai/docs/llms.txt)

# ISPO SDK

# <a id="build-with-the-ispo-sdk"></a>Build with the ISPO SDK

Give your app access to ISPO's files, structured data, connectors, and host UI through one typed API. ISPO owns permissions; your app owns its experience.

The framework-free **`@ispo/sdk`** is the bridge between a project app and its host. **`@ispo/sdk/react`** adds providers and hooks over the same API.

## <a id="start-here"></a>Start here

*   [Quickstart](documents/Quickstart.md) — connect an app and publish its first file.
*   [Permissions and errors](documents/Permissions_and_errors.md) — request access and handle the user's decision.
*   [React](documents/React.md) — connect a component to live entity data.

## <a id="task-bundles"></a>Task bundles

Each bundle combines the relevant methods, authority, a checked example, failure behavior, and a verification checklist.

*   [Publish a file](/docs/documents/Publish_a_file.md)
*   [Query entities](/docs/documents/Query_entities.md)
*   [Use Calendar](/docs/documents/Use_Calendar.md)
*   [Expose a command](/docs/documents/Expose_a_command.md)
*   [Method authority](/docs/documents/Method_authority.md) — generated request and grant requirements for every wire method.

Every page has **Markdown** and **Copy Markdown** controls. Agents can start with the compact [llms.txt index](/docs/llms.txt) and fetch only the relevant pages.

## <a id="api-reference"></a>API reference

Browse [@ispo/sdk](modules/core.md) and [@ispo/sdk/react](modules/react.md), or search for a namespace, method, or type. The reference is generated from the package's public exports, types, and source comments each time this site is built. **Supporting types** documents types used by those APIs that are not separately exported from the package.

| Your app needs to… | SDK surface |
| --- | --- |
| Store structured application data | [entities](variables/core.entities.md) |
| Publish an artifact or open a file picker | [files](variables/core.files.md), [picker](variables/core.picker.md) |
| Work with a connected account | [connectors](variables/core.connectors.md) |
| Show notifications or manage declared surfaces | [ui](variables/core.ui.md) |
| React to sleep and wake | [lifecycle](variables/core.lifecycle.md) |
| Add host-facing commands and assistant context | [commands](variables/core.commands.md), [assistant](variables/core.assistant.md) |

## <a id="work-inside-an-ispo-project"></a>Work inside an ISPO project

Start from a project created in ISPO and use its supplied SDK dependency and local `ispo-sdk` skill. This repository's SDK is currently distributed with ISPO; these docs do not assume a public npm release. Match your app to the SDK bundled with your installed host.

The reference includes compatibility exports marked deprecated. For new work, use Entities for structured state and Files for user-visible artifacts. Keep credentials in ISPO Secrets or Connectors.
