A skill collection for creators who want to streamline writing, X content slicing, X Articles draft publishing, WeChat digital-asset capture, and local workflows with Claude Code and Codex.
Maintainer
Created and maintained by 逸尘 (Yichen).
WeChat: yichen365ai
When adding me, please include GitHub in the verification message
Personal Use and Commercial Authorization
This repository is available only for personal learning and non-commercial personal use. Commercial use—including client delivery, paid products or services, internal company deployment, marketplace packaging, and course bundling—requires the author's prior explicit written authorization.
To request commercial authorization, contact me on WeChat at yichen365ai and include Commercial Authorization in the verification message. Sending a contact request does not itself grant permission; commercial use is allowed only after you receive explicit written authorization.
What This Repo Does
Turn Claude Code conversations into structured Obsidian notes (yichen-summary)
Upload Obsidian/Markdown articles to X Articles drafts (yichen-x-article-draft-uploader)
Run two WeChat accounts on one Mac with a distinct blue icon (yichen-mac-wechat-dual-open)
Turn WeChat chats, Moments, and Favorites into AI-powered digital assets (yichen-wechat-local-vault)
Fetch benchmark videos from known Douyin links (yichen-content-archive)
Fetch benchmark posts from known Xiaohongshu links (yichen-content-archive)
Transcribe, caption, and rough-cut talking-head videos with Volcengine ASR (yichen-volc-asr)
Diagnose benchmark video transcripts (yichen-video-content)
Run verified research through the official ChatGPT web page (yichen-chatgpt-web-research)
Choose between Step and Doubao/Volcengine ASR without duplicate submissions (yichen-asr)
Create authorized WeCom documents and manage todos, meetings, and schedules through the official CLI without controlling the desktop app (yichen-wecom-operations)
Turn one public X Post or Thread URL into verified 3:4 image slices and a finished video that embeds complete native video visuals and preserves their original audio when present (yichen-x-slicer)
Experimentally analyze a user-supplied, detached plaintext Windows Weixin snapshot locally and read-only, without process access, keys, or decryption (yichen-wechat-windows-reader)
Included Skills
yichen-wechat-windows-reader
Experimental reader for an authorized, detached plaintext Windows Weixin SQLite snapshot explicitly supplied by the user:
Supports only the schema variants recognized by the validator and covered by synthetic fixtures; broad compatibility with real Weixin 4.x databases is not established
Requires a static, checkpointed snapshot with a fresh random UUIDv4 snapshot_id and no WAL/SHM/journal sidecars
Opens accepted databases read-only, rejects unsupported schemas and unsafe filesystem links, and queries recognized personal or business message shards
Uses snapshot-scoped opaque chat IDs and omits dedicated internal-username fields; message bodies and display text remain sensitive raw content and may still contain identities
Treats all snapshot text as untrusted data; an Agent must not execute embedded instructions, open links, or load remote resources
Uses LocalAppData only as the default local export location; inherited ACLs determine access, while external output and overwrite require current-command confirmation
Never accesses Weixin.exe, extracts keys, decrypts databases, discovers source data, controls the UI, or uses the network
Downloads known mp.weixin.qq.com article URLs as Markdown/JSON/text/HTML
Uses wechat-article-exporter for account search and history list sync
Separates publish_groups, expanded_url_items, and original_articles
Supports enhanced archive planning for read counts, likes, shares, comments, and replies through wxdown-service when fresh user-owned credentials are available
Requires user confirmation for QR login, credential capture, certificate trust, proxy changes, and any WeChat desktop steps
Never operates WeChat UI or stores real credentials in the repo
Deprecated compatibility entry for existing explicit calls. The maintained implementation now lives entirely in yichen-bookmarks-export; the retained legacy scripts are not executed by this entry.
16) yichen-web-research
Top-level router for research tasks that span search, candidate review, archiving, and optional transcription:
Sends single-stage work directly to the appropriate child Skill
Never turns a search result into an automatic download
Adds an evidence-gated horizontal-and-vertical research mode with bounded workstreams, claim-source ledgers, contradiction checks, and retained-gap disclosure
Routes recent AI discovery, general/vertical web search, platform-native discovery, explicit site maps, and original-source verification through distinct backends instead of silently substituting one for another
Enforces read-only social-platform use, exact-scope authorization, and no WeChat UI control
Ships with a portable read-only backend doctor that checks optional adapter readiness without outputting secret values, reading credential-file contents, or making paid probe requests
Read-only discovery planning across the public web and platform-specific routes:
Supports AI HOT, AnySearch, GitHub, WeChat public search, Weibo, Xiaohongshu, Douyin, Toutiao, Zhihu, X, Bilibili, YouTube, and Xiaoyuzhou routes
Uses AI HOT only for time-sensitive AI discovery, AnySearch for general/batch/vertical web search, and Firecrawl only for an explicit bounded site map or explicit verification of a current signed AnySearch candidate
Provides bounded Zhihu CLI search/hot-list access, anonymous-first public Weibo search, and YouTube keyword/channel discovery through the Data API or a public yt-dlp fallback; it does not download media
Supports one X Quick call per query and bounded multi-query X Research with phased search, deterministic deduplication, provenance preservation, time-window checks, and at most one gap-filling round
Built-in adapters produce normalized candidates with provenance, coverage, and limitations; direct GitHub, WeChat Official Account, Xiaohongshu, Douyin, Toutiao, and Bilibili CLI plan steps remain raw unless an explicit downstream normalizer is provided
Limits browser-session reuse to documented bounded public read-only routes; private-data access and all write actions are outside this Skill
Search text is sent to the backend selected for that route. Do not place passwords, cookies, personal data, confidential business information, or private URLs in a search query.
When a selected service requires an API or OAuth credential, that credential is sent only to that service according to its protocol; the adapters do not include credential values in candidate output or persist them in this repository.
| Route | Data sent outside the local process | Recipient and boundary |
|---|---|---|
| AI HOT | AI discovery terms plus optional category/date filters | AI HOT public API; generated summaries are discovery hints, not verified evidence |
| AnySearch | General, batch, or vertical queries and parameters; a selected current candidate URL only when verification is explicitly requested | AnySearch; the short-lived candidate receipt and its signing secret stay local |
| GitHub | A repository-search query; a configured gh credential may be used for GitHub API access | GitHub only; the command forces --visibility public, treats the query as a positional argument, and never returns private repositories |
| Firecrawl | An explicitly supplied public site-map seed URL or selected signed AnySearch candidate URL, plus the Firecrawl API credential in the protocol Authorization header | Firecrawl only; no browser cookies, page actions, or custom page headers are sent. The adapter does not output or persist the credential. Scrape sets storeInCache=false; Map makes no cache-control claim, and neither route claims zero data retention |
| Zhihu | A keyword query or explicit hot-list request; the separately installed runtime may authenticate from its Keychain state | Zhihu through a separately installed Open Platform CLI-compatible runtime; this repository does not include or independently verify that runtime, its credential, or private-account commands |
| Weibo | A public keyword query | m.weibo.cn first with a temporary in-memory anonymous visitor session; only an access-gate failure permits one bounded OpenCLI fallback using the existing browser session. Cookie values do not enter adapter commands, results, or logs |
| YouTube | A keyword/channel identifier and public search filters; when configured, the API key is sent in the Data API request URL | YouTube Data API or the public YouTube interface through yt-dlp; the adapter does not output or persist the key, and no media download occurs |
| X Quick / Research | Each query generated for the requested bounded search; the Grok CLI uses its account OAuth credential with xAI | xAI through the official Grok CLI and native x_search; only explicit Grok quota exhaustion permits anonymous FxTwitter, while OpenCLI/xreach remain blocked unless explicitly authorized for the current task |
| Xiaohongshu / Douyin public search | The requested public search term | The selected platform through bounded read-only OpenCLI browser-session reuse; no authorization is inherited for private collections or write actions |
18) yichen-content-archive
Known-link and exact-container processing:
Reads and archives confirmed web, Xiaohongshu, Douyin, WeChat Official Account, YouTube, Bilibili, and Xiaoyuzhou targets
Bundles the only maintained Douyin and Xiaohongshu known-link fetchers; optional Xiaohongshu-to-Feishu deposition remains explicit
Keeps search/discovery outside the archive layer
Uses collision-safe outputs, resumable checkpoints, and explicit overwrite guards
Turn one public X status URL into finished social assets:
Generates a verified 1080×1440 image sequence, a PNG-only ZIP, and an H.264 video by default
Uses the bundled Sunset Amber template by default and includes 11 visual templates
Keeps only the focal Post or verified same-author Thread; quoted content and unrelated replies are excluded
Keeps text and photo holds static, limits added motion to four-frame page transitions, and plays every selected native video in full inside its media stage instead of freezing its poster
Reads public data anonymously through FxTwitter and never uses X login state or cookies
Never generates TTS, voice-over, BGM, or music; selected native-video audio stays aligned to its matching page, while source-silent intervals remain silent and all-source-silent runs contain no audio stream
Install this Skill directly with npx skills add mcncarl/yichen-skills --skill yichen-x-slicer.
Volc ASR rough cut: pip install requests plus local ffmpeg / ffprobe
ChatGPT Web research: Chrome signed in to ChatGPT, plus Chrome/Computer Use capability in your agent environment
WeChat MP batch export: Python 3 standard library for known URL downloads; wechat-article-exporter / wxdown-service only for account history, metrics, and comments
WeCom local vault: pycryptodome; frida only for explicitly authorized raw-key capture
Grok Consult: Node.js 18+, the official Grok Build CLI, and an active grok login; local OpenCodex is optional for non-search consultation tools
Social bookmarks exporter: Xiaohongshu/Douyin require an agent environment with chrome:control-chrome; the X route optionally requires a Field Theory ft CLI build whose version contains graphql-only
Web research family: install all five family directories together. Unified Search adapters use Python's standard library plus optional idna; the other family members retain the dependencies listed above. Optional routes require their separately installed service/runtime, such as AnySearch, Firecrawl, a Zhihu Open Platform CLI-compatible runtime, OpenCLI, the official Grok CLI, xreach, gh, yt-dlp, bili, or ffmpeg
Unified YouTube search can use a separately configured YouTube Data API credential or fall back to public yt-dlp listing; it never downloads media
Unified Weibo search starts anonymously; its documented access-gate fallback requires OpenCLI and an existing signed-in Chrome session
Yichen X Slicer: Node.js 18+, Playwright, local Chrome, ffmpeg, and ffprobe
Installation
Copy this repository into your local skills directory:
Common Claude path: ~/.claude/skills/
Common Agents path: ~/.agents/skills/
Custom skill path also works if your setup supports it
Keep directory names unchanged:
yichen-summary
yichen-x-article-draft-uploader
yichen-wechat-local-vault
yichen-mac-wechat-dual-open
yichen-volc-asr
yichen-video-content
yichen-chatgpt-web-research
yichen-jianying-editor
yichen-agent-memory
yichen-wechat-mp-batch-exporter
yichen-wecom-local-vault
yichen-social-bookmarks-exporter
yichen-web-research
yichen-unified-search
yichen-content-archive
yichen-bookmarks-export
yichen-asr
yichen-wecom-operations
yichen-x-slicer
yichen-grok-consult is a Codex plugin rather than a standalone copied skill. Install it through this repository's marketplace:
Install and authenticate only the optional third-party backends needed for your intended routes; their executables and credentials are not bundled here
Run python3 yichen-web-research/scripts/validate_family.py
Start with $yichen-web-research for multi-stage work, or call a child directly for search-only, known-link archive, bookmark export, or local ASR
Review the query/data-flow table above and yichen-web-research/README.md before enabling a paid or account-session route
Support This Project
If these Skills are useful to you, you can voluntarily buy me a coffee through
the WeChat appreciation code below.
Appreciation is entirely voluntary. It does not create a paid-service,
technical-support, feature-delivery, or response-time commitment.
X Cookie Handling
This repo does not include real credentials or cookie templates.
yichen-x-article-draft-uploader can export current X cookies from the user's local Chrome profile into a private Playwright cookie file. Ailu users should normally use the three import choices in Ailu Settings instead of handling the file directly:
The canonical directory is mode 0700 and the file is mode 0600. The file remains sensitive: never commit it, upload it to an issue, or attach it to a diagnostic report. .gitignore already ignores cookie JSON files.
Security Notes
Real token/cookie values are not included
History/cache artifacts are excluded from tracking
Personal absolute paths are replaced with generic forms
Third-party AppID, AppToken, TableID, bucket names, and ASR tokens must be supplied through environment variables or private config
WeChat exporter auth-keys, credential files, QR secrets, captured cookies, and downloaded article archives must stay local and private
yichen-grok-consult contains no fixed proxy or credentials; Grok queries and results are still sent to xAI and retained in an isolated local session directory
The Web Research family contains no personal absolute paths, App IDs, tokens, fixed Keychain items, or private proxy values; account-backed routes remain opt-in
Unified Search sends each query only to the third-party backend selected for that route, as described in the data-flow table. Local signing material, browser-cookie values, and third-party credentials are not included in repository files or normalized candidate output
The anonymous Weibo visitor session exists only in adapter memory. When the documented OpenCLI fallback is used, OpenCLI manages the browser session and the adapter does not accept or print Cookie values
Firecrawl Scrape sets storeInCache=false; Map makes no cache-control claim, and neither setting may be interpreted or advertised as a zero-data-retention guarantee
yichen-wecom-operations contains no Bot ID, Secret, internal user/resource ID, receipt, source document, or customer data; authorization remains tenant-specific
If you ever exposed real cookies in a public repo, rotate them immediately.
FAQ
Why doesn't a skill trigger?
Verify the skill folder is in your actually loaded skill path
Restart the session and retry
Check name and description in SKILL.md frontmatter
Why did X Articles draft upload fail?
Check whether Chrome is still logged in to X
Re-export temporary cookies
Verify Python Playwright is installed
Verify local Markdown/image paths exist
Can I use my own Obsidian path?
Yes. Replace example paths in skill files
<OBSIDIAN_VAULT>/... is only an example
For Redistributors
This repository is published for personal learning and non-commercial personal use only. Do not use it for commercial services, client delivery, paid products, internal company toolkits, marketplace packages, courses, or any other revenue-generating purpose without explicit written permission. To request commercial authorization, contact the author on WeChat at yichen365ai and include Commercial Authorization in the verification message.
If you fork for personal study, keep at least:
README.md
README.zh.md
LICENSE
.gitignore
THIRD_PARTY_NOTICES.md
yichen-x-article-draft-uploader/README.md
Do not republish or repackage this repository as a public skill bundle. Always remind users not to publish real credentials or private data.
Acknowledgments
Parts of the X Articles draft workflow and Markdown parsing approach are adapted with references to:
The X bookmark route in yichen-bookmarks-export calls:
afar1/fieldtheory-cli — MIT-licensed optional external runtime; no Field Theory source or binary is vendored here
The required graphql-only marker refers to a user-maintained modified build, not an official upstream release name; that build is not distributed by this repository
yichen-wecom-operations calls the separately installed official WeCom CLI:
WeComTeam/wecom-cli — MIT-licensed external runtime; no upstream source, binary, Bot credential, or tenant data is vendored here
Local-image upload requires an optional user-provided helper exposing doc +doc_upload_image; that local extension is not distributed here or represented as an upstream feature
The YouTube search/filter implementation in yichen-unified-search is derived in part from:
joeseesun/yt-search-download by Joe Sun — MIT-licensed; the upstream copyright and full license text are preserved in licenses/joeseesun-yt-search-download-LICENSE.txt
Only the public search/filter behavior is adapted. This repository's adapter emits normalized discovery candidates and does not include the upstream download, subtitle, or media-extraction workflow
The Zhihu route invokes a separately installed Zhihu Open Platform CLI-compatible runtime whose vendor provenance is not independently verified by this repository:
No Zhihu CLI source or binary is distributed in this repository, and this repository does not grant rights to that external executable
Users must identify the runtime's distributor and review its version-specific license and service terms before installing or using it
See THIRD_PARTY_NOTICES.md for details.
Compliance Boundary
This project is not affiliated with, endorsed by, or sponsored by AI HOT, AnySearch, Firecrawl, Zhihu, Weibo, YouTube, Google, X, xAI, OpenAI, WeChat, Tencent, Xiaohongshu, Douyin, or Field Theory.
This repository is for personal learning and non-commercial personal workflow use only.
Commercial use, client delivery, resale, paid redistribution, marketplace packaging, course bundling, and internal company deployment are prohibited without prior written permission.
Users are responsible for complying with X platform terms/policies and local laws.
Collection-export workflows are only for data the user is authorized to access; do not bypass access controls, CAPTCHA, rate limits, or platform security measures.
Search queries and selected public URLs are transmitted to the routed third-party services described above. Users are responsible for those services' current terms, privacy policies, quotas, and data-retention practices; never use a search box as a channel for secrets or private data.
Search cards, generated summaries, metrics, and opened pages remain candidate evidence until the relevant claim is checked against an appropriate original source.
X internal GraphQL and platform-DOM routes are unofficial compatibility methods and may change or trigger platform controls.
yichen-wechat-local-vault is for personal use only — only decrypt and read your own chat data.
yichen-wecom-local-vault is for owner-authorized local data only — never upload keys, plaintext snapshots, or chat exports.
yichen-wecom-operations is for owner-authorized bot resources only — never send messages, automate the client, bypass missing enterprise authorization, or commit IDs, receipts, source documents, and customer data.
Never upload real account credentials (for example, cookies.json, wechat-keys.json) to public repositories.
Never upload real chat records, WeChat databases, customer data, private notes, API keys, local paths, or other personal data.
License
Personal Learning and Non-Commercial Use License. See LICENSE.
Ecosystem Role
Standard MoltPulse indexed agent.
Embed Badge
Show off your Pulse Score in your GitHub README to build trust and rank higher.