Skip to content

Conversation

@bolaabanjo
Copy link

@bolaabanjo bolaabanjo commented Jan 13, 2026

Summary

Adds Cencori as a community adapter for TanStack AI.

Changes

  • Add docs/community-adapters/cencori.md with usage examples
  • Update docs/config.json to include Cencori in sidebar navigation

About Cencori

Cencori provides access to 14+ AI providers (OpenAI, Anthropic, Google, xAI, DeepSeek, etc.) through a unified interface with:

  • Built-in security (PII filtering, jailbreak detection)
  • Observability (request logs, cost tracking)
  • Multi-provider support with automatic failover
  • Full tool calling support

npm: @cencori/ai-sdk
Website: https://cencori.com

Summary by CodeRabbit

  • Documentation
    • Added a comprehensive Cencori TanStack AI adapter guide covering installation, usage, configuration, streaming, tool calling, multi-provider support, supported models, environment setup, and API reference.
    • Describes a unified response format across providers and includes examples and suggested next steps.
    • Updated site navigation to include the new Cencori adapter resource for easier discovery.

✏️ Tip: You can customize this high-level summary in your review settings.

- Add docs/community-adapters/cencori.md with usage examples
- Update docs/config.json to include Cencori in sidebar

Cencori provides access to 14+ AI providers (OpenAI, Anthropic, Google,
xAI, DeepSeek, etc.) through a unified interface with built-in security,
observability, and cost tracking.

npm package: @cencori/ai-sdk
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 13, 2026

📝 Walkthrough

Walkthrough

Adds a new community adapter documentation page for the Cencori TanStack AI adapter and updates the docs navigation to include the new entry under "Community Adapters".

Changes

Cohort / File(s) Summary
Cencori Adapter Documentation
docs/community-adapters/cencori.md
New documentation (~183 lines) describing installation, usage (text/chat streaming, tool calling), configuration, multi-provider support, supported models, environment variables, streaming format, API reference (cencori(model), createCencori(config)), examples, and rationale.
Documentation Navigation
docs/config.json
Added a "Cencori" entry under "Community Adapters" → children; ensured file ends with a newline.

Sequence Diagram(s)

(omitted — changes are documentation and site config only)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • jherr
  • tannerlinsley
  • LadyBluenotes

Poem

🐰 A little hop for docs today,
New Cencori paths to guide the way,
Streams and examples neatly penned,
Rabbity cheers — new pages send! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The description provides a summary, lists changes, and describes Cencori's features, but lacks the required checklist sections from the template. Add the required checklist items (Contributing guide, testing, changeset/docs-only declaration) from the provided template to complete the description.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The pull request title clearly and concisely summarizes the main change: adding Cencori documentation as a community adapter.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.



📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between d2368fd and 15743cc.

📒 Files selected for processing (1)
  • docs/community-adapters/cencori.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/community-adapters/cencori.md

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


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.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In @docs/community-adapters/cencori.md:
- Around line 68-91: The example imports an unused symbol text and
inconsistently calls adapter.chatStream() instead of using the text() helper
used elsewhere; either remove the unused import (delete the text import line)
and keep adapter.chatStream() as-is, or refactor to call text({ model: adapter
}) (or the pattern used in other docs) and pass tools via the text() options so
tool definitions and streaming behave consistently with other examples; update
the example to ensure only one of these approaches is used and no unused imports
remain.
📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8e93ce2 and 3903ce0.

📒 Files selected for processing (2)
  • docs/community-adapters/cencori.md
  • docs/config.json
🔇 Additional comments (4)
docs/config.json (1)

164-167: LGTM!

The new Cencori entry follows the established pattern for community adapters, is correctly placed in alphabetical order, and the path correctly references the new documentation file.

docs/community-adapters/cencori.md (3)

118-128: Verify model names are accurate and up-to-date.

Model availability and naming conventions change frequently across providers. Consider verifying these model identifiers match what's actually available through the Cencori platform to avoid user confusion.


1-45: Well-structured documentation for the community adapter.

The documentation follows a logical progression from installation through basic usage to advanced features. The code examples are clear and consistent with TanStack AI patterns.


176-178: All external Cencori URLs referenced in the documentation are accessible and functioning correctly.

## Streaming

```typescript
import { text } from "@tanstack/ai";
Copy link
Contributor

Choose a reason for hiding this comment

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

text doesn't exist, it should be chat

Copy link
Contributor

@AlemTuzlak AlemTuzlak left a comment

Choose a reason for hiding this comment

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

just change the non-existant API

Comment on lines +18 to +30
import { text } from "@tanstack/ai";
import { cencori } from "@cencori/ai-sdk/tanstack";

const adapter = cencori("gpt-4o");

for await (const chunk of text({
adapter,
messages: [{ role: "user", content: "Hello!" }],
})) {
if (chunk.type === "content") {
console.log(chunk.delta);
}
}
Copy link
Contributor

Choose a reason for hiding this comment

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

this should be changed to chat

Comment on lines 74 to 86
for await (const chunk of adapter.chatStream({
messages: [{ role: "user", content: "What's the weather in NYC?" }],
tools: {
getWeather: {
name: "getWeather",
description: "Get weather for a location",
inputSchema: {
type: "object",
properties: { location: { type: "string" } },
},
},
},
})) {
Copy link
Contributor

Choose a reason for hiding this comment

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

this should probably use the chat method from tanstack ai instead of loop over the adapter directly

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.

3 participants