Each card renders from repository data alone, with no request to X at
read time. A post is a receipt for what was said. It is never a receipt
for what is true, and the status line on each card says how far the
claim was checked.
This was a mistaken change we are reverting. The security boundary is not saved by this its saved by people not being stupid and exposing their dashboard insecurely to the internet.
Being reverted now
Latest commits on Hermes break existing plugin contracts.
I'm looking into solutions on how to deal with this for Cronalytics and Omatchy but at this time don't have a solid direction, sorry. This is disappointing. @Teknium
The extending-the-dashboard.md page was updated in the same commit (8845f3316, Jun 22) to bake in the new contract. Three spots now say the same thing:
- Directory layout (line 434): plugin_api.py # bundled plugins only — backend API routes (FastAPI)
- Layer summary (line 441): dashboard/plugin_api.py — bundled plugins only; backend API routes.
- Security notes under "Backend API routes" (line 749): "User-installed and project dashboard plugins may still extend the UI with static JS/CSS, but their Python api files are not auto-imported by the dashboard server. Backend routes are reserved for bundled plugins."
Claude Code for web just started saying "GitHub is blocked by egress policy", which is a big problem for me because most of my prompts there start with things like "clone simonw/sqlite-utils to /tmp to see the docs in /tmp/sqlite-utils/docs"
@ClaudeDevs @claudeai known issue?
Claude Tag is a Trojan horse. Not because Anthropic is doing anything evil. Because the incentives are obvious.
Day one, this looks like a great feature: tag Claude in Slack, let it follow the thread, remember context, connect to tools, break down tasks, chase work, and act like a teammate.
But that is exactly the problem. The moment your AI vendor becomes a shared coworker, it stops being just a model provider. It starts becoming the place where work is interpreted, remembered, routed, and eventually executed.
That is not model lock-in. That is context lock-in. You are now renting your company back from them.
Models can be swapped. Agents can be copied. But the memory of how your company actually works is much harder, maybe impossible, to move: the Slack scar tissue, the exception paths, the customer promises, the unfinished threads, the weird workflows, the implicit owners, the “we tried that in Q2 and it failed” knowledge.
Once that lives inside one vendor’s agent layer, you are not renting intelligence anymore. You are renting your company’s operating memory.
And the pricing model makes it even more dangerous. A human coworker has a salary. Claude has unbounded tokenized activity. The more work moves through it, the more the vendor captures not just IT spend, but labor spend.
This is the enterprise bargain people will regret: Convenience now, and rapid decent into dependency.
The right architecture is simple: rent the best intelligence from whoever is best this month. OpenAI, Anthropic, Gemini, open source, whatever. But own the context layer.
Your company memory should be inspectable, permissioned, portable, and model-neutral. It should not be buried inside the same vendor that sells you the intelligence and the workflow surface.
Claude Tag is useful. That is why it is dangerous. Rent the intelligence, but own the context. Or, regret later.
Hermes Agent can now /learn from anything: feed it directories of any source material (code, API docs, manuals, PDFs, configs) and it distills a verifiable reusable skill
OpenAI engineer:
“90% of our engineers use Codex subagent harnesses + loops to ship code 5× faster.
close the agent loop. Give an agent a way to verify its own output.”
in 30-minute talk, an OpenAI engineer explains how to build self-improving agentic systems with harnesses.
Worth more than a $500 agentic course online.
Watch it today, then read how hedge funds apply loop engineering in trading.
Getting close to burnout with my open source projects.
I got Pages CMS 2.0.0 out a few weeks ago, and I'm about to release Basecoat 1.0.0. Oh, and also got heypi 0.2.0 beta released tonight, and I have the new ReallySimpleDocs on its way (moved to @astrodotbuild).
I think I'll be taking a sabatical from most of this over the summer (except heypi).
If you want to see what Basecoat 1.0.0 looks like: https://basecoat.hunvreus.workers.dev/
Every file the loop produced for this run, anchored in the repo. Internal links go to the rendered page; the repo path opens the raw artifact on GitHub.