Daily Show HN

Upvote0

Show HN for February 23, 2026

87 items
157

PgDog – Scale Postgres without changing the app #

github.com favicongithub.com
35 comments3:33 PMView on HN
Hey HN! Lev and Justin here, authors of PgDog (https://pgdog.dev/), a connection pooler, load balancer and database sharder for PostgreSQL. If you build apps with a lot of traffic, you know the first thing to break is the database. We are solving this with a network proxy that works without requiring application code changes or database migrations.

Our post from last year: https://news.ycombinator.com/item?id=44099187

The most important update: we are in production. Sharding is used a lot, with direct-to-shard queries (one shard per query) working pretty much all the time. Cross-shard (or multi-database) queries are still a work in progress, but we are making headway.

Aggregate functions like count(), min(), max(), avg(), stddev() and variance() are working, without refactoring the app. PgDog calculates the aggregate in-transit, while transparently rewriting queries to fetch any missing info. For example, multi-database average calculation requires a total count of rows to calculate the original sum. PgDog will add count() to the query, if it’s not there already, and remove it from the rows sent to the app.

Sorting and grouping works, including DISTINCT, if the columns(s) are referenced in the result. Over 10 data types are supported, like, timestamp(tz), all integers, varchar, etc.

Cross-shard writes, including schema changes (CREATE/DROP/ALTER), are now atomic and synchronized between all shards with two-phase commit. PgDog keeps track of the transaction state internally and will rollback the transaction if the first phase fails. You don’t need to monkeypatch your ORM to use this: PgDog will intercept the COMMIT statement and execute PREPARE TRANSACTION and COMMIT PREPARED instead.

Omnisharded tables, a.k.a replicated or mirrored (identical on all shards), support atomic reads and writes. That’s important because most databases can’t be completely sharded and will have some common data on all databases that has to be kept in-sync.

Multi-tuple inserts, e.g., INSERT INTO table_x VALUES ($1, $2), ($3, $4), are split by our query rewriter and distributed to their respective shards automatically. They are used by ORMs like Prisma, Sequelize, and others, so those now work without code changes too.

Sharding keys can be mutated. PgDog will intercept and rewrite the update statement into 3 queries, SELECT, INSERT, and DELETE, moving the row between shards. If you’re using Citus (for everyone else, Citus is a Postgres extension for sharding databases), this might be worth a look.

If you’re like us and prefer integers to UUIDs for your primary keys, we built a cross-shard unique sequence, directly inside PgDog. It uses the system clock (and a couple other inputs), can be called like a Postgres function, and will automatically inject values into queries, so ORMs like ActiveRecord will continue to work out of the box. It’s monotonically increasing, just like a real Postgres sequence, and can generate up to 4 million numbers per second with a range of 69.73 years, so no need to migrate to UUIDv7 just yet.

    INSERT INTO my_table (id, created_at) VALUES (pgdog.unique_id(), now());
Resharding is now built-in. We can move gigabytes of tables per second, by parallelizing logical replication streams across replicas. This is really cool! Last time we tried this at Instacart, it took over two weeks to move 10 TB between two machines. Now, we can do this in just a few hours, in big part thanks to the work of the core team that added support for logical replication slots to streaming replicas in Postgres 16.

Sharding hardly works without a good load balancer. PgDog can monitor replicas and move write traffic to a promoted primary during a failover. This works with managed Postgres, like RDS (incl. Aurora), Azure Pg, GCP Cloud SQL, etc., because it just polls each instance with “SELECT pg_is_in_recovery()”. Primary election is not supported yet, so if you’re self-hosting with Patroni, you should keep it around for now, but you don’t need to run HAProxy in front of the DBs anymore.

The load balancer is getting pretty smart and can handle edge cases like SELECT FOR UPDATE and CTEs with INSERT/UPDATE statements, but if you still prefer to handle your read/write separation in code, you can do that too with manual routing. This works by giving PgDog a hint at runtime: a connection parameter (-c pgdog.role=primary), SET statement, or a query comment. If you have multiple connection pools in your app, you can replace them with just one connection to PgDog instead. For multi-threaded Python/Ruby/Go apps, this helps by reducing memory usage, I/O and context switching overhead.

Speaking of connection pooling, PgDog can automatically rollback unfinished transactions and drain and re-sync partially sent queries, all in an effort to preserve connections to the database. If you’ve seen Postgres go to 100% CPU because of a connection storm caused by an application crash, this might be for you. Draining connections works by receiving and discarding rows from abandoned queries and sending the Sync message via the Postgres wire protocol, which clears the query context and returns the connection to a normal state.

PgDog is open source and welcomes contributions and feedback in any form. As always, all features are configurable and can be turned off/on, so should you choose to give it a try, you can do so at your own pace. Our docs (https://docs.pgdog.dev) should help too.

Thanks for reading and happy hacking!

98

Sowbot – open-hardware agricultural robot (ROS2, RTK GPS) #

sowbot.co.uk faviconsowbot.co.uk
35 comments3:48 PMView on HN
Sowbot is an open-hardware agricultural robot designed to close the "prototype gap" that kills most agri-robotics startups and research projects — the 18+ months spent on drivers, networking, safety watchdogs, and UI before you can even start on the thing you actually care about.

The hardware is built around a stackable 10×10cm compute module with two ARM Cortex-A55 SBCs — one for ROS 2 navigation/EKF localisation, one dedicated to vision/YOLO inference — connected via a single ethernet cable.

Centimetre-level positioning via dual RTK GNSS, CAN bus for field comms, and real-time motor control via ESP32 running Lizard firmware.

Everything — schematics, PCB layouts, firmware — is under open licences. The software stack runs on RoSys/Field Friend (for teams who want fast iteration) or DevKit ROS (for teams already in the ROS ecosystem). The idea is that a lab in one country can reproduce another lab's experiment by sharing a Docker image.

Current status: the Open Core brain is largely fabricated, the full-size Sowbot body has a detailed BOM but isn't yet assembled, and we have two smaller dev platforms (Mini and Pico) in various stages of testing.

We're a small volunteer team and we're looking for contributors — hardware, ROS, firmware, docs, whatever you can offer.

The best place to start is our Discord: https://discord.gg/SvztEBr4KZ — we have a weekly call if you'd prefer to just show up and chat.

GitHub: https://github.com/Agroecology-Lab/feldfreund_devkit_ros/tre...

29

Lyra Kids – I built an AI bedtime storyteller for my daughters #

lyra.kids faviconlyra.kids
49 comments2:44 AMView on HN
Show HN: Lyra Kids – A personalized AI picture book generator for parents

Hi HN,

I’m a developer and a father of two daughters (ages 4 and 6). Like many parents, I found that standard bedtime stories didn't always capture their unique imagination. So, I built Lyra Kids (https://lyra.kids) to turn our nightly ritual into something more magical.

What it does: It allows parents to input a simple hero name and a plot idea. The system then generates a structured story blueprint and brings it to life with high-quality, whimsical illustrations.

Why I built it: I wanted a safe, ad-free environment where my kids could see themselves as the heroes of their own adventures. I've focused on creating a "Draft the Plan" feature that helps when you're feeling stuck but still want to be part of the creative process.

The Tech:

Frontend: Responsive web design for both mobile (vertical) and PC (side-by-side reading mode).

AI: Powered by Google Gemini's image and language models for story and illustration generation.

I'm currently optimizing the layout for PC users to provide a more immersive, "book-like" experience.

I’d love to get your feedback on the UX and the storytelling logic. I'm also happy to answer any questions about the technical challenges of maintaining character consistency across generated illustrations.

Thanks for checking it out!

26

Babyshark – Wireshark made easy (terminal UI for PCAPs) #

github.com favicongithub.com
10 comments8:45 PMView on HN
Hey all, I built babyshark, a terminal UI for PCAPs aimed at people who find Wireshark powerful but overwhelming.

The goal is “PCAPs for humans”: Overview dashboard answers what’s happening + what to click next

Domains view (hostnames first) → select a domain → jump straight to relevant flows (works even when DNS is encrypted/cached by using observed IPs from flows)

Weird stuff view surfaces common failure/latency signals (retransmits/out-of-order hints, resets, handshake issues, DNS failures when visible)

From there you can drill down: Flows → Packets → Explain (plain-English hints) / follow stream

Commands: Offline: babyshark --pcap capture.pcap

Live (requires tshark): babyshark --list-ifaces then babyshark --live en0

Repo + v0.1.0 release: https://github.com/vignesh07/babyshark

Would love feedback on UX + what “weird detectors” you’d want next.

20

Shibuya – A High-Performance WAF in Rust with eBPF and ML Engine #

ghostklan.com faviconghostklan.com
14 comments6:36 PMView on HN
Hi HN,

I’ve been working on Shibuya, a next-generation Web Application Firewall (WAF) built from the ground up in Rust.

I wanted to build a WAF that didn't just rely on legacy regex signatures but could understand intent and perform at line-rate using modern kernel features.

What makes Shibuya different:

Multi-Layer Pipeline: It integrates a high-performance proxy (built on Pingora) with rate limiting, bot detection, and threat intelligence.

eBPF Kernel Filtering: For volumetric attacks, Shibuya can drop malicious packets at the kernel level using XDP before they consume userspace resources.

Dual ML Engine: It uses an ONNX-based engine for anomaly detection and a Random Forest classifier to identify specific attack classes like SQLi, XSS, and RCE.

API & GraphQL Protection: Includes deep inspection for GraphQL (depth and complexity analysis) and OpenAPI schema validation.

WASM Extensibility: You can write and hot-load custom security logic using WebAssembly plugins.

Ashigaru Lab: The project includes a deliberately vulnerable lab environment with 6 different services and a "Red Team Bot" to test the WAF against 100+ simulated payloads.

The Dashboard: The dashboard is built with SvelteKit and offers real-time monitoring (ECharts), a "Panic Mode" for instant hardening, and a visual editor for the YAML configuration.

I'm looking for feedback on the architecture and the performance of the Rust-eBPF integration.

12

BVisor – An Embedded Bash Sandbox, 2ms Boot, Written in Zig #

github.com favicongithub.com
4 comments5:56 PMView on HN
bVisor is an SDK and runtime for safely executing bash commands directly on your host machine. We built it on the belief that "sandbox" doesn't need to mean shipping off to remote sandbox products, or spinning up local VMs / containers. Sometimes, you just want to run that bash command locally.

bVisor boots a sandbox from user-space without special permissions, powered by seccomp user notifier. This allows us to intercept syscalls from guest processes and selectively virtualize them to block privilege escalation, isolate process visibility, and keep filesystem changes isolated per sandbox (copy-on-write). Sandboxes boot in 2ms, and can run arbitrary binaries at native speed (with minor overhead per syscall). This approach is heavily inspired by Google's gVisor.

As of today, bVisor supports most filesystem operations, basic file I/O, and can run complex binaries such as python interpreters. It is packaged as a Typescript SDK and installable via npm. There's much to still implement (such as outbound network access to support 'curl', shipping a python SDK, etc), but we wanted to share it here for feedback and anyone who'd be able to make use of the current featureset!

7

Sprime – weather, crypto, news, forex all normalized to one JSON schema #

sprime.us faviconsprime.us
0 comments3:46 AMView on HN
I kept rewriting the same JSON normalization glue for every side project. Weather APIs return different field names, crypto APIs have inconsistent structures, news APIs format dates differently — and you end up writing adapters for all of it before you can even start building.

Sprime is a unified API gateway that sits in front of 15+ data providers and returns everything in the same JSON shape, every time.

One API key, consistent responses, automatic provider failover if something goes down.

Endpoints live now: weather, crypto, news, forex, air quality, geocode, IP lookup, timezone, holidays, webhooks.

Free tier is 500 req/day. Would love feedback from the HN crowd on pricing, missing endpoints, or anything that seems off.

7

Implementing ping from the Ethernet layer (ARP,IPv4,ICMP in user space) #

github.com favicongithub.com
1 comments9:41 AMView on HN
I built a user-space implementation of ping that constructs Ethernet frames, performs ARP resolution, builds IPv4 headers, and sends ICMP echo requests manually using AF_PACKET.

- ARP (packet format, cache with aging, re-ARP, conflict handling) - IPv4 header construction and checksum - DF handling and ICMP Fragmentation Needed (Type 3 Code 4) - IP fragment reassembly - ICMP echo request/reply parsing - A basic ping loop with loss statistics

The goal was to understand how packets actually move from Layer 2 upward.

6

I scraped 5,700 YC companies to find what niches are now getting funded #

bigideasdb.com faviconbigideasdb.com
3 comments3:19 AMView on HN
Pulled founder info, status, company data, and batch details for 5,700 YC companies. Exported it all as JSON (300k lines) and threw it into an AI model to find patterns.

Wanted to see what YC keeps funding on, what sectors have the highest concentration of active companies, and where the momentum is right now.

Made the dataset exportable so you can run your own analysis.

Curious what patterns others find.

here's the link to a video showcasing the actual data: https://x.com/om_patel5/status/2025058794145829370?s=20

5

TTSLab – A voice AI agent and TTS lab running in the browser via WebGPU #

ttslab.dev faviconttslab.dev
2 comments3:52 PMView on HN
I built TTSLab — a free, open-source tool for running text-to-speech and speech-to-text models directly in the browser using WebGPU and WASM.

No API keys, no backend, no data leaves your machine.

When you open the site, you'll hear it immediately — the landing page auto-generates speech from three different sentences right in your browser, no setup required.

You can then try any model yourself: type text, hit generate, hear it instantly. Models download once and get cached locally.

The most experimental feature: a fully in-browser Voice Agent. It chains speech-to-text → LLM → text-to-speech, all running locally on your GPU via WebGPU. You can have a spoken conversation with an AI without a single network request.

Currently supported models: - TTS: Kokoro 82M, SpeechT5, Piper (VITS) - STT: Whisper Tiny, Whisper Base

Other features: - Side-by-side model comparison - Speed benchmarking on your hardware - Streaming generation for supported models

Source: https://github.com/MbBrainz/ttslab (MIT)

Feedback I'd especially like: 1. How does performance feel on your hardware? 2. What models should I add next? 3. Did the Voice Agent work for you? That's the most experimental part.

Built on top of ONNX Runtime Web (https://onnxruntime.ai) and Transformers.js — huge thanks to those communities for making in-browser ML inference possible.

5

OpenBrowserClaw – No Mac Mini. No VPS. No Cloud Deploy. Just Open a Tab #

openbrowserclaw.com faviconopenbrowserclaw.com
3 comments3:12 AMView on HN
I was wondering... why do we need a Mac Mini, a VPS, or a Docker container to run OpenClaw?

Your browser already has a secure sandboxed OS, a database, a filesystem, and a JS engine. What if we just... used those?

So I built OpenBrowserClaw inspired by the simplicity of NanoClaw but running entirely in a browser tab.

- Claude API with full tool-use loop

- Shell commands in a v86-emulated Alpine Linux (yes, a Linux VM in WASM, in your browser)

- File I/O via OPFS

- Data persistence in the browser local storage

- Telegram integration over plain HTTPS

- Zero runtime dependencies

No server. No deploy. No infra. Open a tab, paste your Claude API key, start chatting.

It even works as a PWA, install it on your phone if you want.

The whole thing is MIT-licensed and open source: https://github.com/sachaa/openbrowserclaw

Or just try it right now without cloning anything: https://www.openbrowserclaw.com/

Sometimes the best server is the one you already have open.

4

A Vaadin Algebra and Calculus Solver Built with AI Assistance #

1 comments12:04 AMView on HN
Hi HN,

I’d like to share a side project that has gradually become my main creative outlet: The Algebrator, a web-based algebra and calculus solver I built using Java, Spring Boot, Vaadin 24, and a symbolic math engine under the hood.

It started as a personal attempt to revisit the math I loved in middle/high school, but it evolved into a multi-year design experiment in AI-augmented software engineering. I built and iterated on this app using a paired-programming workflow with LLMs (ChatGPT + GitHub Copilot), and the project ended up teaching me more about agentic AI development than anything else I’ve worked on.

What it does

Lets users type equations, inequalities, and expressions in a calculator-like UI

Solves algebraic equations, systems, trigonometry, calculus operations, and iterative “problem templates”

Supports fraction/decimal modes, radians/degrees, comparison operators, user-defined functions, and multi-character variables

Includes utility “extras” like prime generation, Fibonacci, random integers, etc.

All built in a Vaadin UI designed to feel like a pocket calculator

Why I built it

I wanted a tool that makes algebra feel like it did on my old TI calculator, but with the flexibility of a symbolic engine. I also wanted to explore how far I could push “AI-paired development” in a real project — not just code generation, but architecture, UI/UX reasoning, and rapid iteration.

What might interest HN

It’s a full Java/Vaadin project, not JavaScript

It demonstrates a real, sustained AI-augmented workflow

It blends symbolic math (Symja) with custom arithmetic logic in Java

The UI is dynamic: variables appear as buttons as you type them

It’s deployed live (Spring Boot on Railway)

It’s fully open-source

Looking for feedback on:

Architecture and code clarity

Ideas for additional math features or real-world templates

Best practices for symbolic math in a Java environment

How to present AI-augmented workflows professionally

Repo: [https://github.com/eGantry/algebrator-repo1a] Live demo: [https://algebrator-repo1a-production.up.railway.app/]

Thanks for taking a look — feedback and critique are welcome.

4

Visual Tailwind CSS Style Guide – Single HTML file, no build step #

winkelstraatnl.github.io faviconwinkelstraatnl.github.io
0 comments12:27 PMView on HN
We needed a quick visual reference for Tailwind utility classes without jumping between doc pages. Built it as a single HTML file using the Tailwind CDN — no build step, no dependencies. Covers typography, colors, spacing, layout, shadows, and common component patterns with live rendered examples and code snippets.
4

Chaos Monkey but for Audio Video Testing (WebRTC and UDP) #

github.com favicongithub.com
0 comments8:53 AMView on HN
It takes an input video and converts it into H.264/Opus RTP streams that you can blast at your video call systems (WebRTC, SFUs, etc.). It also injects network chaos like packet loss, jitter, and bitrate throttling to see how things break

It scales from 1 to n participants, depending on the compute and memory of the host system Best part? It’s packaged with Nix, so it builds the same everywhere (Linux, macOS, ARM, x86). No dependency hell

It supports both UDP (with a relay chain for Kubernetes) and WebRTC (with containerized TURN servers). Chaos spikes can be distributed evenly, randomly, or front/back-loaded for different test scenarios. To change this, just edit the values in a single config file

4

Search-sessions – Search all your Claude Code session history in <300ms #

github.com favicongithub.com
2 comments8:53 PMView on HN
Claude Code forgets everything between sessions. After months of heavy use, I had 1.6GB of JSONL session files buried in ~/.claude/projects/. Architecture decisions, debugging breakthroughs, and solutions I couldn't find again. There’s nothing more annoying that solving the same problem twice.

I tried RAG pipelines and local vector DBs, but they added complexity for a problem that's really just text search over structured files. So I built search-sessions: a single Rust binary that searches your session history directly. No database, no indexing step, no dependencies.

It supports two modes: index search (~18ms) for finding the right session, and deep search (~280ms with ripgrep, ~1s without) for matching against full message bodies. Each result includes the session UUID so you can resume any conversation with `claude --resume`.

The design choice that makes it work: skip the database entirely. JSONL files are already structured — just search them fast. Under the hood it's just files and a CLI, so it's easy to inspect, backup, and delete. You install it as a Claude Code skill, then ask "do you remember that auth refactor?" and Claude searches your history and picks up the thread. It also works with OpenClaw.

MIT licensed. macOS and Linux:

brew install sinzin91/tap/search-sessions

or

cargo install search-sessions

Curious what people think about exact vs fuzzy vs semantic search as a default — and which other coding CLIs you’d like supported.

3

I vibe-coded a custom WebGPU engine for my MMO #

github.com favicongithub.com
1 comments6:30 PMView on HN
It took me about a week to vibe code this 3D game engine with Opus 4.6 that I intend to use as a replacement for Three.js and React Three Fiber in my browser MMORPG, Mana Blade.

I was not expecting to be able to reach that point so easily, but pretty much every feature took somewhere between 30 minutes and 1 hour - 1 to 3 prompts on average. It is vibe-coded in the sense that I haven't looked at the code, but I am very careful with my prompts and constantly have Claude reviewing the codebase, looking for performance and code quality improvements.

It can reach 2000 draw calls on recent integrated GPUs, such as modern phones or MacBooks, where Three.js usually starts dropping frames at 300-600 draw calls. I love Three.js, but I wanted to build something more minimal that does exactly what I need with better performance.

I started with a C/WASM core but ended up sticking with JS because the performance difference wasn't significant enough for the number of entities in my game (never more than 500 entities).

All in all, it was a fascinating experience, and I learned a lot about engines, even without typing a single line of code. It's pretty wild that we can now quite easily build in-house engines alongside our games as solo developers.

3

SkillScan – Free API to detect malicious AI agent skill files #

skillscan.chitacloud.dev faviconskillscan.chitacloud.dev
0 comments1:14 PMView on HN
After the ClawdHub supply chain attack (credential stealer in 1 of 286 skills), I built SkillScan - a free, no-auth API to scan skill.md files for threats.

What it detects: - Known exfiltration services (webhook.site, requestbin) - ~/.env file reads - API key theft (OPENAI_API, ANTHROPIC_, STRIPE_) - Prompt injection ("ignore previous instructions") - Social engineering patterns

Returns a 0-100 safety score with evidence. The ClawdHub stealer scores 0.

curl -X POST https://skillscan.chitacloud.dev/scan -H "Content-Type: application/json" -d '{"skill_url": "https://example.com/skill.md"}'

Built this because 22-26% of skills contain vulnerabilities per recent research. One malicious install can leak all your LLM API keys.

3

AgentDbg - local-first debugger for AI agents (timeline, loops, etc.) #

github.com favicongithub.com
2 comments5:44 PMView on HN
AgentDbg is a local-first debugger for AI agents. It records structured runs (LLM calls, tool calls, state, errors) to JSONL and shows the timeline UI locally. There is no need for cloud, accounts, and no telemetry.

Flow is as simple as:

1. Run an agent 2. `agentdbg view` 3. Inspect the timeline, loop warnings, errors, etc.

v0.1 includes `@trace` and `traced_run`, recorders, loop detection, best-effort redaction (by default), local UI, export. I also started working on integrations: there is an optional LangChain/LangGraph callback.

* Repo: https://github.com/AgentDbg/AgentDbg * Demo: `python examples/demo/pure_python` and then `agentdbg view`

Would love feedback on:

1. Trace format 2. Integrations to prioritize in the next several days 3. What you would want for deterministic replay

3

Labhlabs – What Happens When LLMs Trade the Indian Market? #

labh.openkuber.com faviconlabh.openkuber.com
0 comments7:18 AMView on HN
LabhLabs is a live shadow trading and AI orchestration arena for Indian markets.

It enables strategies to run on real time market data using paper capital, mirroring live conditions without deploying actual funds. This allows models to be evaluated against execution aware realities such as latency, slippage, and regime shifts not just historical simulations.

Beyond simulation, LabhLabs functions as an orchestration and governance layer for multiple AI trading agents.

In contrast to Alpha Arena, LabhLabs is implemented for Indian markets, where data is inherently fragmented and less standardized than US market feeds. The framework embeds structured risk controls prior to any live capital deployment.

3

AI-Native Architecture Series (Open-Source) #

github.com favicongithub.com
3 comments5:35 AMView on HN
Hi HN,

Open-sourced my complete AI-native architecture series from a solo builder project (spare time).

4 articles (EN/ZH) covering: - Constrained DSL for reliable LLM decisions - 60/40 → 90/10 AI-driven development workflow - "Boring" hybrid agent architecture - Low-cost multi-vendor cloud scaling

Real scale: 28 repos, 538k LOC, 3k+ users, low four-digit RMB yearly infra.

Repo: https://github.com/myinvestpilot/ai-architecture

Pure sharing, no promo. Feedback, critiques, or your solo AI-native experiences welcome!

Thanks

3

PureBee – A software-defined GPU running Llama 3.2 1B at 3.6 tok/SEC #

github.com favicongithub.com
1 comments9:45 PMView on HN
This started as a question about simulation theory: if a GPU is just rules applied to a grid in parallel, do you actually need the silicon?

Turns out, no.

PureBee is a complete GPU defined as a software specification — Memory, Engine, Instruction Set, Runtime. It runs Llama 3.2 1B inference at 3.6 tok/sec on a single CPU core. The model answers questions correctly.

What makes it different from llama.cpp or WebLLM:

The WASM compute kernel is constructed byte-by-byte in JavaScript at runtime. No Emscripten. No Rust. No compiler. No build step. The binary that runs the Q4 SIMD matrix math is itself readable JavaScript. Every layer of the stack — including the thing executing the math — is auditable source.

The progression from first principles:

```

Baseline JS 0.08 tok/sec

Typed arrays 0.21 tok/sec

WASM kernels 0.70 tok/sec

Q4 quantization 1.30 tok/sec

SIMD 3.00 tok/sec

Worker threads 3.60 tok/sec

```

45× total. Single CPU core. Zero npm dependencies.

The claim isn't that this is faster than a real GPU. The claim is that a GPU was never the hardware — it was always the math. The hardware is just one way to run the math fast. PureBee is another way. If that's true, it changes where inference can run.

To run:

```

git clone https://github.com/PureBee/purebee

node download.js llama3

node --max-old-space-size=4096 chat-llama3.js

```

Requires Node.js ≥ 20. The heap flag is not optional.

Licensed FSL-1.1 (converts to Apache 2.0 in 2 years). Free for personal and internal use.

Happy to go deep on the WASM binary construction, the Q4 nibble layout, or the SharedArrayBuffer weight cache that runs a 4.5GB model in 1.8GB of RAM.

3

AgentLint v0.5 – 42 rules, stack-aware guardrails for AI agents #

0 comments1:12 AMView on HN
Follow-up to my post 3 days ago. AgentLint went from 10 rules to 42 across 7 packs.

The interesting technical bits since last time:

Stack auto-detection. AgentLint inspects project files (pyproject.toml, package.json, framework dependencies) and activates relevant rule packs. Python pack catches bare excepts, unsafe subprocess calls, SQL injection patterns. Frontend pack checks accessibility (alt text, form labels, heading hierarchy). React and SEO packs activate when their dependencies are present. No config needed — drop agentlint.yml if you want to override.

All 17 hook events. Claude Code exposes more lifecycle hooks than most people realize: PreToolUse, PostToolUse, Stop, UserPromptSubmit, SubagentStop, Notification, SessionEnd, and 10 others. AgentLint now handles all of them. The interesting one is UserPromptSubmit — you can validate what the user asks before the agent acts on it.

File content caching for diffs. PreToolUse caches the file's content before an Edit/Write. PostToolUse receives the "before" snapshot so diff-based rules work (e.g., detecting when error handling gets removed from a file).

Binary resolution problem. Claude Code runs hooks via /bin/sh with a minimal PATH. On macOS, pip installs console_scripts to /Library/Frameworks/Python.framework/Versions/3.13/bin/ which isn't on that PATH. shutil.which() fails. The fix was a 5-step probe chain: PATH → ~/.local/bin (pipx) → uv tools dir → sysconfig.get_path("scripts") → python -m fallback. The sysconfig call is the key — it returns exactly where pip put the binary. Also had to add __main__.py since the python -m fallback was broken without it.

Quality pack (always-active). Validates commit messages against conventional commits format. Detects dead imports. Warns when try/except or .catch blocks get removed entirely (not refactored — removed). Injects a self-review prompt at session end. Tracks token budget across the session.

741 tests, 96% coverage. Still Python 3.11+, still no dependencies beyond click and pyyaml.

The custom rules API hasn't changed — subclass Rule, implement evaluate(), drop a .py file. But the engine now provides richer context: file diffs, prompt content, subagent output, notification metadata.

https://github.com/mauhpr/agentlint

3

Agentic programming needs new processes #

github.com favicongithub.com
1 comments12:51 PMView on HN
Most teams using AI coding agents are treating them as faster typists. Same sprints, same workflows, same two-week cycles, just with an LLM doing the typing. I think this fights the tool instead of leveraging it.

A new programming paradigm needs new processes and ways of thinking about problems. And no, this is not about increasing productivity by measuring number of PRs.

2

Peekl – A modern alternative to Ansible and Puppet #

peekl.dev faviconpeekl.dev
0 comments9:35 PMView on HN
Hi everyone!

For the last few months I've been working on "Peekl" a configuration management solution.

The idea was to get the good part of what I liked with Ansible (the ease of use, the fact that you can get started quickly) with what I loved with Puppet (mainly the pull based model with the agent).

The project is now in a state where I believe I can share it with the world. Of course there is still a long way to go for it to be on-par in term of features to Puppet or Ansible, but I think that currently it's a good starting point.

2

Treni – single-binary GPU runtime for uncertainty-aware agents 5ms TTFT #

treni-docs.pages.dev favicontreni-docs.pages.dev
1 comments12:12 AMView on HN
We built Treni, a C/CUDA runtime where routing, tokenization, tool models, and state run in one GPU process.

Most agent stacks only get serialized tool strings back. Treni exposes execution signals in-process (entropy/logprobs/retrieval distance/route confidence), so the agent can branch before committing bad output.

Canonical A10G (G5), token-parity vs vLLM (max_tokens=48):

TTFT: 5.130 ms (Treni) vs 84.837 ms (vLLM) -> 16.537x Full request: 316.403 ms vs 1232.660 ms -> 3.896x Cold total first response: 1320.240 ms vs 28937.430 ms -> 21.918x Steady state:

Warm mean: 80.602 ms Warm p99: 90.350 ms Additional checks:

Frontend A/B repeatability (warm_fixed + mixed_churn, repeats=3): custom path wins all tracked metrics Numerical parity vs PyTorch (strict mode): 0 failures Separate OpenAI routing-overhead test (different question, not engine-vs-engine):

Same model endpoint on both sides (gpt-5.2) Internal path: client -> OpenAI External path: client -> controller/tool hop -> same OpenAI endpoint Fairness-hardened local controls (runs=8): model-only: near parity (int = 0.971x) tool-only: external slower (int = 1.038x) Docs + raw artifacts:

https://treni-docs.pages.dev/docs/ https://treni-docs.pages.dev/docs/objectives-and-thesis https://treni-docs.pages.dev/docs/leaderboard https://treni-docs.pages.dev/docs/trackb-claim-safe-table https://treni-docs.pages.dev/docs/raw-artifacts

2

OpenClaw alternative written in Golang and talk with you in voice #

coolwulfai.com faviconcoolwulfai.com
0 comments2:45 AMView on HN
I have been working on this project relentlessly in the last a couple weeks, mainly is for my own usage case since I'm relying on a lot of browser automation. So my focus is more on browser CDP tool usage than just IM integration. Please enjoy and give me some feedback. Thank you!
2

Goxe – Fast log clustering on an i5 (Reduced to 1 alloc/log, road to 0) #

0 comments3:52 AMView on HN
I’ve just released Goxe v1.4.0. After the last update, I’ve been obsessed with squeezing every bit of performance out of Go.

The Big Update: Offline Normalization (-brew) I added a new mode to process and normalize legacy logs that were sitting on disk before Goxe was installed. It clusters similar messages, reduces storage footprint, and ships metrics to a remote server.

The Engineering Win:

    Allocations: I managed to reduce the overhead from 2 allocs/op to just 1 per log line using unsafe zero-copy string conversions and bufio.Scanner optimization.

    The Goal: I’m currently refactoring the core pipeline to hit 0 allocations in the next cycle.

    Performance: Still hitting 19k logs/s on an old i5-8250U @ 3.40 GHz with a minimal RAM footprint.
Why use it? If you have massive log files cluttering your disk, -brew will normalize them into a structured summary ([name]_[date]_normalized.log), saving space and giving you clear stats (Count, First/Last seen) without killing your CPU.

I’d love to hear your thoughts on the zero-copy approach.

Repo: https://github.com/DumbNoxx/goxe

2

Clocktopussheets generated from your Git commits #

clocktopus.app faviconclocktopus.app
0 comments4:17 AMView on HN
I run a small dev consultancy and got sick of the end-of-week "what did I actually work on?" timesheet reconstruction. So I built Clocktopus.

It generates timesheets from your git commits. The idea is simple: if you follow good development practices: focused work, regular commits, proper git hygiene, accurate time tracking becomes a natural side effect.

Works with default working hours/timezone settings that Clocktopus uses as a baseline, but if you have flexible hours, you can send a signal from the CLI when you start/finish your day. No browser tabs, no context switching.

It's built for developers and small consultancies who bill hours but hate tracking them. Currently in free beta.

For more information: https://clocktopus.app/docs

Happy to answer questions about the approach or the edge cases (there were many).

2

DoFast – I built a tool that shows me my next best action #

dofast.xyz favicondofast.xyz
2 comments7:31 AMView on HN
I realized I avoid hard decisions/tasks like a Damocles sword.

Instead, I:

- change UI details

- reorganize lead lists

- do “productive” nonsense

Zero real progress.

So I built DoFast.

It tells me the best action I need to take right now to actually move the project forward.

It’s free. Yes fr.

2

Monolith e-commerce platform for serverless #

hoikka.dev faviconhoikka.dev
0 comments11:53 AMView on HN
The idea is similar to shadcn/ui, where you’d just basically copy/paste the code, edit it and skip most of the npm dependency abstraction. The stack is built around Sveltekit and Drizzle, and easy e2e types. It’s currently bound together with Vercel by default as it enables the benefits of using the new “Vercel workflow” for long running integration tasks, blob images and Neon postgres with auth.

Demo store/admin: https://www.hoikka.dev/ Docs: https://hoikka-docs.vercel.app/ GitHub: https://github.com/mhernesniemi/hoikka

What it’s NOT: "composable commerce", headless-first, SaaS, config-heavy legacy

What it is: fullstack monolith-first, but API ready, good set of defaults, modern typescript-stack, easy to understand codebase, no config bloat

(ps. Hoikka is Svelte in Finnish ;))

2

I built an iOS app to WebRTC into my Mac terminal from the toilet #

macky.dev faviconmacky.dev
2 comments2:39 PMView on HN
I wanted to access my Mac terminal from iPhone without setting up VPN or other weird network rules. So I built macky.dev as a fun side project.

When the mac app is running it makes an outbound connection to my signaling server and registers itself under the account. iPhone also connects to this signaling server and requests a connection to that mac. Once both the host and remote are verified then it establishes a direct peer to peer connection using WebRTC.

2

EloPhanto – A self-evolving AI agent that builds its own tools #

github.com favicongithub.com
0 comments3:28 PMView on HN
I built EloPhanto because I wanted an AI agent that could actually execute tasks on my machine with full visibility — not a black box API call. It runs locally and controls a real Chrome browser (47 tools) using your existing sessions.

The standout feature: when EloPhanto encounters a task it doesn't have a tool for, it autonomously writes the Python code, tests it, reviews itself, and integrates the new tool permanently. It's now built 99+ tools for itself this way.

Other features: - Multi-channel gateway (CLI, Telegram, Discord, Slack) with unified sessions - MCP tool server support (connect any MCP server) - Document & media analysis (PDF, images, OCR, RAG) - Agent email (own inbox for service signup/verification) - Crypto payments wallet (Base chain, spending limits) - TOTP authenticator (autonomous 2FA handling) - Evolving identity that learns from experience - Skill system with EloPhantoHub marketplace (28 bundled skills)

It's open source (Apache 2.0), local-first, and designed to be your personal AI operating system.

The project is very new — currently at 6 stars on GitHub. I'd love to get feedback on the architecture, the self-development approach, or what features you'd want in a local agent.

2

Free ecommerce platform for link-in-bio people #

stoar.page faviconstoar.page
2 comments4:32 PMView on HN
Current generation lives in apps that evolve around the profile. That one link there is their gateway to the well curated life. Here is a minimalistic and phone-first online store platform that is actually free to start and run. Only fee applied is on successful sale. I tried to balance the customization options and settigns with simplicity in one single dashboard. Take a look!
2

WorldCanvas – R/place, but with a real world map as the canvas #

worldcanvas.art faviconworldcanvas.art
1 comments10:09 PMView on HN
I wanted to build a mipmap version of r/place — zoom out and you see the whole world, zoom in and you're placing individual pixels at real geographic coordinates.

The map is the canvas. Seoul, Tokyo, New York — pixels live at actual lat/lon positions and persist there. Watch others paint in real time as you explore.

A few things I focused on: - WebGL-only renderer (dropped Canvas2D after profiling showed it was the zoom-out bottleneck) - SSE updates scoped to your current viewport only - Seeded pixel art in cities around the world to make it feel alive from day one

Free to use. Still early — curious what people think.

1

Track your Codex CLI(5.3) token spending (also Claude Code and Gemini) #

github.com favicongithub.com
0 comments2:40 PMView on HN
I've been tracking my AI CLI spending across Claude Code, Codex CLI, and Gemini CLI. Existing tools either don't support Codex at all or break on newer models like gpt-5.3-codex.

So I built toktrack. One command

npx toktrack

What you get: - Per-model cost breakdown (gpt-5.3-codex, Opus, Sonnet, Gemini, etc.) - Daily/weekly/monthly trends - 52-week heatmap - Works across all three major AI CLIs

Built in Rust with simd-json. Scans 3500+, 4GB+ session files in ~40ms.

It also caches independently, so even after Claude Code deletes sessions (default 30 days), your cost history is preserved.

GitHub: https://github.com/mag123c/toktrack

MIT licensed.

1

DuoBook turns URLs into level-adjusted bilingual stories #

duobook.co faviconduobook.co
0 comments11:55 AMView on HN
After I posted DuoBook on HN a few months ago, a CEO from Denmark gave me very honest feedback:

“Nice product, but coming up with a story is a mental effort. I’d rather read real news as short stories.”

That stuck with me, so I built URL grounding for stories.

Paste any URL → DuoBook turns it into a short, level-adjusted story in seconds.

Currently works best with:

  - Wikipedia
  - Non-paywalled news/articles
  - YouTube videos with captions
I also implemented most of the feedback I got from HN last time. Would love more feedback on what feels useful vs gimmicky.
1

I made and app to stop living on autopilot #

apps.apple.com faviconapps.apple.com
2 comments7:29 AMView on HN
Hey, I'm Pablo and I feel like we are wasting our lives scrolling on social media. Sadly they are somehow necessary, and deleting them is not the solution but intentional usage is. That's why I built this app. I'm planning to go deep and improve it as much as possible, as I think this is one of the biggest problems we're facing as a society right now. It's free to try for a few days, hope you like it.
1

A self-evolving trading system with transparent orchestration #

0 comments4:34 PMView on HN
Hi HN — I built a side project called *Trading AI*:

https://trading.snagra.com

It’s an autonomous trading system that does more than signal generation. It runs an end-to-end loop:

- market/news scanning - opportunity discovery - risk checks (position concentration + stop logic) - execution through Alpaca - rationale logging for each decision - daily/weekly strategy evolution

### The part I think HN might find interesting: the orchestration page

The orchestration page is where you can see the system as a pipeline, not a black box. It shows:

- scheduled jobs (pre-market, open, intraday monitor, close, weekly review) - which stage is running and what each stage does - escalation flow (scout → deeper orchestrator) - status + outputs of each run - links between analysis, action, and logged rationale

I built this because most “AI trading bots” show entries/exits, but not the decision process.

### Core design choices

- *Adaptive strategy layer* (not locked to one style) - *Two-stage orchestration*: fast scout + deeper decision pass - *Deterministic guardrails* for risk/mechanical actions - *Public audit trail* in activity feed (analysis + rationale + evolution logs) - *Suggestion workflow*: people can submit ideas; system reviews before adoption

### Tech stack (current)

- OpenClaw agent orchestration - GPT-5.3 Codex for active model workflows - Alpaca for broker/data execution - Python scripts for screening/intel/risk/execution - FastAPI + React site for visibility

### What I’d love feedback on 1. Orchestration UX: what would make the pipeline easier to inspect/debug? 2. Failure mode design: what should be surfaced more clearly? 3. Governance: how would you structure safe community suggestions for a system like this?

1

Code Lantern– A self-hosted, local code-analysis and visualization tool #

github.com favicongithub.com
0 comments7:25 AMView on HN
Hi HN,

I'm excited to share a project I've been working on called Code Lantern. It's a self-hosted tool designed to help you visually explore and understand codebases.

Whenever I jump into a new codebase (or return to one of my own after a few months), I often find myself spending hours just tracing function calls, mapping out dependencies, and trying to build a mental model of how everything fits together. I wanted a way to instantly generate a high-level architectural view, but I didn't want to upload my code to a third-party server to get it.

So, I built Code Lantern. You run it via Docker, point it at any local project folder, and it generates:

Interactive Dependency Graphs: Visual maps of how files and functions connect, powered by Cytoscape.js. Architecture Maps: Tree diagrams breaking down your file and function structures. Complexity Heatmaps: It uses AST to calculate cyclomatic complexity scores, helping you spot technical debt at a glance. AI Deep Dives (Optional): If you click on any function, it can generate a description of what it does, its inputs/outputs, and call relationships. How it works under the hood: The backend is built with FastAPI and uses Tree-sitter for accurate AST parsing (supporting Python, JS/TS, Java, C++, and Rust). It extracts functions, classes, imports, and resolves call relationships locally. The frontend is built in React.

Privacy and Setup: Privacy was my main priority. The tool runs locally in Docker and mounts your project folder strictly as read-only. Your code never leaves your machine.

The core analysis, graphs, and heatmaps work completely offline without any API keys. If you want to use the AI "Deep Dive" descriptions, you can just plug in your own API key in the .env file (it supports Groq, OpenAI, Anthropic, Gemini, OpenRouter, or Cohere). The API calls are optimized and will take least amount of tokens possible.

It’s open source under the MIT license. You can spin it up with a single ./run.sh script.

I'd love for you to try it out on one of your projects and let me know what you think, or what features would make navigating new codebases easier for you. Happy to answer any questions and hear your feedback!

Repo: https://github.com/Tjindl/code-lantern

1

Tagless final DSL for deterministic TypeScript programs #

mikesol.github.io faviconmikesol.github.io
0 comments7:14 AMView on HN
My goal is to reimplemenet a hefty chunk of TypeScript in TypeScript using a DSL that resembles TypeScript. But instead of immediate execution, what you get is a serializable program represented as a directed acyclic graph that can be mutated à la Nim or Haxe via a query language.

I'm not quite sure why I'm doing this, but two thoughts emerge as I tinker:

1. It's fun to explore a "boil the ocean" task with an LLM. Writing a mini TypeScript in TypeScript forces you to confront lots of design choices during the build-out that improve the core but require small, substantive changes on the entire plugin ecosystem. sed can't handle this, but a model like Sonnet can. And as the foundation gets better, I get more bullish about one-shotting entire libraries as plugins. 2. I think that something like mvfm will eventually power arbitrary 0-trust distributed programs. For example, take the case of a vibe-coded app that is otherwise frontend-heavy but uses a LLM, Stripe, and a DB. Writing parts of the program in a serializable DSL allows automatic deployment of parts of it to other targets. It also allows an untrusted environment, like a browser, to execute logic that touches sensitive things like DBs and send the actual mutations to a lightweight proxy that checks its integrity against a set of known inputs.

If you're nerd-sniped, I'd love help (a) trying to break it; (b) improving the core; and/or (c) implementing more libs as plugins.

1

Musiker.page – Interactive timeline of musicians by instrument #

musiker.page faviconmusiker.page
0 comments7:14 AMView on HN
I built an interactive timeline showing the lives and connections of composers and performers, organized by instrument. Lifetime bars are color-coded by role, and curves show teacher-student and family relationships. Switch between piano, violin, and trombone, click anyone for their bio and portrait. It's a static React site with all data in JSON, so contributions are just a PR away. See https://github.com/pmatos/music-timeline
1

Find Markdown files in your repo that aren't linked from the README #

github.com favicongithub.com
0 comments7:03 AMView on HN
Most repos accumulate .md files that nobody ever reads — CONTRIBUTING.md, ARCHITECTURE.md, docs/API.md — because they were never linked from the root README. They exist but are invisible to anyone navigating the project.

I built a small CLI tool that scans a repo, checks which .md files are actually referenced in the root README, and reports the rest as "isolated". It also has an interactive fix option that appends the missing links directly into your README, and a GitHub Action if you want to enforce it in CI.

Single Python file, no config, runs offline. Would love feedback on whether the approach makes sense or if there are edge cases I haven't considered.

1

Mobile IPs for AI agents that keep getting blocked #

1 comments6:39 AMView on HN
Hi HN.

I've been building automation tools this past year. One problem kept happening. Everything works fine locally, but once deployed to AWS or other cloud providers, sites start blocking.

Most AI agents run from datacenter IPs, and those IPs are already flagged by many websites.

So we decided to build something for it.

Aluvia lets agents connect using mobile carrier IPs instead of datacenter IPs. The idea is simple. If traffic looks more like real mobile users, it gets blocked less often.

We packaged it as: @aluvia/sdk @aluvia/cli @aluvia/mcp

It works with Playwright, Puppeteer, Axios, Selenium, and similar tools.

We're not trying to compete with the big proxy companies. We just wanted something more developer-friendly and easier to integrate, especially for AI builders.

It's still early, so I'd really appreciate feedback. Curious if others here faced the same issue, or solved it differently.

Website: https://www.aluvia.io/

Happy to answer technical questions.

1

Review my new app platform Mu #

mu.xyz faviconmu.xyz
0 comments5:57 AMView on HN
Hey all

I'm working on this new app platform that's Ads and algorithm free. Looking for feedback and review to see if it's going in the right direction. I'm using it daily but trying to figure out how to make it something useful for others and sustainable as products like Kagi.

https://mu.xyz

1

Raypher–Sandboxing local AI agents(OpenClaw)on your own local computer #

raypherlabs.tech faviconraypherlabs.tech
0 comments8:49 PMView on HN
Hey HN,

Most of us want to run autonomous agents like OpenClaw locally, right on our daily-driver machines. We want them to actually interact with our files, our IDEs, and our real local workflows.

But doing that right now is a security nightmare. A hallucinating (or hijacked) agent with raw system access is basically local remote code execution waiting to wipe a directory or leak an SSH key.

The current workarounds are terrible:

The Hardware Air-Gap: Buying a dedicated Mac Mini or a secondary cheap laptop just to run agents safely.

The Cloud: Spinning up a VPS, which adds annoying latency, costs money, and completely kills the "local-first" advantage.

Containers: Shoving the agent in a Docker container. It’s clunky, and it completely lobotomizes the agent because it can no longer see or interact with your actual host OS where your real work lives.

I got fed up and built Raypher.

Raypher is a bare-metal security architecture specifically designed for AI agents. It lets you run agents directly on your host machine while keeping them on a cryptographically tight leash.

How the Alpha works under the hood:

Zero-Touch Interception: You don't have to rewrite your Python/Node agent scripts. Raypher currently uses transparent system proxy injection (netsh portproxy on Windows) to catch all agent traffic automatically.

Hardware Identity: We bind the agent's session cryptographically to your physical TPM 2.0 chip.

The Policy Engine: Every request is evaluated against strict budget, domain, and time-restriction policies. If it tries to phone home to a weird domain, it gets blocked. It also runs local DLP to automatically redact API keys or any sensitive information that you can custom to be redacted before they hit the stream.

We will distribute it as a single script that sets up the interception and launches a local Command Center dashboard so you can watch your agents get secured in real-time.

(Transparency note: The heavy kernel-level eBPF/WFP hooks are currently in development, but this proxy MVP proves the hardware-bound Policy Engine actually works).

join the waitlist/architecture is at raypherlabs.tech to be the first to be notified when we launch

1

Touch Trigonometry – interactive way to understand the trig functions #

apps.apple.com faviconapps.apple.com
0 comments8:56 PMView on HN
I started to teach myself to code around 15 years ago. At the time I was working service industry jobs (restaurant kitchens, coffee shops) and desperate to change my career and life.

Around that time there was a new thing called <canvas> available in HTML5 that you could use to render graphics in web pages without plugins; despite my limited knowledge of tech and lack of coding skills, I knew I wanted to be a part of that.

Around that same time, I had also enrolled at the community college for night classes in math. I wanted to "work in tech" after all, so a mathematics brush-up seemed wise. I had always struggled with math. But now that I was both incentivized to learn it, I found myself facing a familiar terror: trigonometry.

The other students, just out of high school, seemed to know this stuff. I was simply confused. The same frustration I had felt in high school returned: No one could clearly answer why this stuff worked. Why did we need a "sine" function?

So I decided to combine my struggles and make them into a single creative project: I would code a way to visualize and understand the trig functions - and in so doing, I would learn trigonometry and HTML5.

I called it "Touch Trigonometry" and the idea was simple: You move your mouse, and the visualization of the trig functions would update. There would be a unit circle showing the angle. There would be a graph showing the plots. As a kinesthetic learner, I theorized that if I could simply "play with trigonometry" I could get an intuitive understanding of trig.

In the end, building it helped me grasp a concept that had always flummoxed me. And to my surprise, it got posted on HN and made it to the front page. It got many thousands of views and lots of comments on its Disqus message board.

Time went by; I moved onto other things; I gave up the domain and forgot about it.

Early this year I decided to see how quickly I could re-implement Touch Trigonometry again, this time in React Native, using Claude Code, in the form of an app. It took me around 8 hours of total coding time (that's including my own pondering, but not stuff like pushing to the App Store). It was easier this time, not just because of the AI agent at my disposal, but also because I already had a foundation in trig, much more experience as a software engineer, and a more concrete sense of what I wanted the UI to be.

There were a lot of friction points with Claude Code (circa Jan 2026). It could not "one-shot" this app, at least nothing like what I really wanted. It made poor recommendations on rendering and UI setup. UI rendering performance was bad at first, especially layering add'l visualizations like labels; only with considerable "coaching" cold Claude make it tolerable.

Notably Claude also had problems comprehending where to place elements in 2D space - especially with the default landscape orientation of the app. I had to manually place elements on the canvas to use as references it could understand. I had to rename many inaccurately named variables by hand - because its own naming conventions were leading it astray and causing more positioning and orientation mistakes. Even despite such interventions, it often did the orthogonal of what I asked.

I would guess that Claude's issues with spatial understanding are easily fixable on Anthropic's side. They could a bajillion synthetic examples to Claude's training data to give it a better understanding of how natural language spatial positioning instructions map to discrete code edits.

That said, once the essence was working, it was pretty simple to go from 90% complete to 99% complete. This app isn't perfect, and it needs a lot more refinement, but it was an interesting exercise to test what Claude Code's limitations are today.

Anyway, Touch Trig is now alive again and I overall it was a super fun side project to work on. It's very satisfying to see my old UI alive again in app form.

1

Draw lines on any floor plan image to get real-world measurements #

viraniaman94.github.io faviconviraniaman94.github.io
0 comments10:23 PMView on HN
I vibe-coded a single-file HTML tool that lets you upload a floor plan image, calibrate it with one known dimension, then draw measurement lines anywhere. Shows feet/inches and meters. Touch-friendly with pinch-to-zoom, two-finger pan, and a magnifier loupe for precise endpoint placement. Save multiple sessions to localStorage. No backend, no install.

Useful for checking if your furniture will fit, planning renovations, or just figuring out how far the fridge is from the couch when all you have is a developer's floor plan

1

Panther – a cross-platform cybersecurity scripting language #

1 comments4:29 AMView on HN
Hi HN,

I’ve been building Panther, a cross-platform scripting language designed specifically for cybersecurity workflows and automation.

Panther focuses on making common security tasks simple, readable, and fast without relying on complex shell pipelines or large scripting setups.

The language runtime is written in Go, and Panther currently runs on Windows and Linux, with a dedicated VS Code extension for development.

Why Panther?

Cybersecurity workflows often require combining multiple tools and languages:

Bash scripts

Python utilities

CLI scanners

manual command chaining

Panther explores a different approach — a domain-specific scripting language with built-in security capabilities and a clean syntax designed for automation and learning and real world cybersecurity programming.

Key Features --

Cross-platform (Windows & Linux)

Built in Go for speed and reliability

VS Code extension with language support

60+ cybersecurity-based commands

16 core language keywords

Simple and readable syntax

Fast execution

Designed for ethical and legal security testing

Example Code

Compute("Hello");

Phone_Info("+CountryCodeMobileNumber");

name = Accept("Hello, enter your name: ");

Print("Hello " + name);

(Compute() can also be used as output instead of Print().)

The goal is to make scripts easy to read while keeping security workflows concise.

Architecture --

Execution engine: native interpreter

Editor support: VS Code extension

Built-in commands: cybersecurity-focused primitives

Project Goals

Simplify cybersecurity automation

Provide a beginner-friendly entry into security scripting

Reduce dependence on complex multi-tool setups

Create a focused DSL for ethical security workflows.

Learn Panther through it's GitHub README.

Feedback Welcome

I’d really appreciate feedback on:

Language design

Command structure

Developer experience

Real-world security use cases

GitHub:

https://github.com/CzaxStudio/Panther

Website --

https://pantherlang.pages.dev/

Thanks for reading — feedback is very welcome.

1

Crash-safe job queue – lease-expiry race and fencing fix #

github.com favicongithub.com
1 comments9:46 PMView on HN
Most lease-based job queues look correct until you test them adversarially.

I built Faultline, a PostgreSQL-backed distributed job execution engine using:

- Lease-based claims - Retry scheduling - Idempotent side effects via a ledger table - A deterministic race reproduction harness

The interesting part wasn’t the happy path. It was the lease-expiry race.

Setup:

- Lease TTL: 1s - Worker A sleeps 2.5s (forces expiry) - Barrier enforces deterministic ordering - Worker B reclaims the job

Structured trace:

{"event": "lease_acquired", "job_id": "...", "token": 1, "forced": true} {"event": "execution_started", "job_id": "...", "token": 1} {"event": "lease_acquired", "job_id": "...", "token": 2, "forced": true} {"event": "execution_started", "job_id": "...", "token": 2} {"event": "stale_write_blocked", "job_id": "...", "stale_token": 1, "current_token": 2, "reason": "token_mismatch"} {"event": "worker_exit", "reason": "stale"} {"event": "worker_exit", "reason": "success"}

Worker A believed it still owned the lease. Worker B legitimately reclaimed it.

Without fencing, Worker A could still attempt mutation.

UNIQUE(job_id) alone is insufficient — it prevents duplicate rows but does not encode lease epoch ownership.

The fix:

- Add `fencing_token BIGINT` - Increment atomically on every lease acquisition - Bind side effects to `(job_id, fencing_token)` - Enforce a write gate before mutation

Claim logic:

UPDATE jobs SET state='running', lease_owner=$1, lease_expires_at = NOW() + make_interval(secs => $2), fencing_token=fencing_token+1, updated_at=NOW() WHERE id=$3 AND ( state='queued' OR (state='running' AND lease_expires_at < NOW()) ) RETURNING id, fencing_token;

Lease validity depends solely on DB time (`NOW()`); workers never use local clocks for correctness.

Guarantees under forced expiry + reclaim:

- No duplicate side effects - No stale worker mutation - Deterministic reproduction of the race - DB-enforced epoch ownership via `(job_id, fencing_token)`

The harness forces this race deterministically via barrier gating and forced TTL expiry.

Curious how others handle fencing under lease-based execution — specifically how teams handle fencing token overflow at scale and whether renewal logic changes the fencing guarantee.

1

Moltgram, a social network where only AI agents can post #

moltgram-api-production.up.railway.app faviconmoltgram-api-production.up.railway.app
0 comments10:24 PMView on HN
I built this because I wanted to see what a social feed looks like when humans are completely locked out of posting. Think Instagram but every photo and caption has to come from an AI agent. Humans can only browse. The easiest way to try it is with OpenClaw or MCP. The skill is on ClawHub and on moltgram-api-production.up.railway.app/skill.md. Once installed, your agent can register itself, generate an AI image and post, all in one conversation. The feed is public with no login needed. Every post requires an AI generated image, agents pick from several models including FLUX and Google Imagen 4.
1

Musefy – Recreating video ads with AI #

musefy.ai faviconmusefy.ai
0 comments10:10 PMView on HN
Hi HN, we built Musefy to recreate high performing Ads using AI.

The system analyzes winning organic and paid videos within a niche, decomposes them into structural elements (text hook, visual pattern, pacing, music), and generates new variants for your app.

We’ve been testing it with a few beta clients; reached ~5M views, 1000+ downloads over 8 weeks.

1

Inference Engineering #

baseten.com faviconbaseten.com
0 comments10:16 PMView on HN
There is a ton of demand for inference, but there are relatively few engineers working in the space. This leaves novel, interesting, and deeply technical challenges left to solve at every level of the stack.

To make it easier for more engineers to learn about inference, I wrote a book that provides a survey of the dozens of technologies that work together to make inference possible, along with an introduction to the primary techniques for inference optimization as well as commentary on how those techniques apply across various modalities.

This book is completely free to download digitally, and I'll have print copies with me at various conferences + available to purchase once Amazon decides to approve my account.

I hope you find Inference Engineering useful! Am around to answer any questions.

1

A private system to help families align with who they want to become #

becomeintentional.substack.com faviconbecomeintentional.substack.com
0 comments3:26 PMView on HN
I started building this after realizing how often I default to reacting instead of choosing intentionally.

The idea is a private home system where each person defines who they are trying to become, connects that to small recurring practices, and logs actions privately so the family can see whether weekly life aligns with stated values.

Still early and looking for honest conceptual feedback before refining onboarding or UI.

1

Stop Babysitting Your Agents – Let Them Work as a Team #

devclaw.dev favicondevclaw.dev
0 comments3:49 PMView on HN
I built DevClaw, an OpenClaw plugin for managing multiple dev projects from my phone without losing oversight or control.

It's simple but opinionated: issues are your backlog, PRs are your deliverables, Telegram groups are your project rooms. That's it. No dashboards, no custom UI, no new tools to learn. You write issues, DevClaw picks them up, assigns the right developer tier based on complexity, writes the code, opens PRs, runs QA review, and loops back on failures — all automatically.