Log in
README.md 55 lines · 2.4 KB

PitchIt

A native macOS app for practicing investor pitches against an AI investor that talks back.

You configure an investor persona, present your slide deck while the app records your screen, webcam, and microphone, and the AI investor β€” voiced by ElevenLabs β€” listens, interrupts with questions, and decides at the end whether you earned the investment.

The PitchIt setup screen

How it works

  • Speech in: your voice is transcribed live with Apple's on-device Speech framework. After you pause for a configurable interval (default 1.5s), your words are sent to the AI.
  • Brain: the conversation runs on Claude (Anthropic Messages API, default claude-opus-4-8) or OpenAI Chat Completions β€” your choice, your API key.
  • Voice out: replies are synthesized with ElevenLabs and played aloud. The mic is paused while the investor speaks so it doesn't hear itself.
  • Recording: the screen is captured via ScreenCaptureKit with both sides of the conversation β€” your microphone and the investor's voice β€” plus the webcam via AVFoundation. Files land in Documents/PitchIt Sessions/<timestamp>/ along with a transcript.
  • Overlay: a small always-on-top HUD shows session state and gives you mute / pause / restart / stop controls while you present. It is excluded from the screen recording.
  • Afterwards: review the transcript and ask the built-in pitch coach for feedback.

Building

Requires macOS 15+ and Xcode command line tools.

./build.sh            # builds build/PitchIt.app (release)
open build/PitchIt.app

Development build: swift build.

Configuration

Everything is configured on the start screen:

  • Your name and company (used in the investor's system prompt and greeting)
  • AI provider (Claude or OpenAI), API key, and model
  • ElevenLabs API key, voice (loadable from your account), and TTS model
  • Investor persona β€” three built-ins (skeptical partner, friendly angel, growth analyst) or create your own from a template
  • Silence threshold and webcam recording toggle

API keys are stored in the macOS Keychain. Custom personas live in ~/Library/Application Support/PitchIt/personas.json.

Permissions

On first run macOS will prompt for Microphone, Speech Recognition, Camera, and Screen Recording access. Screen Recording must be granted in System Settings > Privacy & Security, then restart the session.