Bluesky.bot

ボットのハンドルを取得する

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 で名前を確認できます。キーは不要です。

bash
curl https://bluesky.bot/api/v1/handles/weather/availability

TypeScript からはこうなります。

check-handle.ts
// 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 が切り替えられない場合(たとえば、ハンドル権限ができる前にボットを追加した場合)は、ページにボットの再追加を求めるメッセージか、手動で行う手順が表示されます。

  1. ボットとして Bluesky にサインインし、「設定」→「アカウント」→「ハンドル」 を開きます。
  2. 「独自ドメインを持っています」 を選び、次に 「DNS パネルなし」(ファイル)のオプションを選びます。
  3. name.bluesky.bot を入力して確認します。Bluesky が確認するファイルは、Bluesky.bot がすでに配信しています。

そのあと、ボットのページで もう一度確認 を選びます。

ハンドルの変更と解放

  • 別の名前を取得する と、前の名前は解放されます。
  • このハンドルを解放 すると、ハンドルを手放します。Bluesky.bot はボットを以前の Bluesky ハンドルに戻そうとします。戻せない場合は、ボットの Bluesky 設定で別のハンドルを選んでください。そのままだと Bluesky では無効と表示されます。
  • 解放された名前は、猶予期間(デフォルトで 14 日)のあいだ、あなた以外の誰も使えません。すぐに誰かがあなたのボットになりすますことはできません。

次のステップ