feat: 新增 Archify 与 LumaRescue 两个第三方入口 (archify, lumarescue) (#167)

## 概述
以 `entry.json` pointer 形式收录两个第三方技能:
- [tt-a1i/archify](https://github.com/tt-a1i/archify)
- [justlovemaki/LumaRescue](https://github.com/justlovemaki/LumaRescue)

## 遵循 ADR-038(市场元数据注册表与两层技能模型)
- **只放元数据、不放内容**:仅新增两个 `skills/<id>/entry.json`,正文留在上游源仓库,不 vendoring
任何源码。
- **source pointer**:均 `kind=git` + repoUrl + repoBranch=main,`ref` 锁定
SHA。
- **轻量 i18n**:仅 name/shortDesc(zh-CN / en-US),列表本地化可离线。

### archify
- `stewardship: community`、`license: MIT`、`redistribution:
allowed`,category `development`。
- SKILL.md 位于 `archify/` 子目录,`source.path=archify`,ref
`c1443b31b496eebf4a68bf83151816c955ddb796`。

### lumarescue
- 上游未声明 license,判定 `stewardship: pointer`、`license:
not-declared`、`redistribution:
source-pointer-only`(仅安装时从上游获取并提示条款,market 内不分发内容),category `creative`。
- SKILL.md 位于仓库根,故不写 `source.path`,ref
`14cd76cea24e825e079fa2dfa5c5322002d6dc4e`。

## 变更
- 新增 `skills/archify/entry.json`、`skills/lumarescue/entry.json`
- `manifest.json` stats.totalSkills 69 → 71,version 1.5.1 →
1.5.2,lastUpdated → 2026-09-12
- `README.md` external 29→31 / total 69→71,External entries 清单按字母序插入
`archify`、`lumarescue`

## 验证
```
uv run scripts/i18n/validate-i18n.py
0 error(s), 129 warning(s).
```
(warnings 均为既有 builtin 的 legacy 遗留告警,与本 PR 无关)

Co-authored-by: yi-ge <a@wyr.me>
This commit is contained in:
mashagua
2026-09-19 19:26:39 +08:00
committed by GitHub
parent afa4be0aaa
commit 2f52cc6731
6 changed files with 238 additions and 6 deletions

View File

@@ -0,0 +1,80 @@
{
"$schema": "../../schemas/catalog-metadata.v1.schema.json",
"schemaVersion": 1,
"identity": {
"kind": "skill",
"id": "archify"
},
"presentation": {
"defaultLocale": "en-US",
"i18n": {
"en-US": {
"name": "Archify",
"summary": "Compile a codebase or system description into interactive, verifiable architecture/workflow/sequence/data-flow/lifecycle diagrams — self-contained HTML/SVG with motion and crisp export, for Claude Code, Codex and Cursor"
},
"zh-CN": {
"name": "Archify",
"summary": "把代码库或系统描述编译成可交互的系统架构图(架构/流程/时序/数据流/生命周期),产出自带动效、可校验、可导出的单文件 HTML/SVG,适配 Claude Code、Codex、Cursor"
}
},
"category": "development",
"tags": [
"architecture",
"diagram",
"visualization",
"development"
]
},
"release": {
"state": "unknown"
},
"timestamps": {
"catalogUpdatedAt": {
"state": "known",
"value": "2026-09-12T02:26:16Z",
"precision": "second"
},
"releasePublishedAt": {
"state": "unknown"
},
"reviewedAt": {
"state": "unknown"
},
"upstreamObservedAt": {
"state": "known",
"value": "2026-09-12T02:26:16Z",
"precision": "second"
}
},
"provenance": {
"content": {
"kind": "git",
"url": "https://github.com/tt-a1i/archify.git",
"path": "archify",
"ref": "c1443b31b496eebf4a68bf83151816c955ddb796"
}
},
"governance": {
"stewardship": "community",
"availability": "listing-only",
"license": {
"state": "known",
"value": "MIT",
"evidencePath": "LICENSE"
},
"redistribution": "allowed",
"upstreamMaintainer": {
"name": "tt-a1i",
"url": "https://github.com/tt-a1i/archify",
"verified": false
}
},
"compatibility": {
"platforms": {
"state": "unknown"
}
},
"spec": {
"kind": "skill"
}
}

38
skills/archify/entry.json Normal file
View File

@@ -0,0 +1,38 @@
{
"id": "archify",
"name": "Archify",
"category": "development",
"icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"><rect x=\"3\" y=\"4\" width=\"7\" height=\"6\" rx=\"1\" stroke=\"#2563EB\" stroke-width=\"1.7\"/><rect x=\"14\" y=\"14\" width=\"7\" height=\"6\" rx=\"1\" stroke=\"#2563EB\" stroke-width=\"1.7\"/><path d=\"M6.5 10v3.5H17.5V14\" stroke=\"#2563EB\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>",
"tags": [
"architecture",
"diagram",
"visualization",
"development"
],
"i18n": {
"zh-CN": {
"name": "Archify",
"shortDesc": "把代码库或系统描述编译成可交互的系统架构图(架构/流程/时序/数据流/生命周期),产出自带动效、可校验、可导出的单文件 HTML/SVG,适配 Claude Code、Codex、Cursor"
},
"en-US": {
"name": "Archify",
"shortDesc": "Compile a codebase or system description into interactive, verifiable architecture/workflow/sequence/data-flow/lifecycle diagrams — self-contained HTML/SVG with motion and crisp export, for Claude Code, Codex and Cursor"
}
},
"maintainer": {
"name": "tt-a1i",
"verified": false,
"account": "tt-a1i",
"url": "https://github.com/tt-a1i/archify"
},
"stewardship": "community",
"license": "MIT",
"redistribution": "allowed",
"source": {
"kind": "git",
"repoUrl": "https://github.com/tt-a1i/archify.git",
"repoBranch": "main",
"ref": "c1443b31b496eebf4a68bf83151816c955ddb796",
"path": "archify"
}
}

View File

@@ -0,0 +1,77 @@
{
"$schema": "../../schemas/catalog-metadata.v1.schema.json",
"schemaVersion": 1,
"identity": {
"kind": "skill",
"id": "lumarescue"
},
"presentation": {
"defaultLocale": "en-US",
"i18n": {
"en-US": {
"name": "LumaRescue",
"summary": "AI bad-photo rescue skill — reshapes light, applies master-level composition, restores damage and enhances aesthetics while preserving subject identity and factual content, for Codex/Doubao desktop"
},
"zh-CN": {
"name": "LumaRescue 废片拯救",
"summary": "AI 废片拯救技能:在保留主体身份与事实内容的前提下,通过光影重塑、大师级构图、照片修复与审美增强把普通照片修成惊艳成片,适配 Codex/豆包桌面版"
}
},
"category": "creative",
"tags": [
"photo",
"restoration",
"enhancement",
"creative"
]
},
"release": {
"state": "unknown"
},
"timestamps": {
"catalogUpdatedAt": {
"state": "known",
"value": "2026-09-12T02:26:16Z",
"precision": "second"
},
"releasePublishedAt": {
"state": "unknown"
},
"reviewedAt": {
"state": "unknown"
},
"upstreamObservedAt": {
"state": "known",
"value": "2026-09-12T02:26:16Z",
"precision": "second"
}
},
"provenance": {
"content": {
"kind": "git",
"url": "https://github.com/justlovemaki/LumaRescue.git",
"ref": "14cd76cea24e825e079fa2dfa5c5322002d6dc4e"
}
},
"governance": {
"stewardship": "pointer",
"availability": "listing-only",
"license": {
"state": "unknown"
},
"redistribution": "source-pointer-only",
"upstreamMaintainer": {
"name": "justlovemaki",
"url": "https://github.com/justlovemaki/LumaRescue",
"verified": false
}
},
"compatibility": {
"platforms": {
"state": "unknown"
}
},
"spec": {
"kind": "skill"
}
}

View File

@@ -0,0 +1,37 @@
{
"id": "lumarescue",
"name": "LumaRescue",
"category": "creative",
"icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"><rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" stroke=\"#2563EB\" stroke-width=\"1.7\"/><circle cx=\"9\" cy=\"10\" r=\"2\" stroke=\"#2563EB\" stroke-width=\"1.7\"/><path d=\"m6 18 5-4 3 2.5L18 12l3 3\" stroke=\"#2563EB\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>",
"tags": [
"photo",
"restoration",
"enhancement",
"creative"
],
"i18n": {
"zh-CN": {
"name": "LumaRescue 废片拯救",
"shortDesc": "AI 废片拯救技能:在保留主体身份与事实内容的前提下,通过光影重塑、大师级构图、照片修复与审美增强把普通照片修成惊艳成片,适配 Codex/豆包桌面版"
},
"en-US": {
"name": "LumaRescue",
"shortDesc": "AI bad-photo rescue skill — reshapes light, applies master-level composition, restores damage and enhances aesthetics while preserving subject identity and factual content, for Codex/Doubao desktop"
}
},
"maintainer": {
"name": "justlovemaki",
"verified": false,
"account": "justlovemaki",
"url": "https://github.com/justlovemaki/LumaRescue"
},
"stewardship": "pointer",
"license": "not-declared",
"redistribution": "source-pointer-only",
"source": {
"kind": "git",
"repoUrl": "https://github.com/justlovemaki/LumaRescue.git",
"repoBranch": "main",
"ref": "14cd76cea24e825e079fa2dfa5c5322002d6dc4e"
}
}