Plugins
Extend KubeGraf with plugins for popular Kubernetes ecosystem tools. Plugins add new views, commands, and integrations while maintaining the same fast, intuitive experience.
Available Plugins
Helm Built-in
View and manage Helm releases across your cluster.
- List releases with status and revision
- View release history and values
- Rollback to previous versions
- Uninstall releases
ArgoCD Built-in
Monitor ArgoCD applications and sync status.
- View application health and sync status
- Trigger sync operations
- View application resources
- Access ArgoCD UI links
Flux Built-in
Monitor Flux GitOps resources and reconciliation.
- View GitRepositories and HelmRepositories
- Monitor Kustomizations and HelmReleases
- Check reconciliation status
- Trigger manual reconciliation
Istio
Visualize Istio service mesh configuration.
- View VirtualServices and DestinationRules
- Monitor Gateway configurations
- Visualize traffic routing
- Check sidecar injection status
Cert-Manager
Monitor TLS certificates and issuers.
- View Certificate status and expiration
- Monitor CertificateRequests
- Check Issuer/ClusterIssuer status
- Trigger certificate renewal
Enabling Plugins
# config.yaml
plugins:
enabled:
- helm
- argocd
- flux
- istio
- cert-manager
Or enable via command line:
# Enable a plugin
kubegraf plugins enable argocd
# Disable a plugin
kubegraf plugins disable argocd
# List available plugins
kubegraf plugins list
Plugin Configuration
Each plugin can have specific configuration:
Helm Plugin
plugins:
helm:
# Path to helm binary (default: helm in PATH)
binary: "/usr/local/bin/helm"
# Show all namespaces by default
allNamespaces: true
ArgoCD Plugin
plugins:
argocd:
# ArgoCD server URL (auto-detected if not set)
server: "https://argocd.example.com"
# Use grpc-web for communication
grpcWeb: true
# Authentication token (or use ARGOCD_AUTH_TOKEN env)
# token: ""
Flux Plugin
plugins:
flux:
# Flux namespace (default: flux-system)
namespace: "flux-system"
# Show suspended resources
showSuspended: true
Istio Plugin
plugins:
istio:
# Istio system namespace
namespace: "istio-system"
# Show proxy status
showProxyStatus: true
Using Plugins
Terminal UI
Plugins add new tabs to the TUI. Access them with number keys or Tab:
| Key | Plugin Tab |
|---|---|
| 8 | Helm Releases |
| 9 | ArgoCD Apps |
| 0 | Flux Resources |
Web Dashboard
Plugins appear in the sidebar under their respective sections. Each plugin provides dedicated views and actions.
CLI Commands
Plugins extend the CLI with new commands:
# Helm commands
kubegraf helm list
kubegraf helm status my-release
kubegraf helm rollback my-release 2
# ArgoCD commands
kubegraf argocd list
kubegraf argocd sync my-app
kubegraf argocd diff my-app
# Flux commands
kubegraf flux list
kubegraf flux reconcile kustomization my-app
Plugin Actions
Helm Actions
| Key | Action |
|---|---|
| Enter | View release details |
| v | View values |
| h | View history |
| r | Rollback |
| Delete | Uninstall |
ArgoCD Actions
| Key | Action |
|---|---|
| Enter | View application |
| s | Sync application |
| d | View diff |
| o | Open in ArgoCD UI |
| r | Refresh |
Flux Actions
| Key | Action |
|---|---|
| Enter | View resource |
| r | Reconcile |
| p | Suspend/Resume |
| l | View logs |
Developing Plugins
KubeGraf supports custom plugins written in Go. Plugins implement the Plugin interface:
// Plugin interface
type Plugin interface {
// Metadata
Name() string
Version() string
Description() string
// Lifecycle
Init(ctx context.Context, client kubernetes.Interface) error
Shutdown() error
// Resources
Resources() []Resource
GetResource(kind, namespace, name string) (*Resource, error)
ListResources(kind, namespace string) ([]Resource, error)
// Actions
Actions(resource *Resource) []Action
Execute(action string, resource *Resource) error
// UI (optional)
Columns(kind string) []Column
Render(resource *Resource) string
}
See the Plugin Development Guide for details.
Tip: Use kubegraf plugins create my-plugin to scaffold a new plugin project.
Installing Third-Party Plugins
# Install from GitHub
kubegraf plugins install github.com/user/kubegraf-plugin
# Install from local path
kubegraf plugins install ./my-plugin
# Update a plugin
kubegraf plugins update my-plugin
# Remove a plugin
kubegraf plugins remove my-plugin
Plugin Directory
Plugins are stored in:
- macOS/Linux:
~/.config/kubegraf/plugins/ - Windows:
%APPDATA%\kubegraf\plugins\