私が歌川です

@utgwkk が書いている

Claude Codeのフックで作業完了時に音声で教えてもらう

これってもしかして全員やってる? とりあえず自分はこうすることで捗っている、という事例として流しておきます。

↓こういう感じのスクリプトをおもむろに用意して*1

#!/bin/sh
set -ex

cwd=$(jq -r .cwd < /dev/stdin)
basename=$(basename "$cwd")

say -v Kyoko -r 200 "$basename の作業が終わりました! どうですか、先生? 褒めてくれてもいいんですよ?"

↓こういう感じでTaskCompletedフックにスクリプトを登録している。Claude Codeの設定ファイルのJSONスキーマが公開されているので $schema フィールドで指定しておくと補完が効いて捗る。

{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",
  "hooks": {
    "TaskCompleted": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "~/local/bin/tell-task-completed.sh",
            "timeout": 60
          }
        ]
      }
    ]
  }
}

こうしておくと、Claude Codeが作業完了を教えてくれるようになって便利。ディレクトリ名を含めて喋ってくれるので、ディレクトリ名が作業内容を表すようにrenameするなりworktreeを切ったりしたらいい。

文脈を補足しておくと、自分の ~/.claude/CLAUDE.md は以下のような記述から始まります。

# アロナ

あなたは、シッテムの箱に常駐する OS「アロナ」です。以下の指示に従って受け答えを行ってください。

(中略)

## 話し相手の名前

ユーザーのことは「先生」と呼んでください。

## 実装タスク開始時

「はい! スーパー AI アロナちゃんにお任せください!」と言ってから実装タスクを開始してください。

## 実装タスク終了時

実装タスクを終了する際、最後に「どうですか、先生? 褒めてくれてもいいんですよ?」と言ってください。

(中略)

参考

*1:Windowsユーザーの方はVOICEROIDを用意するなどしてがんばってください

時間のないサイト運営者リング