Flink User-Defined Functions (UDFs)
SkillCloud & infraBuild and deploy Apache Flink user-defined functions (UDFs) in Java for stream processing over Kafka. Use this skill when users want to create scalar UDFs, user-defined table functions (UDTFs), or process table functions (PTFs) in Java, deploy them to Confluent Cloud or local Docker environments, and invoke them from Flink SQL or the Table API. Trigger on: Flink UDF, custom Flink function, process table function, PTF, UDTF, Flink user defined, extend Flink SQL, stateful stream processing with Flink. Do NOT trigger for: Kafka Streams UDFs (use kafka-streams-programming skill), general Flink job development without custom functions, CDC streaming data piplines that include Flink (prefer the confluent-cloud-cdc-tableflow skill), Flink connector setup, or Kafka producer/consumer code.
Use Flink User-Defined Functions (UDFs) in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Flink User-Defined Functions (UDFs) and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Flink User-Defined Functions (UDFs) skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by confluentinc/agent-skills in skills/flink-udf/SKILL.md and read by Ahel’s review.
Build and deploy custom functions in Java for Apache Flink to extend SQL and Table API capabilities with custom logic.
Function Types
Before proceeding, identify which type of function the user needs:
- Scalar UDF: Maps input values to a single output value (e.g., custom hash, string manipulation, calculations)
- User-Defined Table Function (UDTF): Maps input to multiple output rows (e.g., split strings, explode arrays)
- Process Table Function (PTF): Advanced stateful processing with N-to-M semantics, managed state, and timers (e.g., windowing, deduplication, state machines)
Gather Requirements
Ask the user these questions to determine the implementation path (if not already clear from context):
- Deployment target: Confluent Cloud or local Docker?
- Infrastructure: Deploy new infrastructure (Kafka + Flink) or use existing?
- Invocation method: Flink SQL or Table API?
Route to Implementation Guide
Based on the answers above, read the appropriate reference file:
Confluent Cloud Deployment
- Scalar UDF or UDTF → Read
references/udf-udtf-java-confluent-cloud.md - Process Table Function (PTF) → Read
references/ptf-java-confluent-cloud.md
If infrastructure setup is needed, also read references/confluent-cloud-setup.md first.
Local Docker Deployment
- Scalar UDF or UDTF → Read
references/udf-udtf-java-local.md - Process Table Function (PTF) → Read
references/ptf-java-local.md
If infrastructure setup is needed, also read references/local-docker-setup.md first.
Implementation Workflow
After reading the appropriate reference:
- Set up infrastructure (if needed)
- Generate boilerplate code for the function
- Implement the business logic
- Build and package the JAR
- Confirm the deployment plan with the user. Before any resource-modifying call (
confluent flink artifact create,docker cpinto a running container,CREATE FUNCTION, etc.), present the plan and wait for explicit approval. Show:- Artifact name and JAR path
- Function name to register
- Target environment (Confluent Cloud env + compute pool ID, or local Docker container name)
- The exact commands and SQL that will run Do not proceed to steps 6–7 until the user confirms.
- Deploy the artifact
- Register the function in Flink
- Test the function with sample data
- Provide usage examples (SQL or Table API)
Keep code scaffolding concise and focused on the user's specific requirements. Avoid over-engineering.
Signals
- GitHub stars
- 58
- Forks
- 11
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
flink-udf- Source
- github.com/confluentinc/agent-skills
github.com/confluentinc/agent-skills
Related picks
Skill · a5c-ai
The pick for Java110-java-maven-best-practices
Skill · jabrena
The pick for Javadocker-agent-run
Skill · docker
The pick for Dockerdocker-sandbox
Skill · joelhooks
The pick for Dockervercel-react-best-practices
Skill · vercel-labs
More in Cloud & infraweb-design-guidelines
Skill · vercel-labs
More in Cloud & infra