Skip to main content

Reduce AI agent token usage: layout.json + learned.json replace heavy discovery. Infra index for K8s, Docker, Terraform, Helm.

Project description

Kubed

Reduce AI agent token usage with two small files.

CLI and context tooling for Kubernetes, Docker, Terraform, and Helm. Kubed gives AI agents two lightweight files instead of expensive discovery:

File What it stores Size
.kubed/layout.json Infra layout: Dockerfiles, Terraform, Helm, K8s, project structure, shared infra ~1,500–3,000 tokens
.kubed/learned.json Accumulated knowledge: architecture facts, important paths, dependencies, patterns ~500 tokens

Without Kubed: Agents run find, ls -laR, kubectl get, grep -r → 50,000+ tokens, 10+ tool calls, repeated every session.

With Kubed: Agents read two files → ~2,000–3,500 tokens, 1–2 file reads, knowledge persists across sessions.

Installation (Python package)

pip install kubed
kubed-setup

Non-interactive: kubed-setup --force-yes. See cmds.daleyarborough.com for full docs.

Layout commands (Go binary)

Build the binary (requires Go 1.21+):

make build   # outputs build/kubed
# or: go build -o build/kubed ./cmd/kubed
  • kubed layout capture — Index infra paths, project structure, shared infra, and (optionally) K8s resources; write .kubed/layout.json. Optional: --all-namespaces.
  • kubed layout show — Print layout.json to stdout.

Learned cache (accumulated knowledge)

  • kubed learned show — Print .kubed/learned.json (facts, paths, deps, patterns accumulated across sessions).
  • kubed learned summary — Quick summary: "3 facts, 2 paths, 5 deps, 1 patterns".
  • kubed learned add-fact "fact" [--category=X] [--source=Y] — Add a discovered fact.
  • kubed learned add-path "/path" "description" [--tags=a,b] — Add an important path.
  • kubed learned add-dep "name" [--kind=X] [--version=Y] — Add a dependency.

Agents read learned.json first to avoid re-discovering the same things. When the agent learns something useful (architecture, dependencies, patterns), it persists it so future sessions benefit.

This repo does not use Kubernetes; we validate layout with make test (fixture-based agent-query tests).

Development: test before pushing

Run make verify before pushing to main (same idea as Kubernetes: only working, quality code).

make verify   # runs go vet + tests (unit + agent-query tests)
make test     # tests only
make build    # build binary
make help     # list targets

Tests include agent-query tests: given a layout fixture, they assert that the data passed to an agent/LLM answers questions like "what workloads exist?", "what does service X select?", "what configmaps does deployment Y use?". See internal/layout/query_test.go.


Kubed Documentation (site)

This is the documentation website for the Kubed CLI tool, built with Jekyll and Tailwind CSS.

Setup

Prerequisites

  • Ruby 2.7+ with Bundler
  • Node.js 14+ with npm

Installation

  1. Install Ruby dependencies:
bundle install
  1. Install Node.js dependencies:
npm install

Development

To run the site locally with live reload:

npm run dev

You can then access the site at http://localhost:4000

Building for Production

npm run build:css
bundle exec jekyll build

The site will be generated in the _site directory.

Content

  • index.md: The home page
  • /docker/, /kubernetes/, /terraform/, /helm/: Tool-specific documentation
  • installation.md: Installation instructions

License

MIT. See the LICENSE file for details.

Contributing

Contributions are welcome. Please open an issue or submit a pull request.

Contact

cmds.daleyarborough.com · daleyarborough@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kubed-2.4.1.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kubed-2.4.1-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file kubed-2.4.1.tar.gz.

File metadata

  • Download URL: kubed-2.4.1.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for kubed-2.4.1.tar.gz
Algorithm Hash digest
SHA256 5f8337410ca8422f4f40b8740814f145ac18d2d6585022c7bac7c15e8a7bb8a7
MD5 4f3f090247e5e27f0254675d78a25c21
BLAKE2b-256 dbe494edc28826aae32c3d9027d6b37e41dd2b2bb179ad46dcc34552af0820b7

See more details on using hashes here.

File details

Details for the file kubed-2.4.1-py3-none-any.whl.

File metadata

  • Download URL: kubed-2.4.1-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for kubed-2.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 99b0766f23e96741b17f9f64ef78bb899233c69cbe9d89e8376216d01b82b921
MD5 1b6445cfb0c64773057f0119c06fcee9
BLAKE2b-256 d236d247533237751115de38cdaf305295670eaadb5b836a8ddeac411e5b64d6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page