The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Tiny-vLLM – high performance LLM inference engine in C++ and CUDA
Show HN: Zot – Yet another coding agent harness
Show HN: TV Explorer. Adding advanced UI to free online TV
Show HN: AISlop, a CLI for catching AI generated code smells
Hi, I’m Kenny, I’ve been building aislop. I starting working on this after using Claude Code, codex and opencode several times and noticing some slops. They aren’t syntax and passes most tests, they are patterns like empty catch blocks, useless comments, duplicated helpers, dead code and many more. So I built a tool to scan and check for these patterns and wired it into hooks so after each tool call, the agent checks for the slops.<p>You can try it out with npx aislop scan.<p>It’s all local and no code is transferred. Thank you.
Show HN: Reassign – a 24-hour dial for planning your day
For years I've used paper and a printed clock to organise my day. Found it way better than any list or timeline app.<p>Played around a bit and made a digital clone to speed things up: Reassign.app (best experience is on desktop)<p>Anyone else think of their day as a circle rather than a list?<p>edit: it also has MCP integration (<a href="https://reassign.app/api/mcp" rel="nofollow">https://reassign.app/api/mcp</a>) — my Claude already connects to Linear and Calendar, so I use it to start and plan my day. I can quickly get a skeleton of a day out and then polish until done.
Show HN: Ktx – Open-source executable context layer for data agents
Hi HN, we’re open-sourcing ktx. It’s an executable context layer that makes agents reliable on your data stack.<p>We built it after going through the experience of building production-grade data agents for dozens of companies. If you’ve also tried building them, or simply tried using Claude Code or Codex on your data warehouse, you’ll know that accuracy is the #1 issue. Agents are great at generating valid SQL, but it’s not always correct SQL.<p>To cite a few examples of “agents gone wrong”:<p>- Stale column + hidden business rule: when preparing a board report, a finance analyst asks Claude Code for “ARR by customer segment”, it derives ARR from multiple tables (subscriptions, plans, accounts), then groups by accounts.industry. But CC doesn’t know that this industry column was deprecated a few months prior, or that past board reports excluded paused subscriptions from the ARR calculation<p>- Join fanout: a data analyst at a retailer uses their company’s internal agent to prep a product revenue deck for a QBR. The agent joins orders to order_items, then sums orders.total_amount_cents grouped by order_items.product_id. The SQL runs fine, but each order’s revenue is repeated once per line item, which most people will miss if most orders only have 1 item<p>- Missing attribution logic: a marketing analyst asks Codex “Which campaigns drove the most revenue?” Codex joins marketing_touches to users to orders and groups by utm_campaign. But since each order can have multiple touches before purchase, the same order can be credited to first touch, last touch, every touch, or every campaign the user clicked before buying. If the agent chooses the method that doesn’t match the team’s attribution logic, they’ll make suboptimal decisions<p>To solve this at first we gave the agent more context through skills + a wiki-style knowledge base. That gives it some useful extra context but still relies on it writing the SQL without incorrect assumptions.<p>The next solution we explored was implementing a classic semantic layer. That solves the executable part, but they’re such a pain to build and maintain since they were made for legacy BI tools. Plus as a standalone tool, they lack all the useful context from unstructured data sources like internal docs.<p>So we built ktx and split it into 2 parts:<p>1. Business context goes in Markdown wiki pages that are auto-ingested and auto-populated<p>2. Queryable definitions go into YAML files that define tables, row grain, joins, measures, dimensions, filters, and filter groups<p>That way, when an agent needs a metric, it asks ktx for a measure, dimensions, filters, and filter groups instead of writing the whole query itself. ktx’s planner chooses the join path, uses grain and relationship metadata, catches issues like join fanout and chasm joins, and compiles the warehouse SQL, while utilizing the extra unstructured knowledge it has access to.<p>ktx is Apache 2.0. It can ingest from most warehouses (BigQuery, Snowflake, Postgres & others), modeling tools (dbt, MetricFlow, LookML), BI tools (Looker, Metabase), doc tools like Notion, and corrections from user interactions.<p>Install manually:<p>npm install -g @kaelio/ktx<p>ktx setup<p>Or give this prompt to your agent:<p>Run npx skills add Kaelio/ktx --skill ktx and use ktx skill to install and configure ktx<p>We’d especially like feedback from people who’ve tried using Claude Code, Codex, or building custom agents on analytics warehouses. Where did they fail? And what did you try to make the answers more reliable?
Show HN: Ktx – Open-source executable context layer for data agents
Hi HN, we’re open-sourcing ktx. It’s an executable context layer that makes agents reliable on your data stack.<p>We built it after going through the experience of building production-grade data agents for dozens of companies. If you’ve also tried building them, or simply tried using Claude Code or Codex on your data warehouse, you’ll know that accuracy is the #1 issue. Agents are great at generating valid SQL, but it’s not always correct SQL.<p>To cite a few examples of “agents gone wrong”:<p>- Stale column + hidden business rule: when preparing a board report, a finance analyst asks Claude Code for “ARR by customer segment”, it derives ARR from multiple tables (subscriptions, plans, accounts), then groups by accounts.industry. But CC doesn’t know that this industry column was deprecated a few months prior, or that past board reports excluded paused subscriptions from the ARR calculation<p>- Join fanout: a data analyst at a retailer uses their company’s internal agent to prep a product revenue deck for a QBR. The agent joins orders to order_items, then sums orders.total_amount_cents grouped by order_items.product_id. The SQL runs fine, but each order’s revenue is repeated once per line item, which most people will miss if most orders only have 1 item<p>- Missing attribution logic: a marketing analyst asks Codex “Which campaigns drove the most revenue?” Codex joins marketing_touches to users to orders and groups by utm_campaign. But since each order can have multiple touches before purchase, the same order can be credited to first touch, last touch, every touch, or every campaign the user clicked before buying. If the agent chooses the method that doesn’t match the team’s attribution logic, they’ll make suboptimal decisions<p>To solve this at first we gave the agent more context through skills + a wiki-style knowledge base. That gives it some useful extra context but still relies on it writing the SQL without incorrect assumptions.<p>The next solution we explored was implementing a classic semantic layer. That solves the executable part, but they’re such a pain to build and maintain since they were made for legacy BI tools. Plus as a standalone tool, they lack all the useful context from unstructured data sources like internal docs.<p>So we built ktx and split it into 2 parts:<p>1. Business context goes in Markdown wiki pages that are auto-ingested and auto-populated<p>2. Queryable definitions go into YAML files that define tables, row grain, joins, measures, dimensions, filters, and filter groups<p>That way, when an agent needs a metric, it asks ktx for a measure, dimensions, filters, and filter groups instead of writing the whole query itself. ktx’s planner chooses the join path, uses grain and relationship metadata, catches issues like join fanout and chasm joins, and compiles the warehouse SQL, while utilizing the extra unstructured knowledge it has access to.<p>ktx is Apache 2.0. It can ingest from most warehouses (BigQuery, Snowflake, Postgres & others), modeling tools (dbt, MetricFlow, LookML), BI tools (Looker, Metabase), doc tools like Notion, and corrections from user interactions.<p>Install manually:<p>npm install -g @kaelio/ktx<p>ktx setup<p>Or give this prompt to your agent:<p>Run npx skills add Kaelio/ktx --skill ktx and use ktx skill to install and configure ktx<p>We’d especially like feedback from people who’ve tried using Claude Code, Codex, or building custom agents on analytics warehouses. Where did they fail? And what did you try to make the answers more reliable?
Show HN: Open-Source AI Racing Harness
Hi I'm Dan from Elodin, making an open source real-time capable flight software simulation.<p>For AI Grand Prix contestants, the wait for the Round 1 virtual qualifier simulation has been grueling.<p>If you’re competing, check out our simulation harness to tide you over, built to match the published competition constraints and message format. It runs against real Betaflight, which we learned requires at least 1000 sensor samples per second to run real-time correctly.<p>The competition warranted introducing a new feature to generate the camera sensor directly in the simulation loop. Typically people connect to Unreal or similar game engine to create a camera sensor, which works well but is very heavy. For the simple needs of this challenge, creating sample directly in the loop is very handy and easy to use. Happy to hear your feedback on this! While it's not fancy looking currently, it uses the Rust Bevy game engine, which should allow us to improve the visual fidelity quickly.<p>We all should easily be able to shift our implementation to the published competition sim once it lands. Hope you enjoy and good luck!
Show HN: Open-Source AI Racing Harness
Hi I'm Dan from Elodin, making an open source real-time capable flight software simulation.<p>For AI Grand Prix contestants, the wait for the Round 1 virtual qualifier simulation has been grueling.<p>If you’re competing, check out our simulation harness to tide you over, built to match the published competition constraints and message format. It runs against real Betaflight, which we learned requires at least 1000 sensor samples per second to run real-time correctly.<p>The competition warranted introducing a new feature to generate the camera sensor directly in the simulation loop. Typically people connect to Unreal or similar game engine to create a camera sensor, which works well but is very heavy. For the simple needs of this challenge, creating sample directly in the loop is very handy and easy to use. Happy to hear your feedback on this! While it's not fancy looking currently, it uses the Rust Bevy game engine, which should allow us to improve the visual fidelity quickly.<p>We all should easily be able to shift our implementation to the published competition sim once it lands. Hope you enjoy and good luck!
Show HN: Continue? Y/N: A 60-second game about AI agent permission fatigue
Show HN: Continue? Y/N: A 60-second game about AI agent permission fatigue
Show HN: Hallucinate – Massively Multiplayer Online Rave
<a href="https://github.com/stagas/hallucinate" rel="nofollow">https://github.com/stagas/hallucinate</a>
Show HN: Hallucinate – Massively Multiplayer Online Rave
<a href="https://github.com/stagas/hallucinate" rel="nofollow">https://github.com/stagas/hallucinate</a>
Show HN: Demon – open-source real-time music diffusion engine, 25Hz local GPU
YO,<p>I’m Ryan, lead author. I’ve been contributing open source generative audio stuff for a while now, audio reactive Comfy nodes, extended ACEstep support in Comfy, etc.. I just opened-sourced a new audio project that I've been working on for a few months and I want to tell y'all about it.<p>WHAT IS IS
DEMON: Diffusion Engine for Musical Orchestrated Noise<p>This is StreamDiffusion but with audio instead of images, and ACEStep 1.5 instead of Stable Diffusion. It’s responsive enough that you can play it like an instrument, and remix in near real-time.<p>I also distilled the ACEStep VAE: it’s faster at the expense of some quality.<p>I also trained something like 200 lora/dora for ACEStep 1.5 and 1.5XL: I will release these in batches of 5 or 10 or something<p>WHY IT IS
Two reasons:
1) Making music is an inherently real-time activity
2) Why not bro<p>SOME RUNTIME CAPABILITIES
-Real-time remixing of songs
-Denoise, structure, timbre strength adjustment
-Reference track swapping
-Prompt blending, parameter scheduling with curves
-LoRA hotswapping, runtime strength adjustment
-Latent channel (research preview)
-Feedback
-Vocal stem cutting/pasting with melformer (s/o u/BuffMcBigHuge)
-XL support (its less stable, working out VRAM pressure issues and whatnot)
-Lyrics/vocals SOON
-Spectral quality SOON
-Other stuff<p>SOME LIMITATIONS
-ACEStep (correctly) ‘begins’ and ‘ends’ the song. This system is optimized for remixing either an entire song, or continuously remixing a loop. The loop works fine, but this is not pure, continuous music. Autogression wins here.
-Many others, for a more exhaustive list, please see the full writeup via the project page
-Please let us know if you find any, I would love to try and address them if possible<p>LINKS
My YouTube (DEMON tutorial): <a href="https://youtu.be/FBv1b5gmjcE" rel="nofollow">https://youtu.be/FBv1b5gmjcE</a>
Github: <a href="https://github.com/daydreamlive/DEMON" rel="nofollow">https://github.com/daydreamlive/DEMON</a>
Project page: <a href="https://daydreamlive.github.io/DEMON" rel="nofollow">https://daydreamlive.github.io/DEMON</a>
LoRA: <a href="https://civitai.com/models/2416425/acestep-loras" rel="nofollow">https://civitai.com/models/2416425/acestep-loras</a>
DreamVAE: <a href="https://huggingface.co/daydreamlive/DreamVAE" rel="nofollow">https://huggingface.co/daydreamlive/DreamVAE</a>
Try it w/o installing: <a href="https://music.daydream.live" rel="nofollow">https://music.daydream.live</a>
Show HN: Filemat – an open-source web-based file manager
Hello HN,<p>I would like to share Filemat, a web-based file manager that I built because I wanted something with a simple setup and file permissions that work across the filesystem (as opposed to permissions only for a folder managed by the app).<p>It's self-hosted and open-source (currently in beta).<p>I'd be happy to hear your feedback<p>Repo:
<a href="https://github.com/bingud/filemat" rel="nofollow">https://github.com/bingud/filemat</a>
Show HN: CoreTex – An Open-Source, Unix-like, biomimetic, flat-file AI Harness
Show HN: Open-source Workspace (mail,docs,spreadsheet,drive) web/iOS
Show HN: Open-source Workspace (mail,docs,spreadsheet,drive) web/iOS
Show HN: Open-source Workspace (mail,docs,spreadsheet,drive) web/iOS
Show HN: Posthorn, self-hosted mail gateway
Introducing Posthorn, a self hosted email gateway. One docker container (or Go binary) between every self hosted app on your VPS and your transactional email provider. Set up Posthorn once, point your apps to it, done.<p>I was trying to deploy Ghost on a DigitalOcean droplet and found that DO and many different VPS services have started to block the default SMTP ports to try to combat the various types of abuse they get. To actually configure my app, I had to hack together a Postfix relay.<p>In another project, I had a static site which had a contact form, but my free Formspree account was occasionally hitting usage limits and I desperately wanted some of the anti-spam features they had gated behind their paid accounts so I put together a caddy module to catch HTTP POSTs and bounce them to my provider.<p>I kept bumping into these same email issues. Many of the services I wanted to host (Gitea, Mastodon, Umami, Comentario) ran into the same limitations. This felt like a really common issue that had no good solution.<p>Posthorn is what I built to solve this. It's a small Go binary (or 10 MB docker image) that sits between your self hosted apps and your transactional email provider of choice (shipping with support for Postmark, Resend, Mailgun, Amazon SES or an outbound SMTP relay). It also accepts POSTs from HTML forms to support static site needs while adding security layers such as honeypot fields, origin checks and IP rate limiting. There's also a JSON HTTP API that supports Bearer auth for backend scripts or cron jobs that just want a /send endpoint.<p>I now use this personally in multiple scenarios and I've spent a lot of time beating this up and testing against what I can validate. I'd love to hear how this might be useful for you, what breaks and any feedback you might have. It's open source under Apache 2.0 and I'd love contributions. I'm planning to support and grow this for the long haul.<p>Code: <a href="https://github.com/craigmccaskill/posthorn" rel="nofollow">https://github.com/craigmccaskill/posthorn</a><p>Docs: <a href="https://posthorn.dev/" rel="nofollow">https://posthorn.dev/</a><p>Longer write up: <a href="https://craigmccaskill.com/introducing-posthorn/" rel="nofollow">https://craigmccaskill.com/introducing-posthorn/</a><p>Previous HN discussion on the exact issue I'm trying to solve: <a href="https://news.ycombinator.com/item?id=43620318">https://news.ycombinator.com/item?id=43620318</a>