Skip to content
kenn-ioPublic

About

general purpose shared toolkit library

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

325 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kit

Go 1.27.4+ License: Apache 2.0 Go Reference

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.

What you can do

  • Build agent-aware CLIs. agentcli builds command lines for supported coding-agent CLIs, agenthook installs hooks into agent harnesses, agentmcp registers MCP servers in agent configuration files, agentsetup runs idempotent setup items and reports their readiness, and clisearch finds runnable commands from task descriptions.
  • Store content safely. packstore keeps a mixed loose-and-packed content-addressed store, pack implements the sealed-immutable pack container format, and backup snapshots metadata plus content-addressed file trees.
  • Write files without corruption. atomicfile writes so readers see old or new content, never a partial file; safefileio hardens file I/O for local runtime state.
  • Run local daemons. daemon provides reusable infrastructure for the background daemons behind CLI tools.
  • Add embeddings and vector search. embedclient, embedconfig, embedfit, embedlocal, embedmodel, and embedserver cover endpoints, token budgets, and a local embedding server; vector searches the resulting vectors backend-neutrally.
  • Handle filesystems portably. fslink classifies and creates symlinks and Windows junctions, fsname cleans names for every modern OS and file system, and pathresolve canonicalizes paths for containment checks.
  • Place times on calendar days. civiltime gives the instants that make up a civil.Date in an IANA zone, including days that skip or repeat midnight and dates a zone skipped.
  • Share development tooling. lint owns the shared Go lint policy, logging builds reusable slog loggers, openssh orchestrates an OpenSSH client, telemetry wraps OpenTelemetry and anonymous usage events, and spill moves oversized in-memory lists to a temporary file.

Installation

go get go.kenn.io/kit@latest

kit requires Go 1.27.4 or later. Import the packages you need; each carries its own Go documentation and package-level agent guidance.

Documentation

Development

Adoption

Architecture

Formats

Agent guide

Coding agents working in this repository should read AGENTS.md.

License

kit is licensed under the Apache License, Version 2.0.

About

general purpose shared toolkit library

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages