Files
market/skills/markdown/SKILL.md
xyx 0cb3758669 fix: 补全 dashscope-image-gen 和 xiaomi-tts 的 i18n CI 校验 (#4)
## 变更说明

修复 dashscope-image-gen 和 xiaomi-tts 的 i18n CI 校验、补全英文翻译,并连带修复其他 stale
skill 的 source_hash 漂移问题。

### dashscope-image-gen / xiaomi-tts(PR 主线)
- `name` 字段从中文改为目录名(CI rule-1 要求 lowercase ASCII + hyphens)。
- 补全 `metadata.i18n` 块:`locales`、`zh-CN` (含 body 指向
SKILL.zh-CN.md)、`en-US`(含 description / body=./SKILL.md)。
- 新增 `SKILL.zh-CN.md`(zh-CN body 文件)。
- **root SKILL.md 改写为英文 body**(与 SKILL.zh-CN.md 内容对应),由本 PR
手工翻译;`default_locale=en-US`、`source_locale=zh-CN`,与 docs/I18N.md
约定一致:root SKILL.md = default_locale body (en-US)、SKILL.zh-CN.md =
source_locale body (zh-CN)。
- 两 locale 锁为 `translated_by: human` + 正确 `source_hash`。
- 内容质量修复:流程标题 "严格按此两步执行" 改为 "严格按此三步执行";强制规则 2 措辞精确化(/tmp
仅作中转);xiaomi-tts 用户意图映射表中 `response_format` 改为 `audio.format`
与请求体参数表一致;zh-CN.description 改为纯中文。
- locale header 由 shell 转义残留 `<\!--` 修正为标准 `<!-- locale: zh-CN -->`。

### 连带:6 个 main 上已 stale 的 skill(避免 translate workflow 失败)
- `manage-skills` / `minimax-music-gen` / `minimax-video-gen` /
`skill-creator` / `web-access`:`en-US.source_hash` 重新计算为当前 zh-CN source
实际 hash;`translated_by` 由 `ai:claude-opus-4-7` 改为 `human`
以锁定现有翻译不被自动重译覆盖。
- `markdown`:补正 `en-US.source_hash`(之前是占位 `sha256:0000000000000000`)。
- 这些 skill 的 `en-US` 翻译内容保持不变,仅修正元数据。

### scripts/i18n/translate.py 容错增强
- 413 Payload Too Large 时不再 retry(payload 不会变小,retry 浪费时间)。
- 主循环 catch RuntimeError,把单个 skill 的失败写入 `plan["errors"]` 后继续处理下一个
skill,避免一个大文件 fail 整个 workflow。
- `--check` 模式下 plans 含 errors 也 exit 1(之前仅看 needs_translation,broad
except 会把异常吃掉导致误报通过)。

## Test plan

- [x] `i18n-validate` 通过
- [x] `i18n-translate --check` 显示所有 skill `up-to-date` 或 `human-locked,
skipping`
- [x] CI 上 `validate` / `translate` / `wait-for-copilot-review` 全绿
- [ ] Copilot 评审 conversation 全部 resolve
- [ ] Squash merge

---------

Co-authored-by: yi-ge <a@wyr.me>
2026-05-13 12:57:25 +08:00

7.2 KiB
Raw Permalink Blame History

name, description, version, type, risk_level, status, disable-model-invocation, tags, metadata, market
name description version type risk_level status disable-model-invocation tags metadata market
markdown Use this skill whenever the user wants to create, write, organize, or draft Markdown documents (.md files). Triggers include: any mention of "md", ".md", "markdown", or requests to produce written deliverables such as reports, summaries, plans, outlines, meeting notes, lists, tables, contracts, memos, weekly reports, or any text-based document without a specific format requirement (Word/PDF/Excel/PPT). When the user asks to "write a report", "organize a table", "draft a plan", "make a list", or similar — and does not specify a particular file format — default to Markdown. Do NOT use for binary document formats (.docx, .pdf, .xlsx, .pptx) — use the corresponding skill instead. Use when 用户提到 整理、准备、汇总、梳理、归纳、制作、生成、起草、编写、 创建、文档、报告、表格、清单、方案、计划、总结、大纲、合同、纪要、周报、 月报、邮件、对比分析、会议记录、散文、文章、作文、md、markdown、report、 summary、plan、outline、memo、table、list、draft、document、notes、 write、create、organize。 1.0.0 procedural low enabled false
markdown
md
document
text
author updated_at i18n
desirecore 2026-05-11
default_locale source_locale locales zh-CN en-US
en-US zh-CN
zh-CN
en-US
name short_desc description body source_hash translated_by
Markdown 文档处理 创建、编辑 Markdown 文档(.md默认文本文档格式 当用户要求创建、撰写、整理任何书面产物且未指定特定格式时,使用此技能。 确保使用 Write 工具写入文件、告知绝对路径、并通过 SendUserMessage 发送附件。 ./SKILL.zh-CN.md sha256:0000000000000000 human
name short_desc description body source_hash translated_by
Markdown Document Processing Create and edit Markdown documents (.md), the default text format Use when the user requests any written deliverable without specifying a particular format. Ensures files are written via Write tool, absolute path is reported, and attachment is sent via SendUserMessage. ./SKILL.md sha256:2434b01b42d751c0 human
icon category maintainer channel
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><defs><linearGradient id="md-a" x1="4" y1="2" x2="20" y2="22" gradientUnits="userSpaceOnUse"><stop stop-color="#007AFF"/><stop offset="1" stop-color="#34C759"/></linearGradient></defs><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" fill="url(#md-a)" fill-opacity="0.1" stroke="url(#md-a)" stroke-width="1.5"/><path d="M14 2v6h6" stroke="url(#md-a)" stroke-width="1.5" stroke-linejoin="round"/><text x="7" y="17" font-size="7" font-weight="bold" fill="url(#md-a)" font-family="Arial">MD</text></svg> productivity
name verified
DesireCore Official true
latest

markdown Skill

L0: One-line Summary

Create Markdown documents (.md) using the Write tool, with proper file output and delivery to the user.

L1: Overview and Use Cases

Capability

markdown is a Procedural Skill that serves as the default document format when users request written deliverables without specifying Word/PDF/Excel/PPT. Markdown files can be directly opened and edited in DesireCore's built-in SuperDoc editor.

Use Cases

  • The user asks to create a report, summary, plan, outline, or any written document
  • The user asks to organize information into a table or list
  • The user asks to draft a memo, meeting notes, weekly report, etc.
  • The user asks to "write something" or "make a document" without specifying format
  • The user explicitly mentions "md", "markdown", or ".md"

L2: Detailed Specification

Output Rule (CRITICAL — violation = task failure)

After you create a .md file using the Write tool, you MUST complete these two final steps:

Final Step 1: Output a text reply containing:

  • A brief summary of what was created or changed
  • The file's full absolute path (copied from the Write tool result)

Template:

已为你创建「文档标题」,简要说明内容。

📄 文件位置:`/full/absolute/path/filename.md`

Final Step 2: Call SendUserMessage with the file as attachment. This MUST be your very last action. Do NOT output any text after this call.

SendUserMessage({
  message: "📄 点击下方附件打开文件",
  attachments: ["/full/absolute/path/filename.md"]
})

Correct vs Wrong

  • Write → text reply (with absolute path) → SendUserMessage (with attachment) → done
  • Write → text reply without absolute path
  • Write → no SendUserMessage
  • Write → SendUserMessage → more text output (e.g. "任务完成")
  • No Write at all, content output directly in chat

Forbidden

  • Outputting the full document content directly in the chat reply instead of writing to a file
  • Saying "好的,已完成" / "整理好了" / "以下是内容" without calling Write tool
  • Only giving a filename (e.g. "报告.md") without the full absolute path
  • Not calling SendUserMessage to deliver the file attachment
  • Outputting any text after SendUserMessage
  • Writing memory files about the document creation task — creating/editing a document is a one-time task, NOT a user preference or fact to remember

Overview

Markdown (.md) is a lightweight text format. The Write tool accepts the content directly — no compilation, no external dependencies. The file is immediately available for viewing in DesireCore's SuperDoc editor.

Creating New Documents

Workflow

  1. Determine content structure (headings, sections, tables)
  2. Choose file path: user specified > workspace directory
  3. Call Write tool with full absolute path + complete content
  4. Output text reply with summary + absolute path
  5. Call SendUserMessage with file attachment (last action)

File Naming

  • Use descriptive names: 2026-05-11-项目进度表.md, 会议纪要-产品评审.md
  • Avoid generic names like output.md or document.md
  • Use the workspace directory as default location

Complete Example

User: "帮我整理一份项目进度表"

Write:

Write({
  file_path: "/Users/zhangxinyuan/.desirecore-dev/users/.../workspace/2026-05-11-项目进度表.md",
  content: "# 项目进度表\n\n| 模块 | 状态 | 负责人 | 截止日期 |\n|------|------|--------|----------|\n| 认证模块 | 已完成 | 张三 | 2026-05-01 |\n| 支付模块 | 进行中 | 李四 | 2026-05-15 |"
})

Final Step 1 — Text reply:

已为你整理好「项目进度表」,包含各模块的当前状态、负责人和截止日期。

📄 文件位置:`/Users/zhangxinyuan/.desirecore-dev/users/.../workspace/2026-05-11-项目进度表.md`

Final Step 2 — SendUserMessage (last action):

SendUserMessage({
  message: "📄 点击下方附件打开文件",
  attachments: ["/Users/zhangxinyuan/.desirecore-dev/users/.../workspace/2026-05-11-项目进度表.md"]
})