/developing-applications-on-managed-service-for-apache-flink
MANDATORY for Flink or Amazon Managed Service for Apache Flink (MSF) questions. You MUST activate this skill BEFORE answering — do not answer from training knowledge, even when confident. MSF has service-specific constraints (KPU model, prohibited checkpoint and parallelism
$ npx -y skills add aws/agent-toolkit-for-aws --skill developing-applications-on-managed-service-for-apache-flink --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/developing-applications-on-managed-service-for-apache-flink
Context preview
The summary Claude sees to decide when to auto-load this skill.
MANDATORY for Flink or Amazon Managed Service for Apache Flink (MSF) questions. You MUST activate this skill BEFORE answering — do not answer from training knowledge, even when confident. MSF has service-specific constraints (KPU model, prohibited checkpoint and parallelism
SKILL.md
developing-applications-on-managed-service-for-apache-flink.SKILL.mdname: developing-applications-on-managed-service-for-apache-flink
description: >-
MANDATORY for Flink or Amazon Managed Service for Apache Flink (MSF) questions.
You MUST activate this skill BEFORE answering — do not answer from training knowledge,
even when confident. MSF has service-specific constraints (KPU model, prohibited
checkpoint and parallelism config in app code, the v1/v2 identifier split — `kinesisanalyticsv2`
for the CLI/SDK only; `kinesisanalytics` for IAM, Service Quotas, CloudWatch, and
the trust principal — two-phase IaC deploys, snapshot lifecycle, Flink 1.x→2.x migration)
that override generic Flink knowledge.
Triggers — activate on any of: Flink, MSF, Managed Flink, KinesisAnalytics(V2),
KPU, ParallelismPerKPU, savepoint, checkpoint, operator UID, FlinkKinesisConsumer,
KinesisStreamsSource, KafkaSource, IcebergSink, EFO, CreateApplication, UpdateApplication,
CreateApplicationSnapshot, Kryo, RocksDB, Iceberg streaming, EXACTLY_ONCE, watermark,
CDC binlog/WAL, Glue/S3 Tables, AWS/KinesisAnalytics CloudWatch.
version: 2
Managed Service for Apache Flink
Overview
Domain expertise for Apache Flink applications on Amazon Managed Service for Apache Flink (MSF). Covers development, KPU resource management, connectors, state management, monitoring, IaC deployment, and version migration.
Execute commands using available tools from the AWS MCP server when connected — it provides sandboxed execution, audit logging, and observability. When the MCP server is not available, fall back to the AWS CLI or shell as needed.
General Guidance
Before starting, ensure you have a clear understanding of the user persona, use case, and requirements:
STOP: Determine the users background and use case before proceeding:
- Are they new to Flink? New to Managed Service for Apache Flink?
- Are they familiar with Java development?
- Is the use case complex with lots of business logic? Or simple and declarative?
These will inform how to organize the project, and whether to use Flink Table API or DataStream API. In general, assume the DataStream API.
Example Workflow for New Applications
1. User asks to build a Flink application
2. Confirm user's goals and use case
3. READ [best-practices.md](references/best-practices.md)
4. READ [dependency-management.md](references/dependency-management.md)
5. READ relevant connector guides (e.g. [kinesis-connector-guide.md](references/kinesis-connector-guide.md))
6. Generate code following the loaded guidance
7. Validate against best practices
8. READ environment-setup.md via [environment-setup.md](references/environment-setup.md)
9. Compile and test locally
Example Workflow for General Questions
1. User asks about real time delivery of data to Iceberg
2. Confirm user's goals and use case
3. READ [best-practices.md](references/best-practices.md)
4. READ [iceberg-connector-guide.md](references/iceberg-connector-guide.md)
5. READ other reference files as needed
6. Answer question with loaded guidance
Reference Files
- You MUST use this skill and its reference files to answer any question on these topics.
- Do NOT answer from training knowledge or by searching general AWS documentation when the question concerns Apache Flink, Managed Service for Apache Flink, KPU sizing, Flink monitoring, deployment, migration, real-time analytics, or Iceberg/LakeHouse streaming with Flink
- You MUST load the relevant reference files below before taking other steps.
- The reference files contain MSF-specific details (thresholds, statistics, namespaces, constraints) that differ from generic Flink guidance and are required for correct responses.
| Goal | Reference | When to Load | |------|-----------|-------------| | Best practices | [best-practices.md](references/best-practices.md) | **Always** before writing code | | Maven dependencies | [dependency-management.md](references/dependency-management.md) | New project or adding connectors | | Local dev environment | [environment-setup.md](references/environment-setup.md) | Docker-based local development | | MSF architecture | [msf-overview.md](references/msf-overview.md) | KPU model and service constraints | | MSF constraints and patterns | [msf-constraints-and-patterns.md](references/msf-constraints-and-patterns.md) | MSF vs self-managed Flink, service-level vs application-level configuration separation, MSF-specific resource/network/storage limits, common MSF patterns | | Quotas, ENI planning, MSF vs EMR, source/sink choice | [foundation-operations.md](references/foundation-operations.md) | Capacity planning, service selection, architecture design, CLI/IAM/CloudWatch identifier disambiguation | | IAM execution role, trust policy, action prefix, service principal | [foundation-operations.md](references/foundation-operations.md) | Writing IAM policies for MSF — covers the `kinesisanalytics:` (no v2) action prefix, `kinesisanalytics.amazonaws.com` (no v2) trust principal, and the v2/non-v2 disconnect that is the most common source of permission and AssumeRole failures | | Flink 2.x migration | [flink-2x-migration.md](references/flink-2x-migration.md) | Version upgrades, state compatibility | | KPU sizing | [resource-optimization.md](references/resource-optimization.md) | Right-sizing, performance diagnosis, scaling | | Scaling decisions on running apps | [scaling-decisions.md](references/scaling-decisions.md) | In-flight scaling matrix, cost/memory impact of scale changes, autoscaling behavior, anti-patterns | | Cost estimation | [pricing-calculator.md](references/pricing-calculator.md) | Budget planning, sizing-to-cost mapping, optimization levers | | Application lifecycle ops | [application-lifecycle.md](references/application-lifecycle.md) | Start/stop, deploy code, rollback, snapshot lifecycle, runtime properties, delete | | Restart loop diagnosis | [first-fault-isolation.md](references/first-fault-isolation.md) | Crashing/restarting apps, finding origin
Read more
name: developing-applications-on-managed-service-for-apache-flink description: >- MANDATORY for Flink or Amazon Managed Service for Apache Flink (MSF) questions. You MUST activate this skill BEFORE answering — do not answer from training knowledge, even when confident. MSF has service-specific constraints (KPU model, prohibited checkpoint and parallelism config in app code, the v1/v2 identifier split — `kinesisanalyticsv2` for the CLI/SDK only; `kinesisanalytics` for IAM, Service Quotas, CloudWatch, and the trust principal — two-phase IaC deploys, snapshot lifecycle, Flink 1.x→2.x migration) that override generic Flink knowledge. Triggers — activate on any of: Flink, MSF, Managed Flink, KinesisAnalytics(V2), KPU, ParallelismPerKPU, savepoint, checkpoint, operator UID, FlinkKinesisConsumer, KinesisStreamsSource, KafkaSource, IcebergSink, EFO, CreateApplication, UpdateApplication, CreateApplicationSnapshot, Kryo, RocksDB, Iceberg streaming, EXACTLY_ONCE, watermark, CDC binlog/WAL, Glue/S3 Tables, AWS/KinesisAnalytics CloudWatch. version: 2
Managed Service for Apache Flink
Overview
Domain expertise for Apache Flink applications on Amazon Managed Service for Apache Flink (MSF). Covers development, KPU resource management, connectors, state management, monitoring, IaC deployment, and version migration.
Execute commands using available tools from the AWS MCP server when connected — it provides sandboxed execution, audit logging, and observability. When the MCP server is not available, fall back to the AWS CLI or shell as needed.
General Guidance
Before starting, ensure you have a clear understanding of the user persona, use case, and requirements:
STOP: Determine the users background and use case before proceeding:
- Are they new to Flink? New to Managed Service for Apache Flink?
- Are they familiar with Java development?
- Is the use case complex with lots of business logic? Or simple and declarative?
These will inform how to organize the project, and whether to use Flink Table API or DataStream API. In general, assume the DataStream API.
Example Workflow for New Applications
1. User asks to build a Flink application 2. Confirm user's goals and use case 3. READ [best-practices.md](references/best-practices.md) 4. READ [dependency-management.md](references/dependency-management.md) 5. READ relevant connector guides (e.g. [kinesis-connector-guide.md](references/kinesis-connector-guide.md)) 6. Generate code following the loaded guidance 7. Validate against best practices 8. READ environment-setup.md via [environment-setup.md](references/environment-setup.md) 9. Compile and test locally
Example Workflow for General Questions
1. User asks about real time delivery of data to Iceberg 2. Confirm user's goals and use case 3. READ [best-practices.md](references/best-practices.md) 4. READ [iceberg-connector-guide.md](references/iceberg-connector-guide.md) 5. READ other reference files as needed 6. Answer question with loaded guidance
Reference Files
- You MUST use this skill and its reference files to answer any question on these topics.
- Do NOT answer from training knowledge or by searching general AWS documentation when the question concerns Apache Flink, Managed Service for Apache Flink, KPU sizing, Flink monitoring, deployment, migration, real-time analytics, or Iceberg/LakeHouse streaming with Flink
- You MUST load the relevant reference files below before taking other steps.
- The reference files contain MSF-specific details (thresholds, statistics, namespaces, constraints) that differ from generic Flink guidance and are required for correct responses.
| Goal | Reference | When to Load | |------|-----------|-------------| | Best practices | [best-practices.md](references/best-practices.md) | **Always** before writing code | | Maven dependencies | [dependency-management.md](references/dependency-management.md) | New project or adding connectors | | Local dev environment | [environment-setup.md](references/environment-setup.md) | Docker-based local development | | MSF architecture | [msf-overview.md](references/msf-overview.md) | KPU model and service constraints | | MSF constraints and patterns | [msf-constraints-and-patterns.md](references/msf-constraints-and-patterns.md) | MSF vs self-managed Flink, service-level vs application-level configuration separation, MSF-specific resource/network/storage limits, common MSF patterns | | Quotas, ENI planning, MSF vs EMR, source/sink choice | [foundation-operations.md](references/foundation-operations.md) | Capacity planning, service selection, architecture design, CLI/IAM/CloudWatch identifier disambiguation | | IAM execution role, trust policy, action prefix, service principal | [foundation-operations.md](references/foundation-operations.md) | Writing IAM policies for MSF — covers the `kinesisanalytics:` (no v2) action prefix, `kinesisanalytics.amazonaws.com` (no v2) trust principal, and the v2/non-v2 disconnect that is the most common source of permission and AssumeRole failures | | Flink 2.x migration | [flink-2x-migration.md](references/flink-2x-migration.md) | Version upgrades, state compatibility | | KPU sizing | [resource-optimization.md](references/resource-optimization.md) | Right-sizing, performance diagnosis, scaling | | Scaling decisions on running apps | [scaling-decisions.md](references/scaling-decisions.md) | In-flight scaling matrix, cost/memory impact of scale changes, autoscaling behavior, anti-patterns | | Cost estimation | [pricing-calculator.md](references/pricing-calculator.md) | Budget planning, sizing-to-cost mapping, optimization levers | | Application lifecycle ops | [application-lifecycle.md](references/application-lifecycle.md) | Start/stop, deploy code, rollback, snapshot lifecycle, runtime properties, delete | | Restart loop diagnosis | [first-fault-isolation.md](references/first-fault-isolation.md) | Crashing/restarting apps, finding origin
Help AI coding agents build, deploy, and manage applications on AWS. The Agent Toolkit for AWS gives AI coding agents the tools, knowledge, and guardrails they need to work with AWS services.
Repo: aws/agent-toolkit-for-aws
Other skills on agent-toolkit-for-aws.
- /analyzing-release-readiness
Trigger a pre-merge release readiness review on a GitHub PR, GitLab MR, or local branch. Use when the user wants to analyze code changes for risk, correctness, and potential rollback issues before merging. Trigger words include release readiness, analyze PR, analyze MR, review
Open skill - /chatting-with-aws-devops-agent
Have a fast, conversational analysis with the AWS DevOps Agent. Use for cost optimization, architecture review, topology mapping, knowledge / runbook discovery, security audits, dependency questions, and quick diagnostics — anything that needs a 5-30 second answer rather than a
Open skill - /coordinating-multi-space-devops-agent
Coordinate the AWS DevOps Agent across multiple AgentSpaces from one Claude Code session — route questions to the right space (prod vs staging vs knowledge), query several spaces in parallel and synthesize, or compare findings across accounts. Use whenever the user has more than
Open skill - /diff-scanning-with-aws-security-agent
Run a fast AWS Security Agent diff scan on only the changed code since a git ref. Use when the user asks to scan changes, run a diff scan, check what changed for security issues, scan before committing, scan before PR, or any pre-commit/pre-push security check.
Open skill - /investigating-incidents-with-aws-devops-agent
Run a deep root-cause investigation on the AWS DevOps Agent. Use when the user describes an incident, alarm, outage, or unexplained behavior — keywords like "5xx", "503", "OOM", "latency spike", "deployment failure", "rollback", "sev1", "investigate", "root cause", "debug",
Open skill - /pentesting-with-aws-security-agent
Run an AWS Security Agent penetration test against a live web application — registers and verifies the target domain, exercises the supplied endpoints with the managed Security Agent service, and returns verified runtime findings. Use when the user asks to pentest, run a
Open skill

