글쓰기 에이전트 시스템을 만들게 된 배경

LinkedIn에서 글쓰기 에이전트를 만든 사례 를 봤다. Claude Code 로 글 30 개를 학습시키고, 그 스타일대로 글을 쓰고, 피드백이 자동으로 쌓이는 시스템을 만들었다는 내용이었다. 4 개의 에이전트 (Style Analyzer, Content Writer, Content Reviewer, Style Learner) 가 루프를 돌면서 피드백이 휘발되지 않고 시스템에 쌓인다는 점이 인상 깊었다.

나도 동일한 경험을 했기에 공감이 되었고, 바로 만들어보고자 마음먹었다.

플랜 수립 과정

1 단계: 요구사항 정의

먼저 어떤 글을 쓸 것인지 정의했다.

  • 글의 종류: 에세이, 블로그, LinkedIn 등 복합
  • 사용 시나리오:
    • A) 주제만 던지기
    • B) 아이디어 + 방향 제시
    • C) 기존 노트 → 글로 변환
  • 피드백 방식: 자연어 + 점수/판정 복합
  • 출력 위치: content/YYYY/Mnn/ (기존 vault 구조 유지)

2 단계: 스타일 학습용 샘플 선정

내 스타일이 잘 드러난 글 4 개를 선정했다:

  1. AI 시대의 사고와 고유성 성찰
  2. 슬픔을-공부하는-슬픔을-읽고
  3. 책을 읽는 이유
  4. 0-1을 이루는 데 있어 나의 문제점은?

이 글들을 분석해서 스타일 패턴을 추출할 예정이다.

3 단계: 에이전트 구조 설계

처음에는 하나의 에이전트로 모든 것을 하려 했다. 금방 한계가 보였다. 사람도 마찬가지다. 글 쓰는 사람이 동시에 자기 글을 객관적으로 평가하기 어렵다.

그래서 역할을 나눴다. 4 개의 에이전트가 루프를 돈다:

에이전트역할
Style Analyzer글 분석 → 스타일 가이드 생성/업데이트
Content Writer스타일 가이드 기반 초안 작성
Content Reviewer스타일 일치도 평가, 80 점 미만 시 Writer 에게 수정 지시
Style Learner사용자 피드백 해석 → 피드백 로그 업데이트
Writer가 글을 쓰면 → Reviewer가 검토하고 →
통과하면 사용자에게 보여주고 →
피드백을 Learner가 받아서 →
Analyzer의 스타일 가이드를 업데이트한다.

다음에 Writer 가 글을 쓸 때는 업데이트된 가이드를 참조한다. 피드백이 휘발되지 않고 시스템에 쌓인다. 쓸수록 정확해지는 구조다.

4 단계: 피드백 관리 방식 결정

피드백 로그를 어떻게 관리할지 고민했다. 글 유형 (에세이, 블로그, LinkedIn) 별로 특성이 다르기 때문이다.

세 가지 옵션을 검토했다:

  • Option A: 글 유형별 완전 분할
  • Option B: 계층 구조 (공통 + 유형별)
  • Option C: 단일 파일 + 섹션 구분

**Option B (계층 구조)**를 선택했다. 이유:

  1. 공통 스타일 (톤, 1 인칭, 문장 길이) 은 모든 글에 적용되므로 한 곳에서 관리
  2. 유형별 특성 (LinkedIn 은 짧고 임팩트, 에세이는 깊이) 은 분리
  3. 새 유형 추가 시 확장 용이

확정된 플랜

기본 정보

항목결정
스킬 이름personal-writing
커맨드/pkm:write-essay, /pkm:write-blog, /pkm:write-linkedin
피드백 관리계층 구조 (공통 + 유형별)
구현 순서에세이 → 블로그 → LinkedIn
출력 위치content/YYYY/Mnn/

파일 구조

.claude/
├── skills/
│   └── personal-writing/
│       ├── SKILL.md                    # 스킬 메인 문서
│       ├── style-guide.md              # 스타일 가이드 (동적 업데이트)
│       │
│       ├── feedback/
│       │   ├── common.md               # 공통 피드백
│       │   ├── essay.md                # 에세이 특화 피드백
│       │   ├── blog.md                 # 블로그 특화 피드백
│       │   └── linkedin.md             # LinkedIn 특화 피드백
│       │
│       ├── agents/
│       │   ├── analyzer.md             # Style Analyzer
│       │   ├── writer.md               # Content Writer
│       │   ├── reviewer.md             # Content Reviewer
│       │   └── learner.md              # Style Learner
│       │
│       └── approved/                   # 승인된 글 아카이브
│           ├── essay/
│           ├── blog/
│           └── linkedin/
│
├── commands/
│   ├── pkm:write-essay.md
│   ├── pkm:write-blog.md
│   └── pkm:write-linkedin.md

워크플로우

사용자 입력 (주제/아이디어/기존노트)
         │
         ▼
    ┌─────────┐
    │ Writer  │ ← style-guide.md + feedback/*.md
    └────┬────┘
         │ 초안 생성
         ▼
    ┌──────────┐
    │ Reviewer │ ← 스타일 일치도 평가
    └────┬─────┘
         │
    ┌────┴────┐
    │         │
 80점 미만  80점 이상
    │         │
    ▼         ▼
 Writer    사용자
 (수정)    (확인)
              │
              ▼ 피드백
         ┌─────────┐
         │ Learner │ → feedback/*.md 업데이트
         └────┬────┘
              │
              ▼ (주기적)
         ┌──────────┐
         │ Analyzer │ → style-guide.md 업데이트
         └──────────┘

글 유형별 특성

유형길이구조특징
에세이1500-3000 자깊이 있는 성찰질문→탐구→통찰개인 경험 중심, 열린 결론
블로그800-1500 자전달 + 성찰훅→본론→핵심독자 고려, 명확한 테이크어웨이
LinkedIn300-700 자임팩트훅→스토리→콜투액션짧고 강렬, 줄바꿈 활용

구현 로드맵

Phase 1: 기반 구축 + 에세이 (MVP)

  • 샘플 4 개 분석 → 스타일 가이드 생성
  • Writer, Reviewer 에이전트 구현
  • /pkm:write-essay 커맨드 구현

Phase 2: 학습 루프 완성

  • Learner, Analyzer 에이전트 구현
  • 피드백 → 가이드 업데이트 워크플로우

Phase 3: 블로그 확장

  • 블로그 특화 스타일 정의
  • /pkm:write-blog 커맨드 구현

Phase 4: LinkedIn 확장

  • LinkedIn 특화 스타일 정의
  • /pkm:write-linkedin 커맨드 구현

기대 효과

  1. 피드백 누적: 세션이 바뀌어도 학습이 이어진다
  2. 스타일 일관성: 내 글 스타일이 시스템에 녹아있다
  3. 자동 검토: Writer-Reviewer 루프로 품질 보장
  4. 멀티 디바이스: GitHub 연동으로 모바일에서도 사용 가능
  5. 확장성: 새 글 유형 추가 용이

다음 단계

이 플랜을 기반으로 실제 구현을 시작한다. 먼저 샘플 4 개를 분석하여 style-guide.md 를 생성하고, 에이전트 프롬프트를 작성한 뒤, /pkm:write-essay 커맨드를 구현할 예정이다.

관련 노트