Skip to content

Instantly share code, notes, and snippets.

View ericboehs's full-sized avatar

Eric Boehs ericboehs

  • Oddball
  • Enid, OK
  • 20:57 (UTC -05:00)
View GitHub Profile
@ericboehs
ericboehs / kokorod.py
Last active May 27, 2026 20:42
kokorod: single-file persistent daemon + auto-launching client for Kokoro-82M TTS (mlx-audio). Cuts time-to-first-audio from ~5s to ~0.2s; self-shuts down after 30 min idle.
#!/usr/bin/env python3
# /// script
# requires-python = "==3.12.*"
# dependencies = [
# "mlx-audio>=0.3.0",
# "mlx",
# "misaki[en]<0.9",
# "num2words",
# "spacy",
# "espeakng-loader",
@ericboehs
ericboehs / kk
Created May 27, 2026 17:58
kokorod: persistent daemon + auto-launching socket client for Kokoro-82M TTS (mlx-audio). Cuts time-to-first-audio from ~5s to ~0.2s; self-shuts down after 30 min idle.
#!/usr/bin/env bash
# kk — thin client for the kokorod daemon, with auto-launch.
#
# Sends a speak request over /tmp/kokoro.sock. If the daemon isn't
# running, launches it in the background and waits for the socket to
# come up before sending.
#
# Usage:
# kk "Hello, world."
# echo "text" | kk
@ericboehs
ericboehs / bonusly
Created April 27, 2026 16:28
bonusly — send/check Bonusly bonuses from the terminal (with prefix-matched core-value hashtags)
#!/bin/bash
# Bonusly CLI — send/check Bonusly bonuses from the terminal.
#
# Usage:
# bonusly balance # show giving balance
# bonusly users [query] # search/list users
# bonusly send <amount> <user> <message> [#tag] # send bonus (confirms)
# bonusly history [limit] # recent bonuses you received
#
# Token: read from $BONUSLY_API_TOKEN; falls back to `fnox get BONUSLY_API_TOKEN`.
@ericboehs
ericboehs / vtt-to-md
Created April 25, 2026 02:10
vtt-to-md: Convert WebVTT transcripts to anchored markdown with audio-fragment-linked timestamps
#!/usr/bin/env ruby
# Convert WebVTT to anchored markdown with HH:MM:SS audio-fragment links.
require 'optparse'
VERSION = '0.1.0'
options = { audio: nil, output: nil, title: nil, no_audio: false }
parser = OptionParser.new do |opts|
@ericboehs
ericboehs / claude-memory
Created April 22, 2026 19:37
Claude Code Memory Browser — single-file Ruby Sinatra app to browse, search, and view auto-memory markdown files under ~/.claude/projects/*/memory/
#!/usr/bin/env ruby
# frozen_string_literal: true
# Claude Code Memory Browser — browse, search, and view the auto-memory
# markdown files stored under ~/.claude/projects/*/memory/
require 'bundler/inline'
gemfile do
source 'https://rubygems.org'
@ericboehs
ericboehs / gh-action-trace
Last active March 25, 2026 18:42
gh-action-trace — Find all direct and transitive uses of GitHub Actions in an org. Traces dependency chains through shared/reusable workflows and reports pinning status (SHA/tag/branch).
#!/usr/bin/env bash
#
# gh-action-trace — Find all direct and transitive uses of GitHub Actions in an org.
#
# Traces the full dependency chain: repos that directly reference target actions,
# repos that call shared/reusable workflows containing those actions, and external
# shared workflows that wrap them. Reports pinning status (SHA/tag/branch) for each.
#
# Requires: gh (GitHub CLI), jq, base64
#
@ericboehs
ericboehs / statusline.sh
Last active June 13, 2026 23:16
Claude Code status line — git status, proxy detection, pace-aware usage tracking, auto-wrapping
#!/bin/bash
input=$(cat)
# --- Configuration ---
PACE_AHEAD_THRESHOLD=10 # Show warning when this many % ahead of expected pace
PACE_BEHIND_THRESHOLD=25 # Show nudge when this many % behind expected pace
USAGE_ALWAYS_SHOW=90 # Always show usage when actual % >= this value
# --- Parse input JSON ---
current_dir=$(echo "$input" | jq -r '.workspace.current_dir')
@ericboehs
ericboehs / com.boehs.no-show-more.tar.gz
Last active March 17, 2026 02:50
Mattermost plugin to disable Show More/Show Less post truncation
@ericboehs
ericboehs / index.html
Created March 10, 2026 18:02
Zip-first address form — #nobuild single HTML file with auto-fill city/state from postal code, 60+ countries, searchable country picker. Preview: https://gistpreview.github.io/?a93f4f172b0f9e488976c5a6983f2329
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Address Form — Zip First</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css">
<style>
:root {
--pico-font-size: 100%;
@ericboehs
ericboehs / chatgpt-history
Created March 1, 2026 21:41
🔍 chatgpt-history – CLI to access and sync ChatGPT conversation history via Safari
#!/usr/bin/env bash
#
# chatgpt-history - CLI to access ChatGPT conversation history via Safari
#
# Requires:
# - Safari open with a chatgpt.com tab (logged in)
# - Safari > Develop > Allow JavaScript from Apple Events (enabled)
# - jq installed
#
# Usage: