THE FUTURE MARKETACADEMY
Your classroomRoom 01 · AI Lab
School of AI

Multi-Step Agents: mga tool, memorya ug pagkasaligan

Step 6 of 7 in AI Lab

Next in your path: 1.5.3 Claude Code Projects: larger codebases, tests and git

What you'll be able to do
  • Makasulat ka mismo sa agent loop ug maipasabot ang matag mensahe niini (tool_use, tool_result, stop_reason).
  • Makahatag og daghang tool sa agent ug madisenyo kini aron si Claude makapili sa husto.
  • Mabalik ang mga error kang Claude sa paagi nga makatabang kaniya sa pag-recover, ug mahibalo kung kanus-a mohunong sa pag-retry.
  • Mabantayan ang konteksto sa daghang lakang ug sa lain-laing sessions, gamit ang panag-istorya, ang memory tool ug progress file.
  • Makadugang og mga limit ug log aron dili molungtad ang usa ka run hangtod hangtod ug makita nimo kanunay unsay nahimo niini.
  • Makabutang og lakang sa aprubal sa tawo sa atubangan sa bisan unsang peligroso nga tool, ug masulayan ang tibuok agent nga dili magbayad sa API calls.

Sa dili pa kini nga kurso: Agents First Steps (course 1.4.1) ug Build AI Agents with Claude: No-Code to Code (course 1.4). Angay nahibalo ka na sa mga pulong nga workflow, agent, tool ug tool runner, ug nakahimo na og unang API call sa Python. Mas lawom kini nga course: imong abliban ang loop nga gitagoan sa tool runner, dayon himoon nimo kini nga luwas ug kasaligan. Kinahanglan nimo ang Python 3.9 o mas bag-o ug terminal. Ang mga ehemplo naggamit sa claude-opus-5-5.

Words in this course 45Open the Vocabulary Hall
01

Abliha ang loop (ang manual agent loop)

In simple words

Sa course 1.4 usa ka robot ang naghimo sa mga mandu-mando ug resulta ra ang imong nakita. Karon ikaw na ang naghupot sa clipboard. Moingon si Claude "palihog check sa stock room," moadto ka ug mo-check, isulat nimo ang tubag sa clipboard ug ihatag balik. Dayon si Claude ang mohukom kung unsay sunod nga pangutan-on. Mao kana nga paghatag ug pagbalik ang tibuok agent.

Key facts
  • Kung gusto ni Claude nga mogamit og client tool, ang tubag adunay stop_reason nga tool_use ug usa o labaw pa nga tool_use blocks. Ang matag block adunay id, name ug input (ang mga argumento).
  • Ang imong code ang mopadagan sa tool, dayon mopadala og bag-ong user message nga naay sulod nga tool_result blocks. Ang matag resulta nagdala sa tool_use_id sa hangyo nga gitubag niini, dugang ang content ug opsyonal nga is_error.
  • Mga lagda sa format gikan sa docs: ang mga tool result kinahanglan mosunod dayon human sa assistant message nga nangayo niini, ug sa user message ang mga tool_result blocks kinahanglan nga una. Ang bisan unsang text mosunod human niini.
  • Makahangyo si Claude og daghang tool sa usa ka turno. Tubaga ang matag tool_use id nga adunay motakdo nga tool_result.
  • Matapos ang loop kung ang stop_reason lahi sa tool_use (pananglitan end_turn).
  • Ang mga tool result kanunay nagdala og sulod nga dili nimo makontrol, sama sa web pages o emails. Ilha kini nga dili kasaligan: mahimong naay sulod nga mga panudlo nga gituyo aron limbongan si Claude (prompt injection).
  • Ngano nga manu-manong himoon? Mas simple ang tool runner, apan gisulti sa docs sa Anthropic nga gamiton ang manual loop kung kinahanglan nimo ang human-in-the-loop approval, custom logging o conditional execution. Mao gyud kana ang gidugang niini nga course.
MensaheKinsay mopadalaUnsay sulod
1Ikaw (user)Ang pangutana
2Claude (assistant)Text dugang tool_use blocks, stop_reason: tool_use
3Ikaw (user)tool_result blocks, usa matag tool_use id
4Claude (assistant)Ang katapusang tubag, stop_reason: end_turn (o dugang tool calls)
Pananglitan (Python, usa ka manual loop; gisulayan gamit ang stand-in 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"))

Kini nga loop wala pay limit ug wala pay error handling. Ang Lessons 3 ug 5 mag-ayo sa duha.

Step by step
  1. Himoa ang folder ug Python virtual environment, dayon padagana ang pip install anthropic (mahimong lahi ang mga command sa Windows).
  2. I-set ang imong key sa ANTHROPIC_API_KEY environment variable. Ayaw gayud pag-type niini sa file.
  3. Himoa ang loop.py ug i-paste ang ehemplo sa ibabaw.
  4. Padagana kini gamit ang python loop.py.
  5. Sa dili pa ang katapusang print, dugangi og print(messages) ug padagana pag-usab. Pangitaa ang tool_use block ug ang motakdo nga tool_result block.
  6. Check: maturo nimo ang tool_use_id sa imong resulta ug makita ang parehas nga id sa hangyo ni Claude.
Watch on YouTube
Tips for building AI agentsAnthropic · YouTube · youtube.com
Getting Started with Tool Use in the Anthropic APIRam Vegiraju · YouTube · youtube.com

Videos by other creators on YouTube, for reference. They are not made by or affiliated with The Future Market.

LESSON 01Abliha ang loop (ang manual agent loop)
LESSON 01 / ANIMATED LESSON / ENGLISH VOICE00:00 / 01:15
Read the video script
[Host] "Ang agent usa ka loop. Karon atong abliban kini."
[Screen: ang lamesa sa mga mensahe] "Mangutana ka. Motubag si Claude og hangyo sa tool. Ikaw ang mopadagan sa tool ug mopadala og resulta nga parehas ang id."
[Text on screen: stop_reason: tool_use] "Basta ang stop reason mao ang tool use, magpadayon ang loop."
[Screen: ang while loop sa editor] "Padagana ang mga tool, idugang ang mga resulta, tawga pag-usab si Claude."
[Host] "Kung makita na nimo ang loop, masabtan na nimo ang matag agent framework."
Try it now

Padagana ang loop gamit ang pangutana nga nagkinahanglan sa duha ka mug. I-print ang len(response.content) sa unang turno aron makita kung gihangyo ba ni Claude ang duha ka tool sa usa ka higayon. Dayon isulat ang duha ka sentence nga nagpasabot kung ngano nga ang matag tool_use id nagkinahanglan og tool_result.

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 "Multi-Step Agents: mga tool, memorya ug pagkasaligan" on The Future Market. Lesson 1: "Abliha ang loop (ang manual agent loop)".

What the lesson teaches:
- Kung gusto ni Claude nga mogamit og client tool, ang tubag adunay stop_reason nga tool_use ug usa o labaw pa nga tool_use blocks. Ang matag block adunay id, name ug input (ang mga argumento).
- Ang imong code ang mopadagan sa tool, dayon mopadala og bag-ong user message nga naay sulod nga tool_result blocks. Ang matag resulta nagdala sa tool_use_id sa hangyo nga gitubag niini, dugang ang content ug opsyonal nga is_error.
- Mga lagda sa format gikan sa docs: ang mga tool result kinahanglan mosunod dayon human sa assistant message nga nangayo niini, ug sa user message ang mga tool_result blocks kinahanglan nga una. Ang bisan unsang text mosunod human niini.
- Makahangyo si Claude og daghang tool sa usa ka turno. Tubaga ang matag tool_use id nga adunay motakdo nga tool_result.
- Matapos ang loop kung ang stop_reason lahi sa tool_use (pananglitan end_turn).
- Ang mga tool result kanunay nagdala og sulod nga dili nimo makontrol, sama sa web pages o emails. Ilha kini nga dili kasaligan: mahimong naay sulod nga mga panudlo nga gituyo aron limbongan si Claude (prompt injection).
- Ngano nga manu-manong himoon? Mas simple ang tool runner, apan gisulti sa docs sa Anthropic nga gamiton ang manual loop kung kinahanglan nimo ang human-in-the-loop approval, custom logging o conditional execution. Mao gyud kana ang gidugang niini nga course.

The exercise I'm working on:
Padagana ang loop gamit ang pangutana nga nagkinahanglan sa duha ka mug. I-print ang len(response.content) sa unang turno aron makita kung gihangyo ba ni Claude ang duha ka tool sa usa ka higayon. Dayon isulat ang duha ka sentence nga nagpasabot kung ngano nga ang matag tool_use id nagkinahanglan og 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 "Abliha ang loop (ang manual agent loop)" from the course "Multi-Step Agents: mga tool, memorya ug pagkasaligan".

Here's what the lesson says:
Sa course 1.4 usa ka robot ang naghimo sa mga mandu-mando ug resulta ra ang imong nakita. Karon ikaw na ang naghupot sa clipboard. Moingon si Claude "palihog check sa stock room," moadto ka ug mo-check, isulat nimo ang tubag sa clipboard ug ihatag balik. Dayon si Claude ang mohukom kung unsay sunod nga pangutan-on. Mao kana nga paghatag ug pagbalik ang tibuok agent.

The activity:
Padagana ang loop gamit ang pangutana nga nagkinahanglan sa duha ka mug. I-print ang len(response.content) sa unang turno aron makita kung gihangyo ba ni Claude ang duha ka tool sa usa ka higayon. Dayon isulat ang duha ka sentence nga nagpasabot kung ngano nga ang matag tool_use id nagkinahanglan og 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.
Open Claude
Sources
My notes
02

Daghang tool, maayo ang disenyo

This lesson is part of full access: every course and every level for one payment.

03

Kung mapakyas ang tool (error recovery)

This lesson is part of full access: every course and every level for one payment.

04

Memorya ug konteksto sa daghang lakang

This lesson is part of full access: every course and every level for one payment.

05

Mga limit ug log

This lesson is part of full access: every course and every level for one payment.

06

Aprubal sa tawo alang sa peligroso nga mga lakang

This lesson is part of full access: every course and every level for one payment.

07

Sulayi ang agent nga dili magbayad matag run

This lesson is part of full access: every course and every level for one payment.

++

Final project

This lesson is part of full access: every course and every level for one payment.

??

Quiz

  1. Unsa ang buot ipasabot sa stop_reason "tool_use"?

  2. Unsay kinahanglan naa sa matag tool_result aron mahibalo si Claude kung unsang hangyo ang gitubag niini?

  3. Asa kinahanglan ibutang ang tool_result blocks sa user message?

  4. Unsaon nimo pagsulti kang Claude nga napakyas ang tool?

  5. Unsa ang naghimo sa maayong error message para sa tool?

  6. Unsa ang gihimo sa memory tool, ug kinsay mopadagan niini?

  7. Ngano nga kinahanglan nimong i-validate ang mga path sa memory handler?

  8. Unsaon nimo pagpugong nga molungtad hangtod hangtod ang usa ka taas nga run?

  9. Kanus-a gisugyot sa docs sa Anthropic ang manual loop imbis sa tool runner?

  10. Unsang matang sa mga aksyon ang angay magkinahanglan og aprubal sa tawo?

  11. Unsaon nimo pagsulay sa imong loop nga dili magbayad sa API calls?

EX

Final exam

This lesson is part of full access: every course and every level for one payment.

CE

Certificate

This lesson is part of full access: every course and every level for one payment.