style-learner
Extracts writing style patterns from exemplar text into a reusable profile. Use when creating a style guide or learning a specific author's voice.
它会碰到什么
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Style Learning Skill
**A style profile is metrics plus exemplars. Either alone
is too weak to reproduce a voice.**
Extract style from exemplar text and codify it as a profile
that downstream skills (scribe:doc-generator,
scribe:voice-generate) can apply consistently.
When NOT To Use
- Extracting a person's voice from their samples (use
scribe:voice-extract)
- Reviewing text against a profile (use
scribe:voice-review)
Approach: Feature Extraction and Exemplar Reference
The skill combines two methods because each fails alone:
- Feature Extraction: quantifiable metrics (sentence
length distribution, vocabulary complexity, structural
patterns). Reproducible but soulless.
- Exemplar Reference: specific passages that
demonstrate the target style. Vivid but hard to apply
at scale.
Together they form a profile precise enough to score new
text and rich enough to guide rewrites. Metrics catch what
exemplars miss. Exemplars carry what metrics flatten.
Required TodoWrite Items
style-learner:exemplar-collected- Source texts gatheredstyle-learner:features-extracted- Quantitative metrics computedstyle-learner:exemplars-selected- Representative passages identifiedstyle-learner:profile-generated- Style guide createdstyle-learner:validation-complete- Profile tested against new content
Step 1: Collect Exemplar Text
Gather representative samples of the target style.
Minimum requirements:
- At least 1000 words of exemplar text
- Multiple samples preferred (shows consistency)
- Same genre/context as target output
## Exemplar Sources
| Source | Word Count | Type |
|--------|------------|------|
| README.md | 850 | Technical |
| blog-post-1.md | 1200 | Narrative |
| api-guide.md | 2100 | Reference |
Step 2: Feature Extraction
Load: @modules/feature-extraction.md
Vocabulary Metrics
| Metric | How to Measure | What It Indicates |
|--------|----------------|-------------------|
| Average word length | chars/word | Complexity level |
| Unique word ratio | unique/total | Vocabulary breadth |
| Jargon density | technical terms/100 words | Audience level |
| Contraction rate | contractions/sentences | Formality |
Sentence Metrics
| Metric | How to Measure | What It Indicates |
|--------|----------------|-------------------|
| Average length | words/sentence | Complexity |
| Length variance | std dev of lengths | Natural variation |
| Question frequency | questions/100 sentences | Engagement style |
| Fragment usage | fragments/100 sentences | Stylistic punch |
Structural Metrics
| Metric | How to Measure | What It Indicates |
|--------|----------------|-------------------|
| Paragraph length | sentences/paragraph | Density |
| List ratio | bullet lines/total lines | Format preference |
| Header depth | max header level | Organization style |
| Code block frequency | code blocks/1000 words | Technical density |
Punctuation Profile
| Metric | Normal Range | Style Indicator |
|--------|--------------|-----------------|
| Em dash rate | 0-3/1000 words | Parenthetical style |
| Semicolon rate | 0-2/1000 words | Formal complexity |
| Exclamation rate | 0-1/1000 words | Enthusiasm level |
| Ellipsis rate | 0-1/1000 words | Trailing thought style |
Step 3: Exemplar Selection
Load: @modules/exemplar-reference.md
Select 3-5 passages (50-150 words each) that best represent the target style.
Selection criteria:
- Demonstrates characteristic sentence rhythm
- Shows typical vocabulary choices
- Represents the desired tone
- Avoids atypical or exceptional passages
Exemplar Template
### Exemplar 1: [Label]
**Source**: [filename, lines X-Y]
**Demonstrates**: [what aspect of style]
> [Quoted passage]
**Key characteristics**:
- [Observation 1]
- [Observation 2]
Step 4: Generate Style Profile
Combine extracted features and exemplars into a usable style guide.
Profile Format
# Style Profile: [Name]
# Generated: [Date]
# Exemplar sources: [List]
voice:
tone: [professional/casual/academic/conversational]
perspective: [first-person/third-person/second-person]
formality: [formal/neutral/informal]
vocabulary:
average_word_length: X.X
jargon_level: [none/light/moderate/heavy]
contractions: [avoid/occasional/frequent]
preferred_terms:
- "use" over "utilize"
- "help" over "facilitate"
avoided_terms:
- delve
- leverage
- comprehensive
sentences:
average_length: XX words
length_variance: [low/medium/high]
fragments_allowed: [yes/no/sparingly]
questions_used: [yes/no/sparingly]
structure:
paragraphs: [short/medium/long] (X-Y sentences)
lists: [prefer prose/balanced/prefer lists]
headers: [descriptive/terse/question-style]
punctuation:
em_dashes: [avoid/sparingly/freely]
semicolons: [avoid/sparingly/freely]
oxford_comma: [yes/no]
exemplars:
- label: "[Exemplar 1 label]"
text: |
[Quoted passage]
- label: "[Exemplar 2 label]"
text: |
[Quoted passage]
anti_patterns:
- [Pattern to avoid 1]
- [Pattern to avoid 2]
Step 5: Validation
Test the profile against new content:
- Generate sample content using the profile
- Compare metrics to extracted features
- Have user evaluate voice/tone match
- Refine profile based on feedback
Validation Checklist
- [ ] Metrics within 20% of exemplar averages
- [ ] No anti-pattern violations
- [ ] Tone matches user expectation
- [ ] Vocabulary aligns with exemplars
- [ ] Structure follows profile guidelines
Usage in Generation
When generating new content, reference the profile:
Generate [content type] following the style profile:
- Voice: [from profile]
- Sentence length: target ~[X] words, vary between [Y-Z]
- Use exemplar passage as tone reference:
> [exemplar quote]
- Avoid: [anti-patterns from profile]
Module Reference
- See
modules/style-application.mdfor applying learned styles to new content
Integration with slop-detector
After generating content, run slop-detector to verify:
- No AI markers introduced
- Style metrics match profile
- Anti-patterns avoided
Exit Criteria
- Style profile document created
- At least 3 exemplar passages included
- Quantitative metrics extracted
- Anti-patterns from slop-detector integrated
- Validation test passed
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
同一个仓库里的其他技能
- claude-code-plugin-reference
- night-market-architecture-contract
- night-market-build-and-env
- night-market-change-control
- night-market-collective-memory
- night-market-completion-integrity-campaign
- night-market-config-catalog
- night-market-debugging-playbook
- night-market-diagnostics-toolkit
- night-market-docs-and-writing
- night-market-failure-archaeology
- night-market-model-and-harness-updates