Skip to content

Bound agent skill catalogs and add deterministic discovery filters #234

Description

@LadyBluenotes

Problem

Skill bodies load on demand, but discovery context grows with every permitted skill. Hooks emit all identifiers and descriptions, and list output offers no result budget or package/path filtering.

Evidence

With one short skill per synthetic package, compact identifier/description catalogs measured 1,009 bytes for 10 skills, 10,279 for 100, and 52,279 for 500. The hook maps over all skills; its session-start matcher includes startup, resume, clear, and compact. Live agent reinjection behavior and actual token counts were not measured.

Sources: list output, hook catalog, existing eval harness.

Verified against main at 206e987 (@tanstack/intent 0.3.8), Node v24.12.0 on macOS arm64. Tests used installed dependencies and synthetic local fixtures.

Acceptance criteria

  • Define a deterministic package/path filtering or search surface using existing identifiers and metadata.
  • Agent catalog output has an explicit byte/character budget, visible omitted-result count, and a way to retrieve remaining results.
  • Policy filtering and hidden-source redaction apply before results are exposed.
  • Loaded instruction bodies remain complete; catalog limits do not silently truncate instructions.
  • Tests cover 10, 100, and 500-skill catalogs, deterministic ordering, overflow, and no-match cases.
  • Extend the existing eval harness to record context bytes, correct selection, and unnecessary loads without equating smaller output with better task quality.

Scope and priority

Priority: High. Type: feature.

Follow-up release; not a v0.4.0 blocker. Coordinate diagnostics with #222. No embeddings, vector database, daemon, or new evaluator.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions