Skip to content

設定 ​

設定は単一の TOML ファイルです.デフォルトのパスは /etc/chime/config.toml で,CHIME_CONFIG env 変数で上書きできます.リポジトリの config/config.toml.example は,そのまま出発点にできる完全な例です.

設定には,[[reminders]],[[status_pages]],[[watches]] または [[rss]] を少なくとも 1 つ定義する必要があります.どれか 1 つのセクションだけでも問題ありません.未知のキーは拒否され,すべての問題は起動時に報告されます.詳しくは バリデーション を参照してください.

[system] ​

toml
[system]
log_level = "info"          # debug | info | warn | error (デフォルト: info)
tick_interval_sec = 30      # 1..=60
timezone = "Asia/Tokyo"     # 任意の IANA 名

[[reminders]] ​

toml
[[reminders]]
name = "daily-standup"      # 空でないこと,ファイル内で一意
time = "09:30"              # HH:MM,24 時間表記
days = ["mon", "tue", "wed", "thu", "fri"]
                            # sun/mon/tue/wed/thu/fri/sat,または ["every"]
message = "Time for standup."
webhook = "team"            # 論理名 — env 経由で解決される (Webhook を参照)
thread_id = "1234567890123456789"
                            # 任意.webhook のチャンネル内のこのスレッドへ
                            # 投稿する (引用符付きの数字)

[[reminders]]
name = "salary-day"
time = "15:00"
day_of_month = [18]         # 1..=31.毎月複数日なら [1, 15] など
message = "Payday is here."
webhook = "team"

各リマインダーは days (曜日)または day_of_month (月の日付) のどちらか一方だけでスケジュールします.両方を指定することはできません.day_of_month には 1..=31 の日付のリストを指定でき,その月に存在しない日 (例: 2 月の 31) は,その月だけ単にスキップされます.

time は system.timezone における壁時計の時刻です.夏時間の切り替え日に,2 回現れる時刻 (時計が戻る 1 時間) は最初の 1 回だけ発火し,その日に存在しない時刻 (時計が進む 1 時間) は発火しません.

webhook と thread_id については Webhook で説明しています.

[[status_pages]] ​

toml
[[status_pages]]
name = "claude"             # 空でないこと,ファイル内で一意
kind = "statuspage"         # 任意.statuspage | instatus | incidentio | datadog |
                            # custom (デフォルト: statuspage)
url = "https://status.claude.com"
                            # https のみ.ステータスページのベース URL
                            # (`custom` の場合: JSON ドキュメントそのもの)
webhook = "team"
thread_id = "1234567890123456789"
                            # 任意
display_name = "Claude Status"
                            # 任意.メッセージの Discord ユーザー名
                            # (デフォルト: 上記の `name`)
avatar_url = "https://example.com/claude.png"
                            # 任意.https のみ
poll_interval_sec = 300     # 任意.60..=3600 (デフォルト: 300)
min_impact = "minor"        # 任意.none | maintenance | minor | major | critical
                            # (デフォルト: none — すべて転送する)

ステータスページ を参照してください.

[[watches]] ​

toml
[[watches]]
name = "firefox"            # 空でないこと,[[watches]] 内で一意
webhook = "team"
thread_id = "1234567890123456789"
                            # 任意
source = { kind = "firefox" }
                            # channel: release | esr | beta | devedition | nightly
                            # (デフォルト: release)
display_name = "Firefox Releases"
                            # 任意.メッセージの Discord ユーザー名
                            # (デフォルト: source のラベル.例: `Firefox`)
poll_interval_sec = 3600    # 任意.60..=3600 (デフォルト: 3600)
avatar_url = "https://example.com/firefox.png"
                            # 任意.https のみ

[[watches]]
name = "chrome"
webhook = "team"
source = { kind = "chrome", platform = "win", channel = "stable", rollout = "started" }
                            # platform: win | win64 | mac | mac_arm64 | linux |
                            #           android | webview | ios (デフォルト: win)
                            # channel: stable | extended | beta | dev | canary
                            #          (デフォルト: stable)
                            # rollout: started | complete (デフォルト: started)

[[watches]]
name = "node"
webhook = "team"
source = { kind = "json", url = "https://nodejs.org/dist/index.json", pointer = "/0/version", link = "https://nodejs.org/en/blog/release" }
                            # url: https のみ.pointer: RFC 6901.`/` で始まること.
                            # link: 任意.https のみ.embed にそのまま設定される.

リリース監視 を参照してください.

[[rss]] ​

toml
[[rss]]
name = "claude-code-changelog"
                            # 空でないこと,[[rss]] 内で一意
url = "https://code.claude.com/docs/en/changelog/rss.xml"
                            # https のみ.フィードの URL そのもの
webhook = "team"
thread_id = "1234567890123456789"
                            # 任意
display_name = "Claude Code Changelog"
                            # 任意.メッセージの Discord ユーザー名
                            # (デフォルト: 上記の `name`)
poll_interval_sec = 900     # 任意.60..=3600 (デフォルト: 900)
avatar_url = "https://example.com/claude.png"
                            # 任意.https のみ

RSS フィード を参照してください.