この記事が良かったら
「チップをリクエスト」で著者にチップの受け取り設定をお願いできます

― 8カテゴリ台帳とsymlinkツリー
この記事が良かったら
「チップをリクエスト」で著者にチップの受け取り設定をお願いできます
「Claude Code環境」シリーズです。前回はClaude Codeを無人で自律改善させる autopilotを書きましたが、そちらで登場した「自動化スクリプト群」の整理が済んでいないと autopilot に何を渡すかも迷います。今回はプロジェクトの分類と場所を管理する仕組みの話です。
いまの台帳 `~/PROJECTS.md` を数えると、Webアプリ・Chrome拡張・iOSアプリ・デジタル商品・受託・AI基盤・PC自動化・OSS評価合わせて40本超が並んでいます。ここまで増える前に「8カテゴリ + 台帳 + symlinkツリー」という体制を作りました。この記事はその設計の話です。
`~/dev/`・`~/Projects/`・`~/digital-products/`・`~/oss-trial/` に散らばったディレクトリを、Claude Codeが毎回 `find ~` で探していました。探す時間だけでなく、状態(live/stalled/retired)・本番URL・収益化の有無も散逸していて、「あのアプリどうなってたっけ」を聞くたびに文脈から再構成していました。
台帳を1ファイルに集約して「聞いたらすぐ答えが出る」状態を作ることが目標です。
`~/PROJECTS.md` の定義表をそのまま引きます。
カテゴリが増えると意味が薄れるので、新設は「8つのどれにも本質的に収まらない時だけ」としています。
判定は名前でなく提供形態で決めます。たとえば `autolike-license-server` はAPI名称ですが、Chrome拡張のライセンス検証専用バックエンドなので `02-chrome-ext` に入れています。名前で判断すると「API → サーバー → `01-webapp`」と誤分類します。
「整理 = フォルダ移動」と思いがちですが、個人開発では絶対パスへの依存が3箇所に潜んでいます。
実体ディレクトリの物理移動は厳禁。`.vercel`・launchd plist・git worktreeが絶対パス依存で壊れます。「分類」はsymlink+台帳で表現します。
実体は触らず、`~/Desktop/All-Projects/<カテゴリ>/` にsymlinkを張るだけです。
# 新規プロジェクトを分類する(実体は動かさない)
ln -sfn ~/dev/takugumi ~/Desktop/All-Projects/01-webapp/
# 確認
ls ~/Desktop/All-Projects/01-webapp/
# takugumi -> ~/dev/takugumi のように出る`ln -sfn` の `-f` は既存symlinkの上書き、`-n` はリンク先がディレクトリでも末尾に潜り込まない指定です。この2フラグがないと二重ネストになります。
台帳 `~/PROJECTS.md` は1行1プロジェクトで、パス・状態・収益化・本番URL・注意を持ちます(現在は現在は8カテゴリ × 合計40本超)。Claude Codeはこのファイルを読めば即座に「就活トラッカーのiOSアプリはどこ?」「live状態のものは?」を答えられます。
`~/.claude/skills/auto/project-categorization/SKILL.md` に手順を書いてあり、新規プロジェクトを作るたびに自動発火します。手順の核はこれだけです。
新規プロジェクト着手時、コードを書き始める前に:
1. 何を作るか確定 → 上の8カテゴリのどれかを選ぶ
(提供形態で決める。名前や第一印象でなく)
2. 既存8つに収まらない時のみ 09-<kebab> を新設
3. 実体を適切な親dir に作る
Webアプリ/拡張 → ~/dev か ~/Projects
商品 → ~/digital-products
OSS評価 → ~/oss-trial
4. ln -sfn <実体パス> ~/Desktop/All-Projects/<カテゴリ>/
5. ~/PROJECTS.md の該当カテゴリ表に行を追加CLAUDE.md にも「新規プロジェクトを作る時は着手前に必ず8カテゴリへ分類する」と書いてあるため、Claudeは指示しなくても分類から始めます。
# symlinkが正しく張れているか
ls ~/Desktop/All-Projects/01-webapp/
# 台帳に追記されているか
grep "takugumi" ~/PROJECTS.md
# client-workの場合:機密がignoreされているか
git -C ~/dev/<project> check-ignore credentials.jsonauto-skill の `Pitfalls` 節にまとめてあるものから引きます。
次回は、こうして整理したプロジェクト群を毎朝Mermaid図に自動生成してDesktopに置く仕組みを書きます。
Lily(@bokuwalily)― 個人開発者。Claude Code で自動化基盤を組みながら、iOSアプリやWebサービスを量産しています
◼︎作ったアプリは **ポートフォリオ** にまとめています📱
◼︎新着・開発の裏側は X **@bokuwalily** で発信しています🐦
◼︎OSS: **github.com/bokuwalily**🐙
皆さんの ❤️ やシェアが励みになります!