forked from arechen/EapilSkillMarket
Sync third-party and MCP marketplace plugins
Constraint: Public skills are published only by explicit administrator action unless they are tracked third-party market sources. Confidence: high Scope-risk: narrow Directive: Keep private/internal skills out of the public marketplace and preserve normal incremental market Git history. Tested: Marketplace validation passed.
This commit is contained in:
1 parent
6a0a022257
commit
f4d6b4228b
7 files changed
+28
-14
No files matched your search
@@ -105,8 +105,8 @@
|
||||
"repo": "https://github.com/nextlevelbuilder/ui-ux-pro-max-skill.git",
|
||||
"ref": "main",
|
||||
"adapter": "claude-skill",
|
||||
"commit": "d14efff8ed1faa4187f004f79926f428c8074ec7",
|
||||
"syncedAt": "2026-10-23T16:00:00Z"
|
||||
"commit": "28b3b8dee8c976df4fa3e94aed4e092ad43fcb03",
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "caveman",
|
||||
@@ -132,8 +132,8 @@
|
||||
"repo": "https://github.com/shadcn-ui/ui.git",
|
||||
"ref": "main",
|
||||
"adapter": "claude-skill",
|
||||
"commit": "481d523374745e77d0cf9c53a4115ab5dd7c8481",
|
||||
"syncedAt": "2026-10-25T16:00:00Z"
|
||||
"commit": "8f04138777c1b6996e709993362a7b0a12888ecf",
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "frontend-slides",
|
||||
@@ -258,8 +258,8 @@
|
||||
"repo": "https://github.com/vercel/next.js.git",
|
||||
"ref": "canary",
|
||||
"adapter": "skill-collection",
|
||||
"commit": "cbf49db30a655ac17c92c2951885c4256db14b9e",
|
||||
"syncedAt": "2026-10-25T16:00:00Z"
|
||||
"commit": "b0e1bf792f18c039933d8a9ce9d50d35f930f1be",
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
},
|
||||
{
|
||||
"id": "shuorenhua",
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
"name": "playwright浏览器自动化操作",
|
||||
"version": "20260605",
|
||||
"keySource": "none",
|
||||
"syncedAt": "2026-10-25T16:03:14Z"
|
||||
"syncedAt": "2026-10-26T16:03:14Z"
|
||||
}
|
||||
@@ -2,8 +2,8 @@
|
||||
"sourceId": "next-skills",
|
||||
"repo": "https://github.com/vercel/next.js.git",
|
||||
"ref": "canary",
|
||||
"commit": "cbf49db30a655ac17c92c2951885c4256db14b9e",
|
||||
"commit": "b0e1bf792f18c039933d8a9ce9d50d35f930f1be",
|
||||
"adapter": "skill-collection",
|
||||
"sourcePath": "skills",
|
||||
"syncedAt": "2026-10-25T16:00:00Z"
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
}
|
||||
@@ -2,8 +2,8 @@
|
||||
"sourceId": "shadcn",
|
||||
"repo": "https://github.com/shadcn-ui/ui.git",
|
||||
"ref": "main",
|
||||
"commit": "481d523374745e77d0cf9c53a4115ab5dd7c8481",
|
||||
"commit": "8f04138777c1b6996e709993362a7b0a12888ecf",
|
||||
"adapter": "claude-skill",
|
||||
"sourcePath": "skills/shadcn",
|
||||
"syncedAt": "2026-10-25T16:00:00Z"
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
}
|
||||
@@ -2,8 +2,8 @@
|
||||
"sourceId": "ui-ux-pro-max",
|
||||
"repo": "https://github.com/nextlevelbuilder/ui-ux-pro-max-skill.git",
|
||||
"ref": "main",
|
||||
"commit": "d14efff8ed1faa4187f004f79926f428c8074ec7",
|
||||
"commit": "28b3b8dee8c976df4fa3e94aed4e092ad43fcb03",
|
||||
"adapter": "claude-skill",
|
||||
"sourcePath": ".claude/skills/ui-ux-pro-max",
|
||||
"syncedAt": "2026-10-23T16:00:00Z"
|
||||
"syncedAt": "2026-10-26T16:00:00Z"
|
||||
}
|
||||
@@ -856,7 +856,7 @@ def _stack_query_requests_legacy(query, stack):
|
||||
if current_version is not None and stack_name is not None:
|
||||
matches = re.finditer(
|
||||
rf"\b(?:{stack_name})\s*(?:sdk|ui)?\s*(?:[@(]\s*)?(?:v(?:ersion)?\s*)?"
|
||||
rf"(\d+)(?:\.(\d+))?\s*\)?",
|
||||
rf"(\d+)(?:\.(\d+))?(?!\w)\s*\)?",
|
||||
normalized,
|
||||
)
|
||||
requested_versions = [
|
||||
|
||||
+14
@@ -116,6 +116,20 @@ class TestWebStackFreshness(unittest.TestCase):
|
||||
{row["Status"] for row in result["results"]}, {"deprecated"}
|
||||
)
|
||||
|
||||
def test_number_starting_a_word_is_not_a_version(self):
|
||||
cases = {
|
||||
"react": "react 3d canvas effect cleanup",
|
||||
"html-tailwind": "tailwind 2xl breakpoint",
|
||||
"angular": "angular 2fa login form",
|
||||
}
|
||||
for stack, query in cases.items():
|
||||
with self.subTest(stack=stack, query=query):
|
||||
result = search_stack(query, stack)
|
||||
self.assertGreater(result["count"], 0)
|
||||
self.assertNotIn(
|
||||
"deprecated", {row["Status"] for row in result["results"]}
|
||||
)
|
||||
|
||||
def test_old_major_without_curated_legacy_guidance_abstains(self):
|
||||
result = search_stack("Astro 5 content collections", "astro")
|
||||
self.assertEqual(result["count"], 0)
|
||||
|
||||
Reference in new issue
Block a user