Skip to content
cccskills
FreePublished on GitHub

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.

The English summary is being prepared. Showing the original description.

See how to install

Files included (4)

  • SKILL.md6.8 KB
  • modules/exemplar-reference.md2.3 KB
  • modules/feature-extraction.md2.3 KB
  • modules/style-application.md2.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

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:

  1. Feature Extraction: quantifiable metrics (sentence length distribution, vocabulary complexity, structural patterns). Reproducible but soulless.
  2. 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

  1. style-learner:exemplar-collected - Source texts gathered
  2. style-learner:features-extracted - Quantitative metrics computed
  3. style-learner:exemplars-selected - Representative passages identified
  4. style-learner:profile-generated - Style guide created
  5. style-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

MetricHow to MeasureWhat It Indicates
Average word lengthchars/wordComplexity level
Unique word ratiounique/totalVocabulary breadth
Jargon densitytechnical terms/100 wordsAudience level
Contraction ratecontractions/sentencesFormality

Sentence Metrics

MetricHow to MeasureWhat It Indicates
Average lengthwords/sentenceComplexity
Length variancestd dev of lengthsNatural variation
Question frequencyquestions/100 sentencesEngagement style
Fragment usagefragments/100 sentencesStylistic punch

Structural Metrics

MetricHow to MeasureWhat It Indicates
Paragraph lengthsentences/paragraphDensity
List ratiobullet lines/total linesFormat preference
Header depthmax header levelOrganization style
Code block frequencycode blocks/1000 wordsTechnical density

Punctuation Profile

MetricNormal RangeStyle Indicator
Em dash rate0-3/1000 wordsParenthetical style
Semicolon rate0-2/1000 wordsFormal complexity
Exclamation rate0-1/1000 wordsEnthusiasm level
Ellipsis rate0-1/1000 wordsTrailing 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:

  1. Generate sample content using the profile
  2. Compare metrics to extracted features
  3. Have user evaluate voice/tone match
  4. 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.md for applying learned styles to new content

Integration with slop-detector

After generating content, run slop-detector to verify:

  1. No AI markers introduced
  2. Style metrics match profile
  3. 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

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Shapes turns action-first: action leads, steps numbered, state restated. Use for ADHD-friendly output. Do not use to trim tokens; use response-compression.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

Inverts burden of proof for code additions. Use when reviewing PRs, planning refactors, or running unbloat to challenge every addition's necessity.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

Tracks per-agent token usage and flags waste in parallel dispatch. Use when evaluating parallel agent efficiency or after a multi-agent run.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

Coordinates Claude agent teams via filesystem protocol. Use when orchestrating parallel agents with task dependencies. Do not use for single-agent tasks.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

Evaluates API surface design, consistency, and exemplar alignment. Use when reviewing public API changes or before releasing a new API surface.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

Selects architecture paradigm via research before scaffolding. Use when architecture is undecided and the choice needs justification and documentation.

The English summary is being prepared. Showing the original description.

athola/claude-night-market343Updated Oct 17, 2026

See all skills by athola

Report a problem with this skill