For the most of the systems that ship an SDK , problem they are solving with this is shifting. We are talking dimensional shift - from solving scale problem to solving niche problem.

An SDK is knowledge about a system expressed as language-specific code — the API surface, the auth model, how to handle pagination, how to parse error responses, what the data model means. The Python library is just how you’ve chosen to ship it.

And if you ship it as a Python library, you also need a Java library. And a Node library. And something for Go. Every language your consumers use becomes another SDK to maintain, another set of docs to keep in sync, another version to cut when you change something.


What if you shipped the knowledge directly?

An integration skill. A centrally maintained, language-agnostic description of how to integrate with your system — the endpoints, the auth flow, the pagination contract, the error handling, the data model, the edge cases that bite people. A consuming team invokes it in whatever language they’re working in.

Someone needs to integrate in PHP. They invoke the skill. They get a PHP integration. Someone needs Erlang. Same skill, different output.

The SDK is not the destination — it is what you ship when you cannot yet ship the skill.


An SDK is a snapshot. You cut a version, consumers pin to it, drift happens. A skill is living knowledge — update it centrally and every consumer gets the current version. You maintain one thing, not N.

Having the upgrade command in the skill is also easy from this point on.


Once the skill exists, you can just go deeper into the agentic rabbit hole:

  • A skill tells you how to integrate.
  • An integration agent actually does it — writes the code, wires it into your service, handles the configuration.
  • Then an integration testing agent — verifies correctness against the same knowledge that generated the integration.

Skill → agent → testing agent.


None of this is a headstone for SDKs.

If you’re working with something sensitive — financial data, healthcare, anything where you are not comfortable routing integration through an externally hosted model — an SDK is still the right call. The same applies if you have a very specific technology stack and want every integration done identically, with no variance in how the “AI” interprets the knowledge. In those cases the SDK’s predictability is the point.

What is declining is the range of situations where an SDK is the right answer. That range is narrowing with every improvement in “AI” tooling, faster than most SDK maintainers are accounting for.


The people integrating with your system are already doing something close to this: feeding your docs and your OpenAPI spec to an “AI” and generating the integration. You’re just not in control of that process, and the quality reflects it.

You define the knowledge. You maintain it. You decide what the consuming experience looks like, regardless of what language is on the other end.