API Reference · Documentation · Agent Guide
Reusable Go building blocks for Kenn CLI and developer tools.
kit is the shared foundation under kenn-io applications such as kata, roborev, docbank, agentsview, and forge. Packages are small, app-neutral, and usable by more than one caller: no product-specific config, database state, UI behavior, or provider workflows live here.
- Build agent-aware CLIs.
agentclibuilds command lines for supported coding-agent CLIs,agenthookinstalls hooks into agent harnesses,agentmcpregisters MCP servers in agent configuration files,agentsetupruns idempotent setup items and reports their readiness, andclisearchfinds runnable commands from task descriptions. - Store content safely.
packstorekeeps a mixed loose-and-packed content-addressed store,packimplements the sealed-immutable pack container format, andbackupsnapshots metadata plus content-addressed file trees. - Write files without corruption.
atomicfilewrites so readers see old or new content, never a partial file;safefileiohardens file I/O for local runtime state. - Run local daemons.
daemonprovides reusable infrastructure for the background daemons behind CLI tools. - Add embeddings and vector search.
embedclient,embedconfig,embedfit,embedlocal,embedmodel, andembedservercover endpoints, token budgets, and a local embedding server;vectorsearches the resulting vectors backend-neutrally. - Handle filesystems portably.
fslinkclassifies and creates symlinks and Windows junctions,fsnamecleans names for every modern OS and file system, andpathresolvecanonicalizes paths for containment checks. - Place times on calendar days.
civiltimegives the instants that make up acivil.Datein an IANA zone, including days that skip or repeat midnight and dates a zone skipped. - Share development tooling.
lintowns the shared Go lint policy,loggingbuilds reusable slog loggers,opensshorchestrates an OpenSSH client,telemetrywraps OpenTelemetry and anonymous usage events, andspillmoves oversized in-memory lists to a temporary file.
go get go.kenn.io/kit@latestkit requires Go 1.27.4 or later. Import the packages you need; each carries its own Go documentation and package-level agent guidance.
- API reference on pkg.go.dev
- Task-based command discovery
- Local embedding server installation
- Adopting packed content storage
- Adopting the shared Go lint policy (kennlint)
- Daily screen reports
- Confirmed milestone delivery
- PostHog event fields
Coding agents working in this repository should read AGENTS.md.
kit is licensed under the Apache License, Version 2.0.