Halimbawa (Python, manual na loop; sinubukan gamit ang panghalili sa API)
import anthropic
client = anthropic.Anthropic() # reads ANTHROPIC_API_KEY
TOOLS = [{
"name": "check_stock",
"description": "Check how many units of a product are in stock. Use the exact product name, for example 'blue mug'.",
"input_schema": {
"type": "object",
"properties": {"item": {"type": "string", "description": "Product name"}},
"required": ["item"],
},
}]
STOCK = {"blue mug": 12, "red mug": 0}
def check_stock(item):
return str(STOCK[item.lower()])
messages = [{"role": "user", "content": "Do we have blue mugs and red mugs?"}]
while True:
response = client.messages.create(
model="claude-opus-5-5", max_tokens=1024, tools=TOOLS, messages=messages
)
if response.stop_reason != "tool_use":
break
messages.append({"role": "assistant", "content": response.content})
results = []
for block in response.content:
if block.type == "tool_use":
results.append({
"type": "tool_result",
"tool_use_id": block.id,
"content": check_stock(**block.input),
})
messages.append({"role": "user", "content": results})
print("".join(b.text for b in response.content if b.type == "text"))
Wala pang limitasyon at wala pang paghawak ng error ang loop na ito. Aayusin ng Lesson 3 at 5 ang dalawa.
ClaudeStuck? Copy a ready-made prompt for Claude
Copy this, open Claude, paste it, and Claude will walk you through the lesson step by step.
For a grown-up: Claude is for adults (18+). Copy this, paste it into Claude, and use the answer to explain the lesson to your child.
I'm learning "Mga Multi-Step Agent: tools, memory at pagiging maaasahan" on The Future Market. Lesson 1: "Buksan ang loop (ang manual na agent loop)".
What the lesson teaches:
- Kapag gustong gumamit ni Claude ng client tool, ang response ay may stop_reason na tool_use at isa o higit pang tool_use block. Bawat block ay may id, name at input (ang mga argumento).
- Pinapatakbo ng code mo ang tool, saka nagpapadala ng bagong user message na may hawak na tool_result blocks. Bawat resulta ay may dalang tool_use_id ng hiniling na sinasagot nito, dagdag ang content at opsyonal na is_error.
- Mga patakaran sa format mula sa docs: ang mga tool result ay dapat sumunod agad sa assistant message na humiling sa mga ito, at sa user message ang mga tool_result block ay dapat nauuna. Anumang text ay pagkatapos ng mga ito.
- Puwedeng humiling si Claude ng ilang tool sa isang turn. Sagutin ang bawat tool_use id ng katugmang tool_result.
- Natatapos ang loop kapag ang stop_reason ay iba sa tool_use (halimbawa end_turn).
- Madalas may dalang nilalamang wala sa kontrol mo ang mga tool result, tulad ng web page o email. Ituring itong hindi mapagkakatiwalaan: maaaring may instructions ito na sadyang lilinlang kay Claude (prompt injection).
- Bakit gagawin ito nang mano-mano? Mas simple ang tool runner, pero sinasabi ng docs ng Anthropic na gamitin ang manual loop kapag kailangan mo ng pag-apruba ng taong kasali sa proseso, custom logging o conditional execution. Iyon mismo ang idinaragdag ng kursong ito.
The exercise I'm working on:
Patakbuhin ang loop gamit ang tanong na nangangailangan ng dalawang mug. I-print ang len(response.content) sa unang turn para makita kung humiling si Claude ng dalawang tool nang sabay. Saka sumulat ng dalawang pangungusap na nagpapaliwanag kung bakit kailangan ng bawat tool_use id ng tool_result.
I'm stuck. Please:
1. Explain the main idea in plain, simple words with one everyday example.
2. Walk me through the exercise one small step at a time. Ask me what I've done so far before giving the next step.
3. Don't just give me the final answer. Help me do it myself, and check my work when I share it.
I'm a parent helping my child (about 8 years old) with a lesson called "Buksan ang loop (ang manual na agent loop)" from the course "Mga Multi-Step Agent: tools, memory at pagiging maaasahan".
Here's what the lesson says:
Sa course 1.4, isang robot ang gumawa ng mga lakad at resulta lang ang nakita mo. Ngayon ikaw na ang may hawak ng clipboard. Sinasabi ni Claude na "pakitingnan ang stock room," pupunta ka at titingnan, isusulat mo ang sagot sa clipboard at ibabalik mo ito. Saka magpapasya si Claude kung ano ang susunod na itatanong. Ang paulit-ulit na palitang iyon ang buong agent.
The activity:
Patakbuhin ang loop gamit ang tanong na nangangailangan ng dalawang mug. I-print ang len(response.content) sa unang turn para makita kung humiling si Claude ng dalawang tool nang sabay. Saka sumulat ng dalawang pangungusap na nagpapaliwanag kung bakit kailangan ng bawat tool_use id ng tool_result.
Please explain this so an 8-year-old understands: short sentences, a fun everyday example, and no hard words.
Then give me 3 simple questions I can ask my child to check they understood, and a way to do the activity together, one tiny step at a time.