A persistent prompt queue for agent-shell sessions, supporting multi-session dispatch with pause, resume, and archive lifecycle management. Queue state is serialized to plist, JSON, or YAML for session persistence across Emacs restarts. Interactive capture, edit, and item-view buffers allow queue manipulation without leaving Emacs. Fork operations split a queue across multiple sessions for parallel workloads.
This repository also includes agent-shell-menu.el: ACR-based transient menus
for navigating and controlling agent sessions, covering permission resolution,
action selection, command insertion, and collapse control. The menu requires
the queue and can be loaded separately with (require 'agent-shell-menu).
Requires Emacs 29.1+. Run once to clone and register the package:
(package-vc-install '(agent-shell-queue
:url "https://github.com/tychoish/agent-shell-queue"))Requires Emacs 30+. Installs on first load if not already present:
(use-package agent-shell-queue
:vc (:url "https://github.com/tychoish/agent-shell-queue")
:after agent-shell)git clone https://github.com/tychoish/agent-shell-queue ~/.emacs.d/elpa/agent-shell-queue(use-package agent-shell-queue
:load-path "~/.emacs.d/elpa/agent-shell-queue"
:after agent-shell)git clone https://github.com/tychoish/agent-shell-queue ~/.emacs.d/elpa/agent-shell-queue(add-to-list 'load-path "~/.emacs.d/elpa/agent-shell-queue")
(require 'agent-shell-queue)agent-shell-queue is also published as a development snapshot on
ELPAish, a self-hosted, GPG-signed
Emacs Lisp package archive. Add the snapshot stream to
package-archives and install normally with package-install:
(add-to-list 'package-archives
'("elpaish" . "https://tychoish.github.io/elpaish/snapshot/") t)
(package-refresh-contents)
(package-install 'agent-shell-queue)To verify package signatures, import the ELPAish signing key into
package.el’s keyring and enable signature checking:
(url-copy-file "https://tychoish.github.io/elpaish/elpaish-keyring.gpg"
"elpaish-keyring.gpg" t)
(package-import-keyring "elpaish-keyring.gpg")
(setq package-check-signature t)Detailed use-case guides live under docs/:
- Prompt Composition and Enqueueing
- Execution Control
- Task Interjection and Queue Inspection
- Parallel Workflows and Session Forking
- Persistence, Storage Backends and Backups
- Interactive Menus and Input Routing
See docs/api.org for the generated API reference, covering
agent-shell-menu, agent-shell-queue, agent-shell-queue-persistence,
agent-shell-queue-db, and agent-shell-queue-org.
Copyright (C) tychoish. GPL-3.0 or later. See the source file header for the full license text.