AI 资讯
How I Put My Agent in CI to Automate Release Notes
When I joined Entire, I noticed my boss spending a chunk of time every week writing detailed release notes, called Dispatches at Entire. It looked like a painful process. Each Dispatch had to cover changes across several repositories, explain why those changes mattered, credit external contributors, and carefully avoid leaking anything that was not public yet. I offered to take it over. I had solved a similar problem before, so I figured it would be an easy win. I built something similar and simpler at Block While I was at Block, I built a release notes generator for goose . It ran in GitHub Actions after a release workflow completed, checked out the new tag, compared it against the previous one, and handed goose a recipe to inspect the commit diff. Goose organized those commits into features, bug fixes, improvements, and documentation. Each entry got a short description and a PR link. The workflow then updated the GitHub release and posted the announcement to Discord, opening a thread if the notes exceeded the message limit. It was clean and effective, but it solved a very clean problem: one repository, one new release tag, public commit history, and concise output. So when I looked at Entire’s Dispatches, I assumed I could reuse the same playbook. Gather changes, run goose, post the draft. That assumption did not survive contact with reality. But a Dispatch turned out to be more complex A Dispatch spans multiple projects: the Entire CLI, entire.io, EntireDB, external agent integrations, and open source libraries like go-git, go-nuts, git-sync, and ForgeMark. Every project also ships on a different cadence. Some push to main and deploy continuously. Others bundle work into scheduled releases. The CLI maintains separate stable and nightly channels, which means a feature can be available to testers without being part of the latest stable tag. Then there are feature flags. Finding changes was not the hard part because GitHub APIs handle that easily. The hard part was
AI 资讯
Stateless MCP for Beginners
I've been seeing news everywhere that MCP just went stateless, but I had no clue what it means. So I decided to dig into it and write a blog post about it. Stateless MCP for Beginners The Model Context Protocol (MCP) connects AI assistants to tools, databases, and external applications. In the 2026-07-28 specification revision, MCP removed protocol-level sessions and became stateless. That change makes remote MCP servers easier to operate. They can scale behind ordinary load balancers without sticky routing or a shared MCP session store. Clients can safely cache tool definitions, and agents get more control over which application resources they share. But stateless does not mean MCP servers can no longer remember anything. A browser can still have open tabs, a database transaction can still have uncommitted changes, and a shopping cart can still hold items. The difference is how the client refers to that state. Why MCP Sessions Became a Problem State is information a system remembers between requests. Imagine an MCP server that controls a web browser. An agent might call open_browser , followed by navigate , click , and take_screenshot . The server needs to know that all four actions refer to the same browser. In earlier MCP versions, the connection could provide that context. The client began with an initialize request. Under Streamable HTTP, the server could respond with an Mcp-Session-Id , which the client attached to later requests. The server could then use that ID to recover information associated with the session. This worked naturally when one client talked to one server process. It became more complicated when an MCP service ran across several machines behind a load balancer. If Server A created a session and the next request reached Server B, Server B needed some way to recover that session. Infrastructure teams typically solved this with sticky routing, which kept the client tied to Server A, or a shared database that every server could use for session lo
科技前沿
Pandora's ad-free subscription is less than $10 a month in 2026: Is it worth it?
The Pandora experience is different from the Spotify one most of us are used to. Pandora Premium is worth it for some.
AI 资讯
Real Plugins Need Motors: Skills Should Teach Tools, Not Pretend to Be Them
Watch the short video companion Read or comment on the complete paper: English edition | French edition I spent a long time building AI workflows before admitting something painfully simple: a folder full of instructions is not automatically a tool. A SKILL.md can be brilliant. An AGENTS.md can save a repository. A plugin manifest can package a clean idea. None of them, by themselves, can validate a file, inspect live state, call a service, reject malformed input, or prove that an action happened. That distinction matters because agent ecosystems are expanding faster than their vocabulary. We use skill , plugin , tool , hook , resource , and MCP server as if they were interchangeable. They are not. My rule after this research is direct: A skill should teach the agent how to use a capability. A real plugin should make that capability available. When the task requires action, the plugin needs a motor. The moment my own plugin exposed the problem This article became a case study inside my own workshop. I inspected a memory plugin that was not fake. It already had executable tools, a server surface, tests, and useful routes. Yet its activation instructions pushed Codex toward selecting and dispatching a large agent job before establishing whether memory was needed at all. Nothing was syntactically broken. The architecture was simply asking activation to do too much. Activating a plugin should make capabilities available. It should not behave like a dispatch order. That difference sounds small until the workspace grows. One skill becomes ten. Every correction becomes a permanent rule. Every successful workflow becomes another Markdown file. Soon the model spends the beginning of each task reading the workshop labels instead of touching the work. I call this context debt . The debt appears as hesitation, instruction conflicts, stale rules, broad triggers, and repeated searching. The model is not necessarily weaker. We may have consumed its useful attention before it reach
AI 资讯
Chinese AI Researchers Are Finding Their Voice on X
As OpenAI and Anthropic employees grow quieter online, researchers at Chinese AI labs are flocking to X to explain their work, recruit talent, and shape the global conversation on AI.
开源项目
Anleitung: Alienware m17x (2008) als Linux DJ-Workstation
moin, ich möchte euch mein aktuelles Projekt vorstellen: Die Wiederbelebung eines Alienware m17x (Baujahr 2008) als dedizierte DJ-Workstation unter Linux. Ziel war es, alte Hardware nachhaltig zu nutzen und eine stabile Umgebung für Mixxx zu schaffen. Die Hardware: Notebook: Alienware m17x (Core 2 Duo, 4GB RAM, SSD) OS: KDE Neon mit Low-Latency-Kernel (6.8.0) Software: Mixxx 2.4 Audio-Interface: Günstiges USB-Audio-Device für den Master-Ausgang Das Problem: Mixxx verweigerte unter ALSA den Dienst mit der Fehlermeldung: Error opening "USB Audio Device (hw:1,0)" - Invalid sample rate Die Analyse über /proc/asound/card1/stream0 zeigte die Ursache: Das USB-Gerät unterstützt ausschließlich 46875 Hz – eine für Audio-Interfaces sehr unübliche Rate, die weder 44100 Hz noch 48000 Hz entspricht. Der direkte Zugriff über hw:CARD=Device,DEV=0 schlug fehl. Die Lösung: Die Rettung war die Aktivierung der ALSA-Plug-Erweiterung über PipeWire/ALSA, die eine automatische Sample-Rate-Konvertierung erlaubt. Starten Sie Mixxx nicht direkt, sondern setzen Sie zuvor die Umgebungsvariable: export PA_ALSA_PLUGHW=1 mixxx Damit Mixxx auch dauerhaft korrekt startet (z.B. über das KDE-Menü), habe ich den Starter wie folgt angepasst: bash -c "export PA_ALSA_PLUGHW=1; mixxx" Ergebnis: ✅ Master-Ausgabe über das USB-Device funktioniert stabil. ✅ Kopfhörer-Vorhören (C-Media USB Headphone Set) läuft parallel. ✅ Das System läuft trotz des Alters der Hardware (2008) flüssig und mit geringer Latenz. Die vollständige Dokumentation inklusive Fotos des Umbaus, der genauen Kernel-Einstellungen und der Konfiguration findet ihr in meinem Open-Source-Repository: 👉 [ https://github.com/qrishii/DJ-Installationen ] Ich hoffe, diese Lösung hilft anderen, die ähnliche Probleme mit exotischen USB-Audio-Raten unter Linux haben! das Leben ist lustig
AI 资讯
But what is a punycode?
Imagine you have a friend who only understands the 26 English letters (A-Z), numbers (0-9), and a dash (-). Now imagine another friend wants to write their name as "José" or "你好" or "🍕". The first friend doesn't understand those special letters or emojis. So, you use a secret translator that changes them into something the first friend can understand. That's what Punycode does. A simple example Suppose someone wants a website with the domain: münchen.com The internet's basic domain name system can't directly understand the ü. So Punycode converts it into something like: xn--mnchen-3ya.com Both mean the same website. What you see: münchen.com What computers use: xn--mnchen-3ya.com The xn-- at the beginning tells computers: "Hey! This is Punycode. Decode it back into the real name." Think of it like nicknames Imagine your teacher can't pronounce your name, Tolúwàní. She writes it in a way she can pronounce, but everyone knows it's still you. Punycode does the same thing for website names. Why is it needed? Without Punycode, websites could only use simple English letters like: google.com ✅ example.com ✅ With Punycode, people can have websites in their own languages, such as: café.com mañana.com 中国.com Ελλάδα.gr Behind the scenes, those are converted into Punycode so the internet can route them correctly. One thing to be careful about Sometimes bad people create fake websites that look almost identical to real ones by using letters from other alphabets. For example: apple.com (real) аpple.com (the first "a" is actually a Cyrillic letter, not the English "a") Although they look almost the same, they're different domains. Browsers often show the Punycode version (starting with xn--) instead, helping users spot suspicious domains. In one sentence Punycode is a translator that lets the internet use website names with letters from any language while still speaking the simple alphabet that computers expect.
AI 资讯
Terraform Introduces tfpolicy, an HCL-based Policy-as-Code Framework
HashiCorp has introduced tfpolicy, a new HCL-based policy-as-code framework for Terraform, now available in public beta within HCP Terraform. It is designed to simplify and modernize infrastructure governance by integrating policy creation and enforcement directly into Terraform workflows, eliminating the need for separate tools and languages. By Sergio De Simone
开发者
Researchers devise a full-color night vision goggle
Wavelength and intensity in the infrared are translated into colors in the visible.
AI 资讯
The ban on robot vacuums won’t make them safer, only worse
No other gadget knows as much about your home as a robot vacuum. They map your space, learn your routines, and many now carry a camera and microphone into every room in your house. As AI gives them a better understanding of what they see, the privacy and security risks these autonomous robots pose are […]
开发者
Ubisoft is shutting down its weird NFT game that came out two years after the whole craze died down
Champions Tactics: Grimoria Chronicles is going the way of the Bored Ape.
AI 资讯
Sam Altman isn’t the only one who wants to pump the brakes on AI
After years of pushing full speed ahead on AI, OpenAI CEO Sam Altman says maybe it’s time for the AI industry to “pace” itself. The comments came just days after one of OpenAI’s own models broke out of its test environment and got tangled up in a breach at Hugging Face — though as Equity’s hosts point out, sloppy security seems to have […]
AI 资讯
Anthropic’s Opus 5 Is Better at Resisting Prompt Injection
The chart is interesting. On the IPI benchmark, Opus 5 improved over Opus 4.8, reducing the probability of an attacker succeeding within 15 attempts from 5.5% to 2.0%, and from 0.5% to 0.2% on 1 attempt. It also improved on Sonnet 5 (5.9% at k=15) and Mythos 5 (2.6%), making it the most robust model evaluated. Opus 5 also outperformed all non-Claude models on this benchmark. The most robust non-Claude model was Muse Spark at 16.5% within 15 attempts—more than eight times Opus 5’s rate. The most capable GPT 5.6 variant, Sol, was comparable to its predecessor GPT 5.5 (20.0% versus 20.8% within 15 attempts), and was 10 times as likely to be successfully attacked as Claude Opus 5 at 2.0%. The other GPT 5.6 variants are less robust, at 30.4% (Terra) and 43.9% (Luna). A single attempt against GPT 5.6 Sol succeeded 3.1% of the time, higher than the 2.0% an attacker achieved against Opus 5 after fifteen attempts...
产品设计
Tomodachi Life: Living the Dream is a quirky life sim that’s worth buying at this discount
Looking to start your own island paradise full of Miis based on family, friends, and celebrities, but don’t feel like paying full fare? Woot has Tomodachi Life: Living the Dream for Switch on sale for $52.99 (usually $59.95). Sort of like Animal Crossing, but more off-kilter, this unique game sees you building and managing relationships […]
科技前沿
Sony acknowledges backlash, “cautiously” moves ahead with end of PlayStation discs
Sony doesn't think the move will hurt it financially.
AI 资讯
Programmers, I want your help...
I just entered my college. I want to learn c++ but my college has python and c in the syllabus. (Python in 1st year). I have a little knowledge in c++ as I studied it in my 12th.(syntax and terms, has not coded much). Can I learn c++ and python at the same time if I spent daily some hours for c++. I want to get the essence in coding, that's why I wanted to study c++. submitted by /u/Voldmort_lostnose [link] [留言]
开发者
Where .env Went Wrong
submitted by /u/iElectric [link] [留言]
AI 资讯
The major labels propose rules to keep AI slop off the charts
Several record labels, including the big three - Universal Music Group, Sony Music, and Warner Music Group - have proposed rules regarding chart eligibility for AI songs. In short, they wouldn't be. The proposal goes quite a bit further than a labeling proposal put forth by the RIAA, the International Federation of the Phonographic Industry […]
产品设计
This new drone spins so fast the human eye can barely see it
"Invisible" drones have been in the works for years, and researchers have finally designed one that gets close.
开发者
Man invested $45M in a Nicolas Cage movie. It got stolen off Netflix’s desk.
Filmmaker sues Netflix over stolen screener of unreleased Nicolas Cage movie.