The best Hacker News stories from Show from the past day

Go back

Latest posts:

Show HN: Reversing a Cinema Camera's Peripherals Port

Show HN: A subtly obvious e-paper room air monitor

In the cold season we tend to keep the windows closed. The air gets "stale": humidity often rises above 60 %, which can harm our wellbeing and promote mould. At the same time the CO₂ level in the air increases, which impacts our ability to concentrate.<p>So I built a room air monitor that stays unobtrusive as long as everything is in the green zone, but becomes deliberately noticeable once thresholds are exceeded. For my personal love of statistics I also visualise the measurements in a clear dashboard.

Show HN: A subtly obvious e-paper room air monitor

In the cold season we tend to keep the windows closed. The air gets "stale": humidity often rises above 60 %, which can harm our wellbeing and promote mould. At the same time the CO₂ level in the air increases, which impacts our ability to concentrate.<p>So I built a room air monitor that stays unobtrusive as long as everything is in the green zone, but becomes deliberately noticeable once thresholds are exceeded. For my personal love of statistics I also visualise the measurements in a clear dashboard.

Show HN: Guts – convert Golang types to TypeScript

Show HN: Guts – convert Golang types to TypeScript

Show HN: Guts – convert Golang types to TypeScript

Show HN: RowboatX – open-source Claude Code for everyday automations

Claude Code is great, but it’s focused on coding. The missing piece is a native way to build and run custom background agents for non-code tasks. We built RowboatX as a CLI tool modeled after Claude Code that lets you do that. It uses the file system and unix tools to create and monitor background agents for everyday tasks, connect them to any MCP server for tools, and reason over their outputs.<p>Because RowboatX runs locally with shell access, the agents can install tools, execute code, and automate anything you could do in a terminal with your explicit permission. It works with any compatible LLM, including open-source ones.<p>Our repo is <a href="https://github.com/rowboatlabs/rowboat" rel="nofollow">https://github.com/rowboatlabs/rowboat</a>, and there’s a demo video here: <a href="https://youtu.be/cyPBinQzicY" rel="nofollow">https://youtu.be/cyPBinQzicY</a><p>For example, you can connect RowboatX to the ElevenLabs MCP server and create a background workflow that produces a NotebookLM-style podcast every day from recent AI-agent papers on arXiv. Or you can connect it to Google Calendar and Exa Search to research meeting attendees and generate briefs before each event.<p>You can try these with: `npx @rowboatlabs/rowboatx`<p>We combined three simple ideas:<p>1. File system as state: Each agent’s instruction, memory, logs, and data are just files on disk, grepable, diffable, and local. For instance, you can just run: grep -rl '"agent":"<agent-name>"' ~/.rowboat/runs to list every run for a particular workflow.<p>2. The supervisor agent: A Claude Code style agent that can create and run background agents. It predominantly uses Unix commands to monitor, update, and schedule agents. LLMs handle Unix tools better than backend APIs [1][2], so we leaned into that. It can also probe any MCP server and attach the tools to the agents.<p>3. Human-in-the-loop: Each background agent can emit a human_request message when needed (e.g. drafting a tricky email or installing a tool) that pauses execution and waits for input before continuing. The supervisor coordinates this.<p>I started my career over a decade ago building spam detection models at Twitter, spending a lot of my time in the terminal with Unix commands for data analysis [0] and Vowpal Wabbit for modeling. When Claude Code came along, it felt familiar and amazing to work with. But trying to use it beyond code always felt a bit forced. We built RowboatX to bring that same workflow to everyday tasks. It is Apache-2.0 licensed and easily extendable.<p>While there are many agent builders, running on the user's terminal enables unique use cases like computer and browser automation that cloud-based tools can't match. This power requires careful safety design. We implemented command-level allow/deny lists, with containerization coming next. We’ve tried to design for safety from day one, but we’d love to hear the community’s perspective on what additional safeguards or approaches you’d consider important here.<p>We’re excited to share RowboatX with everyone here. We’d love to hear your thoughts and welcome contributions!<p>—<p>[0] <a href="https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf" rel="nofollow">https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf</a> [1] <a href="https://arxiv.org/pdf/2405.06807" rel="nofollow">https://arxiv.org/pdf/2405.06807</a> [2] <a href="https://arxiv.org/pdf/2501.10132" rel="nofollow">https://arxiv.org/pdf/2501.10132</a>

Show HN: RowboatX – open-source Claude Code for everyday automations

Claude Code is great, but it’s focused on coding. The missing piece is a native way to build and run custom background agents for non-code tasks. We built RowboatX as a CLI tool modeled after Claude Code that lets you do that. It uses the file system and unix tools to create and monitor background agents for everyday tasks, connect them to any MCP server for tools, and reason over their outputs.<p>Because RowboatX runs locally with shell access, the agents can install tools, execute code, and automate anything you could do in a terminal with your explicit permission. It works with any compatible LLM, including open-source ones.<p>Our repo is <a href="https://github.com/rowboatlabs/rowboat" rel="nofollow">https://github.com/rowboatlabs/rowboat</a>, and there’s a demo video here: <a href="https://youtu.be/cyPBinQzicY" rel="nofollow">https://youtu.be/cyPBinQzicY</a><p>For example, you can connect RowboatX to the ElevenLabs MCP server and create a background workflow that produces a NotebookLM-style podcast every day from recent AI-agent papers on arXiv. Or you can connect it to Google Calendar and Exa Search to research meeting attendees and generate briefs before each event.<p>You can try these with: `npx @rowboatlabs/rowboatx`<p>We combined three simple ideas:<p>1. File system as state: Each agent’s instruction, memory, logs, and data are just files on disk, grepable, diffable, and local. For instance, you can just run: grep -rl '"agent":"<agent-name>"' ~/.rowboat/runs to list every run for a particular workflow.<p>2. The supervisor agent: A Claude Code style agent that can create and run background agents. It predominantly uses Unix commands to monitor, update, and schedule agents. LLMs handle Unix tools better than backend APIs [1][2], so we leaned into that. It can also probe any MCP server and attach the tools to the agents.<p>3. Human-in-the-loop: Each background agent can emit a human_request message when needed (e.g. drafting a tricky email or installing a tool) that pauses execution and waits for input before continuing. The supervisor coordinates this.<p>I started my career over a decade ago building spam detection models at Twitter, spending a lot of my time in the terminal with Unix commands for data analysis [0] and Vowpal Wabbit for modeling. When Claude Code came along, it felt familiar and amazing to work with. But trying to use it beyond code always felt a bit forced. We built RowboatX to bring that same workflow to everyday tasks. It is Apache-2.0 licensed and easily extendable.<p>While there are many agent builders, running on the user's terminal enables unique use cases like computer and browser automation that cloud-based tools can't match. This power requires careful safety design. We implemented command-level allow/deny lists, with containerization coming next. We’ve tried to design for safety from day one, but we’d love to hear the community’s perspective on what additional safeguards or approaches you’d consider important here.<p>We’re excited to share RowboatX with everyone here. We’d love to hear your thoughts and welcome contributions!<p>—<p>[0] <a href="https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf" rel="nofollow">https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf</a> [1] <a href="https://arxiv.org/pdf/2405.06807" rel="nofollow">https://arxiv.org/pdf/2405.06807</a> [2] <a href="https://arxiv.org/pdf/2501.10132" rel="nofollow">https://arxiv.org/pdf/2501.10132</a>

Show HN: RowboatX – open-source Claude Code for everyday automations

Claude Code is great, but it’s focused on coding. The missing piece is a native way to build and run custom background agents for non-code tasks. We built RowboatX as a CLI tool modeled after Claude Code that lets you do that. It uses the file system and unix tools to create and monitor background agents for everyday tasks, connect them to any MCP server for tools, and reason over their outputs.<p>Because RowboatX runs locally with shell access, the agents can install tools, execute code, and automate anything you could do in a terminal with your explicit permission. It works with any compatible LLM, including open-source ones.<p>Our repo is <a href="https://github.com/rowboatlabs/rowboat" rel="nofollow">https://github.com/rowboatlabs/rowboat</a>, and there’s a demo video here: <a href="https://youtu.be/cyPBinQzicY" rel="nofollow">https://youtu.be/cyPBinQzicY</a><p>For example, you can connect RowboatX to the ElevenLabs MCP server and create a background workflow that produces a NotebookLM-style podcast every day from recent AI-agent papers on arXiv. Or you can connect it to Google Calendar and Exa Search to research meeting attendees and generate briefs before each event.<p>You can try these with: `npx @rowboatlabs/rowboatx`<p>We combined three simple ideas:<p>1. File system as state: Each agent’s instruction, memory, logs, and data are just files on disk, grepable, diffable, and local. For instance, you can just run: grep -rl '"agent":"<agent-name>"' ~/.rowboat/runs to list every run for a particular workflow.<p>2. The supervisor agent: A Claude Code style agent that can create and run background agents. It predominantly uses Unix commands to monitor, update, and schedule agents. LLMs handle Unix tools better than backend APIs [1][2], so we leaned into that. It can also probe any MCP server and attach the tools to the agents.<p>3. Human-in-the-loop: Each background agent can emit a human_request message when needed (e.g. drafting a tricky email or installing a tool) that pauses execution and waits for input before continuing. The supervisor coordinates this.<p>I started my career over a decade ago building spam detection models at Twitter, spending a lot of my time in the terminal with Unix commands for data analysis [0] and Vowpal Wabbit for modeling. When Claude Code came along, it felt familiar and amazing to work with. But trying to use it beyond code always felt a bit forced. We built RowboatX to bring that same workflow to everyday tasks. It is Apache-2.0 licensed and easily extendable.<p>While there are many agent builders, running on the user's terminal enables unique use cases like computer and browser automation that cloud-based tools can't match. This power requires careful safety design. We implemented command-level allow/deny lists, with containerization coming next. We’ve tried to design for safety from day one, but we’d love to hear the community’s perspective on what additional safeguards or approaches you’d consider important here.<p>We’re excited to share RowboatX with everyone here. We’d love to hear your thoughts and welcome contributions!<p>—<p>[0] <a href="https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf" rel="nofollow">https://web.stanford.edu/class/cs124/kwc-unix-for-poets.pdf</a> [1] <a href="https://arxiv.org/pdf/2405.06807" rel="nofollow">https://arxiv.org/pdf/2405.06807</a> [2] <a href="https://arxiv.org/pdf/2501.10132" rel="nofollow">https://arxiv.org/pdf/2501.10132</a>

Show HN: Parqeye – A CLI tool to visualize and inspect Parquet files

I built a Rust-based CLI/terminal UI for inspecting Parquet files—data, metadata, and row-group-level structure—right from the terminal. If someone sent me a Parquet file, I used to open DuckDB or Polars just to see what was inside. Now I can do it with one command.<p>Repo: <a href="https://github.com/kaushiksrini/parqeye" rel="nofollow">https://github.com/kaushiksrini/parqeye</a>

Show HN: Parqeye – A CLI tool to visualize and inspect Parquet files

I built a Rust-based CLI/terminal UI for inspecting Parquet files—data, metadata, and row-group-level structure—right from the terminal. If someone sent me a Parquet file, I used to open DuckDB or Polars just to see what was inside. Now I can do it with one command.<p>Repo: <a href="https://github.com/kaushiksrini/parqeye" rel="nofollow">https://github.com/kaushiksrini/parqeye</a>

Show HN: Bsub.io – zero-setup batch execution for command-line tools

I built bsub because I was tired of wiring up Docker images, Python environments, GPUs, sandboxing, and resource limits every time I needed to run heavy command-line tools from web apps. I wanted: send files -> run job in the cloud -> get output -> done.<p><a href="https://www.bsub.io" rel="nofollow">https://www.bsub.io</a><p>bsub lets you execute tools like Whisper, Typst, Pandoc, Docling, and FFmpeg as remote batch jobs with no environment setup. You can try them locally via the CLI or integrate via a simple REST API.<p>Example (PDF extraction):<p><pre><code> bsubio submit -w pdf/extract *.pdf </code></pre> Works like running the tool locally, but the compute and isolation happen in the cloud.<p>Technical details: - Each job runs in an isolated container with defined CPU/GPU/RAM limits. - Files are stored ephemerally for the duration of the job and deleted after completion. - REST API returns job status, logs, and results. - Cold start for light processors (Typst, Pandoc) is low; Whisper/FFmpeg take longer due to model load/encoding time. - Backend scales horizontally; more workers can be added during load spikes.<p>Current processors:<p><pre><code> SST/Whisper -- speech-to-text Typography -- Typst, Pandoc PDF extraction -- Docling Video transcoding -- FFmpeg </code></pre> More coming; suggestions welcome for tools that are painful to set up locally.<p>Looking for testers! CLI is open source: <a href="https://github.com/bsubio/cli" rel="nofollow">https://github.com/bsubio/cli</a>. Installers available for Linux/macOS; Windows testing is in progress. Free during early testing; pricing TBD.<p>If you’re on Windows, feedback is especially helpful: contact@bsub.io<p>If you try it, I’d appreciate feedback on API design, latency, missing processors, or anything rough around the edges.

Show HN: Building WebSocket in Apache Iggy with Io_uring and Completion Based IO

Show HN: Reverse perspective camera for OpenGL (Three.js)

I've extended the standard OpenGL camera to allow smooth transition between normal perspective, orthographic, and reverse perspective projection. To demonstrate the effect, I built a demo using Three.js.<p>Reverse perspective can feel a bit disorienting at first, but this demo is meant to highlight a few of its interesting advantages:<p>1. An extended <i>Dolly zoom</i> effect. <a href="https://en.wikipedia.org/wiki/Dolly_zoom" rel="nofollow">https://en.wikipedia.org/wiki/Dolly_zoom</a><p>You can think of it as an extrapolation of the classic Dolly zoom into negative space. It produces a cinematic sense of vertigo or sudden insight, and also lets you pull the camera back from an object without distracting the viewer with surrounding geometry.<p>2. A wider and more complete spatial view.<p>Near objects no longer obscure distant ones; the viewer can see both the façade of a building and what’s happening on its roof, or even behind it.<p>Code and details: <a href="https://github.com/bntre/reverse-perspective-threejs" rel="nofollow">https://github.com/bntre/reverse-perspective-threejs</a>

Show HN: Continuous Claude – run Claude Code in a loop

Continuous Claude is a CLI wrapper I made that runs Claude Code in an iterative loop with persistent context, automatically driving a PR-based workflow. Each iteration creates a branch, applies a focused code change, generates a commit, opens a PR via GitHub's CLI, waits for required checks and reviews, merges if green, and records state into a shared notes file.<p>This avoids the typical stateless one-shot pattern of current coding agents and enables multi-step changes without losing intermediate reasoning, test failures, or partial progress.<p>The tool is useful for tasks that require many small, serial modifications: increasing test coverage, large refactors, dependency upgrades guided by release notes, or framework migrations.<p>Blog post about this: <a href="https://anandchowdhary.com/blog/2025/running-claude-code-in-a-loop" rel="nofollow">https://anandchowdhary.com/blog/2025/running-claude-code-in-...</a>

Show HN: Continuous Claude – run Claude Code in a loop

Continuous Claude is a CLI wrapper I made that runs Claude Code in an iterative loop with persistent context, automatically driving a PR-based workflow. Each iteration creates a branch, applies a focused code change, generates a commit, opens a PR via GitHub's CLI, waits for required checks and reviews, merges if green, and records state into a shared notes file.<p>This avoids the typical stateless one-shot pattern of current coding agents and enables multi-step changes without losing intermediate reasoning, test failures, or partial progress.<p>The tool is useful for tasks that require many small, serial modifications: increasing test coverage, large refactors, dependency upgrades guided by release notes, or framework migrations.<p>Blog post about this: <a href="https://anandchowdhary.com/blog/2025/running-claude-code-in-a-loop" rel="nofollow">https://anandchowdhary.com/blog/2025/running-claude-code-in-...</a>

Show HN: Continuous Claude – run Claude Code in a loop

Continuous Claude is a CLI wrapper I made that runs Claude Code in an iterative loop with persistent context, automatically driving a PR-based workflow. Each iteration creates a branch, applies a focused code change, generates a commit, opens a PR via GitHub's CLI, waits for required checks and reviews, merges if green, and records state into a shared notes file.<p>This avoids the typical stateless one-shot pattern of current coding agents and enables multi-step changes without losing intermediate reasoning, test failures, or partial progress.<p>The tool is useful for tasks that require many small, serial modifications: increasing test coverage, large refactors, dependency upgrades guided by release notes, or framework migrations.<p>Blog post about this: <a href="https://anandchowdhary.com/blog/2025/running-claude-code-in-a-loop" rel="nofollow">https://anandchowdhary.com/blog/2025/running-claude-code-in-...</a>

Show HN: PrinceJS – 19,200 req/s Bun framework in 2.8 kB (built by a 13yo)

Hey HN,<p>I'm 13, from Nigeria, and I just released PrinceJS — the fastest web framework for Bun right now.<p>• 19,200 req/s (beats Hono/Elysia/Express) • 2.8 kB gzipped • Tree-shakable (cache, AI, email, cron, SSE, queue, test, static...) • Zero deps. Zero config.<p>Built in < 1 week. No team. Just me and Bun.<p>Try it: `bun add princejs` GitHub: <a href="https://github.com/MatthewTheCoder1218/princejs" rel="nofollow">https://github.com/MatthewTheCoder1218/princejs</a> Docs: <a href="https://princejs.vercel.app" rel="nofollow">https://princejs.vercel.app</a><p>Brutal feedback welcome. What's missing?<p>– @Lil_Prince_1218

Show HN: PrinceJS – 19,200 req/s Bun framework in 2.8 kB (built by a 13yo)

Hey HN,<p>I'm 13, from Nigeria, and I just released PrinceJS — the fastest web framework for Bun right now.<p>• 19,200 req/s (beats Hono/Elysia/Express) • 2.8 kB gzipped • Tree-shakable (cache, AI, email, cron, SSE, queue, test, static...) • Zero deps. Zero config.<p>Built in < 1 week. No team. Just me and Bun.<p>Try it: `bun add princejs` GitHub: <a href="https://github.com/MatthewTheCoder1218/princejs" rel="nofollow">https://github.com/MatthewTheCoder1218/princejs</a> Docs: <a href="https://princejs.vercel.app" rel="nofollow">https://princejs.vercel.app</a><p>Brutal feedback welcome. What's missing?<p>– @Lil_Prince_1218

Show HN: PrinceJS – 19,200 req/s Bun framework in 2.8 kB (built by a 13yo)

Hey HN,<p>I'm 13, from Nigeria, and I just released PrinceJS — the fastest web framework for Bun right now.<p>• 19,200 req/s (beats Hono/Elysia/Express) • 2.8 kB gzipped • Tree-shakable (cache, AI, email, cron, SSE, queue, test, static...) • Zero deps. Zero config.<p>Built in < 1 week. No team. Just me and Bun.<p>Try it: `bun add princejs` GitHub: <a href="https://github.com/MatthewTheCoder1218/princejs" rel="nofollow">https://github.com/MatthewTheCoder1218/princejs</a> Docs: <a href="https://princejs.vercel.app" rel="nofollow">https://princejs.vercel.app</a><p>Brutal feedback welcome. What's missing?<p>– @Lil_Prince_1218

< 1 2 3 4 ... 898 899 900 >