Skills: marketplace.json source adapter + ComposioHQ default source (107 skills, one fetch) - #126
Merged
Merged
Conversation
… source Browsing a large skill collection by scraping every SKILL.md is O(N) raw fetches — ComposioHQ's 864 files measured at ~159s, far past an inline (zero-daemon) browse request's timeout. Repos increasingly publish a machine-readable `.claude-plugin/marketplace.json` (the Claude plugin-marketplace standard); reading it is ONE fetch for the whole curated list. - Tiger_Skill_Source_Marketplace — reads `.claude-plugin/marketplace.json`, handles flat (`source`) and grouped (`skills[]`) plugins, resolves paths against a configurable repo root (traversal-refused), and emits the same normalized entries as SkillsDir (install/dedup/search unchanged). A network seam (`_manifestRaw`) makes it unit-testable offline. - Wire ComposioHQ/awesome-claude-skills as a second built-in source via the new adapter — 107 skills in one fetch. Community-curated, NOT an endorsement (Tiger browses, never vouches; review-before-install stands). - Tests: flat+grouped parsing, root resolution, traversal/empty rejection, both built-in sources registered; seed both built-in caches so no unit test hits the network. 9 Skill tests, 817 unit total, green. - Regenerate CAPABILITIES.md; document the two adapter kinds + the registry landscape in TIGERSKILLS.md §2a. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Why
Browsing a large skill collection by scraping every
SKILL.mdis O(N) raw fetches — ComposioHQ's 864 files measured at ~159s, far past what the inline (zero-daemon) browse request can hold. Repos increasingly ship a machine-readable.claude-plugin/marketplace.json(the Claude plugin-marketplace standard); reading it is one fetch for the whole curated list.What
Tiger_Skill_Source_Marketplace— reads.claude-plugin/marketplace.json, handles flat (source) and grouped (skills[]) plugins, resolves paths against a configurable reporoot(traversal-refused), and emits the same normalized entries asSkillsDir— so install/dedup/search are unchanged. A network seam (_manifestRaw) makes it unit-testable offline.TIGERSKILLS.md§2a (rawSkillsDirvs. manifestMarketplace), plus the sibling registry landscape (.well-known/agent-skills/index.json, SkillMD/OpenAgentSkill/skillregistry APIs) as roadmap. (index.dev, checked, is a dev-hiring marketplace — unrelated.)Tests
--checkclean).🤖 Generated with Claude Code