One Router Call, Two Kinds of Context: Unlimited Skills 0.6.7

Two bounded context streams converge through a local-first AI skill router

An AI agent can have the right procedure and still make the wrong decision because it is missing the company context around the task. The deployment checklist may be correct, but which environment is in scope? The proposal workflow may be correct, but which offer has actually been approved? The release procedure may be correct, but what did the last accepted release teach the team?

Until now, Unlimited Skills solved the first half of that problem: find the right reusable skill and load it only when the evidence is strong enough. Version 0.6.7 adds an opt-in path for the second half. One card-mode router call can now return the selected skill together with bounded, cited business reference data from an owner-configured provider.

Unlimited Skills 0.6.7 is live on PyPI. It is a retrieval-only release. It does not turn assistant prose into company memory, upload prompts, or ship a private knowledge system inside the public package.

Skill routing and company recall should not be two unrelated actions

The old workflow could require an agent to route the task through Unlimited Skills and then perform a separate company-memory lookup. That separation created two practical risks. The second lookup could be forgotten, and the two results could arrive under different trust assumptions.

In 0.6.7, an owner can configure a local provider and let suggest --json --card carry both channels in one response: the chosen skill card and a bounded business_context object. If no provider is configured, the feature is silent. Ordinary text output and non-card JSON suggest contracts remain unchanged.

The retrieved material is not blended into the skill body. It is escaped, delimited, source-cited, and labelled as reference data rather than instructions or authority for external action. That distinction matters: a remembered decision can inform the work, but it cannot authorize a deployment, payment, message, or other consequential action.

Opt-in means policy stays with the owner

The public MIT core ships a generic JSON-over-stdio client contract. It does not name or import a private knowledge system, and it does not contain company paths, databases, credentials, secrets, or knowledge bodies.

The configured provider owns source selection, project and entity walls, sensitivity policy, ranking, freshness, and provenance. Unlimited Skills validates the response before it reaches the agent: source references must be relative and non-traversing, schemas and request IDs must match, output is bounded, and sensitivities must be explicitly allowed.

The default sensitivity allow-list is deliberately narrow: public and internal-sanitized. Raw internal excerpts require an explicit owner decision because enabling them means the configured agent model will receive that material.

Operators can inspect the same contract directly:

unlimited-skills context doctor --json
unlimited-skills context retrieve "prepare the current customer proposal" --json

A one-call opt-out is available with --no-business-context, and UNLIMITED_SKILLS_NO_BUSINESS_CONTEXT=1 disables the retrieval handoff.

Failure stays fail-open, but uncertainty stays visible

A local extension should not make the agent unusable when it is missing, warming, slow, incompatible, or malformed. The provider runs with a bounded timeout and output budget, a minimal environment, and no shell invocation. If it fails, skill routing continues.

Fail-open does not mean guess. A no_context result says only that the provider returned no eligible context. It is never upgraded into a verified claim that the company has no relevant decision, policy, or prior work. When retrieval is unavailable, the contract tells the agent to continue with generic work and avoid inventing company-specific facts.

Version 0.6.7 also caps the combined skill, hint, rescue, and business-reference payload at the hook boundary. Context from two channels still has one finite context-window budget.

The local adapter is intentionally a thin client

The provider interface is local today, but the contract is designed so the adapter does not have to become the knowledge system itself. A private adapter can act as a thin client to an owner-controlled loopback service that enforces identity, scope, sensitivity, and provenance.

That separation establishes a client-server direction without introducing a hosted dependency. The same versioned envelope can later move behind a remote company-memory service without changing the public router contract. Version 0.6.7 does not deploy that remote service, perform automatic sync, or upload prompts. It proves the boundary while keeping the public core local-first.

The release evidence also covered runtime coexistence: legacy and current local daemons can remain present without killing an unknown listener. The goal is an upgrade path that preserves working local state instead of replacing it for convenience.

This release retrieves memory; it does not write it

Business-context retrieval creates an obvious temptation: if the agent says the work is done, save that statement automatically. Version 0.6.7 explicitly refuses that shortcut.

Assistant prose, URLs, PR-looking tokens, hashes, and test counts are not acceptance receipts. The bundled Stop hook does not submit them for durable learning. The context completion-candidate command remains an experimental manual compatibility surface, and no bundled hook calls it in this release.

Automatic completion learning was held back until a later contract could require structured, independently verifiable acceptance and post-write visibility proof. In other words, 0.6.7 lets an agent recall owner-approved context, but it does not let the model certify its own success.

The release gate exercised the headline capability

The exact installed wheel was tested against provider doctor, direct retrieval, card-mode delivery, policy filtering, kill-switch behavior, schema mismatch, timeout, and malformed-provider cases. The public pull request records a full-suite baseline of 1,291 passed and 3 skipped tests, a final focused provider and hook run of 64 passed tests, and a product verifier result of 144 passed tests with 11 frozen contracts.

The live thin-client check returned the accepted 0.6.6 company-memory atom first. Publication used PyPI Trusted Publishing from the approved main commit, followed by public-artifact verification before the matching GitHub release.

These are release-gate measurements, not guarantees for every provider implementation or machine. The provider remains owner-controlled code and must be reviewed with the same care as any component allowed to read company knowledge.

Try Unlimited Skills 0.6.7

Install or upgrade the local core:

python -m pip install --upgrade unlimited-skills==0.6.7
unlimited-skills quickstart

For local vector and hybrid retrieval:

python -m pip install --upgrade "unlimited-skills[all]==0.6.7"
unlimited-skills vector-reindex

Read the 0.6.7 release, inspect the provider contract, or install the package from PyPI.

The point is not to pour more text into an agent. It is to deliver the right procedure and the right source-backed business reference together—while keeping ownership, disclosure, and action authority outside the model.

Get in touch

Book a free consultation


    Protected by reCAPTCHA. The Google Privacy Policy and Terms of Service apply.