MCPcopy Index your code
hub / github.com/ko-build/ko

github.com/ko-build/ko @v0.19.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.19.1 ↗ · + Follow
351 symbols 1,312 edges 78 files 110 documented · 31% updated 3d agov0.19.1 · 2026-06-29★ 8,46641 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ko: Easy Go Containers

GitHub Actions Build Status GoDoc Go Report Card SLSA 3


🎉 Google has applied for ko to join the Cloud Native Computing Foundation as a Sandbox project! Learn more here!

ko is a simple, fast container image builder for Go applications.

It's ideal for use cases where your image contains a single Go application without any/many dependencies on the OS base image (e.g., no cgo, no OS package dependencies).

ko builds images by effectively executing go build on your local machine, and as such doesn't require docker to be installed. This can make it a good fit for lightweight CI/CD use cases.

ko makes multi-platform builds easy, produces SBOMs by default, and includes support for simple YAML templating which makes it a powerful tool for Kubernetes applications.

Install ko and get started!

Acknowledgements

This work is based heavily on experience from having built the Docker and Kubernetes support for Bazel. That work was presented here.

Discuss

Questions? Comments? Ideas? Come discuss ko with us in the #ko-build channel on the Kubernetes Slack! See you there!

Community Meetings

You can find all the necessary details about the community meetings in this page.

Extension points exported contracts — how you extend this code

Interface (Interface)
Interface abstracts different methods for publishing images. [12 implementers]
pkg/publish/publish.go
DaemonOption (FuncType)
DaemonOption is a functional option for NewDaemon.
pkg/publish/daemon.go
Option (FuncType)
Option is a functional option for NewDefault.
pkg/publish/default.go
Namer (FuncType)
Namer is a function from a supported import path to the portion of the resulting image name that follows the "base" repo
pkg/publish/default.go

Core symbols most depended-on inside this repo

Digest
called by 30
pkg/commands/cache.go
Publish
called by 26
pkg/publish/publish.go
Image
called by 24
pkg/commands/cache.go
Close
called by 24
pkg/publish/publish.go
LoadConfig
called by 9
pkg/commands/options/build.go
Error
called by 9
pkg/internal/git/errors.go
run
called by 8
pkg/internal/git/git.go
GetInfo
called by 8
pkg/internal/git/info.go

Shape

Function 199
Method 91
Struct 50
FuncType 5
Interface 3
TypeAlias 3

Languages

Go100%

Modules by API surface

pkg/commands/cache.go32 symbols
pkg/publish/kind/write_test.go19 symbols
internal/sbom/spdx.go18 symbols
pkg/commands/resolver_test.go14 symbols
pkg/commands/resolver.go13 symbols
pkg/internal/git/info.go12 symbols
pkg/publish/options.go11 symbols
pkg/publish/default.go10 symbols
pkg/internal/testing/fixed.go10 symbols
pkg/commands/options/build_test.go10 symbols
pkg/resolve/resolve_test.go9 symbols
pkg/internal/git/info_test.go9 symbols

Dependencies from manifests, versioned

al.essio.dev/pkg/shellescapev1.6.0 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
github.com/Azure/azure-sdk-for-gov68.0.0+incompatible · 1×
github.com/Azure/go-ansitermv0.0.0-2025010203350 · 1×
github.com/Azure/go-autorestv14.2.0+incompatible · 1×
github.com/Azure/go-autorest/autorestv0.11.30 · 1×
github.com/Azure/go-autorest/autorest/adalv0.9.24 · 1×
github.com/Azure/go-autorest/autorest/azure/authv0.5.13 · 1×
github.com/Azure/go-autorest/autorest/azure/cliv0.4.7 · 1×
github.com/Azure/go-autorest/autorest/datev0.3.1 · 1×
github.com/Azure/go-autorest/loggerv0.2.2 · 1×
github.com/Azure/go-autorest/tracingv0.6.1 · 1×

For agents

$ claude mcp add ko \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact