The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Mysti – Claude, Codex, and Gemini debate your code, then synthesize
Hey HN! I'm Baha, creator of Mysti.<p>The problem: I pay for Claude Pro, ChatGPT Plus, and Gemini but only one could help at a time. On tricky architecture decisions, I wanted a second opinion.<p>The solution: Mysti lets you pick any two AI agents (Claude Code, Codex, Gemini) to collaborate. They each analyze your request, debate approaches, then synthesize the best solution.<p>Your prompt → Agent 1 analyzes → Agent 2 analyzes → Discussion → Synthesized solution<p>Why this matters: each model has different training and blind spots. Two perspectives catch edge cases one would miss. It's like pair programming with two senior devs who actually discuss before answering.<p>What you get:
* Use your existing subscriptions (no new accounts, just your CLI tools)
* 16 personas (Architect, Debugger, Security Expert, etc)
* Full permission control from read-only to autonomous
* Unified context when switching agents<p>Tech: TypeScript, VS Code Extension API, shells out to claude-code/codex-cli/gemini-cli<p>License: BSL 1.1, free for personal and educational use, converts to MIT in 2030 (would love input on this, does it make sense to just go MIT?)<p>GitHub: <a href="https://github.com/DeepMyst/Mysti" rel="nofollow">https://github.com/DeepMyst/Mysti</a><p>Would love feedback on the brainstorm mode. Is multi-agent collaboration actually useful or am I just solving my own niche problem?
Show HN: Ez FFmpeg – Video editing in plain English
I built a CLI tool that lets you do common video/audio operations without remembering ffmpeg syntax.<p>Instead of:
ffmpeg -i video.mp4 -vf "fps=15,scale=480:-1:flags=lanczos" -loop 0 output.gif<p>You write:
ff convert video.mp4 to gif<p>More examples:
ff compress video.mp4 to 10mb
ff trim video.mp4 from 0:30 to 1:00
ff extract audio from video.mp4
ff resize video.mp4 to 720p
ff speed up video.mp4 by 2x
ff reverse video.mp4<p>There are similar tools that use LLMs (wtffmpeg, llmpeg, ai-ffmpeg-cli), but they require API keys, cost money, and have latency.<p>Ez FFmpeg is different:
- No AI – just regex pattern matching
- Instant – no API calls
- Free – no tokens
- Offline – works without internet<p>It handles ~20 common operations that cover 90% of what developers actually do with ffmpeg. For edge cases, you still need ffmpeg directly.<p>Interactive mode (just type ff) shows media files in your current folder with typeahead search.<p>npm install -g ezff
Show HN: Private blogging and journaling with a simulated audience
Show HN: GeneGuessr – a daily biology web puzzle
I made a web game inspired by Geoguessr and Wordle, where you get shown a 3D model of a random human protein each day, and you have to triangulate its gene name using similarity clues.<p>My background is in wet lab molecular biology and I intend this game to be engaging mostly to other biologists. But if you're outside the field, I'm interested to know if you can still solve it with browser use LLMs, and if you learned something interesting doing so. Let me know what you think.<p>I made it with Claude over the last 2 months. My coding experience is limited to basic python data analysis and figure making. I've seen people online asking, "Now that we have coding AI, why isn't there a deluge of awesome AI-generated apps made by non-coders?" - if this sounds like you, check out Geneguessr to understand what a web app by a non-coder looks like.<p>I might write more about the process if there's a demand, but what really unlocked the project for Claude was Linear MCP, where it could put each individual issue on a shared Kanban board. This, and Playwright MCP for testing on live site, were the two workhorses that got me through this. For bugs Claude couldn't one-shot, Linear was great for consolidating issue information so that I could dump it into ChatGPT Codex - it would usually think for like half an hour, output very confusing explanations, but the bug was gone.<p>Game is free, no log-in required, sorry if you run into any mobile bugs - didn't test it much there.<p><a href="https://geneguessr.brinedew.bio/" rel="nofollow">https://geneguessr.brinedew.bio/</a>
Show HN: GeneGuessr – a daily biology web puzzle
I made a web game inspired by Geoguessr and Wordle, where you get shown a 3D model of a random human protein each day, and you have to triangulate its gene name using similarity clues.<p>My background is in wet lab molecular biology and I intend this game to be engaging mostly to other biologists. But if you're outside the field, I'm interested to know if you can still solve it with browser use LLMs, and if you learned something interesting doing so. Let me know what you think.<p>I made it with Claude over the last 2 months. My coding experience is limited to basic python data analysis and figure making. I've seen people online asking, "Now that we have coding AI, why isn't there a deluge of awesome AI-generated apps made by non-coders?" - if this sounds like you, check out Geneguessr to understand what a web app by a non-coder looks like.<p>I might write more about the process if there's a demand, but what really unlocked the project for Claude was Linear MCP, where it could put each individual issue on a shared Kanban board. This, and Playwright MCP for testing on live site, were the two workhorses that got me through this. For bugs Claude couldn't one-shot, Linear was great for consolidating issue information so that I could dump it into ChatGPT Codex - it would usually think for like half an hour, output very confusing explanations, but the bug was gone.<p>Game is free, no log-in required, sorry if you run into any mobile bugs - didn't test it much there.<p><a href="https://geneguessr.brinedew.bio/" rel="nofollow">https://geneguessr.brinedew.bio/</a>
Show HN: AutoLISP interpreter in Rust/WASM – a CAD workflow invented 33 yrs ago
Show HN: AutoLISP interpreter in Rust/WASM – a CAD workflow invented 33 yrs ago
Show HN: Xcc700: Self-hosting mini C compiler for ESP32 (Xtensa) in 700 lines
Repo: <a href="https://github.com/valdanylchuk/xcc700" rel="nofollow">https://github.com/valdanylchuk/xcc700</a><p>Hi Everyone! I just wrote my first compiler!<p>- single pass, recursive descent, direct emission<p>- generates REL ELF binaries, runnable using ESP-IDF elf_loader<p>- very basic features only, just enough for self-hosting<p>- treats the Xtensa CPU as a stack machine for simplicity, no register allocation / window usage<p>- compilable on Mac, probably also Linux, can cross-compile for esp32 there<p>- wrote for fun / cyberdeck project<p>Sample output from esp32:<p><pre><code> xcc700.elf xcc700.c -o /d/cc.elf
[ xcc700 ] BUILD COMPLETED > OK
> IN : 700 Lines / 7977 Tokens
> SYM : 69 Funcs / 91 Globals
> REL : 152 Literals / 1027 Patches
> MEM : 1041 B .rodata / 17120 B .bss
> OUT : 27735 B .text / 33300 B ELF
[ 40 ms ] >> 17500 Lines/sec <<
</code></pre>
My best hope is that some fork might grow into a unique nice language tailored to the esp32 platform. I think it is underrated in userland hobby projects.
Show HN: Xcc700: Self-hosting mini C compiler for ESP32 (Xtensa) in 700 lines
Repo: <a href="https://github.com/valdanylchuk/xcc700" rel="nofollow">https://github.com/valdanylchuk/xcc700</a><p>Hi Everyone! I just wrote my first compiler!<p>- single pass, recursive descent, direct emission<p>- generates REL ELF binaries, runnable using ESP-IDF elf_loader<p>- very basic features only, just enough for self-hosting<p>- treats the Xtensa CPU as a stack machine for simplicity, no register allocation / window usage<p>- compilable on Mac, probably also Linux, can cross-compile for esp32 there<p>- wrote for fun / cyberdeck project<p>Sample output from esp32:<p><pre><code> xcc700.elf xcc700.c -o /d/cc.elf
[ xcc700 ] BUILD COMPLETED > OK
> IN : 700 Lines / 7977 Tokens
> SYM : 69 Funcs / 91 Globals
> REL : 152 Literals / 1027 Patches
> MEM : 1041 B .rodata / 17120 B .bss
> OUT : 27735 B .text / 33300 B ELF
[ 40 ms ] >> 17500 Lines/sec <<
</code></pre>
My best hope is that some fork might grow into a unique nice language tailored to the esp32 platform. I think it is underrated in userland hobby projects.
Show HN: Witr – Explain why a process is running on your Linux system
Hi HN,<p>I built a small Linux CLI tool called witr (Why Is This Running?).<p>The idea came from a situation most of us have hit: you log into a machine, see a process or port running, and immediately wonder why it exists, who started it, and what is keeping it alive right now.<p>witr traces a process, service, or port back to its origin and responsibility chain and explains it in a way that’s quick to read, especially when you’re debugging under pressure.<p>This is v0.1.0. It’s intentionally small and focused.
Feedback, criticism, and edge cases are very welcome.<p>Repo: <a href="https://github.com/pranshuparmar/witr" rel="nofollow">https://github.com/pranshuparmar/witr</a>
Show HN: Witr – Explain why a process is running on your Linux system
Hi HN,<p>I built a small Linux CLI tool called witr (Why Is This Running?).<p>The idea came from a situation most of us have hit: you log into a machine, see a process or port running, and immediately wonder why it exists, who started it, and what is keeping it alive right now.<p>witr traces a process, service, or port back to its origin and responsibility chain and explains it in a way that’s quick to read, especially when you’re debugging under pressure.<p>This is v0.1.0. It’s intentionally small and focused.
Feedback, criticism, and edge cases are very welcome.<p>Repo: <a href="https://github.com/pranshuparmar/witr" rel="nofollow">https://github.com/pranshuparmar/witr</a>
Show HN: Gaming Couch – a local multiplayer party game platform for 8 players
Hi HN,<p>I’ve been working on Gaming Couch, a web-based game platform where up to 8 players use their smartphones as controllers to play real-time action mini-games on a central browser screen.<p>TL;DR:<p>- 18 competitive mini-games for up to 8 players<p>- Runs entirely in the browser<p>- Phones act as controllers (no apps, no accounts required)<p>- Focused on fast, chaotic, real-time party games (no trivia)<p>- Currently in public early access<p>Try it here: <a href="https://gamingcouch.com" rel="nofollow">https://gamingcouch.com</a>. Open the link on a computer, host a session, scan the QR code with your phone(s) and play!<p>What is it?<p>Gaming Couch is a party game platform where friends play short competitive action games together on one screen, using their phones as controllers (there's also support for physical gamepads if that's more your thing!)<p>I intentionally avoided trivia and text-heavy games. Many people don’t write or read English fluently, and I wanted games where reaction, timing, and chaos matter more than spelling.<p>It’s currently in early public access with 18 mini-games, all made by me and a two friends. All game rounds last ~1 minute, scores carry over, and after each round players vote on the next game. If you’re solo, 3 games support bots, but it’s best with a full couch of people as half the fun comes from the social aspect of playing together!<p>Why I built it:<p>For the last 15+ plus years, me and my friends have loved video game nights but organizing them has always been a PITA when you have more than 4 people playing:<p>- Different games were under different Steam accounts requiring downloads and installation.<p>- Extra controllers were missing (somebody forgot to bring theirs) or they wouldn’t pair.<p>- Consoles were expensive and not always available if we were on the road.<p>Once I started building it, other dev friends asked if they could make games for it too, which led me to realize this could also be a platform for small party games, especially for gamejam devs who don’t want to or have time to build multiplayer infrastructure from scratch. This is why supporting third-party games is the next major feature I’m working on.<p>Tech stack:<p>- Games run locally in the host’s browser (no streaming of games)<p>- Phones connect via WebRTC to the host session (1–10ms latency in ideal conditions with P2P connection)<p>- Fallback to TURN when direct P2P connection isn’t possible e.g. due to strict firewall settings in corporate networks or use of VPN's<p>- Website/Platform made with React + TypeScript<p>- Existing games made with Unity or just plain JS/TS.<p>- Backend: Supabase (Postgres + auth only, currently only used for optional user accounts)<p>How is it different from e.g. Jackbox, Airconsole or Nintendo?<p>Jackbox is absolutely great, but it’s heavily dependent on English literacy and "being funny" on the spot. I wanted something focused on fast, chaotic, real-time action games that work even if your friends speak different languages or just want to smash buttons. Also, I'm not a fan of their party pack model...<p>AirConsole is the most well known comparison to Gaming Couch in terms of technology and execution, but I feel there is a gap for a curated experience where the UI is unified, rounds are 60 seconds, and the competitive "meta-game" (scoreboards/voting) is baked into the platform. And in any case AirConsole was acquired by a car-software company and have pivoted their focus from couch gaming toward in-car entertainment.<p>Nintendo games are usually the gold standard in the party game category but the HW and games cost so much! With Gaming Couch, I want to keep the accessibility threshold as low as possible so everyone is able to play without upfront HW or SW costs.<p>What do you think of this? Are you an interested player or perhaps a developer who has had an idea to develop a fun 8 player mini-game but has been daunted by the idea thus far?
Show HN: Gaming Couch – a local multiplayer party game platform for 8 players
Hi HN,<p>I’ve been working on Gaming Couch, a web-based game platform where up to 8 players use their smartphones as controllers to play real-time action mini-games on a central browser screen.<p>TL;DR:<p>- 18 competitive mini-games for up to 8 players<p>- Runs entirely in the browser<p>- Phones act as controllers (no apps, no accounts required)<p>- Focused on fast, chaotic, real-time party games (no trivia)<p>- Currently in public early access<p>Try it here: <a href="https://gamingcouch.com" rel="nofollow">https://gamingcouch.com</a>. Open the link on a computer, host a session, scan the QR code with your phone(s) and play!<p>What is it?<p>Gaming Couch is a party game platform where friends play short competitive action games together on one screen, using their phones as controllers (there's also support for physical gamepads if that's more your thing!)<p>I intentionally avoided trivia and text-heavy games. Many people don’t write or read English fluently, and I wanted games where reaction, timing, and chaos matter more than spelling.<p>It’s currently in early public access with 18 mini-games, all made by me and a two friends. All game rounds last ~1 minute, scores carry over, and after each round players vote on the next game. If you’re solo, 3 games support bots, but it’s best with a full couch of people as half the fun comes from the social aspect of playing together!<p>Why I built it:<p>For the last 15+ plus years, me and my friends have loved video game nights but organizing them has always been a PITA when you have more than 4 people playing:<p>- Different games were under different Steam accounts requiring downloads and installation.<p>- Extra controllers were missing (somebody forgot to bring theirs) or they wouldn’t pair.<p>- Consoles were expensive and not always available if we were on the road.<p>Once I started building it, other dev friends asked if they could make games for it too, which led me to realize this could also be a platform for small party games, especially for gamejam devs who don’t want to or have time to build multiplayer infrastructure from scratch. This is why supporting third-party games is the next major feature I’m working on.<p>Tech stack:<p>- Games run locally in the host’s browser (no streaming of games)<p>- Phones connect via WebRTC to the host session (1–10ms latency in ideal conditions with P2P connection)<p>- Fallback to TURN when direct P2P connection isn’t possible e.g. due to strict firewall settings in corporate networks or use of VPN's<p>- Website/Platform made with React + TypeScript<p>- Existing games made with Unity or just plain JS/TS.<p>- Backend: Supabase (Postgres + auth only, currently only used for optional user accounts)<p>How is it different from e.g. Jackbox, Airconsole or Nintendo?<p>Jackbox is absolutely great, but it’s heavily dependent on English literacy and "being funny" on the spot. I wanted something focused on fast, chaotic, real-time action games that work even if your friends speak different languages or just want to smash buttons. Also, I'm not a fan of their party pack model...<p>AirConsole is the most well known comparison to Gaming Couch in terms of technology and execution, but I feel there is a gap for a curated experience where the UI is unified, rounds are 60 seconds, and the competitive "meta-game" (scoreboards/voting) is baked into the platform. And in any case AirConsole was acquired by a car-software company and have pivoted their focus from couch gaming toward in-car entertainment.<p>Nintendo games are usually the gold standard in the party game category but the HW and games cost so much! With Gaming Couch, I want to keep the accessibility threshold as low as possible so everyone is able to play without upfront HW or SW costs.<p>What do you think of this? Are you an interested player or perhaps a developer who has had an idea to develop a fun 8 player mini-game but has been daunted by the idea thus far?
Show HN: WebPtoPNG – I built a WebP to PNG tool, everything runs in the browser
I built WebPtoPNG after getting frustrated with converters that throttle uploads or phone data; everything runs straight in the browser, and never asks for a signup.
Show HN: LazyPromise = Observable – Signals
A Promise-like primitive which is lazy/cancelable, has typed errors, and emits synchronously instead of on the microtask queue. In a way LazyPromise is what you get if you take an Observable and make it impossible to misuse it for what the Signals were built to do.
Show HN: Spice Cayenne – SQL acceleration built on Vortex
Hi HN, we’re Luke and Phillip, and we’re building Spice.ai OSS - a lightweight, portable data and AI engine and powered by Apache DataFusion & Ballista for SQL query, hybrid-search, and LLM-inference across disaggregated-storage used by enterprises like Barracuda Networks and Twilio.<p>We first introduced Spice [1] on HN in 2021 and re-launched it on HN [2] in 2024 re-built from the ground up in Rust.<p>Spice includes the concept of a Data Accelerator [3], which is a way to materialize data from disparate sources, such as other databases, in embedded databases like SQLite and DuckDB.<p>Today we’re excited to announce a new Ducklake-inspired Data Accelerator built on Vortex [3], a highly performant, extensible columnar data format that claims 100x faster random access, 10-20x faster scans, 5x faster writes with a similar compression ratio vs. Apache Parquet.<p>In our tests with Spice, Vortex performs faster than DuckDB with a third of the memory usage, and is much more scalable (multi-file). For real-world deployments, we see the DuckDB Data Accelerator often capping out around 1TB, but Spice Cayenne can do Petabyte-scale.<p>You can read about it at <a href="https://spice.ai/blog" rel="nofollow">https://spice.ai/blog</a> and in the Spice OSS release notes [4].<p>This is just the first version, and we’d love to get your feedback!<p>GitHub: <a href="https://github.com/spiceai/spiceai" rel="nofollow">https://github.com/spiceai/spiceai</a><p>[1] <a href="https://news.ycombinator.com/item?id=28448887">https://news.ycombinator.com/item?id=28448887</a><p>[2] <a href="https://news.ycombinator.com/item?id=39854584">https://news.ycombinator.com/item?id=39854584</a><p>[3] <a href="https://github.com/vortex-data/vortex" rel="nofollow">https://github.com/vortex-data/vortex</a><p>[4] <a href="https://spiceai.org/blog/releases/v1.9.0" rel="nofollow">https://spiceai.org/blog/releases/v1.9.0</a>
Show HN: A local-first, reversible PII scrubber for AI workflows
Hi HN,<p>I’m one of the maintainers of Bridge Anonymization. We built this because the existing solutions for translating sensitive user content are insufficient for many of our privacy-concious clients (Governments, Banks, Healthcare, etc.).<p>We couldn't send PII to third-party APIs, but standard redaction destroyed the translation quality. If you scrub <i>"John"</i> to <i>"[PERSON]"</i>, the translation engine loses gender context (often defaulting to masculine), which breaks grammatical agreement in languages like French or German.<p>So we built a reversible, local-first pipeline for Node.js/Bun. Here is how we implemented the tricky parts:<p>0. The Mapping<p>We use XML-like tags with ID’s that uniquely identify the PII, `<PII type=”PERSON” id=”1”>`. Translation models and the systems around them work with XML data structures since the dawn of Computer Aided Translation tools, so this improves compatibility with existing workflows and systems. A `PIIMap` is stored locally for rehydration after translation (AES-256-GCM-encrypted by default).<p>1. Hybrid Detection Engine<p>Obviously neither Regex nor NER was enough on its own.<p>- Structured PII: We use strict Regex with validation checksums for things like IBANs (Mod-97) and Credit Cards (Luhn).
- Soft PII: For names and locations, we run a quantized `xlm-roberta` model via `onnxruntime-node` directly in the process. This lets us avoid a Python sidecar while keeping the package ‘lightweight’ (still ~280MB for the quantized model, but acceptable for desktop environments).<p>2. The "Hallucination" Guard (Fuzzy Rehydration)<p>LLMs often "mangle" the XML placeholders during translation (e.g., turning `<PII id="1"/>` into `< PII id = « 1 » >`).
We implemented a Fuzzy Tag Matcher that uses flexible regex patterns to detect these artefacts. It identifies the tag even if attributes are reordered or quotes are changed, ensuring we can always map the token back to the original encrypted value.<p>3. Semantic Masking<p>We are currently working on "Semantic Masking"—adding context to the PII tag (like `<PII type="PERSON" gender="female" id="1" />` ) to preserve (gender) context for the translation. For now, we are relying on a lightweight lookup-table approach to avoid the overhead of a second ML model or the hassle of fine tuning. So far this works nicely for most use cases.<p>The code is MIT licensed. I’d love to hear how others are handling the "context loss" problem in privacy-preserving NLP pipelines! I think this could quite easily be generalized to other LLM applications as well.
Show HN: Lamp Carousel – DIY kinetic sculpture powered by lamp heat (2024)
I wanted to share this fun craft activity for the holidays that I've been doing with my family over the last few years. I came up with these while cutting up some cans trying to make an aluminum version of paper spinners.<p>There are a variety of shapes that work, but generally bigger+lighter spinners are better. Also incandescent bulbs are the best, but LEDs work too.<p>They remind me of candle carousels I would see at my grandparents' house during Christmas. Let me know what you think!
Show HN: Lamp Carousel – DIY kinetic sculpture powered by lamp heat (2024)
I wanted to share this fun craft activity for the holidays that I've been doing with my family over the last few years. I came up with these while cutting up some cans trying to make an aluminum version of paper spinners.<p>There are a variety of shapes that work, but generally bigger+lighter spinners are better. Also incandescent bulbs are the best, but LEDs work too.<p>They remind me of candle carousels I would see at my grandparents' house during Christmas. Let me know what you think!
Show HN: Lamp Carousel – DIY kinetic sculpture powered by lamp heat (2024)
I wanted to share this fun craft activity for the holidays that I've been doing with my family over the last few years. I came up with these while cutting up some cans trying to make an aluminum version of paper spinners.<p>There are a variety of shapes that work, but generally bigger+lighter spinners are better. Also incandescent bulbs are the best, but LEDs work too.<p>They remind me of candle carousels I would see at my grandparents' house during Christmas. Let me know what you think!