


Show HN: FeatureFlags.app – Feature Management for .NETFeature flags are common these days, and the .NET feature management library provides a lot of the plumbing to make them easy to get started with. The missing piece is a UI for managing flags - unless you are using Azure App Configuration. Relying on `appSettings.json` gets awkward when non-technical users need to change flags, deploys are slow, or the application is running in a distributed environment.I built FeatureFlags.app to fill that gap - a simple UI for managing .NET feature flags that doesn't require Azure App Configuration. It's still early, so I'd love feedback from anyone who has dealt with feature flags in .NET.
Show HN: Aster, a polyglot monorepo build orchestratorWe built Aster to support our polyglot monorepo 'firstlanding'. At ArchAstro, we use Elixir, Python, TypeScript, Go, and Rust. I wanted something that just orchestrates those tools without Bazel-level complexity. It didn’t exist, so we built it.Aster discovers your existing project files (mix.exs, package.json, Cargo.toml, go.mod, …), builds one graph, and runs targets in order. You can extend it by writing aster.toml files to specify new targets and dependencies or override existing ones. Aster supports a local services runner - it lets you define a set of services to launch with one command and conventions to do this per worktree so each worktree can have it's own private environment. We also use Aster in CI to only build targets that were affected by a particular change.Aster is a core tool we use to increase our productivity with agentic engineering. We took a lot of care in making sure agents can figure out how to use it to run tests, and the services runner lets each agent effect
Show HN: Back up Claude Code sessions from Codespaces to a private repoI prefer to run Claude Code in GitHub Codespaces rather than on my local machine, but there is one problem: Claude Code logs disappear when the remote Codespace is deleted or rebuilt.Logkeeper saves a human-readable conversation log and an age-encrypted copy of the full JSONL to a designated private repository whenever a Claude Code session stops.After creating the private repository, adding the required Codespaces secrets, and adding a small set of hook and configuration files to the project, the backups run automatically.
Launch HN: Context.dev (YC S26) – API to get structured data from any websiteHi Hacker News, I’m Yahia. I built Context.dev (https://www.context.dev/) to make it really easy to integrate web data into your products and agents.Here’s a demo video: https://www.tella.tv/video/build-faster-with-context-dev-api...Since it’s an API, here are the docs: https://docs.context.dev/quickstart.You can send us a URL and get back clean Markdown, rendered HTML, screenshots, extracted images, etc.. You can also send us a domain and get company or brand context: name, description, logos, colors, fonts, social links, screenshots, style information, and related metadata. For more custom use cases, you can send a URL plus a JSON Schema and ask us to extract structured data from the site into that shape. For example, you might ask for pricing plans, product categories, office locations, support links, integration partners, or anything else that is visible on the public site.The goal is to give developers the output they actually want. Raw HTML is rarely the useful thing; the useful
Show HN: Orchestrate parallel Claude Code and Codex agents on a live mapHi HN!I never understood why everybody is fine with (and actually try to copy it multiple times) a single chat interface for ai agents, where you have one conversation on the whole screen. I frequently run many coding agents in parallel (Claude Code, Codex), and after some time I lose the picture of where which subagent is and who spawned whom, which is working and which it not. Agents finish or die quietly and I find out half an hour laterAnd the information about the agents was already sitting on the disk. Every session writes a JSONL transcript under ~/.claude or ~/.codex, every subagent gets its own file. So I built a local web UI that reads these files and shows the selected one as a live chat feed with expandable tool-call cards. There is almost no database and everything runs on 127.0.0.1The hardest part was (still is) the parentage tree. The scanner reads the transcripts, recovers the links and builds one tree per project, from the root conversation down to the last background
Show HN: Autofit2 – End-to-end pipeline for multilingual text classificationHi HN, Stefan here. autofit2 is a project I have been using at my previous company and is now opensourced. It has been used extensively in automated text moderation, but can be applied to any text/document classification task. We had success modeling offensive texts in 20+ languages (cf. github.com/neospe/dataload for all the datasets).It's an integrated pipeline for lightweight multilingual text classification, covering preprocessing, training, and evaluation. It implements SetFit, a few-shot learning technique that works well for low-data regimes (down to a few dozen examples), and offers high throughput on CPUs, since it's based on Sentence Transformers. Dependencies are kept lean, but of course PyTorch itself isn't exactly small.autofit2 takes a base model and a JSON config as input, and outputs a TorchServe model archive as well as a model card. The model card includes any benchmarks you have for your task, self-consistency tests, estimated CO2 emissions of the finetune, as well a
Show HN: Claude Token Analyzer: a token "screen-time" reportEveryone is talking about token spend, but not what we actually spend tokens on. I’ve always found it interesting to track my time across different tasks to challenge whether I was working on the right things.Nowadays, I spend around 95% of my day in the Claude desktop app, so “where did my time/tokens go?” basically means “what did I do in Claude?”*Turns out it’s all already on your disk. Every Claude Code / Cowork session is a JSONL transcript with per-message usage blocks: input, output, cache creation, cache read, and timestamps.Run it from the terminal: curl -fsSL 'https://gist.githubusercontent.com/danmeier2/064f7db8c0867dd6331007ba43f0e6fe/raw/claude-token-analyzer.py' | python3 - Run the snipped to get an overview of what you did and when based on your Cowork and Claude Code history. Example output:Claude Token Analyzer · 2026-06-15 · 5 threads Claude Token Analyzer · 2026-06-15 · 5 threads ╭────────────────┬────────────────┬────────────────┬────────────────╮ │ Spend │ Tokens │
Show HN: I am running 3 coding agents non-stop over the last 3 days. Here is how1. Headless modeHeadless mode allows you to use the AI as a command-line utility for automation and scripting. In Claude Code you run it with the -p flag: claude -p, in codex - exec, opencode - run.2. Ask humanThe traditional communication channel with the operator won't work in headless mode - we need to implement a dedicated tool. Here is an example of how this can be done https://github.com/sermakarevich/claude/tree/main/mcp/ask_hu...3. Tasks queueBeads is a lightweight distributed graph issue tracker for AI agents, powered by Dolt. You can create tasks, define dependencies between tasks, and have status, priorities, hierarchy. Beads helps prevent multiple tasks from being claimed by > 1 worker.4. Worker artifactsWe want to be able to monitor how a worker is doing, at what stage it is, and resume it after a restart. For every task we can create a dedicated folder using the beads task id and put into it what we need. I put there: - plan and status md - knowledge md - events.jsonl - s
Show HN: A minimal, ad-free World Cup web-app for fixtures and live scoresHi all! With the World Cup around the corner, and being a football fan, I went looking for apps that would give me a detailed overview of groups, matches categorized by group or team, a daily timeline of when games happen that day (especially useful for us in Europe, since some games run pretty late), and a way to follow my favorite team or teams. The problem I ran into was that most apps out there are pretty bloated — like, really bloated. The ones that weren't either didn't focus on the World Cup specifically, or were ridden with betting ads and ads in general. So I built a very minimal ad-free (mostly tailored for myself) World Cup web app for fixtures and live scores. The fixture data comes from the openfootball/worldcup.json project - https://github.com/openfootball/worldcup.json. I hope you find it helpful, would love any feedback.
Show HN: Crowdsourced tracker for what each Windows/M365 update breaksSysadmins find out about a broken Windows update three ways: a user ticket the morning after Patch Tuesday, an r/sysadmin thread 48 hours later, or Microsoft's own Known Issues page 1–3 weeks deep. There's no central feed of "this KB broke this thing on this config." Bleeping Computer and AskWoody are the closest, but slow and unstructured.So I built one.What it does: - Pulls posts every 4–6h from r/sysadmin, r/msp, r/Intune, r/ActiveDirectory, r/exchangeserver, r/AZURE via the Reddit JSON API - Pulls RSS from MS Health Dashboard, Bleeping Computer, AskWoody, BornCity, MS Security Blog, and the Windows IT Pro / Intune / Exchange TechCommunity boards - Groups by (primary KB, component) so 12 threads about the same 802.1X bug become one row with 12 source links - Ranks by score + post_count + recency - Optional Thursday digest email via ResendEvery regression row links back to the underlying Reddit/RSS posts — the classifier is not authoritative, the source threads are. If the LLM misrea
Show HN: AptSelect – A local desktop app to test LLMs side-by-sideHi HN,Whenever I needed an LLM to reliably output JSON or follow strict formatting rules, I kept having to write throwaway JavaScript scripts just to test the same prompt against OpenAI, Anthropic, and Google APIs to see who actually followed the instructions. It was a tedious workflow, so I built a local desktop UI to just do it for me.What it does:* Sends one prompt to OpenAI, Anthropic, Mistral, and Google simultaneously so you can compare the outputs in a single grid.* Automatically checkpoints your runs. If you tweak a word and the output gets worse, you can just click back to the previous version.* Exposes raw API responses, latency stats, and token usage instead of hiding them behind a chat UI.* Saves your history to a local SQLite file on your disk.* Keeps your API keys encrypted locally (zero telemetry).Yes, it is built on Electron. I sincerely apologize to your RAM. I tried to mitigate the usual bloat by sticking to vanilla JS and native Web Components, so it idles around ~24
Show HN: Detect Drift in TypeScript codebasesI’ve been building LogicStamp Context, an open-source CLI that analyzes TypeScript codebases using the TypeScript AST and compiles them into deterministic JSON “contracts”.These describe components, props, hooks, routes, API signatures and dependencies in a structured way.The goal is to make codebase structure observable and diffable, especially as codebases grow and change.You can use it to:• detect drift during refactors• generate compact machine-readable context for AI tools• watch mode that detects structural changes while you codeThe latest release also adds git baseline comparison:stamp context compare --baseline git:mainThis generates contracts for both versions and produces a structural diff.There’s also an MCP server (logicstamp-mcp) so agents like Cursor or Claude can query architectural context instead of raw source files.Repo: https://github.com/LogicStamp/logicstamp-contextDocs: https://logicstamp.devCurious how others track structural changes in large TypeScript codebases
Show HN: OpenClix, Agent friendly, open-source retention toolingHi HN,I’m sharing OpenClix, an open source toolkit for running mobile engagement and retention flows directly inside your app.The motivation came from repeatedly seeing the same pattern when teams try to improve retention. They end up stitching together push providers, experimentation tools, analytics pipelines, and backend services just to ship simple onboarding nudges or re engagement reminders. The setup becomes complex very quickly.OpenClix takes a different approach.Instead of a hosted platform or heavy SDK, it provides config driven engagement logic that runs on device. Campaigns and rules live in a simple JSON config and react to app events locally. You can trigger notifications, schedule follow ups, or suppress messages based on user behavior without needing a backend control plane.A few core ideas behind the project:• Local first execution. Engagement logic runs on the device, which removes a lot of infrastructure and latency. • Source vendoring instead of SDK lock in. The cod
Show HN: Local Emulator for Google Cloud WorkflowsGoogle Cloud Workflows has no official emulator. The dev cycle is: edit YAML, deploy to GCP, trigger, check logs. Repeat for every change. I built an open-source emulator in Go that runs locally: docker run -p 8787:8787 -p 8788:8788 \ -v $(pwd)/workflows:/workflows \ -e WORKFLOWS_DIR=/workflows \ ghcr.io/lemonberrylabs/gcw-emulator:latest What it does: - Watches your workflow directory and hot-reloads on save - Full REST and gRPC API compatibility (same endpoints, same request/response format) - Workflow http.* steps call your local services — so you can run your entire orchestration stack on localhost - Parallel execution, subworkflows, try/except/retry, expression engine - Most of the standard library: http, sys, text, json, base64, math, list, map, time, uuid, events, retry - Built-in web UI at /ui for triggering executions and inspecting results - CI-friendly: set WORKFLOWS_EMULATOR_HOST=localhost:8787 in your test env What it doesn't do: googleapis.* connectors (mock them with loc
Show HN: Product Model – A structured grammar for bridging PRDs and codeHi HN,I built Product Model, an open-source MDX-based grammar that gives product specs the same rigor as code — typed blocks, validation, version control, and a JSON AST output.The problem: product intent lives in Google Docs and Notion. Implementation lives in code. Between them there's no structured layer, so requirements drift, edge cases disappear, and "that's not what I meant" becomes the most expensive sentence every sprint.I wanted something more natural than code but more structured than a Google Doc — a format that both humans and AI agents can read, write, and reason about. That's what led me to build this.Product Model lets PMs author .product.mdx files using blocks like Feature, Policy, Logic, Definition, and Constraint. Tooling validates the grammar, checks cross-references, and builds a machine-readable AST. Think of it as a type system for product requirements.It comes with a CLI for validation and builds, and a visual Studio editor so you never have to touch raw MDX if
Show HN: QueryVeil – An AI data analyst that investigates your dataHi HN,I built QueryVeil because I was tired of two things: (1) uploading data to third-party tools, and (2) AI tools that just translate English to one SQL query and call it done.QueryVeil is an AI data analyst that actually investigates. When you ask "why did revenue drop last month?", it doesn't just run one query — it plans an approach, runs multiple queries, self-corrects when it hits errors, and builds a report with its findings. Like a junior analyst who happens to live in your browser tab.Everything runs client-side:- *DuckDB WASM* for SQL execution — your data never leaves your machine - *WebLLM* for local AI (Llama via WebGPU) — no API keys, no server costs - *LangGraph agent* for multi-step investigations with tool useWhat it actually does:- Drop in CSV, Excel, JSON, or Parquet files (or connect to Postgres, MySQL, BigQuery) - Get an instant data brief — row counts, column profiles, anomaly detection, data quality warnings — before you ask anything - Ask questions in plain En
Show HN: Scan your codebase for off-brand copy (open source CLI)hey,built a cli that scans your codebase for off-brand product copy. think eslint but for your brand voice.`npx brandlint`it extracts user-facing strings (jsx text, error messages, placeholders, i18n), checks them against a voice template (professional, casual, technical), and reports issues with file and line number.works with anthropic or openai keys. nothing leaves your machine except the score summary if you choose to share it :)supports ts/tsx, vue, svelte, html, json, yaml, markdown, php, python, and more.would love feedback. what brand voice rules do you usually enforce in your products, if any?
Show HN: ClawGPT – Chat UI with E2E encrypted phone sync, zero dependenciesI built this because the default web UI for my local AI setup (OpenClaw on a Jetson Orin NX) was too bare for daily use. I wanted something I could hack on without dealing with a build toolchain, so the whole thing is plain HTML, CSS, and JavaScript. No React, no npm, no webpack. Open the file, it works.Features that might be interesting to HN:- Edit any message in a conversation (not just the last one), with automatic conversation branching - E2E encrypted phone sync via QR code. X25519 key exchange, XSalsa20-Poly1305 encryption, new keys per session. The relay server only sees ciphertext. Self-hostable. - Voice input with push-to-talk on mobile - Semantic search across all conversations - Per-message model switching - Full export/import of all data as JSON - Agent-readable conversation memory (writes JSONL to disk so AI agents can access chat history)The phone sync was the hardest part. Both devices connect to a relay room, do the key exchange, then verify via shared words displayed
Show HN: Tracecat – Open-source security alert automation / SOAR alternativeHi HN, we are building Tracecat (https://tracecat.com/), an open source automation platform for security alerts. Tracecat automates the tasks a security analyst has to do when responding to a security alert: e.g. contact victims, investigate security logs, report vulnerability.The average security analyst deals with 100 alerts per day. As soon as an alert comes in, you have to investigate and respond. An average alert takes ~30 minutes to analyze (and 100 x 30 min = 50 hours > one whole day) Lots of things get dropped, and this creates vulnerabilities. Many breaches can be traced back to week old alerts that didn’t get properly investigated.Since the risks and costs are so high, top security teams currently pay Splunk SOAR $100,000/year to help automate alert processing. It’s a click-and-drag workflow builder with webhooks, REST API integrations, and JSON processors. A security engineer would use it to build alert automations that look like this: (1) webhook to receive alert (e.g. unus




