Fragments of verbose memory

冗長な記憶の断片 - Web技術のメモをほぼ毎日更新

Jan 16, 2026 - 日記

claude-switcher: プロンプトをUnixパイプに流し込む発想

English version

claude-switcher: プロンプトをUnixパイプに流し込む発想 cover image

先日、Hacker Newsで「Executable Markdown files with Unix pipes 」という投稿を見かけました。思わず「これは面白い」と唸りました。

claude-switcher を使うと、Markdownファイルの先頭に #!/usr/bin/env claude-run というshebang(先頭行で実行コマンドを指定する仕組み)を書くだけで、そのファイルが実行可能になります。さらに、普通のUnixコマンドと同じようにパイプでつなげられる。

1
2
cat data.json | ./analyze.md > results.txt
git log -10 | ./summarize.md

「LLMをパイプラインに組み込む」という発想が新鮮で、実際に動かしてみたくなりました。

Jan 15, 2026 - 日記

Bunは速い、pnpmは正しい:2つのパッケージマネージャが示すJSエコシステムの未来

English version

Bunは速い、pnpmは正しい:2つのパッケージマネージャが示すJSエコシステムの未来

npmやYarnからの移行を検討していると、必ず選択肢に上がるpnpmBun 。どちらも「npmより速い」とアピールしていますが、実際のところ何が違うのでしょうか。

State of JS 2024では、pnpmは「継続利用意向(retention)」が高く、開発者からの評価が安定していることがわかります。一方で、Bunも新しい選択肢として存在感を増しています。しかし、両者の設計思想は対照的です。pnpmは「正しい依存関係管理」を、Bunは「速度とDX」を追求しています。本記事では、この2つのパッケージマネージャの違いを整理し、あなたのプロジェクトに合った選択肢を見つけるヒントを提供します。

Jan 14, 2026 - 日記

resticprofile: 除外パターン・世代管理・スケジュールを1つのYAMLで完結させる

English version

resticprofile のカバー画像

前回の記事「restic: node_modules と .git を除外しつつ「復元可能な開発環境」を維持する設計 」では、restic の基本的な使い方と launchd/systemd を使った自動化まで解説しました。

しかし、設定ファイルを複数管理したり、plist や unit ファイルを手書きするのは正直面倒です。macOS と Linux で異なる設定を維持するのも煩雑になりがちです。

そこで本記事では、resticprofile を使って、バックアップ設定を1つの YAML ファイルに集約する実践的な方法を紹介します。パスワード管理、除外リスト、世代管理、スケジュール——これらすべてを宣言的に管理できる快適さを体験しましょう。

Jan 13, 2026 - 日記

Mole: ターミナルから始めるMac最適化の基本

English version

Mole: ターミナルから始めるMac最適化の基本 cover image

Mole は、macOS 向けの無料オープンソースクリーナーです。ターミナルから実行するCLI(Command Line Interface、コマンドラインで操作するUI)ツールで、CleanMyMacAppCleanerDaisyDiskiStat Menus が担っている「よく使うユースケース」を、1つのコマンドに寄せてカバーするイメージです。

自分がこういうツールに興味を持ったのは、並列開発が増えてきて、ディスク容量やメモリなどのリソース枯渇に悩むことが増えたからです。年末の大掃除みたいに一回きれいにして終わりではなく、普段のメンテとして回せる形がほしくなりました。

本記事では、Moleの基本的な使い方と、Mac開発者が「継続できるメンテ」に落とし込むためのポイントをまとめます。

Jan 12, 2026 - 日記

Twitch Plays PokemonからOpen Chaosへ:群衆開発10年史と次の10年

English version

Twitch Plays PokemonからOpen Chaosへ:群衆開発10年史と次の10年 cover image

先日、Hacker News で387ポイントを獲得したOpen Chaos というプロジェクトを見つけて、正直ワクワクしました。

「コミュニティ投票で進化するOSS」——このコンセプト、実は10年以上前から形を変えながら進化してきた「群衆開発」の最新形です。2014年のTwitch Plays Pokemon から始まった実験が、2026年にどう姿を変えたのか。そしてAI時代に何が起きるのか。まとめておきます。

Jan 11, 2026 - 日記

ralph-claude-code: AIエージェントを"止める"技術——サーキットブレーカーパターンが暴走を防ぐ仕組み

English version

ralph-claude-code: AIエージェントを"止める"技術 cover image

Claude Code を無限ループで回したら一晩で6つのリポジトリが完成した」——そんなYCombinatorハッカソンの実験が話題になりました。これを実現しているのがralph-claude-code です。

AI エージェントの自律ループは強力ですが、「いつ止めるか」が最大の課題です。止めるタイミングを間違えると、APIコストが爆発するか、同じエラーで延々とループし続けます。ralph-claude-codeは、サーキットブレーカーパターンと終了検出アルゴリズムでこの問題を解決しています。

本記事では、既存記事では触れられていない実装の内部ロジックに焦点を当て、どうやって「止める技術」が実現されているかを解説します。

Jan 10, 2026 - 日記

.gitignore だけじゃない: Git ファイル無視の4つの方法と使い分け

English version

.gitignore だけじゃない: Git ファイル無視の4つの方法と使い分け cover image

Git でファイルを無視する方法として .gitignore は有名ですが、実は他にも3つの方法があります。環境依存の設定ファイルをローカルだけ変更したい、巨大なSDKの差分チェックを省きたい、といったケースでは .gitignore だけでは解決できません。

本記事では、Gitのファイル無視方法4つを比較し、状況ごとの使い分けを整理します。

Jan 9, 2026 - 日記

restic: node_modules と .git を除外しつつ「復元可能な開発環境」を維持する設計

restic: node_modules と .git を除外しつつ「復元可能な開発環境」を維持する設計

English version

開発マシンのバックアップ、ちゃんと取っていますか?

「Time Machineがあるから大丈夫」「node_modules は git clone すれば復元できるし…」そう思っていた時期が私にもありました。でも、本当に必要な時に復元できないバックアップには意味がありません。

年末の大掃除記事(後編) で restic + resticprofile を紹介しましたが、「具体的にどう設定すればいいの?」という声をいただきました。本記事では、その深掘りとして restic を使った開発環境バックアップの実践的な設計を基礎から解説します。容量を無駄にせず、でも必要なものは確実に復元できる——そんなバランスの取れたバックアップ戦略を構築しましょう。

Jan 8, 2026 - 日記

jj-desc: Rust製のjjコミットメッセージ自動生成ツールをリリース

English version

jj-desc: Rust製のjjコミットメッセージ自動生成ツールをリリース cover image

Jujutsu(jj) のコミットメッセージをLLMで自動生成するCLIツール「jj-desc 」をリリースしました。

jjはGoogleが開発しているGit互換のバージョン管理ツールで、強力なundo機能とrevset(リビジョンセット)による柔軟なコミット操作が特徴です。生成されるコミットメッセージはConventional Commits 形式に従います。jj-descはこのjjの特性を活かし、複数のコミットメッセージを一括で生成できる点が大きな特徴となっています。

Jan 7, 2026 - 日記

Tailscaleの『なんとなく不安』を数値化する:tailsnitchが暴く50の設定ミス

English version

Tailscaleの『なんとなく不安』を数値化する:tailsnitchが暴く50の設定ミス cover image

2025年9月、アサヒグループホールディングスがランサムウェア攻撃を受けました。侵入経路はVPN装置の脆弱性。10月にはアスクルが業務委託先のVPNアカウント経由で侵入され、ECサイトが停止しました。

どちらも「VPNさえあれば安全」という思い込みが招いた被害です。

Tailscaleを導入したあなたは、こう思っているかもしれません。「従来のVPNより安全なはずだから大丈夫」と。

確かにTailscaleには、従来のオンプレVPNゲートウェイと比べて優位性があります。WireGuardによる軽量で監査済みの暗号化、デバイス単位のゼロトラスト認証、VPN装置の脆弱性を突かれるリスクがないSaaS型アーキテクチャ——これらは従来VPNの弱点を解消する設計です。

しかし、Tailscaleも設定を誤れば危険です。デフォルトACLを放置すれば全デバイスが無制限にアクセス可能になり、再利用可能な認証キーが漏洩すれば攻撃者が不正デバイスを追加できます。tailsnitch は、そんな「なんとなく不安」を50以上のチェック項目で数値化し、Critical/High/Medium/Low/Infoの5段階で評価してくれるセキュリティ監査ツールです。

本記事では、tailsnitchの使い方と、実際に検出される危険な設定ミスについて解説します。