Redpanda Connect Component Search
Help users discover the right Redpanda Connect components for their streaming pipeline needs.
Objective
Find and recommend the most relevant components that match the user's natural language query.
Provide enough information for users to understand what each component does, how to configure it, and why it matches their needs.
Prerequisites
This skill requires: rpk, rpk connect, python3.
See the SETUP for installation instructions.
Component Categories
Redpanda Connect has 8 types of components:
- inputs - Read data from sources (Kafka, HTTP, files, databases, etc.)
- outputs - Write data to destinations (Kafka, S3, databases, etc.)
- processors - Transform, filter, or enrich messages (mapping, filtering, etc.)
- caches - Store data for lookups (Redis, in-memory, etc.)
- rate-limits - Control throughput (local, Redis-based, etc.)
- buffers - Queue messages between pipeline stages
- metrics - Export metrics (Prometheus, CloudWatch, etc.)
- tracers - Export traces (Jaeger, OTLP, etc.)
Tools
Component Discovery
Lists all available components in a category using rpk.
# Usage:
rpk connect list <category>
# Examples:
rpk connect list inputs
rpk connect list outputs
rpk connect list processors
- Categories: inputs, outputs, processors, caches, rate-limits, buffers, metrics, tracers
- Returns list of all component names in that category
- Use this to discover what components exist before searching for specific ones
Script format-component-fields.sh
Retrieves and formats component configuration schemas.
# Usage:
./resources/scripts/format-component-fields.sh <category> <component>
# Examples:
./resources/scripts/format-component-fields.sh outputs redis_hash
./resources/scripts/format-component-fields.sh inputs kafka_franz
./resources/scripts/format-component-fields.sh processors mapping
- Requires two arguments:
- category (inputs, outputs, processors, caches, rate-limits, buffers, metrics, tracers)
- component name (e.g., kafka_franz, redis_hash, postgres)
- Outputs formatted field information grouped by priority:
<required_fields> - Must be configured
<optional_fields> - Commonly used settings
<advanced_fields> - Less common configuration
<secret_fields> - Sensitive credentials
- Flattens nested fields with dot notation (e.g.,
sasl.password)
- Shows array element types (e.g.,
array[string])
- Automatically filters deprecated fields
Script rpk-version.sh
Returns the current Redpanda Connect version in rpk.
# Usage:
./resources/scripts/rpk-version.sh
# Output example: 4.70.0
- No arguments
- Outputs version as a string (e.g., "4.70.0")
Online Component Documentation
Links to official documentation for detailed component reference.
# URL pattern:
https://github.com/redpanda-data/connect/blob/v{version}/docs/modules/components/pages/{category}/{component}.adoc
# Examples:
https://github.com/redpanda-data/connect/blob/v4.70.0/docs/modules/components/pages/inputs/kafka_franz.adoc
https://github.com/redpanda-data/connect/blob/v4.70.0/docs/modules/components/pages/outputs/postgres.adoc
{version} - Connect version from rpk-version.sh (e.g., "4.70.0")
{category} - Component category (inputs, outputs, processors, etc.)
{component} - Component name with underscores (e.g., "kafka_franz")
Workflow
Understand the query
- Identify what type of component (input/output/processor/etc.), which technology (kafka/postgres/http), and what action (read/write/transform)
- If the query is unclear, ask clarifying questions about intent
Find matching components
- Discover components across relevant categories that match the user's needs
- If no exact match exists, recommend similar or related components
Retrieve configuration details
- Get schema information for matched components to understand:
- What fields are required vs optional
- What the component's capabilities are
- How complex it is to configure
Rank by relevance
- Prioritize components by:
- How well they match the query intent
- Their stability status (stable > beta > experimental)
- Configuration simplicity (fewer required fields)
Present clearly
- Show the top 1-3 results with:
- Component name and category
- Brief description of what it does and justification for why it matches the query
- Configuration requirements (required fields, common optional fields)
- Minimal configuration example
- Link to official documentation for more details
- If component directly matches the query, ignore similar alternatives
1---2name: component-search3description: This skill should be used when users need to discover Redpanda Connect components for their streaming pipelines. Trigger when users ask about finding inputs, outputs, processors, or other components, or when they mention specific technologies like "kafka consumer", "postgres output", "http server", or ask "which component should I use for X".4---5
6# Redpanda Connect Component Search
7
8Help users discover the right Redpanda Connect components for their streaming pipeline needs.
9
10## Objective
11
12Find and recommend the most relevant components that match the user's natural language query.
13Provide enough information for users to understand what each component does, how to configure it, and why it matches their needs.
14
15## Prerequisites
16
17This skill requires: `rpk`, `rpk connect`, `python3`.
18See the [SETUP](SETUP.md) for installation instructions.
19
20## Component Categories
21
22Redpanda Connect has 8 types of components:
23- **inputs** - Read data from sources (Kafka, HTTP, files, databases, etc.)
24- **outputs** - Write data to destinations (Kafka, S3, databases, etc.)
25- **processors** - Transform, filter, or enrich messages (mapping, filtering, etc.)
26- **caches** - Store data for lookups (Redis, in-memory, etc.)
27- **rate-limits** - Control throughput (local, Redis-based, etc.)
28- **buffers** - Queue messages between pipeline stages
29- **metrics** - Export metrics (Prometheus, CloudWatch, etc.)
30- **tracers** - Export traces (Jaeger, OTLP, etc.)
31
32## Tools
33
34### Component Discovery
35
36Lists all available components in a category using rpk.
37
38```bash
39# Usage:
40rpk connect list <category>
41
42# Examples:
43rpk connect list inputs
44rpk connect list outputs
45rpk connect list processors
46```
47- Categories: inputs, outputs, processors, caches, rate-limits, buffers, metrics, tracers
48- Returns list of all component names in that category
49- Use this to discover what components exist before searching for specific ones
50
51### Script format-component-fields.sh
52
53Retrieves and formats component configuration schemas.
54
55```bash
56# Usage:
57./resources/scripts/format-component-fields.sh <category> <component>
58
59# Examples:
60./resources/scripts/format-component-fields.sh outputs redis_hash
61./resources/scripts/format-component-fields.sh inputs kafka_franz
62./resources/scripts/format-component-fields.sh processors mapping
63```
64- Requires two arguments:
65 - category (inputs, outputs, processors, caches, rate-limits, buffers, metrics, tracers)
66 - component name (e.g., kafka_franz, redis_hash, postgres)
67- Outputs formatted field information grouped by priority:
68 - `<required_fields>` - Must be configured
69 - `<optional_fields>` - Commonly used settings
70 - `<advanced_fields>` - Less common configuration
71 - `<secret_fields>` - Sensitive credentials
72- Flattens nested fields with dot notation (e.g., `sasl.password`)
73- Shows array element types (e.g., `array[string]`)
74- Automatically filters deprecated fields
75
76### Script rpk-version.sh
77
78Returns the current Redpanda Connect version in rpk.
79
80```bash
81# Usage:
82./resources/scripts/rpk-version.sh
83
84# Output example: 4.70.0
85```
86- No arguments
87- Outputs version as a string (e.g., "4.70.0")
88
89### Online Component Documentation
90
91Links to official documentation for detailed component reference.
92
93```
94# URL pattern:
95https://github.com/redpanda-data/connect/blob/v{version}/docs/modules/components/pages/{category}/{component}.adoc
96
97# Examples:
98https://github.com/redpanda-data/connect/blob/v4.70.0/docs/modules/components/pages/inputs/kafka_franz.adoc
99https://github.com/redpanda-data/connect/blob/v4.70.0/docs/modules/components/pages/outputs/postgres.adoc
100```
101- `{version}` - Connect version from rpk-version.sh (e.g., "4.70.0")
102- `{category}` - Component category (inputs, outputs, processors, etc.)
103- `{component}` - Component name with underscores (e.g., "kafka_franz")
104
105## Workflow
106
1071. **Understand the query**
108 - Identify what type of component (input/output/processor/etc.), which technology (kafka/postgres/http), and what action (read/write/transform)
109 - If the query is unclear, ask clarifying questions about intent
110
1112. **Find matching components**
112 - Discover components across relevant categories that match the user's needs
113 - If no exact match exists, recommend similar or related components
114
1153. **Retrieve configuration details**
116 - Get schema information for matched components to understand:
117 - What fields are required vs optional
118 - What the component's capabilities are
119 - How complex it is to configure
120
1214. **Rank by relevance**
122 - Prioritize components by:
123 - How well they match the query intent
124 - Their stability status (stable > beta > experimental)
125 - Configuration simplicity (fewer required fields)
126
1275. **Present clearly**
128 - Show the top 1-3 results with:
129 - Component name and category
130 - Brief description of what it does and justification for why it matches the query
131 - Configuration requirements (required fields, common optional fields)
132 - Minimal configuration example
133 - Link to official documentation for more details
134 - If component directly matches the query, ignore similar alternatives