Here's a pro tip regarding Claude Code usage if you're a dev - save your Claude skills and more to git.

This gives you a mechanism to:

  • keep all your setups in sync (personal, work, etc)
  • iteratively develop your setup (skills)
  • blame and revert bad changes
  • and more++

~/.claude tree

claude saves everything to disk in a neat little unobscured .claude folder in your home dir:

~/.claude
|   
|   # COMMIT and forget!
├── CLAUDE.md
├── skills/
├── commands/
├── agents/
├── hooks/
|
|   
|   # COMMIT if machines are similar (same/similar OS)
├── settings.json
├── statusline-command.sh
|
|   
|   # COMMIT if dirs across machines 
|   # are similar/distinct to avoid conflicts
├── projects/
|
|   
|   # OPTIONALLY COMMIT for record-keeping
├── plans/
├── todos/
|
|   
|   # DON'T COMMIT
├── plugins/  # may have cache or binaries
├── cache/
├── debug/
├── file-history/
├── telemetry/
└── history.jsonl

setup

for a simple chill setup:

  1. git init ~/.claude

  2. add the following .gitignore

    ~/.claude/.gitignore
    
    # always ignore
    cache/
    debug/
    file-history/
    ide/
    session-env/
    sessions/
    shell-snapshots/
    telemetry/
    usage-data/
    backups/
    downloads/
    history.jsonl
    plugins/
    agents/**/*.jsonl
    projects/**/*.jsonl
    projects/**/*.json
    projects/**/*.txt
    
    # rm below if machines are similar (os, term setup)
    settings.json
    statusline-command.sh
    
    # rm below if folder structure across machines is compatible
    projects/
    
    # rm below for record-keeping
    plans/
    todos/
    
  3. push to a private repo

  4. push and pull from various comps to keep things in sync.

(you can also get fancier and use dotfiles or GNU Stow)

fin

I abuse Claude like no other, and with this setup I gain the ability to:

  • track/iterate/blame/rollback
    • CLAUDE.md
    • skills
    • hooks
    • agents
    • settings
  • share skills with others
  • see what I did in a day by looking at plans
  • use it on multiple computers to ensure my corpus of personal skills grows with me and stays with me
  • try skills in other harnesses - like Codex - with a simple symlink, since skills are now an open standard

AI is an amazing tool that has augmented the way I code. It seems fitting I treat it like a proper tool in my toolkit.