@clipboard-health/groundcrew 4.52.6 → 4.52.7
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/lib/workspaces.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE1E,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,oBAAoB,CAAC;IAChC,QAAQ,EAAE,aAAa,CAAC;IACxB,yDAAyD;IACzD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,GAAG,mBAAmB,CAUtF;
|
|
1
|
+
{"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../../src/lib/workspaces.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE1E,OAAO,EAGL,KAAK,QAAQ,EACb,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAE/B,YAAY,EACV,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,oBAAoB,CAAC;IAChC,QAAQ,EAAE,aAAa,CAAC;IACxB,yDAAyD;IACzD,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,GAAG,mBAAmB,CAUtF;AA4ED,iBAAe,eAAe,CAC5B,MAAM,EAAE,cAAc,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED,iBAAe,sBAAsB,CACnC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAG1C;AAED,iBAAe,kBAAkB,CAC/B,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,wBAAwB,CAAC,CAenC;AAED,eAAO,MAAM,UAAU;IACf,IAAI,SAAS,cAAc,QAAQ,QAAQ,WAAW,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvF,KAAK;IACC,KAAK,SACD,cAAc,QAChB,MAAM,WACH,WAAW,GACnB,OAAO,CAAC,oBAAoB,CAAC;IAIhC,SAAS;IACT,UAAU;CACX,CAAC"}
|
package/dist/lib/workspaces.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* the `workspaces` API.
|
|
8
8
|
*/
|
|
9
9
|
import { detectHostCapabilities } from "./host.js";
|
|
10
|
-
import { readEnvironmentVariable
|
|
10
|
+
import { readEnvironmentVariable } from "./util.js";
|
|
11
11
|
import { isSignalAborted, } from "./workspaceAdapter.js";
|
|
12
12
|
export function resolveWorkspaceKind(arguments_) {
|
|
13
13
|
const { config, host } = arguments_;
|
|
@@ -38,11 +38,6 @@ const HOST_CAPABILITY_BY_KIND = {
|
|
|
38
38
|
zellij: "hasZellij",
|
|
39
39
|
};
|
|
40
40
|
const TMUX_SESSION_PER_TASK_ENV = "GROUNDCREW_TMUX_SESSION_PER_TASK";
|
|
41
|
-
const TMUX_SESSION_DEFAULT_WARNING = [
|
|
42
|
-
"WARNING: tmux window mode is deprecated; tmux session-per-task mode will become the default soon.",
|
|
43
|
-
`Opt in now with ${TMUX_SESSION_PER_TASK_ENV}=1.`,
|
|
44
|
-
"Migration: attach with 'tmux attach -t <task>' instead of 'tmux attach -t groundcrew:<task>'; each task gets its own tmux session; 'crew stop' and 'crew cleanup' close that managed session; set GROUNDCREW_KEEP_DEAD_WINDOWS=1 to keep exited scrollback.",
|
|
45
|
-
].join("\n");
|
|
46
41
|
const ADAPTER_LOADER_BY_KIND = {
|
|
47
42
|
cmux: async () => {
|
|
48
43
|
const { cmuxAdapter } = await import("./cmuxAdapter.js");
|
|
@@ -50,11 +45,7 @@ const ADAPTER_LOADER_BY_KIND = {
|
|
|
50
45
|
},
|
|
51
46
|
tmux: async () => {
|
|
52
47
|
const { createTmuxAdapter } = await import("./tmuxAdapter.js");
|
|
53
|
-
|
|
54
|
-
if (!sessionPerTask) {
|
|
55
|
-
writeError(TMUX_SESSION_DEFAULT_WARNING);
|
|
56
|
-
}
|
|
57
|
-
return createTmuxAdapter({ sessionPerTask });
|
|
48
|
+
return createTmuxAdapter({ sessionPerTask: resolveTmuxSessionPerTask() });
|
|
58
49
|
},
|
|
59
50
|
zellij: async () => {
|
|
60
51
|
const { zellijAdapter } = await import("./zellijAdapter.js");
|
package/docs/troubleshooting.md
CHANGED
|
@@ -29,14 +29,13 @@ This applies to the tmux backend only.
|
|
|
29
29
|
|
|
30
30
|
## Tmux Workspaces Share One Session By Default
|
|
31
31
|
|
|
32
|
-
By default the tmux backend runs every task as a window inside one shared `groundcrew` session, so opening your own extra window or split while attached lands it next to every other task.
|
|
32
|
+
By default the tmux backend runs every task as a window inside one shared `groundcrew` session, so opening your own extra window or split while attached lands it next to every other task. Attach with `tmux attach -t groundcrew:<task>`.
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
Migration plan:
|
|
34
|
+
If you prefer isolated tasks, set `GROUNDCREW_TMUX_SESSION_PER_TASK=1` in the env you launch `crew` from. Both modes are supported; pick whichever fits your workflow. In session-per-task mode:
|
|
37
35
|
|
|
36
|
+
- Each task gets its own dedicated tmux session named after the task id (cmux-style), tagged with the `@groundcrew_managed` tmux option.
|
|
38
37
|
- Attach with `tmux attach -t <task>` instead of `tmux attach -t groundcrew:<task>`.
|
|
39
|
-
-
|
|
38
|
+
- Windows are task-local tabs and panes are task-local splits.
|
|
40
39
|
- `crew stop` and `crew cleanup` close the whole managed task session, including extra windows and panes you opened inside it. Same-named user sessions without `@groundcrew_managed` are ignored.
|
|
41
40
|
- Finished task sessions disappear once the command exits unless `GROUNDCREW_KEEP_DEAD_WINDOWS=1` is set; with that env, `crew status` reports the kept session as `exited` for scrollback inspection.
|
|
42
41
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clipboard-health/groundcrew",
|
|
3
|
-
"version": "4.52.
|
|
3
|
+
"version": "4.52.7",
|
|
4
4
|
"description": "Linear-driven orchestrator that launches AI coding agents in git worktrees, with workspace lifecycle and usage tracking.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"agent",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"@vitest/coverage-v8": "5.0.2",
|
|
88
88
|
"dependency-cruiser": "18.4.0",
|
|
89
89
|
"husky": "9.1.7",
|
|
90
|
-
"jscpd": "5.
|
|
90
|
+
"jscpd": "5.3.3",
|
|
91
91
|
"knip": "6.35.1",
|
|
92
92
|
"lint-staged": "17.5.1",
|
|
93
93
|
"markdownlint-cli2": "0.23.3",
|