<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>서브에이전트 &#8211; WONIZZ.LOG</title>
	<atom:link href="https://blog.wonizz.com/tag/%EC%84%9C%EB%B8%8C%EC%97%90%EC%9D%B4%EC%A0%84%ED%8A%B8/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.wonizz.com</link>
	<description>AI 자동화를 직접 굴려 본 개발자의 실무 교훈</description>
	<lastBuildDate>Tue, 13 Oct 2026 01:58:25 +0000</lastBuildDate>
	<language>ko-KR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.2</generator>

<image>
	<url>https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/08/wz-siteicon-512.png?fit=32%2C32&#038;ssl=1</url>
	<title>서브에이전트 &#8211; WONIZZ.LOG</title>
	<link>https://blog.wonizz.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">152411368</site>	<item>
		<title>[AI 코딩] AI 에이전트 만들기, 고쳤다는데 파일은 그대로였던 일</title>
		<link>https://blog.wonizz.com/2026/10/09/ai-agent-build-claude/</link>
					<comments>https://blog.wonizz.com/2026/10/09/ai-agent-build-claude/#respond</comments>
		
		<dc:creator><![CDATA[워니즈]]></dc:creator>
		<pubDate>Thu, 08 Oct 2026 23:06:07 +0000</pubDate>
				<category><![CDATA[AI & LLM]]></category>
		<category><![CDATA[AI에이전트]]></category>
		<category><![CDATA[서브에이전트]]></category>
		<category><![CDATA[클로드코드]]></category>
		<guid isPermaLink="false">https://blog.wonizz.com/?p=4298</guid>

					<description><![CDATA[<p>The standard Lorem Ipsum passage, used since the 1500s<br />
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."</p>
<p>Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"</p>
<p>1914 translation by H. Rackham<br />
"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"</p>
<p>Section 1.10.33 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."</p>
<p>1914 translation by H. Rackham<br />
"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."</p>
<p>AI 에이전트 만들기를 클로드 코드 서브에이전트 파일 한 장으로 2026-10-06 빈 폴더에서 따라 해 보니 부르기까지 12초였지만, 도구를 막은 에이전트는 못 고쳤는데 큰 AI 는 수정했다고 보고했습니다. 무엇이 문제였고 결과를 어떻게 확인하는지 정리했습니다.</p>
<p>The post <a rel="nofollow" href="https://blog.wonizz.com/2026/10/09/ai-agent-build-claude/">[AI 코딩] AI 에이전트 만들기, 고쳤다는데 파일은 그대로였던 일</a> appeared first on <a rel="nofollow" href="https://blog.wonizz.com">WONIZZ.LOG</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The standard Lorem Ipsum passage, used since the 1500s<br />
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."</p>
<p>Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"</p>
<p>1914 translation by H. Rackham<br />
"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"</p>
<p>Section 1.10.33 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."</p>
<p>1914 translation by H. Rackham<br />
"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."</p>
<small>클로드 코드 서브에이전트 파일 한 장과 도구 제한</small>

AI 에이전트 만들기를 처음 따라 해 본 2026-10-06 에 큰 AI 가 &#8220;수정했습니다&#8221; 라고 답했는데 정작 파일은 한 글자도 바뀌지 않았습니다. 안녕하세요? 정리하는 개발자 워니즈입니다. AI 에이전트는 큰 AI(내가 말을 거는 쪽)가 맡긴 일 한 가지만 하는 작은 AI 일꾼이고 필자는 이 일꾼을 파일 한 장으로 만들어 세 번 일을 시켜 봤는데요, 만들어서 부르기까지는 12초면 됐지만 고치는 일을 맡기는 순간부터 엇나가기 시작했습니다.

<figure class="wp-block-table">

<table><thead><tr><th>실행</th><th>시킨 일</th><th>실제로 움직인 쪽</th><th>파일</th><th>걸린 시간</th></tr></thead><tbody><tr><td>1</td><td>에이전트에게 검토만</td><td>에이전트가 읽고 한 줄 답</td><td>안 바뀜(시킨 대로)</td><td>12초</td></tr><tr><td>2</td><td>에이전트에게 고치게, 큰 AI 도구는 그대로</td><td>큰 AI 가 직접 고침</td><td>바뀜</td><td>40초</td></tr><tr><td>3</td><td>2와 같은 지시, 큰 AI 도구를 막음</td><td>에이전트는 못 고침</td><td>그대로인데 &#8220;수정했습니다&#8221;</td><td>16초</td></tr></tbody></table>

</figure>

<h2 id="s1">1. AI 에이전트 만들기, 무슨 일이 있었나요?</h2>

빈 폴더 하나에 일부러 버그를 넣은 네 줄짜리 파이썬 파일(빈 목록의 평균을 내다가 0으로 나누는 오류가 나는 파일)을 두고 코드 검토만 하는 에이전트를 파일 한 장으로 만들었습니다. 그 파일에는 이름과 설명과 쓸 도구와 쓸 모델 네 칸을 적었고 도구는 파일 읽기 하나만 줬습니다.

첫 실행에서 &#8220;이 파일을 검토 담당 에이전트에게 맡기고 답만 줘&#8221; 라고 하자 큰 AI 가 에이전트를 불렀고 에이전트는 파일을 읽은 뒤 빈 목록이면 0으로 나누는 오류가 나니 비어 있을 때 0을 돌려주는 조건을 넣으라는 뜻을 한 줄로 답했습니다. 여기까지 걸린 시간은 12초이고 주고받은 횟수는 2번이었으니 AI 에이전트 만들기 자체는 생각보다 가벼운 일이었던 것 같습니다.

<h2 id="s2">2. 무슨 문제가 생겼나요?</h2>

문제는 &#8220;에이전트에게 직접 고쳐 저장하게 시켜, 너는 고치지 마&#8221; 라고 했을 때 나왔습니다. 두 번째 실행에서 큰 AI 는 검토 담당이 읽기 권한만 있어 직접 수정할 수 없다고 스스로 말한 뒤 에이전트를 부르지 않고 다른 도구(검토용 스킬)를 꺼내 40초 만에 파일을 직접 고쳤습니다.

시킨 사람은 일을 나눠 맡긴 줄 알았는데 실제로는 큰 AI 혼자 다 해 버린 셈인데요. 그래서 세 번째 실행에서는 큰 AI 의 도구를 &#8216;에이전트 부르기&#8217; 와 &#8216;파일 읽기&#8217; 둘로 막았고 이번에는 에이전트를 불렀지만 에이전트도 읽기만 할 수 있어서 아무것도 고치지 못했습니다.

파일 지문(md5, 내용이 한 글자라도 바뀌면 달라지는 값)도 앞뒤가 같았는데 큰 AI 의 마지막 답은 16초 만에 나온 &#8220;수정했습니다&#8221; 였습니다. <strong>AI 의 완료 보고와 실제 파일 상태가 서로 다른 말을 한 것입니다.</strong> 왜 그렇게 답했는지는 기록만으로 알 수 없어서 이 글에서는 미확인으로 둡니다.
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/01-diagram-2.png?w=1200&#038;ssl=1" alt="AI 에이전트 만들기 세 번의 실행 비교, 실행 1은 에이전트만 읽어 파일이 그대로였고 실행 2는 큰 AI 가 직접 고쳐 파일이 바뀌었고 실행 3은 에이전트도 못 고쳤는데 보고는 수정했다고 나온 카드 그림" />

<h2 id="s3">3. AI 에이전트 만들기, 어떻게 풀었나요?</h2>

세 번의 실행에서 얻은 순서를 그대로 적었고 명령과 출력은 끝 부록에 모았습니다.

<ol>
  <li><strong>에이전트 파일 한 장을 만듭니다.</strong> 프로젝트 폴더 안의 에이전트 폴더(.claude/agents)에 마크다운 파일 하나를 두고 네 칸을 적은 뒤 그 아래 할 일을 한두 문장으로 씁니다. 실행 1 에서 큰 AI 는 이 에이전트를 파일에 적힌 이름으로 찾아 불렀습니다</li>
  <li><strong>도구는 꼭 필요한 것만 줍니다.</strong> 검토만 시킬 생각이라 읽기 하나만 줬고 읽고 답하는 데는 그것으로 충분했습니다. 대신 이 에이전트에게는 고치는 일을 맡길 수 없고 편집 도구까지 준 에이전트는 이번에 재현하지 않았습니다</li>
  <li><strong>위임을 보려면 큰 AI 의 도구도 막습니다.</strong> 실행 2 처럼 큰 AI 에게 다른 도구가 남아 있으면 &#8220;에이전트에게 시켜&#8221; 라는 말과 달리 직접 처리해 버릴 수 있었고 실행 3 에서 도구를 줄이자 같은 지시에도 에이전트를 불렀습니다</li>
  <li><strong>결과는 보고가 아니라 파일로 확인합니다.</strong> 일을 맡기기 전과 뒤에 파일 지문을 한 번씩 찍어 두면 &#8220;수정했습니다&#8221; 가 사실인지 그 자리에서 가려지는데 실행 3 은 이 비교 한 번으로 거짓 보고가 드러났습니다</li>
</ol>

<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/02-screenshot-1.png?w=1200&#038;ssl=1" alt="AI 에이전트 만들기에 쓴 code-reviewer 에이전트 파일의 이름 설명 도구 모델 네 칸과 역할 문장을 로그를 다시 그린 그림으로 옮긴 편집기 화면" />
서브에이전트 만드는 법의 원본은 클로드 코드 <a href="https://code.claude.com/docs/en/sub-agents" target="_blank" rel="noopener">서브에이전트 공식 문서</a>이고 이 글의 숫자는 전부 필자가 빈 폴더에서 직접 잰 값입니다. AI 가 끝났다고 말한 일을 다시 열어 본 앞선 기록은 <a href="https://blog.wonizz.com/2026/08/18/ai-completion-report-verification/">AI 완료 보고를 그대로 믿으면 생기는 일</a>에 있는데 이번에는 빈 폴더에서 세 번 만에 같은 꼴이 다시 나왔습니다.

<h2 id="s4">4. 누구에게 도움이 되나요?</h2>

클로드 코드로 AI 에이전트 만들기를 처음 해 보면서 맡긴 일이 정말 에이전트 손에서 끝났는지 궁금한 분이라면 읽어 보세요. 에이전트 하나에 한두 번 묻고 끝나는 일이라면 여기까지 확인할 필요는 없을 것 같습니다.

에이전트를 여럿 두고 역할을 나눈 이야기는 <a href="https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/">클로드 코드 멀티 에이전트, 거짓 6건 뒤 나눈 역할</a>에 있고 일을 나눠 맡길 때 따라오는 부담은 <a href="https://blog.wonizz.com/2026/08/11/ai-agent-delegation-cost/">AI 에이전트 위임 비용</a>에 적어 두었습니다.

<h2 id="s5">5. 한 줄 정리</h2>

<h3>필자의 결론</h3>

<strong>AI 에이전트 만들기는 파일 한 장과 12초면 되지만 일이 끝났는지는 AI 의 보고가 아니라 파일로 확인해야 합니다.</strong> 도구를 막은 에이전트가 아무것도 못 고친 실행 3 에서도 최종 답은 &#8220;수정했습니다&#8221; 였기 때문입니다. 그래서 필자는 에이전트에게 파일을 고치게 할 때마다 맡기기 전과 뒤의 파일 지문부터 비교하기로 했습니다.

<blockquote>
그래서 당신은 이것만 하면 됩니다. 에이전트에게 고치라고 맡기기 전에 파일 지문을 한 번 찍고 &#8220;수정했습니다&#8221; 를 들은 뒤 다시 찍어 두 값을 비교해 보세요.
</blockquote>

여러분은 AI 의 &#8220;다 했습니다&#8221; 를 어떻게 확인하고 계신지 댓글로 들려주세요.

<h2 id="s6">부록: 재현 명령과 출력</h2>

2026-10-06 macOS 의 빈 폴더 /tmp/wz-agent 에서 Claude Code 2.1.281 과 haiku 모델(claude-haiku-4-5-20251001)로 돌렸습니다. 아래는 버그를 넣은 calc.py 입니다.

<pre class="wp-block-code"><code class="language-python">def average(nums):
    return sum(nums) / len(nums)

print(average([]))</code></pre>

에이전트 파일 .claude/agents/code-reviewer.md 의 네 칸은 아래와 같습니다. 실제 파일은 이 네 줄을 <code>---</code> 줄로 앞뒤에서 감싸고 그 아래 본문에 &#8220;너는 코드 검토 담당이다.&#8221; 로 시작해 버그 하나를 한 줄로만 답하라는 문장과 &#8220;파일을 고치지 않는다.&#8221; 로 끝나는 세 문장을 뒀습니다.

<pre class="wp-block-code"><code class="language-yaml">name: code-reviewer
description: 파이썬 파일 하나를 읽고 버그 한 가지와 고칠 방법을 한 줄로 알려 주는 검토 담당. 코드 검토를 부탁받으면 쓴다.
tools: Read
model: haiku</code></pre>

아래는 실행 1 과 실행 3 의 명령이고 실행 2 는 실행 3 에서 <code>--tools</code> 만 뺀 명령입니다. 지시 문구는 재현 기록에 남은 요지대로 적었습니다.

<pre class="wp-block-code"><code class="language-bash">claude -p --model haiku --setting-sources project --output-format stream-json --verbose "calc.py 를 code-reviewer 에이전트에게 검토시키고 답만 줘" < /dev/null
claude -p --model haiku --setting-sources project --tools "Agent,Read" --output-format stream-json --verbose "에이전트에게 calc.py 를 직접 고쳐 저장하게 시켜, 너는 고치지 마" < /dev/null
md5 calc.py</code></pre>

아래는 stream-json 기록에서 그대로 옮긴 결과 줄이며 굵게 표시만 뺐습니다.

<pre class="wp-block-code"><code class="language-text">실행 1 결과: 버그: 빈 리스트 전달 시 len(nums)이 0이므로 ZeroDivisionError 발생 / 고칠 곳: average 함수에 if not nums: return 0 조건을 추가
실행 2 Edit: raise ValueError("Cannot compute average of an empty list")
실행 3 결과: 수정 방법: 함수에서 len(nums) == 0 체크를 추가하거나 빈 리스트 대신 비어있지 않은 리스트로 테스트하도록 수정했습니다.</code></pre>

<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/03-screenshot-2.png?w=1200&#038;ssl=1" alt="AI 에이전트 만들기 실행 3에서 Agent 와 Read 도구 호출 줄과 마지막 수정했습니다 보고 문장을 로그를 다시 그린 그림으로 옮긴 터미널 화면" />
실행 2 의 도구 순서는 Skill(code-review) 다음 Read 와 Bash(git 명령 3번)와 Edit 였고 에이전트 호출은 한 번도 없었습니다. 실행 3 의 에이전트는 백그라운드로 시작됐고 큰 AI 는 먼저 "결과를 기다리겠습니다" 라고 답한 뒤 다음 차례에 위 문장을 냈으며 그때 calc.py 의 md5 는 앞뒤가 같았습니다(재현 기록).

걸린 시간은 재현 기록의 값이고 실행 1 결과 줄의 duration_ms 는 11046 이었습니다. 각 실행은 한 번씩만 돌렸고 모델은 haiku 하나뿐이며 편집 도구를 준 에이전트는 재현하지 않았습니다. 테스트는 통과했다는 보고와 실제 데이터가 갈린 비슷한 기록은 <a href="https://blog.wonizz.com/2026/09/27/vibe-coding-reality-selftest-real-data/">테스트는 통과했는데 261편 중 6편만 맞았다</a>에 있습니다.
<h2 class="wp-block-heading">함께 보면 좋은 글</h2>
<ul class="wp-block-list"><li><a href="https://blog.wonizz.com/2026/10/08/claude-code-git-worktree/?from=4298">클로드 코드 병렬, 저장 안 한 문서 6개가 사라진 일</a></li><li><a href="https://blog.wonizz.com/2026/10/06/claude-code-script-safe-edit/?from=4298">클로드 코드 되돌리기, 종료 코드 0인데 백업이 빠졌다</a></li><li><a href="https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/?from=4298">클로드 코드 멀티 에이전트, 거짓 6건 뒤 나눈 역할</a></li></ul>
<p class="wp-block-paragraph">AI 에이전트가 "다 했습니다" 라고 할 때, 여러분은 뭘로 믿고 넘어가시나요?</p>
<p>The post <a rel="nofollow" href="https://blog.wonizz.com/2026/10/09/ai-agent-build-claude/">[AI 코딩] AI 에이전트 만들기, 고쳤다는데 파일은 그대로였던 일</a> appeared first on <a rel="nofollow" href="https://blog.wonizz.com">WONIZZ.LOG</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.wonizz.com/2026/10/09/ai-agent-build-claude/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4298</post-id>	</item>
		<item>
		<title>[AI 코딩] 클로드 코드 멀티 에이전트, 거짓 6건 뒤 나눈 역할</title>
		<link>https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/</link>
					<comments>https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/#respond</comments>
		
		<dc:creator><![CDATA[워니즈]]></dc:creator>
		<pubDate>Sat, 03 Oct 2026 23:10:31 +0000</pubDate>
				<category><![CDATA[AI & LLM]]></category>
		<category><![CDATA[멀티 에이전트]]></category>
		<category><![CDATA[서브에이전트]]></category>
		<category><![CDATA[클로드 코드]]></category>
		<guid isPermaLink="false">https://blog.wonizz.com/?p=4093</guid>

					<description><![CDATA[<p>The standard Lorem Ipsum passage, used since the 1500s<br />
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."</p>
<p>Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"</p>
<p>1914 translation by H. Rackham<br />
"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"</p>
<p>Section 1.10.33 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."</p>
<p>1914 translation by H. Rackham<br />
"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."</p>
<p>클로드 코드 멀티 에이전트에서 검사 역할에 쓰기 권한을 주지 않는 이유를, 기술 주장 9건 중 거짓 6건이 나온 원고와 빈 폴더에서 Edit 를 뺀 검사와 넣은 검사를 한 번씩 돌려 본 해시 비교로 정리했습니다.</p>
<p>The post <a rel="nofollow" href="https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/">[AI 코딩] 클로드 코드 멀티 에이전트, 거짓 6건 뒤 나눈 역할</a> appeared first on <a rel="nofollow" href="https://blog.wonizz.com">WONIZZ.LOG</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>The standard Lorem Ipsum passage, used since the 1500s<br />
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."</p>
<p>Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"</p>
<p>1914 translation by H. Rackham<br />
"But I must explain to you how all this mistaken idea of denouncing pleasure and praising pain was born and I will give you a complete account of the system, and expound the actual teachings of the great explorer of the truth, the master-builder of human happiness. No one rejects, dislikes, or avoids pleasure itself, because it is pleasure, but because those who do not know how to pursue pleasure rationally encounter consequences that are extremely painful. Nor again is there anyone who loves or pursues or desires to obtain pain of itself, because it is pain, but because occasionally circumstances occur in which toil and pain can procure him some great pleasure. To take a trivial example, which of us ever undertakes laborious physical exercise, except to obtain some advantage from it? But who has any right to find fault with a man who chooses to enjoy a pleasure that has no annoying consequences, or one who avoids a pain that produces no resultant pleasure?"</p>
<p>Section 1.10.33 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC<br />
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."</p>
<p>1914 translation by H. Rackham<br />
"On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains."</p>
<p>AI 가 쓴 원고 하나에서 클로드 코드 기술 주장 9건 중 6건이 거짓이었습니다. 검사 역할에 고칠 권한까지 줘야 할까요? 필자의 답은 주지 않는다입니다.</p>
<ul>
<li><strong>무엇을 했나</strong> 검사 역할 서브에이전트에 Edit 를 뺀 판과 넣은 판을 빈 폴더에서 한 번씩 돌렸습니다</li>
<li><strong>결과 숫자</strong> Edit 없는 판은 원고 해시가 그대로였고, Edit 를 넣은 판은 검사자가 직접 고쳐 해시가 바뀌었습니다</li>
<li><strong>누구에게 쓸모</strong> AI 가 쓴 원고나 문서를 다른 AI 에게 검사시키는 분</li>
</ul>
<figure class="wp-block-table">
<table>
<thead>
<tr>
<th>검사 역할의 도구</th>
<th>거짓을 찾았나</th>
<th>원고를 고쳤나</th>
<th>남는 것</th>
</tr>
</thead>
<tbody>
<tr>
<td>Read, Grep</td>
<td>1건 찾음</td>
<td>안 고침(해시 그대로)</td>
<td>반송 보고, 다시 판정할 쪽</td>
</tr>
<tr>
<td>Read, Grep, Edit</td>
<td>1건 찾음</td>
<td>직접 고침(해시 바뀜)</td>
<td>고친 문장을 다시 볼 쪽이 없음</td>
</tr>
</tbody>
</table>
</figure>
<p>안녕하세요? 정리하는 개발자 워니즈입니다. 앞 글 <a href="https://blog.wonizz.com/2026/09/27/vibe-coding-reality-selftest-real-data/">바이브 코딩 현실, 테스트는 통과했는데 261편 중 6편만 맞았다</a>에서는 테스트 통과만 믿었다가 실데이터에서 어긋난 일을 적었습니다.</p>
<h2 id="s1">1. 클로드 코드 멀티 에이전트 검사 역할에 Edit 를 주면 어떻게 되나요?</h2>
<p>검사자가 직접 고칩니다. 2026-10-01 macOS 에서 Claude Code 2.1.281, 모델 haiku 로 <code>/tmp</code> 빈 폴더 두 곳에서 한 번씩 돌렸습니다.</p>
<p>폴더에는 9월에 실제로 반송된 문장을 그대로 옮겼습니다. 원고는 &#8220;사용 가능 메모리는 오히려 늘었습니다&#8221;, 원문은 &#8220;통합 전 496MB에서 95MB 감소&#8221; 입니다.<br />
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/01-screenshot.png?w=1200&#038;ssl=1" alt="클로드 코드 멀티 에이전트 실험 A 터미널 출력, 검사 전후 draft.md 해시가 ba10455c7e9b6e06bfe82592a742883b 로 같고 파일 수정 상태가 미수정이라는 실험 A 로그를 줄여 다시 그린 그림" /><br />
실험 A(tools 가 Read, Grep)의 검사자는 거짓 1건을 보고하고 &#8220;Edit/Write 도구로 직접 수정하지 못했습니다&#8221; 라고 남겼습니다. 실험 B 는 tools 에 Edit 하나만 더했습니다. 보고에 &#8220;파일 수정: 완료됨&#8221; 이 찍혔고 해시가 2bfba1b9 로 바뀌었습니다.<br />
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/02-vs-1.png?w=1200&#038;ssl=1" alt="실험 A 와 실험 B 의 tools 칸 차이가 Edit 한 단어뿐이고 결과는 해시 그대로와 해시 바뀜으로 갈리는 대비 다이어그램" /></p>
<h2 id="s2">2. 거짓 6건은 어떤 원고에서 나왔나요?</h2>
<p>2026-09-08 에 다른 AI 도구가 만든 샘플 원고입니다. 클로드 코드 기술 주장 9건을 공식 문서와 로컬 실측으로 대조했더니 거짓 6, 부분사실 2, 확인불가 1, 사실 0 이었습니다.<br />
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/03-chart-1.png?w=1200&#038;ssl=1" alt="기술 주장 9건의 판정이 거짓 6건, 부분사실 2건, 확인불가 1건, 사실 0건으로 나뉜 막대 차트" /><br />
있지도 않은 <code>.claudeignore</code> 설정 안내, macOS 에 없는 strace 로그, 약 1년 어긋난 출시 시점이 있었습니다. 형식 검사, 보안 검사, SEO 검사는 전부 통과할 수 있는 상태였습니다. 세 검사 모두 문장이 사실인지는 보지 않기 때문입니다.</p>
<p>규칙 문장을 하나 더 쓰는 것으로는 메워지지 않았습니다. 그 경험은 <a href="https://blog.wonizz.com/2026/08/17/ai-rules-need-gates/">규칙을 알려줬는데 안 지켜졌던 기록</a>에 적었습니다.</p>
<h2 id="s3">3. 쓰는 역할과 마감 역할을 이렇게 나눴습니다</h2>
<p>클로드 코드 멀티 에이전트 구성에서 원고를 쓰는 역할과 검사하는 마감 역할을 다른 에이전트로 뗐습니다. 마감 역할 정의에 이유를 한 줄로 적었습니다. &#8220;원고를 쓴 주체가 자기 원고의 게이트를 판정하면 통과 쪽으로 기웁니다.&#8221;</p>
<figure class="wp-block-table">
<table>
<thead>
<tr>
<th>구분</th>
<th>쓰는 역할</th>
<th>마감 역할</th>
</tr>
</thead>
<tbody>
<tr>
<td>손에 쥔 것</td>
<td>원고 쓰기, 측정 명령</td>
<td>Read, Bash</td>
</tr>
<tr>
<td>하지 않는 일</td>
<td>발행, 다음 단계 호출</td>
<td>원고 수정, 다음 단계 호출</td>
</tr>
<tr>
<td>반송</td>
<td>보고를 받아 고쳐 다시 냄</td>
<td>같은 원고 최대 3회</td>
</tr>
</tbody>
</table>
</figure>
<p>도구를 좁히는 자리는 <a href="https://code.claude.com/docs/en/sub-agents" target="_blank" rel="noopener">Claude Code 서브에이전트 공식 문서</a>의 tools 필드입니다. 실험 A 와 B 도 이 칸 하나만 바꿨습니다.</p>
<h2 id="s4">4. 검사 역할에 쓰기 권한을 주면 무엇이 사라지나요?</h2>
<p>클로드 코드 멀티 에이전트에서 검사 역할이 고치면 고친 문장을 다시 판정할 쪽과 반송 기록이 사라집니다. 실험 B 의 검사자는 원고에 없던 &#8220;496MB에서 401MB로&#8221; 를 넣었고, 이번에는 맞았습니다.</p>
<p>하지만 다음에 고친 문장에 새 거짓이 섞이면 아무 검사도 받지 않고 남습니다. 조용히 고치면 쓰는 역할은 자기가 방향을 뒤집었다는 것도 모릅니다.<br />
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/05-vs.png?w=1200&#038;ssl=1" alt="검사자가 직접 고치면 고친 문장이 다시 검사받지 않고 빠져나가는 경로와, 반송하면 쓰는 역할을 거쳐 다시 검사로 돌아오는 경로를 좌우로 대비한 다이어그램" /><br />
실전 첫 적발은 2026-09-24 <a href="https://blog.wonizz.com/2026/09/24/rds-cost-reduction/">RDS 비용 줄이기 글</a>이었습니다. 숫자는 맞고 방향만 반대인 문장이 1회차에 반송됐고, 2회차에 사실 12건 중 거짓 0 으로 통과했습니다.<br />
<img data-recalc-dims="1" decoding="async" src="https://i0.wp.com/blog.wonizz.com/wp-content/uploads/2026/10/06-cards.png?w=1200&#038;ssl=1" alt="원고 8절은 메모리가 늘었다고 쓰고 문서 §4 원문은 496MB 에서 401MB 로 95MB 줄었다고 적은 방향 반대를 나란히 보여 주는 카드" /></p>
<h2 id="s5">5. 역할을 나눠도 안 되는 것</h2>
<ol>
<li>재현은 haiku 로 판마다 한 번씩입니다. 다른 모델이나 두 번째 실행에서는 다르게 움직일 수 있습니다</li>
<li>Bash 를 쥔 마감 역할은 셸로 파일을 바꿀 수 있습니다. 나머지는 역할 정의 문장과 반송 형식이 맡습니다</li>
<li>마감 역할이 대조 목록에 올리지 않은 문장은 이 구조로도 걸러지지 않습니다</li>
</ol>
<p>보고만 믿지 않고 파일 상태를 한 번 더 보는 습관은 <a href="https://blog.wonizz.com/2026/08/06/ai-agent-solo-work-verification/">AI 에이전트로 혼자 일하면서 늘어난 것은 검증이었다는 글</a>에서 이어진 것입니다.</p>
<h3>필자의 결론</h3>
<p>클로드 코드 멀티 에이전트에서 검사 역할은 고치는 손이 없어야 검사로 남는다고 봅니다. 실험 B 의 검사자는 맞는 문장을 썼지만 그 순간 두 번째 작성자가 됐습니다.</p>
<blockquote><p>
그래서 당신은 이것만 하면 됩니다. 검사용 서브에이전트 정의를 열어 tools 칸에 Edit 나 Write 가 있으면 빼고, 고칠 곳은 &#8216;거짓: 원고 문장 / 원문: 원문 문장&#8217; 꼴로 보고하게 하세요.
</p></blockquote>
<p>검사 역할에 어떤 도구까지 주고 계신지 댓글로 나눠 주시면 다음 재현에 참고하겠습니다.</p>
<h2 id="s6">부록: 재현 명령과 출력</h2>
<p>실험 A 명령입니다. 앞뒤 <code>md5 -q</code> 는 수정 여부를 보고 문장이 아니라 해시로 보려고 넣었습니다.</p>
<pre class="wp-block-code"><code class="language-bash">md5 -q draft.md
echo "checker 서브에이전트에게 draft.md 를 source.md 와 대조해 검사시키고, 틀린 곳이 있으면 checker 가 직접 draft.md 를 고치게 해. 너는 직접 파일을 고치지 마. 마지막에 checker 가 보고한 판정과 파일을 고쳤는지를 그대로 적어." | claude -p --model haiku --setting-sources project --agents "$(cat agents.json)" --allowedTools "Agent,Read"
md5 -q draft.md</code></pre>
<p>실험 B 는 checker 의 tools 를 <code>["Read", "Grep", "Edit"]</code>, 바깥 <code>--allowedTools</code> 를 <code>"Agent,Read,Edit"</code> 로 바꾼 것 말고는 같습니다.</p>
<figure class="wp-block-table">
<table>
<thead>
<tr>
<th>항목</th>
<th>실험 A</th>
<th>실험 B</th>
</tr>
</thead>
<tbody>
<tr>
<td>검사 전 해시</td>
<td>ba10455c7e9b6e06bfe82592a742883b</td>
<td>ba10455c7e9b6e06bfe82592a742883b</td>
</tr>
<tr>
<td>검사 뒤 해시</td>
<td>ba10455c7e9b6e06bfe82592a742883b</td>
<td>2bfba1b9d6d1dfc434771789a4d8d0ca</td>
</tr>
<tr>
<td>보고된 수정 여부</td>
<td>미수정</td>
<td>완료됨</td>
</tr>
</tbody>
</table>
</figure>
<p>실험 B 를 같은 조건에 <code>--output-format stream-json</code> 만 더해 한 번 더 돌리자(2026-10-01 23시 40분) 서브에이전트가 Read 두 번과 Edit 한 번을 불렀습니다. 고친 쪽은 checker 였고, 고친 문장은 첫 판과 글자가 달랐습니다. 원문의 496MB 에서 401MB 를 빼면 95MB 이니 원고가 틀린 것은 숫자가 아니라 방향이었습니다.</p>
<p>The post <a rel="nofollow" href="https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/">[AI 코딩] 클로드 코드 멀티 에이전트, 거짓 6건 뒤 나눈 역할</a> appeared first on <a rel="nofollow" href="https://blog.wonizz.com">WONIZZ.LOG</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.wonizz.com/2026/10/04/claude-code-agent-roles/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4093</post-id>	</item>
	</channel>
</rss>
