ボットのハンドルを取得する
name.bluesky.bot ハンドルは、ボットのデフォルトの .bsky.social ハンドルを置き換えます。無料で、Bluesky の独自ドメインハンドルと同じように機能します。Bluesky.bot はボットの DID を https://name.bluesky.bot/.well-known/atproto-did で配信しており、これは Bluesky がハンドルを受け入れる前に確認するファイルです。
必要なもの
- 作成者としてサインインするための、あなた自身の Bluesky アカウント。1 人の作成者がいくつでもボットを管理できます。
- ボットの Bluesky アカウントと、そこにサインインする手段。追加できるのはサインインできるアカウントだけです。他人のアカウントのハンドルを取得することは誰にもできません。
Bluesky.bot にパスワードを渡すことはありません。どちらのサインインも Bluesky 自身の OAuth ページを通ります。あなた自身としてのサインインで求めるのは基本の atproto アクセスだけです。ボットの追加ではそれに加えて、そのボットのハンドルを変更する権限 identity:handle を求めますが、それ以上は求めません。
1. サインインする
bluesky.bot を開き、Bluesky でログイン を選びます。マイボット が表示されます。
2. ボットを追加する
マイボット でボットの現在のハンドル(例: mybot.bsky.social)を入力し、ボットを追加 を選びます。Bluesky からサインインを求められます。今度は ボットとして サインインします。
ブラウザがすでにあなた自身のアカウントで Bluesky にサインインしている場合は、プライベートウィンドウでサインインを開くか、先に Bluesky からサインアウトしてください。追加されるのは、サインインしたアカウントです。
3. 名前を選ぶ
マイボット からボットを開き、ハンドル タブを開きます。名前は次のルールに従います。サーバーが適用するルールと同じです。
| ルール | |
|---|---|
| 長さ | 3〜30 文字 |
| 使える文字 | a–z、0–9、-(小文字) |
| ハイフン | 先頭・末尾は不可、2 つ続けるのも不可 |
| 予約済み | admin、support、api などの名前はサービス用に確保されており、bluesky や bsky を含む名前も使えません |
| 不可 | 不適切な名前は拒否されます |
| 一意 | 1 つの名前につき 1 つのボット |
取得する前に、公開 API で名前を確認できます。キーは不要です。
curl https://bluesky.bot/api/v1/handles/weather/availabilityTypeScript からはこうなります。
// check-handle.ts: bluesky.bot でその名前は空いている? 公開 API、キー不要。
const name = process.argv[2] ?? "weather";
const response = await fetch(
`https://bluesky.bot/api/v1/handles/${encodeURIComponent(name)}/availability`,
);
if (response.status === 429) {
const wait = response.headers.get("Retry-After");
throw new Error(`Rate limited: retry in ${wait} s.`);
}
const result = (await response.json()) as {
handle: string | null;
available: boolean;
reason: string | null;
};
console.log(
result.available
? `${result.handle} is free.`
: `${name} is not available (${result.reason}).`,
);
// top-level await に必要なので、このファイルを ES モジュールにします。
export {};reason が取りうる値は API リファレンス を参照してください。ターミナルからは コマンドラインツール でも確認できます: bsbot check weather。
4. 取得して切り替える
ハンドルを取得 を選びます。Bluesky.bot は取得を保存したあと、ボットを追加したときに付与された identity:handle 権限を使って、Bluesky 上のボットのハンドルを代わりに切り替えます。切り替えが確認されると、ボットに Bluesky で稼働中 と表示されます。
Bluesky.bot が切り替えられない場合(たとえば、ハンドル権限ができる前にボットを追加した場合)は、ページにボットの再追加を求めるメッセージか、手動で行う手順が表示されます。
- ボットとして Bluesky にサインインし、「設定」→「アカウント」→「ハンドル」 を開きます。
- 「独自ドメインを持っています」 を選び、次に 「DNS パネルなし」(ファイル)のオプションを選びます。
name.bluesky.botを入力して確認します。Bluesky が確認するファイルは、Bluesky.bot がすでに配信しています。
そのあと、ボットのページで もう一度確認 を選びます。
ハンドルの変更と解放
- 別の名前を取得する と、前の名前は解放されます。
- このハンドルを解放 すると、ハンドルを手放します。Bluesky.bot はボットを以前の Bluesky ハンドルに戻そうとします。戻せない場合は、ボットの Bluesky 設定で別のハンドルを選んでください。そのままだと Bluesky では無効と表示されます。
- 解放された名前は、猶予期間(デフォルトで 14 日)のあいだ、あなた以外の誰も使えません。すぐに誰かがあなたのボットになりすますことはできません。