Skip to content

Workflow Skill Router v2.1.2

Latest

Choose a tag to compare

@workflow-skill-router-release workflow-skill-router-release released this 02 Nov 03:04
· 2 commits to main since this release

Workflow Skill Router v2.1.2

Official release.

Why V2

Workflow Skill Router chooses one lead Skill for each phase of the work, adds
only the support that phase needs, and shows the route before the agent
continues. It is a pre-execution Skill-selection layer for Claude Code and
Codex: it does not replace Host permissions, approvals, sandboxing, or
production orchestration.

Why this patch

v2.1.2 fixes plan_work when a user names a Skill. Hosts list Skills by
name (python-test-writer), and models pass that name as written. In
v2.1.1 and earlier, plan_work accepted the bare name, planned with it, and
then rejected its own stored row on read-back, so the call returned
internal-error. The transaction rolled back, so no state was left behind,
but every request that named a Skill without the skill: prefix failed.
Upgrade if you or your agents name Skills in requests.

What changed

  • Explicit Skill ids. plan_work canonicalizes a bare Skill name to
    skill:<name> before planning, so python-test-writer and
    skill:python-test-writer lock the same Skill and collapse to one id. Any
    other form, including a value that starts with skill: but breaks the id
    contract, is rejected before anything is stored.
  • Public error for unreadable directives. A rejected id, several explicit
    Skills without use, only, or all, and an unknown semantics or work-mode
    hint now return invalid-arguments with a reason code such as
    explicit-skill-id-not-canonical. The MCP server returns that payload as a
    tool error instead of internal-error, and it never echoes the rejected
    input.
  • Tool description. The plan_work explicit_skill_ids description now
    states the canonical form and the canonicalization rule.
  • Host fault lane. scripts/run-host-fault-suite.py loads the real Plugin
    into a Claude Code or Codex session, injects one Host or Router fault per
    case, and scores the transcript, the workspace, and the final answer against
    the SKILL contract, including zero side effects after a denied write. Its
    reports are host-fault-behavior evidence and never qualify a release.

Both Router SKILLs, classification, MCP tool names and readiness classes, and
persisted schemas are unchanged.

Choose your install mode

  • Claude Code:
    /plugin marketplace add eric861129/Workflow-skill-router, then
    /plugin install workflow-skill-router@workflow-skill-router. Requires
    Node.js 24+ and Python 3.11+.
  • Codex Plugin + MCP:
    workflow-skill-router-plugin-v2.1.2.zip contains the bundled local control
    plane and typed runtime readiness. The Codex marketplace can also be pinned
    with --ref v2.1.2.
  • Skill-only:
    workflow-skill-router-skill-v2.1.2.zip preserves routing and disclosure
    instructions without durable state or verified Host authority. Its routing
    instructions are unchanged from v2.1.0; Skill-only mode has no
    plan_work, so this fix does not apply to it.

Canonical Plugin distribution

eric861129/Workflow-skill-router remains the canonical development and
governance surface for both hosts. The standalone
eric861129/workflow-skill-router-plugin repository is the generated target
for root-level Codex Plugin installation; the trusted release workflow
synchronizes it only after the frozen-source preflight succeeds, and its HOL
Plugin Scanner must pass before the target tag is created. Dependency updates
for the generated target are made here, not in the generated target.

Compatibility and evidence

The v2.1.0 Behavior run measured routing decisions made from the Router
SKILL alone: the Claude Code driver runs with no tools and no MCP server, so
the model never saw or called plan_work. The SKILLs, the case prompts, and
the scoring are unchanged, so this patch inherits the reviewed v2.1.0
Behavior evidence rather than claiming a new model run: the frozen six-case
paired beta smoke, 36 attempts across 42 model turns. That evidence does not
cover this fix. Deterministic tests through the bundled MCP server cover the
bare-name path. In one live Claude Code session with claude-sonnet-5-5, a
request that named python-test-writer without the prefix planned as
explicit-locked. The model passed skill:python-test-writer itself, so that
session did not exercise the server-side canonicalization. The maintainer
attestation records the inheritance and the deterministic gates for this
revision. Codex models were not re-qualified.
The release does not claim verified Skill activation, token reduction, or
task-outcome improvement.

Verify this release

  • Validate checksums.sha256 before installation.
  • Inspect the maintainer-attestation for the frozen source revision before
    relying on behavior evidence.
  • Inspect the SBOM at sbom/workflow-skill-router-v2.1.2.spdx.json and
    provenance/workflow-skill-router-v2.1.2.json.
  • Verify the generated target governance with
    python scripts/verify-plugin-distribution-governance.py.

Full Changelog:
v2.1.1...v2.1.2