Show HN: Is It Greg?
<a href="https://news.ycombinator.com/item?id=49690943">Comments</a>
<a href="https://news.ycombinator.com/item?id=49690943">Comments</a>
<a href="https://news.ycombinator.com/item?id=49690260">Comments</a>
# Nano Banana 2 Lite, Revisited: MCP 2.0, the New Interactions API, and Three Agent CLIsIt was 3:17 AM on a Tuesday when the PagerDuty alert fired for the third time that week. Our production pipeline had degraded into a soup of 400 Bad Request errors from Google's Interactions API, an MCP server eating 6 GB of RAM on an 8
The Model Context Protocol (MCP) BoomAnthropic's MCP has officially become the universal standard for connecting AI agents to real-world tools. Whether you're building a file-system reader, a SQL query executor, or a Slack bot, you need to define an MCP Server.But writing the exact JSON schema for ools, along with the callTool handlers, is tedious and prone to syntax errors. The Visual MCP GeneratorTo solve this, we just released the MCP Server Schema & Code Generator on OmniToo
I built an email scorer in one HTML file with zero dependencies. Here is every threshold and where it came from.I write about B2B sales for a living, which means I read a lot of cold emails and a lot of advice about cold emails. The advice is almost always unfalsifiable. "Keep it short." How short? "Be personal." Measured how?So I turned the advice into numbers and put the numbers in a file. One index.html, about 220 lines, no framework, no build step, no API call. You paste a subject line
A component that works in a React app doesn't automatically work when you reuse it elsewhere in the React ecosystem. I moved a design-system layout component from a React app into a Next project and it broke. The problem wasn't that Next couldn't render the component; it was that the component assumed a particular ownership and composition model. That assumption affected its accessibility too. The component and its contractThe component was a layout component. It provided a skip link, a hea
<a href="https://news.ycombinator.com/item?id=49689048">Comments</a>
Orchestrating Real-Time Sports Data PipelinesRunning a scraper inside a scheduled cron job is only ten percent of a production data engineering workflow. The real complexity lies in what happens downstream: moving that data into your analytical tools, warehouse, or automated workflows without missing updates or processing the same records twice. When working with high-volume sports data, your ingestion pipeline must be idempotent, resilient to network timeouts, and structured to handle sta
A 100 in PageSpeed Insights is one of the very few numbers in this job you can chase to a literal maximum, which is exactly why people chase it. It is a score, not a feeling, and getting it forces real fixes.It is also a lab score: one simulated load, on a fixed device and network profile, run once. Two of the three things that most determine whether a site feels fast to a real person are not in it at all. Here is what the number is made of, and what it never sees. What the 100 points are a
Looking for a free internship/mentorship opportunity.Hi everyone! I'm Monicah, a frontend and WordPress developer based in Nairobi, Kenya. I've worked on real client projects (custom WordPress builds, a full site design for an online learning platform, and website audits), and I'm currently deepening my fundamentals through The Odin Project.I'm looking for a free internship or mentorship opportunity where I can learn the ropes of working on a real team — code reviews, git workflows, collaboratin
<p>The original filebrowser (github.com/filebrowser/filebrowser) has been archived for a while now, and Nextcloud is way too bloated for just browsing and sharing files on a disk.</p><p>So I made my own replacement. It's still early so expect some rough edges and bugs, but I've been daily-driving it on my setup and it gets the job done.</p><p>Repo: <a href="https://github.com/skidoodle/filebrowser" rel="noopener noreferrer">github.com/skidoodle/filebrowser</a></p>
<a href="https://news.ycombinator.com/item?id=49688695">Comments</a>
A remote hop is a cost, not a default. Secrets belong on disk, not on the wire. Offline work stays local until a clean burst justifies rent.Most agent loops invert that order. They post context on the first tool call. The wire then holds both the prompt and the credential.That pattern fails in three coupled ways. Latency compounds on every round trip. Secrets leak into logs you do not own. A dead link kills work that could have stayed on disk.The fix is a gate, not a slogan. Scan the payload bef
Agent-written queue consumers often acknowledge a message before the side effect commits, which converts at-least-once delivery into silent loss. This take-home packet asks a reviewer to catch that inversion, score a patch, and refuse cosmetic retries that leave the race intact. The packet is self-contained, uses only Node.js test runners, and does not require production brokers or paid model keys. Interviewers can drop the files into a repository and grade whether a human or an agent notices th
Building software for businesses is rarely about solving just one problem.A business may need a website, an online store, product management, customer management, forms, payments, SEO, and automation. Traditionally, these capabilities are handled by several different products.We built Webruno to bring these capabilities together in one platform.Webruno allows businesses to create and manage websites and online stores while also providing CRM, ecommerce, payments, SEO, forms, customer management,
<a href="https://news.ycombinator.com/item?id=49688391">Comments</a>
<a href="https://news.ycombinator.com/item?id=49688259">Comments</a>
If your coding agent cannot name the files it will touch before it touches them, I do not grade the conversation. I grade three artifacts: a write-set, a unified diff, and a test run that happens after the patch lands in a clean tree. Chat is a scratchpad. The patch is the homework.Why this lab, right now? Because too many student “agents” are a scripted path wearing extra adjectives. They always edit app.js. They always claim success. They never say what they will not touch.Sound familiar?
<a href="https://news.ycombinator.com/item?id=49688157">Comments</a>
The following letter is a reconstructed failure log.It is not a claim about any employer.Friday at 16:40, the coding agent was still looping.No receipt named the runner, files, or stop condition.Friday-me,You treated a free remote loop as unbounded compute.That single assumption consumed an entire working day.Three process mistakes did the real damage here.None of them were about model quality. The scene you ignoredA refactor request looked small at noon.You pointed an agent at a dirty work