{"slug":"flink-agents","name":"Apache Flink Agents","vendor":"Apache Software Foundation","tagline":"Apache agent framework that runs agents as first-class operators inside a Flink datastream, with exactly-once execution and durable state","url":"https://agentboards.org/agent/flink-agents","website":"https://nightlies.apache.org/flink/flink-agents-docs-main/","docs":"https://nightlies.apache.org/flink/flink-agents-docs-main/","repo":"https://github.com/apache/flink-agents","category":"framework","execution":["local","cloud"],"license":"Apache-2.0","open_source":true,"pricing":{"model":"free","summary":"Free and open source under Apache-2.0 as an Apache Software Foundation project; you run it on your own Flink cluster with your own model providers","from_usd":0,"free_tier":true,"byok":true},"models":{"backbone":["mainstream LLMs via chat model integrations"],"bring_your_own_model":true,"local_models":false},"protocols":{"mcp_client":true,"mcp_server":false,"openapi":false},"capabilities":{"terminal_exec":false,"browser":false,"multi_file_edit":false,"git_ops":false,"docker_sandbox":false,"multi_agent":true,"headless_ci":false},"context_window":null,"platforms":["macos","linux"],"install":[{"label":"curl","command":"curl -fsSL https://raw.githubusercontent.com/apache/flink-agents/main/tools/install.sh | bash"},{"label":"source","command":"git clone https://github.com/apache/flink-agents.git && cd flink-agents && ./tools/build.sh"}],"benchmarks":[],"tags":["open-source","preview","streaming","flink","exactly-once","memory","mcp","apache"],"github_stars":459,"metrics":{"stars":459,"pushed_at":"2026-10-01T07:13:36Z","archived":false,"open_issues":66,"latest_version":null,"latest_version_at":null,"latest_version_url":null,"version_source":null,"checked_at":"2026-10-02T05:05:49.197Z"},"sources":{"readme":"https://github.com/apache/flink-agents","docs":"https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/overview/","install":"https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/installation/","license":"https://github.com/apache/flink-agents/blob/main/LICENSE","capabilities":"https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/overview/"},"verified_at":"2026-09-04","adoption":{"score":0.6,"signals":{"github_stars":452},"measured_at":"2026-09-21"},"scores":{"panel":6.7,"adoption":0.6,"spread":1.5,"facts":5,"board":5.5,"dimensions":{"reliability":6.5,"usefulness":5.8,"cost":7.2,"longevity":7.3},"per_persona":{"amigo":6.8,"critico":6.5,"profesor":7.3,"inversora":7.3,"jefa":5.8,"hacker":6.8},"community":null},"rank":null,"category_rank":76,"panel_reviews":[{"persona":"juez","persona_name":"El Juez","ai_generated":true,"verdict":"The panel agrees more than it disagrees, so the one split is worth naming: La Jefa will not take a preview, and El Hacker sees nothing to lose by trying it.","scores":null,"evidence":[]},{"persona":"amigo","persona_name":"El Amigo","ai_generated":true,"verdict":"Pick it when the thing you want the agent to react to is an event rather than a person; pick an ordinary agent framework when a human is always the one asking.","scores":{"reliability":6,"usefulness":6,"cost":8,"longevity":7},"evidence":["https://github.com/apache/flink-agents","https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/overview/"]},{"persona":"critico","persona_name":"El Crítico","ai_generated":true,"verdict":"Exactly-once for an agent's side effects rests on an external write-ahead log, and the outbound call the agent makes when it acts is not inside that transaction.","scores":{"reliability":6,"usefulness":6,"cost":7,"longevity":7},"evidence":["https://github.com/apache/flink-agents","https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/overview/"]},{"persona":"profesor","persona_name":"El Profesor","ai_generated":true,"verdict":"Durability is inherited rather than reimplemented: checkpointing and distributed state management come from the host runtime, and the agent layer does not attempt its own.","scores":{"reliability":8,"usefulness":6,"cost":7,"longevity":8},"evidence":["https://github.com/apache/flink-agents","https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/overview/"]},{"persona":"inversora","persona_name":"La Inversora","ai_generated":true,"verdict":"A foundation project with 450 stars and no cap table: nobody can buy it, nobody can redirect it, and nobody is obliged to keep staffing it either.","scores":{"reliability":7,"usefulness":6,"cost":8,"longevity":8},"evidence":["https://github.com/apache/flink-agents","https://github.com/apache/flink-agents/blob/main/LICENSE"]},{"persona":"jefa","persona_name":"La Jefa","ai_generated":true,"verdict":"No seat cost and a hard floor of prerequisites: Flink 1.20.3 or higher, Java 11 or newer, Python 3.10 to 3.12, and a version that still calls itself preview.","scores":{"reliability":5,"usefulness":5,"cost":7,"longevity":6},"evidence":["https://nightlies.apache.org/flink/flink-agents-docs-main/docs/get-started/installation/","https://github.com/apache/flink-agents"]},{"persona":"hacker","persona_name":"El Hacker","ai_generated":true,"verdict":"Apache-2.0 held by a foundation, MCP tool invocation built in, and an install script or a source build; the weights, though, are all somewhere that is not my house.","scores":{"reliability":7,"usefulness":6,"cost":6,"longevity":8},"evidence":["https://github.com/apache/flink-agents","https://github.com/apache/flink-agents/blob/main/LICENSE"]},{"persona":"comediante","persona_name":"El Comediante","ai_generated":true,"verdict":"You can write one agent in Python, Java and YAML at the same time, which is a bold thing to hand to a code reviewer.","scores":null,"evidence":[]}]}