aiterm-mcp 0.43.0 → 0.43.1
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/CHANGELOG.md +9 -1
- package/README.ja.md +1 -1
- package/README.md +1 -1
- package/dist/harnesses/claude.js +11 -4
- package/dist/tmux-runtime.js +10 -5
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.43.1] - 2026-09-29
|
|
11
|
+
|
|
12
|
+
### 修正
|
|
13
|
+
|
|
14
|
+
- Codexを親にすると、子のClaude Codeの完了が親へ届かないことがあった(rabbitで再現)。子へ渡すStop hookが`node`をPATHから探す形で、Codexが起動したAitermのPATHにnodeの場所が入っていない端末では、hookが動かず完了の記録が書かれていなかった。hookのnodeは絶対pathで呼び、Homebrewの版付きの実体は更新でも残るopt側へ置き換える。
|
|
15
|
+
- Windowsで、PATHを固定したMCP登録(Cursor等)から起動されたAitermがpsmuxを見つけられなかった(foxで再現)。利用者用に加えて、PC全体用のWinGet Links(`C:\Program Files\WinGet\Links`)も探す。
|
|
16
|
+
|
|
10
17
|
## [0.43.0] - 2026-09-29
|
|
11
18
|
|
|
12
19
|
### 変更
|
|
@@ -1861,7 +1868,8 @@ prototype (preserved under `prototype/python/` as the porting source and referen
|
|
|
1861
1868
|
`ubuntu-latest` for Node 18/20/22, publishing to npm on `v*` tags with
|
|
1862
1869
|
provenance.
|
|
1863
1870
|
|
|
1864
|
-
[Unreleased]: https://github.com/kitepon/aiterm-mcp/compare/v0.43.
|
|
1871
|
+
[Unreleased]: https://github.com/kitepon/aiterm-mcp/compare/v0.43.1...HEAD
|
|
1872
|
+
[0.43.1]: https://github.com/kitepon/aiterm-mcp/compare/v0.43.0...v0.43.1
|
|
1865
1873
|
[0.43.0]: https://github.com/kitepon/aiterm-mcp/compare/v0.42.2...v0.43.0
|
|
1866
1874
|
[0.42.2]: https://github.com/kitepon/aiterm-mcp/compare/v0.42.1...v0.42.2
|
|
1867
1875
|
[0.42.1]: https://github.com/kitepon/aiterm-mcp/compare/v0.42.0...v0.42.1
|
package/README.ja.md
CHANGED
|
@@ -203,7 +203,7 @@ runtime-error store は canonical dotagents config の `collection.enabled: true
|
|
|
203
203
|
場合だけ収集し、既定OFF、network送信は行いません。tag起点CIのnpm provenance(OIDC Trusted
|
|
204
204
|
Publishing)で公開し、GitHub Release が Official MCP Registry を再登録します。
|
|
205
205
|
|
|
206
|
-
**状態:** 開発継続中 · 現行公開版 **v0.43.
|
|
206
|
+
**状態:** 開発継続中 · 現行公開版 **v0.43.1** · 動作対象は Linux · WSL2 · macOS · Windows ネイティブ · MIT · [変更履歴](CHANGELOG.md)。
|
|
207
207
|
|
|
208
208
|
### 更新と巻き戻し
|
|
209
209
|
|
package/README.md
CHANGED
|
@@ -217,7 +217,7 @@ collection is off by default and performs no network I/O. It ships via
|
|
|
217
217
|
tag-triggered CI with npm provenance (OIDC Trusted Publishing); the GitHub
|
|
218
218
|
Release re-registers the Official MCP Registry entry.
|
|
219
219
|
|
|
220
|
-
**Status:** actively maintained · current public release **v0.43.
|
|
220
|
+
**Status:** actively maintained · current public release **v0.43.1** · runs on Linux · WSL2 · macOS · native Windows (tmux on POSIX, the tmux-CLI-compatible [psmux](https://github.com/psmux/psmux) on native Windows — no WSL required) · MIT · see the [CHANGELOG](CHANGELOG.md).
|
|
221
221
|
|
|
222
222
|
### Update and rollback
|
|
223
223
|
|
package/dist/harnesses/claude.js
CHANGED
|
@@ -48,11 +48,18 @@ function claudeHookScriptPath() {
|
|
|
48
48
|
// この module は dist/harnesses/ に置かれるが、stop hook 実体は dist/ 直下に build される。
|
|
49
49
|
return path.join(path.dirname(fileURLToPath(import.meta.url)), "..", "claude-stop-hook.js");
|
|
50
50
|
}
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
// hook
|
|
51
|
+
// hook は子の pane の環境で動くので、PATH に node が無い親(Codexが起動したMCP等)でも動くよう絶対pathで呼ぶ。
|
|
52
|
+
// process.execPath は Homebrew では Cellar の版付き実体を指し、runtime の更新でその実体だけが消えて
|
|
53
|
+
// 生成済みの hook が exit 127 になる。Cellar の実体は同じ formula の opt(更新でも残る)へ置き換える。
|
|
54
|
+
export function hookNodeExecutable(execPath = process.execPath, exists = fs.existsSync) {
|
|
55
|
+
const brew = /^(.*)\/Cellar\/(node(?:@\d+)?)\/[^/]+\/bin\/node$/.exec(execPath);
|
|
56
|
+
if (!brew)
|
|
57
|
+
return execPath;
|
|
58
|
+
const opt = `${brew[1]}/opt/${brew[2]}/bin/node`;
|
|
59
|
+
return exists(opt) ? opt : "node";
|
|
60
|
+
}
|
|
54
61
|
function nodeHookCommand(hookScript) {
|
|
55
|
-
return `${shq(
|
|
62
|
+
return `${shq(hookNodeExecutable())} ${shq(hookScript)}`;
|
|
56
63
|
}
|
|
57
64
|
export function createClaudeCorrelationSettings(name, launchId, model, effort) {
|
|
58
65
|
const hookScript = claudeHookScriptPath();
|
package/dist/tmux-runtime.js
CHANGED
|
@@ -23,11 +23,16 @@ export const WIN_NS = `aiterm-${createHash("sha1").update(SOCKDIR).digest("hex")
|
|
|
23
23
|
// Windows で最初の呼び出し前に一度だけ native psmux の可用性を確かめ、失敗は原因別に投げる。
|
|
24
24
|
// psmux は tmux CLI 互換の Windows ネイティブ実装(ConPTY・WSL 不要)。AITERM_PSMUX で
|
|
25
25
|
// バイナリを明示上書きできる(POSIX の AITERM_TMUX に対応)。
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
// PATHを固定したMCP登録(Cursor等)から起動されてもWinGetの導入先を見つけられるよう、利用者用と
|
|
27
|
+
// PC全体用(winget --scope machine)のLinksを先に見る。どちらも無ければPATHの psmux。
|
|
28
|
+
export function psmuxBin(env = process.env, exists = fs.existsSync) {
|
|
29
|
+
if (env.AITERM_PSMUX)
|
|
30
|
+
return env.AITERM_PSMUX;
|
|
31
|
+
const links = [
|
|
32
|
+
env.LOCALAPPDATA && path.win32.join(env.LOCALAPPDATA, "Microsoft", "WinGet", "Links", "psmux.exe"),
|
|
33
|
+
path.win32.join(env.ProgramFiles ?? "C:\\Program Files", "WinGet", "Links", "psmux.exe"),
|
|
34
|
+
].filter((file) => !!file);
|
|
35
|
+
return links.find(file => exists(file)) ?? "psmux";
|
|
31
36
|
}
|
|
32
37
|
export function psmuxVersionSupported(output) {
|
|
33
38
|
const match = /^psmux (\d+)\.(\d+)\.(\d+)(?:\s|$)/mu.exec(output);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aiterm-mcp",
|
|
3
|
-
"version": "0.43.
|
|
3
|
+
"version": "0.43.1",
|
|
4
4
|
"mcpName": "io.github.kitepon/aiterm-mcp",
|
|
5
5
|
"description": "Persistent terminal MCP with one harness-based launcher for Claude Code, Codex CLI, Grok CLI, and Cursor Agent CLI, plus durable PTYs for SSH, containers, and REPLs.",
|
|
6
6
|
"keywords": [
|