# @atcute/atproto

> AT Protocol (com.atproto.*) schema definitions

Latest version **4.0.4** (published 2026-08-02) · 0BSD license · 0 weekly downloads

## Install

```sh
npm install @atcute/atproto
pnpm add @atcute/atproto
yarn add @atcute/atproto
bun add @atcute/atproto
```

## Health

**Score 60/100 (C)** — status: active.

Positive: esm support; no vulnerabilities; recently updated; high maintenance score.

Warnings: low downloads; no types.

## Facts

| | |
|---|---|
| Version | 4.0.4 |
| Published | 2026-08-02 |
| First published | 2025-05-14 |
| Weekly downloads | 0 |
| License | 0BSD |
| TypeScript types | none |
| Module format | ESM |
| Dependencies | 1 |
| Unpacked size | 230.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | externdefs |
| Keywords | atcute, atproto |

## Links

- npm: https://www.npmjs.com/package/@atcute/atproto
- Repository: https://tangled.org/did:plc:pljn5qch4tgadongtc7i6qij
- npm.io page: https://npm.io/package/@atcute/atproto

## Dependencies (1)

- [@atcute/lexicons](https://npm.io/package/@atcute/lexicons.md) ^2.0.3

## Recent versions

- 4.0.4 (latest) — 2026-08-02
- 4.0.3 — 2026-06-29
- 4.0.2 — 2026-06-01
- 4.0.1 — 2026-05-26
- 4.0.0 — 2026-05-09
- 3.1.12 — 2026-05-08
- 3.1.11 — 2026-04-05
- 3.1.10 — 2025-12-30
- 3.1.9 — 2025-11-05
- 3.1.8 — 2025-10-20
- 3.1.7 — 2025-10-09
- 3.1.6 — 2025-10-09
- 3.1.5 — 2025-10-08
- 3.1.4 — 2025-09-13
- 3.1.3 — 2025-09-03
- … 7 more at https://npm.io/package/@atcute/atproto/versions

## README

# @atcute/atproto

[AT Protocol](https://atproto.com) (com.atproto.\*) schema definitions

```sh
npm install @atcute/atproto
```

## usage

```ts
import { ComAtprotoLabelDefs } from '@atcute/atproto';
import { is } from '@atcute/lexicons';

const label: ComAtprotoLabelDefs.Label = {
	cts: '2024-11-13T04:46:40.254Z',
	neg: false,
	src: 'did:plc:wkoofae5uytcm7bjncmev6n6',
	uri: 'did:plc:ia76kvnndjutgedggx2ibrem',
	val: 'she-it',
	ver: 1,
};

is(ComAtprotoLabelDefs.labelSchema, label);
// -> true
```

### with `@atcute/client`

pick either one of these 3 options to register the ambient declarations

```jsonc
// file: tsconfig.json
{
	"compilerOptions": {
		"types": ["@atcute/atproto"],
	},
}
```

```ts
// file: env.d.ts
/// <reference types="@atcute/atproto" />
```

```ts
// file: index.ts
import type {} from '@atcute/atproto';
```

now all the XRPC operations should be visible in the client

```ts
import { Client, simpleFetchHandler } from '@atcute/client';

const client = new Client({ handler: simpleFetchHandler({ service: 'https://bsky.social' }) });

const response = await client.get('com.atproto.server.describeServer');
// ...
```

### with `@atcute/lex-cli`

when building your own lexicons that reference AT Protocol types, configure lex-cli to import from
this package:

```ts
// file: lex.config.js
import { defineLexiconConfig } from '@atcute/lex-cli';

export default defineLexiconConfig({
	files: ['lexicons/**/*.json'],
	outdir: 'src/lexicons/',
	imports: ['@atcute/atproto'],
});
```

---
_Source: https://npm.io/package/@atcute/atproto · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
