에이전트 시대를 실전으로 익히다
AI 개발자를 위한 실전 리소스 허브. 기초부터 프로덕션급 에이전트까지 한곳에서 학습하세요.
핫 토픽

모든 것을 바꾸는 18가지 Claude 설정. 14개는 3번 클릭 안에 숨겨져 있고, 4개는 문서에 없습니다.
모든 것을 바꾸는 18가지 Claude 설정. 14개는 3번 클릭 안에 숨겨져 있고, 4개는 문서에 없습니다.

2026년에 반드시 이해해야 할 20가지 AI 개념
2026년에 반드시 이해해야 할 20가지 AI 개념

RAG은 배우지 않는다 — 카패시의 LLM Wiki가 지식 패러다임을 완전히 바꾼다
RAG은 배우지 않는다 — 카패시의 LLM Wiki가 지식 패러다임을 완전히 바꾼다

2026년 실제로 작동하는 프롬프트 기법 TOP 30
2026년 실제로 작동하는 프롬프트 기법 TOP 30
최근 추가

+29k 스타, 벡터 없음: PageIndex가 LLM 추론으로 임베딩을 대체하는 방법
+29k 스타, 벡터 없음: PageIndex가 LLM 추론으로 임베딩을 대체하는 방법

AI 소프트웨어의 핵심은 무엇인가?
우다오커우에서 수백 개의 AI 스타트업을 검토한 후

Codex 가이드: 이미지 ⟶ 실제 UI를 6단계로
Codex 가이드: 이미지 ⟶ 실제 UI를 6단계로

회사의 두뇌: 대부분의 기업이 데이터는 있지만 기억은 없는 이유
회사의 두뇌: 대부분의 기업이 데이터는 있지만 기억은 없는 이유

월 100원 미만으로 토큰 자유를 얻는 방법 (단계별 가이드)
월 100원 미만으로 토큰 자유를 얻는 방법 (단계별 가이드)

AI 엔지니어 학습 로드맵
AI 엔지니어 학습 로드맵

정보 비대칭 깨기: 수십 개의 바이럴 이미지 게시물을 만든 내 에이전트 워크플로우 공개 (사례 연구 포함)
정보 비대칭 깨기: 수십 개의 바이럴 이미지 게시물을 만든 내 에이전트 워크플로우 공개 (사례 연구 포함)

GPT-image-2 전면 개방! 수백 장 생성 후 정리한 13가지 필수 사례!
GPT-image-2 전면 개방! 수백 장 생성 후 정리한 13가지 필수 사례!

디자인의 클로드 코드(Claude Code) 순간이 도래했다
디자인의 클로드 코드(Claude Code) 순간이 도래했다

에이전트 하네스의 구조
에이전트 하네스의 구조

LLM을 활용한 개인 지식 베이스 구축 패턴
LLM 위키

6가지 아키텍처 패턴 + 60% 품질 향상: 이 오픈소스 프로젝트가 하네스 엔지니어링을 개념에서 도구로 바꾸다
6가지 아키텍처 패턴 + 60% 품질 향상: 이 오픈소스 프로젝트가 하네스 엔지니어링을 개념에서 도구로 바꾸다
주요 뉴스
From Pivot Hell To $1.4 Billion Unicorn
In just a few years, James Hawkins took PostHog from an idea hacked together right before YC's W20 deadline to a unicorn powering product analytics for thousands of teams. In this episode...
How coding agents work
<p><em><a href="https://simonwillison.net/guides/agentic-engineering-patterns/">Agentic Engineering Patterns</a> ></em></p> <p>As with any tool, understanding how coding agents work under the hood can help you make better decisions about how to apply them.</p> <p>A coding agent is a piece of software that acts as a <strong>harness</strong> for an LLM, extending that LLM with additional capabilities that are powered by invisible prompts and implemented as callable tools.</p> <h2 id="large-language-models">Large Language Models</h2> <p>At the heart of any coding agent is a Large Language Model, or LLM. These have names like GPT-5.4 or Claude Opus 4.6 or Gemini 3.1 Pro or Qwen3.5-35B-A3B.</p> <p>An LLM is a machine learning model that can complete a sentence of text. Give the model the phrase "the cat sat on the " and it will (almost certainly) suggest "mat" as the next word in the sentence.</p> <p>As these models get larger and train on increasing amounts of data, they can complete more complex sentences - like "a python function to download a file from a URL is def download_file(url): ".</p> <p>LLMs don't actually work directly with words - they work with tokens. A sequence of text is converted into a sequence of integer tokens, so "the cat sat on the " becomes <code>[3086, 9059, 10139, 402, 290, 220]</code>. This is worth understanding because LLM providers charge based on the number of tokens processed, and are limited in how many tokens they can consider at a time.</p> <p>You can experiment with the OpenAI tokenizer to see how this works at <a href="https://platform.openai.com/tokenizer">platform.openai.com/tokenizer</a>.</p> <p>The input to an LLM is called the <strong>prompt</strong>. The text returned by an LLM is called the <strong>completion</strong>, or sometimes the <strong>response</strong>.</p> <p>Many models today are <strong>multimodal</strong>, which means they can accept more than just text as input. <strong>Vision LLMs</strong> (vLLMs) can accept images as part of the input, which means you can feed them sketches or photos or screenshots. A common misconception is that these are run through a separate process for OCR or image analysis, but these inputs are actually turned into yet more token integers which are processed in the same way as text.</p> <h2 id="chat-templated-prompts">Chat templated prompts</h2> <p>The first LLMs worked as completion engines - users were expected to provide a prompt which could then be completed by the model, such as the two examples shown above.</p> <p>This wasn't particularly user-friendly so models mostly switched to using <strong>chat templated prompts</strong> instead, which represent communication with the model as a simulated conversation.</p> <p>This is actually just a form of completion prompt with a special format that looks something like this.</p> <div class="codehilite"><pre><span></span><code>user: write a python function to download a file from a URL assistant: </code></pre></div> <p>The natural completion for this prompt is for the assistant (represented by the LLM) to answer the user's question with some Python code.</p> <p>LLMs are stateless: every time they execute a prompt they start from the same blank slate. </p> <p>To maintain the simulation of a conversation, the software that talks to the model needs to maintain its own state and replay the entire existing conversation every time the user enters a new chat prompt:</p> <div class="codehilite"><pre><span></span><code>user: write a python function to download a file from a URL assistant: def download_url(url): return urllib.request.urlopen(url).read() user: use the requests library instead assistant: </code></pre></div> <p>Since providers charge for both input and output tokens, this means that as a conversation gets longer, each prompt becomes more expensive since the number of input tokens grows every time.</p> <h2 id="token-caching">Token caching</h2> <p>Most model providers offset this somewhat through a cheaper rate for <strong>cached input tokens</strong> - common token prefixes that have been processed within a short time period can be charged at a lower rate as the underlying infrastructure can cache and then reuse many of the expensive calculations used to process that input.</p> <p>Coding agents are designed with this optimization in mind - they avoid modifying earlier conversation content to ensure the cache is used as efficiently as possible.</p> <h2 id="calling-tools">Calling tools</h2> <p>The defining feature of an LLM <strong>agent</strong> is that agents can call <strong>tools</strong>. But what is a tool?</p> <p>A tool is a function that the agent harness makes available to the LLM.</p> <p>At the level of the prompt itself, that looks something like this:</p> <div class="codehilite"><pre><span></span><code>system: If you need to access the weather, end your turn with <tool>get_weather(city_name)</tool> user: what's the weather in San Francisco? assistant: </code></pre></div> <p>Here the assistant might respond with the following text:</p> <div class="codehilite"><pre><span></span><code><tool>get_weather("San Francisco")</tool> </code></pre></div> <p>The model harness software then extracts that function call request from the response - probably with a regular expression - and executes the tool.</p> <p>It then returns the result to the model, with a constructed prompt that looks something like this:</p> <div class="codehilite"><pre><span></span><code>system: If you need to access the weather, end your turn with <tool>get_weather(city_name)</tool> user: what's the weather in San Francisco? assistant: <tool>get_weather("San Francisco")</tool> user: <tool-result>61°, Partly cloudy</tool-result> assistant: </code></pre></div> <p>The LLM can now use that tool result to help generate an answer to the user's question.</p> <p>Most coding agents define a dozen or more tools for the agent to call. The most powerful of these allow for code execution - a <code>Bash()</code> tool for executing terminal commands, or a <code>Python()</code> tool for running Python code, for example.</p> <h2 id="the-system-prompt">The system prompt</h2> <p>In the previous example I included an initial message marked "system" which informed the LLM about the available tool and how to call it.</p> <p>Coding agents usually start every conversation with a system prompt like this, which is not shown to the user but provides instructions telling the model how it should behave.</p> <p>These system prompts can be hundreds of lines long. Here's <a href="https://github.com/openai/codex/blob/rust-v0.114.0/codex-rs/core/templates/model_instructions/gpt-5.2-codex_instructions_template.md">the system prompt for OpenAI Codex</a> as-of March 2026, which is a useful clear example of the kind of instructions that make these coding agents work.</p> <h2 id="reasoning">Reasoning</h2> <p>One of the big new advances in 2025 was the introduction of <strong>reasoning</strong> to the frontier model families.</p> <p>Reasoning, sometimes presented as <strong>thinking</strong> in the UI, is when a model spends additional time generating text that talks through the problem and its potential solutions before presenting a reply to the user.</p> <p>This can look similar to a person thinking out loud, and has a similar effect. Crucially it allows models to spend more time (and more tokens) working on a problem in order to hopefully get a better result.</p> <p>Reasoning is particularly useful for debugging issues in code as it gives the model an opportunity to navigate more complex code paths, mixing in tool calls and using the reasoning phase to follow function calls back to the potential source of an issue.</p> <p>Many coding agents include options for dialing up or down the reasoning effort level, encouraging models to spend more time chewing on harder problems.</p> <h2 id="llm-system-prompt-tools-in-a-loop">LLM + system prompt + tools in a loop</h2> <p>Believe it or not, that's most of what it takes to build a coding agent!</p> <p>If you want to develop a deeper understanding of how these things work, a useful exercise is to try building your own agent from scratch. A simple tool loop can be achieved with a few dozen lines of code on top of an existing LLM API.</p> <p>A <em>good</em> tool loop is a great deal more work than that, but the fundamental mechanics are surprisingly straightforward.</p> <p>Tags: <a href="https://simonwillison.net/tags/coding-agents">coding-agents</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/agentic-engineering">agentic-engineering</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/llms">llms</a></p>
New Claude Upgrade Builds Interactive Diagrams

Introducing AI Works for Europe
Announcing AI Works for Europe, our new initiative to provide AI skills and training to help people and businesses across the continent.
Every AI Model Explained in 20 Minutes
리소스 섹션
튜토리얼
기초 프롬프팅부터 프로덕션급 에이전트 아키텍처까지 실전 가이드
도구
최고의 AI 프레임워크, 벡터 DB, 개발 도구를 찾아보세요.
쇼케이스
커뮤니티가 만든 실제 AI 프로젝트를 살펴보세요.
뉴스
AI 에이전트와 LLM의 최신 동향을 빠르게 확인하세요.
개발자 후기
Agent Cookbook helped me go from zero to building production agents in just 2 weeks. The tutorials are incredibly well-structured.
The best resource for learning AI agent development. The community showcases are inspiring and educational.
We built our entire agent infrastructure using knowledge from Agent Cookbook. Highly recommended!