Repository navigation
Fix explicit skill availability in empty mode - #110
Merged
Merged
Conversation
Enable explicitly supplied skill directories without restoring ambient discovery. Reject global-disable conflicts, validate inputs and real SDK availability before sending, and persist separate discovery evidence with focused offline and unbilled runtime coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Record the authorized patch release version and dated fix notes, refresh local-package locks, and align release metadata checks and docs workflow examples. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This was referenced Oct 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Explicit
skill_directoriesnow set public SDKenable_skills=True, including in empty mode, without enabling ambient configuration discovery. The runner validates individual directories or parents and verifies requested skill path/name and enabled state through publicsession.rpc.skills.ensure_loaded(),reload(), andlist()before its single send. Missing, invalid, unreadable, duplicate-name, or undiscovered skills fail clearly without a model send or replacement attempt. No skill read is forced.Nonempty directories combined with
enable_skills=Falseare rejected. Empty directories with explicit disabling and nameddisabled_skillsremain supported. Passthrough directories cannot silently overwrite explicit inputs.Public
DiscoveredSkill,SkillDiscovery, andCopilotResult.skill_discoverypreserve actual availability and diagnostics separately from configuration and observed reads. Current native schema-4.0 evidence requires the discovery field (null means unchecked); older evidence missing it must be regenerated. Docs and release notes explain these contracts.Regressions were added and reproduced before implementation. Real public SDK checks now expose exactly the individual/parent requested skills and no ambient skills. SDK instruction-source enumeration lists inactive candidate files; a blocked outgoing request confirms ambient instruction contents stay out of actual model context.
The user subsequently authorized merging and publishing this fix. Release preparation now sets
project.version=1.0.1, refreshes both local-package locks, dates the fix notes, and aligns release invariant checks and docs workflow examples. Publication will follow the repository's guarded Release workflow after required checks pass and this PR merges.Type of Change
Contradictory skill intent is rejected and current native evidence requires the discovery field. The schema version remains 4.0; the package version advances to 1.0.1.
Checklist
Testing
No paid behavior/effectiveness tests or quickstart model execution were run: model spending remains forbidden. These checks establish discovery, isolation, setup failures, evidence persistence, and single-attempt behavior, not skill effectiveness. ExcelMcp remains untouched.
Related Issues
Fixes #109