Skip to content

Canonical partner docs (Pydantic AI)#2758

Merged
tylerslaton merged 3 commits into
mainfrom
tyler/cpk-5970-canonical-partner-docs-pydantic-ai
Nov 27, 2025
Merged

Canonical partner docs (Pydantic AI)#2758
tylerslaton merged 3 commits into
mainfrom
tyler/cpk-5970-canonical-partner-docs-pydantic-ai

Conversation

@brandonmcconnell

@brandonmcconnell brandonmcconnell commented Nov 25, 2025

Copy link
Copy Markdown
Contributor

What does this PR do?

Canonicalizes partner docs for Pydantic AI

Related PRs and Issues

Checklist

  • I have read the Contribution Guide
  • If the PR changes or adds functionality, I have updated the relevant documentation

Summary by CodeRabbit

Documentation

  • New Guides: Added Frontend Tools and Human-in-the-Loop documentation pages with step-by-step implementation walkthroughs.
  • Redesigned Quickstart: Comprehensive guide for building agent-native applications with updated prerequisites and setup instructions.
  • Interactive Demos: Replaced video embeds with interactive code and demo viewers for key features.
  • Generative UI Docs: New section covering Backend Tools, Frontend Tools, and Agentic UI patterns.
  • Improved Navigation: Restructured documentation hierarchy and added metadata for better organization.
  • Code Examples: Updated agent examples with improved naming conventions and state management patterns.

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

@linear

linear Bot commented Nov 25, 2025

Copy link
Copy Markdown

@vercel

vercel Bot commented Nov 25, 2025

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
docs Ready Ready Preview Comment Nov 27, 2025 0:17am
examples-coagents-ai-travel-app Ready Ready Preview Comment Nov 27, 2025 0:17am
examples-coagents-research-canvas-ui Ready Ready Preview Comment Nov 27, 2025 0:17am
1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
examples-coagents-ai-researcher-ui Ignored Ignored Nov 27, 2025 0:17am

@coderabbitai

coderabbitai Bot commented Nov 25, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

This pull request reorganizes and modernizes Pydantic AI documentation by introducing interactive iframe-based demos via IframeSwitcher components, restructuring navigation with new quickstart and generative UI sections, renaming the useCopilotAction hook to useRenderToolCall, adding DefaultToolRendering component, and removing outdated concept pages. Additionally, numerous documentation files are updated to use JSX-compatible comment syntax in code blocks.

Changes

Cohort / File(s) Summary
Pydantic AI Quickstart Reorganization
docs/content/docs/pydantic-ai/quickstart.mdx, docs/content/docs/pydantic-ai/quickstart/pydantic-ai.mdx, docs/content/docs/pydantic-ai/quickstart/meta.json
New comprehensive quickstart guide added at root level replacing the subdirectory version; old quickstart pages deleted; metadata file emptied.
Pydantic AI Generative UI & Agentic
docs/content/docs/pydantic-ai/generative-ui/agentic.mdx, docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx, docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx, docs/content/docs/pydantic-ai/generative-ui/index.mdx, docs/content/docs/pydantic-ai/generative-ui/meta.json
New generative-ui section with interactive IframeSwitcher demos; backend-tools renamed from "Tool-based Generative UI"; useCopilotAction hook renamed to useRenderToolCall; DefaultToolRendering component added; index.mdx restructured from CTACards to Card layout.
Pydantic AI Shared State
docs/content/docs/pydantic-ai/shared-state/in-app-agent-read.mdx, docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx, docs/content/docs/pydantic-ai/shared-state/index.mdx, docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx, docs/content/docs/pydantic-ai/shared-state/meta.json
Static videos replaced with IframeSwitcher components; agent examples updated to use my_agent naming; AgentState patterns and StateDeps usage expanded; index.mdx deleted; meta.json updated with icon and defaultOpen fields.
Pydantic AI Human-in-the-Loop
docs/content/docs/pydantic-ai/human-in-the-loop.mdx, docs/content/docs/pydantic-ai/human-in-the-loop/agent.mdx, docs/content/docs/pydantic-ai/human-in-the-loop/index.mdx, docs/content/docs/pydantic-ai/human-in-the-loop/meta.json
Old human-in-the-loop section (agent.mdx, index.mdx, meta.json) deleted; new consolidated human-in-the-loop.mdx page added at root with useHumanInTheLoop hook and IframeSwitcher demo.
Pydantic AI Concepts Removal
docs/content/docs/pydantic-ai/concepts/agentic-copilots.mdx, docs/content/docs/pydantic-ai/concepts/pydantic-ai.mdx, docs/content/docs/pydantic-ai/concepts/state.mdx, docs/content/docs/pydantic-ai/concepts/terminology.mdx, docs/content/docs/pydantic-ai/concepts/meta.json
Entire Concepts section removed; pages deleted include agentic-copilots, pydantic-ai, state, terminology; meta.json emptied.
Pydantic AI Miscellaneous
docs/content/docs/pydantic-ai/agentic-chat-ui.mdx, docs/content/docs/pydantic-ai/frontend-actions.mdx, docs/content/docs/pydantic-ai/multi-agent-flows.mdx, docs/content/docs/pydantic-ai/index.mdx, docs/content/docs/pydantic-ai/premium/frontend-actions.mdx
agentic-chat-ui.mdx: video replaced with IframeSwitcher; frontend-actions.mdx: completely deleted; multi-agent-flows.mdx: completely deleted; index.mdx: quickstart link updated; premium/frontend-actions.mdx: new page added.
Navigation & Configuration
docs/content/docs/pydantic-ai/meta.json, docs/content/docs/adk/shared-state/meta.json, docs/components/react/quickstart-dropdown.tsx, docs/next.config.mjs, docs/snippets/component-examples.mdx, docs/snippets/integrations/pydantic-ai/run-and-connect.mdx
meta.json files reorganized; quickstart path changed from /pydantic-ai/quickstart/pydantic-ai to /pydantic-ai/quickstart; new redirect added to next.config.mjs; RunAndConnect snippet added.
JSX Comment Syntax Normalization
docs/content/docs/agno/quickstart.mdx, docs/content/docs/adk/shared-state/in-app-agent-read.mdx, docs/content/docs/crewai-crews/shared-state/in-app-agent-read.mdx, docs/content/docs/crewai-flows/shared-state/in-app-agent-read.mdx, docs/content/docs/direct-to-llm/tutorials/ai-powered-textarea/step-2-setup-copilotkit.mdx, docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx, docs/content/docs/langgraph/…/*.mdx, docs/content/docs/microsoft-agent-framework/shared-state/in-app-agent-read.mdx
Multiple documentation files updated: inline code comments converted from // [!code highlight] to {/* [!code highlight] */} for JSX compatibility; minor whitespace adjustments.
LangGraph Shared State
docs/content/docs/langgraph/shared-state/index.mdx, docs/content/docs/langgraph/shared-state/in-app-agent-read.mdx
New "What is shared state?" section added with two-way UI-agent state linkage explanation; typo fixed (faciliate → facilitate); formatting normalized.
Other Framework Updates
docs/content/docs/mastra/quickstart.mdx
JSX formatting normalized; JavaScript comments replaced with JSX-style comments; minor whitespace adjustments.

Sequence Diagram(s)

sequenceDiagram
    actor User
    participant UI as React Component
    participant Hook as useRenderToolCall<br/>(renamed from<br/>useCopilotAction)
    participant Backend as CopilotKit Backend
    participant Tool as Tool Renderer

    User->>UI: Interact with tool UI
    UI->>Hook: Call useRenderToolCall()
    Note over Hook: Signature changed:<br/>- removed 'available' property<br/>- updated render callback
    Hook->>Backend: Register tool render handler
    Backend->>Tool: Invoke tool execution
    Tool->>Hook: Return rendered result
    Hook->>UI: Update UI with rendered output
    UI->>User: Display result
Loading
sequenceDiagram
    participant Doc as MDX Documentation
    participant IframeSwitcher as IframeSwitcher Component
    participant Demo as Live Demo (exampleUrl)
    participant Code as Code View (codeUrl)

    User->>Doc: Load documentation page
    Doc->>IframeSwitcher: Render with demo URLs
    IframeSwitcher->>Demo: Load interactive demo
    Demo->>User: Display live example
    alt User clicks Code tab
        IframeSwitcher->>Code: Fetch code snippet
        Code->>User: Display code view
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Areas requiring attention:

  • Hook rename and API changes (backend-tools.mdx): Review useCopilotAction → useRenderToolCall rename, signature changes (removed available property), and updated render callback patterns to ensure consistency across all usages.
  • Agent naming consistency (generative-ui/agentic.mdx, shared-state/*.mdx): Verify that all agent name references use my_agent consistently and match with CopilotRuntime configuration guidance in Callouts.
  • IframeSwitcher component usage (multiple files): Confirm that all IframeSwitcher instances use correct prop signatures (id, exampleUrl, codeUrl, exampleLabel, codeLabel, height) and that URLs resolve correctly.
  • Navigation restructuring (meta.json files, next.config.mjs): Verify that all redirects and navigation paths are correctly updated and that deleted concept pages don't break cross-references elsewhere.
  • AgentState and StateDeps patterns (shared-state/in-app-agent-write.mdx): Review updated Python agent examples for correct AgentState typing, StateDeps usage, and tool definition patterns (add_search, run_searches).

Possibly related PRs

Suggested labels

preview

Suggested reviewers

  • mme
  • ataibarkai
  • ranst91

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Canonical partner docs (Pydantic AI)' clearly identifies the main change: canonicalizing partner documentation for Pydantic AI, which aligns with the extensive documentation restructuring and reorganization across multiple Pydantic AI docs files.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch tyler/cpk-5970-canonical-partner-docs-pydantic-ai

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.

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 0

🧹 Nitpick comments (1)
docs/content/docs/pydantic-ai/generative-ui/index.mdx (1)

32-32: Minor style improvement: use "will" instead of "going to".

Line 32 uses the phrase "what is going to be backing your generative UI." For certainty and clarity, consider rephrasing to "what will be backing your generative UI."

- To get started, you first need to decide what is going to be backing your generative UI. There are three main variants of Generative UI with CopilotKit.
+ To get started, you first need to decide what will be backing your generative UI. There are three main variants of Generative UI with CopilotKit.
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 09bb5c1 and 0a2af6e.

📒 Files selected for processing (6)
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx (2 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx (3 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx (3 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/meta.json (1 hunks)
  • docs/content/docs/pydantic-ai/meta.json (1 hunks)
🧰 Additional context used
🪛 LanguageTool
docs/content/docs/pydantic-ai/generative-ui/index.mdx

[style] ~32-~32: Use ‘will’ instead of ‘going to’ if the following action is certain.
Context: ... started, you first need to decide what is going to be backing your generative UI. There ar...

(GOING_TO_WILL)

🔇 Additional comments (16)
docs/content/docs/pydantic-ai/meta.json (1)

10-12: Navigation restructuring looks good.

The guides section has been reordered with custom-look-and-feel and the new frontend-actions page added in the expected positions. The changes align with the broader PR restructuring for the Generative UI documentation.

docs/content/docs/pydantic-ai/generative-ui/meta.json (1)

1-4: New subsection metadata is well-structured.

The new meta.json correctly defines the Generative UI subsection with all three pages (backend-tools, frontend-tools, agentic) that are being documented in this PR.

docs/content/docs/pydantic-ai/generative-ui/agentic.mdx (2)

7-8: Import updates for interactive demo components are appropriate.

The new imports for IframeSwitcher, Tabs, and Tab align with the shift to an iframe-based, tabbed interface for documentation examples.


10-17: IframeSwitcher integration replaces static video with interactive demo.

The new IframeSwitcher component at the top of the page provides an interactive demo and code viewer. The external URLs point to a CopilotKit feature viewer instance and should be verified for accessibility.

To confirm the external demo URLs are accessible and correctly resolve, please verify the following URLs work as expected:

  • https://feature-viewer.copilotkit.ai/langgraph/feature/agentic_generative_ui?sidebar=false&chatDefaultOpen=false
  • https://feature-viewer.copilotkit.ai/langgraph/feature/agentic_generative_ui?view=code&sidebar=false&codeLayout=tabs
docs/content/docs/pydantic-ai/generative-ui/index.mdx (2)

6-6: Icon imports from lucide-react are appropriate for the new Card-based layout.

The replacement of CTACards with a three-card layout using lucide-react icons improves visual consistency and aligns with the broader UI updates across the Generative UI documentation.


34-54: Card layout with correct hrefs maintains proper navigation structure.

The three-card layout with relative href paths (./backend-tools, ./frontend-tools, ./agentic) correctly references the co-located MDX pages. The col-span-2 class on the Agent State card appropriately spans it across two columns.

docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx (4)

6-8: Imports for frontend-tools page are consistent with other generative UI docs.

The imports for InstallSDKSnippet, IframeSwitcher, and Tabs align with the pattern established in backend-tools and agentic pages.


10-17: Interactive demo integration via IframeSwitcher follows established pattern.

The IframeSwitcher component provides an interactive example alongside code for the frontend tools feature. External URLs should be verified for accessibility.

To confirm the demo URLs are accessible and correctly resolve:

  • https://feature-viewer.copilotkit.ai/langgraph/feature/agentic_chat?sidebar=false&chatDefaultOpen=false
  • https://feature-viewer.copilotkit.ai/langgraph/feature/agentic_chat?view=code&sidebar=false&codeLayout=tabs

49-89: Frontend tool hook usage and implementation example are accurate.

The useFrontendTool hook is properly documented with parameters (name, description, parameters array, handler, render) that enable client-side tool execution. The example correctly demonstrates both the handler function and render component.


100-119: Agent setup for frontend tools is correctly documented.

The Python agent setup correctly indicates that frontend tools registered with useFrontendTool are automatically available through the AG-UI protocol, with no additional agent configuration needed.

docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx (6)

2-3: Title and icon updates reflect the backend-tools focus.

The title change to "Backend Tools" with the lucide/Server icon correctly positions this page within the generative UI documentation hierarchy.


7-9: New imports align with refactored documentation pattern.

The imports for IframeSwitcher, Tabs, and the new DefaultToolRendering snippet are consistent with the broader documentation restructuring to use interactive iframe-based examples.


11-18: Interactive demo component replaces static video.

The IframeSwitcher component provides a dynamic demo and code viewing experience. External URLs need verification for accessibility.

To confirm the demo URLs are accessible:

  • https://feature-viewer.copilotkit.ai/langgraph/feature/backend_tool_rendering?sidebar=false&chatDefaultOpen=false
  • https://feature-viewer.copilotkit.ai/langgraph/feature/backend_tool_rendering?view=code&sidebar=false&codeLayout=tabs

78-78: Hook rename from useCopilotAction to useRenderToolCall is correctly applied.

The useRenderToolCall hook is the new API for rendering tool calls, and it does not accept an "available" property, which aligns with the updated implementation shown in the code example.

Also applies to: 86-86


92-102: Updated hook signature matches the new useRenderToolCall API.

The render function now destructures {status, args} and removes any "available" property usage, which is consistent with the new useRenderToolCall API that doesn't accept "available" and instead relies on guarding the hook call to disable or hide tools. The conditional rendering logic correctly differentiates between pending and complete states.


126-128: DefaultToolRendering component is imported and used for default UI showcase.

The new DefaultToolRendering snippet is imported and rendered at the end of the page. Verify that this snippet file exists at the expected path and that the components prop is correctly passed from the MDX context.

Please verify:

  1. The snippet file exists at: docs/content/@/snippets/shared/guides/default-tool-rendering.mdx
  2. The components prop passed to DefaultToolRendering is available in the MDX rendering context (typically provided by the documentation framework)

@tylerslaton
tylerslaton force-pushed the tyler/cpk-5970-canonical-partner-docs-pydantic-ai branch from 34dc499 to 110d340 Compare November 27, 2025 00:14
@changesets-bot-copilotkit

Copy link
Copy Markdown

⏭️ Changeset Not Required

Latest commit: 110d340

No changes in this PR affected the @copilitkit/* packages. Merging this PR will not cause a version bump for any packages.

Changeset is not required for this PR.

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 0

🧹 Nitpick comments (5)
docs/content/docs/pydantic-ai/generative-ui/index.mdx (1)

32-32: Minor grammar improvement: change "going to be backing" to "will be backing".

The phrasing at line 32 can be tightened for better clarity and conciseness.

Apply this diff:

- To get started, you first need to decide what is going to be backing your generative UI. There are three main variants of Generative UI with CopilotKit.
+ To get started, you first need to decide what will be backing your generative UI. There are three main variants of Generative UI with CopilotKit.
docs/content/docs/pydantic-ai/agentic-chat-ui.mdx (2)

29-29: Fix article usage and grammar.

Two minor corrections needed in this line:

  • "a agentic" should be "an agentic" (article agreement)
  • Static analysis also flags other style improvements in nearby paragraphs

Apply this diff:

- If you've gone through the [getting started guide](/pydantic-ai/quickstart) **you already have a agentic chat UI setup**! Nothing else is needed
+ If you've gone through the [getting started guide](/pydantic-ai/quickstart) **you already have an agentic chat UI setup**! Nothing else is needed

26-26: Consider tightening style in nearby paragraphs.

The static analysis tool flags:

  1. Line 26: "variety of different components" → consider "multiple components" or "various components" for conciseness
  2. Line 34: "agent native applications" → should be hyphenated as "agent-native applications"

These are minor readability improvements and can be deferred if not a priority.

Also applies to: 34-34

docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx (1)

24-24: Fix redundant phrasing and verify link target.

Line 24 has two issues:

  1. Phrasing: "This can be utilized for to let" contains redundant "for to". Should be: "This can be used to let" or "This can be utilized to let".
  2. Link verification: The href /pydantic-ai/frontend-actions should be verified. If this page doesn't exist or is deprecated, consider updating it to reference relevant documentation.

Apply this diff for the phrasing:

- This can be utilized for to let [your agent control the UI](/pydantic-ai/frontend-actions), [generative UI](/pydantic-ai/generative-ui/frontend-tools), or for Human-in-the-loop interactions.
+ This can be used to let [your agent control the UI](/pydantic-ai/frontend-actions), [generative UI](/pydantic-ai/generative-ui/frontend-tools), or for Human-in-the-loop interactions.

Confirm that the link target /pydantic-ai/frontend-actions is correct and accessible, or update it if the page structure has changed.

docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx (1)

12-19: Dual demo pattern: IframeSwitcher plus preserved video creates redundancy.

The file introduces IframeSwitcher for an interactive demo (lines 12-19) but then preserves an inline video embed (lines 109-117) showing the same functionality. Consider whether both are necessary or if the interactive iframe demo is sufficient. This may create user confusion about which demo to reference.

Evaluate whether the standalone video at lines 109-117 is still needed given the interactive IframeSwitcher demo. If the iframe provides the same demonstration, consider removing the video or clearly distinguishing its purpose (e.g., if it shows a different use case or advanced scenario).

Also applies to: 109-117

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0a2af6e and 110d340.

📒 Files selected for processing (45)
  • docs/components/react/quickstart-dropdown.tsx (2 hunks)
  • docs/content/docs/adk/shared-state/in-app-agent-read.mdx (1 hunks)
  • docs/content/docs/agno/quickstart.mdx (7 hunks)
  • docs/content/docs/crewai-crews/shared-state/in-app-agent-read.mdx (1 hunks)
  • docs/content/docs/crewai-flows/shared-state/in-app-agent-read.mdx (1 hunks)
  • docs/content/docs/direct-to-llm/tutorials/ai-powered-textarea/step-2-setup-copilotkit.mdx (1 hunks)
  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx (1 hunks)
  • docs/content/docs/langgraph/coagent-troubleshooting/common-coagent-issues.mdx (5 hunks)
  • docs/content/docs/langgraph/persistence/loading-message-history.mdx (3 hunks)
  • docs/content/docs/langgraph/quickstart.mdx (1 hunks)
  • docs/content/docs/langgraph/shared-state/in-app-agent-read.mdx (3 hunks)
  • docs/content/docs/langgraph/shared-state/index.mdx (1 hunks)
  • docs/content/docs/mastra/quickstart.mdx (5 hunks)
  • docs/content/docs/microsoft-agent-framework/shared-state/in-app-agent-read.mdx (2 hunks)
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/concepts/agentic-copilots.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/concepts/meta.json (0 hunks)
  • docs/content/docs/pydantic-ai/concepts/pydantic-ai.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/concepts/state.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/concepts/terminology.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/frontend-actions.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx (6 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx (4 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx (3 hunks)
  • docs/content/docs/pydantic-ai/generative-ui/meta.json (1 hunks)
  • docs/content/docs/pydantic-ai/human-in-the-loop.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/human-in-the-loop/agent.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/human-in-the-loop/index.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/human-in-the-loop/meta.json (0 hunks)
  • docs/content/docs/pydantic-ai/index.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/meta.json (1 hunks)
  • docs/content/docs/pydantic-ai/multi-agent-flows.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/premium/frontend-actions.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/quickstart.mdx (1 hunks)
  • docs/content/docs/pydantic-ai/quickstart/meta.json (0 hunks)
  • docs/content/docs/pydantic-ai/quickstart/pydantic-ai.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-read.mdx (6 hunks)
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx (6 hunks)
  • docs/content/docs/pydantic-ai/shared-state/index.mdx (0 hunks)
  • docs/content/docs/pydantic-ai/shared-state/meta.json (1 hunks)
  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx (6 hunks)
  • docs/next.config.mjs (1 hunks)
  • docs/snippets/component-examples.mdx (1 hunks)
  • docs/snippets/integrations/pydantic-ai/run-and-connect.mdx (1 hunks)
💤 Files with no reviewable changes (13)
  • docs/content/docs/pydantic-ai/concepts/agentic-copilots.mdx
  • docs/content/docs/pydantic-ai/concepts/state.mdx
  • docs/content/docs/pydantic-ai/shared-state/index.mdx
  • docs/content/docs/pydantic-ai/frontend-actions.mdx
  • docs/content/docs/pydantic-ai/multi-agent-flows.mdx
  • docs/content/docs/pydantic-ai/quickstart/pydantic-ai.mdx
  • docs/content/docs/pydantic-ai/concepts/pydantic-ai.mdx
  • docs/content/docs/pydantic-ai/human-in-the-loop/meta.json
  • docs/content/docs/pydantic-ai/concepts/meta.json
  • docs/content/docs/pydantic-ai/quickstart/meta.json
  • docs/content/docs/pydantic-ai/human-in-the-loop/agent.mdx
  • docs/content/docs/pydantic-ai/human-in-the-loop/index.mdx
  • docs/content/docs/pydantic-ai/concepts/terminology.mdx
✅ Files skipped from review due to trivial changes (1)
  • docs/content/docs/direct-to-llm/tutorials/ai-powered-textarea/step-2-setup-copilotkit.mdx
🚧 Files skipped from review as they are similar to previous changes (19)
  • docs/content/docs/adk/shared-state/in-app-agent-read.mdx
  • docs/content/docs/pydantic-ai/shared-state/meta.json
  • docs/content/docs/pydantic-ai/generative-ui/meta.json
  • docs/content/docs/crewai-flows/shared-state/in-app-agent-read.mdx
  • docs/content/docs/langgraph/coagent-troubleshooting/common-coagent-issues.mdx
  • docs/content/docs/langgraph/shared-state/index.mdx
  • docs/content/docs/langgraph/persistence/loading-message-history.mdx
  • docs/content/docs/pydantic-ai/human-in-the-loop.mdx
  • docs/content/docs/pydantic-ai/premium/frontend-actions.mdx
  • docs/content/docs/mastra/quickstart.mdx
  • docs/next.config.mjs
  • docs/content/docs/pydantic-ai/quickstart.mdx
  • docs/content/docs/agno/quickstart.mdx
  • docs/content/docs/langgraph/shared-state/in-app-agent-read.mdx
  • docs/snippets/integrations/pydantic-ai/run-and-connect.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-read.mdx
  • docs/content/docs/pydantic-ai/meta.json
  • docs/content/docs/microsoft-agent-framework/shared-state/in-app-agent-read.mdx
  • docs/content/docs/langgraph/quickstart.mdx
🧰 Additional context used
📓 Path-based instructions (3)
**/*.{js,jsx,ts,tsx}

📄 CodeRabbit inference engine (.cursor/rules/development-workflow.mdc)

Use ESLint configuration from CopilotKit/utilities/eslint-config-custom for consistent linting across the monorepo

Files:

  • docs/components/react/quickstart-dropdown.tsx
docs/components/react/**/*.{ts,tsx}

📄 CodeRabbit inference engine (.cursor/rules/development-workflow.mdc)

Use React component examples from docs/components/react for documentation demonstrations

Files:

  • docs/components/react/quickstart-dropdown.tsx
**/*.{ts,tsx}

📄 CodeRabbit inference engine (.cursor/rules/frontend-development.mdc)

**/*.{ts,tsx}: Use TypeScript for better type safety in React component development
Implement proper error handling in React components
Use CopilotKit provided hooks (useCopilotChat, useCopilotAction, useCopilotReadable) and utilities in React components
Maintain consistent styling with Tailwind CSS in UI components
Implement responsive design in UI components
Use CopilotProvider at the root of the application to wrap all app components

**/*.{ts,tsx}: Use 'auto' mode (default) in CopilotChat suggestions prop to generate suggestions automatically at the start of chat and after every turn
Use 'manual' mode in CopilotChat suggestions prop only when you need full programmatic control via setSuggestions or generateSuggestions from useCopilotChat hook
Configure suggestions via useCopilotChatSuggestions hook to register configuration for auto-generation system

Files:

  • docs/components/react/quickstart-dropdown.tsx
🧠 Learnings (30)
📓 Common learnings
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/development-workflow.mdc:0-0
Timestamp: 2025-11-26T15:00:36.970Z
Learning: Applies to docs/components/react/**/*.{ts,tsx} : Use React component examples from docs/components/react for documentation demonstrations
📚 Learning: 2025-11-26T15:00:55.744Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/frontend-development.mdc:0-0
Timestamp: 2025-11-26T15:00:55.744Z
Learning: Applies to **/*.{ts,tsx} : Use CopilotKit provided hooks (useCopilotChat, useCopilotAction, useCopilotReadable) and utilities in React components

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/snippets/component-examples.mdx
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:32.085Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/suggestions-development.mdc:0-0
Timestamp: 2025-11-26T15:01:32.085Z
Learning: Applies to **/*{suggestions,Suggestions}*.{ts,tsx} : When working with suggestions in CopilotKit, load the Suggestions development guide

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx
📚 Learning: 2025-11-26T15:01:32.085Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/suggestions-development.mdc:0-0
Timestamp: 2025-11-26T15:01:32.085Z
Learning: Applies to **/*.{ts,tsx} : Use 'manual' mode in CopilotChat suggestions prop only when you need full programmatic control via setSuggestions or generateSuggestions from useCopilotChat hook

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:01:32.085Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/suggestions-development.mdc:0-0
Timestamp: 2025-11-26T15:01:32.085Z
Learning: Applies to **/*.{ts,tsx} : Configure suggestions via useCopilotChatSuggestions hook to register configuration for auto-generation system

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:01:32.085Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/suggestions-development.mdc:0-0
Timestamp: 2025-11-26T15:01:32.085Z
Learning: Applies to **/*.{ts,tsx} : Use 'auto' mode (default) in CopilotChat suggestions prop to generate suggestions automatically at the start of chat and after every turn

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:00:55.744Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/frontend-development.mdc:0-0
Timestamp: 2025-11-26T15:00:55.744Z
Learning: Applies to **/*.{ts,tsx} : Use CopilotProvider at the root of the application to wrap all app components

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/snippets/component-examples.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:22.336Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/copilotkit-architecture.mdc:0-0
Timestamp: 2025-11-26T15:00:22.336Z
Learning: React packages including react-core, react-textarea, and react-ui should be located in the CopilotKit/packages/ directory structure

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: Frontend applications should follow the pattern: Next.js app with CopilotProvider and CopilotChat component

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/snippets/component-examples.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:32.085Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/suggestions-development.mdc:0-0
Timestamp: 2025-11-26T15:01:32.085Z
Learning: Applies to **/*use-copilot-chat*.{ts,tsx} : Use effect dependencies properly to handle timing between configuration registration and suggestion generation without requiring timeouts

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:00:36.970Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/development-workflow.mdc:0-0
Timestamp: 2025-11-26T15:00:36.970Z
Learning: Follow established code patterns in existing CopilotKit code when adding new features

Applied to files:

  • docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Applies to **/agent-py/**/*.py : Use CrewAI integration from copilotkit.crewai for CrewAI-based agents

Applied to files:

  • docs/content/docs/pydantic-ai/index.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For developing Python agents, use the sdk-python package and reference copilotkit/agent.py for the main agent class

Applied to files:

  • docs/content/docs/pydantic-ai/index.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:22.337Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/copilotkit-architecture.mdc:0-0
Timestamp: 2025-11-26T15:00:22.337Z
Learning: Python SDK should include integrations for CrewAI agents, LangGraph, and OpenAI in the sdk-python/copilotkit/ directory structure

Applied to files:

  • docs/content/docs/pydantic-ai/index.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Applies to **/agent-py/**/*.py : Import agent components from the copilotkit package in Python agents

Applied to files:

  • docs/content/docs/pydantic-ai/index.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For building a simple Copilot, start with the copilot-chat-with-your-data example, use react-core for basic integration, and add react-ui for pre-built components

Applied to files:

  • docs/content/docs/pydantic-ai/index.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/snippets/component-examples.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Applies to **/agent-js/**/tsconfig.json : Configure TypeScript with proper types for JavaScript agents

Applied to files:

  • docs/content/docs/crewai-crews/shared-state/in-app-agent-read.mdx
📚 Learning: 2025-11-26T15:00:36.970Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/development-workflow.mdc:0-0
Timestamp: 2025-11-26T15:00:36.970Z
Learning: Applies to docs/components/react/**/*.{ts,tsx} : Use React component examples from docs/components/react for documentation demonstrations

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/snippets/component-examples.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Start with a simple agent template when developing new agents

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:22.337Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/copilotkit-architecture.mdc:0-0
Timestamp: 2025-11-26T15:00:22.337Z
Learning: Example projects should follow the pattern of having agent/ or agent-py/ for backend implementation, ui/ for Next.js frontend, and README.md for documentation

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: Backend agents should implement the pattern: Python or Node.js agent with actions and state management

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For customizing UI components, browse the registry for reusable components, check docs/components/react for documentation, and use react-ui for pre-built components

Applied to files:

  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
  • docs/snippets/component-examples.mdx
  • docs/content/docs/pydantic-ai/generative-ui/index.mdx
📚 Learning: 2025-11-26T15:00:44.788Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/examples-and-demos.mdc:0-0
Timestamp: 2025-11-26T15:00:44.788Z
Learning: Applies to examples/*/ui/ : Structure frontend implementation in a `ui/` directory containing Next.js application within example projects

Applied to files:

  • docs/content/docs/pydantic-ai/agentic-chat-ui.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For developing JavaScript agents, use the sdk-js package from CopilotKit/packages/sdk-js and reference coagents-starter/agent-js for examples

Applied to files:

  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Applies to **/agent-js/**/package.json : Install copilotkit/sdk-js package for JavaScript agents

Applied to files:

  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:44.788Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/examples-and-demos.mdc:0-0
Timestamp: 2025-11-26T15:00:44.788Z
Learning: Run examples by navigating to the example directory, installing dependencies with `npm install` or `pip install -r requirements.txt`, and executing `npm run dev` for the frontend and `npm run agent` or `python agent.py` for the agent

Applied to files:

  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For integrating with CrewAI, use coagents-starter-crewai-crews for crews and coagents-starter-crewai-flows for flows

Applied to files:

  • docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx
  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:01:08.236Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/quick-reference.mdc:0-0
Timestamp: 2025-11-26T15:01:08.236Z
Learning: For creating multi-agent systems, check coagents-starter for basic setup, use coagents-routing for routing patterns, and see coagents-shared-state for state management

Applied to files:

  • docs/content/docs/pydantic-ai/generative-ui/agentic.mdx
  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:55.744Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/frontend-development.mdc:0-0
Timestamp: 2025-11-26T15:00:55.744Z
Learning: Test React components with different agent configurations

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
📚 Learning: 2025-11-26T15:00:13.211Z
Learnt from: CR
Repo: CopilotKit/CopilotKit PR: 0
File: .cursor/rules/agent-development.mdc:0-0
Timestamp: 2025-11-26T15:00:13.211Z
Learning: Applies to **/agent/**/main.py : Define agent main entry point as agent/main.py or agent/index.js for single agent pattern

Applied to files:

  • docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx
🪛 LanguageTool
docs/content/docs/pydantic-ai/agentic-chat-ui.mdx

[style] ~26-~26: Consider using a more concise synonym.
Context: ...ct with your agent. CopilotKit provides a variety of different components to choose from, ea...

(A_VARIETY_OF)


[style] ~34-~34: Consider using a more concise synonym.
Context: ...should I use this? CopilotKit provides a variety of different batteries-included components...

(A_VARIETY_OF)


[grammar] ~34-~34: Use a hyphen to join words.
Context: ...omponents to choose from to create agent native applications. They scale from sim...

(QB_NEW_EN_HYPHEN)

docs/content/docs/pydantic-ai/generative-ui/index.mdx

[style] ~32-~32: Use ‘will’ instead of ‘going to’ if the following action is certain.
Context: ... started, you first need to decide what is going to be backing your generative UI. There ar...

(GOING_TO_WILL)

🔇 Additional comments (24)
docs/components/react/quickstart-dropdown.tsx (1)

22-22: Verify the updated Pydantic AI quickstart URL path exists.

The URL has been simplified from /pydantic-ai/quickstart/pydantic-ai to /pydantic-ai/quickstart, which aligns with the pattern used by other frameworks (e.g., /langgraph/quickstart, /mastra/quickstart) and matches the PR objective to canonicalize partner documentation. However, confirm that the destination page exists at this new path to prevent broken navigation links.

docs/content/docs/direct-to-llm/tutorials/ai-todo-app/step-2-setup-copilotkit.mdx (1)

86-86: JSX comment syntax is now correct.

Using block comment syntax {/* [!code highlight] */} instead of line comments in JSX code blocks is the correct approach for code highlighting directives in MDX.

docs/snippets/component-examples.mdx (1)

1-1: Good: top-level Tabs import for reusability.

Making Tabs and Tab available at the module level enables consistent, DRY usage across all documents importing this snippet.

docs/content/docs/crewai-crews/shared-state/in-app-agent-read.mdx (1)

75-75: JSX comment syntax is correct.

Block comment syntax {/* [!code highlight] */} is the proper approach for code highlighting directives in JSX.

docs/content/docs/pydantic-ai/generative-ui/index.mdx (1)

34-54: Well-structured card layout with clear navigation.

The three-card design (Backend Tools, Frontend Tools, Agent State) provides a clear entry point for users exploring generative UI options. Icons enhance visual scanning, and the hrefs appropriately guide users to relevant documentation.

docs/content/docs/pydantic-ai/index.mdx (1)

16-16: Navigation path simplified for quickstart.

The path has been consolidated from /pydantic-ai/quickstart/pydantic-ai to /pydantic-ai/quickstart, which aligns with navigation restructuring across the PR.

Please confirm that docs/next.config.mjs includes a permanent redirect from the old path (/pydantic-ai/quickstart/pydantic-ai) to the new path (/pydantic-ai/quickstart) to maintain backward compatibility and avoid broken links.

docs/content/docs/pydantic-ai/agentic-chat-ui.mdx (1)

13-22: Interactive demo improves user engagement.

Replacing the static video with an interactive IframeSwitcher component provides users with both a live demo and accompanying code, which is more valuable than a video-only demonstration.

Verify that the IframeSwitcher component is properly exported from @/components/content. The exampleUrl and codeUrl appear to reference external feature-viewer URLs; confirm these are accessible and stable.

docs/content/docs/pydantic-ai/generative-ui/frontend-tools.mdx (2)

11-18: Well-structured interactive demo.

The IframeSwitcher component provides both a live demo and code view, which is excellent for helping users understand frontend tools in practice.


36-135: Comprehensive implementation guide.

The step-by-step implementation with code examples covering useFrontendTool hook, agent setup, and integration patterns is thorough and well-organized. The tabs for language selection and the final video demonstration are helpful additions.

docs/content/docs/pydantic-ai/shared-state/predictive-state-updates.mdx (2)

12-21: Interactive demo improves clarity.

Replacing the static video with an interactive IframeSwitcher component lets users explore the feature in action while viewing corresponding code, providing a better learning experience than video alone.


158-158: Excellent: standardized agent naming and added critical warning.

Three improvements here:

  1. Agent name standardized to my_agent throughout the examples (lines 158, 162) for consistency with quickstart guidance.
  2. Added "MUST match the agent name in CopilotRuntime" inline comments (lines 158, 162).
  3. Added warning Callout (lines 196-198) highlighting the critical requirement for exact name matching.

This combination of standardized naming, inline guidance, and prominent warnings significantly reduces the likelihood of configuration errors when users implement this pattern.

Also applies to: 162-162, 196-198

docs/content/docs/pydantic-ai/generative-ui/agentic.mdx (6)

141-141: Agent name consistency and runtime configuration matching is well-documented.

The use of "my_agent" is consistent across useCoAgentStateRender and useCoAgent hooks, and the Callout warnings at lines 159-161 and 207-209 appropriately alert users to the requirement that this name must match CopilotRuntime configuration. Good attention to this critical matching requirement.

Also applies to: 186-186


42-115: I'll help you verify the imports and API signatures mentioned in the review comment. Let me search the pydantic_ai codebase to confirm these modules and their APIs exist.
<function_calls>

#!/bin/bash

Search for ag_ui module and related imports in the repository

find . -type f -name "*.py" | head -20


</function_calls>
<function_calls>

#!/bin/bash

Look for ag_ui related files and directories

fd -type f -name "ag_ui" 2>/dev/null || echo "No ag_ui files found with fd"


</function_calls>
<function_calls>

#!/bin/bash

Search for StateDeps in the codebase

rg -n "StateDeps" --type py 2>/dev/null | head -20


</function_calls>
<function_calls>

#!/bin/bash

Search for StateSnapshotEvent in the codebase

rg -n "StateSnapshotEvent" --type py 2>/dev/null | head -20


</function_calls>
<function_calls>

#!/bin/bash

Search for to_ag_ui method

rg -n "to_ag_ui" --type py 2>/dev/null | head -20


</function_calls>
<function_calls>

#!/bin/bash

List the main directory structure to understand the repo layout

ls -la


</function_calls>
<function_calls>

#!/bin/bash

Check pydantic_ai module structure

find . -type d -name "pydantic_ai" -o -type d -name "pydantic-ai" 2>/dev/null | head -5


</function_calls>
<function_calls>

#!/bin/bash

Look for Python source files in common locations

ls -la python/ 2>/dev/null || ls -la pydantic_ai/ 2>/dev/null || ls -la src/ 2>/dev/null || echo "Checking root Python files..."
find . -maxdepth 3 -name "init.py" -type f | head -10


</function_calls>
<function_calls>

pydantic_ai StateDeps ag_ui StateSnapshotEvent EventType

</function_calls>


64-89: Tool return types are correct per Pydantic AI AG-UI documentation.

The StateSnapshotEvent return type and EventType.STATE_SNAPSHOT constant are used correctly. This matches the documented Pydantic AI AG-UI pattern for tools that send state snapshots: StateSnapshotEvent(type=EventType.STATE_SNAPSHOT, snapshot=state).


6-9: Based on my investigation:

IframeSwitcher: The web search confirmed this is not a Fumadocs library component. Since it's imported from @/components/content (a path alias), it's a custom/local component in this project. Without codebase access, I cannot verify if it's properly exported from that path.

Tabs import: While fumadocs-ui/components/tabs is a legitimate Fumadocs component library, the original concern about whether it's actually used in the file remains unresolved without seeing the full file content.

The repository cloning failures prevent me from accessing the codebase to complete this verification. The concerns raised in the original review comment are reasonable and warrant investigation, but I cannot definitively confirm or refute them without direct access to:

  1. The full agentic.mdx file to search for all Tabs/Tab references
  2. The @/components/content module to verify IframeSwitcher export


47-49: Imports are valid and available in current Pydantic AI version.

Both imports are documented and available in the official Pydantic AI SDK:

  • StateDeps is correctly imported from pydantic_ai.ag_ui
  • StateSnapshotEvent and EventType are correctly imported from ag_ui.core

These are part of Pydantic AI's AG-UI integration module and are properly documented in the official API reference.


11-18: Both IframeSwitcher URLs are valid and accessible.

Verification confirms that both feature-viewer endpoints are live, functional CopilotKit demo pages displaying the Agentic Generative UI interactive demo and corresponding code examples with the specified query parameters working as intended. No URL accessibility issues detected.

docs/content/docs/pydantic-ai/shared-state/in-app-agent-write.mdx (3)

80-80: Agent naming and runtime configuration matching is consistent.

The file maintains consistent use of "my_agent" across both code examples (lines 104, 158) and includes appropriate Callout warnings at lines 128-130 about matching CopilotRuntime configuration. This follows the same pattern as agentic.mdx and properly emphasizes this critical requirement.

Also applies to: 104-104, 158-158


43-85: I'll help you verify the concerns in this review comment. Let me start by checking the Pydantic AI codebase to confirm the validity of the @agent.instructions() decorator API and the dedent import.
<function_calls>


#!/bin/bash

Search for the @agent.instructions decorator definition in pydantic_ai

rg -n "instructions" --type python -C 3 | head -100


</function_calls>
<function_calls>

Pydantic AI @agent.instructions decorator API documentation

</function_calls>


51-77: All patterns verified as correct.

The AgentState structure, StateDeps[AgentState] configuration, and @agent.instructions() decorator pattern are all correct per Pydantic AI documentation. The ctx.deps.state.language access pattern in the RunContext[StateDeps[AgentState]] context is the proper way to retrieve state within instruction methods.

docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx (4)

121-123: It appears there's a repository identification issue. The file path references docs/content/docs/pydantic-ai/generative-ui/backend-tools.mdx, which suggests this is from the pydantic-ai project, but the system attempted to clone a different repository (CopilotKit/CopilotKit).

Could you clarify which repository contains this file? Is it:

  • pydantic-dev/pydantic-ai, or
  • A different organization/project?

Once you confirm the correct repository URL or name, I can proceed with the verification.


7-10: Unfortunately, I'm unable to clone the CopilotKit/CopilotKit repository to verify the file existence and exports. This appears to be a temporary infrastructure limitation in the sandbox environment.

The DefaultToolRendering component import path cannot be verified at this time.

The review comment's concern about verifying that the DefaultToolRendering component is properly exported from @/snippets/shared/guides/default-tool-rendering.mdx (line 9) remains valid but requires manual verification or successful repository access. You should:

  1. Confirm the file exists at the expected path in the repository
  2. Verify that DefaultToolRendering is exported from that MDX file
  3. Ensure the @ alias correctly resolves to the snippets directory path

73-73: Verification inconclusive—hook exists but official documentation is incomplete.

The web search confirms that useRenderToolCall is a real hook in @copilotkit/react-core that replaces the deprecated useCopilotAction. However, the claim in the review comment appears partially contradicted:

Key findings:

  • ✓ Hook rename (useCopilotActionuseRenderToolCall) is confirmed
  • ✓ Hook exposes status and args fields
  • ✗ The review claims the hook "removes the available property," but the first web search result explicitly lists available (boolean) as a field exposed by useRenderToolCall
  • ? The exact callback parameter structure ({status, args}) cannot be definitively verified due to broken official documentation

Additional context: GitHub issue #2625 in the CopilotKit repository notes that documentation for useRenderToolCall and related hooks has broken images and incomplete coverage, making it difficult to verify the exact API surface without access to the source code.

Since the repository cannot be cloned and official docs are acknowledged as broken, manual verification of the exact hook implementation is required to confirm whether available was actually removed or if the review comment mischaracterizes the API.


81-99: Based on my verification through multiple web searches, I have gathered sufficient information about the useRenderToolCall render callback parameter structure. Here is my final output:


Render callback parameter structure {status, args} is correct and properly used.

Verification confirms:

  • {status, args} is the correct destructuring pattern for the render callback parameters in useRenderToolCall
  • status receives string values including "complete" (valid for checking against "complete")
  • args contains the tool input parameters and correctly exposes properties like args.location
  • The conditional rendering logic is correct: status !== "complete" shows the loading state, and status === "complete" shows the completion state

No issues found with the parameter structure or conditional logic.

@brandonmcconnell
brandonmcconnell restored the tyler/cpk-5970-canonical-partner-docs-pydantic-ai branch November 27, 2025 00:57
@coderabbitai coderabbitai Bot mentioned this pull request Dec 13, 2025
2 tasks
tylerslaton added a commit that referenced this pull request Feb 18, 2026
Signed-off-by: Tyler Slaton <tyler@copilotkit.ai>
Co-authored-by: Tyler Slaton <tyler@copilotkit.ai>
@jpr5
jpr5 deleted the tyler/cpk-5970-canonical-partner-docs-pydantic-ai branch March 6, 2026 17:54
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