ls-xhs-note
Use when the user wants a complete Xiaohongshu note workflow that can start from a topic and turn it into a source article, a native note, and image assets, or continue from an existing note draft. Supports framework selection, model-native note drafting, and image generation.
XHS Note Workflow
Create Xiaohongshu note assets from a topic or an existing draft.
Workflow rules live in references/. Repeatable execution lives in toolkit/. Content decisions belong to the model and the reference files; the CLI stays on the execution side.
Setup
- Run
cd toolkit && npm install && npm run build. - Run
pip install -r requirements.txt. - Choose a runtime root: project-local
./.ls-xhs-note/or user-level~/.liusir-skills/ls-xhs-note/. - Copy
config.example.yamlto{runtimeRoot}/config.yaml. - Add image provider keys only if automatic image generation is needed.
- Run
python3 scripts/validate_skill.pyafter setup or structural edits.
Skill Directory
| Path | Purpose |
|---|---|
references/pipeline.md | End-to-end workflow and routing |
references/frameworks.md | Primary framework definitions |
references/drafting-skeletons.md | Framework-specific draft body shapes |
references/writing-guide.md | Writing quality rules |
references/title-rules.md | Title, hook, tag, CTA, and first-screen copy rules |
references/xhs-constraints.md | Platform constraints |
references/visual-prompts.md | Visual planning rules |
references/style-selection.md | Preset recommendation matrix |
references/style-presets.md | Primary preset system and override mapping |
references/workflows/prompt-assembly.md | Series prompt assembly contract |
references/cli-reference.md | Command reference |
references/operations.md | Setup, onboarding, export, and maintenance notes |
references/style-template.md | Client configuration template |
references/skill-maintenance.md | Documentation and validation rules |
{runtimeRoot}/clients/{client}/style.yaml | Client profile and visual defaults |
{runtimeRoot}/clients/{client}/history.yaml | Export history |
{runtimeRoot}/clients/{client}/playbook.md | Optional local writing notes |
toolkit/dist/*.js | Built CLI entrypoints |
scripts/*.py | Intake and validation helpers |
runtimeRoot resolves in this order:
./.ls-xhs-note/~/.liusir-skills/ls-xhs-note/- the skill install directory as a read-only legacy fallback
Pipeline Overview
| Step | What happens |
|---|---|
| 1 | Load client config and route the request |
| 2 | Gather or accept a topic angle |
| 3 | Choose the angle and framework |
| 4 | Draft the note and polish posting copy |
| 5 | Generate images |
| 6 | Keep a placeholder post-generation step for later adjustment |
Workflow Layers
The skill currently has two layers:
- main workflow steps
- standalone maintenance tasks
Main workflow steps:
- load client configuration
- topic intake
- angle selection and framework choice
- draft the note and polish posting copy
- generate images
- keep a placeholder post-generation step for later adjustment
Standalone maintenance tasks:
- client onboarding
- history maintenance
Supported entry modes:
- topic-driven drafting
- existing draft polishing and export
- explicit
--steprouting
Critical Quality Rules
- Read
references/writing-guide.mdbefore drafting. - Keep one dominant angle per note.
- Write native note copy with model reasoning, not with programmatic skeleton generation as the primary path.
- Respect
{runtimeRoot}/clients/{client}/style.yamltone and blacklist fields. - Keep the first screen fast to scan.
- Use
references/frameworks.md,references/drafting-skeletons.md,references/writing-guide.md, andreferences/title-rules.mdtogether in Step 4. - Treat Step 5 as an image-generation workflow, not a dedicated first-page shortcut.
- If image generation fails, keep prompt-only output and continue.
- Use
presetas the primary visual decision; openstyleandlayoutonly as overrides. - Keep command behavior aligned with
references/cli-reference.md. - Do not move title, hashtag, slicing, or prompt decisions into heuristic CLI code.
Resilience: Never Stop on a Single-Step Failure
- If topic signals fail, continue with a direct topic.
- If client configuration is missing, initialize the minimum client structure and continue.
- If image generation fails, keep prompt files and generation diagnostics.
- Stop entirely only when required input is missing and no safe fallback exists.
Operations
Use references/operations.md for:
- first-run setup
- client onboarding
- export support
- maintenance support
Gotchas
- A note that preserves every branch of a long-form source will lose speed and clarity.
- Title quality depends on the actual angle, not on louder adjectives.
- Dense visual layouts fail quickly when the body copy is not already compact.
- The workflow drifts quickly if title, hashtag, slicing, or prompt choices move into heuristic code.
Comparison
| Workflow | Best use | Limitation |
|---|---|---|
| Full note workflow | Repeatable drafting and image generation | Later post-generation handling is still a placeholder |
| Raw prompt only | Quick idea exploration | No stable history or image plan |
| Manual packaging | Maximum manual control | Slow and inconsistent |
References
- Main workflow:
references/pipeline.md - Commands:
references/cli-reference.md - Writing:
references/writing-guide.md - Visual planning:
references/visual-prompts.md - Maintenance:
references/skill-maintenance.md