Detail Views

A detail view is the per-object surface. It opens whenever you select a single row: by typing <resource> <name> in the command bar, pressing Enter or o on a table row, or following a deep link (buoy://...).

The view is built from tabs that render conditionally based on the object’s kind and group. A Pod gets Logs and Shell tabs; a Node gets Allocation; a Deployment gets History and Pods. The tab strip only shows what applies.

Contents

Opening a Detail View

From a table:

KeyEffect
Enter, oOpen detail, Overview tab.
dOpen detail in describe mode (Overview, expanded sections).
yOpen detail, YAML tab.
lOpen detail, Logs tab (Pod-only shortcut).

From the command bar:

pods my-pod
deployments api-server
nodes ip-10-0-1-23.ec2.internal

From a deep link, anywhere buoy://... URLs are recognized (other tabs, system links). Generate one for the current view with Cmd+L then the c l chord, or /link.

Tab Reference

Overview

The default tab. Shows metadata (labels, annotations, owner references, timestamps), spec, and status in collapsible sections. The conditions table is reused across kinds and renders any status.conditions array.

d opens the detail in “describe” mode, which expands every section by default for a kubectl-describe feel.

YAML

CodeMirror 6 with YAML syntax highlighting and a Cmd/Ctrl-F search panel. Read-only by default.

Click Edit (or use the Edit button in the tab strip) to switch to writable mode. Type changes, click Apply, review the unified diff in the confirmation modal, type the object name, and confirm. Errors surface inline. The editor’s read-only state hot-swaps via CodeMirror Compartments, so toggling Edit preserves scroll and any open search panel.

YAML editing details, including the apply behavior, live in mutations.md.

Logs

Available on Pods. Multi-container aware: the container picker lists regular containers, init containers, native sidecars, and ephemeral debug containers, with a suffix tag like (init) indicating the kind.

ControlDescription
ContainerPicker for the source container.
Tail100, 500, 2000, or All. Default is 500.
FollowStream new lines as they arrive. Disabled when Previous is checked.
PreviousLogs from the previous container instance after a restart or crash.
FilterSubstring (case-insensitive) or regex. Toggle the Regex flag to switch modes. Invalid regex shows “(invalid regex)” without breaking the stream.
ReloadRestarts the current log fetch.

The viewer sticks to the bottom while you are at the bottom, and stops sticking once you scroll up. When a filter is active, the visible-line count is shown below the controls.

The aggregated multi-pod view (/logs <selector>) follows the same controls but reads from every pod that matches the selector.

Shell

Available on Pods. Opens an interactive exec session in the container picker’s choice. Buoy can attach an ephemeral debug container using the default image from Settings, Debug Container.

Pods

Available on owners that select pods: Node, Deployment, StatefulSet, ReplicaSet, DaemonSet, Job, PodDisruptionBudget, Service, Argo Rollout, Argo Workflow, PersistentVolumeClaim, Namespace.

The list is derived without any extra API calls. For workloads that expose spec.selector.matchLabels, the watch uses that label selector. For a Workflow, the selector is workflows.argoproj.io/workflow=<name>. For a PVC, Buoy filters client-side by spec.volumes[].persistentVolumeClaim.name because no field selector exists. For a Namespace, every pod in the namespace is included.

Selectors that use matchExpressions only (no matchLabels) cannot drive a server-side watch and surface a warning.

Endpoints

Available on Services. Renders the backing endpoints grouped by ready and not-ready.

Available on Pods, PersistentVolumeClaims, and PersistentVolumes. The relationships are derived from object spec without round trips.

FromShows
PodOwning workload (from ownerReferences), node (spec.nodeName), mounted PVCs.
PVCBound PV (status.volumeName), pods mounting the PVC.
PVBound PVC (spec.claimRef), storage class.

Allocation

Available on Nodes. Per-node CPU and memory bars, chunked by the pods running on the node and colored by namespace. Mirrors the | allocation pipe view but scoped to one node.

Neighbors

Available on Pods. Lists the other pods on the same node, with the same allocation visualization.

Scheduling

Available on Pods. The scheduling explainer with four sub-tabs: Parameters, Existing Nodes, NodePools, and Summary. See scheduling.md for the full reference.

Events

Filtered to involvedObject.name and involvedObject.namespace, sorted by last-seen time descending. Shows reason, message, type, count, and age.

Metrics

Available on Pods, Nodes, Deployments, StatefulSets, DaemonSets, and Namespaces when Prometheus is configured. CPU, memory, and network charts with a range picker and a chart-vs-table toggle.

Explain

The kubectl explain equivalent. Hierarchical view of the resource’s schema, populated from the OpenAPI documents the apiserver exposes.

History

Available on Deployment, StatefulSet, DaemonSet, and Argo Rollout.

KindSource
Deployment, Argo RolloutOwned ReplicaSets. The Rollout uses the rollout.argoproj.io/revision annotation; the Deployment uses deployment.kubernetes.io/revision.
StatefulSet, DaemonSetOwned ControllerRevisions.

Each revision card shows the revision number, creation time, status, and change-cause annotation. Click the header to expand the unified diff against the previous revision. The current revision is expanded by default.

Permissions

Available on ServiceAccounts. Lists the RoleBindings and ClusterRoleBindings that reference the account, plus the resolved verbs.

HPA and VPA

Available on HorizontalPodAutoscaler (autoscaling/v2) and VerticalPodAutoscaler (autoscaling.k8s.io/v1) objects. See integrations/hpa-vpa.md.

Workflow, Templates, Workflows

Available on Argo Workflow CRs. See integrations/argo-workflows.md.

Rollout

Available on Argo Rollouts. See integrations/argo-rollouts.md.

ArgoCD

Available on ArgoCD Applications and ApplicationSets. See integrations/argocd.md.

KRO Tabs

KRO Resources, KRO Graph, and KRO Instances tabs surface on KRO ResourceGraphDefinitions and instances. See integrations/kro.md.

Kueue Tabs

Workload, ClusterQueue, LocalQueue, and Flavor tabs surface on Kueue CRs. See integrations/kueue.md.

Helm Sections

Helm releases are virtual objects synthesized from helm.sh/release.v1 Secrets. The detail view branches to a dedicated layout with History, Resources, Manifest, Values, and Notes sections. See integrations/helm.md.

NodeClaims and Managed Nodes

Available on Karpenter NodePools and NodeClass kinds (EC2NodeClass, AKSNodeClass, GCENodeClass). The NodeClaims tab lists the live NodeClaims tied to the pool or class. The Managed Nodes tab lists the Nodes those claims provisioned. See integrations/karpenter.md.

Plugin Tabs

Plugins can add tabs to any kind. They appear after the built-in tabs with the plugin’s name. They cannot replace or hide built-in tabs. See plugins/README.md.

Tab Shortcuts

The tab strip honors letter shortcuts. Capitalization matters when two tabs would otherwise collide.

KeyTab
1 to 9Jump to the Nth visible tab.
OOverview
yYAML
EEvents
lLogs (Pod)
sShell (Pod)
pPods
eEndpoints (Service)
rRelated
AAllocation (Node)
nNeighbors (Pod)
SScheduling (Pod)
RRollout
HHPA
VVPA
PPermissions
mOpen the Actions menu.

The c chord (c l, c k, c y, c n) copies a link, a kubectl command, the YAML, or the object name. See hotkeys.md for the full keymap.


Edit this page on GitLab