From a5847a8039d2754dd2908a13e4625b31f7404d9a Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Sun, 29 Mar 2026 19:29:23 +0300 Subject: feat(cli): add workspace and pane management commands --- README.md | 42 +++++++++++++++++++++++++++++------------- 1 file changed, 29 insertions(+), 13 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index c0ac109f..e474179c 100644 --- a/README.md +++ b/README.md @@ -192,7 +192,7 @@ see [`SOCKET_API.md`](./SOCKET_API.md) for request shapes, examples, and subscri - **notification hooks**: richer agent/script-side state reporting on top of the socket foundation, so unsupported tools can report status directly to herdr. - **in-app preferences**: rerun onboarding and adjust things like sound and toast notifications without editing config by hand. - **native notifications**: OS-level notifications when an agent needs attention and herdr isn't in focus. -- **agent cli wrapper**: `herdr pane ...`, `herdr wait ...`, and similar shell-friendly commands layered on top of the socket API. +- **expanded cli wrapper**: more shell-friendly commands on top of the socket API, especially broader workspace/pane management and streaming event wrappers. ## built with agents @@ -204,21 +204,37 @@ there will be rough edges. if you hit one, [open an issue](https://github.com/og ## cli -current built-in commands: - -``` -herdr launch herdr -herdr update download and install the latest version -herdr --version print version -herdr --default-config print default configuration -herdr --no-session start without restoring or saving sessions -herdr --help show help +built-in commands: + +```text +herdr launch herdr +herdr update download and install the latest version +herdr workspace list list workspaces +herdr workspace create ... create a workspace +herdr workspace get inspect one workspace +herdr workspace focus focus a workspace +herdr workspace rename ... rename a workspace +herdr workspace close close a workspace +herdr pane list ... list panes +herdr pane get inspect one pane +herdr pane read ... read pane output +herdr pane split ... split a pane +herdr pane close close a pane +herdr pane send-text send text without submitting +herdr pane send-keys send keypresses like Enter +herdr pane run send text and press Enter +herdr wait output ... block until output matches +herdr wait agent-state ... block until pane reaches a state +herdr --version print version +herdr --default-config print default configuration +herdr --no-session start without restoring or saving sessions +herdr --help show help ``` -programmatic control today lives in the socket API: -- [`SOCKET_API.md`](./SOCKET_API.md) +pane ids can be passed either as socket ids like `p_1_1` or in a shorter human form like `1-1`. -shell-friendly wrapper commands like `herdr pane ...` and `herdr wait ...` are planned on top of that API. +these commands are thin wrappers over the socket API: +- [`SOCKET_API.md`](./SOCKET_API.md) ## building from source -- cgit v1.2.3