Skip to content

feat: batch TS updates including hooks updates, retries, multi-agent …#838

Merged
notowen333 merged 2 commits into
strands-agents:mainfrom
notowen333:docs/ts-batch-updates
May 15, 2026
Merged

feat: batch TS updates including hooks updates, retries, multi-agent …#838
notowen333 merged 2 commits into
strands-agents:mainfrom
notowen333:docs/ts-batch-updates

Conversation

@notowen333
Copy link
Copy Markdown
Contributor

Description

Batch documentation update covering recent TypeScript SDK changes. Each section points to the upstream PR; all TS API verified against
the merge commits, snippet typecheck passes.

Related Issues

Type of Change

  • New content

Checklist

  • I have read the CONTRIBUTING document
  • My changes follow the project's documentation style
  • I have tested the documentation locally using npm run dev
  • Links in the documentation are valid and working

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

…interrupts, timeouts on graphs, and small papercuts
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 14, 2026

Documentation Preview Ready

Your documentation preview has been successfully deployed!

Preview URL: https://d3ehv1nix5p99z.cloudfront.net/pr-cms-838/docs/user-guide/quickstart/overview/

Updated at: 2026-05-15T15:43:57.929Z

Comment thread src/content/docs/user-guide/concepts/agents/retry-strategies.mdx
Comment thread src/content/docs/user-guide/concepts/agents/conversation-management.mdx Outdated
Comment thread src/content/docs/user-guide/concepts/model-providers/amazon-bedrock.ts Outdated
- retry-strategies: clarify jitter only applies to Exponential/Linear backoff
- conversation-management: name both should_truncate_results (Py) and shouldTruncateResults (TS)
- amazon-bedrock: bump request-timeout example to claude-sonnet-4-6
- interrupts: drop broken @api/typescript links for unexported multi-agent types
@notowen333 notowen333 merged commit 0606806 into strands-agents:main May 15, 2026
5 checks passed
@@ -108,6 +108,8 @@ In TypeScript, the tool name and description are always provided explicitly in t
</Tab>
</Tabs>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Issue: This note is placed outside the <Tabs> block, implying it applies to both Python and TypeScript. However, based on the linked PR (sdk-typescript/pull/1017), the INVALID_TOOL_NAME substitution behavior is TypeScript-specific.

Suggestion: Either wrap this in a TypeScript-only <Tab> block or explicitly qualify which SDK(s) enforce this constraint:

In TypeScript, tool names must match `^[a-zA-Z0-9_-]+$` and be 1 to 64 characters long. Names that do not match...

async function requestTimeoutExample() {
// --8<-- [start:request_timeout]
const bedrockModel = new BedrockModel({
modelId: 'us.anthropic.claude-sonnet-4-6',
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Issue: The modelId here uses us.anthropic.claude-sonnet-4-6 which is a cross-region inference profile. Given this is a "request timeout" example (not a cross-region example), a simpler model ID might reduce confusion for readers who are just learning to configure timeouts.

Suggestion: Consider using a base model ID like anthropic.claude-sonnet-4-20250514 to keep the example focused on the timeout configuration being demonstrated.

```

Passing a fully-constructed handler instance (rather than an options bag) bypasses the default; the handler's own timeouts apply unchanged.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Issue: The statement "Passing a fully-constructed handler instance (rather than an options bag) bypasses the default; the handler's own timeouts apply unchanged" is potentially confusing. It contrasts with the code example above it which uses an options bag { requestTimeout: 60_000 }. A reader might wonder: "Wait, does the example above actually work then?"

Suggestion: Clarify that the example above is an options bag (which overrides the SDK's 120s default), and that this caveat applies to a different usage pattern (e.g., passing a NodeHttpHandler instance directly).

void bedrockModel
}

void requestTimeoutExample
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Issue: The void requestTimeoutExample pattern (function reference without invocation) is inconsistent with other examples in this file that either use void functionName() (not present) or don't have any trailing invocation. Looking at the rest of the file, other examples like guardrailsExample don't have a void reference at the end.

Suggestion: Remove this line to match the pattern used by the other example functions in this file, or add it to all of them for consistency.

@github-actions
Copy link
Copy Markdown
Contributor

Assessment: Comment

This is a well-structured batch documentation update that follows repository patterns consistently. The snippet file organization, import patterns, and Tab structure are all correct.

Review Categories
  • Accuracy: One note about tool name normalization is placed outside Tabs, which may imply it applies to both SDKs when it's TypeScript-specific (inline comment).
  • Clarity: The Bedrock request timeout section has a potentially confusing caveat about "fully-constructed handler instance" that could use clarification relative to the preceding code example (inline comment).
  • Style: One template literal in hooks.ts exceeds the 90-char snippet line limit (inline comment).

Solid contribution — thorough coverage of the TS SDK changes with well-organized examples.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants