๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

Loop Engineering from First Principles โ€” Kyle Mistele, HumanLayer

AI Engineer ยท 2026-07-26 05:41 ยท 17:57

ํ•œ ์ค„ ํ•ต์‹ฌ

๋ฌด์ž‘์ • ์—์ด์ „ํŠธ์— ํ”„๋กฌํ”„ํŠธ๋ฅผ ๋ฐ˜๋ณต์‹œํ‚ค๋Š” ๋ฐฉ์‹์ด ์•„๋‹ˆ๋ผ, ์ธก์ •ยทํ”ผ๋“œ๋ฐฑยท์ ์ง„์  ๋ณ€๊ฒฝ์„ ๊ฐ–์ถ˜ control loop๋กœ ์„ค๊ณ„ํ•ด์•ผ ๋Œ€๊ทœ๋ชจ ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ์‹ค์ œ๋กœ ์•ˆ์ „ํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ AI๋ฅผ ์“ธ ์ˆ˜ ์žˆ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:01
    ๋‹จ์ˆœํžˆ prompt๋ฅผ ๋ฃจํ”„์— ๋„ฃ์–ด coding agent๋ฅผ ๋Œ๋ฆฌ๋Š” ๋ฐฉ์‹์€ ๋Œ€ํ˜• ์ฝ”๋“œ๋ฒ ์ด์Šค์™€ ํŒ€ ํ™˜๊ฒฝ์—์„œ ๋„ˆ๋ฌด ํฐ PR๊ณผ ๋†’์€ ๋น„์šฉ์„ ๋งŒ๋“ ๋‹ค. ์‹ค์ œ ๊ณ ๊ฐ, ๊ทœ์ œ, SLA๊ฐ€ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ๋Š” ์ฝ์„ ์ˆ˜ ์—†์„ ์ •๋„์˜ ๊ฒฐ๊ณผ๋ฌผ์„ ์Œ“๋Š” ๊ฒƒ๋ณด๋‹ค, ์‚ฌ๋žŒ์ด ์ฝ๊ณ  ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ง„์  ๊ฐœ์„ ์ด ํ•„์š”ํ•˜๋‹ค.
  2. 4:01
    control theory๋ฅผ ๋ฃจํ”„ ์„ค๊ณ„์˜ ๊ธฐ๋ณธ ์›๋ฆฌ๋กœ ์‚ผ์•„ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์ธก์ •ํ•˜๊ณ , ๋ชฉํ‘œ ์ƒํƒœ์™€์˜ ์ฐจ์ด๋ฅผ ์ค„์ด๋Š” ์ž‘์€ ๋ณ€๊ฒฝ์„ ๋ฐ˜๋ณตํ•ด์•ผ ํ•œ๋‹ค. thermostat, Kubernetes auto scaling, Postgres auto vacuum์ฒ˜๋Ÿผ ๋„๋ฆฌ ์“ฐ์ด๋Š” ์ œ์–ด ๋ฃจํ”„์˜ ํ•ต์‹ฌ์€ ๊ณผ๋„ํ•œ ๋ณ€๊ฒฝ์„ ํ”ผํ•˜๊ณ  ์‹œ์Šคํ…œ์„ ์•ˆ์ •์ ์œผ๋กœ ์›ํ•˜๋Š” ์ƒํƒœ๋กœ ์ด๋™์‹œํ‚ค๋Š” ๋ฐ ์žˆ๋‹ค.
  3. 7:00
    agentic control loop๋Š” sensor, controller, actuator๋กœ ๋‚˜๋‰˜๋ฉฐ, ๊ฐ ์—ญํ• ์€ deterministic ๋„๊ตฌ์™€ agent๋ฅผ ํ˜ผํ•ฉํ•ด ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ESLint๋‚˜ AST grep ๊ฐ™์€ ๊ทœ์น™ ๊ธฐ๋ฐ˜ ์„ผ์„œ๋กœ ๋ฌธ์ œ๋ฅผ ์ฐพ๊ณ , agent๋‚˜ ๊ทœ์น™ ๊ธฐ๋ฐ˜ ๋กœ์ง์œผ๋กœ ์–ด๋–ค ํ•ญ๋ชฉ์„ ๊ณ ์น ์ง€ ์ •ํ•œ ๋’ค, coding agent๊ฐ€ ์‹ค์ œ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ตฌ์กฐ๊ฐ€ ๊ฐ€์žฅ ์‹ค์šฉ์ ์ด๋‹ค.
  4. 9:00
    Human Layer์˜ ์‚ฌ๋ก€์—์„œ๋Š” RPC API๋ฅผ Effect๋กœ ์ ์ง„ ์ดํ–‰ํ•˜๊ธฐ ์œ„ํ•ด AST grep์œผ๋กœ ๋ฏธ์ดํ–‰ procedure๋ฅผ ์ฐพ๊ณ , main ๊ธฐ์ค€์˜ full scan ๊ฒฐ๊ณผ๋ฅผ ๋ฒ„์ „ ๊ด€๋ฆฌํ•ด ์ƒˆ PR์ด ํšŒ๊ท€๋ฅผ ๋งŒ๋“ค์ง€ ๋ชปํ•˜๊ฒŒ ํ–ˆ๋‹ค. controller๋Š” ๊ฐ€์žฅ ์ž‘์€ ๋ณ€๊ฒฝ๋ถ€ํ„ฐ ๊ณ ๋ฅด๊ฑฐ๋‚˜ telemetry๋ฅผ ์ฐธ๊ณ ํ•ด ์˜ค๋ฅ˜๊ฐ€ ๋งŽ๊ณ  instrumentation์ด ์•ฝํ•œ ์ง€์ ์„ ์šฐ์„  ์„ ํƒํ•˜๋ฉฐ, actuator๋Š” skill๊ณผ golden pattern์„ ๋ฐ”ํƒ•์œผ๋กœ ์ฝ”๋“œ๋ฅผ ๊ณ ์น˜๊ณ  PR๊นŒ์ง€ ์ƒ์„ฑํ•œ๋‹ค.
  5. 13:01
    ๋ฃจํ”„๋ฅผ ์‹ค์ œ๋กœ ๊ตด๋ฆฌ๋ ค๋ฉด GitHub Actions ๊ฐ™์€ ๊ธฐ์กด CI๋ฅผ ์“ฐ๊ณ , feedback file๊ณผ PR label, comment trigger๋ฅผ ๋ถ™์—ฌ ์‚ฌ๋žŒ์ด ๋‚ฎ์€ ๋งˆ์ฐฐ๋กœ ์žฌ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋˜ํ•œ ์—ด๋ฆฐ PR์ด ์žˆ์œผ๋ฉด ๋‹ค์Œ ์‹คํ–‰์„ ๋ฉˆ์ถ”๋Š” flow control๊ณผ, ์—ฌ๋Ÿฌ procedure๋ฅผ ๋‚˜๋ˆ  ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์—๊ฒŒ ๋ถ„์‚ฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌ๋Ÿ‰์„ ํ‚ค์›Œ์•ผ ํ•œ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • AI ์ฝ”๋”ฉ ๋ฃจํ”„์˜ ํ•ต์‹ฌ์€ ์ƒ์„ฑ ๋Šฅ๋ ฅ์ด ์•„๋‹ˆ๋ผ, ๋ฌด์—‡์„ ๋ฐ”๊ฟ€์ง€ ์ธก์ •ํ•˜๊ณ  ์–ด๋””๊นŒ์ง€ ๋ฐ”๊ฟ€์ง€ ์ œํ•œํ•˜๋Š” ์ œ์–ด ์„ค๊ณ„๋‹ค.
  • ์‹ค๋ฌด์—์„œ๋Š” agent๊ฐ€ ๋ชจ๋“  ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๊ฒŒ ํ•˜๊ธฐ๋ณด๋‹ค, deterministic ์„ผ์„œ์™€ controller๋กœ ์•ˆ์ „์žฅ์น˜๋ฅผ ๋‘๊ณ  actuator๋งŒ agent์— ๋งก๊ธฐ๋Š” ๊ตฌ์„ฑ์ด ๋” ์•ˆ์ •์ ์ด๋‹ค.
  • ๋ฃจํ”„๋ฅผ ๋„์ž…ํ•  ๋•Œ๋Š” ๋‹จ์ผ PR์˜ ํ’ˆ์งˆ๋ฟ ์•„๋‹ˆ๋ผ PR ์ ์ฒด, ์ค‘๋ณต ์ž‘์—…, ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜ ์†๋„๊นŒ์ง€ ํ•จ๊ป˜ ์„ค๊ณ„ํ•ด์•ผ ์‹ค์ œ ์ƒ์‚ฐ์„ฑ์ด ์˜ค๋ฅธ๋‹ค.