The self-media suite treats a face and a voice as credentials and never writes them down
通用、模块化的自媒体内容生产与经营 Skills / A modular, tool-agnostic self-media content skill suite
At a glance
- What is it?
- A ten-module agent skill suite for Chinese self-media production where the primary documentation is in Simplified Chinese, five points in the workflow require human confirmation, the video publisher really does upload in private, draft or scheduled modes, and the only Python in the repository is a validator that checks for unhandled TODOs.
- Who is it for?
- Adopt this suite if you publish to Chinese platforms and want an agent to do the drafting while a person keeps the decisions, because the design puts the irreversible steps behind named gates: direction, platform, title, final draft, and publish authorization, with final-draft approval explicitly separated from permission to publish. Read the security boundaries before the first run rather than after.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 6, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The primary documentation is in Simplified Chinese
The document this article is drawn from is the Chinese one. The repository opens with a language switcher, with 简体中文 as the current page and English pointing at a separate file, and the top-level entries include both `README.md` and `README.en.md`. The English file is listed in the repository but is not the text these details come from, so where a specific rule matters below it is worth opening the English version to confirm the wording before relying on it. Two of the project's own choices are language-specific in a way that matters. The platforms named are X, Xiaohongshu, the WeChat official account, Douyin, WeChat Channels and YouTube, and the compliance note refers to the advertising law of the People's Republic of China alongside each platform's community rules. So the platform coverage and the legal framing are both scoped to a Chinese publishing context, and a reader elsewhere should read the platform list as a description of where the suite has been exercised rather than as a general content workflow.
Five confirmation points, and final-draft approval is not permission to publish
The workflow is written as a single line with stars on the gates: clarify the requirement, confirm direction, research and evidence, confirm platform, pre-publication check, platform-native first draft, confirm title, generate material either with a real person or a digital human, quality review, confirm the final draft, authorize publication, then draft or publish package, then review the data. Five of those steps carry a star and a note saying the star marks a mandatory human confirmation point. The distinction the project insists on is between the last two. Confirming the final draft does not equal authorising publication, and the default is to produce a draft or a manual publish package rather than sending anything out. That is a small sentence doing a lot of work, because it is the difference between an agent that can finish your article and an agent that can finish your article and post it.
A face and a voice are treated as credentials and never written down
The most interesting decision in the suite concerns digital humans, and it is a refusal rather than a feature. In digital-human production, the avatar and voice material is uploaded, created and selected by the user personally on the provider's platform, after the user has read that provider's current data-processing terms. The task files, the content registry and the repository do not store the original avatar or the original recording, their local paths, temporary links, or the platform's private identifiers. What they store instead are the paths of deliverables, the generated clips, the final video and the subtitle files. The same posture applies to credentials: no cookies, tokens or secrets are kept in task cards, logs or the repository, and the disclaimer says values such as the WeChat app id and secret come only from local environment variables. Treat that as a coherent principle rather than two separate rules. A password you can rotate is a credential, and so is a biometric asset you cannot.
Captcha, rate limit, or a risk signal stops everything
The security list has one instruction that is about the platform rather than about you, and it is the one that matters operationally: when a captcha, a rate limit, or a platform risk control appears, stop immediately. Everything else on the list is a prohibition. The suite does not use your main account's login state to collect competitor data automatically. It does not automatically like, comment, follow, send a direct message, or publish. It does not fabricate data, experiences, revenue, user reviews, or test results, and it prefers official sources for recent product, price, version and platform rules. There is also a content requirement rather than a prohibition: avatar, portrait and voice must come with usage rights, and the required AI or digital-human disclosure has to be confirmed per platform. The stop-on-risk rule is the one to internalise, because it is what keeps an agent from grinding against a platform's defences on your behalf.
The video publisher really does upload, in three modes
Ten skills cover the arc from a vague request to archived delivery, and one of them crosses out of the document. The WeChat publisher handles typesetting, image upload, writing into the draft box, and the image-message format, so it is already a real account operation rather than a file generator. The video publisher builds per-platform publish packages and, after per-platform authorisation, uploads to YouTube, Douyin, WeChat Channels and Xiaohongshu as private, as a draft, or on a schedule. So the suite can write to four external accounts, and the modes are chosen per platform rather than globally. The interesting part is what the rest of the design does to make that acceptable. The authorisation gate is separate from the final-draft gate, so approving text does not approve upload; the default everywhere else is a package a human publishes by hand; and the risk rule above means a platform that objects stops the run rather than triggering a retry. The disclaimer also puts account consequences on the reader, naming rate limiting, bans, content removal and data loss as outcomes the author does not accept responsibility for.
The only Python is a validator that checks for unhandled TODOs
The repository's primary language is Python, and the Python is one file. The validation step is a single command:
python3 scripts/validate.pyThe validator checks skill frontmatter, directory consistency, the line counts of core files, UI metadata, relative links, and unhandled TODOs, and it has no third-party dependencies. Continuous integration runs that structural validation on every commit and additionally performs one real installation using the official skills CLI, which is the check that would catch a skill that validates as text but does not install. Checking for unhandled TODOs in a suite whose whole argument is process discipline is a nice touch, and so is the size limit: the structure block caps each skill's core `SKILL.md` at 500 lines, with platform detail pushed into `references/` and copyable output templates into `assets/`. Ten skills that each fit inside half a thousand lines is a constraint that keeps the routing layer readable.
Two install paths with different prerequisites and three names for one suite
Installation forks by agent, and the two paths need different things. Claude Code users are the recommended route and need no Node.js at all: they run a marketplace add command and then an install command, which brings in all ten skills at once. Everyone else, named as Codex and Cursor among others, uses the official skills CLI and does need Node.js:
npx skills add yanhua1010/self-media-content-workflow
npx skills add yanhua1010/self-media-content-workflow -g
npx skills add yanhua1010/self-media-content-workflow --skill self-media-content-workflow -a claude-codeThe first installs all ten into the current project, the second installs to the user-wide directory, and the third selects one module and names a target agent, so partial installs are supported on the CLI path and not on the plugin path. Naming is worth tracking through all of this. The repository is `self-media-content-workflow`, the plugin is installed as `self-media-suite@self-media`, and the routing skill inside is `self-media-content-workflow`, with nine modules named under a `self-media-` prefix. The architecture diagram shortens the module names to `content-brief` and `trend-radar` without that prefix, so the diagram and the directory names do not match literally.
The disclaimer names the advertising law and promises nothing about results
The disclaimer is longer than most and does three useful things. It states the platform's own rules are authoritative, that the platform specifications and operating advice in the repository are experience summaries written at one moment and may be out of date, and that when you need a precise value you should check the official announcement or the current publishing interface. It puts account-operation risk on the reader, naming rate limiting, bans, content deletion and data loss. And it puts compliance on the publisher, saying the compliance checklist is not legal advice and that whether your content complies with the advertising law of the People's Republic of China and each platform's community rules is your judgement and your responsibility. It also promises nothing about views, follower growth, conversion or revenue, which is the correct promise for a tool whose selling point is process. The version history is a single v0.1.0 release from 26 July 2026, and the repository carries a separate VERSION file alongside a changelog and a contributing guide.
Editorial conclusion
Adopt this suite if you publish to Chinese platforms and want an agent to do the drafting while a person keeps the decisions, because the design puts the irreversible steps behind named gates: direction, platform, title, final draft, and publish authorization, with final-draft approval explicitly separated from permission to publish. Read the security boundaries before the first run rather than after. The suite refuses to store a digital human's avatar, portrait or voice recording, their local paths, temporary links, or the platform's private identifiers, on the reasoning that those are the one asset class it cannot help you revoke, and it stops outright on a captcha, a rate limit, or a platform risk signal. The costs of that posture are real and stated: the avatar and voice must be created and selected by you personally on the provider's platform, and platform rules are treated as authoritative over anything in the repository. Its compliance checklist names the PRC advertising law, which is a narrower target than a reader outside China might assume. The documentation here is the Simplified Chinese README; the repository also lists an English one. The last commit on the default branch main is dated 23 August 2026.
Frequently asked questions
What does the self-media-content-workflow suite contain?
Ten independently installable skills: a controller that routes requests and holds state, then modules for the brief, account strategy, trend and competitor research, platform-native copywriting, short video, analytics, delivery and archiving, a WeChat publisher, and a video publisher. The controller routes to whichever modules a task needs.
How does the self-media suite stop an agent from publishing on its own?
Five points in the workflow are mandatory human confirmations, covering direction, platform, title, final draft and publish authorization. Confirming the final draft is explicitly not the same as authorising publication, and the default output is a draft or a manual publish package rather than anything sent out.
Does the self-media suite store digital human avatars or voice recordings?
No. The avatar and voice are uploaded, created and selected by the user personally on the chosen provider's platform after reading that provider's data-processing terms. Task files, the content registry and the repository keep only the paths of deliverables such as generated clips, the final video and subtitle files, and never the original assets, local paths, temporary links or platform identifiers.
How do I install the self-media skills?
Claude Code users run a plugin marketplace add command and then a plugin install command, which brings in all ten skills and needs no Node.js. Other agents use the official skills CLI with npx skills add, optionally with -g for the user-wide directory or --skill and -a to pick one module and a target agent.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/yanhua1010-self-media-content-workflow)