# Telegram CLI

Telegram chats, messages, search, and safe send workflows.

## Install

```bash
cmdhub get telegram
```

## Authentication

private_session

## Agent-Readable Catalog

- Machine-readable command catalog: `/cli/telegram/catalog.json`
- Stable command anchors use the `cmd-...` IDs listed under each command.
- Inspect this catalog before planning tool use for command paths, examples, flags, mutation markers, and dry-run support.

## Overview

```bash
# Read recent messages from a chat
telegram chat list --limit 20
telegram message list --chat c1 --limit 20
```

## CLI Overview

Telegram adapter CLI

Telegram CLI for authenticated user-account workflows.

Profile: Philip Sterne
Auth:    authenticated

Workflows:
- chat: list, search, inspect, read/unread, pin/unpin, mute/unmute, archive
- message: list, search, inspect, send/reply with preview, forward, delete
- media: list, inspect, download explicit media
- contact/user/topic/reaction/saved: discover and act on exact refs

Examples:
  telegram auth status
  telegram chat list --limit 20
  telegram message search --query "build log"
  telegram message send --chat c1 --text "hello" --dry-run

Safety:
  External sends, replies, forwards, deletes, leaves, pins, and reactions preview
  by default; add --yes only after inspecting the target.

Safe first commands:
  telegram auth status
  telegram auth login
  telegram chat list --limit 20
  telegram message search --query "<text>"
  telegram capabilities
  telegram schema

## Generated Coverage

- Command groups: `17`
- Total documented command nodes: `69`
- Live examples: `26`
- Lifecycle surfaces: `auth`, `doctor`, `capabilities`, `schema`, `resolve`, `version`
- Machine-readable output: `--json`, `--jsonl`
- Human views: `summary`, `full`

## Auth Contract

- Auth mode: private_session
- Standard commands: `auth configure`, `auth continue`, `auth login`, `auth logout`, `auth refresh`, `auth status`, `auth whoami`
- `auth status --json` reports `tool`, `profile`, `provider`, `authenticated`, and `suggested_next_step`.
- `auth whoami --json` is the stable way to answer identity questions.

## Agent Safety Notes

- Discovery commands such as `list`, `search`, `get`, `resolve`, `schema`, `doctor`, `capabilities`, `status`, and `whoami` are the safest commands to run first.
- Treat commands marked as mutating as state-changing local or provider operations.
- Mutating command paths: `telegram auth login`, `telegram auth logout`, `telegram auth refresh`, `telegram chat archive`, `telegram chat pin`, `telegram chat read`, `telegram chat unarchive`, `telegram chat unpin`, `telegram chat unread`, `telegram message delete`, `telegram message forward`, `telegram message pin`, `telegram message read`, `telegram message reply`, `telegram message send`, `telegram message unpin`, `telegram message unread`, `telegram profile create`, `telegram profile delete`, `telegram profile use`, `telegram reaction add`, `telegram reaction remove`, `telegram saved add`
- Commands with `--dry-run`: `telegram chat archive`, `telegram chat leave`, `telegram chat mute`, `telegram chat pin`, `telegram chat read`, `telegram chat unarchive`, `telegram chat unmute`, `telegram chat unpin`, `telegram chat unread`, `telegram message delete`, `telegram message forward`, `telegram message pin`, `telegram message read`, `telegram message reply`, `telegram message send`, `telegram message unpin`, `telegram message unread`, `telegram reaction add`, `telegram reaction remove`, `telegram saved add`

## Global Flags

- `--json` (bool): Emit JSON machine output
- `--jsonl` (bool): Emit JSONL records for piping
- `--output` (string): Compatibility output mode: json|jsonl. Prefer --json or --jsonl
- `--view` (string): View mode: summary|full Default: `summary`.
- `--profile` (string): Config/auth profile Default: `default`.
- `--config` (string): Config path override
- `--quiet` (bool): Suppress non-essential diagnostics
- `--debug` (bool): Enable debug diagnostics
- `--limit` (int): Maximum items to emit Default: `50`.
- `--page-size` (int): Requested upstream page size Default: `50`.
- `--cursor` (string): Continuation cursor
- `--no-paginate` (bool): Fetch only one page
- `--version` (bool): Print version information

## Command Reference

### `telegram auth`

- Anchor: `cmd-telegram-auth`
- Mutates state: `no`
- Supports dry run: `no`

Manage authentication

Example:

```bash
telegram auth --help
```

#### `telegram auth configure`

- Anchor: `cmd-telegram-auth-configure`
- Mutates state: `no`
- Supports dry run: `no`

Store Telegram API ID/hash for the selected profile

Store the Telegram API ID and Telegram API hash from my.telegram.org/apps for the selected profile.

These are Telegram application credentials, not a normal Telegram account password, not a Bot API token, and not a session string.

Example:

```bash
telegram auth configure --api-id 12345 --api-hash <api-hash> --phone +1555010100
```

Flags:

- `--api-hash` (string): Telegram API hash from my.telegram.org/apps
- `--api-id` (int): Telegram API ID from my.telegram.org/apps
- `--phone` (string): Telegram account phone number in international format

#### `telegram auth continue`

- Anchor: `cmd-telegram-auth-continue`
- Mutates state: `no`
- Supports dry run: `no`

Continue an interrupted Telegram phone-code login

Continue an interrupted Telegram phone-code or 2FA login.

Resumes the stored Telegram phone-code hash or pending 2FA step without resending a login code when Telegram still accepts the pending authorization.

Example:

```bash
telegram auth continue --help
```

#### `telegram auth login`

- Anchor: `cmd-telegram-auth-login`
- Mutates state: `yes`
- Supports dry run: `no`

Login with Telegram QR login

Login to Telegram with the provider-supported QR flow by default.

Use --method phone only when no already logged-in Telegram app is available. Telegram API ID/hash are application credentials, not a normal account password and not a Bot API token.

Example:

```bash
telegram auth login
telegram auth login --help
telegram auth login --method phone
```

Flags:

- `--api-hash` (string): Telegram API hash from my.telegram.org/apps
- `--api-id` (int): Telegram API ID from my.telegram.org/apps
- `--method` (string): Telegram login method: qr or phone Default: `qr`.
- `--phone` (string): Telegram account phone number in international format

#### `telegram auth logout`

- Anchor: `cmd-telegram-auth-logout`
- Mutates state: `yes`
- Supports dry run: `no`

Remove the stored Telegram private session

Example:

```bash
telegram auth logout --help
```

Flags:

- `--revoke-provider-session` (bool): also revoke the provider-side Telegram authorization when supported

#### `telegram auth refresh`

- Anchor: `cmd-telegram-auth-refresh`
- Mutates state: `yes`
- Supports dry run: `no`

Validate the stored Telegram private session

Example:

```bash
telegram auth refresh --help
```

#### `telegram auth status`

- Anchor: `cmd-telegram-auth-status`
- Mutates state: `no`
- Supports dry run: `no`

Show Telegram private session status

Example:

```bash
telegram auth status --help
```

#### `telegram auth whoami`

- Anchor: `cmd-telegram-auth-whoami`
- Mutates state: `no`
- Supports dry run: `no`

Show the active Telegram account

Example:

```bash
telegram auth whoami --help
```

### `telegram capabilities`

- Anchor: `cmd-telegram-capabilities`
- Mutates state: `no`
- Supports dry run: `no`

Describe capabilities

Example:

```bash
telegram capabilities --help
```

Flags:

- `--section` (string): Show one capability section: scopes, schemas, or commands

### `telegram chat`

- Anchor: `cmd-telegram-chat`
- Mutates state: `no`
- Supports dry run: `no`

Find and inspect Telegram chats

Example:

```bash
telegram chat --help
```

#### `telegram chat archive`

- Anchor: `cmd-telegram-chat-archive`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or archive a Telegram chat

Example:

```bash
telegram chat archive --help
telegram chat archive c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat get`

- Anchor: `cmd-telegram-chat-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect a Telegram chat

Example:

```bash
telegram chat get
telegram chat get c1 --view full
```

#### `telegram chat leave`

- Anchor: `cmd-telegram-chat-leave`
- Mutates state: `no`
- Supports dry run: `yes`

Preview or leave a Telegram chat

Example:

```bash
telegram chat leave --help
telegram chat leave c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat list`

- Anchor: `cmd-telegram-chat-list`
- Mutates state: `no`
- Supports dry run: `no`

List recent Telegram chats

Example:

```bash
telegram chat list
telegram chat list --limit 20
telegram chat list --query project
```

Flags:

- `--archived` (bool): Only archived chats
- `--folder` (string): Telegram folder name or ID
- `--muted` (bool): Only muted chats
- `--pinned` (bool): Only pinned chats
- `--query` (string): Filter chats by title or username
- `--type` (string): Filter chat type
- `--unread` (bool): Only unread chats

#### `telegram chat mute`

- Anchor: `cmd-telegram-chat-mute`
- Mutates state: `no`
- Supports dry run: `yes`

Preview or mute a Telegram chat

Example:

```bash
telegram chat mute --help
telegram chat mute c1 --dry-run
telegram chat mute c1 --until 1h --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--until` (string): Mute duration or timestamp
- `--yes` (bool): Confirm destructive operation

#### `telegram chat pin`

- Anchor: `cmd-telegram-chat-pin`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or pin a Telegram chat

Example:

```bash
telegram chat pin --help
telegram chat pin c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat read`

- Anchor: `cmd-telegram-chat-read`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or mark a Telegram chat read

Example:

```bash
telegram chat read --help
telegram chat read c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat search`

- Anchor: `cmd-telegram-chat-search`
- Mutates state: `no`
- Supports dry run: `no`

Search Telegram chats

Example:

```bash
telegram chat search
telegram chat search --query project
```

Flags:

- `--archived` (bool): Only archived chats
- `--folder` (string): Telegram folder name or ID
- `--muted` (bool): Only muted chats
- `--pinned` (bool): Only pinned chats
- `--query` (string): Filter chats by title or username
- `--type` (string): Filter chat type
- `--unread` (bool): Only unread chats

#### `telegram chat unarchive`

- Anchor: `cmd-telegram-chat-unarchive`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or unarchive a Telegram chat

Example:

```bash
telegram chat unarchive --help
telegram chat unarchive c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat unmute`

- Anchor: `cmd-telegram-chat-unmute`
- Mutates state: `no`
- Supports dry run: `yes`

Preview or unmute a Telegram chat

Example:

```bash
telegram chat unmute --help
telegram chat unmute c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat unpin`

- Anchor: `cmd-telegram-chat-unpin`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or unpin a Telegram chat

Example:

```bash
telegram chat unpin --help
telegram chat unpin c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram chat unread`

- Anchor: `cmd-telegram-chat-unread`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or mark a Telegram chat unread

Example:

```bash
telegram chat unread --help
telegram chat unread c1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

### `telegram config`

- Anchor: `cmd-telegram-config`
- Mutates state: `no`
- Supports dry run: `no`

Inspect local configuration

Example:

```bash
telegram config --help
```

#### `telegram config explain`

- Anchor: `cmd-telegram-config-explain`
- Mutates state: `no`
- Supports dry run: `no`

Explain resolved configuration

Example:

```bash
telegram config explain --help
```

### `telegram contact`

- Anchor: `cmd-telegram-contact`
- Mutates state: `no`
- Supports dry run: `no`

Find and inspect Telegram contacts

Example:

```bash
telegram contact --help
```

#### `telegram contact get`

- Anchor: `cmd-telegram-contact-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect a Telegram contact

Example:

```bash
telegram contact get
telegram contact get u1
```

#### `telegram contact list`

- Anchor: `cmd-telegram-contact-list`
- Mutates state: `no`
- Supports dry run: `no`

List Telegram contacts

Example:

```bash
telegram contact list
telegram contact list --limit 20
```

Flags:

- `--query` (string): Filter contacts

#### `telegram contact search`

- Anchor: `cmd-telegram-contact-search`
- Mutates state: `no`
- Supports dry run: `no`

Search Telegram contacts

Example:

```bash
telegram contact search
telegram contact search --query alex
```

Flags:

- `--query` (string): Search text

### `telegram doctor`

- Anchor: `cmd-telegram-doctor`
- Mutates state: `no`
- Supports dry run: `no`

Run diagnostics

Example:

```bash
telegram doctor --help
```

### `telegram mcp`

- Anchor: `cmd-telegram-mcp`
- Mutates state: `no`
- Supports dry run: `no`

Run the MCP server

Run a stdio Model Context Protocol server for this adapter.

The server exposes read-only resource commands by default. Mutating commands are listed only when explicitly allowed with --allow and remain gated by the command contract safety class.

Example:

```bash
mcp
mcp --print-config
```

Flags:

- `--allow` (stringArray): Allow mutating command keys such as gmail.message.archive or gmail.message.label.*
- `--allow-dangerous` (bool): Allow --allow wildcards to include destructive or sends_external commands
- `--concurrency` (int): Maximum concurrent MCP subprocesses
- `--max-output` (int64): Maximum stdout/stderr bytes captured per MCP command Default: `0`.
- `--print-config` (bool): Print MCP tool configuration and exit
- `--timeout` (duration): Per-command MCP subprocess timeout, for example 45s or 2m Default: `0s`.

### `telegram media`

- Anchor: `cmd-telegram-media`
- Mutates state: `no`
- Supports dry run: `no`

Find, inspect, and download Telegram media

Example:

```bash
telegram media --help
```

#### `telegram media download`

- Anchor: `cmd-telegram-media-download`
- Mutates state: `no`
- Supports dry run: `no`

Download Telegram media to a path

Example:

```bash
telegram media download --help
telegram media download f1 --output ./file.bin
```

Flags:

- `--output` (string): Output path
- `--overwrite` (bool): Overwrite an existing output path

#### `telegram media get`

- Anchor: `cmd-telegram-media-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect Telegram media

Example:

```bash
telegram media get
telegram media get f1 --view full
```

#### `telegram media list`

- Anchor: `cmd-telegram-media-list`
- Mutates state: `no`
- Supports dry run: `no`

List Telegram media in a chat

Example:

```bash
telegram media list
telegram media list --chat c1 --limit 20
```

Flags:

- `--chat` (string): Chat selector
- `--type` (string): Media type filter

### `telegram message`

- Anchor: `cmd-telegram-message`
- Mutates state: `no`
- Supports dry run: `no`

Find, inspect, and send Telegram messages

Example:

```bash
telegram message --help
```

#### `telegram message delete`

- Anchor: `cmd-telegram-message-delete`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or delete a Telegram message

Example:

```bash
telegram message delete --help
telegram message delete m1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--for-everyone` (bool): Delete for everyone when Telegram permits it
- `--yes` (bool): Confirm destructive operation

#### `telegram message forward`

- Anchor: `cmd-telegram-message-forward`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or forward a Telegram message

Example:

```bash
telegram message forward --help
telegram message forward m1 --to c2 --dry-run
```

Flags:

- `--chat` (string): Destination chat selector
- `--dry-run` (bool): Preview without forwarding
- `--yes` (bool): Confirm destructive operation

#### `telegram message get`

- Anchor: `cmd-telegram-message-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect a Telegram message

Example:

```bash
telegram message get
telegram message get m1 --view full
```

#### `telegram message list`

- Anchor: `cmd-telegram-message-list`
- Mutates state: `no`
- Supports dry run: `no`

List recent Telegram messages in a chat or Saved Messages

Example:

```bash
telegram message list
telegram message list --chat c1 --limit 20
telegram message list --saved --limit 20
```

Flags:

- `--chat` (string): Chat selector from telegram chat list
- `--from` (string): Sender user selector
- `--query` (string): Filter messages by text
- `--saved` (bool): List Saved Messages
- `--since` (string): Only show messages at or after this time
- `--topic` (string): Forum topic selector
- `--type` (string): Message type filter
- `--until` (string): Only show messages before this time
- `--with-media` (bool): Only show messages with media

#### `telegram message pin`

- Anchor: `cmd-telegram-message-pin`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or pin a Telegram message

Example:

```bash
telegram message pin --help
telegram message pin m1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram message read`

- Anchor: `cmd-telegram-message-read`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or mark a Telegram message read

Example:

```bash
telegram message read --help
telegram message read m1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram message reply`

- Anchor: `cmd-telegram-message-reply`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or reply to a Telegram message

Example:

```bash
telegram message reply --help
telegram message reply m1 --text "hello" --dry-run
```

Flags:

- `--dry-run` (bool): Preview without sending
- `--parse` (string): Parse mode: plain, markdown, or html Default: `plain`.
- `--text` (string): Text reply to send
- `--text-file` (string): Read reply text from a file
- `--yes` (bool): Confirm destructive operation

#### `telegram message search`

- Anchor: `cmd-telegram-message-search`
- Mutates state: `no`
- Supports dry run: `no`

Search Telegram messages

Example:

```bash
telegram message search
telegram message search --chat c1 --query invoice
telegram message search --query invoice
```

Flags:

- `--chat` (string): Optional chat selector from telegram chat list
- `--from` (string): Sender user selector
- `--query` (string): Text to search for
- `--saved` (bool): Search Saved Messages
- `--since` (string): Only show messages at or after this time
- `--topic` (string): Forum topic selector
- `--type` (string): Message type filter
- `--until` (string): Only show messages before this time
- `--with-media` (bool): Only show messages with media

#### `telegram message send`

- Anchor: `cmd-telegram-message-send`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or send a Telegram text message

Example:

```bash
telegram message send --chat c1 --text "hello" --dry-run
telegram message send --chat c1 --text "hello" --yes
telegram message send --help
```

Flags:

- `--chat` (string): Destination chat selector from telegram chat list
- `--disable-link-preview` (bool): Disable link preview
- `--dry-run` (bool): Preview without sending
- `--parse` (string): Parse mode: plain, markdown, or html Default: `plain`.
- `--silent` (bool): Send without notification
- `--text` (string): Text message to send
- `--text-file` (string): Read message text from a file
- `--yes` (bool): Confirm destructive operation

#### `telegram message unpin`

- Anchor: `cmd-telegram-message-unpin`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or unpin a Telegram message

Example:

```bash
telegram message unpin --help
telegram message unpin m1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

#### `telegram message unread`

- Anchor: `cmd-telegram-message-unread`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or mark a Telegram message unread

Example:

```bash
telegram message unread --help
telegram message unread m1 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--yes` (bool): Confirm destructive operation

### `telegram profile`

- Anchor: `cmd-telegram-profile`
- Mutates state: `no`
- Supports dry run: `no`

Manage provider profiles

Example:

```bash
telegram profile --help
```

#### `telegram profile create`

- Anchor: `cmd-telegram-profile-create`
- Mutates state: `yes`
- Supports dry run: `no`

Create an unauthenticated provider profile

Example:

```bash
telegram profile create --help
```

#### `telegram profile delete`

- Anchor: `cmd-telegram-profile-delete`
- Mutates state: `yes`
- Supports dry run: `no`

Delete a local provider profile

Example:

```bash
telegram profile delete --help
```

#### `telegram profile list`

- Anchor: `cmd-telegram-profile-list`
- Mutates state: `no`
- Supports dry run: `no`

List provider profiles

Example:

```bash
telegram profile list --help
```

#### `telegram profile rename`

- Anchor: `cmd-telegram-profile-rename`
- Mutates state: `no`
- Supports dry run: `no`

Rename a local provider profile

Example:

```bash
telegram profile rename --help
```

#### `telegram profile use`

- Anchor: `cmd-telegram-profile-use`
- Mutates state: `yes`
- Supports dry run: `no`

Set the default provider profile

Example:

```bash
telegram profile use --help
```

### `telegram reaction`

- Anchor: `cmd-telegram-reaction`
- Mutates state: `no`
- Supports dry run: `no`

Inspect and change Telegram message reactions

Example:

```bash
telegram reaction --help
```

#### `telegram reaction add`

- Anchor: `cmd-telegram-reaction-add`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or add a reaction

Example:

```bash
telegram reaction add --help
telegram reaction add m1 --emoji 👍 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--emoji` (string): Reaction emoji
- `--yes` (bool): Confirm destructive operation

#### `telegram reaction list`

- Anchor: `cmd-telegram-reaction-list`
- Mutates state: `no`
- Supports dry run: `no`

List reactions on a Telegram message

Example:

```bash
telegram reaction list
telegram reaction list m1
```

#### `telegram reaction remove`

- Anchor: `cmd-telegram-reaction-remove`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or remove a reaction

Example:

```bash
telegram reaction remove --help
telegram reaction remove m1 --emoji 👍 --dry-run
```

Flags:

- `--dry-run` (bool): Preview without changing Telegram
- `--emoji` (string): Reaction emoji
- `--yes` (bool): Confirm destructive operation

### `telegram resolve`

- Anchor: `cmd-telegram-resolve`
- Mutates state: `no`
- Supports dry run: `no`

Resolve a local ref, short id, or URL alias

Example:

```bash
telegram resolve --help
telegram resolve <ref>
```

### `telegram saved`

- Anchor: `cmd-telegram-saved`
- Mutates state: `no`
- Supports dry run: `no`

Work with Telegram Saved Messages

Example:

```bash
telegram saved --help
```

#### `telegram saved add`

- Anchor: `cmd-telegram-saved-add`
- Mutates state: `yes`
- Supports dry run: `yes`

Preview or add a Saved Message

Example:

```bash
telegram saved add --help
telegram saved add --text "note" --dry-run
```

Flags:

- `--dry-run` (bool): Preview without saving
- `--file` (string): File path to save
- `--parse` (string): Parse mode for --text: plain, markdown, or html Default: `plain`.
- `--text` (string): Text to save
- `--yes` (bool): Confirm destructive operation

#### `telegram saved list`

- Anchor: `cmd-telegram-saved-list`
- Mutates state: `no`
- Supports dry run: `no`

List Saved Messages

Example:

```bash
telegram saved list
telegram saved list --limit 20
```

Flags:

- `--query` (string): Filter Saved Messages
- `--type` (string): Message type filter

#### `telegram saved search`

- Anchor: `cmd-telegram-saved-search`
- Mutates state: `no`
- Supports dry run: `no`

Search Saved Messages

Example:

```bash
telegram saved search
telegram saved search --query token
```

Flags:

- `--query` (string): Search text
- `--type` (string): Message type filter

### `telegram schema`

- Anchor: `cmd-telegram-schema`
- Mutates state: `no`
- Supports dry run: `no`

Emit schema hints

Example:

```bash
telegram schema --help
```

Flags:

- `--in` (bool): Show input schema
- `--input` (bool): Show input schema
- `--out` (bool): Show output schema

### `telegram topic`

- Anchor: `cmd-telegram-topic`
- Mutates state: `no`
- Supports dry run: `no`

Find and inspect Telegram forum topics

Example:

```bash
telegram topic --help
```

#### `telegram topic get`

- Anchor: `cmd-telegram-topic-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect a Telegram forum topic

Example:

```bash
telegram topic get
telegram topic get t1
```

#### `telegram topic list`

- Anchor: `cmd-telegram-topic-list`
- Mutates state: `no`
- Supports dry run: `no`

List Telegram forum topics

Example:

```bash
telegram topic list
telegram topic list --chat c1
```

Flags:

- `--chat` (string): Chat selector

### `telegram user`

- Anchor: `cmd-telegram-user`
- Mutates state: `no`
- Supports dry run: `no`

Find and inspect Telegram users

Example:

```bash
telegram user --help
```

#### `telegram user get`

- Anchor: `cmd-telegram-user-get`
- Mutates state: `no`
- Supports dry run: `no`

Inspect a known Telegram user

Example:

```bash
telegram user get
telegram user get u1
```

#### `telegram user search`

- Anchor: `cmd-telegram-user-search`
- Mutates state: `no`
- Supports dry run: `no`

Search known Telegram users

Example:

```bash
telegram user search
telegram user search --query alex
```

Flags:

- `--query` (string): Search text

### `telegram version`

- Anchor: `cmd-telegram-version`
- Mutates state: `no`
- Supports dry run: `no`

Show version information

Example:

```bash
telegram version --help
```

## Live Examples

### Auth

#### Show Telegram auth readiness

Covers the profile-aware human readiness surface, QR/phone recovery, and first safe next steps.

_Example metadata: requires auth; provider state: live._

```bash
telegram auth status
```

```text
Authenticated as authenticated account

Next steps:
- Run: telegram chat list --limit 20
```

#### Show Telegram auth readiness JSON

Covers the WF-01 machine contract for provider_ready, app credentials, session state, account identity, and suggested_next_step.

_Example metadata: requires auth; provider state: live._

```bash
telegram auth status --json
```

```text
{
  "tool": "telegram",
  "provider": "telegram",
  "profile": "Philip Sterne",
  "auth_mode": "private_session",
  "authenticated": true,
  "app_credentials_available": true,
  "app_credentials_source": "profile",
  "session_present": true,
  "session_valid": true,
  "provider_ready": true,
  "account": {
    "id": "{telegram-id}",
    "display_name": "Philip Sterne",
    "phone_masked": "27*****1879"
  },
  "authorization": {
    "code_required": false,
    "last_checked_at": "2026-06-29T08:45:42Z",
    "login_method": "qr",
    "login_required": false,
    "password_required": false,
    "pending_code_type": "",
    "pending_login": false,
    "phone_masked": ""
  },
  "suggested_next_step": "telegram chat list --limit 20",
  "setup_url": "https://my.telegram.org/apps",
  "credential_backend": {
    "requested": "file",
    "selected": "file",
    "secure": false,
    "fallback_active": false
  }
}
```

#### Show current Telegram identity

Captures the canonical current-account identity surface so agents do not invent user me commands.

_Example metadata: requires auth; provider state: live._

```bash
telegram auth whoami
```

```text
Telegram account
Name:     Philip Sterne
Phone:    27*****1879
Profile:  Philip Sterne
Provider: telegram

Next steps:
- List chats:      telegram chat list --limit 20
- Check readiness: telegram doctor
```

#### Show QR login help

Documents default QR login, explicit phone fallback, and secret-handling constraints without starting an interactive login.

_Example metadata: requires auth; provider state: live._

```bash
telegram auth login --help
```

```text
Login to Telegram with the provider-supported QR flow by default.

Use --method phone only when no already logged-in Telegram app is available. Telegram API ID/hash are application credentials, not a normal account password and not a Bot API token.

Usage:
  telegram auth login [flags]

Examples:
telegram auth login
telegram auth login --help
telegram auth login --method phone

Flags:
      --api-hash string   Telegram API hash from my.telegram.org/apps
      --api-id int        Telegram API ID from my.telegram.org/apps
  -h, --help              help for login
      --method string     Telegram login method: qr or phone (default "qr")
      --phone string      Telegram account phone number in international format

Global Flags:
      --config string    Config path override
      --cursor string    Continuation cursor
      --debug            Enable debug diagnostics
      --json             Emit JSON machine output
      --jsonl            Emit JSONL records for piping
      --limit int        Maximum items to emit (default 50)
      --no-paginate      Fetch only one page
  -o, --output string    Compatibility output mode: json|jsonl. Prefer --json or --jsonl
      --page-size int    Requested upstream page size (default 50)
      --profile string   Config/auth profile (default "default")
  -q, --quiet            Suppress non-essential diagnostics
  -v, --version          Print version information
      --view string      View mode: summary|full (default "summary")
```

#### Run Telegram doctor

Shows credential backend, app credential, session, and provider readiness diagnostics.

_Example metadata: requires auth; provider state: live._

```bash
telegram doctor
```

```text
telegram doctor: WARN
Checks: credential_backend ok, credential_security warn, profiles ok, telegram_app_credentials ok, auth ok, connectivity warn
CHECK                     STATUS  DETAIL
credential_backend        OK      using file
credential_security       WARN    credential backend stores local plaintext secrets
profiles                  OK      active profile "Philip Sterne"
telegram_app_credentials  OK      Telegram API ID/hash are available from profile
auth                      OK      Telegram private session is stored
connectivity              WARN    not checked by default to avoid sending login codes; run tele...

Next steps:
- Status:       prefer an OS keychain backend outside isolated test accounts
- Capabilities: telegram capabilities
```

### Messages

#### List recent chat messages

Captures chat-scoped message refs and message-selection next steps.

_Example metadata: requires auth; provider state: live._

```bash
telegram message list --chat c1 --limit 5
```

```text
Messages (2 total)
MARKER  CHAT_TITLE      TEXT                                                                           DATE
m1      Saved Messages  cmdhub-{token} saved messages roundtrip  7d ago
m2      Saved Messages  cmdhub-{token} cleanup candidate       9d ago

Next steps:
- Open:         telegram message get m1
- Search:       telegram message search --query <text>
- List chats:   telegram chat list --limit 20
- Capabilities: telegram capabilities
```

#### Recover from empty message search

Matches the accepted empty-search recovery shape without relying on production data.

_Example metadata: requires auth; provider state: live._

```bash
telegram message search --chat c1 --query cmdhub-docshot-no-such-token --limit 3
```

```text
No message found.

Next steps:
- List:            telegram message list
- Status:          telegram auth status
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

#### Inspect a Telegram message

Matches the accepted message-detail reference screen when message refs are available.

_Example metadata: requires auth; provider state: live._

```bash
telegram message get m1 --view full
```

```text
Get message m1: cmdhub-{token} saved messages roundtrip
Field  Value
-----  -----
Ref    m1
Type   message
Title  cmdhub-{token} saved messages roundtrip
When   2026-06-29T07:37:31Z

Next steps:
- Run:             telegram saved list --limit 20
- Open:            telegram message get m1
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

#### Preview a Telegram send

Matches the accepted send-preview reference screen without sending externally visible data.

_Example metadata: requires auth; provider state: live._

```bash
telegram message send --chat c1 --text cmdhub-docshot-send-preview --dry-run
```

```text
Message send preview
Chat:   c1  Saved Messages
From:   You
Text:   cmdhub-{token}
Status: not sent

To send this message, rerun with --yes.

Next steps:
- Send exactly this message: telegram message send --chat c1 --text "cmdhub-{token}" --yes
- Inspect destination first: telegram chat get c1
```

#### Preview a Telegram reply

Captures exact-message reply preview and thread/message context without sending.

_Example metadata: requires auth; provider state: live._

```bash
telegram message reply m1 --text cmdhub-docshot-reply-preview --dry-run
```

```text
Message reply preview
Text:   cmdhub-{token}
Status: not sent

Next steps:
- Apply exactly this preview: telegram message reply m1 --text "cmdhub-{token}" --yes
```

#### Preview Telegram message deletion

Matches the accepted destructive preview shape with explicit --yes confirmation.

_Example metadata: requires auth; provider state: live._

```bash
telegram message delete m1 --dry-run
```

```text
Message delete preview
Text:   Saved Messages
Status: not changed

Next steps:
- Apply exactly this preview: telegram message delete m1 --yes
```

### Chats

#### List Telegram chats

Matches the accepted chat-list reference screen: local refs first, no peer IDs, and concrete follow-up commands.

_Example metadata: requires auth; provider state: live._

```bash
telegram chat list --limit 5
```

```text
Chats (4 total)
MARKER  TITLE           CHAT_TYPE  STATE  LATEST_SENDER  LATEST_MESSAGE                                                                 WHEN
c1      Saved Messages  saved      read                  cmdhub-{token} saved messages roundtrip  7d ago
c2      Telegram        user       read   Philip Sterne  cmdhub-{token}                                   9d ago
c3      FizzyNotes      bot        read                  FizzyNotes: active case is now #6. Send notes/photos for this patient.         1mo ago
c4      BotFather       bot        read                  Invalid bot selected.                                                          1mo ago

Next steps:
- Open:            telegram chat get c1
- Search:          telegram chat search --query <text>
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

#### Inspect a Telegram chat

Captures full chat detail after chat-list ref minting.

_Example metadata: requires auth; provider state: live._

```bash
telegram chat get c1 --view full
```

```text
Get chat c1: Saved Messages
Field   Value
------  -----
Ref     c1
Type    chat
Title   Saved Messages
Status  read
When    2026-06-29T07:37:31Z

Next steps:
- Run:             telegram message list --chat c1 --limit 20
- Open:            telegram chat get c1
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

#### List unread Telegram chats

Shows unread workflow discovery and empty-state guidance when no unread conversations exist.

_Example metadata: requires auth; provider state: live._

```bash
telegram chat list --unread --limit 5
```

```text
No chat found.

Next steps:
- Search:          telegram chat search --query <text>
- Status:          telegram auth status
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

### Discovery

#### Show Telegram capabilities

Lists resource families, aliases, refs, pagination, output modes, and mutation safety classes.

_Example metadata: requires auth; provider state: live._

```bash
telegram capabilities
```

```text
telegram capabilities
Resources: auth, capabilities, chat, config, contact, doctor, mcp, media, message, profile, reaction, resolve, saved, schema, topic, user, version
Machine output: --json, --jsonl

Next steps:
- Schema:     telegram schema
- Contract:   telegram capabilities --json
- Help:       telegram --help
- List chats: telegram chat list --limit 20
```

#### Show schema inventory

Captures the machine-readable command schema inventory for drift detection.

_Example metadata: requires auth; provider state: live._

```bash
telegram schema --json
```

```text
{
  "examples": [
    "telegram schema",
    "telegram schema message.send --input --json",
    "telegram schema auth.status --out"
  ],
  "schemas": [
    {
      "schema_id": "telegram.auth.configure.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "configure",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "app_credentials_available": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "app_credentials_source": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "phone_masked": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "provider",
          "profile",
          "app_credentials_available",
          "app_credentials_source",
          "suggested_next_step"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "provider",
        "profile",
        "app_credentials_available",
        "app_credentials_source",
        "suggested_next_step"
      ],
      "optional": [
        "phone_masked"
      ]
    },
    {
      "schema_id": "telegram.auth.continue.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "continue",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "continued": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "reason": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "recovery": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "provider",
          "profile",
          "continued",
          "reason",
          "suggested_next_step"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "provider",
        "profile",
        "continued",
        "reason",
        "suggested_next_step"
      ],
      "optional": [
        "recovery"
      ]
    },
    {
      "schema_id": "telegram.auth.status.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "status",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "json": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "jsonl": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "view": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "profile",
        "json",
        "jsonl",
        "view"
      ]
    },
    {
      "schema_id": "telegram.auth.status.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "status",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "account": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "app_credentials_available": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "app_credentials_source": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "auth_mode": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "authenticated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "authorization": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "credential_backend": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider_ready": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "recovery": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "session_present": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "session_valid": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "setup_url": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "provider",
          "profile",
          "authenticated",
          "app_credentials_available",
          "app_credentials_source",
          "session_present",
          "session_valid",
          "provider_ready",
          "account",
          "suggested_next_step"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "provider",
        "profile",
        "authenticated",
        "app_credentials_available",
        "app_credentials_source",
        "session_present",
        "session_valid",
        "provider_ready",
        "account",
        "suggested_next_step"
      ],
      "optional": [
        "auth_mode",
        "authorization",
        "setup_url",
        "recovery",
        "credential_backend"
      ]
    },
    {
      "schema_id": "telegram.auth.whoami.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "whoami",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "json": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "jsonl": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "view": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "profile",
        "json",
        "jsonl",
        "view"
      ]
    },
    {
      "schema_id": "telegram.auth.whoami.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "auth",
      "action": "whoami",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "account": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "provider",
          "profile",
          "account",
          "suggested_next_step"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "provider",
        "profile",
        "account",
        "suggested_next_step"
      ]
    },
    {
      "schema_id": "telegram.capabilities.describe.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "capabilities",
      "action": "describe",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "actions": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "command_contract": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "examples": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resources": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "schemas": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "resources",
          "actions",
          "command_contract"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "resources",
        "actions",
        "command_contract"
      ],
      "optional": [
        "schemas",
        "examples"
      ]
    },
    {
      "schema_id": "telegram.chat.archive.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "archive",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.archive.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "archive",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "view": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "view"
      ]
    },
    {
      "schema_id": "telegram.chat.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat_type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "top_message_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "unread_count": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "username": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "title",
          "chat_type"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "title",
        "chat_type"
      ],
      "optional": [
        "username",
        "unread_count",
        "top_message_id",
        "suggested_next_step"
      ]
    },
    {
      "schema_id": "telegram.chat.leave.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "leave",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.leave.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "leave",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "archived": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "folder": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "muted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "pinned": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "unread": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "query",
        "type",
        "unread",
        "archived",
        "pinned",
        "muted",
        "folder",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.chat.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.chat.mute.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "mute",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "until": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "until",
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.mute.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "mute",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.pin.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "pin",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.pin.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "pin",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.read.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "read",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.read.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "read",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.search.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "search",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "archived": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "folder": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "muted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "pinned": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "unread": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "required": [
        "query"
      ],
      "optional": [
        "type",
        "unread",
        "archived",
        "pinned",
        "muted",
        "folder",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.chat.search.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "search",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.chat.unarchive.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unarchive",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.unarchive.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unarchive",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.unmute.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unmute",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.unmute.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unmute",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.unpin.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unpin",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.unpin.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unpin",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.chat.unread.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unread",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.chat.unread.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "chat",
      "action": "unread",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.contact.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "contact": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "contact"
        ],
        "type": "object"
      },
      "required": [
        "contact"
      ]
    },
    {
      "schema_id": "telegram.contact.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "bot": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "display_name": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "phone_masked": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "username": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "display_name"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "display_name"
      ],
      "optional": [
        "username",
        "phone_masked",
        "bot"
      ]
    },
    {
      "schema_id": "telegram.contact.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "query",
        "limit"
      ]
    },
    {
      "schema_id": "telegram.contact.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request"
      ]
    },
    {
      "schema_id": "telegram.contact.search.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "search",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "required": [
        "query"
      ],
      "optional": [
        "limit"
      ]
    },
    {
      "schema_id": "telegram.contact.search.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "contact",
      "action": "search",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request"
      ]
    },
    {
      "schema_id": "telegram.doctor.run.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "doctor",
      "action": "run",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "app_credentials_available": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "app_credentials_source": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "auth_mode": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "checks": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "credential_backend": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "credential_secure": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "provider_ready": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "session_present": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "setup_url": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "profile",
          "checks"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "profile",
        "checks"
      ],
      "optional": [
        "credential_backend",
        "credential_secure",
        "provider",
        "auth_mode",
        "app_credentials_available",
        "app_credentials_source",
        "session_present",
        "provider_ready",
        "setup_url"
      ]
    },
    {
      "schema_id": "telegram.media.download.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "download",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "media_or_message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "output": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "overwrite": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "media_or_message",
          "output"
        ],
        "type": "object"
      },
      "required": [
        "media_or_message",
        "output"
      ],
      "optional": [
        "overwrite"
      ]
    },
    {
      "schema_id": "telegram.media.download.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "download",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.media.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "media_or_message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "view": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "media_or_message"
        ],
        "type": "object"
      },
      "required": [
        "media_or_message"
      ],
      "optional": [
        "view"
      ]
    },
    {
      "schema_id": "telegram.media.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "file_name": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "media_type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "mime_type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "message_id",
          "chat_id"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "message_id",
        "chat_id"
      ],
      "optional": [
        "file_name",
        "media_type",
        "size",
        "mime_type"
      ]
    },
    {
      "schema_id": "telegram.media.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "type",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.media.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "media",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.message.delete.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "delete",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "for_everyone": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "for_everyone",
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.delete.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "delete",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.forward.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "forward",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "to": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message",
          "to"
        ],
        "type": "object"
      },
      "required": [
        "message",
        "to"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.forward.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "forward",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "view": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "view"
      ]
    },
    {
      "schema_id": "telegram.message.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "chat_title": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "date": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "outgoing": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "pinned": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "suggested_next_step": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "message_id",
          "chat_id",
          "date",
          "text"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "message_id",
        "chat_id",
        "date",
        "text"
      ],
      "optional": [
        "chat_title",
        "outgoing",
        "pinned",
        "suggested_next_step"
      ]
    },
    {
      "schema_id": "telegram.message.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "from": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "saved": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "since": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "topic": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "until": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "with_media": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "chat",
        "saved",
        "query",
        "from",
        "with_media",
        "type",
        "topic",
        "since",
        "until",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.message.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.message.pin.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "pin",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.pin.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "pin",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.read.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "read",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.read.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "read",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.reply.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "reply",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "parse": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text_file": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "text",
        "text_file",
        "parse",
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.reply.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "reply",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.search.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "search",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "from": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "saved": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "since": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "topic": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "until": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "with_media": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "required": [
        "query"
      ],
      "optional": [
        "chat",
        "saved",
        "from",
        "with_media",
        "type",
        "topic",
        "since",
        "until",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.message.search.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "search",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.message.send.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "send",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "disable_link_preview": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "parse": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "silent": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text_file": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "text",
        "text_file",
        "parse",
        "disable_link_preview",
        "silent",
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.send.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "send",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.unpin.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "unpin",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.unpin.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "unpin",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.message.unread.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "unread",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.message.unread.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "message",
      "action": "unread",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.reaction.add.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "add",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "emoji": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message",
          "emoji"
        ],
        "type": "object"
      },
      "required": [
        "message",
        "emoji"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.reaction.add.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "add",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.reaction.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message"
        ],
        "type": "object"
      },
      "required": [
        "message"
      ]
    },
    {
      "schema_id": "telegram.reaction.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request"
      ]
    },
    {
      "schema_id": "telegram.reaction.remove.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "remove",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "emoji": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "message": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "message",
          "emoji"
        ],
        "type": "object"
      },
      "required": [
        "message",
        "emoji"
      ],
      "optional": [
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.reaction.remove.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "reaction",
      "action": "remove",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.resolve.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "resolve",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "input": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "profile": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resolved": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "input",
          "resolved"
        ],
        "type": "object"
      },
      "required": [
        "input",
        "resolved"
      ],
      "optional": [
        "profile",
        "resource"
      ]
    },
    {
      "schema_id": "telegram.saved.add.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "add",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "dry_run": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "file": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "text": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "yes": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "text",
        "file",
        "dry_run",
        "yes"
      ]
    },
    {
      "schema_id": "telegram.saved.add.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "add",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "item": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "meta": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "resource",
          "action",
          "item"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "resource",
        "action",
        "item"
      ],
      "optional": [
        "request",
        "meta"
      ]
    },
    {
      "schema_id": "telegram.saved.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [],
        "type": "object"
      },
      "optional": [
        "query",
        "type",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.saved.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.saved.search.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "search",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "no_paginate": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "page_size": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "required": [
        "query"
      ],
      "optional": [
        "type",
        "limit",
        "cursor",
        "page_size",
        "no_paginate"
      ]
    },
    {
      "schema_id": "telegram.saved.search.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "saved",
      "action": "search",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "next_cursor": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "truncated": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request",
        "truncated",
        "next_cursor"
      ]
    },
    {
      "schema_id": "telegram.topic.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "topic",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "topic": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "topic"
        ],
        "type": "object"
      },
      "required": [
        "topic"
      ]
    },
    {
      "schema_id": "telegram.topic.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "topic",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat_id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "chat_title": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "title": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "title",
          "chat_id"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "title",
        "chat_id"
      ],
      "optional": [
        "chat_title"
      ]
    },
    {
      "schema_id": "telegram.topic.list.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "topic",
      "action": "list",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "chat": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "chat"
        ],
        "type": "object"
      },
      "required": [
        "chat"
      ],
      "optional": [
        "limit"
      ]
    },
    {
      "schema_id": "telegram.topic.list.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "topic",
      "action": "list",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request"
      ]
    },
    {
      "schema_id": "telegram.user.get.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "user",
      "action": "get",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "user": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "user"
        ],
        "type": "object"
      },
      "required": [
        "user"
      ]
    },
    {
      "schema_id": "telegram.user.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "user",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "bot": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "display_name": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "id": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "type": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "username": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "type",
          "id",
          "display_name"
        ],
        "type": "object"
      },
      "required": [
        "type",
        "id",
        "display_name"
      ],
      "optional": [
        "username",
        "bot"
      ]
    },
    {
      "schema_id": "telegram.user.search.input.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "user",
      "action": "search",
      "direction": "input",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "limit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "query": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "required": [
        "query"
      ],
      "optional": [
        "limit"
      ]
    },
    {
      "schema_id": "telegram.user.search.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "user",
      "action": "search",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "action": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "count_emitted": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "items": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "request": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "resource": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "items",
          "count_emitted",
          "resource",
          "action"
        ],
        "type": "object"
      },
      "required": [
        "items",
        "count_emitted",
        "resource",
        "action"
      ],
      "optional": [
        "request"
      ]
    },
    {
      "schema_id": "telegram.version.get.output.v1",
      "version": "v1",
      "tool": "telegram",
      "resource": "version",
      "action": "get",
      "direction": "output",
      "kind": "provider-native",
      "json_schema": {
        "additionalProperties": true,
        "properties": {
          "built_at": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "commit": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "platform": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "schema_version": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "tool": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          },
          "version": {
            "type": [
              "string",
              "number",
              "integer",
              "boolean",
              "array",
              "object",
              "null"
            ]
          }
        },
        "required": [
          "tool",
          "version",
          "platform"
        ],
        "type": "object"
      },
      "required": [
        "tool",
        "version",
        "platform"
      ],
      "optional": [
        "commit",
        "built_at",
        "schema_version"
      ]
    }
  ],
  "tool": "telegram"
}
```

#### Show message send input schema

Documents required send fields, dry-run behavior, parse options, and confirmation flags.

_Example metadata: requires auth; provider state: live._

```bash
telegram schema message.send --input --json
```

```text
{
  "schema_id": "telegram.message.send.input.v1",
  "version": "v1",
  "tool": "telegram",
  "resource": "message",
  "action": "send",
  "direction": "input",
  "kind": "provider-native",
  "json_schema": {
    "additionalProperties": true,
    "properties": {
      "chat": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "disable_link_preview": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "dry_run": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "parse": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "silent": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "text": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "text_file": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "yes": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      }
    },
    "required": [
      "chat"
    ],
    "type": "object"
  },
  "required": [
    "chat"
  ],
  "optional": [
    "text",
    "text_file",
    "parse",
    "disable_link_preview",
    "silent",
    "dry_run",
    "yes"
  ]
}
```

#### Show media download output schema

Documents explicit-output media download provenance for agents.

_Example metadata: requires auth; provider state: live._

```bash
telegram schema media.download --out --json
```

```text
{
  "schema_id": "telegram.media.download.output.v1",
  "version": "v1",
  "tool": "telegram",
  "resource": "media",
  "action": "download",
  "direction": "output",
  "kind": "provider-native",
  "json_schema": {
    "additionalProperties": true,
    "properties": {
      "action": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "item": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "meta": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "request": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "resource": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      },
      "type": {
        "type": [
          "string",
          "number",
          "integer",
          "boolean",
          "array",
          "object",
          "null"
        ]
      }
    },
    "required": [
      "type",
      "resource",
      "action",
      "item"
    ],
    "type": "object"
  },
  "required": [
    "type",
    "resource",
    "action",
    "item"
  ],
  "optional": [
    "request",
    "meta"
  ]
}
```

### Media

#### List Telegram media

Captures media refs when present and empty/no-media recovery when absent.

_Example metadata: requires auth; provider state: live._

```bash
telegram media list --chat c1 --limit 5
```

```text
No media found.

Next steps:
- Status:          telegram auth status
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
- Capabilities:    telegram capabilities
```

#### Recover from missing media output path

Shows explicit-output validation recovery without writing files.

_Example metadata: requires auth; provider state: live._

```bash
telegram media download f1
```

```text
INVALID_ARGUMENT: missing output path
suggestion: add --output ./file.bin
exit status 2
```

### People

#### List Telegram contacts

Captures contact refs and masked phone behavior.

_Example metadata: requires auth; provider state: live._

```bash
telegram contact list --limit 5
```

```text
Contacts (4 total)
MARKER  DISPLAY_NAME   USERNAME  PHONE_MASKED
u1      Carl Meijer    Carl1968  27*****4725
u2      Gabi Immelman            27*****2922
u3      Sterne                   27*****7762
u4      Philip Sterne            27*****1879

Next steps:
- Open:            telegram contact get u1
- Search:          telegram contact search --query <text>
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
```

#### Search known Telegram users

Captures known-user search or empty-state guidance without inventing a user-me surface.

_Example metadata: requires auth; provider state: live._

```bash
telegram user search --query cmdhub-docshot --limit 5
```

```text
No user found.

Next steps:
- Status:          telegram auth status
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
- Capabilities:    telegram capabilities
```

### Recovery

#### Recover from stale local ref

Shows stale-ref recovery and list/search commands for recreating refs.

_Example metadata: requires auth; provider state: live._

```bash
telegram resolve z999
```

```text
NOT_FOUND: reference not found
suggestion: run telegram chat list, telegram message search, or the matching resource list/search command to create refs
exit status 50
```

#### Recover from ambiguous peer wording

Captures the expected suggest-only recovery for chat list/search, user search, and resolve with the supplied selector.

_Example metadata: requires auth; provider state: live._

```bash
telegram peer cmdhub-docshot
```

```text
INVALID_ARGUMENT: ambiguous Telegram peer selector

Next steps:
- Find chats:       telegram chat list --query "cmdhub-{token}"
- Find users:       telegram user search --query "cmdhub-{token}"
- Resolve selector: telegram resolve "cmdhub-{token}"
exit status 2
```

### Saved

#### List Saved Messages

Covers the personal-cloud workflow and Saved Messages aliasing.

_Example metadata: requires auth; provider state: live._

```bash
telegram saved list --limit 5
```

```text
Saveds (2 total)
MARKER  TEXT                                                                           DATE
m1      cmdhub-{token} saved messages roundtrip  7d ago
m2      cmdhub-{token} cleanup candidate       9d ago

Next steps:
- Search:          telegram saved search --query <text>
- List chats:      telegram chat list --limit 20
- Search messages: telegram message search --query <text>
- Capabilities:    telegram capabilities
```

#### Preview a Saved Messages note

Captures a non-mutating Saved Messages preview with explicit confirmation guidance.

_Example metadata: requires auth; provider state: live._

```bash
telegram saved add --text cmdhub-docshot-saved-note --dry-run
```

```text
Saved add preview
Text:   cmdhub-{token}
Status: not sent

Next steps:
- Apply exactly this preview: telegram saved add --text "cmdhub-{token}" --yes
```
