feat(compatibility): write declared compatibility_json on publish, sync and backfill
维护者通常 1 天内回复
@mrgoonie 已经在做这个了。
开始于 2026年10月22日。
评估
这个 Issue 还没有评估数据。
描述
Problem
The catalog's compatibility display, introduced in #90 ("agent-native discovery and compatibility"), reads skills.compatibility_json and package_releases.compatibility_json. Each declaration goes through the shared validator in @skillx/contracts. Nothing on main writes either column: origin/main has no non-test writer.
So every catalog row, the .md pages, llms.txt/llms-full.txt and the MCP discovery tools report compatibility as "unknown" for every skill. The feature is live but shows nothing.
Proposal
Add a write path that fills the declared compatible map from what the publisher actually declares:
- Source of the declaration:
- the SKILL.md frontmatter, or the release manifest, field
compatible/compatibility(for example{ "agentkit": { "status": "declared", "versions": ">=1.0.0" } }); - for skills synced from GitHub, the same field read during seed/sync.
- the SKILL.md frontmatter, or the release manifest, field
- Validate on write: use the same
@skillx/contractsvalidator the reader uses. An invalid shape is stored asNULL("unknown"), never as a partial value. Writes are idempotent. - When to write: on release publish into
package_releases.compatibility_json, and on skill create/update/sync intoskills.compatibility_json. Invalidate the llms cache key, or bump its version, when a declaration changes. - Backfill: a one-off backfill of existing rows from their stored SKILL.md content. Back up D1 first (Time Travel restore point plus per-table export, because the FTS5 tables block a full
wrangler d1 export). - Never infer: do not infer compatibility from content heuristics. Only a declaration counts.
Acceptance
- Publishing a release with a valid declaration stores it; publishing one with an invalid declaration stores
NULL. Covered by tests. - Creating or syncing a skill whose frontmatter declares compatibility stores it.
- Catalog,
.md,llms*.txtand MCP surfaces show the declared status for those skills. - The backfill has run on production after a D1 backup, with the counts of declared and unknown rows recorded.
- Docs updated:
docs/api-reference.mdand the publisher guide describe how to declare compatibility.
Context: found during the review of #90 (rebuilt from #41). Related AgentKit epic: bestagentkits/agentkit#2274.
- 主要语言
- TypeScript
- 星标
- 193
- 派生
- 43
- 平均合并
- 4 小时 5 分钟
- 30 天内合并 PR
- 54
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
nextlevelbuilder/skillx 的其他 Issue
-
ai-handle
难度 2/5 1-3 小时 新手友好度 83/100
nextlevelbuilder/skillx#105 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 76/100
nextlevelbuilder/skillx#28 ·
维护者通常 1 天内回复
-
refactor
难度 2/5 1-3 小时 新手友好度 82/100
nextlevelbuilder/skillx#27 ·
维护者通常 1 天内回复
-
fix(search): FTS5 sanitizer glues hyphenated words, strips non-ASCII queries and breaks on NOT/AND/OR可能已有人在做 @mrgoonie 于 1 天前认领。 未关闭ai-handle bug in progress
nextlevelbuilder/skillx#156 · 已指派 1 人 ·
维护者通常 1 天内回复
-
chore(security): enable GitHub private vulnerability reporting可能已有人在做 @mrgoonie 于 1 天前认领。 未关闭blocked
nextlevelbuilder/skillx#153 · 已指派 1 人 ·
维护者通常 1 天内回复
查看 nextlevelbuilder/skillx 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 65/100
lichess-org/lila#22324 · 1 条评论 ·
维护者通常 1 天内回复
-
ep:WebGPU platform:web quantization
难度 2/5 1-3 小时 新手友好度 66/100
microsoft/onnxruntime#33752 ·
维护者通常 2 天内回复
-
[Skill Bug]: entra-agent-id: inaccurate blueprint permission inheritance and parent token sub claim未关闭bug entra-agent-id
难度 2/5 1-3 小时 新手友好度 78/100
microsoft/GitHub-Copilot-for-Azure#3467 · 1 条评论 ·
维护者通常 1 天内回复
-
fix(worker): keep normal prepare waiting states failure-free可能已有人在做 @LichKing-2234 今天认领。 未关闭agent:codex priority:P1
难度 2/5 1-3 小时 新手友好度 72/100
AgoraIO-Extensions/agent-infra#3745 ·
维护者通常 1 天内回复
-
The five-line work window can drop its oldest line: the per-line byte share ignores the JSON framing可能已有人在做 @Eapp1e 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 84/100
makecindy/cindy#7973 · 1 条评论 ·
维护者通常 1 天内回复