Skip to main content

<<<<<<< HEAD

Gitcast

git diff → published post. under 60 seconds.

Privacy-first developer tool that captures your coding session via hotkey, generates AI-powered social media posts, and publishes them — without breaking your flow.

Works out of the box with zero setup. Bring your own API keys anytime for unlimited usage.

pip install gitcast
gitcast

Press Ctrl+Alt+S to capture. Open source. MIT license.

Quick Start

Install

pip install gitcast

Run

gitcast

That's it. Gitcast works immediately using a shared demo API key — no setup required to try it.

Dashboard opens automatically at http://localhost:8000

Press Ctrl+Alt+S (or Ctrl+Shift+P) from anywhere — VS Code, terminal, browser — to capture your screen and git diff, then generate a post.

Add your own API key (optional)

The shared key has rate limits. For unlimited usage, add your own free key:

gitcast --setup

This opens your .env file. Add any of these (all free):

Provider Get Key Free Tier
Groq console.groq.com 12k tokens/min
DeepSeek platform.deepseek.com $5 credit
Gemini aistudio.google.com 1M tokens/day

Your key always takes priority over the shared key.

CLI usage

gitcast                    Start dashboard + hotkey listener
gitcast "your thought"     Quick capture with inline thought
gitcast capture            Interactive multi-shot screenshot session
gitcast --setup            Configure your own API keys
gitcast --version          Show version

Stack

  • Python 3.11+
  • FastAPI, pynput, mss, Tesseract, Groq API, Tweepy =======

Gitcast

git diff → published post. under 60 seconds.

PyPI version License: MIT Python 3.10+

Privacy-first developer tool that captures your coding session via global hotkey, reads your local git diff and project context, generates AI-powered social media posts, PR descriptions, and articles, and publishes them without breaking your flow.

Works immediately after install — no API key setup required! Gitcast comes with a built-in shared key.


✨ Features

  • Global Hotkey Capture: Press Ctrl+Shift+P or Ctrl+Alt+S anywhere (VS Code, terminal, browser) to instantly capture your screen and local code changes (git diff).
  • 🔒 Privacy-First & Local OCR: Screen text extraction (Tesseract OCR) runs 100% locally on your machine. Sensitive credentials (API keys, secrets, tokens, passwords) are automatically detected and blocked.
  • 🎨 Automated macOS Window Framing: Raw screenshots are automatically wrapped in a sleek macOS-style window frame with traffic light controls and soft drop shadows for viral social posts.
  • 🤖 Multi-Format AI Generation: Generates 5 distinct content formats simultaneously in under 8 seconds:
    • X (Twitter) Post: High-impact, tech-focused updates with code context.
    • LinkedIn Draft: Structured narrative posts tailored for developer networks.
    • PR Description: Full GitHub/GitLab markdown pull request descriptions (What, Why, How, Testing).
    • Quick Win: Short punchy updates ideal for feature ships.
    • Longform Article: Medium/Substack-ready markdown blog posts.
  • 🏃 Sprint Mode (Deep Work): Silently log multiple code captures throughout a long coding session without popups, then synthesize them into a cohesive multi-step "sprint thread" at the end.
  • 👁️ Smart Vision AI Fallback: If local OCR confidence falls below 60%, Gitcast seamlessly routes the screenshot to Gemini Vision for high-accuracy multimodal reading.
  • 🌐 Interactive Local Dashboard & Review Room: Web UI running locally at http://localhost:8000 with live preview, inline editing, and natural language AI refinement chat.
  • 🚀 1-Click Publishing & Clipboard Integration: Publish directly to X (Twitter) via API v2 with media upload support, or copy pre-formatted markdown to clipboard.
  • 🔑 Bring Your Own Key (BYOK): Zero setup required out-of-the-box, plus optional BYOK support for Groq, Gemini, DeepSeek, OpenRouter, and Moonshot/Kimi.

🚀 Quick Start

Step 1 — Install Tesseract OCR

Required for local screenshot text extraction. Runs entirely on your device — your code never leaves your computer without permission.

  • macOS:

    brew install tesseract
    
  • Linux (Ubuntu/Debian):

    sudo apt install tesseract-ocr
    
  • Windows:

    1. Download installer from UB-Mannheim Tesseract Wiki.
    2. Run installer and check "Add to PATH" during installation.
    3. Restart your terminal.

Step 2 — Install Gitcast

pip install gitcast

Step 3 — Launch

gitcast

The web dashboard opens automatically at http://localhost:8000.

  • Press Ctrl+Shift+P or Ctrl+Alt+S from any application to capture screen context and generate your post.
  • Or trigger a quick capture directly from your terminal:
    gitcast "just added instant fallback routing for AI models"
    

Step 4 — Optional: Add Your Own Key (BYOK)

The built-in shared key has rate limits shared across users. For unlimited personal usage, add your own free key:

gitcast --setup

Or configure keys in the dashboard sidebar under [BYOK]. Get a free Groq key in 2 minutes at console.groq.com.


🛠️ How It Works

  [HotKey / CLI Trigger]  ──> Press Ctrl+Shift+P or run `gitcast "thought"`
           │
           ▼
  [Local Parallel Capture] ──> Capture active screen (mss) + git diff HEAD + project README & stack
           │
           ▼
  [Privacy & OCR Engine]  ──> Tesseract OCR (Local) ──> Scan & block API keys/secrets
           │                                            (If confidence < 60% ──> Gemini Vision)
           ▼
  [AI Provider Routing]   ──> Multi-format parallel completions (Groq / Gemini / OpenRouter)
           │
           ▼
  [Dashboard & Review]    ──> http://localhost:8000 (Inline edit, AI refinement, macOS window framing)
           │
           ▼
  [Publish / Export]      ──> 1-Click X/Twitter API Publish OR Copy to Clipboard

Context Awareness

Gitcast automatically detects project context from your current working directory:

  • Reads README.md for project background.
  • Scans package.json, requirements.txt, Cargo.toml, go.mod, etc., for main tech stack & language.
  • Remembers your Project Narrative (e.g., "Building an open-source observability engine"), ensuring every generated post sounds authentic to what you are creating.

🏃 Sprint Mode

For deep work sessions where you don't want to break your flow:

  1. Activate Sprint Mode: Toggle Sprint Mode [ON] from the dashboard sidebar or tray icon.
  2. Capture Silently: Every Ctrl+Shift+P press logs your screenshot and git diff silently in the background without popups or AI calls.
  3. Finish & Synthesize: Toggle Sprint Mode [OFF]. Gitcast synthesizes all logged captures into a single, high-converting 6–7 tweet "sprint thread" covering your entire build arc (the problem, failed attempts, solution, and outcome).

💻 CLI Reference

Command Description
gitcast Start dashboard server (http://localhost:8000), global hotkey listener, and system tray.
gitcast "your thought here" Trigger a capture immediately passing a specific thought or note.
gitcast capture Start an interactive terminal screenshot & diff capture session.
gitcast --setup Interactive setup to add your personal API key (Groq, Gemini, etc.).
gitcast --version Display installed Gitcast version.

🔒 Privacy & Security

  • 🏠 100% On-Device OCR: Text from screenshots is extracted locally via Tesseract before any API requests.
  • 🛡️ Automated Secret Scanning: Regex scanner screens OCR text for API keys (sk-, gsk_, Bearer), tokens, passwords, and long hashes, automatically redacting and blocking sensitive captures.
  • 🗑️ Automatic Cleanup: Screenshots are encrypted with Fernet locally and auto-cleaned after 24 hours. Declined captures are securely deleted immediately.
  • 🚫 No Background Screen Recording: Gitcast only captures screen data when explicitly triggered by your hotkey or CLI command.

⚙️ AI Providers & BYOK Priority

Gitcast routes each post format to the optimal provider for performance and output quality:

Format Primary Model Fallback Model
X (Twitter) / Quick Win Groq (llama-3.3-70b) Cerebras ➔ OpenRouter
LinkedIn / PR Description Groq / DeepSeek OpenRouter (qwen3-coder)
Article & Sprint Thread Moonshot / Kimi Gemini ➔ OpenRouter
Vision Fallback Gemini (gemini-1.5-flash)

Key Resolution Priority:

  1. Your personal BYOK key (if set via gitcast --setup or saved in ~/.gitcast/.env).
  2. Gitcast built-in shared key (fallback).

🧰 Tech Stack

  • Backend: Python 3.10+, FastAPI, Uvicorn, Pydantic, httpx
  • System & Screen: mss, Pillow, pytesseract, pynput, plyer
  • AI Engine: Groq, Google Gemini Vision, OpenRouter, Cerebras, DeepSeek
  • Publishing: tweepy (Twitter/X API v2), Clipboard / Native Web Compose
  • Frontend: Lightweight responsive dashboard (HTML5, CSS3, JavaScript)

📄 License

Distributed under the MIT License. See LICENSE for more information.

Built with ❤️ by Timilehin Agoro (@drizzy765).

1305f09 ( docs: update README with detailed features, CLI reference, and architecture flow)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitcast-1.0.29.tar.gz (209.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitcast-1.0.29-py3-none-any.whl (206.6 kB view details)

Uploaded Python 3

File details

Details for the file gitcast-1.0.29.tar.gz.

File metadata

  • Download URL: gitcast-1.0.29.tar.gz
  • Upload date:
  • Size: 209.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for gitcast-1.0.29.tar.gz
Algorithm Hash digest
SHA256 cfab0d2ac397cc095b4f1df2754e93ec604bf8036f77ebd6001a099e238f0e47
MD5 9964eb3e5b94d2fd831bab0175df00ca
BLAKE2b-256 6ce1795f19524860e4fdf8bf3e4a3771ab662bd7a41a8c74dead717f1b16a4f0

See more details on using hashes here.

File details

Details for the file gitcast-1.0.29-py3-none-any.whl.

File metadata

  • Download URL: gitcast-1.0.29-py3-none-any.whl
  • Upload date:
  • Size: 206.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for gitcast-1.0.29-py3-none-any.whl
Algorithm Hash digest
SHA256 0de011a7705723e4af0d69c546560fd73ccca9c96fd92b07d11e133c7ca7ca95
MD5 71bf7d19e45ff89f3ed9e0db71d516d2
BLAKE2b-256 263d70e34191198b03f86aa3b29530c0f0b6d69bc516aeb79eead2beeb3d25e2

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.39

2 files

1.0.38

2 files

1.0.37

2 files

1.0.36

2 files

1.0.35

2 files

1.0.34

2 files

1.0.33

2 files

1.0.32

2 files

1.0.31

2 files

1.0.30

2 files

This release

1.0.29 This release

2 files

1.0.28

2 files

1.0.27

2 files

1.0.26

2 files

1.0.25

2 files

1.0.24

2 files

1.0.23

2 files

1.0.22

2 files

1.0.21

2 files

1.0.20

2 files

1.0.19

2 files

1.0.18

2 files

1.0.17

2 files

1.0.16

2 files

1.0.15

2 files

1.0.14

2 files

1.0.13

2 files

1.0.12

2 files

1.0.11

2 files

1.0.10

2 files

1.0.9

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page