aiterm-mcp 0.29.16 → 0.29.17
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 +8 -1
- package/README.ja.md +1 -1
- package/README.md +1 -1
- package/dist/core.js +13 -1
- package/dist/harnesses/cursor.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.29.17] - 2026-09-01
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- Detect Cursor's current `→` composer when a long initial prompt remains unsubmitted, and retry Enter once only on that first-turn residue.
|
|
15
|
+
|
|
10
16
|
## [0.29.16] - 2026-09-01
|
|
11
17
|
|
|
12
18
|
### Fixed
|
|
@@ -1444,7 +1450,8 @@ prototype (preserved under `prototype/python/` as the porting source and referen
|
|
|
1444
1450
|
`ubuntu-latest` for Node 18/20/22, publishing to npm on `v*` tags with
|
|
1445
1451
|
provenance.
|
|
1446
1452
|
|
|
1447
|
-
[Unreleased]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.
|
|
1453
|
+
[Unreleased]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.17...HEAD
|
|
1454
|
+
[0.29.17]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.16...v0.29.17
|
|
1448
1455
|
[0.29.16]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.15...v0.29.16
|
|
1449
1456
|
[0.29.15]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.14...v0.29.15
|
|
1450
1457
|
[0.29.14]: https://github.com/kitepon/aiterm-mcp/compare/v0.29.13...v0.29.14
|
package/README.ja.md
CHANGED
|
@@ -153,7 +153,7 @@ runtime-error store は canonical dotagents config の `collection.enabled: true
|
|
|
153
153
|
場合だけ収集し、既定OFF、network送信は行いません。tag起点CIのnpm provenance(OIDC Trusted
|
|
154
154
|
Publishing)で公開し、GitHub Release が Official MCP Registry を再登録します。
|
|
155
155
|
|
|
156
|
-
**状態:** 開発継続中 · 現行公開版 **v0.29.
|
|
156
|
+
**状態:** 開発継続中 · 現行公開版 **v0.29.17** · 動作対象は Linux · WSL2 · macOS · Windows ネイティブ · MIT · [変更履歴](CHANGELOG.md)。
|
|
157
157
|
|
|
158
158
|
### 更新と巻き戻し
|
|
159
159
|
|
package/README.md
CHANGED
|
@@ -169,7 +169,7 @@ collection is off by default and performs no network I/O. It ships via
|
|
|
169
169
|
tag-triggered CI with npm provenance (OIDC Trusted Publishing); the GitHub
|
|
170
170
|
Release re-registers the Official MCP Registry entry.
|
|
171
171
|
|
|
172
|
-
**Status:** actively maintained · current public release **v0.29.
|
|
172
|
+
**Status:** actively maintained · current public release **v0.29.17** · 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).
|
|
173
173
|
|
|
174
174
|
### Update and rollback
|
|
175
175
|
|
package/dist/core.js
CHANGED
|
@@ -2579,7 +2579,19 @@ export async function sendInitialAgentPrompt(name, text, o = {}) {
|
|
|
2579
2579
|
setInitialPromptState(meta, "failed");
|
|
2580
2580
|
throw e;
|
|
2581
2581
|
}
|
|
2582
|
-
|
|
2582
|
+
let residue = await detectAgentSubmitResidue(name, meta.kind, promptText);
|
|
2583
|
+
// Cursor現行UIは長いbracketed pasteの直後のEnterを取り落とすことがある。
|
|
2584
|
+
// 初回promptには先行turnが無いため、本文がcomposerへ残り続ける実測がある時だけ
|
|
2585
|
+
// 同じEnterを一度再送できる。通常dispatchへ再送を広げない。
|
|
2586
|
+
if (meta.kind === "cursor" && residue.residue === true) {
|
|
2587
|
+
sendKey(name, "Enter", { preserveAgentOperation: true });
|
|
2588
|
+
residue = await detectAgentSubmitResidue(name, meta.kind, promptText);
|
|
2589
|
+
if (residue.residue === true) {
|
|
2590
|
+
setInitialPromptState(meta, "failed");
|
|
2591
|
+
throw new AitermError(`initial_prompt=failed vendor=cursor harness=${agentHarness(meta.kind)}\n` +
|
|
2592
|
+
`起動時promptがCursorのcomposerへ残り、Enter再送後もturnを開始できませんでした。`, 2);
|
|
2593
|
+
}
|
|
2594
|
+
}
|
|
2583
2595
|
return {
|
|
2584
2596
|
text: `initial_prompt=pending vendor=${meta.kind} event_cursor=${startOffset} harness=${agentHarness(meta.kind)}\n` +
|
|
2585
2597
|
`起動時 prompt を送信した。${agentDispatchGuide(name, startOffset)}` +
|
package/dist/harnesses/cursor.js
CHANGED
|
@@ -388,7 +388,7 @@ export function cursorLaunchNote(model, effort, meta) {
|
|
|
388
388
|
const modelNote = effective ? ` model=${JSON.stringify(effective)}(引数)` : " model=Cursor CLI既定";
|
|
389
389
|
return `${modelNote}${writeScopeLaunchNote("cursor", meta?.write_scope)}`;
|
|
390
390
|
}
|
|
391
|
-
export const CURSOR_COMPOSER_MARKER_RE = /(?:^|\n)\s
|
|
391
|
+
export const CURSOR_COMPOSER_MARKER_RE = /(?:^|\n)\s*(?:>|→|->)\s*(?:\n|$)/m;
|
|
392
392
|
const CURSOR_FOLLOWUP_MARKER_RE = /(?:^|\n)\s*(?:→|->)\s*Add a follow-up\b/im;
|
|
393
393
|
const CURSOR_START_PROMPT_MARKER_RE = /(?:^|\n)\s*(?:→|->)\s*Plan,\s*search,\s*build anything\s*(?:\n|$)/im;
|
|
394
394
|
export function cursorTuiReady(screen) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aiterm-mcp",
|
|
3
|
-
"version": "0.29.
|
|
3
|
+
"version": "0.29.17",
|
|
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": [
|