kratos
Your ultimate Go microservices framework for the cloud-native era.
- 26k stars
- 4.2k forks
- 121 open issues
- Language: Go
- License: MIT
- updated
Install
git clone https://github.com/go-kratos/kratos- Browse the curated list on GitHub or clone it locally.
- Star it to keep new additions on your radar.
Editor's note
Kratos is a lightweight Go framework for building cloud-native microservices, offering explicit APIs across transport, middleware, registry, configuration, logging, encoding, and code generation layers. Developers define services using Protobuf, then use the `kratos` CLI to scaffold projects and generate both HTTP and gRPC server and client code from `.proto` files with commands like `kratos proto server` and `kratos proto client`. The framework provides a unified transport layer that runs HTTP and gRPC servers simultaneously, composable middleware for recovery, tracing, validation, metrics, and authentication, plus pluggable registry and configuration backends through a contrib ecosystem. The `mcp` topic signals that Kratos is being positioned to support Model Context Protocol integrations, making it relevant to teams building Go-based backend infrastructure that surfaces tools or data to Claude via MCP servers. The v3 release notably reduces core dependencies and makes previously implicit behavior explicit, which benefits backend engineers who want fine-grained control over service construction. Go developers building production microservices that need to expose capabilities to AI systems, including Claude integrations, are the primary audience.
Awesome Lists overview
Kratos
Kratos is a lightweight Go framework for building cloud-native microservices. It provides small, explicit APIs for transport, middleware, registry, configuration, logging, encoding, and code generation so applications can focus on business logic.
Features
API-first development with Protobuf and generated HTTP/gRPC code.
Composable middleware for recovery, logging, validation, tracing, metrics, auth, and more.
Pluggable registry, configuration, and encoding components.
Standard-library
log/slogbased logging with OpenTelemetry extensions in contrib packages.Consistent metadata, errors, validation, OpenAPI, and code-generation workflows.
A contrib ecosystem for optional integrations such as registries, config stores, middleware, encodings, and observability.
Installation
Requirements
Go 1.25 or later
Install the CLI
go install github.com/go-kratos/kratos/cmd/kratos/v3@latest
kratos upgradeCreate a Service
kratos new helloworld
cd helloworld
go mod tidy
kratos runVisit http://localhost:8000/helloworld/kratos after the service starts.
For a fuller generated service flow:
kratos proto add api/helloworld/helloworld.proto
kratos proto client api/helloworld/helloworld.proto
kratos proto server api/helloworld/helloworld.proto -t internal/service
go generate ./...
kratos runUsage Example
package main
import (
"github.com/go-kratos/kratos/v3"
"github.com/go-kratos/kratos/v3/transport/grpc"
"github.com/go-kratos/kratos/v3/transport/http"
)
func main() {
httpSrv := http.NewServer(http.Address(":8000"))
grpcSrv := grpc.NewServer(grpc.Address(":9000"))
app := kratos.New(
kratos.Name("helloworld"),
kratos.Version("v1.0.0"),
kratos.Server(httpSrv, grpcSrv),
)
if err := app.Run(); err != nil {
panic(err)
}
}v3 Migration
Kratos v3 reduces core dependencies and makes previously implicit behavior explicit. Review the v2 to v3 migration guide before upgrading production services.
Further Reading
Development
make test
make lintCommunity
Security
If you discover a security vulnerability in Kratos, please contact go-kratos@googlegroups.com. Security reports are handled privately before disclosure.
Contributors
Thank you for contributing to Kratos. The contribution guide is available in the Kratos documentation.
Acknowledgments
The following projects influenced Kratos design:
License
Kratos is open-sourced software licensed under the MIT license.
What people ask about kratos
What is go-kratos/kratos?
go-kratos/kratos is awesome lists for the Claude AI ecosystem. Your ultimate Go microservices framework for the cloud-native era. It has 26k GitHub stars and its last recorded update is dated 2026-10-21.
How do I install kratos?
You can install kratos by cloning the repository (https://github.com/go-kratos/kratos) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is go-kratos/kratos safe to use?
Our security agent has analyzed go-kratos/kratos and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains go-kratos/kratos?
go-kratos/kratos is maintained by go-kratos. The last recorded GitHub activity is dated 2026-10-21, with 121 open issues.
Are there alternatives to kratos?
Yes. On ClaudeWave you can browse similar awesome lists at /categories/awesome, sorted by popularity or recent activity.
Maintain this repo? Show its Trust Score in your README
The badge shows this repository's current Trust Score and verdict, and links back to this page. It follows the catalogue data: nobody can buy or edit the score it displays.
[](https://claudewave.com/en/repo/go-kratos-kratos)<a href="https://claudewave.com/en/repo/go-kratos-kratos"><img src="https://claudewave.com/api/badge/go-kratos-kratos" alt="ClaudeWave Trust Score for go-kratos/kratos" width="320" height="64"></a>