Skip to content

fix(skills): make skill loading explicit and repeatable - #14

Merged
danielkov merged 2 commits into
mainfrom
fix/skill-tool-contract
Aug 25, 2026
Merged

fix(skills): make skill loading explicit and repeatable#14
danielkov merged 2 commits into
mainfrom
fix/skill-tool-contract

Conversation

@danielkov

@danielkov danielkov commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Summary

Rename the Agent Skills tool from activate_skill to skill, declare its text output schema, and return full instructions on every read. Bump agentkit-tool-skills to 0.10.8 and update the umbrella dependency and documentation. Replace the timing-sensitive Runlet concurrency probe with deterministic barrier synchronization.

Motivation

Consumers that run the skill tool behind a composition boundary must forward its result for the instructions to reach model context. The previous activation framing and missing output schema encouraged callers to treat the operation as a one-time side effect; session deduplication then made accidentally discarded instructions unavailable on retry.

The existing concurrency test relied on a bounded yield loop, so a slow scheduler could complete one probe before the other entered and report a false failure.

Impact

The advertised tool name changes to skill, so consumers with hard-coded activate_skill lookups must update. Repeated reads now return the complete skill instructions instead of Skill already read.

Technical details

Compatibility

SkillRegistry::reset_activations remains as a deprecated no-op for patch-release source compatibility.

Deterministic concurrency check

The Runlet scheduling test now holds both independent calls at a two-party barrier. A five-second timeout still fails promptly if the calls are actually serialized.

Validation

cargo test -p agentkit-tool-skills, cargo check -p agentkit --features tool-skills, and cargo test -p agentkit-tool-compose --all-features pass. The formerly flaky concurrency test passed 30 consecutive targeted runs, and mdbook build book succeeds.

@danielkov
danielkov merged commit 5473b19 into main Aug 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant