github-workflows-kt
github-workflows-kt is a Kotlin-based tool for authoring GitHub Actions workflows as type-safe code instead of YAML. It eliminates indentation errors, enables IDE auto-completion, and allows code reuse through Kotlin's full language capabilities.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | typesafegithub/github-workflows-kt |
| Owner | typesafegithub |
| Primary language | Kotlin |
| License | Apache-2.0 — OSI-approved |
| Stars | 655 |
| Forks | 28 |
| Open issues | 34 |
| Latest release | v4.0.0 (2026-07-03) |
| Last updated | 2026-07-08 |
| Source | https://github.com/typesafegithub/github-workflows-kt |
What github-workflows-kt is
A Kotlin DSL that generates GitHub Actions workflow YAML files with compile-time type checking, integrated action bindings via github-actions-typing, and support for dynamic workflow generation. Built on Kotlin scripting and generates valid YAML output.
Get the github-workflows-kt source
Clone the repository and explore it locally.
git clone https://github.com/typesafegithub/github-workflows-kt.gitcd github-workflows-kt# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Requires Kotlin compiler and build tooling (Gradle/Maven) in CI environment; not a simple drop-in replacement for YAML editing.
- Generated workflows must be committed to version control; establish process for regenerating and validating YAML on workflow code changes.
- Team onboarding requires Kotlin proficiency; provide examples and templates to lower adoption friction for DevOps/non-backend engineers.
- Interoperability with existing YAML workflows and manual edits may conflict; establish clear governance on source-of-truth (Kotlin vs. YAML).
- IDE setup and plugin compatibility (IntelliJ, VS Code) varies; test with team's primary development environment before rollout.
When to avoid it — and what to weigh
- Minimal workflow needs — Simple linear workflows with few steps may not benefit from the added abstraction layer; native YAML is more accessible to non-Kotlin teams.
- Non-JVM team environments — Requires Kotlin/JVM runtime and build infrastructure; not suitable for teams without Java ecosystem familiarity or tooling.
- Rapid prototyping with external contributors — YAML workflows are more discoverable and editable by non-developers; Kotlin source requires compilation and tooling setup unfamiliar to DevOps practitioners.
- Strict workflow transparency requirements — Generated YAML output must be inspected; dynamic Kotlin code makes workflow logic less immediately visible compared to static YAML definitions.
License & commercial use
Licensed under Apache License 2.0, a permissive OSI-approved license allowing commercial use, modification, and distribution with attribution and no warranty.
Apache 2.0 is a well-established permissive license compatible with commercial projects. Use internally or in products is permitted provided you retain license notices. No proprietary restrictions. Verify compatibility with your organization's legal review if bundling or redistributing.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Strong |
| License clarity | Clear |
| Deployment complexity | Moderate |
| DEV.co fit | Good |
| Assessment confidence | High |
Security posture is Not clearly stated in provided data. Considerations: ensure generated YAML does not expose secrets in workflow source code; validate that Kotlin code generation logic handles sensitive context variables safely; review third-party action bindings for malicious or outdated actions; audit any dynamic workflow generation logic. Standard GitHub Actions security best practices apply to generated workflows.
Alternatives to consider
GitHub Actions YAML + templating (Jinja2, Ytt)
Avoids language barrier for DevOps teams; existing YAML tooling is more universally understood; lower adoption friction.
Act / local GitHub Actions runner
Testing and validation tool rather than authoring layer; complements YAML but does not reduce syntax errors or provide type safety.
Dagger / CUE language
Language-agnostic CI configuration with type safety; broader ecosystem support beyond GitHub Actions; steeper learning curve but more portable.
Build on github-workflows-kt with DEV.co software developers
Evaluate github-workflows-kt for your team's CI/CD pipeline. Check the documentation, try the getting-started example, and assess Kotlin proficiency across your DevOps and engineering teams.
Talk to DEV.coRelated open-source tools
Surfaced by semantic similarity across the DEV.co open-source index.
Related on DEV.co
Explore the category and the services that help you build with it.
github-workflows-kt FAQ
Do I need to know Kotlin to use this?
What is the overhead in CI/CD time to generate and validate workflows?
Can I mix Kotlin-generated and manual YAML workflows in the same repo?
Is there commercial support or SLA?
Software development & web development with DEV.co
From first prototype to production, DEV.co delivers software development services around tools like github-workflows-kt. Our software development agency staffs experienced software developers and web developers for custom software development, web development, integrations, and ongoing support across open-source devops and beyond.
Ready to write type-safe workflows?
Evaluate github-workflows-kt for your team's CI/CD pipeline. Check the documentation, try the getting-started example, and assess Kotlin proficiency across your DevOps and engineering teams.