Free tools

Small utilities for stubborn workflows.

Open-source tools I build to remove friction from development, learning, and everyday workflows. Free to download, inspect, and adapt.

01 / macOS utility● Version 1.0.1

Claude Code Rate-Limit Resumer

An open-source macOS utility that detects when Claude Code reaches a session rate limit, waits until one minute after the stated reset time, and automatically sends continue work back into the same session. It runs locally, makes no network requests, and does not access project source code.

  • macOS
  • Python 3.9+
  • Claude Code
  • tmux

Community project. This is an unofficial tool and is not affiliated with or endorsed by Anthropic. Claude Code hooks run with your user permissions, so review the included resumer.py and install.py before installing.

01 / DETECT

Reads the rate limit

Uses Claude Code’s StopFailure hook and only reads the rate-limit error fields or visible text in its own tmux pane.

02 / WAIT

Resumes at the right time

Waits until one minute after the displayed reset time, then targets the same tmux pane instead of whichever Terminal window is in focus.

03 / VERIFY

Fails safely

It records Claude Code’s foreground process when the limit occurs and will not type if the pane is gone or that process has changed.

Install and use
  1. Check the requirements. You need macOS, Python 3.9 or newer, a current Claude Code installation with StopFailure hook support, and tmux. If tmux is missing, install it with Homebrew:
    brew install tmux
  2. Install the utility. Download and extract the ZIP, open Terminal in the extracted folder, and run:
    python3 install.py

    The installer copies the utility into ~/.local/share, backs up your existing Claude settings, and adds the rate-limit hook without replacing your other settings.

  3. Run Claude Code inside tmux. From your project directory, start or reconnect to a named tmux session, then continue your conversation:
    tmux new-session -A -s claude-work
    claude --continue

    Use claude --resume instead when you need to choose a different saved conversation.

  4. Verify the hook. In Claude Code, run /hooks and confirm that StopFailure → rate_limit appears.
  5. Leave it running. When a rate limit occurs, the utility waits and sends only continue work to the original session. Your Mac must remain awake. Detach from tmux with Ctrl+B, then D; reconnect with the same tmux command.

Check status

~/.local/share/claude-rate-limit-resumer/resumer.py status

Watch logs

tail -f ~/.local/state/claude-rate-limit-resumer/resumer.log

Uninstall

python3 install.py uninstall

Run this from the extracted release folder. It removes the hook and installed script while preserving local logs for inspection.

SHA-256 checksum8091c3b2e137211b345bf47b2b6be840f96e055e961a72e79da020449e65c760
02 / macOS app● Version 1.0.0

Talking Tom

An open-source macOS app that turns a PDF, Word document, or text file into clean spoken audio. It removes citations, repeated headers, page numbers, and OCR noise, then narrates the useful text with a Microsoft Edge neural voice. A waveform player, pitch-preserving speed control, and saved transcript make the result practical for long readings.

Why I built it. Computer science and philosophy both involve a lot of reading. I wanted a way to move dense papers off my desk and into a walk—and to replace another subscription with a tool shaped around the way I actually study.

  • macOS
  • Intel + Apple Silicon
  • Self-contained setup
  • Anthropic API key required
  • English + Spanish

Open-source personal project. Talking Tom is unofficial and is not affiliated with or endorsed by Outfit7, Microsoft, or Anthropic. An Anthropic API key is required for the app’s Claude-powered document processing. Text selected for narration is sent to Microsoft’s online Edge voice service to generate audio, and document text is sent to Anthropic through your API key. Settings, generated audio, and transcripts are stored locally on your Mac.

01 / CLEAN

Reads what matters

A built-in rules pass removes citations, headers, footers, page numbers, and OCR word splits. Claude then handles messier documents while preserving their meaning and structure.

02 / VOICE

English, Spanish, or both

Choose from English and Spanish neural voices. Claude prepares the document before narration, and “Read in” can translate it independently of the app’s bilingual interface.

03 / LISTEN

A real audio player

Scrub the waveform, jump ten seconds, and listen from 0.5× to 2× without shifting the pitch. The MP3 and its text transcript are saved together.

Install and use
  1. Check the requirements. You need a Mac—Intel or Apple Silicon—an internet connection, and an Anthropic API key. You do not need to install Python, Homebrew, or any other software prerequisite.
  2. Set it up once. Download and unzip the file. Open the talking-tom-1.0.0 folder, then right-click setup.command and choose Open. Do not double-click it: macOS blocks downloaded scripts until you use right-click → Open once. When the security message appears, click Open again.
  3. Let setup finish. A Terminal window downloads a private copy of Python and the app’s dependencies, then builds Talking Tom in your Applications folder and places a shortcut on your Desktop. This takes about two minutes. When Terminal says Done., you can delete the downloaded folder.
  4. Open the app. Launch Talking Tom from Applications or the Desktop shortcut. On first launch, choose English or Español; you can change this later in Settings.
  5. Connect Claude before using Talking Tom.
    1. Use Anthropic’s official API overview for its current setup guidance.
    2. Create or manage your key on Anthropic’s API Keys page . Anthropic’s Billing page contains its current payment and credit options.
    3. Open Settings in Talking Tom, paste your Anthropic API key, and save it.
  6. Choose a document and listen. Select a PDF, Word (.docx), or text file—or paste text—then choose a voice, speed, cleaning mode, and output language. Talking Tom saves the MP3 and transcript in ~/Talking Tom/.

Install

Right-click setup.command → Open

Launch

Open Talking Tom from Applications

Your files

~/Talking Tom/

Generated audio and transcripts stay together in this folder.

SHA-256 checksum9d7a97335f93869c53781a8610b2ddf4d21908c161bebfb905ff763217c760e0