---
read_when:
    - 1つのアクティブなセッションの返信先を Telegram から Discord、Slack、Mattermost、または別のリンク済みチャネルへ移したい場合
    - チャネル横断のダイレクトメッセージ用に session.identityLinks を設定しています
    - /dock コマンドで、送信者がリンクされていない、またはアクティブなセッションが存在しないと表示される
summary: 1つの OpenClaw セッションの返信ルートを、リンクされたチャットチャンネル間で移動する
title: チャネルのドッキング
x-i18n:
    generated_at: "2026-04-30T05:07:17Z"
    model: gpt-5.5
    provider: openai
    source_hash: b981cd177ed76194cf18667620a1f9b2f2ba50df42fe203f6f68916971ed6a61
    source_path: concepts/channel-docking.md
    workflow: 16
---

チャネルドッキングは、1つのOpenClawセッションに対する転送です。

同じ会話コンテキストを維持しつつ、そのセッションの今後の返信が
配信される場所を変更します。

## 例

AliceはTelegramとDiscordでOpenClawにメッセージを送れます。

```json5
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456"],
    },
  },
}
```

AliceがTelegramからこれを送信すると:

```text
/dock_discord
```

OpenClawは現在のセッションコンテキストを維持し、返信ルートを変更します。

| ドッキング前                 | `/dock_discord`後           |
| ---------------------------- | --------------------------- |
| 返信はTelegram `123`へ行く   | 返信はDiscord `456`へ行く   |

セッションは再作成されません。トランスクリプト履歴は同じセッションに
紐付いたままです。

## 使用する理由

タスクが1つのチャットアプリで始まり、その後の返信を別の場所に届けたい場合に
ドッキングを使用します。

一般的な流れ:

1. Telegramからエージェントタスクを開始します。
2. 作業調整をしているDiscordへ移動します。
3. Telegramセッションから`/dock_discord`を送信します。
4. 同じOpenClawセッションを維持しつつ、今後の返信をDiscordで受け取ります。

## 必須設定

ドッキングには`session.identityLinks`が必要です。送信元の送信者とターゲットピアは
同じIDグループに含まれている必要があります。

```json5
{
  session: {
    identityLinks: {
      alice: ["telegram:123", "discord:456", "slack:U123"],
    },
  },
}
```

値はチャネル接頭辞付きのピアIDです。

| 値             | 意味                         |
| -------------- | ---------------------------- |
| `telegram:123` | Telegram送信者ID `123`       |
| `discord:456`  | Discord直接ピアID `456`      |
| `slack:U123`   | SlackユーザーID `U123`       |

正規キー（上の`alice`）は共有IDグループ名にすぎません。Dock
コマンドは、チャネル接頭辞付きの値を使用して、送信元の送信者と
ターゲットピアが同一人物であることを証明します。

## コマンド

Dockコマンドは、ネイティブコマンドをサポートする読み込み済みチャネルPluginから生成されます。
現在バンドルされているコマンド:

| ターゲットチャネル | コマンド           | エイリアス         |
| -------------- | ------------------ | ------------------ |
| Discord        | `/dock-discord`    | `/dock_discord`    |
| Mattermost     | `/dock-mattermost` | `/dock_mattermost` |
| Slack          | `/dock-slack`      | `/dock_slack`      |
| Telegram       | `/dock-telegram`   | `/dock_telegram`   |

アンダースコア付きエイリアスは、Telegramのようなネイティブコマンドサーフェスで便利です。

## 変更されるもの

ドッキングはアクティブなセッション配信フィールドを更新します。

| セッションフィールド | `/dock_discord`後の例                  |
| --------------- | ---------------------------------------- |
| `lastChannel`   | `discord`                                |
| `lastTo`        | `456`                                    |
| `lastAccountId` | ターゲットチャネルアカウント、または`default` |

これらのフィールドはセッションストアに永続化され、そのセッションの後続の返信
配信で使用されます。

## 変更されないもの

ドッキングは次のことを行いません。

- チャネルアカウントを作成する
- 新しいDiscord、Telegram、Slack、Mattermostボットを接続する
- ユーザーにアクセス権を付与する
- チャネルの許可リストやDMポリシーを迂回する
- トランスクリプト履歴を別のセッションへ移動する
- 関係のないユーザーにセッションを共有させる

現在のセッションの配信ルートだけを変更します。

## トラブルシューティング

**コマンドが、送信者はリンクされていないと表示する。**

現在の送信者とターゲットピアの両方を同じ
`session.identityLinks`グループに追加します。たとえば、Telegram送信者`123`を
Discordピア`456`にドッキングする必要がある場合は、`telegram:123`と`discord:456`の両方を含めます。

**コマンドが、アクティブなセッションが存在しないと表示する。**

既存の直接チャットセッションからドッキングしてください。このコマンドには、新しいルートを
永続化できるようにアクティブなセッションエントリが必要です。

**返信がまだ古いチャネルへ行く。**

コマンドが成功メッセージを返したことを確認し、ターゲットピアIDがそのチャネルで使用されるIDと
一致していることを確認します。ドッキングはアクティブなセッションルートだけを変更します。
別のセッションは、まだ別の場所へルーティングしている可能性があります。

**元に戻す必要がある。**

リンク済み送信者から、`/dock_telegram`や`/dock-telegram`など、
元のチャネルに対応するコマンドを送信します。
