mirror of
https://git.openapi.site/https://github.com/desirecore/market.git
synced 2026-06-06 05:50:41 +08:00
17fe79ab4952e2f670116e357e0a374d023977df
## 概述 / Summary 把 docx 技能对"客户端预装运行时依赖"的复用方式从 **bash 包装脚本**改为**跨平台 runtime 启动器**,实现 Win/macOS/Linux 一致、不依赖 Git Bash,并修复若干 POSIX 硬编码导致的 Windows 崩溃点。 Switch the docx skill's reuse of client-preinstalled runtime deps from a **bash wrapper** to **cross-platform runtime launchers**, so it behaves identically on Win/macOS/Linux without Git Bash, and fix several POSIX-hardcoded crashes on Windows. ## 改动 / Changes - **新增 / Add** `scripts/preload-deps.cjs`(Node 预加载,注入 `NODE_PATH`)与 `scripts/with-deps.py`(Python 启动器,按需切换到内置含 lxml 的 Python);**删除** bash 版 `with-deps.sh`。 - 生成走 `node -r preload-deps.cjs`,office 脚本走 `python with-deps.py` —— 离线复用预装的 docx-js / defusedxml / lxml,免每次 `npm`/`pip install`,且**不依赖 bash**。 - `comment.py` 补 defusedxml sys.path shim;`validate.py` 修临时目录泄漏(atexit 清理)。 - `accept_changes.py` 去除 `/tmp` 硬编码(`tempfile.gettempdir` + `Path.as_uri`);`soffice.py` 仅 Linux 启用 AF_UNIX shim,避免 Windows 崩溃。 - `SKILL.md` / `SKILL.zh-CN.md` 同步命令形式、加 ESM 警告与外部工具(pandoc/LibreOffice/poppler)跨平台安装指引,`source_hash` 重算。 ## 测试 / Testing - 真实 dev 根目录端到端:生成 docx(免安装)+ 完整 XSD 校验(含 lxml)+ unpack/pack 往返均通过。 - 仓库 `validate-i18n.py` 校验通过;全 py 脚本 `py_compile` + `preload-deps.cjs` `node --check` 通过。 --- - [x] 我已阅读并同意 CLA / I have read and agree to the CLA Co-authored-by: 张馨元 <zhangxy@iynss.com> Co-authored-by: Yige <a@wyr.me>
DesireCore Market
DesireCore 官方市场仓库,存放经过官方验证的 Agent 和 Skill 定义。
目录结构
.
├── manifest.json # 仓库元数据
├── categories.json # 分类配置
├── README.md # 本文件
├── agents/ # Agent 定义目录
│ ├── task-master/
│ │ └── agent.json
│ ├── code-reviewer/
│ │ └── agent.json
│ ├── business-analyst/
│ │ └── agent.json
│ ├── writing-coach/
│ │ └── agent.json
│ ├── translator/
│ │ └── agent.json
│ └── data-analyst/
│ └── agent.json
└── skills/ # Skill 定义目录
├── web-search/
│ └── skill.json
├── file-manager/
│ └── skill.json
├── calendar-sync/
│ └── skill.json
├── doc-parser/
│ └── skill.json
└── email-client/
└── skill.json
Agent 清单
| ID | 名称 | 分类 | 定位 |
|---|---|---|---|
| task-master | 任务管家 | 效率 | 智能任务规划与追踪专家 |
| code-reviewer | 代码审查官 | 开发 | 资深代码审查与质量把控 |
| business-analyst | 商业洞察师 | 商业 | 数据驱动的商业分析顾问 |
| writing-coach | 写作教练 | 创意 | 从构思到润色的写作伙伴 |
| translator | 译界通 | 沟通 | 跨文化沟通与专业翻译 |
| data-analyst | 数据洞察师 | 数据 | 数据科学与业务洞察专家 |
Skill 清单
| ID | 名称 | 分类 | 风险等级 | 功能概述 |
|---|---|---|---|---|
| web-search | 网络搜索 | 效率 | 中 | 智能搜索与信息聚合 |
| file-manager | 文件管家 | 开发 | 高 | 本地文件系统管理 |
| calendar-sync | 日历同步 | 商业 | 中 | 日历服务连接与调度 |
| doc-parser | 文档解析器 | 数据 | 低 | 50+ 格式文档解析 |
| email-client | 邮件助理 | 沟通 | 高 | 智能邮件管理与起草 |
数据格式
Agent 定义 (agents/{id}/agent.json)
{
"id": "string",
"name": "string",
"avatar": { "t": "string", "bg": "string" },
"shortDesc": "string",
"fullDesc": "string",
"category": "productivity|development|business|creative|communication|data",
"tags": ["string"],
"version": "semver",
"latestVersion": "semver",
"updatedAt": "YYYY-MM-DD",
"maintainer": { "name": "string", "verified": boolean },
"downloads": number,
"rating": number,
"ratingCount": number,
"installStatus": "not_installed",
"persona": {
"role": "string",
"traits": ["string"],
"tools": ["string"]
}
}
Skill 定义 (skills/{id}/skill.json)
{
"id": "string",
"name": "string",
"icon": "lucide-icon-name",
"shortDesc": "string",
"fullDesc": "string",
"category": "productivity|development|business|creative|communication|data",
"tags": ["string"],
"version": "semver",
"latestVersion": "semver",
"updatedAt": "YYYY-MM-DD",
"maintainer": { "name": "string", "verified": boolean },
"downloads": number,
"rating": number,
"ratingCount": number,
"installStatus": "not_installed",
"riskLevel": "low|medium|high",
"requires": {
"tools": ["string"],
"connections": ["string"]
},
"compatibleAgents": ["string"]
}
设计令牌
头像背景色使用 DesireCore 设计系统:
- Green (#34C759): 效率、商业类
- Blue (#007AFF): 开发、沟通类
- Purple (#AF52DE): 创意、数据类
多语言(i18n)
仓库支持多语言展示与多语言 SKILL.md 正文。当前覆盖 zh-CN(简体中文,源语言)与 en-US(英文,默认 fallback),由 manifest.json#supportedLocales 声明。
- 作者只交一种语言,CI 自动翻译为其余语言。CI 默认走 GitHub Models(
openai/gpt-5-mini,使用 repo 内置GITHUB_TOKEN+permissions: models: read);可切到 Anthropic Claude(设置vars.TRANSLATE_BACKEND=anthropic与secrets.ANTHROPIC_API_KEY)。 - 顶层
name字段为 ASCII slug(== 目录名),中文显示名安放在metadata.i18n.zh-CN.name,符合 agentskills.io 规范。 - 正文文件:
SKILL.md(默认语言)+SKILL.<locale>.md(其他语言)兄弟文件。
工具:
# 校验 i18n 完整性
uv run scripts/i18n/validate-i18n.py
# 检查哪些 locale 缺翻译(不调 API)
uv run scripts/i18n/translate.py --check
# 本地翻译:默认 GitHub Models(需要 fine-grained PAT 含 Models: Read)
GITHUB_TOKEN=ghp_... uv run scripts/i18n/translate.py
# 切到 Anthropic Claude
TRANSLATE_BACKEND=anthropic ANTHROPIC_API_KEY=sk-ant-... \
uv run scripts/i18n/translate.py
详细规范见 docs/I18N.md。
许可证
MIT License - 详见 LICENSE
Description
Languages
Python
73.1%
HTML
23.8%
Shell
1.7%
JavaScript
1.1%
PowerShell
0.3%