Skip to content

Conversation

@sidneyswift
Copy link
Collaborator

Summary

  • Add API endpoints for artist connector management (GET, POST authorize, DELETE, POST complete)
  • Add callback URL handling for artist-connectors OAuth flow
  • Enable TikTok in Tool Router with artist-specific connections
  • Wire up artistId in chat tool setup for per-artist Composio connections

Stories Implemented

  • US-003: GET /api/artist-connectors endpoint
  • US-004: POST /api/artist-connectors/authorize endpoint
  • US-005: DELETE /api/artist-connectors endpoint
  • US-006: Add artist-connectors callback URL destination
  • US-007: Add TikTok to enabled toolkits
  • US-008: Modify createSession to accept connectedAccounts
  • US-009: Wire up artistId in chat tool setup
  • US-014: POST /api/artist-connectors/complete endpoint

Test plan

  • Connect TikTok for artist via Artist Settings > Connections
  • Send chat message "What are my TikTok stats?" with artist selected
  • Verify AI uses TikTok tools with artist's connection
  • Switch to different artist without TikTok and verify appropriate response

🤖 Generated with Claude Code

sidneyswift and others added 5 commits January 28, 2026 21:23
- Add useArtistConnectors hook for managing artist-specific connectors (TikTok)
- Follows same patterns as existing useConnectors hook
- Supports fetch, authorize, disconnect functions with Bearer token auth
- Uses NEW_API_BASE_URL for API calls

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add @radix-ui/react-tabs dependency
- Create components/ui/tabs.tsx following shadcn pattern
- Refactor Settings.tsx to use tabs for UPDATE mode
- Add General and Connections tabs with full accessibility
- Create ConnectionsTab placeholder component
- Preserve existing settings functionality under General tab
- CREATE mode shows original form without tabs

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Implement ConnectionsTab with useArtistConnectors hook integration
- Add YouTubeCard wrapper for existing StandaloneYoutubeComponent
- Add TikTokCard component with connect/disconnect functionality
- Show loading state with skeletons while fetching connectors
- Display YouTube and TikTok connector cards in a grid layout

Co-Authored-By: Claude Opus 4.5 <[email protected]>
- Add connecting state with spinner
- Add dropdown menu with Reconnect and Disconnect options
- Add confirmation dialog before disconnecting
- Update props to use Promise return types for async operations
- Follow ConnectorConnectedMenu and DeleteFileDialog patterns

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add callback handling for artist TikTok OAuth flow:
- Add complete() function to useArtistConnectors hook
- Create useArtistConnectorCallback hook to detect callback params
- Create ArtistConnectorSuccessBanner component for success toast
- Integrate callback handler in Chat component

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@vercel
Copy link
Contributor

vercel bot commented Jan 29, 2026

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

Project Deployment Actions Updated (UTC)
recoup-chat Ready Ready Preview Jan 31, 2026 10:47pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 29, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

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.

  • 🔍 Trigger a full review
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/artist-composio-connections

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

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 33adfe9f88

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Comment on lines 62 to 63
// Clear URL params after handling
window.history.replaceState({}, "", "/chat");

Choose a reason for hiding this comment

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

P2 Badge Preserve roomId when clearing OAuth query params

The OAuth callback handler replaces the URL with a hardcoded /chat, which strips the current roomId. In this app the chat route is /chat/[roomId], so after a successful connection the browser URL becomes invalid and a refresh/share will 404 or lose the active room context. Use the current pathname (e.g., window.location.pathname) or a router replace that only removes the query string so the roomId is preserved.

Useful? React with 👍 / 👎.

- Remove complete() function from useArtistConnectors hook
- Simplify useArtistConnectorCallback - no API call needed
- Composio stores connections automatically on OAuth callback
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.

1 participant