Source: https://internal-agents.com/lessons

# Lessons

Short observations for people who build agents.

Each lesson examines a design choice from the [agent catalog](https://internal-agents.com/#catalog). Sources describe what teams report. Our observations explain what those reports may mean for other builders.

## [Run limits: When should an agent stop?](https://internal-agents.com/lessons/stop-a-run)

A failed run can still produce useful work. Stripe, Dropbox, and DoorDash use different limits.

Stripe · Dropbox · DoorDash 2 min read

## [Human attention: More comments can mean more work](https://internal-agents.com/lessons/review-noise)

Uber and HubSpot check review comments before engineers see them.

Uber · HubSpot 2 min read

## [Agent roles: Separate the search from the check](https://internal-agents.com/lessons/split-the-work)

DoorDash changed how its agents divide a code review. Each design exposed a different problem.

DoorDash 2 min read

## [Work state: The worker can stop. The work can continue.](https://internal-agents.com/lessons/work-can-continue)

A new worker can continue from a saved record.

Shopify · Sentry · Sierra 2 min read

## [Tools and context: Two ways to discover tools](https://internal-agents.com/lessons/load-tools)

Cloudflare and Sentry defer different parts of tool setup until a task needs them.

Cloudflare · Sentry 2 min read

## [Workflow control: Some steps do not need a model](https://internal-agents.com/lessons/steps-without-a-model)

Code can control a step that must follow a fixed rule.

Stripe · Dropbox · PostHog 2 min read

## [Evaluation: Test the agent on your own work](https://internal-agents.com/lessons/test-on-your-work)

Past tasks and failures can become repeatable checks.

Databricks · Uber 2 min read

These lessons describe selected cases. They do not establish that one design works best for every team.
