feat: reduce skill startup context without workflow changes - #35
Merged
Merged
Conversation
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: context-pointer-skills
Spec-Slice: SPEC-20260820-SKILL-ROUTING-XML
Spec-Slice: SPEC-20260820-SKILL-ROUTING-XML
Spec-Slice: SPEC-20260820-SKILL-ROUTING-XML
Spec-Slice: SPEC-20260820-SKILL-ROUTING-XML
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.
Objective
Apply the progressive-disclosure and context-load pattern described in Matt Pocock's Writing for Agents to OMP Pantheon. Execution turns receive only relevant skill catalog entries while OMP discovery,
skill://reads, mandatory trigger policy, project-local filtering, session behavior, and every non-skill system-prompt byte retain their previous behavior.Implementation
before_agent_starthandler parses the existing<skills>block fromevent.systemPrompt; it never scans a second registry.<skill name="…">…</skill>blocks.Skill[]discovery,resources_discover, manual commands, project-localskills.includeSkills, andskill://resolution remain unchanged.Compatibility evidence
The original six-scenario evaluation remains recorded in
evals/evidence/progressive-skill-routing-2026-08-19.json: five deterministic cases match the full-catalog baseline skill set exactly; the ambiguous case restores the exact original prompt.Correction-specific runtime evidence:
using-superpowersplusplaywright, openedhttps://example.com, and returnedExample Domain; no routing fallback was logged.PERSISTENCIA_OK; no routing fallback was logged.539747d80f861aa8359a7da1d9014e25c57f9e57602bccda54284bccdfba04f7.herdr;skill://playwrightremained unavailable. Its uncertain decision fell back to that one-entry local catalog, not the global catalog.No raw prompts, credentials, private traces, or local machine paths are committed as evidence.
Verification
bun test: 539 pass, 1 skip, 0 fail; 1,802 assertions.bun run typecheck: pass, including both extensions.bun run format:check: pass; 107 files checked.bun run lint: pass; 107 files checked.run-smoke-20260820075730, suitesmoke, 12 pass, 0 fail, 0 critical regressions, privacy sanitized, SpecSafe sliceSPEC-20260820-SKILL-ROUTING-XML, commit rangemain..HEAD.PASS.Tradeoff
Each execution turn adds one active-model routing call. The fail-open design prefers the original project-visible catalog whenever selection is uncertain, so latency/cost can increase without reducing previous skill availability or changing user-turn behavior.