Repository navigation
Add a Why Common AI page comparing the provider with a plain task - #74685
Merged
Merged
Conversation
Lee-W
approved these changes
Oct 14, 2026
Lee-W
force-pushed
the
commonai-why-common-ai
branch
from
October 14, 2026 06:54
5854fc9 to
e69c15a
Compare
Show the same agent job written as a plain @task and as AgentOperator, list what a plain task leaves to you (retry replay, a spend cap across attempts, approvals, guarded tools, failover, batch), present retry policies as working on any task, and say when a plain task is enough. Link it from the landing page's first screen.
kaxil
force-pushed
the
commonai-why-common-ai
branch
from
October 14, 2026 07:09
e69c15a to
01a1eef
Compare
phanikumv
reviewed
Oct 14, 2026
phanikumv
approved these changes
Oct 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Nothing in the Common AI docs answers the first question a newcomer asks: what does this give me over a Pydantic AI agent, or a vendor SDK, in a plain
@task, and when should I not use it? The landing page's answer was "the API key comes from a connection, a failed call retries, a run can pause for approval, the result lands in XCom, it runs on a schedule". Four of those five apply to any task. Someone reading the published docs from the landing page as a first-time user lost confidence at exactly that sentence.This adds
why_common_ai.rst, linked from the landing page's first screen and the "Getting started" toctree:example_why_common_ai.py, shows the same job withAgentOperator. The differences are stated concretely: what the hand-writtenquerytool allows compared withSQLToolset, model from a connection, replay on retry, and a spend cap across attempts.usage_limitsbudget, output approval, tool approval, multi-round review, tools from connections,fallback_conn_ids, and batch. Each row says what the provider does and links the page that documents it.It also rewrites the landing paragraph to name what is specific to the provider.
The page argues for the provider, so every claim was checked against the source. Experimental features (
durable, tool approval, batch,ObjectStorageToolset,ClassifierRetryPolicy) are labelled as such. Each pause says whether it holds a worker:enable_hitl_reviewpolls and holds one.ApprovalOperator.Version floors are stated per row.
The plain-task baseline is a
code-block, not a shipped example. Itsquerytool runs whatever SQL the model writes, which is the point of the comparison. It is not something to put inexample_dagsfor people to copy.The
AgentOperatorexample passes the example-Dag import tests and mypy. It has not been run against a real model or database.Follow-ups
Found while reading the docs as a newcomer, and left out of this PR:
hitl_review.rstnever says the review plugin is registered by the provider, so readers look for an install step.concepts.rstuses "agent loop" before defining it.