ahmetb/kubectx · error
no kubeconfig files loaded
Error message
no kubeconfig files loaded
What it means
Package-level sentinel error (errNoFiles) returned by Kubeconfig mutation methods like ModifyCurrentContext and UnsetCurrentContext when k.files is empty — i.e. Parse()/Load() never populated any kubeconfig file entries. Writing current-context is impossible because no file is open.
Source
Thrown at internal/kubeconfig/kubeconfig.go:54
Path() string
}
type Loader interface {
Load() ([]ReadWriteResetCloser, error)
}
type fileEntry struct {
f ReadWriteResetCloser
path string
config *yaml.RNode
}
type Kubeconfig struct {
loader Loader
files []fileEntry
}
var errNoFiles = errors.New("no kubeconfig files loaded")
func (k *Kubeconfig) WithLoader(l Loader) *Kubeconfig {
k.loader = l
return k
}
func (k *Kubeconfig) Close() error {
var firstErr error
for _, fe := range k.files {
if err := fe.f.Close(); err != nil && firstErr == nil {
firstErr = err
}
}
return firstErr
}
func (k *Kubeconfig) Parse() error {
rwcs, err := k.loader.Load()View on GitHub (pinned to 12ad6fb22e)
Solutions
- Ensure Parse() is called after WithLoader before mutating the Kubeconfig
- Check that the loader found a kubeconfig file (KUBECONFIG env var or ~/.kube/config)
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at internal/kubeconfig/kubeconfig.go:54 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ahmetb/kubectx@12ad6fb22e (2026-09-02).
Data as JSON: /api/errors/66d9c02d13f24d90.
Report an issue: GitHub.