Skip to content

v0.9.0

Choose a tag to compare

@jefflinse jefflinse released this 07 Jun 00:37
· 10 commits to main since this release

Studio power features: preview, copy, and request chaining

This release turns the interactive studio (clic -i <spec>) into a real
workflow tool, and makes its keyboard navigation consistent throughout.

Live request preview

The bottom pane now shows exactly what ctrl+s will send — resolved method,
URL, headers, and body for HTTP, or the resolved command line for exec/
lambda — updating live as you type. After a response arrives it stays
available on a new request view, so you can always see what went out.

Copy as curl / clic / URL

Press c to copy the current request as a ready-to-run curl command, as the
equivalent headless clic invocation, as just the URL, or to copy the response
body — straight to your clipboard. "Copy as clic" hands you the exact command
line to reproduce, headlessly, a request you built interactively.

Request chaining

Press x on a response to capture any value (picked from the JSON by path) as a
{{variable}}, then reference {{name}} in any later command's field — it is
substituted when you send. v lists what you have captured, and the top bar
shows a live count. Build one request from the output of another without leaving
the keyboard.

Consistent navigation

Keyboard navigation is now unified around one model: tab/shift+tab cycle the
panes (groups → commands → request → response, wrapping), esc steps back
toward the command tree, arrows move within and between columns, and enter
drills in or runs. The request form joins the ring at its edges — tab off the
last field flows into the response, shift+tab off the first returns to commands
— while still honoring required-field validation. In the response, ←→ switch
the view (pretty / headers / raw / request) and ↑↓ scroll. The response pane
is now always reachable, fixing a dead end where leaving it stranded you with no
way back.

Headless usage is unchanged — every command is still a plain subcommand you can
script, and --body/flags take precedence.