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:
| Key | Effect |
|---|---|
Enter, o | Open detail, Overview tab. |
d | Open detail in describe mode (Overview, expanded sections). |
y | Open detail, YAML tab. |
l | Open 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
The object’s YAML with 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 diff in the confirmation modal, type the object name, and confirm. Errors surface inline. Toggling Edit on and off preserves your scroll position 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.
| Control | Description |
|---|---|
| Container | Picker for the source container. |
| Tail | 100, 500, 2000, or All. Default is 500. |
| Follow | Stream new lines as they arrive. Disabled when Previous is checked. |
| Previous | Logs from the previous container instance after a restart or crash. |
| Filter | Substring (case-insensitive) or regex. Toggle the Regex flag to switch modes. Invalid regex shows “(invalid regex)” without breaking the stream. |
| Reload | Restarts 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 uses the owner’s own selector, so it shows exactly the pods that object governs: a workload’s matched pods, a PVC’s mounting pods, every pod in a Namespace, and so on. The list is live, like any other table.
A handful of workloads select pods only by complex expressions Buoy can’t watch directly; in that case the tab shows a warning instead of a list.
Endpoints
Available on Services. Renders the backing endpoints grouped by ready and not-ready.
Related
Available on Pods, PersistentVolumeClaims, and PersistentVolumes. Each related object links to its own detail view.
| From | Shows |
|---|---|
| Pod | Owning workload, the node it runs on, mounted PVCs. |
| PVC | The PV it’s bound to, and the pods mounting it. |
| PV | The PVC it’s bound to, and its 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.
Timeline
Available on every kind. A single activity stream that fuses events, container lifecycle, condition transitions, and (for workloads) revision history into one canvas. Press T to open it. Timeline replaces the old standalone events table. See timeline.md for the full reference.
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. A hierarchical view of the resource’s schema, drawn from the schema the cluster publishes.
History
Available on Deployment, StatefulSet, DaemonSet, and Argo Rollout.
Each revision is reconstructed from the workload’s own rollout history. A revision card shows the revision number, creation time, status, and change-cause. Click the header to expand a 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
A Helm release isn’t a single Kubernetes object, so it opens a dedicated layout instead of the standard tabs: 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.
| Key | Tab |
|---|---|
1 to 9 | Jump to the Nth visible tab. |
O | Overview |
y | YAML |
T | Timeline |
l | Logs (Pod) |
s | Shell (Pod) |
p | Pods |
e | Endpoints (Service) |
r | Related |
A | Allocation (Node) |
n | Neighbors (Pod) |
S | Scheduling (Pod) |
R | Rollout |
H | HPA |
V | VPA |
P | Permissions |
m | Open 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.