{"id":33919427,"url":"https://github.com/koithos/kimspect","last_synced_at":"2026-05-02T04:35:58.238Z","repository":{"id":284968704,"uuid":"956655573","full_name":"koithos/kimspect","owner":"koithos","description":"The missing utility in kubectl to help you inspect container images on your pods and nodes.","archived":false,"fork":false,"pushed_at":"2026-04-29T14:54:57.000Z","size":664,"stargazers_count":29,"open_issues_count":9,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-29T16:33:43.898Z","etag":null,"topics":["cli","command-line","k8s","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/koithos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-28T16:16:03.000Z","updated_at":"2026-04-17T06:21:22.000Z","dependencies_parsed_at":"2025-03-28T17:39:49.832Z","dependency_job_id":"04636e90-e150-4424-91f3-06e9c5a05f2c","html_url":"https://github.com/koithos/kimspect","commit_stats":null,"previous_names":["aliabbasjaffri/kelper","koithos/kimspect"],"tags_count":43,"template":false,"template_full_name":null,"purl":"pkg:github/koithos/kimspect","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koithos%2Fkimspect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koithos%2Fkimspect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koithos%2Fkimspect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koithos%2Fkimspect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/koithos","download_url":"https://codeload.github.com/koithos/kimspect/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/koithos%2Fkimspect/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32523427,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T01:12:54.858Z","status":"online","status_checked_at":"2026-05-02T02:00:05.923Z","response_time":132,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","command-line","k8s","rust"],"created_at":"2025-12-12T08:50:48.871Z","updated_at":"2026-05-02T04:35:58.210Z","avatar_url":"https://github.com/koithos.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kimspect\n\n[![Crates.io Version](https://img.shields.io/crates/v/kimspect)](https://crates.io/crates/kimspect) [![Crates.io Downloads](https://img.shields.io/crates/d/kimspect)](https://crates.io/crates/kimspect) [![release](https://github.com/koithos/kimspect/actions/workflows/release.yml/badge.svg)](https://github.com/koithos/kimspect/actions/workflows/release.yml) [![GitHub release (latest by date)](https://img.shields.io/github/v/release/koithos/kimspect)](https://github.com/koithos/kimspect/releases/latest) [![License](https://img.shields.io/crates/l/kimspect)](https://github.com/koithos/kimspect/blob/main/LICENSE) [![Project Status: Active](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active) [![GitHub last commit](https://img.shields.io/github/last-commit/koithos/kimspect)](https://github.com/koithos/kimspect/commits/main)\n\n**kimspect** is a kubernetes container image inspection tool that provides comprehensive visibility into container images running inside your cluster. kimspect can get image information by pod, namespace, and node. Built for performance and reliability, kimspect enables container image insights with a simple, intuitive command-line interface.\n\n\u003cpicture\u003e\n  \u003cimg alt=\"normal demo of kimspect\" src=\".vhs/demo-normal.gif\"\u003e\n\u003c/picture\u003e\n\n_For more demos, checkout the .vhs folder_\n\n## Features\n\n- [x] List images in a cluster based on different filters:\n  - by namespace\n  - by node\n  - by pod name\n  - by container image registry\n- [x] Advanced logging capabilities:\n  - Multiple verbosity levels (-v, -vv, -vvv, -vvvv)\n  - Support for both plain and JSON log formats\n\n## Installation\n\nkimspect can be installed using several package managers. Choose the one that suits your environment:\n\n### Using Cargo (Rust's Package Manager)\n\nIf you have Rust and Cargo installed, you can build and install kimspect directly from the source:\n\n```bash\ncargo install kimspect\n```\n\n### Using Homebrew (macOS)\n\nIf you are on macOS and use Homebrew, you can install kimspect via our tap:\n\n```bash\nbrew tap koithos/cli/kimspect\nbrew install kimspect\n```\n\n### Using Krew (kubectl Plugin Manager)\n\nIf you use `kubectl` and have Krew installed, you can install kimspect as a kubectl plugin:\n\n```bash\nkubectl krew install kimspect\n```\n\n## Usage\n\n### Get image details with multiple filters\n\n```bash\n# List Pod Images in a Namespace\nkimspect get images --namespace default\n\n# List Pod Images on a Specific Node\nkimspect get images -N node-name\n# or\nkimspect get images --node node-name\n\n# Note: When using the `--node` flag, the `--namespace` parameter is ignored as it will show pods from all namespaces on the specified node.\n\n# List Images for a Specific Pod\nkimspect get images -p pod-name\n# or\nkimspect get images --pod pod-name\n\n# You can combine filters to get more specific results. For example, to get images for a specific pod on a specific node:\nkimspect get images -N node-name -p pod-name\n\n# List images from all namespaces\nkimspect get images --all-namespaces\n\n# Filter images by registry\nkimspect get images --registry \"docker.io\" --namespace kube-system\n\n# Show all images EXCEPT from docker.io\nkimspect get images --exclude-registry \"docker.io\" --all-namespaces\n\n# Show all images EXCEPT from specific node\nkimspect get images --exclude-registry \"docker.io\" -n kube-system -o wide\n\n# Filter images by registry in a specific node\nkimspect get images --registry \"quay.io\" --node node-name\n\n# Filter images by registry across all namespaces\nkimspect get images --registry \"quay.io\" --all-namespaces\n\n# Enable verbose logging\nkimspect get images -v  # WARN\nkimspect get images -vv  # INFO\nkimspect get images -vvv  # DEBUG\nkimspect get images -vvvv  # TRACE\n\n# Use JSON log format\nkimspect get images -vvv --log-format json\n```\n\nkimspect displays information in a clean tabular format:\n\n```\nkimspect get images -o wide\nPOD                                NAMESPACE  CONTAINER       REGISTRY         IMAGE                          VERSION      DIGEST                                                            NODE\nmetrics-server-8664d5f5f7-krxm6    default    linkerd-proxy   cr.l5d.io        linkerd/proxy                  edge-25.3.3  496429c2a4a430d7acb4393d01c4d5971a8e3e385e5f47ceaac29dde009e7189  multi-node-cluster-worker\nmetrics-server-8664d5f5f7-krxm6    default    metrics-server  registry.k8s.io  metrics-server/metrics-server  v0.7.2       ffcb2bf004d6aa0a17d90e0247cf94f2865c8901dcab4427034c341951c239f9  multi-node-cluster-worker\nollama-model-phi-6b7b67778d-np2tx  default    linkerd-proxy   cr.l5d.io        linkerd/proxy                  edge-25.3.3  496429c2a4a430d7acb4393d01c4d5971a8e3e385e5f47ceaac29dde009e7189  multi-node-cluster-worker\nollama-model-phi-6b7b67778d-np2tx  default    server          docker.io        ollama/ollama                  latest       e2c9ab127d555aa671d06d2a48ab58a2e544bbdaf6fa93313dbb4fb8bb73867c  multi-node-cluster-worker\nollama-models-store-0              default    server          docker.io        ollama/ollama                  latest       e2c9ab127d555aa671d06d2a48ab58a2e544bbdaf6fa93313dbb4fb8bb73867c  multi-node-cluster-worker\n```\n\n## Development\n\n### Prerequisites\n\n- Rust 1.85 or later\n- Kubernetes cluster access\n- `kubectl` installed \u0026 configured with your cluster\n\n### Building from Source\n\n```bash\n# clone kimspect project\ncd kimspect\ncargo build --release\n```\n\n### Testing\n\nkimspect includes comprehensive tests covering various aspects of the codebase. The tests are organized in the `tests` directory.\n\nTo run the tests:\n\n```bash\n# Run all tests\ncargo test\n\n# Run tests with output\ncargo test -- --nocapture\n\n# Run specific test\ncargo test test_process_pod\n```\n\n## Releasing\n\nThis project uses `cargo-release` to automate the release process, ensuring that the version in `Cargo.toml` and the Git tag are synchronized.\n\n### Prerequisites\n\n1.  Install `cargo-release`:\n\n    ```bash\n    cargo install cargo-release\n    ```\n\n2.  Ensure your working directory is clean (all changes committed).\n3.  Make sure you are on the main branch and have pulled the latest changes.\n\n### Steps\n\n- Run `bash scripts/cargo_release.sh \u003cVERSION\u003e` to update the version in the `Cargo.toml` file and create a Git tag.\n- Once that is done, push the code to main, and a release workflow will be triggered which builds multi-platform binaries and distributes them via multiple channels.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoithos%2Fkimspect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkoithos%2Fkimspect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkoithos%2Fkimspect/lists"}