Skip to content
This repository was archived by the owner on Nov 10, 2025. It is now read-only.

Add Couchbase as a tool#264

Merged
lucasgomide merged 20 commits intocrewAIInc:mainfrom
couchbaselabs:main
Jul 8, 2025
Merged

Add Couchbase as a tool#264
lucasgomide merged 20 commits intocrewAIInc:mainfrom
couchbaselabs:main

Conversation

@capemox
Copy link
Contributor

@capemox capemox commented Apr 11, 2025

This PR adds Couchbase as a tool to perform semantic search over docs in a Couchbase cluster. Have also added tests and a readme. Have also added couchbase as an optional dependency.

capemox and others added 4 commits April 10, 2025 15:17
- Wrote a README to setup the tool.
- Wrote test cases.
- Added Couchbase as an optional dependency in the project.
@lucasgomide lucasgomide self-requested a review April 11, 2025 13:01
@capemox
Copy link
Contributor Author

capemox commented Apr 16, 2025

@lucasgomide this PR is ready for review!

@lucasgomide
Copy link
Contributor

@capemox Hey! I started reviewing yesterday, but the setup is a bit extensive, so it’s taking me a bit longer to get everything ready.

@capemox
Copy link
Contributor Author

capemox commented Apr 17, 2025

@lucasgomide Please let me know if I can help in any way, would be happy to help

@lucasgomide
Copy link
Contributor

@capemox Sorry for the delay I haven’t had time to review it yet, but it’s on my radar.

@deniswsrosa
Copy link

@capemox Sorry for the delay I haven’t had time to review it yet, but it’s on my radar.

tks for the update!

@capemox
Copy link
Contributor Author

capemox commented Apr 23, 2025

@lucasgomide no worries!

@lucasgomide
Copy link
Contributor

@capemox could you share a video executing this tool? I believe would be better for reviewing

@capemox
Copy link
Contributor Author

capemox commented Apr 24, 2025

@lucasgomide sure. I'll send over a video of how you can set up your cluster, credentials, etc. and use the couchbase SDK to create the tool, and what the output looks like. Is that alright?

@lucasgomide
Copy link
Contributor

A video using and testing the tool is enough

@capemox
Copy link
Contributor Author

capemox commented Apr 28, 2025

@lucasgomide sorry for the late response! Here's a loom where I'm calling the tool.

@capemox
Copy link
Contributor Author

capemox commented May 5, 2025

@lucasgomide just a reminder that the video and PR is ready

Copy link
Contributor

@lucasgomide lucasgomide left a comment

Choose a reason for hiding this comment

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

Hey @capemox! Welcome, and thanks for your collaboration!

I’ve reviewed your work and watched the Loom video. Regarding the video, I have a couple of points:
1. Would you mind recording another one using an Agent, Tasks, and Crew? I’d love to see that setup in action.
2. You’ve assigned several variables from the OS environment/ is that all really necessary? In most cases, having the environment variable defined once should be enough

@capemox
Copy link
Contributor Author

capemox commented May 7, 2025

Hi @lucasgomide, thanks for the reviews! I'll update the code, and I'll send an updated loom video.

- Removed unnecessary ImportError for missing 'couchbase' package.
- Changed response format from a concatenated string to a JSON array for search results.
- Updated error handling to return error messages instead of raising exceptions in certain cases.
- Adjusted tests to reflect changes in response format and error handling.
@capemox
Copy link
Contributor Author

capemox commented May 8, 2025

@lucasgomide here is the updated loom video

Copy link
Contributor

@lucasgomide lucasgomide left a comment

Choose a reason for hiding this comment

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

Great work!

@lucasgomide
Copy link
Contributor

Would you mind sync with main again?

capemox and others added 2 commits May 8, 2025 17:56
- Changed pydantic version from 2.6.1 to 2.10.6 in both pyproject.toml and uv.lock.
- Updated crewai-tools version from 0.42.2 to 0.42.3 in uv.lock.
- Adjusted pydantic-core version from 2.33.1 to 2.27.2 in uv.lock, reflecting the new pydantic version.
@capemox
Copy link
Contributor Author

capemox commented May 8, 2025

@lucasgomide please have a look now!

@capemox
Copy link
Contributor Author

capemox commented May 9, 2025

Hi @lucasgomide, sorry about the delay. I've resolved the pydantic version issue.

@lorenzejay
Copy link
Contributor

@capemox can you resolve conflicts?

@capemox
Copy link
Contributor Author

capemox commented May 14, 2025

@lorenzejay I've resolved the conflicts!

@capemox
Copy link
Contributor Author

capemox commented May 20, 2025

Hi @lorenzejay all conflicts are resolved now

@deniswsrosa
Copy link

Any updates on this one?

@capemox
Copy link
Contributor Author

capemox commented May 26, 2025

Hi @lorenzejay @lucasgomide, please have a look at this PR, all conflicts are resolved now

@capemox
Copy link
Contributor Author

capemox commented Jun 5, 2025

Hi @lucasgomide, these tests run when run locally, but some fail here. What do you suggest I do?

@AayushTyagi1
Copy link
Contributor

@lucasgomide
Approval is required with write access. Can you please check?

@AayushTyagi1
Copy link
Contributor

@lucasgomide
Can you again approve the PR?

@lucasgomide
Copy link
Contributor

@lucasgomide
Can you again approve the PR?

i will review again today later

@lucasgomide lucasgomide merged commit 55b59ef into crewAIInc:main Jul 8, 2025
4 checks passed
mplachta pushed a commit to mplachta/crewAI-tools that referenced this pull request Aug 27, 2025
* - Added CouchbaseFTSVectorStore as a CrewAI tool.
- Wrote a README to setup the tool.
- Wrote test cases.
- Added Couchbase as an optional dependency in the project.

* Fixed naming in some places. Added docstrings. Added instructions on how to create a vector search index.

* Fixed pyproject.toml

* error handling and response format

- Removed unnecessary ImportError for missing 'couchbase' package.
- Changed response format from a concatenated string to a JSON array for search results.
- Updated error handling to return error messages instead of raising exceptions in certain cases.
- Adjusted tests to reflect changes in response format and error handling.

* Update dependencies in pyproject.toml and uv.lock

- Changed pydantic version from 2.6.1 to 2.10.6 in both pyproject.toml and uv.lock.
- Updated crewai-tools version from 0.42.2 to 0.42.3 in uv.lock.
- Adjusted pydantic-core version from 2.33.1 to 2.27.2 in uv.lock, reflecting the new pydantic version.

* Removed restrictive pydantic version and updated uv.lock

* synced lockfile

* regenerated lockfile

* updated lockfile

* regenerated lockfile

* Update tool specifications for

* Fix test cases

---------

Co-authored-by: AayushTyagi1 <tyagiaayush5@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants