agentworks-cli 0.2.1__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/.gitignore +1 -4
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/CHANGELOG.md +92 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/PKG-INFO +205 -87
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/README.md +204 -86
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/agents/manager.py +209 -87
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/catalog.py +3 -1
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/cli.py +621 -200
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/__init__.py +21 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/bash.py +13 -11
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/install.py +9 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/powershell.py +24 -12
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/spec.py +29 -6
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/completions/zsh.py +20 -14
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/config.py +59 -13
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/db.py +353 -33
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/doctor.py +6 -3
- agentworks_cli-0.4.0/agentworks/errors.py +117 -0
- agentworks_cli-0.4.0/agentworks/nerf-config.yaml +16 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/output.py +36 -49
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sample-config.toml +25 -3
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sessions/console.py +49 -18
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sessions/manager.py +273 -92
- agentworks_cli-0.4.0/agentworks/sessions/multi_console.py +1347 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sources.py +3 -1
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/ssh.py +12 -2
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vm_hosts/manager.py +22 -5
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/backup.py +20 -11
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/initializer.py +12 -3
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/manager.py +179 -53
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/azure.py +2 -1
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/lima.py +12 -5
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/proxmox_api.py +3 -1
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/workspaces/backends/vm.py +12 -5
- agentworks_cli-0.4.0/agentworks/workspaces/manager.py +1149 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/pyproject.toml +2 -1
- agentworks_cli-0.4.0/tests/test_agents.py +67 -0
- agentworks_cli-0.4.0/tests/test_completions.py +276 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_config.py +48 -0
- agentworks_cli-0.4.0/tests/test_consoles.py +1653 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_db.py +223 -21
- agentworks_cli-0.4.0/tests/test_error_wrapper.py +438 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/uv.lock +1 -1
- agentworks_cli-0.2.1/agentworks/nerf-config.yaml +0 -16
- agentworks_cli-0.2.1/agentworks/workspaces/backends/local.py +0 -119
- agentworks_cli-0.2.1/agentworks/workspaces/manager.py +0 -1080
- agentworks_cli-0.2.1/tests/test_agents.py +0 -30
- agentworks_cli-0.2.1/tests/test_completions.py +0 -103
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/.python-version +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/agents/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/agents/templates.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/catalog.toml +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/git_credentials/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/git_credentials/azdo.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/git_credentials/base.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/git_credentials/github.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/remote_exec.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sessions/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sessions/templates.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/sessions/tmux.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/ssh_config.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vm_hosts/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/base.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/bootstrap_script.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/cloud_init.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/proxmox.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/provisioners/wsl2.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/vms/templates.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/workspaces/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/workspaces/backends/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/workspaces/templates.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/agentworks/workspaces/tmuxinator.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/pypi-dist/.gitignore +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/__init__.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/conftest.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_authorized_keys.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_bootstrap_script.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_catalog.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_cloud_init.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_doctor.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_exec_target.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_initializer.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_name_validation.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_nerf_plugin.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_proxmox_api.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_remote_exec.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_session_liveness.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_ssh_config.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_templates.py +0 -0
- {agentworks_cli-0.2.1 → agentworks_cli-0.4.0}/tests/test_tmuxinator.py +0 -0
|
@@ -26,6 +26,7 @@ rulesync.local.jsonc
|
|
|
26
26
|
rulesync.lock
|
|
27
27
|
|
|
28
28
|
# Rulesync - generated output (regenerate with: npx rulesync generate)
|
|
29
|
+
.agents/
|
|
29
30
|
CLAUDE.md
|
|
30
31
|
.claude
|
|
31
32
|
.claudeignore
|
|
@@ -33,10 +34,6 @@ CLAUDE.md
|
|
|
33
34
|
.cursor/
|
|
34
35
|
.cursorrules
|
|
35
36
|
.cursorignore
|
|
36
|
-
.github/*
|
|
37
|
-
!.github/workflows
|
|
38
|
-
!.github/ISSUE_TEMPLATE
|
|
39
|
-
!.github/PULL_REQUEST_TEMPLATE.md
|
|
40
37
|
.copilotignore
|
|
41
38
|
AGENTS.md
|
|
42
39
|
GEMINI.md
|
|
@@ -1,5 +1,97 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.4.0](https://github.com/WayfarerLabs/agentworks/compare/v0.3.0...v0.4.0) (2026-06-01)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **console:** configurable layout and restore-session ([73bdf68](https://github.com/WayfarerLabs/agentworks/commit/73bdf681581825c8838398bc291839ddb8cbe82f))
|
|
9
|
+
* **console:** configurable layout and restore-session for accidental shell kills ([5d5ae48](https://github.com/WayfarerLabs/agentworks/commit/5d5ae487869ac31bb82bad21f1b9bc191e0aacae))
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Bug Fixes
|
|
13
|
+
|
|
14
|
+
* **console:** include console name in untagged-pane warnings and check set-option result ([a48adf8](https://github.com/WayfarerLabs/agentworks/commit/a48adf80dfb78bb6264918b55fef1072d5898b10))
|
|
15
|
+
* **console:** only mirror swap-pane into local map on success ([7f33652](https://github.com/WayfarerLabs/agentworks/commit/7f336525aa27ef4eedefd0d93c0c9a517e8c1f72))
|
|
16
|
+
* **console:** pass console name through _live_best_effort and refine restore-session error messages ([eec0b62](https://github.com/WayfarerLabs/agentworks/commit/eec0b62afb14cd946ccc9234ef19266f5340a6bd))
|
|
17
|
+
* **console:** restore-session raises on any partial split/tag failure ([97f72aa](https://github.com/WayfarerLabs/agentworks/commit/97f72aa32c65923ffe43ff844219b3e92ef0976d))
|
|
18
|
+
* **console:** shlex-quote cd-failure diagnostic and reword restore-session help ([c0fa16b](https://github.com/WayfarerLabs/agentworks/commit/c0fa16bda5c0de0348a998b27d9e4e5c8b711fb5))
|
|
19
|
+
* **console:** validate restore-session tag permutation, allowlist named_console, clean docstring and sample-config ([72d3815](https://github.com/WayfarerLabs/agentworks/commit/72d3815ea7ac6a84b13e8be175f9bc6e99a47d0d))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Performance Improvements
|
|
23
|
+
|
|
24
|
+
* **console:** single-pass tag validation, in-memory reorder, warn on missing pane id ([c8f8362](https://github.com/WayfarerLabs/agentworks/commit/c8f8362cb6f07c45744650f5ee579fc8da605696))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
### Documentation
|
|
28
|
+
|
|
29
|
+
* **console:** clarify reinit_workspace docstring on detection vs always-applied steps ([b7e548b](https://github.com/WayfarerLabs/agentworks/commit/b7e548bcf3396f3fa339551c0b93485209a20890))
|
|
30
|
+
|
|
31
|
+
## [0.3.0](https://github.com/WayfarerLabs/agentworks/compare/v0.2.1...v0.3.0) (2026-06-01)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
### ⚠ BREAKING CHANGES
|
|
35
|
+
|
|
36
|
+
* split completion command into show/install with shell autodetection
|
|
37
|
+
* drop local workspaces; all workspaces are VM-scoped
|
|
38
|
+
|
|
39
|
+
### Features
|
|
40
|
+
|
|
41
|
+
* **cli:** add 'aw console' command group ([dc833bd](https://github.com/WayfarerLabs/agentworks/commit/dc833bdc55ee02bb8e36c24a5e0b08fb91bdd0e6))
|
|
42
|
+
* **cli:** Ctrl-C triggers per-op rollback; clean SIGINT exit ([0648b16](https://github.com/WayfarerLabs/agentworks/commit/0648b16f9d98c686c63a59eb1b2cac2cad9f8625))
|
|
43
|
+
* **cli:** Ctrl-C triggers per-op rollback; clean SIGINT exit ([03ab4d0](https://github.com/WayfarerLabs/agentworks/commit/03ab4d0cf7ea4a6a7287443e6e79af6b8b97242c))
|
|
44
|
+
* **cli:** ship 'agw' as a short-name alias for the agentworks binary ([c99c044](https://github.com/WayfarerLabs/agentworks/commit/c99c044ed0073308cc427aaa13f3cb31b82567f5))
|
|
45
|
+
* **completions:** wire console commands for zsh/bash/powershell ([6181cb7](https://github.com/WayfarerLabs/agentworks/commit/6181cb751cc633333eac39b7e10d802507ef313c))
|
|
46
|
+
* **consoles:** add --add-admin-shell flag for legacy vm-console behavior ([f337f38](https://github.com/WayfarerLabs/agentworks/commit/f337f38eba60b7dea78c315dcddf4e01f82940a4))
|
|
47
|
+
* **consoles:** add 'Waiting for session to restart...' status line ([8fc20a7](https://github.com/WayfarerLabs/agentworks/commit/8fc20a7bdbac58f1894e301688f7dbd82b7249b4))
|
|
48
|
+
* **consoles:** announce attach/build/rebuild path in console attach ([17d14aa](https://github.com/WayfarerLabs/agentworks/commit/17d14aa26451aa49ec5f7e592a8835c1d0c1c5d4))
|
|
49
|
+
* **consoles:** hold windows open indefinitely; silent poll with banner when session is down ([10c002c](https://github.com/WayfarerLabs/agentworks/commit/10c002c410646ebe97f678f824eec69c64c92339))
|
|
50
|
+
* **consoles:** infer --vm from sessions, add --all-running, fix variadic positional completions ([11c5742](https://github.com/WayfarerLabs/agentworks/commit/11c574210f00aed8e67ddef6ff91063dd46d9d5b))
|
|
51
|
+
* **consoles:** infer --vm from sessions, add --all-running, fix variadic positional completions ([6bf8308](https://github.com/WayfarerLabs/agentworks/commit/6bf8308f467f5359b23a748d0454d9de56287c43))
|
|
52
|
+
* **consoles:** show 'Waiting for session to restart...' after exit; use 'exited' ([780373b](https://github.com/WayfarerLabs/agentworks/commit/780373b6fe2e39a319c24a6f0bf6c61e73d14ca9))
|
|
53
|
+
* **consoles:** tmux orchestration with shell panes and live sync ([1ebc1b1](https://github.com/WayfarerLabs/agentworks/commit/1ebc1b19d27714bdbfc39eec1951ee8d460c7cd8))
|
|
54
|
+
* **db:** add consoles and console_sessions tables ([f255397](https://github.com/WayfarerLabs/agentworks/commit/f255397310f4e92cb96c82383a8c75baa211dfe0))
|
|
55
|
+
* named consoles with curated session lists ([d7a36c2](https://github.com/WayfarerLabs/agentworks/commit/d7a36c2d8d37fef835deb62f791794c690c26035))
|
|
56
|
+
* **sessions:** add multi_console core orchestration ([a0adfc8](https://github.com/WayfarerLabs/agentworks/commit/a0adfc8dbfea7485639b5fcdb34cdd68ddc8ecee))
|
|
57
|
+
* ship 'agw' as a short-name alias for the agentworks CLI ([32be51a](https://github.com/WayfarerLabs/agentworks/commit/32be51a29e9d34551aa45650b83522ef810d0096))
|
|
58
|
+
* support creating a new agent as part of session create ([f50b7a8](https://github.com/WayfarerLabs/agentworks/commit/f50b7a8b572199306532c75ac9a0530dd028c467))
|
|
59
|
+
* support creating a new agent as part of session create ([7502755](https://github.com/WayfarerLabs/agentworks/commit/7502755e72d345a664d7415214166453bd9db52b))
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
### Bug Fixes
|
|
63
|
+
|
|
64
|
+
* _rehome_partial_state_hint mentions partial-copy possibility ([d31e55a](https://github.com/WayfarerLabs/agentworks/commit/d31e55af665e4b7fff44ff4188926e0260887e62))
|
|
65
|
+
* accurate install path and dot-source wording in powershell script header ([cf8fa14](https://github.com/WayfarerLabs/agentworks/commit/cf8fa14b19d95b447b60bdef7a2f1773bda42524))
|
|
66
|
+
* clean up agent grants for local workspaces in migration 26 and drop now-dead defensive code ([78b2254](https://github.com/WayfarerLabs/agentworks/commit/78b225420692174276875c22fbbaf5b57b6264e4))
|
|
67
|
+
* **completions:** symlink bash completion under 'agw' so lazy-loading works ([9b32c82](https://github.com/WayfarerLabs/agentworks/commit/9b32c8293bb3d5284d82dabea1ab2b1ff32b58c9))
|
|
68
|
+
* **consoles:** detect probe failure on --all-running; update help/docstring ([b411955](https://github.com/WayfarerLabs/agentworks/commit/b411955c05425530fe746c925bf384d0ffb6a896))
|
|
69
|
+
* **consoles:** drop auto admin-shell window from named consoles ([44d9f37](https://github.com/WayfarerLabs/agentworks/commit/44d9f373fa130d2be2d74808f25eb7f57bb478c0))
|
|
70
|
+
* **consoles:** make placeholder window name collision-proof; warn on list-windows failure ([6d387e1](https://github.com/WayfarerLabs/agentworks/commit/6d387e1931fbd8bc3a0587caca1c4ff9f90d9f0c))
|
|
71
|
+
* **consoles:** retry attach loop with ~10s grace to survive session restart (closes [#51](https://github.com/WayfarerLabs/agentworks/issues/51)) ([98f4354](https://github.com/WayfarerLabs/agentworks/commit/98f43544b04c361cfbc3f17ac4eea16556f6e431))
|
|
72
|
+
* cspell -- Americanize 'normalises'/'Recognises' and allow 'delenv'/'autodetection' ([3432f7d](https://github.com/WayfarerLabs/agentworks/commit/3432f7db1578424be986076d31b3de66024ef856))
|
|
73
|
+
* point grant-recovery hints at the real CLI command ([a2c8189](https://github.com/WayfarerLabs/agentworks/commit/a2c81890f1fa87e149ba1b0c49f2a088643fd025))
|
|
74
|
+
* revert grant-all DB grant on Ctrl-C during group add ([cb7f15b](https://github.com/WayfarerLabs/agentworks/commit/cb7f15bde65c331a65b44144d85f020743be25c5))
|
|
75
|
+
* revert grant-all DB grant on Ctrl-C during the insert too ([1f52b5b](https://github.com/WayfarerLabs/agentworks/commit/1f52b5b6199009cbc47f436e7e7e6f96054c02fc))
|
|
76
|
+
* route group membership through stored linux_group, add migration 22 test ([d0f8dbb](https://github.com/WayfarerLabs/agentworks/commit/d0f8dbbcb80fd53c2495183a0c1542824ca434e7))
|
|
77
|
+
* **sessions:** stop creating duplicate console windows on restart; deprecate 'aw vm console' ([1874426](https://github.com/WayfarerLabs/agentworks/commit/18744269a34120568bd3d8aa1572db5cbf758f2c))
|
|
78
|
+
* surface --shell hint in doctor and call PowerShell wiring a dot-source line ([e3e1672](https://github.com/WayfarerLabs/agentworks/commit/e3e167270db22f8894cf9e45ff1c231ff4093351))
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
### Documentation
|
|
82
|
+
|
|
83
|
+
* **consoles:** clarify --vm selection matches existing CLI conventions ([8940709](https://github.com/WayfarerLabs/agentworks/commit/8940709138ad4f27a9ab2ea0309fd1923541f653))
|
|
84
|
+
* **consoles:** de-emphasize --vm in primary examples (auto-detected) ([d97e99a](https://github.com/WayfarerLabs/agentworks/commit/d97e99ac453512455f5c3e66fde0b8d3af262d43))
|
|
85
|
+
* **consoles:** soften restart comment and surface deprecation in vm --help ([b658c46](https://github.com/WayfarerLabs/agentworks/commit/b658c46b1a3b6c4c678c10061002e51ce96a162f))
|
|
86
|
+
* distinguish domain-error vs unexpected-error paths in --debug section ([065801e](https://github.com/WayfarerLabs/agentworks/commit/065801e33b55420080149a5ea67de03754d3d71f))
|
|
87
|
+
* name-positional examples in Getting Started and VM command table ([27fe300](https://github.com/WayfarerLabs/agentworks/commit/27fe3009cf43b9743f5bc84ba5adebf798e3c294))
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
### Code Refactoring
|
|
91
|
+
|
|
92
|
+
* drop local workspaces; all workspaces are VM-scoped ([e6236e6](https://github.com/WayfarerLabs/agentworks/commit/e6236e6c2969cd56efc9bd3cde35bfc37eceb9fc))
|
|
93
|
+
* split completion command into show/install with shell autodetection ([a6d1af4](https://github.com/WayfarerLabs/agentworks/commit/a6d1af4d8bfac4973765f99040f190fcc24dd9fc))
|
|
94
|
+
|
|
3
95
|
## [0.2.1](https://github.com/WayfarerLabs/agentworks/compare/v0.2.0...v0.2.1) (2026-05-27)
|
|
4
96
|
|
|
5
97
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentworks-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: CLI for orchestrating workspace lifecycle across multiple compute targets
|
|
5
5
|
Project-URL: Homepage, https://github.com/WayfarerLabs/agentworks
|
|
6
6
|
Project-URL: Repository, https://github.com/WayfarerLabs/agentworks
|
|
@@ -134,9 +134,9 @@ settings) can be used to control how tools behave within the context of this wor
|
|
|
134
134
|
The Agentworks workspace mechanism fully supports any number of workspaces mapping to the same
|
|
135
135
|
underlying repository. To simplify administration, each is a full independent clone.
|
|
136
136
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
137
|
+
Workspaces always live on a VM. An earlier iteration supported local (on-workstation) workspaces,
|
|
138
|
+
but they did not support agents (which require Linux user management only available on VMs), so they
|
|
139
|
+
were removed to keep the model focused.
|
|
140
140
|
|
|
141
141
|
### Agents - the Actor
|
|
142
142
|
|
|
@@ -160,6 +160,10 @@ concurrent workloads running across their VMs, workspaces, and agents. Agentwork
|
|
|
160
160
|
operator to attach to and detach from them as needed to monitor progress or interact with the
|
|
161
161
|
workload, and then to stop, restart, and delete them to manage their lifecycle.
|
|
162
162
|
|
|
163
|
+
For day-to-day work across many sessions, see [Named consoles](#named-consoles): curated tmux views
|
|
164
|
+
that group the sessions you're actively focused on, optionally with extra shell panes pre-opened in
|
|
165
|
+
each session's window.
|
|
166
|
+
|
|
163
167
|
## Key Principles
|
|
164
168
|
|
|
165
169
|
### Opinionated Consistency
|
|
@@ -236,12 +240,16 @@ Sessions are built on [tmux](https://github.com/tmux/tmux), which provides persi
|
|
|
236
240
|
sessions that survive disconnects and support attach/detach. Each session maps 1:1 to a tmux session
|
|
237
241
|
on the VM.
|
|
238
242
|
|
|
239
|
-
Agentworks provides
|
|
243
|
+
Agentworks provides several console layers for interacting with sessions:
|
|
240
244
|
|
|
241
245
|
- **Workspace console** (`workspace console`): a tmuxinator-managed tmux session with one window per
|
|
242
|
-
session in the workspace, plus an admin shell.
|
|
243
|
-
|
|
244
|
-
|
|
246
|
+
session in the workspace, plus an admin shell. Good for staying inside a single workspace.
|
|
247
|
+
- **Named consoles** (`console`): persistent, named tmux sessions that aggregate a curated subset of
|
|
248
|
+
sessions across any workspaces on a VM, with optional extra shell panes per session window.
|
|
249
|
+
Recommended when you juggle sessions across workspaces or want a focused view of the few you're
|
|
250
|
+
actively working on.
|
|
251
|
+
- **VM console** (`vm console`, _deprecated_): a dynamically-built tmux session spanning every
|
|
252
|
+
session on the VM. Replaced by named consoles; will be removed in a future release.
|
|
245
253
|
|
|
246
254
|
Agent-mode sessions run on per-agent tmux sockets for proper process isolation and terminal resize
|
|
247
255
|
propagation. See the [tmux Architecture](#tmux-architecture) section for details.
|
|
@@ -273,8 +281,8 @@ uv run agentworks config init # creates ~/.config/agentworks/config.toml
|
|
|
273
281
|
Edit the config file (at minimum, set your SSH key paths), then:
|
|
274
282
|
|
|
275
283
|
```bash
|
|
276
|
-
agentworks vm create
|
|
277
|
-
agentworks workspace create
|
|
284
|
+
agentworks vm create my-vm # provision + initialize a VM
|
|
285
|
+
agentworks workspace create my-workspace # create a workspace on the VM
|
|
278
286
|
agentworks workspace shell my-workspace
|
|
279
287
|
```
|
|
280
288
|
|
|
@@ -287,23 +295,38 @@ agentworks workspace shell my-workspace
|
|
|
287
295
|
|
|
288
296
|
## Global Options
|
|
289
297
|
|
|
290
|
-
| Flag | Description
|
|
291
|
-
| ------------------- |
|
|
292
|
-
| `--non-interactive` | Disable all interactive prompts
|
|
298
|
+
| Flag | Description |
|
|
299
|
+
| ------------------- | ---------------------------------------------------------------------------- |
|
|
300
|
+
| `--non-interactive` | Disable all interactive prompts |
|
|
301
|
+
| `--debug` | Print the full Python traceback on unhandled errors (also via `AGW_DEBUG=1`) |
|
|
293
302
|
|
|
294
303
|
When `--non-interactive` is set (or stdin is not a TTY), commands that would normally prompt for
|
|
295
304
|
missing values (VM selection, workspace selection, name generation) will fail with a clear error
|
|
296
305
|
indicating which flag is required. Auto-selection still works: if there is exactly one VM or
|
|
297
306
|
workspace, it is used without prompting.
|
|
298
307
|
|
|
308
|
+
Domain errors (SSH timeouts, validation failures, missing resources, etc.) surface as a single clean
|
|
309
|
+
line: `Error: <message>`. Truly unexpected failures (internal bugs, OS-level errors, third-party
|
|
310
|
+
library failures) also get a clean single-line message, plus the full traceback appended to
|
|
311
|
+
`~/.config/agentworks/logs/error.log` for debugging. Pass `--debug` (or set `AGW_DEBUG=1`) to print
|
|
312
|
+
the traceback to stderr instead.
|
|
313
|
+
|
|
314
|
+
Pressing Ctrl-C during a long-running operation triggers best-effort cleanup. Where the operation
|
|
315
|
+
can roll back (e.g. `vm create` during the provisioning phase, `workspace create`, `agent create`,
|
|
316
|
+
`session create`) it undoes the partial DB / on-VM state and prints `Cancelling X... rolling back.`.
|
|
317
|
+
Where rollback isn't possible (`vm reinit`, `agent reinit`, the init phase of `vm create`) it prints
|
|
318
|
+
a recovery hint: the next command to run (`vm reinit`, `vm delete --force`, ...). Every cancellation
|
|
319
|
+
exits with the conventional SIGINT exit code (130).
|
|
320
|
+
|
|
299
321
|
## Commands
|
|
300
322
|
|
|
301
323
|
### Top-level
|
|
302
324
|
|
|
303
|
-
| Command
|
|
304
|
-
|
|
|
305
|
-
| `agentworks doctor`
|
|
306
|
-
| `agentworks completion
|
|
325
|
+
| Command | Description |
|
|
326
|
+
| ------------------------------- | -------------------------------------- |
|
|
327
|
+
| `agentworks doctor` | Check environment and config |
|
|
328
|
+
| `agentworks completion show` | Print the completion script to stdout |
|
|
329
|
+
| `agentworks completion install` | Install the completion script in-place |
|
|
307
330
|
|
|
308
331
|
### VM Hosts
|
|
309
332
|
|
|
@@ -321,7 +344,7 @@ Manage virtual machines across Lima (local or remote), Azure, and WSL2.
|
|
|
321
344
|
|
|
322
345
|
| Command | Description |
|
|
323
346
|
| ------------------------------------------------ | ------------------------------------------ |
|
|
324
|
-
| `agentworks vm create
|
|
347
|
+
| `agentworks vm create <name>` | Create a new VM (provision + initialize) |
|
|
325
348
|
| `agentworks vm list` | List VMs with status and resources |
|
|
326
349
|
| `agentworks vm describe <name>` | Show VM details, workspaces, and event log |
|
|
327
350
|
| `agentworks vm shell <name>` | SSH into a VM's home directory |
|
|
@@ -330,12 +353,13 @@ Manage virtual machines across Lima (local or remote), Azure, and WSL2.
|
|
|
330
353
|
| `agentworks vm reinit <name>` | Re-run initialization on a provisioned VM |
|
|
331
354
|
| `agentworks vm delete <name>` | Delete a VM (with confirmation) |
|
|
332
355
|
| `agentworks vm logs <name>` | Show SSH logs for a VM |
|
|
333
|
-
| `agentworks vm console <name>` |
|
|
356
|
+
| `agentworks vm console <name>` | _Deprecated_: use `agentworks console` |
|
|
334
357
|
| `agentworks vm add-git-credential <name> <cred>` | Add or update a git credential |
|
|
335
358
|
|
|
336
|
-
`vm create
|
|
337
|
-
`--disk`, and `--azure-vm-size`. These are
|
|
338
|
-
|
|
359
|
+
`vm create <name>` takes the VM name as a required positional. Optional flags: `--platform`,
|
|
360
|
+
`--vm-host`, `--admin-username`, `--cpus`, `--memory`, `--disk`, and `--azure-vm-size`. These are
|
|
361
|
+
immutable provisioning parameters stored in the database. All initialization behavior (packages,
|
|
362
|
+
install commands, etc.) is driven by config.
|
|
339
363
|
|
|
340
364
|
`vm reinit` re-runs the initialization phase using the current config without reprovisioning the VM.
|
|
341
365
|
Changes to config (new packages, different install commands, etc.) are picked up automatically.
|
|
@@ -345,28 +369,29 @@ message shows what will be deleted. Pass `--yes` to skip the prompt.
|
|
|
345
369
|
|
|
346
370
|
### Workspaces
|
|
347
371
|
|
|
348
|
-
Manage workspaces on VMs
|
|
372
|
+
Manage workspaces on VMs.
|
|
349
373
|
|
|
350
|
-
| Command
|
|
351
|
-
|
|
|
352
|
-
| `agentworks workspace create
|
|
353
|
-
| `agentworks workspace describe <name>`
|
|
354
|
-
| `agentworks workspace shell <name>`
|
|
355
|
-
| `agentworks workspace console <name>`
|
|
356
|
-
| `agentworks workspace list`
|
|
357
|
-
| `agentworks workspace copy <source>`
|
|
358
|
-
| `agentworks workspace rehome <name>`
|
|
359
|
-
| `agentworks workspace
|
|
360
|
-
| `agentworks workspace delete <name>`
|
|
374
|
+
| Command | Description |
|
|
375
|
+
| ------------------------------------------- | ----------------------------------- |
|
|
376
|
+
| `agentworks workspace create <name>` | Create a workspace on a VM |
|
|
377
|
+
| `agentworks workspace describe <name>` | Show workspace details and sessions |
|
|
378
|
+
| `agentworks workspace shell <name>` | Open a plain shell into a workspace |
|
|
379
|
+
| `agentworks workspace console <name>` | Open the workspace console (tmux) |
|
|
380
|
+
| `agentworks workspace list` | List workspaces |
|
|
381
|
+
| `agentworks workspace copy <source> <name>` | Copy a workspace to a new VM |
|
|
382
|
+
| `agentworks workspace rehome <name>` | Move workspace to a new path |
|
|
383
|
+
| `agentworks workspace reinit <name>` | Reinit workspace infrastructure |
|
|
384
|
+
| `agentworks workspace delete <name>` | Delete a workspace |
|
|
361
385
|
|
|
362
|
-
`workspace create
|
|
386
|
+
`workspace create <name>` takes the workspace name as a required positional. Optional flags: `--vm`,
|
|
387
|
+
`--template`, and `--open-vscode`.
|
|
363
388
|
|
|
364
389
|
`workspace console` opens a tmuxinator session (`ws-<name>-console`) with an admin-shell window plus
|
|
365
390
|
one window per session in the workspace. Pass `--recreate` to kill and rebuild the console. This is
|
|
366
391
|
the recommended way to interact with sessions from within VS Code or any terminal on the VM.
|
|
367
392
|
|
|
368
|
-
`workspace copy
|
|
369
|
-
|
|
393
|
+
`workspace copy <source> <name>` copies a workspace to a new VM workspace. Accepts `--vm`. Source
|
|
394
|
+
and destination can be the same VM (a clone) or different VMs.
|
|
370
395
|
|
|
371
396
|
`workspace delete` requires `--force` if the workspace has sessions. Running sessions are killed
|
|
372
397
|
during deletion. Pass `--yes` to skip the confirmation prompt.
|
|
@@ -375,21 +400,21 @@ during deletion. Pass `--yes` to skip the confirmation prompt.
|
|
|
375
400
|
|
|
376
401
|
Manage agents (isolated Linux users) on VMs. Agents are VM-scoped and access workspaces via grants.
|
|
377
402
|
|
|
378
|
-
| Command
|
|
379
|
-
|
|
|
380
|
-
| `agentworks agent create
|
|
381
|
-
| `agentworks agent list [--vm <vm>]`
|
|
382
|
-
| `agentworks agent describe <name>`
|
|
383
|
-
| `agentworks agent reinit <name>`
|
|
384
|
-
| `agentworks agent workspace
|
|
385
|
-
| `agentworks agent workspace
|
|
386
|
-
| `agentworks agent workspace
|
|
387
|
-
| `agentworks agent workspace
|
|
388
|
-
| `agentworks agent workspace
|
|
389
|
-
| `agentworks agent
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
403
|
+
| Command | Description |
|
|
404
|
+
| -------------------------------------------------- | ------------------------------ |
|
|
405
|
+
| `agentworks agent create <name> [--vm]` | Create an agent on a VM |
|
|
406
|
+
| `agentworks agent list [--vm <vm>]` | List agents |
|
|
407
|
+
| `agentworks agent describe <name>` | Show agent details and grants |
|
|
408
|
+
| `agentworks agent reinit <name>` | Re-run agent setup |
|
|
409
|
+
| `agentworks agent grant-workspace <name> <ws>...` | Grant workspace access |
|
|
410
|
+
| `agentworks agent grant-workspace <name> --all` | Grant access to all workspaces |
|
|
411
|
+
| `agentworks agent revoke-workspace <name> <ws>...` | Revoke workspace access |
|
|
412
|
+
| `agentworks agent revoke-workspace <name> --all` | Revoke all explicit grants |
|
|
413
|
+
| `agentworks agent shell <name> [--workspace <ws>]` | Shell into an agent |
|
|
414
|
+
| `agentworks agent delete <name>` | Delete an agent |
|
|
415
|
+
|
|
416
|
+
`agent create <name>` takes the agent name as a required positional. Optional flags: `--vm`,
|
|
417
|
+
`--template`, and `--grant-all-workspaces`.
|
|
393
418
|
|
|
394
419
|
`agent delete` requires `--force` if the agent has running sessions. Pass `--yes` to skip the
|
|
395
420
|
confirmation prompt.
|
|
@@ -401,7 +426,7 @@ Manage sessions (persistent tmux sessions running in workspaces). Session names
|
|
|
401
426
|
|
|
402
427
|
| Command | Description |
|
|
403
428
|
| -------------------------------------------- | ------------------------------ |
|
|
404
|
-
| `agentworks session create
|
|
429
|
+
| `agentworks session create <name>` | Create and start a session |
|
|
405
430
|
| `agentworks session describe <name>` | Show session details |
|
|
406
431
|
| `agentworks session list [--workspace <ws>]` | List sessions with status |
|
|
407
432
|
| `agentworks session attach <name>` | Attach to a running session |
|
|
@@ -409,25 +434,92 @@ Manage sessions (persistent tmux sessions running in workspaces). Session names
|
|
|
409
434
|
| `agentworks session restart <name>` | Restart a session |
|
|
410
435
|
| `agentworks session delete <name>` | Stop and delete a session |
|
|
411
436
|
| `agentworks session logs <name>` | Dump session scrollback buffer |
|
|
412
|
-
| `agentworks
|
|
437
|
+
| `agentworks console attach <name>` | Attach to a named console |
|
|
438
|
+
|
|
439
|
+
`session create <name>` takes the session name as a required positional. Optional flags:
|
|
440
|
+
`--workspace`, `--template`, `--admin`, and `--agent`. Workspace and mode (admin vs agent) are
|
|
441
|
+
prompted interactively if omitted; if agents exist on the VM and neither `--admin` nor `--agent` is
|
|
442
|
+
specified, you are prompted to choose. Pass `--new-workspace` to create a workspace on the fly (with
|
|
443
|
+
optional `--workspace-name`, `--workspace-template`, and `--vm`; `--workspace-name` defaults to the
|
|
444
|
+
session name). Pass `--new-agent` to create a new agent for the session (with optional
|
|
445
|
+
`--agent-name` and `--agent-template`; `--agent-name` defaults to the session name); the new agent
|
|
446
|
+
is provisioned on the workspace's VM. When a session created with `--new-workspace` or `--new-agent`
|
|
447
|
+
is later deleted, you are offered the option to delete the workspace and/or agent as well -- the
|
|
448
|
+
workspace if no other sessions remain on it, the agent if it has no other sessions and no explicit
|
|
449
|
+
grants.
|
|
450
|
+
|
|
451
|
+
### Named consoles
|
|
452
|
+
|
|
453
|
+
Named consoles are persistent, curated tmux views over sessions on a VM. Each console is its own
|
|
454
|
+
tmux session (`aw-console-<name>`) containing one window per included session, plus any extra shell
|
|
455
|
+
panes you want preloaded into a session's window.
|
|
456
|
+
|
|
457
|
+
| Command | Description |
|
|
458
|
+
| -------------------------------------------------------- | ----------------------------------------------------------------- |
|
|
459
|
+
| `agentworks console create <name> [sessions...]` | Create a console with the given sessions |
|
|
460
|
+
| `agentworks console list` | List consoles |
|
|
461
|
+
| `agentworks console describe <name>` | Show membership and shell layout |
|
|
462
|
+
| `agentworks console attach <name>` | Attach (builds tmux state on first attach) |
|
|
463
|
+
| `agentworks console delete <name>` | Tear down and remove the console |
|
|
464
|
+
| `agentworks console add-session <name> <sessions...>` | Add session windows |
|
|
465
|
+
| `agentworks console remove-session <name> <sessions...>` | Remove session windows |
|
|
466
|
+
| `agentworks console add-shell <name> <session>` | Add a shell pane to a session window (accepts `--cwd`, `--admin`) |
|
|
467
|
+
|
|
468
|
+
`console create` accepts:
|
|
469
|
+
|
|
470
|
+
- `--vm` -- target VM. **Inferred from the listed sessions when omitted**; if the listed sessions
|
|
471
|
+
span more than one VM, `console create` errors and asks you to pick one with `--vm`. When no
|
|
472
|
+
sessions are listed (e.g. with `--all` and no explicit specs), VM selection falls back to the
|
|
473
|
+
standard prompt (auto-picked if you have a single VM, prompted otherwise).
|
|
474
|
+
- `--all` -- include every session on the VM with 0 shells, appended after the explicit specs
|
|
475
|
+
(alphabetical).
|
|
476
|
+
- `--all-running` -- like `--all` but restricted to sessions whose live tmux state on the VM is OK
|
|
477
|
+
(one SSH round-trip; same probe `aw session list` uses). Mutually exclusive with `--all`. Requires
|
|
478
|
+
the VM to be reachable.
|
|
479
|
+
- `--add-admin-shell` -- include a top-level admin-shell window as window 0, matching the legacy
|
|
480
|
+
`vm console` behavior.
|
|
481
|
+
|
|
482
|
+
`console list` accepts `--vm` to filter.
|
|
483
|
+
|
|
484
|
+
Session specs use `name` or `name+N` shorthand, where `N` is the number of default shell panes to
|
|
485
|
+
pre-open in that session's window (running as the session's agent user, cwd = workspace root):
|
|
486
|
+
|
|
487
|
+
```sh
|
|
488
|
+
# A console with three sessions; the first two get extra shells.
|
|
489
|
+
# VM is inferred from the sessions.
|
|
490
|
+
agentworks console create backend auth-server+2 auth-tests+1 docs
|
|
491
|
+
|
|
492
|
+
# Same, but also include a top-level admin-shell window (window 0).
|
|
493
|
+
agentworks console create backend auth-server+2 auth-tests+1 docs --add-admin-shell
|
|
494
|
+
|
|
495
|
+
# Everything currently running on the VM, after the explicit specs.
|
|
496
|
+
agentworks console create live auth-server+2 --all-running
|
|
497
|
+
|
|
498
|
+
# All sessions on the VM (running or not). Needs --vm since no sessions are
|
|
499
|
+
# named explicitly to infer from.
|
|
500
|
+
agentworks console create everything --vm aw-private --all
|
|
501
|
+
|
|
502
|
+
# Add an admin shell rooted in a sub-path of the workspace.
|
|
503
|
+
agentworks console add-shell backend auth-server --cwd src/api --admin
|
|
504
|
+
```
|
|
413
505
|
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
to delete the workspace as well (if no other sessions remain).
|
|
506
|
+
Memberships and shell layouts persist in the database. `aw console attach` builds the tmux session
|
|
507
|
+
on first attach (or with `--recreate`); subsequent attaches reuse the running tmux session. Adding
|
|
508
|
+
or removing sessions/shells while a console is attached updates the live tmux state immediately
|
|
509
|
+
(best-effort); when the console isn't running on the VM, only the DB is updated and changes appear
|
|
510
|
+
on next attach.
|
|
420
511
|
|
|
421
512
|
### tmux Architecture
|
|
422
513
|
|
|
423
|
-
Each session runs in its own locked-down tmux session on the VM. There are
|
|
514
|
+
Each session runs in its own locked-down tmux session on the VM. There are several ways to interact
|
|
424
515
|
with sessions, at different scopes:
|
|
425
516
|
|
|
426
|
-
| Method
|
|
427
|
-
|
|
|
428
|
-
| `session attach`
|
|
429
|
-
| `workspace console`
|
|
430
|
-
| `
|
|
517
|
+
| Method | Scope | tmux session name | Entry point |
|
|
518
|
+
| ------------------------- | -------------------------------- | ------------------------ | --------------------------- |
|
|
519
|
+
| `session attach` | One session | `<session-name>` | Operator's machine |
|
|
520
|
+
| `workspace console` | One workspace | `ws-<workspace>-console` | On-VM or operator's machine |
|
|
521
|
+
| `console` | Curated subset across workspaces | `aw-console-<name>` | Operator's machine |
|
|
522
|
+
| `vm console` (deprecated) | All sessions on the VM | `vm-console` | Operator's machine |
|
|
431
523
|
|
|
432
524
|
#### Session tmux sessions
|
|
433
525
|
|
|
@@ -443,8 +535,9 @@ tmux pane PTY. The socket path is persisted in the database.
|
|
|
443
535
|
|
|
444
536
|
`workspace console` uses tmuxinator to create or attach to a `ws-<name>-console` session. The
|
|
445
537
|
tmuxinator config (`.tmuxinator.yml` in the workspace root) is regenerated whenever sessions change,
|
|
446
|
-
so the console always reflects the current set of sessions.
|
|
447
|
-
|
|
538
|
+
so the console always reflects the current set of sessions. Best for in-VM work scoped to a single
|
|
539
|
+
workspace (e.g. inside VS Code's integrated terminal). For curated views that span workspaces, use a
|
|
540
|
+
named console (`console attach <name>`).
|
|
448
541
|
|
|
449
542
|
```text
|
|
450
543
|
ws-myproject-console (tmuxinator, full tmux)
|
|
@@ -453,10 +546,33 @@ ws-myproject-console (tmuxinator, full tmux)
|
|
|
453
546
|
Window 3: myproject-debug attached to session
|
|
454
547
|
```
|
|
455
548
|
|
|
456
|
-
####
|
|
549
|
+
#### Named console
|
|
550
|
+
|
|
551
|
+
`console attach <name>` creates or attaches to the `aw-console-<name>` tmux session. Membership and
|
|
552
|
+
per-session shell layout are stored in the database. Each member session becomes a window running
|
|
553
|
+
the same wrapper used by the workspace and VM consoles, plus a configurable number of extra shell
|
|
554
|
+
panes (default user = session's agent user, default cwd = workspace root; override per pane with
|
|
555
|
+
`--cwd` / `--admin` on `console add-shell`).
|
|
556
|
+
|
|
557
|
+
```text
|
|
558
|
+
aw-console-backend
|
|
559
|
+
Window 1: auth-server attached session + 2 agent shells (workspace root)
|
|
560
|
+
Window 2: auth-tests attached session + 1 agent shell
|
|
561
|
+
Window 3: docs attached session only
|
|
562
|
+
```
|
|
563
|
+
|
|
564
|
+
The tmux session is built lazily on first `attach` (or rebuilt with `--recreate`). Adding or
|
|
565
|
+
removing sessions/shells while the console is attached updates tmux immediately; when offline, only
|
|
566
|
+
the DB is touched and changes appear on next attach. The mutation commands (`add-session`,
|
|
567
|
+
`remove-session`, `add-shell`) never auto-boot the VM; the explicit attach/repair commands
|
|
568
|
+
(`attach`, `restore-session`) do start a stopped VM, since their job is to bring live state up.
|
|
457
569
|
|
|
458
|
-
|
|
459
|
-
|
|
570
|
+
#### VM console (deprecated)
|
|
571
|
+
|
|
572
|
+
`vm console` creates or attaches to the `vm-console` session, which spans all sessions on the VM.
|
|
573
|
+
Built dynamically (not via tmuxinator). Superseded by named consoles, which let you curate which
|
|
574
|
+
sessions are in scope at any moment instead of seeing every session on the VM. Will be removed in a
|
|
575
|
+
future release.
|
|
460
576
|
|
|
461
577
|
#### Shells
|
|
462
578
|
|
|
@@ -494,17 +610,17 @@ Template commands support `{{session_name}}` and `{{workspace_name}}` variable s
|
|
|
494
610
|
by `session restart` -- useful for tools like Claude Code where `--resume` picks up the previous
|
|
495
611
|
conversation. If omitted, the regular `command` is used.
|
|
496
612
|
|
|
497
|
-
###
|
|
613
|
+
### Catalog
|
|
498
614
|
|
|
499
615
|
Browse and inspect the built-in catalog of installable tools.
|
|
500
616
|
|
|
501
|
-
| Command
|
|
502
|
-
|
|
|
503
|
-
| `agentworks
|
|
504
|
-
| `agentworks
|
|
617
|
+
| Command | Description |
|
|
618
|
+
| ------------------------------------ | ---------------------------------- |
|
|
619
|
+
| `agentworks catalog list` | List all available catalog entries |
|
|
620
|
+
| `agentworks catalog describe <name>` | Show details of a catalog entry |
|
|
505
621
|
|
|
506
|
-
`
|
|
507
|
-
|
|
622
|
+
`catalog list` accepts `--type` (apt-source, apt-package, system-install-cmd, user-install-cmd) and
|
|
623
|
+
`--source` (built-in, custom) filters.
|
|
508
624
|
|
|
509
625
|
### Config
|
|
510
626
|
|
|
@@ -525,7 +641,7 @@ full reference.
|
|
|
525
641
|
Key sections:
|
|
526
642
|
|
|
527
643
|
- `[operator]` -- SSH keys (required), additional authorized keys, SSH config management
|
|
528
|
-
- `[paths]` --
|
|
644
|
+
- `[paths]` -- VM workspace and VS Code workspace file directories
|
|
529
645
|
- `[defaults]` -- default platform, VM host
|
|
530
646
|
- `[vm_templates.*]` -- VM resources, apt packages, system install commands, mise
|
|
531
647
|
- `[admin.config]` -- admin user shell, dotfiles, git credentials, user install commands, mise
|
|
@@ -580,7 +696,7 @@ standalone via `claude plugin marketplace add`.
|
|
|
580
696
|
### Built-in Catalog
|
|
581
697
|
|
|
582
698
|
Agentworks ships a built-in catalog of common tools (apt sources, apt packages, system install
|
|
583
|
-
commands, and user install commands). Run `agentworks
|
|
699
|
+
commands, and user install commands). Run `agentworks catalog list` to see what is available.
|
|
584
700
|
Reference catalog entries by name in `vm_templates`, `admin.config`, and `agent_templates`.
|
|
585
701
|
User-defined entries in your config override built-in entries with the same name.
|
|
586
702
|
|
|
@@ -609,16 +725,18 @@ log.
|
|
|
609
725
|
## Shell Completion
|
|
610
726
|
|
|
611
727
|
```bash
|
|
612
|
-
|
|
613
|
-
agentworks completion zsh > ~/.zfunc/_agentworks
|
|
728
|
+
agentworks completion install
|
|
614
729
|
```
|
|
615
730
|
|
|
616
|
-
|
|
731
|
+
The shell is autodetected from `$SHELL`; pass `--shell {bash|zsh|powershell}` to override (or when
|
|
732
|
+
autodetection isn't unambiguous, e.g. on Windows). `completion install` writes the script to the
|
|
733
|
+
standard location for that shell. For PowerShell it also appends a dot-source line (`. "..."`) to
|
|
734
|
+
`$PROFILE`. For bash and zsh, if your rc file is missing the loader (`bash-completion` for bash,
|
|
735
|
+
`fpath=(~/.zfunc $fpath)` for plain zsh without a plugin manager), the installer prints a one-line
|
|
736
|
+
note telling you what to add.
|
|
617
737
|
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
autoload -Uz compinit && compinit
|
|
621
|
-
```
|
|
738
|
+
To print the script without installing, use `agentworks completion show` (handy for piping into your
|
|
739
|
+
own config-management flow).
|
|
622
740
|
|
|
623
741
|
Completions include dynamic VM, workspace, VM host, session, and template name lookups.
|
|
624
742
|
|