Skip to content

Conversation

@mschristensen
Copy link
Contributor

@mschristensen mschristensen commented Jan 13, 2026

Description

Adds a page to the Messaging section that describes sending tool calls and results to users over channels. Indicates ability to build generative user interfaces or implement human in the loop workflows.

Checklist

@coderabbitai
Copy link

coderabbitai bot commented Jan 13, 2026

Important

Review skipped

Auto reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mschristensen mschristensen added the review-app Create a Heroku review app label Jan 13, 2026
@mschristensen mschristensen marked this pull request as ready for review January 13, 2026 17:49
@ably-ci ably-ci temporarily deployed to ably-docs-feature-ait-2-4jnnec January 13, 2026 17:50 Inactive
Tool call arguments can be streamed token by token as they are generated by the model. When implementing token-level streaming, your UI should handle parsing partial JSON gracefully to render realtime updates as the arguments stream in. To learn more about approaches to token streaming, see the [token streaming](/docs/ai-transport/features/token-streaming) documentation.
</Aside>

## Human-in-the-loop workflows <a id="human-in-the-loop"/>
Copy link
Member

Choose a reason for hiding this comment

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

You mention HITL, but what about other tool calls that are invoked client-side? Eg to get location, read or send texts on a mobile, upload photos etc.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

A good point, thanks. Added in 3d62e32

@ably-ci ably-ci temporarily deployed to ably-docs-feature-ait-2-4jnnec January 14, 2026 15:09 Inactive
Copy link
Contributor

@GregHolmes GregHolmes left a comment

Choose a reason for hiding this comment

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

Only small points really.


<Code>
```javascript
const channel = ably.channels.get('{{RANDOM_CHANNEL_NAME}}');
Copy link
Contributor

Choose a reason for hiding this comment

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

You've used realtime.channels.get and ably.channels.get is it worth making sure they're either or and not both?

Copy link
Contributor Author

Choose a reason for hiding this comment

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


if (name === 'get_location') {
const result = await getGeolocationPosition();
await channel.publish('tool_result', {
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we need to include the responseId here? we're retrieving it above, (line 213) but not using it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Member

@paddybyers paddybyers left a comment

Choose a reason for hiding this comment

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

LGTM, thanks

@ably-ci ably-ci temporarily deployed to ably-docs-feature-ait-2-4jnnec January 14, 2026 17:14 Inactive
Copy link
Contributor

@GregHolmes GregHolmes left a comment

Choose a reason for hiding this comment

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

LGTM

Adds a page to the Messaging section that describes sending tool calls
and results to users over channels. Indicates ability to build
generative user interfaces or implement human in the loop workflows.
@mschristensen mschristensen force-pushed the feature/AIT-263-tool-calls branch from a6256b3 to ecd60da Compare January 14, 2026 17:16
@ably-ci ably-ci temporarily deployed to ably-docs-feature-ait-2-4jnnec January 14, 2026 17:17 Inactive
@mschristensen mschristensen merged commit adfe7bc into AIT-129-AIT-Docs-release-branch Jan 14, 2026
7 checks passed
@mschristensen mschristensen deleted the feature/AIT-263-tool-calls branch January 14, 2026 17:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review-app Create a Heroku review app

Development

Successfully merging this pull request may close these issues.

5 participants