384t.net

← second-brain

second-brain マニュアル

Slack アカウント

Slack のワークスペースを接続する手順を説明します。

読み取る内容

ツールは、自分自身の権限で Slack を読みます。自分に見えるものが見えます。投稿や変更はできません。

コンテンツ 読み取る内容
ダイレクトメッセージとグループ DM すべてのメッセージ
full_channels に指定したチャンネル すべてのメッセージ
参加している、そのほかのチャンネル 自分が関わるスレッドだけ

次の場合に、スレッドは自分に関わるものとして扱います。

  • 自分が最初のメッセージ、または返信を書いた
  • メッセージが自分へのメンションを含む
  • メッセージが @channel、@here、@everyone を含む

スレッドごとに一つのエントリーを作ります。スレッドに入っていないメッセージは、チャンネルと日ごとに一つのエントリーにします。

Slack アプリを作る

ワークスペースごとに、小さな Slack アプリが必要です。このアプリを使うのは自分だけです。

  1. https://api.slack.com/apps を開き、Create New App > From an app manifest を選びます。
  2. ワークスペースを選びます。
  3. リポジトリの assets/slack-app-manifest.yaml の内容を貼り付けます。
  4. Install to Workspace を選び、リクエストを承認します。
  5. OAuth & Permissions を開き、User OAuth Token をコピーします。xoxp- で始まります。

警告: Distribute App を有効にしないでください。配布されたアプリは、conversations.history のリクエストが 1 分に 1 回に制限されます。同期が非常に遅くなります。

注意: 必ずユーザートークンを使ってください。ボットトークンでは、ダイレクトメッセージとプライベートチャンネルを読めません。

ワークスペースが新しいアプリに管理者の承認を求める場合は、管理者に依頼してください。

アカウントを追加する

アカウント ID は、自分の値に置き換えてください。

sb account add slack acme-slack

コマンドがトークンを尋ねます。非表示の入力欄に貼り付けてください。入力欄にはトークンが表示されず、シェルの履歴にも残りません。コマンドはトークンを確認し、足りない権限があれば警告します。トークンは、ツールのデータベースに保存されます。--label <text> で、アカウントの表示名を付けられます。

警告: コマンドラインに --token を指定しないでください。トークンがシェルの履歴に残ります。

チャンネルを選ぶ

アカウントの設定を開きます。

sb config edit --account acme-slack

設定を選んで Enter を押します。チャンネルのリストは、カンマ区切りで入力します (例: general, dev)。エディターで編集するには --editor を付けます。

主な設定:

設定 既定値 内容
full_channels [] すべてを読むチャンネル。チャンネル名または ID を指定します。
include_dms true すべての DM とグループ DM を読みます。
exclude_bot_dms true ボットとの DM を飛ばします。
exclude_channels [] 飛ばすチャンネルや人
mention_scan all ほかのチャンネルで、自分に関わるスレッドを探す方法: all、search_only、off
initial_days 30 最初の同期でさかのぼる日数

保存するときに、値を検査します。

Slack のタイムゾーン

チャンネルの日ごとのエントリーは、ローカルの日付を使います。設定 slack.day_timezone でタイムゾーンを選べます。既定は、コンピューターのタイムゾーンです。

sb config set slack.day_timezone Asia/Tokyo

再ログイン

Slack がトークンを無効にすると、アカウントは needs_reauth になります。新しいトークンを作成して、次を実行します。

sb auth login acme-slack

コマンドが、新しいトークンを尋ねます。

次のステップ

sb sync を実行します。同期を参照してください。