Skip to content

hooks: SessionStart catalog lists skill ids but never names the load command — agents try native skill mechanisms first #215

Description

@totalpayne

Observed

@tanstack/intent 0.3.6 (also checked 0.3.7 — #214 reworked gate semantics but not this text): the SessionStart hook's injected catalog (additionalContext) tells the agent to "load that full skill guidance with the Intent CLI before proceeding," then lists skills as @scope/pkg#skill ids with descriptions — but no load command appears anywhere in the injected text.

Running ten scripted headless probe sessions (claude -p, Claude Code 2.1.233, claude-sonnet-5) against a package shipping seven skills, we watched sessions receive the catalog and then fail to reach the loader:

  • Sessions pattern-matched the pkg#skill ids to Claude Code's native Skill tool and called it with several name variants (all misses — Intent skills aren't native skills).
  • Sessions then hunted for the CLI: which intent (not on PATH), filesystem searches, ./node_modules/.bin/intent --help.
  • Sessions that eventually read the repo's AGENTS.md guidance block found pnpm dlx @tanstack/intent@latest load <pkg>#<skill> there and recovered; sessions that didn't stalled entirely.

The terminal intent list output already prints a per-skill Load: pnpm dlx @tanstack/intent@latest load <id> line — the hook's catalog text is the one surface that omits it, and it's the surface every session sees first.

Suggestion

In the SessionStart catalog text:

  1. Name the exact load command — once globally ("Load a skill with: pnpm dlx @tanstack/intent@latest load <id>") or per skill as intent list does.
  2. Optionally preempt the observed misroute: a line noting these are not native agent skills and are loaded only via the command above.

Happy to share the session streams if useful.

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