Manage Kubernetes kubeconfig files: merge, list, switch context, delete context.
konfuse is a CLI tool for kubeconfig management with 4 tools (merge, list, delete, use). All tools have descriptions (10-60 chars) and input schemas with typed parameters. However, descriptions are minimal and lack LLM-optimized guidance on WHEN to use each tool or WHAT happens on failure. Parameter descriptions are present but terse. No output schema documentation. Error handling exists but does not guide recovery. Tool names are verb-based (good), but descriptions lack context about prerequisites, side effects, and error recovery paths. Schemas are complete but descriptions fall short of production quality.
Delete a context and any orphaned cluster/user
List contexts, clusters, and users in the kubeconfig
Merge a kubeconfig file into the target kubeconfig
Switch the active context (sets current-context)
Descriptions are too brief (10-60 chars) and lack LLM-optimized guidance. 'Merge a kubeconfig file into the target kubeconfig' does not explain WHEN to use merge vs use, what conflicts mean, or how to recover from errors.
No output schema documentation. LLMs cannot plan downstream calls or extract required fields (e.g., what does merge return? Is it a list of changes, a status, or a full kubeconfig?). Responses are inferred from code but not declared.
Error handling exists (fail() function) but does not guide LLM recovery. Errors are JSON-formatted but lack actionable hints. E.g., 'context not found' should suggest 'Call list to see available contexts.'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | 2026-07-28+ | v2 |
Parameter descriptions are minimal. E.g., 'Target kubeconfig path' does not explain default behavior, format, or what happens if the file does not exist. Descriptions should be 50-150 chars with constraints.
No dry-run or confirmation pattern for destructive operations (delete, merge with overwrite). Agents can accidentally delete contexts or corrupt kubeconfigs. merge has dry_run flag (good), but delete lacks it.