Just read @AnthropicAI post on writing effective tools for LLM agents and it completely changed how I think about testing AI tools🧵:
Building Block #7: Feedback - Human oversight workflows.
Some decisions are too important for full automation - like customer emails or purchases.
Add approval steps where humans review before execution.
Building Block #6: Recovery - Graceful failure management.
APIs go down, LLMs return nonsense, rate limits hit.
You need try/catch, retry logic with backoff, and fallback responses. Standard error handling 101.
Building Block #5: Control - Deterministic decision-making.
Don't let the LLM make every decision. Use if/else, switch cases, and routing logic.
This is normal business logic - the same you'd write in any application.
Building Block #4: Validation - Quality assurance for LLM outputs.
LLMs are probabilistic and inconsistent. Validate JSON against schemas, retry on failures.
This ensures your downstream code can reliably work with the data.
Building Block #3: Tools - External system integration.
Pure text generation is limited. You want to call APIs, update databases, and read files.
The LLM says, "call this function with these parameters" - your code handles execution.
Building Block #2: Memory- Context persistence across interactions.
LLMs are stateless; they forget everything after each call.
You need to manually store and pass the conversation history. This is just normal web app state management.
Building Block #1: Intelligence - The only truly "AI" component.
Text goes to LLM → LLM thinks → Text comes back.
Without this, you just have regular software. The magic isn't the LLM call - it's everything you build around it.
Replying to @cursor_ai
@cursor_ai recently released a guide on how to select models based on your task:
Feel lost when people talk about AI?
Here are 50 must-know AI terms (made simple) — so you can finally get what everyone’s talking about.
No fluff. Just clarity.
📌 Save this — you'll thank yourself later.










