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

  1. Run cd toolkit && npm install && npm run build.
  2. Run pip install -r requirements.txt.
  3. Choose a runtime root: project-local ./.ls-xhs-note/ or user-level ~/.liusir-skills/ls-xhs-note/.
  4. Copy config.example.yaml to {runtimeRoot}/config.yaml.
  5. Add image provider keys only if automatic image generation is needed.
  6. Run python3 scripts/validate_skill.py after setup or structural edits.

Skill Directory

PathPurpose
references/pipeline.mdEnd-to-end workflow and routing
references/frameworks.mdPrimary framework definitions
references/drafting-skeletons.mdFramework-specific draft body shapes
references/writing-guide.mdWriting quality rules
references/title-rules.mdTitle, hook, tag, CTA, and first-screen copy rules
references/xhs-constraints.mdPlatform constraints
references/visual-prompts.mdVisual planning rules
references/style-selection.mdPreset recommendation matrix
references/style-presets.mdPrimary preset system and override mapping
references/workflows/prompt-assembly.mdSeries prompt assembly contract
references/cli-reference.mdCommand reference
references/operations.mdSetup, onboarding, export, and maintenance notes
references/style-template.mdClient configuration template
references/skill-maintenance.mdDocumentation and validation rules
{runtimeRoot}/clients/{client}/style.yamlClient profile and visual defaults
{runtimeRoot}/clients/{client}/history.yamlExport history
{runtimeRoot}/clients/{client}/playbook.mdOptional local writing notes
toolkit/dist/*.jsBuilt CLI entrypoints
scripts/*.pyIntake and validation helpers

runtimeRoot resolves in this order:

  1. ./.ls-xhs-note/
  2. ~/.liusir-skills/ls-xhs-note/
  3. the skill install directory as a read-only legacy fallback

Pipeline Overview

StepWhat happens
1Load client config and route the request
2Gather or accept a topic angle
3Choose the angle and framework
4Draft the note and polish posting copy
5Generate images
6Keep 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:

  1. load client configuration
  2. topic intake
  3. angle selection and framework choice
  4. draft the note and polish posting copy
  5. generate images
  6. 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 --step routing

Critical Quality Rules

  1. Read references/writing-guide.md before drafting.
  2. Keep one dominant angle per note.
  3. Write native note copy with model reasoning, not with programmatic skeleton generation as the primary path.
  4. Respect {runtimeRoot}/clients/{client}/style.yaml tone and blacklist fields.
  5. Keep the first screen fast to scan.
  6. Use references/frameworks.md, references/drafting-skeletons.md, references/writing-guide.md, and references/title-rules.md together in Step 4.
  7. Treat Step 5 as an image-generation workflow, not a dedicated first-page shortcut.
  8. If image generation fails, keep prompt-only output and continue.
  9. Use preset as the primary visual decision; open style and layout only as overrides.
  10. Keep command behavior aligned with references/cli-reference.md.
  11. 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

WorkflowBest useLimitation
Full note workflowRepeatable drafting and image generationLater post-generation handling is still a placeholder
Raw prompt onlyQuick idea explorationNo stable history or image plan
Manual packagingMaximum manual controlSlow 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