OpenHands v1.16.0 shipped at 18:19:22 UTC on 27 August, replacing the agent's all-on bundled skill catalogue with an explicit allow-list. The pull request behind it is unusually candid about the numbers and the reasoning.
The state it replaced
Verbatim from the PR: "The whole @openhands/extensions catalog is baked into the bundle at build time and merged into agent_context.skills for every conversation, with disabled_skills as the only escape hatch." And on the consequence: "All-on-with-a-deny-list means every catalog addition is on by default for everyone, which is how @rbren ended up opted into javadoc and bitbucket skills."
The new default
"59 catalog skills render, 11 on, 48 off." The named regression case is add-javadoc — "the skill from the issue report — is among the 48." enabled_skills is described as "an allow-list over the bundled catalog only, defaulting to the 11 entries the catalog flags defaultEnabled."
The stated reason is prompt contention
"The cost isn't disk — it's ~60 skill bodies and 60 trigger sets competing in every system prompt." That is a context-budget argument. Unstated in the PR: an all-on catalogue also means every skill the vendor or a dependency adds becomes live capability in every conversation without the operator opting in — which is the exact ingestion path behind the agent-skill-poisoning research circulating this month.
What the common framing gets wrong
Three things. It is filed under "Features", sandwiched between a sidebar-pinning change and a file-drawer link, when what happened is a widely deployed open-source coding agent conceding its skill catalogue had been opt-out and reversing it.
Coverage will overstate the scope. The allow-list covers the bundled catalogue only; skills discovered at runtime from .agents/skills/ stay live the moment they appear and remain deny-list-governed. "OpenHands now requires skills to be allow-listed" would be wrong.
And the number itself is not the deployed number. A one-shot migration preserves old behaviour: a workspace whose deny-list already names a catalogue skill "keeps everything else on." The 11-of-59 default applies to new workspaces, not retroactively to the installed base. Dating matters too — the PR merged 24 August at 18:53 UTC, three days before users got it; the release is the user-visible event.
