개인적으둜 μ €λŠ” μ‹¬μŠ¨μ„ 맀우 μ’‹μ•„ν•©λ‹ˆλ‹€. μ œκ°€ λŒ€ν•™μ„ 영문과둜 μ§„ν•™ν•œ μ΄μœ λ„ μ΄ˆλ“±ν•™κ΅ λ•ŒλΆ€ν„° μ‹¬μŠ¨μ„ λ³΄λ©΄μ„œ μžλΌμ™”κ³ , μ‹¬μŠ¨μ„ 톡해 λ―Έκ΅­ 문화에 λŒ€ν•΄ 관심을 κ°€μ§€κΈ° μ‹œμž‘ν•˜λ©΄μ„œ μ˜μ–΄μ—λ„ 관심이 λ§Žμ•„μ Έ μ§„ν•™ν–ˆμŠ΅λ‹ˆλ‹€.

κ·Έ μ€‘μ—μ„œλ„ μ œκ°€ κ°€μž₯ μ’‹μ•„ν•˜λŠ” μΊλ¦­ν„°λŠ” 단연코 λž„ν”„μ˜€μŠ΅λ‹ˆλ‹€.

μ–΄λ”˜κ°€ λ‚˜μ‚¬κ°€ ν•˜λ‚˜ λΉ μ ΈμžˆλŠ” λ“―ν•œ 행동을 ν•˜λŠ” λž„ν”„λŠ” 마치 μ‹ μž…μΈ μ € κ°™λ‹¬κΉŒμš”β€¦

그런데 μž‘λ…„λΆ€ν„° 이 λž„ν”„μ˜ 이름을 λ”΄ claude code의 ν”ŒλŸ¬κ·ΈμΈμ΄ κ°‘μžκΈ° μ„±ν–‰ν•˜κΈ° μ‹œμž‘ν–ˆμŠ΅λ‹ˆλ‹€.

μ˜€λŠ˜μ€ 이 ralph claude code μ˜€ν”ˆμ†ŒμŠ€μ˜ μ² ν•™κ³Ό κ·Έ 원리에 λŒ€ν•΄μ„œ νƒκ΅¬ν•΄λ³΄κ³ μž ν•©λ‹ˆλ‹€.

λ°˜λ³΅μ„ ν†΅ν•œ κ°œμ„ 

μ‹¬μŠ¨μ˜ Ralph wiggumμ΄λΌλŠ” μΊλ¦­ν„°λŠ” μœ„μ—μ„œ λ§ν•œ λŒ€λ‘œ μ–΄λ”˜κ°€ λ‚˜μ‚¬ ν•˜λ‚˜κ°€ λΉ μ Έ μ—‰λš±ν•œ ν–‰λ™μ΄λ‚˜ 말을 ν•˜λŠ” μΉœκ΅¬μž…λ‹ˆλ‹€.

κ·Έλž˜μ„œ κ·ΈλŸ°μ§€ 이런 지듀도 많죠.

Geoff Huntleyκ°€ 이 Ralph의 이름을 λ”°μ„œ μ œμ•ˆν•œ 철학은 wiggum의 행동과 λΉ„μŠ·ν•©λ‹ˆλ‹€. 처음의 λž„ν”„λΌλ©΄ 놀이터λ₯Ό λ§Œλ“€ λ•Œ λ―Έλ„λŸΌν‹€μ„ λ§Œλ“€κ³  λ°˜λŒ€μͺ½μœΌλ‘œ μ ν”„ν•΄μ„œ λ‚΄λ €μ˜¬ κ²λ‹ˆλ‹€. ν•˜μ§€λ§Œ λ–¨μ–΄μ§„ μ΄ν›„μ—λŠ” β€˜λ―Έλ„λŸΌν‹€μ„ νƒ€μ„Έμš”β€™ λΌλŠ” ν‘œμ§€νŒμ„ 뢙여놓을 κ²λ‹ˆλ‹€. 그리고 λ―Έλ„λŸΌν‹€μ—μ„œ λ‹€μ‹œ μ ν”„ν•΄μ„œ λ–¨μ–΄μ§„λ‹€λ©΄ β€˜λ―Έλ„λŸΌν‹€μ— μ•‰μ•„μ„œ λ‚΄λ €κ°€μ„Έμš”β€™λΌλŠ” ν‘œμ§€νŒμ„ 뢙이겠죠.

이렇듯 λž„ν”„λŠ” μ²˜μŒμ— 결함이 λ§Žμ•˜μ§€λ§Œ, μ‹œλ„λ₯Ό λ°˜λ³΅ν•΄ κ°€λ©΄μ„œ μ‘°κΈˆμ”© 더 λ‚˜μ•„μ§‘λ‹ˆλ‹€. ralph 철학은 이렇듯 μ²˜μŒμ—λŠ” μ—‰λš±ν•˜κ³  AIκ°€ ν• λ£¨μ‹œλ„€μ΄μ…˜μ„ μΌμœΌν‚¨λ‹€λ˜κ°€ μ—‰λš±ν•œ μ½”λ“œλ₯Ό λ§Œλ“€μ–΄λ‚΄λŠ” ν–‰μœ„κ°€ μ§€μ†λ˜μ§€ μ•Šκ³  슀슀둜 μ²˜μŒμ— μš”κ΅¬ν–ˆλ˜ μš”κ΅¬μ‚¬ν•­λ“€μ„ κ²°μ •μ μœΌλ‘œ λ§Œλ“€μ–΄λ‚΄κΈ° μœ„ν•œ μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜μž…λ‹ˆλ‹€.

기본적인 μ•„ν‚€ν…μ²˜

λž„ν”„μ˜ μ•„ν‚€ν…μ²˜λŠ” λ‹€λ₯Έ λ³΅μž‘μ„±μ΄ 큰 AI Agent보닀 훨씬 λ‹¨μˆœν•˜κ²Œ λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 닀쀑 μ—μ΄μ „νŠΈλ₯Ό μ‚¬μš©ν•˜λŠ” κ²½μš°μ— 이 λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€(μ—μ΄μ „νŠΈ) μžμ²΄κ°€ 비결정적이라면 κ²°κ΅­ κ²°κ³ΌλŠ” μ’‹μ§€ μ•Šμ„ 것이기 λ•Œλ¬Έμž…λ‹ˆλ‹€. λž„ν”„λŠ” λͺ¨λ†€λ¦¬μ‹ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ ꡬ쑰λ₯Ό 채택해 단일 ν”„λ‘œμ„Έμ„œκ°€ 수직적으둜 ν™•μž₯λ˜λŠ” κ΅¬μ‘°μž…λ‹ˆλ‹€. 그리고 ν•œ 번의 루프λ₯Ό λ„λŠ” λ™μ•ˆ ν•˜λ‚˜μ˜ μž‘μ—…μ—λ§Œ μ§‘μ€‘ν•©λ‹ˆλ‹€.

λ³΄μ‹œλ©΄ 각 phaseλ§ˆλ‹€ ν•΄λ‹Ή phase에 λ§žλŠ” μš”κ΅¬μ‚¬ν•­ 정리, Todo List, κ΅¬ν˜„μ˜ μž‘μ—…μ„ λ§‘μ•„ ν•˜λ‚˜μ˜ μž‘μ—…μ„ 주둜 μ²˜λ¦¬ν•˜κ³ , ν•΄λ‹Ή μž‘μ—…μ—μ„œ 순차적으둜 μ—μ΄μ „νŠΈλ₯Ό ν˜ΈμΆœν•¨μœΌλ‘œμ¨ κ΅¬ν˜„ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€

μ΅œμ†Œ μƒνƒœμ˜ 법칙

λž„ν”„μ—μ„œ κ°•μ‘°ν•˜λŠ” 것 쀑 핡심 쀑 ν•˜λ‚˜λŠ” β€˜λͺ¨λ“  λ£¨ν”„μ—μ„œ μŠ€νƒμ„ λ™μΌν•œ λ°©μ‹μœΌλ‘œ κ²°μ •μ μœΌλ‘œ 할당’ ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. λ§€ λ£¨ν”„λ§ˆλ‹€ μŠ€νƒμ— ν•„μš”ν•œ κ³„νšκ³Ό μŠ€νŽ™μ„ ν• λ‹Ήν•©λ‹ˆλ‹€.

이 κ³Όμ •μ—μ„œ λ§€ λ£¨ν”„λ§ˆλ‹€ μ»¨ν…μŠ€νŠΈλŠ” μ΄ˆκΈ°ν™”λ˜κ³  ν•„μš”ν•œ μƒνƒœλ§Œ νŒŒμΌλ‘œλΆ€ν„° λ‹€μ‹œ μ£Όμž…ν•©λ‹ˆλ‹€. Context windowλŠ” AIμ—μ„œ λ§Žμ€ κ°œλ°œμžλ“€μ΄ μ΅œλŒ€ν•œ 많이 λ‹΄μœΌλ € ν•˜μ§€λ§Œ κ²°κ΅­ λ§Žμ€ μ½˜ν…μŠ€νŠΈλŠ” μ—μ΄μ „νŠΈλ₯Ό 더 ν—·κ°ˆλ¦¬κ²Œ ν•˜λŠ” 것이라고 Geoff HuntleyλŠ” λ§ν–ˆμŠ΅λ‹ˆλ‹€.

λ”°λΌμ„œ RalphλŠ”Β μƒνƒœ μ—†μŒ(Stateless)을 μ§€ν–₯ν•©λ‹ˆλ‹€. 즉, AIκ°€ ν•˜λ‚˜μ˜ μž‘μ€ μž‘μ—…μ„ μ™„λ£Œν•  λ•Œλ§ˆλ‹€ μ΄μ „μ˜ λŒ€ν™” 내역을 λͺ¨λ‘ μ‚­μ œν•˜κ³ , 였직 ν˜„μž¬ μž‘μ—…μ— ν•„μš”ν•œ 핡심 파일과 μ΅œμ‹  μƒνƒœμ˜ λͺ…μ„Έμ„œ(Spec)λ§Œμ„ λ‘œλ“œν•˜μ—¬Β μ™„μ „νžˆ μƒˆλ‘œμš΄ μ»¨ν…μŠ€νŠΈμ—μ„œ μž‘μ—…μ„ μ‹œμž‘ν•˜λŠ” 것이죠.


Backpressure

λž„ν”„ μ² ν•™μ—μ„œ 두 번째 핡심은 μ•žμ—μ„œλ„ λ§ν–ˆλ“― β€˜ν‘œμ§€νŒβ€™μ„ μ„Έμš°λŠ” 과정인 Backpressureμž…λ‹ˆλ‹€. 바퀴가 λΉ λ₯΄κ²Œ 돌되, μ •ν™•μ„±μ˜ μΆ•κ³Ό κ· ν˜•μ„ λ§žμΆ°μ•Ό ν•œλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€.

Ralphκ°€ 자율적으둜 돌 수 μžˆλŠ” μ΄μœ λŠ” 슀슀둜 ν‹€λ Έλ‹€λŠ” 것을 μ•Œ 수 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€. 이λ₯Ό μœ„ν•΄ 검증 계측을 μˆœμ„œλŒ€λ‘œ μŒ“μŠ΅λ‹ˆλ‹€.

계측도ꡬ μ˜ˆμ‹œμ—­ν• 
1. νƒ€μž… μ‹œμŠ€ν…œTypeScript, Rust컴파일 μ‹œμ  였λ₯˜ 포착
2. 정적 뢄석기Dialyzer (Elixir), Pyrefly (Python)λŸ°νƒ€μž„ μ „ 문제 탐지
3. ν…ŒμŠ€νŠΈκ° μ–Έμ–΄μ˜ λ‹¨μœ„ν…ŒμŠ€νŠΈ 및 ν†΅ν•©ν…ŒμŠ€νŠΈ λ“± ν”„λ ˆμž„μ›Œν¬λ™μž‘ 검증
4. λ³΄μ•ˆ μŠ€μΊλ„ˆμ·¨μ•½μ  μŠ€μΊλ„ˆλ³΄μ•ˆ 이슈 포착

이 계측듀이 λͺ¨λ‘ ν†΅κ³Όλ˜μ–΄μ•Όλ§Œ 루프가 λ‹€μŒ μž‘μ—…μœΌλ‘œ λ„˜μ–΄κ°‘λ‹ˆλ‹€. μ—μ΄μ „νŠΈκ°€ 아무리 β€œμ™„λ£Œν–ˆλ‹€β€κ³  말해도, μ»΄νŒŒμΌλŸ¬μ™€ ν…ŒμŠ€νŠΈκ°€ ν†΅κ³Όν•˜μ§€ μ•ŠμœΌλ©΄ μ™„λ£Œκ°€ μ•„λ‹™λ‹ˆλ‹€.

μ—¬κΈ°μ„œ ν…ŒμŠ€νŠΈμ—λŠ” μ€‘μš”ν•œ κ·œμΉ™μ΄ ν•˜λ‚˜ μΆ”κ°€λ©λ‹ˆλ‹€. β€μ™œ 이 ν…ŒμŠ€νŠΈκ°€ μ€‘μš”ν•œκ°€β€λ₯Ό λ°˜λ“œμ‹œ λ¬Έμ„œν™”ν•΄μ•Ό ν•©λ‹ˆλ‹€.

β€œβ€β€
λ°μ΄ν„°λ² μ΄μŠ€ 쿼리 μ˜΅ν‹°λ§ˆμ΄μ € ν…ŒμŠ€νŠΈ.
이 ν…ŒμŠ€νŠΈλ“€μ€ 캐싱과 배치 κΈ°λŠ₯이 μ˜¬λ°”λ₯΄κ²Œ λ™μž‘ν•˜λŠ”μ§€ κ²€μ¦ν•©λ‹ˆλ‹€.
μΊμ‹œ 히트율이 90% μ΄ν•˜λ‘œ λ–¨μ–΄μ§€λ©΄ μ„±λŠ₯ νšŒκ·€λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€.
β€œβ€β€

μ•žμ—μ„œλ„ λ§ν–ˆλ“― λ¬΄μƒνƒœμ„±μ„ κ°€μ§„ λž„ν”„λŠ” λ‹€μŒ λ£¨ν”„μ—μ„œ 이전 λ£¨ν”„μ˜ λŒ€ν™”λ₯Ό κΈ°μ–΅ν•˜μ§€ λͺ»ν•˜κΈ° λ•Œλ¬Έμ— ν…ŒμŠ€νŠΈμ˜ 이유λ₯Ό 남겨두지 μ•ŠμœΌλ©΄ λ‹€μŒ μ—μ΄μ „νŠΈκ°€ κ·Έ ν…ŒμŠ€νŠΈλ₯Ό λΆˆν•„μš”ν•˜λ‹€κ³  νŒλ‹¨ν•˜κ³  μ§€μ›Œλ²„λ¦΄ 수 μžˆμŠ΅λ‹ˆλ‹€.

이와 ν•¨κ»˜ κ³„μ†ν•΄μ„œ ν…ŒμŠ€νŠΈμ™€ λ‹€μ–‘ν•œ 정적 νƒ€μž… 뢄석 등을 톡해 λž„ν”„κ°€ κ°€λŠ” 길을 κ³„μ†ν•΄μ„œ λͺ…ν™•ν•˜κ²Œ ν•΄ λ‚˜κ°€λŠ” 것이 μ€‘μš”ν•œ λž„ν”„μ˜ ν•΅μ‹¬μž…λ‹ˆλ‹€.


κ·Έλž˜μ„œ μ–΄λ–»κ²Œ ν•˜λŠ”κ±΄λ°?

Ralph의 핡심 μ½”λ“œλŠ” ν•œ μ€„μž…λ‹ˆλ‹€.

while :; do cat PROMPT.md | claude-code ; done

이게 μ „λΆ€μž…λ‹ˆλ‹€. λ‹¨μˆœ bash loop둜 λ˜μ–΄ 있죠. PROMPT.md에 ν˜„μž¬ μ»¨ν…μŠ€νŠΈ νŒŒμΌλ“€μ„ 참쑰해두면, 루프가 돌 λ•Œλ§ˆλ‹€ Claude Codeκ°€ 이λ₯Ό 읽고 λ‹€μŒ μž‘μ—…μ„ νŒλ‹¨ν•΄ μ²˜λ¦¬ν•©λ‹ˆλ‹€.

sequenceDiagram
    participant User
    participant Ralph as Ralph Engine (Shell)
    participant Claude as Claude Code CLI
    participant FS as File System / Git

    User->>Ralph: ralph β€œκΈ°λŠ₯ κ΅¬ν˜„/버그 μˆ˜μ • μš”μ²­β€

    loop Work Loop (Until Success or Limit)
        Ralph->>FS: ν˜„μž¬ μ»¨ν…μŠ€νŠΈ(PRD, Progress, Git Diff) 읽기
        Ralph->>Claude: μ»¨ν…μŠ€νŠΈ + μ§€μ‹œμ–΄ 전달

        Note over Claude: μ§€μΉ¨ 뢄석 및 도ꡬ μ‹€ν–‰<br/>(File Edit, Shell Command)

        Claude->>FS: μ½”λ“œ μˆ˜μ • 및 ν…ŒμŠ€νŠΈ μ‹€ν–‰
        FS-->>Claude: μ‹€ν–‰ κ²°κ³Ό (Pass/Fail)
        Claude-->>Ralph: 응닡 ν…μŠ€νŠΈ (Status μ—…λ°μ΄νŠΈ 포함)

        Ralph->>FS: Git Diff 및 파일 λ³€κ²½ 확인

        rect rgb(240, 240, 240)
            Note over Ralph: μƒνƒœ 뢄석 (State Analysis)
            Ralph->>Ralph: 1. μ’…λ£Œ μ‹ ν˜Έ(EXIT_SIGNAL) 확인<br/>2. 동일 응닡 반볡 μ—¬λΆ€ 확인<br/>3. μ„œν‚· 브레이컀(μ—λŸ¬ λˆ„μ ) 체크
        end

        alt μž‘μ—… λ―Έμ™„λ£Œ
            Ralph->>FS: progress.txt μ—…λ°μ΄νŠΈ (λ‹€μŒ 루프 μ€€λΉ„)
            Ralph->>Ralph: Rate Limit λŒ€κΈ° (ν•„μš” μ‹œ)
        else μž‘μ—… μ™„λ£Œ λ˜λŠ” 쀑단
            Ralph->>Ralph: Loop νƒˆμΆœ
        end
    end

    Ralph-->>User: μ΅œμ’… κ²°κ³Ό 보고 및 톡계 좜λ ₯

Ralph(Shell)λŠ” λ‹¨μˆœν•œ μ‘°μœ¨μžμž…λ‹ˆλ‹€. μ‹€μ œ νŒλ‹¨κ³Ό κ΅¬ν˜„μ€ Claude Codeκ°€ ν•©λ‹ˆλ‹€. RalphλŠ” μ»¨ν…μŠ€νŠΈλ₯Ό μ „λ‹¬ν•˜κ³ , κ²°κ³Όλ₯Ό ν™•μΈν•˜κ³ , 루프λ₯Ό λ°˜λ³΅ν•  λΏμž…λ‹ˆλ‹€.


핡심 νŒŒμΌλ“€

Ralphκ°€ λ§€ λ£¨ν”„λ§ˆλ‹€ λ‘œλ“œν•˜λŠ” νŒŒμΌμ€ μ •ν•΄μ Έ μžˆμŠ΅λ‹ˆλ‹€.

νŒŒμΌμ—­ν• 
@AGENT.mdλΉŒλ“œ/μ‹€ν–‰/ν…ŒμŠ€νŠΈ λͺ…λ Ήμ–΄ μ§€μΉ¨
@fix_plan.mdν˜„μž¬ μž‘μ—… κ³„νš, 발견된 버그 λͺ©λ‘
@specs/*κΈ°λŠ₯ λͺ…μ„Έμ„œλ“€

이 μ„Έ 파일이 Ralph의 단기 κΈ°μ–΅μž…λ‹ˆλ‹€. 루프가 λλ‚˜λ©΄ μ»¨ν…μŠ€νŠΈλŠ” μ΄ˆκΈ°ν™”λ˜μ§€λ§Œ 이 νŒŒμΌλ“€μ€ λ‚¨μŠ΅λ‹ˆλ‹€. μ—μ΄μ „νŠΈκ°€ μƒˆλ‘œμš΄ 사싀을 λ°œκ²¬ν•˜λ©΄ @AGENT.mdλ‚˜ @fix_plan.mdλ₯Ό 직접 μ—…λ°μ΄νŠΈν•΄ λ‹€μŒ 루프에 μ „λ‹¬ν•©λ‹ˆλ‹€.

RalphλŠ” 이런 μ‹μœΌλ‘œ λ¬΄ν•œνžˆ μ΄μ–΄μ§€λŠ” μž₯κΈ° ν”„λ‘œμ νŠΈλ₯Ό μ²˜λ¦¬ν•©λ‹ˆλ‹€. μ»¨ν…μŠ€νŠΈ μœˆλ„μš° ν•œκ³„λ₯Ό 파일 μ‹œμŠ€ν…œμœΌλ‘œ μš°νšŒν•˜λŠ” 것이죠. λ‹¨μˆœν•˜κ²Œλ§Œ 보일 μˆ˜λ„ μžˆκ² μ§€λ§Œ κΈ°μ‘΄ AI Agent의 ν•œκ³„λ₯Ό 잘 νŒŒμ•…ν•˜κ³  이λ₯Ό μ‹œμŠ€ν…œμ μœΌλ‘œ λ³΄μ™„ν•œ 쒋은 사둀라고 μƒκ°ν•©λ‹ˆλ‹€.

λ‹¨μˆœν•¨μ„ κ°•μ μœΌλ‘œ

μ‹¬μŠ¨μ˜ λž„ν”„λŠ” μ’…μ’… μ—‰λš±ν•œ 말을 ν•©λ‹ˆλ‹€. 그런데 κ·Έ μ—‰λš±ν•¨μ΄ λ•Œλ‘œλŠ” κ°€μž₯ 핡심을 찌λ₯΄κΈ°λ„ ν•©λ‹ˆλ‹€.

Ralph-claude-code도 λΉ„μŠ·ν•©λ‹ˆλ‹€. β€œκ·Έλƒ₯ while λ£¨ν”„μž–μ•„?”라고 생각할 수 μžˆμŠ΅λ‹ˆλ‹€. λ§žμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ κ·Έ λ‹¨μˆœν•¨μ΄ 였히렀 강점이죠. μ½”λ“œλ₯Ό 읽을 수 있고, 디버깅할 수 있고, 믿을 수 μžˆμŠ΅λ‹ˆλ‹€. λ³΅μž‘ν•œ λΈ”λž™ λ°•μŠ€μ˜ AI μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜λ³΄λ‹€ 투λͺ…ν•œ λž„ν”„κ°€ 훨씬 κ°•λ ₯ν•˜κ²Œ μž‘μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

마치며.. but maintainability?

Geoff Huntleyκ°€ μ“΄ κΈ€μ˜ λ§ˆμ§€λ§‰ λΆ€λΆ„μ—λŠ” μ΄λŸ¬ν•œ 문단이 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

β€œAIκ°€ λ§Œλ“  μ½”λ“œλŠ” μœ μ§€λ³΄μˆ˜κ°€ μ•ˆ λ˜μ§€ μ•Šλ‚˜μš”?”

이 μ§ˆλ¬Έμ„ 듀을 λ•Œλ§ˆλ‹€ Geoff HuntleyλŠ” λ°˜λ¬Έν•©λ‹ˆλ‹€. β€λˆ„κ°€ μœ μ§€λ³΄μˆ˜ν•˜λŠ” κ±΄κ°€μš”?”

인간이 μœ μ§€λ³΄μˆ˜μ˜ 기쀀이어야 ν•  μ΄μœ κ°€ μžˆμ„κΉŒμš”? μ½”λ“œκ°€ μ΄ν•΄ν•˜κΈ° μ–΄λ ΅λ‹€λ©΄, AIμ—κ²Œ 루프λ₯Ό λŒλ €μ„œ λ¦¬νŒ©ν† λ§ν•˜λ©΄ λ©λ‹ˆλ‹€. 버그가 생기면, 루프λ₯Ό λ‹€μ‹œ λŒλ €μ„œ 고치면 λ©λ‹ˆλ‹€. μš”κ΅¬μ‚¬ν•­μ΄ λ°”λ€Œλ©΄, μŠ€νŽ™μ„ μ—…λ°μ΄νŠΈν•˜κ³  루프λ₯Ό 돌리면 λ©λ‹ˆλ‹€.

AI μ‹œλŒ€μ— μ ‘μ–΄λ“€λ©΄μ„œ β€œμœ μ§€λ³΄μˆ˜ν•˜κΈ° 쒋은 μ½”λ“œβ€μ— λŒ€ν•œ μ •μ˜λ„ 점점 기쑴의 μ •μ˜κ°€ μ•„λ‹Œ λ‹€λ₯΄κ²Œ μ •μ˜λ₯Ό λ‚΄λ¦¬λ €λŠ” μ‹œλ„λ“€μ΄ λ³΄μž…λ‹ˆλ‹€. 쒋은 μ½”λ“œλž€ 인간이 읽기 쒋은 μ½”λ“œκ°€ μ•„λ‹ˆλΌ, AIκ°€ λ‹€μŒ λ£¨ν”„μ—μ„œ μ˜¬λ°”λ₯΄κ²Œ μ΄ν•΄ν•˜κ³  κ°œμ„ ν•  수 μžˆλŠ” μ½”λ“œμΌ μˆ˜λ„ μžˆλ‹€λŠ” μ˜κ²¬μ€ AIκ°€ λŒ€λΆ€λΆ„μ˜ μ½”λ“œλ₯Ό μ§œλŠ” μ§€κΈˆ λ‹Ήμž₯도 λ¬΄μ‹œν•  수 μ—†λŠ” μ˜κ²¬μ΄κΈ°λ„ ν•©λ‹ˆλ‹€.

μ € λ˜ν•œ κ³„μ†ν•΄μ„œ μ•žμœΌλ‘œμ˜ ν”„λ‘œκ·Έλž˜λ°μ˜ λ°©ν–₯에 λŒ€ν•΄μ„œ κ³ λ―Όν•˜λ©΄μ„œ β€˜μœ μ§€λ³΄μˆ˜ν•˜κΈ° 쒋은 μ½”λ“œβ€™μ— λŒ€ν•œ 고민을 많이 ν•©λ‹ˆλ‹€. μ²˜μŒμ—λŠ” 인간이 μœ μ§€λ³΄μˆ˜ν•˜κΈ° 쒋은 μ½”λ“œμ—¬μ•Ό μ˜ˆμ™Έμ˜ μƒν™©μ—μ„œ μ•ˆμ •μ„±μžˆκ²Œ μ„œλΉ„μŠ€ν•  수 μžˆλ‹€λΌλŠ” μ˜κ²¬μ΄μ—ˆμ§€λ§Œ 사싀 κ²°κ΅­ 인간이 μœ μ§€λ³΄μˆ˜ν•˜λ”λΌλ„ 비결정적인 νŠΉμ„±μ€ κ°™λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 그렇기에 μš”μ¦˜μ—λŠ” κ·Έ 인간과 AI λͺ¨λ‘ 잘 이해할 수 μžˆλ„λ‘ κ· ν˜•μ΄ λ§žμΆ°μ§„ μ½”λ“œλ₯Ό λ§Œλ“€μ–΄λ‚˜κ°€λŠ” 것이 μ€‘μš”ν•˜λ‹€κ³  μƒκ°ν•˜λŠ”λ°μš”, μ•žμœΌλ‘œλŠ” 또 μ–΄λ–»κ²Œ 될지 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. 이 μ§ˆλ¬Έμ€ κ³„μ†ν•΄μ„œ κ°œλ°œμžλ“€μ΄ ν•΄λ‚˜κ°€μ•Ό ν•  질문이 μ•„λ‹κΉŒ μƒκ°ν•©λ‹ˆλ‹€. μ—¬λŸ¬λΆ„λ“€λ„ ν•œλ²ˆ 이 μ£Όμ œμ— λŒ€ν•΄μ„œ μƒκ°ν•΄λ³΄μ‹œκΈ°λ₯Ό 바라며 글을 λ§ˆμΉ©λ‹ˆλ‹€.

μ°Έμ‘°

https://ghuntley.com/ralph/ https://discuss.pytorch.kr/t/ralph-playbook-ralph/8705 https://github.com/frankbria/ralph-claude-code?tab=readme-ov-file