reminders-to-md-private: 実装
クロコさん(Claude Code)と作業。リマインダー経由でmd.privateにテキストを保存するreminders-to-md-privateを実装してもらいました。reminders-cliの--format jsonオプションを活用したRubyスクリプトで、エラー時には十分な情報を表示して終了する設計です。cronへの組み込みは私が行います。
* * *
notes-to-md-private: クロコさん(Claude Code)とreminders-to-md-private実装についての対話
結城: reminders-to-md-privateについてsessions .mdとCLAUDE .mdの内容を元に実装計画を立てて。reminders-cliをスクリプトから起動する形でbin内にファイルを作る方向だと思うけど、確認のうえ設計とレビューをお願いします。
Claude: まず既存のnotes-to-md-privateの構造とreminders-cliの出力形式を確認しました。TypeScript実装を提案しましたが...
結城: notes-to-md-privateの方はNodeだけど、reminders-to-md-privateの方は作業の大半はremindersがやるのでRubyなどで簡単に作れるのではないかと思っていました。
Claude: おっしゃる通りです。reminders-cliが重い処理を担当するので、スクリプト側は出力のパースとファイル書き込みだけです。Rubyで十分ですね。
結城: 本文は、冒頭がタイトルと不一致ならばタイトルも合わせるようにしてください。タイトルだけに書かれている情報があってもファイルの内容として保存するということです。
Claude: 了解しました。メモが空ならタイトル、冒頭がタイトルと一致ならメモをそのまま、不一致ならタイトル+改行+メモという決定ルールにします。
結城: デフォルトディレクトリが違うけど……あなたのデフォルトはどこから来たの?
Claude: すみません、私の勘違いでした。既存のnotes-to-md-privateを確認したところ、デフォルトは結城さんの言ったとおりでした。根拠なく書いてしまいました。
結城: 実装した後、ていねいにレビューしてください。特にエラーが起きたときに十分な情報を出力して終了するかどうかに注目します。
(実装とレビュー)
Claude: 実装しました。レビュー中に発見した問題として、複雑なパースロジックがあります...
結城: そもそも何をなぜパースするのか疑問ですけれど。あれ?
Claude: reminders-cliのヘルプを確認したところ --format json オプションがありました!JSONで出力できるなら、パースは簡単になります。
結城: なるほど。OKです。では実装。
(実装)
Claude: JSON形式に変更してシンプルに実装しました。エラー時には十分な情報を表示して終了します。
結城: はい、実装完了にしてください。cronへの組み込みは私が行います。


