Get the FREE Ultimate OpenClaw Setup Guide →

tilt

npx machina-cli add skill aiskillstore/marketplace/tilt --openclaw
Files (1)
SKILL.md
4.5 KB

Tilt Development Environment

Automatic Reload Behaviors

Tilt live-reloads aggressively. Never suggest restarting tilt up or manually refreshing resources—Tilt handles this automatically in nearly all cases.

What Reloads Automatically

Change TypeWhat HappensYour Action
Tiltfile editsTilt re-evaluates the entire Tiltfile on saveJust save the file
Source code with live_updateFiles sync to container without rebuildJust save the file
Source code without live_updateFull image rebuild triggers automaticallyJust save the file
Kubernetes manifestsResources re-apply automaticallyJust save the file
Frontend with HMRBrowser updates via Hot Module ReplacementJust save the file
Backend with watch toolsProcess restarts via nodemon/air/watchexecJust save the file

When Restart IS Actually Needed

Restarting tilt up is required only for:

  • Tilt version upgrades
  • Changing Tilt's port or host settings
  • Recovering from Tilt crashes
  • Kubernetes context changes (switching clusters)

Verifying Updates Applied

Instead of restarting, verify updates propagated:

# Check resource status after saving
tilt get uiresource/<name> -o json | jq '.status.updateStatus'

# Watch for update completion
tilt wait --for=condition=Ready uiresource/<name> --timeout=60s

# Check recent logs for reload confirmation
tilt logs <resource> --since 1m
tilt logs <resource> --since 5m | rg -i "reload|restart|updated|synced"

Running tilt up

Always run tilt up in a tmux session using send-keys. This ensures:

  • Tilt survives Claude Code session reloads
  • Shell initialization runs (PATH, direnv, etc.)
SESSION=$(basename $(git rev-parse --show-toplevel 2>/dev/null) || basename $PWD)

# Start tilt in tmux (idempotent, send-keys for proper shell init)
if ! tmux has-session -t "$SESSION" 2>/dev/null; then
  tmux new-session -d -s "$SESSION" -n tilt
  tmux send-keys -t "$SESSION:tilt" 'tilt up' Enter
  echo "Started tilt in tmux session: $SESSION"
elif ! tmux list-windows -t "$SESSION" -F '#{window_name}' | grep -q "^tilt$"; then
  tmux new-window -t "$SESSION" -n tilt
  tmux send-keys -t "$SESSION:tilt" 'tilt up' Enter
  echo "Added tilt window to session: $SESSION"
else
  echo "Tilt already running in session: $SESSION"
fi

To check tilt output:

SESSION=$(basename $(git rev-parse --show-toplevel 2>/dev/null) || basename $PWD)
tmux capture-pane -p -t "$SESSION:tilt" -S -50

To stop tilt:

SESSION=$(basename $(git rev-parse --show-toplevel 2>/dev/null) || basename $PWD)
tmux send-keys -t "$SESSION:tilt" C-c

Never run tilt up directly in foreground or with run_in_background. Always use tmux.

Instructions

  • Use tilt get uiresources -o json to query resource status programmatically
  • Use tilt get uiresource/<name> -o json for detailed single resource state
  • Use tilt logs with --since, --tail, --json flags for log retrieval
  • Use tilt trigger <resource> to force updates when auto-reload didn't trigger
  • Use tilt wait to block until resources reach ready state
  • For Tiltfile authoring, see @TILTFILE_API.md
  • For complete CLI reference with JSON parsing patterns, see @CLI_REFERENCE.md

Quick Reference

Check Resource Status

tilt get uiresources -o json | jq '.items[] | {name: .metadata.name, runtime: .status.runtimeStatus, update: .status.updateStatus}'

Wait for Resource Ready

tilt wait --for=condition=Ready uiresource/<name> --timeout=120s

Get Resource Logs

tilt logs <resource>              # Current logs
tilt logs <resource> --since 5m   # Logs from last 5 minutes
tilt logs <resource> --tail 100   # Last 100 lines
tilt logs --json                  # JSON Lines output

Trigger Update

tilt trigger <resource>

Lifecycle Commands

tilt up        # Start Tilt
tilt down      # Stop and clean up
tilt ci        # CI/batch mode

Resource Status Values

  • RuntimeStatus: unknown, none, pending, ok, error, not_applicable
  • UpdateStatus: none, pending, in_progress, ok, error, not_applicable

References

Source

git clone https://github.com/aiskillstore/marketplace/blob/main/skills/0xbigboss/tilt/SKILL.mdView on GitHub

Overview

Tilt is a development environment manager for Kubernetes apps using Tiltfile authoring and the Tilt CLI. It enables automatic reloads on file changes, supports live updates, and provides commands to monitor status, trigger updates, and wait for readiness. This skill helps you manage Tilt deployments efficiently and reduces manual restarts.

How This Skill Works

Tilt watches edits to Tiltfiles and source code, re-evaluating and applying changes automatically in most cases. You interact with Tilt via CLI commands like tilt up, tilt get, tilt wait, tilt logs, and tilt trigger, and you can run Tilt inside a tmux session for stability across tool or code reloads.

When to Use It

  • When actively developing Kubernetes apps with Tilt and Tiltfiles.
  • When changes to Tiltfile or source code with live_update should auto-reload.
  • When you want to verify resource updates without restarting Tilt (status/logs).
  • When you need reliable session persistence by running Tilt inside tmux.
  • When upgrading Tilt or changing its port/host or Kubernetes context.

Quick Start

  1. Step 1: Start Tilt inside a tmux session and run tilt up.
  2. Step 2: Monitor status with tilt get uiresources -o json and observe updates.
  3. Step 3: Verify readiness with tilt wait and inspect logs via tilt logs.

Best Practices

  • Rely on Tilt's automatic reloads; avoid manual restarts except for upgrades or config changes.
  • Run tilt up in a persistent tmux session to survive code/tooling reloads.
  • Use tilt get and tilt wait to monitor readiness programmatically.
  • Use tilt trigger to force updates when auto-reload misses.
  • Keep Tiltfile edits small and use live_update for frequent frontend changes to minimize full rebuilds.

Example Use Cases

  • Start Tilt in a tmux session and monitor resource readiness with tilt get and tilt wait.
  • Edit the Tiltfile and let Tilt automatically re-evaluate on save.
  • Push frontend changes with live_update so containers sync without a full image rebuild.
  • If auto-reload stalls, run tilt trigger to force an update of a resource.
  • Check logs to confirm reloads, restarts, and update propagation.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers