projmux 0.4.3 → 0.4.5
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.
- package/README-ko.md +32 -16
- package/README.md +78 -79
- package/package.json +5 -5
package/README-ko.md
CHANGED
|
@@ -82,7 +82,8 @@ projmux shell
|
|
|
82
82
|
- [Go 1.24+](https://go.dev/dl/) — binary 설치/빌드에 필요.
|
|
83
83
|
- [tmux](https://github.com/tmux/tmux/wiki/Installing) **≥ 3.4** — workspace 런타임. 이전 버전은 `display-popup -T` 등 projmux 가 사용하는 기능이 없습니다.
|
|
84
84
|
- [fzf](https://github.com/junegunn/fzf#installation) **≥ 0.55** — popup/sidebar picker. 멀티라인 피커가 `--marker-multi-line`, `--gap-line`, `--highlight-line` 을 사용하며 모두 0.55 까지 도입됐습니다.
|
|
85
|
-
-
|
|
85
|
+
- `bash`, `zsh`, `sh` 같은 Unix shell — `projmux shell` 이 만드는 앱 tmux
|
|
86
|
+
설정은 절대 경로 `$SHELL` 을 사용하고, 없으면 `/bin/sh` 로 fallback 합니다.
|
|
86
87
|
- [git](https://git-scm.com/downloads) — branch/status segment.
|
|
87
88
|
- `stty` — POSIX 터미널 제어, `projmux setup` 에서 사용. macOS/Linux 기본 시스템에 이미 포함, Windows 호스트에선 해당 없음.
|
|
88
89
|
- [kubectl](https://kubernetes.io/docs/tasks/tools/) — 선택, Kubernetes status segment 사용 시에만.
|
|
@@ -114,16 +115,17 @@ projmux version
|
|
|
114
115
|
|
|
115
116
|
### 선택: `PROJMUX_PROJDIR`
|
|
116
117
|
|
|
117
|
-
`PROJMUX_PROJDIR` 은 projmux 가 picker/탐색에서
|
|
118
|
-
루트입니다. 설정하지 않으면 projmux
|
|
119
|
-
|
|
120
|
-
|
|
118
|
+
`PROJMUX_PROJDIR` 은 명시적으로 설정했을 때 projmux 가 picker/탐색에서 사용할
|
|
119
|
+
primary 프로젝트 루트입니다. 설정하지 않으면 projmux 는 canonical repo root 를
|
|
120
|
+
가정하지 않습니다. 탐색은 pin, 살아 있는 session, saved workdirs, 그리고 존재할
|
|
121
|
+
때만 참고하는 약한 common-folder probe(`~/source`, `~/work`, `~/projects`,
|
|
122
|
+
`~/src`, `~/code`) 를 사용합니다.
|
|
121
123
|
|
|
122
124
|
```sh
|
|
123
|
-
export PROJMUX_PROJDIR="
|
|
125
|
+
export PROJMUX_PROJDIR="/your/path"
|
|
124
126
|
```
|
|
125
127
|
|
|
126
|
-
`~/.zshrc`
|
|
128
|
+
`~/.bashrc`, `~/.zshrc` 또는 사용 중인 shell rc 파일에 한 줄 추가하면 됩니다. 첫 실행
|
|
127
129
|
이후에는 `~/.config/projmux/projdir` 에 memoize 되므로, 이후 env 가 없어도 같은
|
|
128
130
|
루트가 유지됩니다.
|
|
129
131
|
|
|
@@ -134,7 +136,7 @@ prepend 됩니다. saved 파일에는 primary 만 memoize 됩니다.
|
|
|
134
136
|
|
|
135
137
|
```sh
|
|
136
138
|
# Linux/macOS — primary repo + 보조 검색 root
|
|
137
|
-
export PROJMUX_PROJDIR="
|
|
139
|
+
export PROJMUX_PROJDIR="/main/repos:/srv/work/repos"
|
|
138
140
|
```
|
|
139
141
|
|
|
140
142
|
#### 최초 설치 시 projdir 지정
|
|
@@ -147,6 +149,14 @@ PROJMUX_PROJDIR=/your/path projmux tmux apply
|
|
|
147
149
|
env 가 살아있는 첫 실행이 `~/.config/projmux/projdir` 에 값을 기록하므로,
|
|
148
150
|
이후 새 shell 에서 env 없이도 같은 루트가 유지됩니다.
|
|
149
151
|
|
|
152
|
+
저장된 값은 `projmux settings > Project Picker > Project Root` 에서도 관리할
|
|
153
|
+
수 있습니다. 이 화면은 현재 effective primary root 와 source
|
|
154
|
+
(`PROJMUX_PROJDIR`, `@projmux_projdir`, saved, not configured)를 보여주고,
|
|
155
|
+
saved 값이 env/tmux 값에 shadow 되는 상황을 따로 표시합니다. 경로를 직접
|
|
156
|
+
입력하거나 현재 project context 를 저장하거나 saved 값을 지울 수 있습니다.
|
|
157
|
+
Project Root 가 설정되지 않은 경우 직접 입력 prompt 는 `$HOME` 을 수정 가능한
|
|
158
|
+
fallback 으로 채웁니다. 저장하기 전까지는 effective root 로 간주하지 않습니다.
|
|
159
|
+
|
|
150
160
|
### 소스에서 빌드
|
|
151
161
|
|
|
152
162
|
```sh
|
|
@@ -217,16 +227,22 @@ PROJMUX_PROJDIR="/main/repos:/secondary/repos" projmux upgrade # Linux/macOS
|
|
|
217
227
|
## 프로젝트 탐색 방식
|
|
218
228
|
|
|
219
229
|
`projmux switch`는 pinned directory, 현재 살아 있는 tmux session, 발견된
|
|
220
|
-
project root를 합쳐 후보를 만듭니다.
|
|
221
|
-
`~/work`, `~/projects`, `~/src`, `~/code
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
230
|
+
project root를 합쳐 후보를 만듭니다. 명시적인 검색 root 가 없으면 기본 탐색은
|
|
231
|
+
존재하는 경우 `~/source`, `~/work`, `~/projects`, `~/src`, `~/code` 같은 약한
|
|
232
|
+
common-folder probe 를 참고합니다. canonical `~/source/repos` root 는 가정하지
|
|
233
|
+
않습니다. `projmux settings`의 `Project Picker > Add Project...`는 filesystem
|
|
234
|
+
root를 depth 3까지 스캔하므로 약한 probe 밖의 프로젝트도 picker 후보로 추가할
|
|
235
|
+
수 있습니다. 세션 이름은 정규화된 디렉터리 경로에서 만들어지므로 같은 프로젝트는
|
|
236
|
+
다시 실행해도 같은 tmux 세션으로 연결됩니다.
|
|
226
237
|
|
|
227
238
|
탐색 root를 영구적으로 커스터마이즈하려면 Project Picker 섹션의 다음 항목을
|
|
228
239
|
사용하세요:
|
|
229
240
|
|
|
241
|
+
- `Project Root` - saved primary root 를 설정/변경/해제합니다. Project Root 는
|
|
242
|
+
primary project context 로 쓰는 한 개의 루트이며, `PROJMUX_PROJDIR` env 와
|
|
243
|
+
tmux `@projmux_projdir` 값이 있으면 saved 값보다 우선됩니다. root 가
|
|
244
|
+
설정되지 않았을 때 직접 입력 prompt 는 `$HOME` 을 미리 채워 picker 를 열 수
|
|
245
|
+
있게 하지만, 저장 전에는 암묵적인 saved root 로 쓰지 않습니다.
|
|
230
246
|
- `+ Add Workdir...` - 디렉터리 하나를 saved workdirs 목록에 누적 추가.
|
|
231
247
|
- `Workdirs` - 저장된 workdir 검토/삭제. 환경변수 `PROJMUX_MANAGED_ROOTS` /
|
|
232
248
|
`TMUX_SESSIONIZER_ROOTS`가 설정되어 있으면 read-only 행으로 함께 표시되어
|
|
@@ -253,8 +269,8 @@ projmux는 새 tmux 세션을 만들 때마다 선택적 사용자 스크립트
|
|
|
253
269
|
|
|
254
270
|
| 변수 | 용도 |
|
|
255
271
|
| --- | --- |
|
|
256
|
-
| `PROJMUX_PROJDIR` | 현재 shell 의
|
|
257
|
-
| `PROJMUX_MANAGED_ROOTS` | 콜론 구분 검색 root 목록. saved/
|
|
272
|
+
| `PROJMUX_PROJDIR` | 현재 shell 의 명시적 primary 프로젝트 루트. OS-native PATH 형식 multi-value 지원: 첫 항목이 primary repo root (saved 파일에 memoize), 이후 항목은 managed-roots 검색 목록 앞에 prepend. |
|
|
273
|
+
| `PROJMUX_MANAGED_ROOTS` | 콜론 구분 검색 root 목록. saved/heuristic 목록보다 우선. |
|
|
258
274
|
| `PROJMUX_NOTIFY_HOOK` | AI desktop notification 을 내장 sender 대신 받는 외부 실행 파일. |
|
|
259
275
|
| `PROJMUX_USAGE_STATE_DIR` | AI 사용량 snapshot 캐시 디렉터리. 기본값은 `<state>/projmux/usage`. Dropbox/iCloud 같은 동기화 위치를 가리키게 하면 여러 머신 사이에서 authoritative 사용량을 공유할 수 있다. |
|
|
260
276
|
| `PROJMUX_USAGE_DEBUG` | 비어 있지 않으면 `projmux status usage` 의 adapter 오류를 swallow 하지 않고 stderr 로 surface 한다. |
|
package/README.md
CHANGED
|
@@ -7,6 +7,9 @@ sidebar navigation, generated keybindings, status metadata, and AI-pane
|
|
|
7
7
|
attention signals. It can run as its own tmux app (`projmux shell`) or install
|
|
8
8
|
the same behavior into your existing tmux server.
|
|
9
9
|
|
|
10
|
+
[](https://www.npmjs.com/package/projmux)
|
|
11
|
+
[](https://github.com/crevissepartners/projmux/actions/workflows/ci.yml)
|
|
12
|
+
|
|
10
13
|
[한국어 README](README-ko.md)
|
|
11
14
|
|
|
12
15
|
## Why projmux
|
|
@@ -29,26 +32,6 @@ for a daily terminal workspace:
|
|
|
29
32
|
self-contained tmux app, or install the generated snippet into your normal
|
|
30
33
|
tmux server.
|
|
31
34
|
|
|
32
|
-
## What's new in 0.4
|
|
33
|
-
|
|
34
|
-
- **`projmux setup` / `projmux init`** — diagnose terminal key delivery,
|
|
35
|
-
then auto-merge the right CSI-u bindings into Ghostty or Windows
|
|
36
|
-
Terminal configs.
|
|
37
|
-
- **`projmux doctor`** — runtime dependency report with minimum-version
|
|
38
|
-
enforcement (tmux 3.4, fzf 0.55).
|
|
39
|
-
- **`projmux focus`** — unified switch-client dispatch shared by the
|
|
40
|
-
AI reply-ready flow and the status-bar notify click.
|
|
41
|
-
- **Persistent notify queue** — `projmux notify push|list|ack|reconcile`
|
|
42
|
-
with TTL, severity, source, and target metadata. See
|
|
43
|
-
[notify-queue.md](docs/notify-queue.md).
|
|
44
|
-
- **Authoritative usage tracking** — `projmux usage` reads Claude's
|
|
45
|
-
OAuth usage endpoint and Codex's local rollout `rate_limits`. See
|
|
46
|
-
[usage-tracking.md](docs/usage-tracking.md).
|
|
47
|
-
- **Two-line clickable status bar** — row 0 keeps the native window
|
|
48
|
-
list (click a tab to switch), row 1 splits a notify HUD pill (left)
|
|
49
|
-
and a usage HUD bar (right). Both segments degrade gracefully on
|
|
50
|
-
narrow status budgets. See [statusbar.md](docs/statusbar.md).
|
|
51
|
-
|
|
52
35
|
## What It Does
|
|
53
36
|
|
|
54
37
|
- Creates or switches to tmux sessions from project directories.
|
|
@@ -81,10 +64,14 @@ Open the app once, then use its generated tmux bindings to:
|
|
|
81
64
|
|
|
82
65
|
## Requirements
|
|
83
66
|
|
|
84
|
-
- [
|
|
67
|
+
- [Node.js](https://nodejs.org/) and npm — required for the recommended npm
|
|
68
|
+
install path.
|
|
69
|
+
- [Go 1.24+](https://go.dev/dl/) — required only when installing with
|
|
70
|
+
`go install` or building from source.
|
|
85
71
|
- [tmux](https://github.com/tmux/tmux/wiki/Installing) **≥ 3.4** — the workspace runtime. Earlier versions miss `display-popup -T` and other features projmux depends on.
|
|
86
72
|
- [fzf](https://github.com/junegunn/fzf#installation) **≥ 0.55** — interactive popup/sidebar pickers. The multiline picker uses `--marker-multi-line`, `--gap-line`, and `--highlight-line`, which landed by 0.55.
|
|
87
|
-
-
|
|
73
|
+
- A Unix shell such as `bash`, `zsh`, or `sh` — `projmux shell` uses your
|
|
74
|
+
absolute `$SHELL` for the generated app config, falling back to `/bin/sh`.
|
|
88
75
|
- [git](https://git-scm.com/downloads) — branch/status metadata.
|
|
89
76
|
- `stty` — POSIX terminal control, used by `projmux setup`. Already shipped by every macOS / Linux base system; not applicable on Windows hosts.
|
|
90
77
|
- [kubectl](https://kubernetes.io/docs/tasks/tools/) — optional, only for the Kubernetes status segment.
|
|
@@ -92,40 +79,49 @@ Open the app once, then use its generated tmux bindings to:
|
|
|
92
79
|
Desktop notifications: Linux uses `notify-send`; WSL routes Windows toasts via
|
|
93
80
|
`powershell.exe`. Override either with `PROJMUX_NOTIFY_HOOK`.
|
|
94
81
|
|
|
95
|
-
Run `projmux doctor` any time to verify
|
|
96
|
-
tmux/fzf meet the minimum supported versions.
|
|
82
|
+
Run `projmux doctor` any time to verify runtime dependencies are on `PATH`
|
|
83
|
+
and that tmux/fzf meet the minimum supported versions. Terminal key delivery
|
|
84
|
+
is diagnosed separately with `projmux setup`.
|
|
97
85
|
|
|
98
86
|
## Install
|
|
99
87
|
|
|
100
88
|
```sh
|
|
101
|
-
|
|
89
|
+
npm install -g projmux
|
|
102
90
|
```
|
|
103
91
|
|
|
104
|
-
|
|
105
|
-
|
|
92
|
+
npm installs a small Node.js shim plus the matching platform binary package
|
|
93
|
+
for Linux and macOS on x64 or arm64. The shim marks the install as npm-managed
|
|
94
|
+
so `projmux update` and the Settings About screen can use the right upgrade
|
|
95
|
+
path.
|
|
96
|
+
|
|
97
|
+
Verify:
|
|
106
98
|
|
|
107
99
|
```sh
|
|
108
|
-
|
|
100
|
+
projmux version
|
|
109
101
|
```
|
|
110
102
|
|
|
111
|
-
|
|
103
|
+
If npm is not a fit for your machine, install with Go:
|
|
112
104
|
|
|
113
105
|
```sh
|
|
114
|
-
projmux
|
|
106
|
+
go install github.com/crevissepartners/projmux/cmd/projmux@latest
|
|
115
107
|
```
|
|
116
108
|
|
|
109
|
+
This drops the binary in `$(go env GOBIN)` (when set) or `$(go env GOPATH)/bin`
|
|
110
|
+
(default `~/go/bin`). Make sure that directory is on your `PATH`.
|
|
111
|
+
|
|
117
112
|
### Optional: `PROJMUX_PROJDIR`
|
|
118
113
|
|
|
119
|
-
`PROJMUX_PROJDIR` is the
|
|
120
|
-
discovery. It is optional
|
|
121
|
-
|
|
122
|
-
`~/source
|
|
114
|
+
`PROJMUX_PROJDIR` is the primary project root projmux uses for picker and
|
|
115
|
+
discovery when you explicitly configure it. It is optional; when unset,
|
|
116
|
+
projmux does not assume a canonical repo root. Discovery still uses pins, live
|
|
117
|
+
sessions, saved workdirs, and weak common-folder probes (`~/source`, `~/work`,
|
|
118
|
+
`~/projects`, `~/src`, `~/code`) when they exist.
|
|
123
119
|
|
|
124
120
|
```sh
|
|
125
|
-
export PROJMUX_PROJDIR="
|
|
121
|
+
export PROJMUX_PROJDIR="/your/path"
|
|
126
122
|
```
|
|
127
123
|
|
|
128
|
-
Add the line to `~/.zshrc
|
|
124
|
+
Add the line to `~/.bashrc`, `~/.zshrc`, or your shell's rc file. The resolved value is
|
|
129
125
|
memoized to `~/.config/projmux/projdir` after first use, so later shells keep
|
|
130
126
|
the same root even without the env var.
|
|
131
127
|
|
|
@@ -138,20 +134,28 @@ search list, so they participate in discovery just like
|
|
|
138
134
|
|
|
139
135
|
```sh
|
|
140
136
|
# Linux/macOS — primary repo + secondary search root
|
|
141
|
-
export PROJMUX_PROJDIR="
|
|
137
|
+
export PROJMUX_PROJDIR="/main/repos:/srv/work/repos"
|
|
142
138
|
```
|
|
143
139
|
|
|
144
|
-
#### Set the project root
|
|
140
|
+
#### Set the project root during setup
|
|
145
141
|
|
|
146
142
|
```sh
|
|
147
|
-
PROJMUX_PROJDIR=/your/path
|
|
148
|
-
PROJMUX_PROJDIR=/your/path projmux tmux apply
|
|
143
|
+
PROJMUX_PROJDIR=/your/path projmux shell
|
|
149
144
|
```
|
|
150
145
|
|
|
151
146
|
The first invocation that sees the env var writes
|
|
152
147
|
`~/.config/projmux/projdir`, so later shells without the env var still
|
|
153
148
|
resolve the same root.
|
|
154
149
|
|
|
150
|
+
You can also manage the saved value interactively with
|
|
151
|
+
`projmux settings > Project Picker > Project Root`. That screen shows the
|
|
152
|
+
effective primary root and source (`PROJMUX_PROJDIR`, `@projmux_projdir`,
|
|
153
|
+
saved, or not configured), shows when a saved value is shadowed by env/tmux,
|
|
154
|
+
and lets you set a path directly, use the current project context, or clear the
|
|
155
|
+
saved value. When no Project Root is configured, the direct-set prompt starts
|
|
156
|
+
with `$HOME` as an editable fallback; it is not treated as the effective root
|
|
157
|
+
until you save it.
|
|
158
|
+
|
|
155
159
|
### From source
|
|
156
160
|
|
|
157
161
|
```sh
|
|
@@ -173,13 +177,15 @@ projmux shell
|
|
|
173
177
|
```
|
|
174
178
|
|
|
175
179
|
projmux owns this tmux server, its generated config, status bar, and popup
|
|
176
|
-
bindings.
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
180
|
+
bindings. Cooperative terminals get `Alt-1`..`Alt-5` immediately, with no
|
|
181
|
+
terminal config. The left status badge shows the current project name; the
|
|
182
|
+
right side shows path, kube segment, git segment, and clock.
|
|
183
|
+
|
|
184
|
+
If a key does not fire, run `projmux setup` outside tmux to see which
|
|
185
|
+
sequences your terminal swallows. For supported terminals, preview the
|
|
186
|
+
fallback with `projmux init [terminal]`, then apply it with
|
|
187
|
+
`projmux init [terminal] --apply` (auto-detects when no terminal is given).
|
|
188
|
+
Dotfiles users on multi-machine setups should pass
|
|
183
189
|
`--allow-symlink` or `--config <path>` to make their intent explicit. Full
|
|
184
190
|
flow and the manual CSI-u fallback are in
|
|
185
191
|
[Terminal Keybindings](docs/keybindings.md).
|
|
@@ -190,54 +196,46 @@ for the supported versions.
|
|
|
190
196
|
|
|
191
197
|
## Upgrading
|
|
192
198
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
199
|
+
The Settings About screen is the normal interactive update surface: it shows
|
|
200
|
+
cached release status, installer source, Check Updates, Update Now, and
|
|
201
|
+
release notes. The startup update prompt uses the same cache and never reaches
|
|
202
|
+
the network.
|
|
203
|
+
To refresh the cached release status manually, run:
|
|
196
204
|
|
|
197
205
|
```sh
|
|
198
|
-
projmux
|
|
199
|
-
projmux upgrade --ref @v0.2.0 # pin a specific tag
|
|
200
|
-
projmux upgrade --ref @main # track a branch
|
|
201
|
-
projmux upgrade --target /usr/local/bin/projmux # replace another path
|
|
202
|
-
projmux upgrade --no-apply # skip 'projmux tmux apply'
|
|
203
|
-
projmux upgrade --dry-run # print the steps only
|
|
206
|
+
projmux update check
|
|
204
207
|
```
|
|
205
208
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
Pass a new project root inline to atomically switch the binary and the saved
|
|
211
|
-
projdir in one step:
|
|
212
|
-
|
|
213
|
-
```sh
|
|
214
|
-
PROJMUX_PROJDIR=/new/path projmux upgrade
|
|
215
|
-
|
|
216
|
-
# Multi-path also works; only the primary entry is persisted to the saved file.
|
|
217
|
-
PROJMUX_PROJDIR="/main/repos:/secondary/repos" projmux upgrade # Linux/macOS
|
|
218
|
-
# Windows: PROJMUX_PROJDIR="C:\main\repos;C:\secondary\repos"
|
|
219
|
-
```
|
|
209
|
+
Use Settings > About > Update or `projmux update apply` to update through the
|
|
210
|
+
detected installer. See [Upgrading](docs/upgrading.md) for npm, Go, GitHub
|
|
211
|
+
Release, and source-checkout details.
|
|
220
212
|
|
|
221
213
|
## Usage
|
|
222
214
|
|
|
223
215
|
Day-to-day, projmux is driven by tmux keybindings inside `projmux shell` — see
|
|
224
216
|
[Terminal Keybindings](docs/keybindings.md). For the full CLI surface (pins,
|
|
225
|
-
preview state, status helpers,
|
|
217
|
+
preview state, status helpers, updates, etc.), run `projmux help` or
|
|
226
218
|
`<command> --help`.
|
|
227
219
|
|
|
228
220
|
## How It Finds Projects
|
|
229
221
|
|
|
230
222
|
`projmux switch` combines pinned directories, live tmux sessions, and discovered
|
|
231
|
-
project roots.
|
|
232
|
-
as `~/source`, `~/work`, `~/projects`, `~/src`,
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
223
|
+
project roots. When no explicit search roots are configured, discovery uses
|
|
224
|
+
weak common-folder probes such as `~/source`, `~/work`, `~/projects`, `~/src`,
|
|
225
|
+
and `~/code` if they exist; it does not assume a canonical `~/source/repos`
|
|
226
|
+
root. `projmux settings` also has `Project Picker > Add Project...`, which
|
|
227
|
+
scans filesystem roots up to depth 3 so projects outside the weak probes can be
|
|
228
|
+
added to the picker. Session names are derived from normalized directory paths,
|
|
229
|
+
so a project keeps the same tmux session name across launches.
|
|
237
230
|
|
|
238
231
|
For permanent search-root customization, the Project Picker section also
|
|
239
232
|
includes:
|
|
240
233
|
|
|
234
|
+
- `Project Root` - set, change, or clear the saved primary root. This is the
|
|
235
|
+
one root used as the primary project context; env `PROJMUX_PROJDIR` and tmux
|
|
236
|
+
`@projmux_projdir` override the saved value until unset. If no root is
|
|
237
|
+
configured, the direct-set prompt pre-fills `$HOME` so the picker remains
|
|
238
|
+
usable without inventing an implicit saved root.
|
|
241
239
|
- `+ Add Workdir...` - append a single directory to the saved workdirs list.
|
|
242
240
|
- `Workdirs` - review and remove saved workdirs. The same picker also surfaces
|
|
243
241
|
any active `PROJMUX_MANAGED_ROOTS` / `TMUX_SESSIONIZER_ROOTS` env values as
|
|
@@ -264,8 +262,8 @@ and troubleshooting.
|
|
|
264
262
|
|
|
265
263
|
| Variable | Purpose |
|
|
266
264
|
| --- | --- |
|
|
267
|
-
| `PROJMUX_PROJDIR` |
|
|
268
|
-
| `PROJMUX_MANAGED_ROOTS` | Colon-separated list of search roots. Overrides the saved/
|
|
265
|
+
| `PROJMUX_PROJDIR` | Explicit primary project root for the current shell. Accepts an OS-native PATH-style multi-value: the first entry is the primary repo root (memoized to `~/.config/projmux/projdir`), and any additional entries are prepended to the managed-roots search list. |
|
|
266
|
+
| `PROJMUX_MANAGED_ROOTS` | Colon-separated list of search roots. Overrides the saved/heuristic list. |
|
|
269
267
|
| `PROJMUX_NOTIFY_HOOK` | External executable that receives AI desktop notifications instead of the built-in sender. |
|
|
270
268
|
| `PROJMUX_USAGE_STATE_DIR` | Override directory for the AI-usage snapshot cache. Defaults to `<state>/projmux/usage`. Point this at a synced location (Dropbox, iCloud Drive, etc) to share authoritative usage between machines. |
|
|
271
269
|
| `PROJMUX_USAGE_DEBUG` | When non-empty, surfaces adapter errors from `projmux status usage` to stderr instead of swallowing them. |
|
|
@@ -316,6 +314,7 @@ More documentation:
|
|
|
316
314
|
- [Statusbar](docs/statusbar.md)
|
|
317
315
|
- [Notify queue](docs/notify-queue.md)
|
|
318
316
|
- [Usage tracking](docs/usage-tracking.md)
|
|
317
|
+
- [Upgrading](docs/upgrading.md)
|
|
319
318
|
- [Hooks](docs/hooks.md)
|
|
320
319
|
- [Migration Plan](docs/migration-plan.md)
|
|
321
320
|
- [Repo Layout](docs/repo-layout.md)
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "projmux",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "tmux project session manager",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/crevissepartners/projmux#readme",
|
|
@@ -22,10 +22,10 @@
|
|
|
22
22
|
"LICENSE"
|
|
23
23
|
],
|
|
24
24
|
"optionalDependencies": {
|
|
25
|
-
"@projmux/darwin-arm64": "0.4.
|
|
26
|
-
"@projmux/darwin-x64": "0.4.
|
|
27
|
-
"@projmux/linux-arm64": "0.4.
|
|
28
|
-
"@projmux/linux-x64": "0.4.
|
|
25
|
+
"@projmux/darwin-arm64": "0.4.5",
|
|
26
|
+
"@projmux/darwin-x64": "0.4.5",
|
|
27
|
+
"@projmux/linux-arm64": "0.4.5",
|
|
28
|
+
"@projmux/linux-x64": "0.4.5"
|
|
29
29
|
},
|
|
30
30
|
"scripts": {
|
|
31
31
|
"package:npm": "scripts/package-npm.sh",
|