Projects

Things I wanted, so I made them.

  1. PhereIndian wedding planning, in one place.
  2. agent-syncSync skills and agents across Claude and Codex.
  3. SideloadMenu bar that sideloads Android debug APKs.
  4. Mission ControliPhone remote for coding sessions on my Mac.
  5. linear-cliA small Linear client I actually use.
  6. github-pr-mediaAttach images and video to a GitHub PR.
  7. ThomasLocal-first board for agent work.
  8. BentoType-safe Compose navigation.
  9. HabitusHabits in 21 days.
  10. WhisperzPrivate chats, shielded.
  11. ShotFormatterVideo effects in the browser.
  12. EncryptidA text-based cryptic hunt.
  13. BibliotecaLive Compose theme library.
  14. VMA small vim-like editor.
  15. PractikalityApp for deaf, blind, and mute communication.

All projects

agent-sync

CLI · ai · cli · tools

padamchopra/agent-sync

I was copying the same skill into ~/.claude/skills and then into ~/.codex/skills. Twice, every time, on every machine.

agent-sync linking skills into Claude and Codex

agent-sync is the canonical copy. A small CLI symlinks each skill and agent one level deep into both homes, and leaves anything it didn’t create alone. On a new machine: clone the repo, run ./install.sh. There’s also agent-sync push / autosync so design references travel with the skills.

skills/<name>/  →  ~/.claude/skills/<name>
                →  ~/.codex/skills/<name>

The weird bit: the agent folders stay real directories. Nested files still work because the symlink is the whole skill, not a file inside it. Codex’s built-in .system skills are gitignored so they never get sucked into the repo.