Skip to content

Added support for You.com's Web search & Web contents#5921

Open
kevmalek wants to merge 1 commit intoFlowiseAI:mainfrom
kevmalek:feature/add-youdotcom-tools
Open

Added support for You.com's Web search & Web contents#5921
kevmalek wants to merge 1 commit intoFlowiseAI:mainfrom
kevmalek:feature/add-youdotcom-tools

Conversation

@kevmalek
Copy link

@kevmalek kevmalek commented Mar 6, 2026

Summary

Adds two new You.com tool nodes to Flowise, YouDotComSearch and YouDotComWebContents, along with a shared YouDotComApi credential, enabling real-time web search and URL content extraction within Flowise agent flows.

Motivation

You.com's Search API provides structured, AI-optimized web and news results ideal for RAG and agentic workflows. These nodes make it easy for Flowise users to give their agents live web access without writing custom integrations.

Changes

  • packages/components/credentials/YouDotComApi.credential.ts — new credential type for You.com API keys
  • packages/components/nodes/tools/YouDotComSearch/YouDotComSearch.ts — new tool node wrapping youSearch from @youdotcom-oss/langchain
  • packages/components/nodes/tools/YouDotComSearch/Youcom_logo.jpg — node icon
  • packages/components/nodes/tools/YouDotComWebContents/YouDotComWebContents.ts — new tool node for URL content extraction
  • packages/components/nodes/tools/YouDotComWebContents/Youcom_logo.jpg — node icon
  • packages/components/package.json — added @youdotcom-oss/langchain dependency

Implementation Details

  • Both nodes use @youdotcom-oss/langchain (youSearch and youContents) which return DynamicStructuredTool instances compatible with any LangChain agent. Langchain.js is no longer accepting new integrations into its monorepo, hence the additional dependency.
  • Search and content config (API key, count, freshness, livecrawl, country etc.) are passed at node initialization as defaults; the query / urls inputs are supplied at runtime by the LLM agent

…he ability to fetch the latest news and Web contents, giving an agent the ability to fetch a web page in either markdown or html form quickly
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances Flowise's agent capabilities by integrating You.com's web search and content extraction services. It provides users with direct access to real-time web data, allowing for more dynamic and informed agentic workflows without the need for custom integrations. The changes introduce dedicated nodes and a shared credential for seamless setup and usage.

Highlights

  • New You.com Credential: A new credential type, YouDotComApi, has been introduced to securely store You.com API keys, enabling authentication for the new You.com tools.
  • You.com Search Tool: A new tool node, You.com Search, has been added, allowing agents to perform real-time web searches via You.com. It supports various parameters like result count, freshness, country filtering, safe search, and live crawling.
  • You.com Web Contents Tool: A new tool node, You.com Web Contents, has been implemented to extract full page content from URLs. It supports output in Markdown, HTML, or metadata formats and includes a configurable crawl timeout.
  • New Dependency: The @youdotcom-oss/langchain library has been added as a dependency to facilitate the integration of You.com's search and content extraction functionalities.
Changelog
  • packages/components/credentials/YouDotComApi.credential.ts
    • Added a new credential type, YouDotComApi, for managing You.com API keys.
  • packages/components/nodes/tools/YouDotComSearch/YouDotComSearch.ts
    • Implemented a new tool node named You.com Search.
    • Configured the search tool with options for result count, freshness, country, safe search, live crawl, and live crawl format.
    • Integrated with @youdotcom-oss/langchain's youSearch function.
  • packages/components/nodes/tools/YouDotComWebContents/YouDotComWebContents.ts
    • Created a new tool node named You.com Web Contents.
    • Provided options for output formats (Markdown, HTML, Metadata) and crawl timeout.
    • Utilized @youdotcom-oss/langchain's youContents function for content extraction.
  • packages/components/package.json
    • Added @youdotcom-oss/langchain version 1.1.0 to the dependencies.
Activity
  • No human activity has been recorded on this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@kevmalek
Copy link
Author

kevmalek commented Mar 6, 2026

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces support for You.com's search and web content extraction tools. The changes include new credential and tool nodes, and a new dependency. The implementation is well-structured. I've provided one suggestion to improve the maintainability of the code by simplifying how input parameters are handled.

Comment on lines +147 to +159
const count = nodeData.inputs?.count as number
const freshness = nodeData.inputs?.freshness as string
const country = nodeData.inputs?.country as string
const safesearch = nodeData.inputs?.safesearch as string
const livecrawl = nodeData.inputs?.livecrawl as string
const livecrawl_formats = nodeData.inputs?.livecrawl_formats as string

if (count) config.count = count
if (freshness) config.freshness = freshness
if (country) config.country = country
if (safesearch) config.safesearch = safesearch
if (livecrawl) config.livecrawl = livecrawl
if (livecrawl_formats) config.livecrawl_formats = livecrawl_formats
Copy link
Contributor

Choose a reason for hiding this comment

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

medium

The logic for building the config object can be made more concise and maintainable. Instead of manually handling each input parameter, you can iterate through the this.inputs array. This will automatically handle any future additions or removals of input parameters, reducing the chance of errors.

Suggested change
const count = nodeData.inputs?.count as number
const freshness = nodeData.inputs?.freshness as string
const country = nodeData.inputs?.country as string
const safesearch = nodeData.inputs?.safesearch as string
const livecrawl = nodeData.inputs?.livecrawl as string
const livecrawl_formats = nodeData.inputs?.livecrawl_formats as string
if (count) config.count = count
if (freshness) config.freshness = freshness
if (country) config.country = country
if (safesearch) config.safesearch = safesearch
if (livecrawl) config.livecrawl = livecrawl
if (livecrawl_formats) config.livecrawl_formats = livecrawl_formats
const inputs = nodeData.inputs ?? {}
for (const input of this.inputs) {
if (inputs[input.name]) {
config[input.name] = inputs[input.name]
}
}

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces new integrations for You.com services, adding a dedicated credential type for You.com API keys. It includes two new tools: 'You.com Search' for real-time web searches, offering parameters such as result count, freshness, country filtering, safe search levels, and live crawling options; and 'You.com Web Contents' for extracting full page content from URLs, with configurable output formats (Markdown, HTML, Metadata) and crawl timeout. To facilitate these integrations, the @youdotcom-oss/langchain dependency has been added to the project.

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