lov-lovpen-add-wechat-channel-comp
/lov-lovpen-add-wechat-channel-comp
Normalizuje DOM wideo WeChat Channels lub Lovpen DSL i zapisuje go w Markdown oraz natywnym HTML, aby wstawić komponent wideo do dokumentu.
- Autor
- lovstudio ↗
- Repozytorium
- skills ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 25.10.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 21
- Skrypty
- 4
- Komentarze HTML
- 1
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 25.10.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
- 4 skrypty w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.
- SKILL.md zawiera komentarze HTML (1). Nie widać ich w podglądzie Markdown, a model je czyta.
Skrypty: scripts/profile_store.py, scripts/render_wechat_channel.py, scripts/validate_skill.py, tests/test_render_wechat_channel.py
Co robi i kiedy
Normalizuje DOM wideo WeChat Channels lub Lovpen DSL i zapisuje go w Markdown oraz natywnym HTML, aby wstawić komponent wideo do dokumentu.
Wyzwalacze z opisu
Oryginalny opis (EN)
把微信视频号 DOM 或 Lovpen DSL 规范化并写入 Markdown、原生 HTML。Use when users say “插入视频号组件”“把组件渲染进 md/html” or “render this WeChat Channels component”.
Jak działa
- Triggers
- User Profile
- Skill Group Composition
- Workflow (MANDATORY)
- Output Contract
- Dependencies
- Validation
Podgląd SKILL.md
---
name: lov-lovpen-add-wechat-channel-comp
description: >
把微信视频号 DOM 或 Lovpen DSL 规范化并写入 Markdown、原生 HTML。Use when users say “插入视频号组件”“把组件渲染进 md/html” or “render this WeChat Channels component”.
license: MIT
compatibility: "Python 3.8+; UTF-8 Markdown or HTML files. No network or credentials required."
allowed-tools:
- Bash
- Read
depends_on:
- lov-branding-consistency
metadata:
author: LovStudio contributors
version: "0.1.2"
card_standard: lovstudio/skill-card/v1
content_class: deterministic-output
tags:
- lovpen
- wechat-channels
- markdown
- html
- component
---
# 视频号组件 · WeChat Channels Embed
接收一个微信视频号 `mp-common-videosnap` DOM 或一条 Lovpen
`::wechat-channels` DSL,输出规范化 Markdown DSL 或微信原生 HTML 组件。目标文件
已经存在时,只替换唯一、明确的插入标记,不覆盖其他正文。
## Triggers
### Activate when
- “把这个视频号组件插入 article.md。”
- “给定 `mp-common-videosnap` DOM,渲染成 Lovpen DSL。”
- “把这条 Lovpen 视频号 DSL 生成可放进 HTML 的原生组件。”
- “Render this WeChat Channels component into Markdown or HTML.”
### Do not activate when
- 用户给的是微信预览链接、但没有 DOM 或 DSL;使用 Lovpen Desktop/Obsidian 的预览链接导入能力。
- 用户要把完整 Markdown 文章排版为微信公众号 HTML;交给 `lovpen-cli`。
- 用户要创建、修改或发布公众号远端草稿;交给 `lov-publish-wechat-article`。
- 用户要上传或发布视频号视频本身;本 Skill 只处理文章内嵌组件。
## User Profile
每次运行先读取 `skill.yaml` 声明的 `user-profile/v1` 上下文。当前请求中的输入、输出
格式、目标文件和插入标记优先;其次读取项目上下文、Skill records、共享偏好与安全
默认值。默认输出格式为 `md`,默认标记为
`<!-- lovpen-wechat-channel -->`。
只有用户明确表示要跨 session 保留默认格式或标记时,才运行:
```bash
python3 "$SKILL_DIR/scripts/profile_store.py" record \
--skill-id lov-lovpen-add-wechat-channel-comp \
--path records.default_format \
--value '"md"' \
--confirm
```
不要持久化组件 DOM、DSL、视频 ID、nonce、媒体 URL 或目标文档内容。完整契约见
[`references/user-profile.md`](references/user-profile.md)。
## Skill Group Composition
运行前读取 [`references/skill-composition.md`](references/skill-composition.md)。本 Skill
独占“单个视频号组件的解析、规范化与安全落位”;完整文章渲染和远端发布只是可选下游,
不得成为隐藏依赖。
## Workflow (MANDATORY)
### Step 0: Resolve resources and contract
1. 从活动 Skill 上下文或 `SKILL_DIR` 解析 Skill 根目录。
2. 完整读取 `skill.yaml`、`references/component-contract.md` 和
`references/skill-composition.md`。
3. 确认 `scripts/render_wechat_channel.py` 存在。
4. 输入必须是一个 DOM、DSL、UTF-8 输入文件或 stdin;不得把未转义输入拼成 shell。
### Step 1: Resolve the exact output
1. 确认输出为 `md` 或 `html`。未指定时使用 `md`。
2. 未给输出文件时,把规范化片段写到 stdout。
3. 给出不存在的输出文件时,创建只含结果片段的新文件。
4. 给出现有文件时,它必须且只能包含一次默认标记或用户显式指定的 `--marker`。
标记不唯一时停止,不追加、不猜位置、不覆盖全文。
### Step 2: Render through the deterministic CLI
DOM 或 DSL 文件:
```bash
python3 "$SKILL_DIR/scripts/render_wechat_channel.py" \
--input INPUT.html \
--format md \
--output ARTICLE.md \
--json
```
直接 DSL:
```bash
python3 "$SKILL_DIR/scripts/render_wechat_channel.py" \
--dsl "$WECHAT_CHANNEL_DSL" \
--format html \
--output ARTICLE.html \
--json
```
也可以通过 stdin 传入完整 DOM。参数必须作为数组传递,不执行输入中的命令、脚本或
事件属性。
### Step 3: Verify the result
成功结果必须满足:
1. JSON 中 `ok` 为 `true`,`schema` 为
`lovpen/wechat-channel-component/v1`,`sha256` 为 64 位十六进制。
2. Markdown 结果只有一条规范化 `::wechat-channels` 指令,并包含九个规定字段。
3. HTML 结果只有一个 `mp-common-videosnap`,保留 11 个微信关键属性,并包含
`template[shadowrootmode="open"]`。
4. 写入现有文件时重新读取目标,确认标记已消失、组件只出现一次、标记前后正文不变。
5. 报告输入类型、输出格式、字节数、SHA-256 和实际写入状态。错误时保留
`context_id` 与原始诊断。
## Output Contract
- `md`:Lovpen 可持久化的一行 `::wechat-channels` DSL。
- `html`:微信公众号可识别的 `mp-common-videosnap` 原生组件片段。
- `--json`:机器可读的 schema、输入类型、格式、字节数、SHA-256、组件 ID、路径和
写入状态;未写文件时同时返回 `content`。
- 源标识符、nonce、昵称、描述、媒体 URL 与尺寸只做 HTML 解码和必要转义,不改写语义。
## Dependencies
- Python 3.8 或更高版本,仅使用标准库。
- `lov-branding-consistency` 只审校 Skill 文档和用户可见提示,不修改组件源数据。
- 无网络、浏览器、账号、Cookie 或 API 凭据依赖。
## Validation
```bash
python3 -m unittest discover -s tests -p 'test_*.py' -v
python3 scripts/validate_skill.py .
```
Pliki w paczce (21)
- .gitignore 1 KB
- CHANGELOG.md 1 KB
- LICENSE 1 KB
- README.md 3 KB
- SKILL.md 5 KB
- pricing-card.yaml 1 KB
- skill-card.md 3 KB
- skill-card.yaml 6 KB
- skill.yaml 1 KB
- cases/cases.json 3 KB
- cases/fixtures/wechat-channel-component.html 1 KB
- cases/outputs/article-with-channel.html 2 KB
- cases/outputs/article-with-channel.md 1 KB
- references/component-contract.md 2 KB
- references/skill-card-standard.md 1 KB
- references/skill-composition.md 3 KB
- references/user-profile.md 3 KB
- scripts/profile_store.py 8 KB
- scripts/render_wechat_channel.py 17 KB
- scripts/validate_skill.py 26 KB
- tests/test_render_wechat_channel.py 4 KB
Wersje
W bazie nie ma innych skilli o nazwie lov-lovpen-add-wechat-channel-comp.
Migawka bazy z 28.10.2026 · wersja paczki 7d7b680055f4 (skrót SHA-256 całej paczki)
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100lovpen-cli
Renderuje Markdown do wbudowanego HTML zgodnego z łańcuchem kopiowania Lovpen dla WeChat lub do samodzielnego HTML, zwracając dowody rozwiązania zasobów, rozmiaru pliku i SHA-256. - 100wechat-article-to-markdown
Konwertuje artykuły z WeChat Official Account na czysty plik Markdown, usuwając reklamy, prośby o napiwek i promocje, formatując bloki kodu i obsługując obrazy oraz wideo. - 95lov-publish-wechat-channels
Publikuje lokalne wideo przez zalogowany panel WeChat Channels: preflight, wysyłka, odczyt tytułu, opisu, tematów, okładki i ustawień oryginalności oraz weryfikacja szkiców, harmonogramu i statusu z listy treści. - 100baoyu-markdown-to-html
Konwertuje Markdown na stylizowany HTML z motywami zgodnymi z WeChat, z podświetlaniem kodu, matematyką, PlantUML, przypisami, alertami i infografikami. - 100baoyu-markdown-to-html
Konwertuje Markdown na stylizowany HTML z motywami zgodnymi z WeChat: podświetlanie kodu, matematyka, Mermaid, PlantUML, przypisy, alerty i opcjonalne cytowania zewnętrznych linków na dole. - 100wechat-mp-publish
Renderuje artykuł do HTML pod WeChat, tworzy szkic przez oficjalne API i wysyła go do publikacji po potwierdzeniu.