본문으로 건너뛰기
cccskills
무료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.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(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(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

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

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

athola/claude-night-market3422026년 10월 17일 업데이트

athola의 스킬 모두 보기

이 스킬의 문제 신고