Skip to content

Releases: tt-a1i/skillroster

v1.8.47 — safer native visibility and content selection

Choose a tag to compare

@tt-a1i tt-a1i released this 23 Oct 02:21
ab2f673

SkillRoster v1.8.47 improves native Skill visibility, content selection, and usage evidence. Bundled Bootstrap: 1.8.51.

Changes

  • Respect observed Codex user disable rules and discover .agents/skills as shared read-only inventory.
  • Align Hermes directory discovery with native behavior; preserve supported global disable and OS rules, shared paths, and dependent consumers during governance.
  • Require an explicit placement choice when packages declare the same source/version but contain different content. Keep search evidence bound to the content that supplied it.
  • Preserve read-only review routing, including “do not modify files” and English apostrophe variants.
  • Reject malformed JSON/UTF-8 session records as usage evidence while retaining valid neighboring records. Legacy coverage remains unknown until rescanned.
  • Reuse advisory package reads within each Find invocation; actual loading still independently validates content.
  • Update Chinese and English README guidance, including upgrade and evidence boundaries.

Upgrade

Update the CLI, run skillroster scan --summary --json, then inspect optional Bootstrap updates with skillroster setup --check --json. Review any Setup Plan before applying it and open a new Agent session afterward. Older Snapshots and changed configuration can require a rescan and a new Plan review.

Validation and limits

Release builds use Rust 1.85 on Linux x86_64, Windows x86_64, macOS arm64, and macOS x86_64, with Linux archive validation in WSL2. The workflow exercises Plan/Apply/Undo and first-use scenarios against extracted archives. Archives have adjacent SHA-256 files.

Native visibility is a bounded local-rule observation, not a complete live session catalog. Missing usage evidence does not mean unused. Local benchmark improvements do not establish universal latency, model quality, or token savings. Native Linux arm64, Windows arm64, and WSL1 mutation are outside this release matrix.

v1.8.46 — clearer first use and user-owned governance

Choose a tag to compare

@tt-a1i tt-a1i released this 15 Oct 08:16
e1a4d60

CLI 1.8.46 bundles Bootstrap 1.8.50. This release makes first inspection easier to finish and keeps governance choices with the user.

What changed

  • Empty and informational-only reports now say when there is no clear cleanup work. Scan scope and unknown usage coverage remain visible; full and paged Findings retain the underlying evidence.
  • Duplicate consolidation previews name the retained source, replacement paths, affected Agents, and reversible impact. Deduplicating physical sources does not automatically reduce the default Roster.
  • Home distinguishes CLI readiness from optional Agent integration. skillroster setup --check --json inspects Bootstrap targets and versions without creating a Plan.
  • Bootstrap separates analysis, duplicate cleanup, and Roster reduction. With no positive usage evidence, it asks about upcoming work and allows keeping the current Roster. Name-order fallback is explicitly not usefulness evidence.
  • Agent guidance lets ordinary tasks continue when SkillRoster is unavailable or no useful local Skill is found. Claude native visibility and blocked Finding-planning reasons are now exposed as bounded facts.
  • Semantic-overlap summaries disclose candidate truncation. Release packaging now checks first use against the executable extracted from each completed archive, including Bootstrap Apply and Undo.

Upgrade

Download the archive and adjacent .sha256 file for your platform below, or install from the immutable tag:

cargo install --locked --git https://github.com/tt-a1i/skillroster.git --tag v1.8.46 skillroster

The official Homebrew tap is also updated. Use brew install tt-a1i/skillroster/skillroster for a new installation, or brew update followed by brew upgrade tt-a1i/skillroster/skillroster for an existing installation.

Verify which executable your Agent resolves with command -v skillroster, type -a skillroster, and skillroster --version (Get-Command skillroster -All in PowerShell).

Bootstrap is optional and updates separately from the executable. After updating the CLI, run skillroster scan --summary --json and skillroster setup --check --json. To install or upgrade Bootstrap, preview skillroster setup --json, review every target, apply the returned Plan only after approval, then open a new Agent session.

Validation and compatibility

Release source: e1a4d60fa9fc3cb81cdcbf715e5e374ee76c8bd0, merged through PR #384.

The formal tag workflow validates the exact source with Rust 1.85, builds Linux x86_64, Windows x86_64, and both macOS architectures, and checks the Linux archive in Ubuntu WSL2. Each platform runs the governance smoke and extracted-archive first-use checks. Archive checksums and public-download acceptance are recorded in the release receipt.

SQLite and JSON envelope schema versions are unchanged; the new summary fields are additive. Compact reports omit informational Findings, so callers needing every Finding should use the full or paged interface. Suggested-action order is not a usefulness ranking. A current Bootstrap file does not prove that a running Agent session has loaded it.

These are controlled behavior and recovery checks, not independent-user or live Agent compliance evidence. WSL2 uses the Linux archive; WSL1 mutation remains unsupported. Native Linux arm64 and Windows arm64 archives are not included.

Full changes: v1.8.45...v1.8.46

Release receipt: source, checksums, public downloads, Cargo, and Homebrew acceptance.

v1.8.45 — bounded analysis and safer recovery

Choose a tag to compare

@tt-a1i tt-a1i released this 03 Sep 13:29
25b39eb

SkillRoster v1.8.45 — bounded analysis and safer recovery

SkillRoster helps AI Agents keep one Skill library and expose the right small
roster to each Agent. This maintenance release reduces overlap-analysis resource
use and strengthens the preserve-or-refuse boundary for file changes.

What changed

  • Semantic-overlap analysis retains at most 25 candidates while preserving the
    previous ranked output. In the recorded dense 5,000-Skill synthetic workload,
    analysis changed from 7,752 ms to 1,558 ms and process peak RSS from 339,918,848
    to 38,338,560 bytes. Pair enumeration remains quadratic; these single-machine
    measurements are not a universal latency promise.
  • Recovery acceptance injects storage-full/I/O errors and terminates Apply
    subprocesses at journal and target-publication checkpoints. A fresh process
    must preserve recovery evidence and refuse further mutation. These tests do
    not simulate physical power loss or hardware cache behavior.
  • Copy and Replace preserve supported observable metadata or refuse the change.
    Recursive copies finalize directory modes after children are copied; Windows
    copy handles keep directories rename-protected. Replace/Undo preserve supported
    mode/readonly metadata and refuse observable metadata drift.
  • Upgrade documentation now checks which executable an Agent actually resolves,
    so an older standalone binary on PATH is not mistaken for an upgraded Homebrew
    package. Cleanup guidance preserves recoverable backups and user-owned wrappers.

Compatibility and limits

CLI version is 1.8.45; bundled Bootstrap content remains 1.8.29. SQLite schema
12 and JSON envelope schema 1 are unchanged. No Agent files or Skill libraries
are changed by installing the CLI.

Unsupported ACL, xattr, stream or ownership layouts may now be refused instead
of silently losing metadata. Legacy Windows replacement Receipts lacking
original security evidence require explicit manual recovery; other Undo
operations and Unix Receipts are not invalidated by that policy. Preservation
of timestamps, hard-link topology, privileged/invisible metadata and Windows
SACL settings is not claimed. See the exact
metadata and recovery boundaries.

WSL2 uses the Linux archive; WSL1 mutation remains unsupported. No native Linux
arm64 or Windows arm64 binary is included. Independent user-pilot work is not
part of this release. Historical pre-v1.8.8 asset cleanup remains separately
tracked in #55; this release
does not delete or replace those assets.

Source and verification

Annotated tag v1.8.45 resolves to
25b39ebc279b5af5ae44c9c3cf9266da532eb693.
The tag workflow
checks the exact source SHA with Rust 1.85, strict Clippy, formatting, Rust and
Node suites, four platform builds/governance smokes, and WSL2.

The release contains four archives and their four adjacent SHA-256 files.
Each archive contains the binary, a version-neutral README and the complete
LICENSE. Verify the adjacent checksum before extracting. Implementation and
review are recorded in #373,
version preparation in #374,
and upgrade guidance in #369.

SkillRoster v1.8.44

Choose a tag to compare

@tt-a1i tt-a1i released this 01 Sep 00:57
c79b083

SkillRoster 1.8.44 makes Bootstrap Setup previews truthful and binds Apply to the exact package identity promised by the preview.

  • Reports exact post-Apply Bootstrap Skill identities and logical Agent placement counts.
  • Records bounded package before/after projections in new mutating Bootstrap Setup Plans.
  • Validates final package identity through retained root handles and compensates managed writes on drift.
  • Shares one bounded package hashing boundary across Scan, Setup projection, and Apply.
  • Normalizes projected relative paths for consistent Windows identity.

Bootstrap content remains 1.8.29; SQLite schema remains 12. See the checked-in v1.8.44 acceptance record for the full evidence chain and boundaries.

SkillRoster v1.8.43

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 16:42
76a6885

SkillRoster 1.8.43 makes Agent-authored retrieval hints more reliable and safer before complete Skill instructions enter context.

What changed:

  • Complete multi-token Skill-name hints can outrank broad native task overlap; partial name matches remain weak.
  • Hinted find --load now requires direct selection evidence. Weak Top-1 candidates remain visible through ordinary find, but complete loading fails closed with typed retry guidance and no partial instructions.
  • Direct evidence is limited to an exact declared name or trigger, complete Skill-name token coverage, or complete normalized coverage of one task or hint phrase by the positive description with at least two tokens.

Verified at exact source revision 76a6885669f96ba37c919641f4b207e99b2b27fe:

  • strict repository checks;
  • Linux x86_64, Windows x86_64, macOS arm64, and macOS x86_64 release builds;
  • Plan/Apply/Undo governance smoke on every build;
  • WSL2 verification using the Linux archive;
  • adjacent SHA-256 files and archive README/LICENSE identity.

Boundaries:

  • SQLite remains schema 12, JSON envelope remains schema 1, and Bootstrap content remains 1.8.29.
  • No native Linux arm64 or Windows arm64 artifact is claimed.
  • WSL1 mutation remains fail closed because it lacks the required atomic no-replace rename primitive.

SkillRoster v1.8.42

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 14:06
b365824

SkillRoster v1.8.42 makes complete Skill loading fail closed when an unhinted CJK task has only broad lexical overlap.

  • Ordinary find ranking and bounded candidates remain unchanged.
  • find --load now requires direct selection evidence before returning complete instructions.
  • Weak loads return the typed cjk_hint_required_for_weak_match blocker with no partial instructions or file changes.
  • A faithful Agent-authored English hint and explicit Skill selection remain loadable.

SQLite schema 12, JSON envelope schema 1, and Bootstrap content 1.8.29 are unchanged.

See the v1.8.42 release receipt and issue #354 for the bounded reproducer and evidence.

SkillRoster v1.8.41

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 11:42
97784d4

SkillRoster 1.8.41 prevents an unhinted CJK task from loading complete Skill instructions from a weak incidental English Top-1 match.

  • Ordinary find remains read-only and keeps returning bounded candidates with the existing cross-language hint warning.
  • find --load now fails closed with typed reason cjk_hint_required_for_weak_match when a CJK task has no Agent-authored English hint and the top candidate lacks strong direct metadata or correlated CJK evidence.
  • A faithful English --hint, native CJK routing metadata, and an explicit Skill name remain loadable.
  • The blocker returns no partial Skill instructions and points to the Agent-owned retry action.
  • Includes the bilingual README correction from #349.

Verified targets

  • macOS arm64 (aarch64-apple-darwin)
  • macOS x86_64 (x86_64-apple-darwin)
  • Linux x86_64 (x86_64-unknown-linux-gnu)
  • Windows x86_64 (x86_64-pc-windows-msvc)
  • WSL2 verified with the Linux archive

The release workflow passed the complete repository gate, four-platform build and governance smoke, and a real WSL2 smoke. Downloaded archives were checksum-verified and compared byte-for-byte against the tagged README and LICENSE before publication.

Boundaries

  • No Linux arm64 or Windows arm64 artifact.
  • WSL1 remains fail-closed for Apply/Undo.
  • SQLite schema remains 12, JSON envelope schema remains 1, and bundled Bootstrap content remains 1.8.29.

SkillRoster v1.8.40

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 09:52
7df4c68

What changed

SkillRoster now recognizes explicit capability exclusions when ordinary English or Chinese coordinators introduce the negative clause. Tasks such as review this code, but do not simplify it and 审查代码,但是不要简化代码 keep the requested review capability while excluding the prohibited simplify capability.

The parser remains deliberately bounded: it accepts only but, and, yet, 但是, 不过, and 但 immediately before an existing exclusion marker. The original clause remains visible in task_exclusions; this is lexical routing evidence, not general semantic-negation understanding.

Compatibility

  • SQLite schema: 12 (unchanged)
  • JSON envelope: 1 (unchanged)
  • Bundled Bootstrap content: 1.8.29 (unchanged)
  • No Agent or Skill files are changed by installation

Verified platforms

  • Linux x86_64
  • Windows x86_64
  • macOS Apple Silicon
  • macOS Intel
  • Ubuntu WSL2 using the Linux archive

Each archive has an adjacent SHA-256 file. The tag workflow ran strict repository checks, platform portability tests, release governance smoke, packaging checks, and WSL2 acceptance at exact source revision 7df4c68e5e37444a7a701c735e19f2bb3e4b39ec.

Boundaries

WSL1 mutation remains fail-closed. This release does not claim native Linux arm64 or Windows arm64 artifacts.

SkillRoster v1.8.39

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 08:32
efa98c0

SkillRoster v1.8.39 makes mixed-intent routing more precise. Prompts such as “review this code, but do not simplify or refactor it” now keep code-review at Top-1 while excluding simplify-codebase, with matching English and Chinese behavior.

Release source: efa98c0
Verification: full Linux, Windows, macOS arm64/x86_64 CI; archive checksum/content validation; WSL2 smoke.

Boundary: this is a bounded lexical rule for code/代码 clauses, not a general semantic-negation engine. Native Linux arm64 and Windows arm64 archives are not included; WSL1 remains fail-closed.

SkillRoster v1.8.38

Choose a tag to compare

@tt-a1i tt-a1i released this 30 Aug 06:51
74243e5

SkillRoster 1.8.38 makes Agent routing obey explicit task exclusions and makes verified loading prefer the Skill placement that is actually exposed to an Agent.

What changed

  • find recognizes bounded independent Chinese and English do-not clauses as negative capability constraints. A strong retrieval hint cannot override an explicit exclusion.
  • JSON keeps the decision auditable through preserved task exclusions and a bounded 10-item exclusion-effects preview with complete count and truncation facts.
  • After Skill identity ranking, find --load prefers an eligible default-exposed placement over hidden exact-copy inventory such as backup directories.
  • Hidden copies remain inventory and duplicate evidence; source-only and On-demand Skills retain a deterministic eligible fallback when no exposed copy exists.
  • Existing root, trust, digest, fingerprint, UTF-8, size, and drift checks are unchanged and still fail closed.

Evidence

The exact-SHA workflow passed the strict repository gate, Linux x86_64, Windows x86_64, macOS arm64, macOS x86_64, packaged governance smoke, and WSL2 verification. Its first validation attempt hit the known transient Linux ETXTBSY test condition; the failed job was rerun at the same source SHA and passed without a source change. All four attached archives have adjacent SHA-256 files and passed independent download verification before publication.

Boundaries

SQLite remains at schema 12, the JSON envelope remains at schema 1, and bundled Bootstrap content remains at 1.8.29. This release does not claim native Linux arm64 or Windows arm64 artifacts. WSL1 mutation remains fail-closed.