persistent-terminal-mcp 1.0.7 → 1.0.9

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 CHANGED
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.0.9] - 2026-02-11
11
+
12
+ ### Improved
13
+ - 强化 MCP 工具描述:`read_terminal` 明确“最后 N 行”在 Codex/TUI 场景下应优先使用 `tail + raw + cleanAnsi`,不完整时改用 `head-tail` 补读。
14
+ - 强化 `write_terminal` 描述:在 Codex 聊天等待提交时,明确建议使用 `input=""` + `sendEnter=true` 补发回车。
15
+ - 新增 MCP prompt:`codex-tui-best-practices`,提供可直接照抄的“读最后10行 + 回车补发 + 稳定轮询”工作流。
16
+
17
+ ## [1.0.8] - 2026-02-11
18
+
19
+ ### Fixed
20
+ - 修复 `read_terminal` 在 `raw=true` 时忽略 `mode=head/tail/head-tail` 的问题;现在可稳定读取“最后 N 行”与“头尾摘要”。
21
+
22
+ ### Improved
23
+ - `read_terminal` 在 raw 模式返回中新增 `Raw Mode Filter` 和 `Raw Lines Omitted` 元数据,便于定位是否真正按 tail/head-tail 读取。
24
+ - 新增集成测试覆盖 raw tail/head-tail 行为,防止回归。
25
+
10
26
  ## [1.0.7] - 2026-02-11
11
27
 
12
28
  ### Fixed
package/README.en.md CHANGED
@@ -289,6 +289,9 @@ output, and surfacing troubleshooting tips inside compatible clients.
289
289
  - For Codex/vim-like full-screen apps, prefer `read_terminal` with:
290
290
  - `mode: "tail"`, `tailLines: 120`, `raw: true`, `cleanAnsi: true`, `maxChars: 8000`
291
291
  - Avoid `mode: "full" + raw: true` unless you really need the whole raw stream.
292
+ - Note: starting from `1.0.8`, mode filters (`head`/`tail`/`head-tail`) are also applied when `raw=true`.
293
+ - If a user asks for the "last 10 lines", use `tail + raw + cleanAnsi`; if incomplete, retry with `head-tail + raw + cleanAnsi`.
294
+ - For Codex chat turns that appear stuck waiting for submit, send Enter explicitly with `input: ""`, `sendEnter: true`.
292
295
 
293
296
  ## REST API (Optional)
294
297
  If you prefer HTTP, start the REST variant:
package/README.md CHANGED
@@ -372,6 +372,11 @@ await server.connect(/* 自定义 transport */);
372
372
  **Claude / Codex 场景建议**:
373
373
  - 优先使用:`mode: "tail"`, `tailLines: 120`, `raw: true`, `cleanAnsi: true`, `maxChars: 8000`
374
374
  - 避免直接 `mode: "full" + raw: true`,否则容易把大段 TUI 刷屏控制流塞进上下文。
375
+ - 说明:从 `1.0.8` 开始,`raw=true` 下也会严格应用 `mode=head/tail/head-tail`,便于稳定读取“最后 N 行”。
376
+ - 如果用户要求“最后 10 行”,优先:`mode: "tail"`, `tailLines: 10`, `raw: true`, `cleanAnsi: true`;若仍不完整,再用 `head-tail` 补读。
377
+
378
+ **Codex 聊天发送建议**:
379
+ - 先发送文本消息;若仍显示等待提交(Running 持续、无新回复),补发一次回车:`input: "", sendEnter: true`。
375
380
 
376
381
  **返回**:
377
382
  - `output`: 输出内容
@@ -22,6 +22,7 @@ export declare class PersistentTerminalMcpServer {
22
22
  */
23
23
  private setupTools;
24
24
  private resolveReadMaxChars;
25
+ private applyModeToRawText;
25
26
  private truncateForContext;
26
27
  private sanitizeRawTerminalOutput;
27
28
  private skipAnsiSequence;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAmBxD;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;;IA4CnC;;OAEG;YACW,sBAAsB;IAqDpC;;OAEG;YACW,eAAe;IAoO7B;;OAEG;IACH,OAAO,CAAC,UAAU;IAinBlB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,yBAAyB;IA2FjC,OAAO,CAAC,gBAAgB;IAsCxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAkFtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAmIpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,SAAS,IAAI,SAAS;IAItB;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAahC"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAmBxD;;;GAGG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAe;;IA4CnC;;OAEG;YACW,sBAAsB;IAqDpC;;OAEG;YACW,eAAe;IAoO7B;;OAEG;IACH,OAAO,CAAC,UAAU;IA+oBlB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,kBAAkB;IA+E1B,OAAO,CAAC,kBAAkB;IA0B1B,OAAO,CAAC,yBAAyB;IAgGjC,OAAO,CAAC,gBAAgB;IAsCxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAkFtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAkNpB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;OAEG;IACH,SAAS,IAAI,SAAS;IAItB;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAahC"}
@@ -364,11 +364,11 @@ Fix tool: OpenAI Codex
364
364
  }
365
365
  });
366
366
  // 写入终端工具
367
- this.server.tool('write_terminal', 'Write input to a terminal session. Plain text auto-sends Enter by default; use sendEnter for explicit Enter-only actions in interactive apps.', {
367
+ this.server.tool('write_terminal', 'Write input to a terminal session. For Codex/LLM chat: send message text first, then force Enter with sendEnter=true when the app appears to wait for submission.', {
368
368
  terminalId: z.string().describe('Terminal session ID'),
369
- input: z.string().describe('Input to send to the terminal. Newline will be automatically added if not present to execute the command.'),
370
- appendNewline: z.boolean().optional().describe('Whether to automatically append a newline (default: true for normal text). Set to false for raw control sequences like Ctrl+U or backspace.'),
371
- sendEnter: z.boolean().optional().describe('Force sending an Enter key (CR) after input. Useful when input is empty and you want to submit/continue interactive prompts.')
369
+ input: z.string().describe('Input to send to the terminal. For chat text, send the full sentence/paragraph here.'),
370
+ appendNewline: z.boolean().optional().describe('Whether to append newline automatically. Default true for normal text. Keep false only for raw key/control sequences.'),
371
+ sendEnter: z.boolean().optional().describe('Force one Enter key (CR). Recommended for Enter-only actions (input="") or when Codex/TUI appears to be waiting for submit.')
372
372
  }, {
373
373
  title: 'Write to Terminal',
374
374
  readOnlyHint: false
@@ -407,15 +407,15 @@ Fix tool: OpenAI Codex
407
407
  }
408
408
  });
409
409
  // 读取终端工具(增强版)
410
- this.server.tool('read_terminal', 'Read output from a terminal session. For Codex/vim TUI, prefer mode="tail" + raw=true + cleanAnsi=true + maxChars to keep context concise.', {
410
+ this.server.tool('read_terminal', 'Read output from a terminal session. For Codex/TUI conversation, use mode="tail" + raw=true + cleanAnsi=true. If tail seems incomplete, retry with mode="head-tail" in raw mode.', {
411
411
  terminalId: z.string().describe('Terminal session ID'),
412
412
  since: z.number().optional().describe('Line number to start reading from (default: 0)'),
413
413
  maxLines: z.number().optional().describe('Maximum number of lines to read (default: 1000)'),
414
- mode: z.enum(['full', 'head', 'tail', 'head-tail']).optional().describe('Reading mode: full (default), head (first N lines), tail (last N lines), or head-tail (first + last N lines)'),
414
+ mode: z.enum(['full', 'head', 'tail', 'head-tail']).optional().describe('Reading mode: full, head, tail, head-tail. For recent chat turns, prefer tail. For screen-refresh TUI recovery, use head-tail.'),
415
415
  headLines: z.number().optional().describe('Number of lines to show from the beginning when using head or head-tail mode (default: 50)'),
416
- tailLines: z.number().optional().describe('Number of lines to show from the end when using tail or head-tail mode (default: 50)'),
416
+ tailLines: z.number().optional().describe('Number of lines from the end in tail/head-tail mode. For chat checks, 10-30 is a good starting range.'),
417
417
  stripSpinner: z.boolean().optional().describe('Whether to strip spinner/animation frames (uses global setting if not specified)'),
418
- raw: z.boolean().optional().describe('Read raw PTY stream (TUI-safe but may be noisy). Default: false'),
418
+ raw: z.boolean().optional().describe('Read raw PTY stream. Strongly recommended for Codex/vim-like TUIs to avoid missing lines caused by cursor redraw.'),
419
419
  cleanAnsi: z.boolean().optional().describe('When raw=true, sanitize ANSI/control sequences into readable text. Default: true'),
420
420
  maxChars: z.number().optional().describe('Maximum characters returned in this tool response (default: 12000, hard cap for context safety)')
421
421
  }, {
@@ -441,8 +441,26 @@ Fix tool: OpenAI Codex
441
441
  const cleanedOutput = useRawRead && cleanAnsi !== false
442
442
  ? this.sanitizeRawTerminalOutput(originalOutput)
443
443
  : originalOutput;
444
+ const rawModeOptions = {};
445
+ if (mode !== undefined) {
446
+ rawModeOptions.mode = mode;
447
+ }
448
+ if (headLines !== undefined) {
449
+ rawModeOptions.headLines = headLines;
450
+ }
451
+ if (tailLines !== undefined) {
452
+ rawModeOptions.tailLines = tailLines;
453
+ }
454
+ const modeAdjusted = useRawRead
455
+ ? this.applyModeToRawText(cleanedOutput, rawModeOptions)
456
+ : {
457
+ output: cleanedOutput,
458
+ mode: mode || 'full',
459
+ modeApplied: false,
460
+ linesOmitted: 0
461
+ };
444
462
  const charLimit = this.resolveReadMaxChars(maxChars);
445
- const truncation = this.truncateForContext(cleanedOutput, charLimit);
463
+ const truncation = this.truncateForContext(modeAdjusted.output, charLimit);
446
464
  const finalOutput = truncation.output;
447
465
  let outputText = `Terminal Output (${terminalId}):\n\n${finalOutput}\n\n--- End of Output ---\n`;
448
466
  outputText += `Total Lines: ${result.totalLines}\n`;
@@ -456,6 +474,12 @@ Fix tool: OpenAI Codex
456
474
  if (useRawRead) {
457
475
  outputText += `\nRaw Replay: Enabled (TUI-safe)`;
458
476
  outputText += `\nANSI Cleanup: ${cleanAnsi === false ? 'Disabled' : 'Enabled'}`;
477
+ if (modeAdjusted.modeApplied) {
478
+ outputText += `\nRaw Mode Filter: ${modeAdjusted.mode}`;
479
+ if (modeAdjusted.linesOmitted > 0) {
480
+ outputText += `\nRaw Lines Omitted: ${modeAdjusted.linesOmitted}`;
481
+ }
482
+ }
459
483
  }
460
484
  if (truncation.truncated) {
461
485
  outputText += `\nContext Guard: Truncated to ${charLimit} chars (omitted ${truncation.omittedChars} chars)`;
@@ -849,6 +873,66 @@ The more detailed, the better the fix!`),
849
873
  // Hard upper bound to avoid flooding model context
850
874
  return Math.min(maxChars, 50000);
851
875
  }
876
+ applyModeToRawText(output, options) {
877
+ const mode = options.mode || 'full';
878
+ if (mode === 'full' || !output) {
879
+ return {
880
+ output,
881
+ mode,
882
+ modeApplied: false,
883
+ linesOmitted: 0
884
+ };
885
+ }
886
+ const lines = output.split('\n');
887
+ const total = lines.length;
888
+ const safeHead = Number.isFinite(options.headLines) && (options.headLines || 0) > 0
889
+ ? Math.floor(options.headLines)
890
+ : 50;
891
+ const safeTail = Number.isFinite(options.tailLines) && (options.tailLines || 0) > 0
892
+ ? Math.floor(options.tailLines)
893
+ : 50;
894
+ if (mode === 'head') {
895
+ const shown = lines.slice(0, safeHead);
896
+ const linesOmitted = Math.max(0, total - shown.length);
897
+ return {
898
+ output: linesOmitted > 0
899
+ ? `${shown.join('\n')}\n\n... [省略后续 ${linesOmitted} 行] ...`
900
+ : shown.join('\n'),
901
+ mode,
902
+ modeApplied: true,
903
+ linesOmitted
904
+ };
905
+ }
906
+ if (mode === 'tail') {
907
+ const shown = lines.slice(-safeTail);
908
+ const linesOmitted = Math.max(0, total - shown.length);
909
+ return {
910
+ output: linesOmitted > 0
911
+ ? `... [省略前面 ${linesOmitted} 行] ...\n\n${shown.join('\n')}`
912
+ : shown.join('\n'),
913
+ mode,
914
+ modeApplied: true,
915
+ linesOmitted
916
+ };
917
+ }
918
+ const head = lines.slice(0, safeHead);
919
+ const tail = lines.slice(-safeTail);
920
+ const linesOmitted = Math.max(0, total - head.length - tail.length);
921
+ if (linesOmitted <= 0) {
922
+ return {
923
+ output: lines.join('\n'),
924
+ mode,
925
+ modeApplied: true,
926
+ linesOmitted: 0
927
+ };
928
+ }
929
+ return {
930
+ output: `${head.join('\n')}\n\n... [省略 ${linesOmitted} 行] ...\n\n${tail.join('\n')}`,
931
+ mode,
932
+ modeApplied: true,
933
+ linesOmitted
934
+ };
935
+ }
852
936
  truncateForContext(output, maxChars) {
853
937
  if (!output || output.length <= maxChars) {
854
938
  return {
@@ -881,6 +965,11 @@ The more detailed, the better the fix!`),
881
965
  continue;
882
966
  }
883
967
  if (char === '\r') {
968
+ const nextChar = raw[i + 1];
969
+ if (nextChar === '\n') {
970
+ // Keep current line content for CRLF; newline handler will flush it.
971
+ continue;
972
+ }
884
973
  currentLine = '';
885
974
  continue;
886
975
  }
@@ -1072,6 +1161,12 @@ Sends input to a terminal session.
1072
1161
  - appendNewline defaults to true for normal text; empty input also sends Enter by default
1073
1162
  - For explicit Enter-only actions (common in Codex chat), prefer input: "" with sendEnter: true
1074
1163
 
1164
+ Codex/LLM chat send pattern (important):
1165
+ 1) Send text turn with write_terminal (input = your message)
1166
+ 2) If output status remains Running or app appears waiting for submit, send Enter explicitly:
1167
+ - write_terminal with input: "", sendEnter: true
1168
+ 3) Then call wait_for_output and read_terminal
1169
+
1075
1170
  ### 3. read_terminal
1076
1171
  Reads output from a terminal session.
1077
1172
  - Parameters: terminalId (required), since (optional), maxLines (optional)
@@ -1079,6 +1174,13 @@ Reads output from a terminal session.
1079
1174
  - For Codex/vim-like TUI apps, prefer mode: "tail", tailLines: 120, raw: true, cleanAnsi: true, maxChars: 8000
1080
1175
  - Avoid mode: "full" + raw: true unless full raw replay is truly needed
1081
1176
 
1177
+ If user asks "last 10 lines" in Codex/TUI:
1178
+ - First try: mode: "tail", tailLines: 10, raw: true, cleanAnsi: true
1179
+ - If content looks incomplete due to redraw/refresh:
1180
+ - Retry with mode: "head-tail", headLines: 30, tailLines: 30, raw: true, cleanAnsi: true
1181
+ - Optionally increase maxChars (e.g. 20000) for longer assistant replies
1182
+ - Verify by checking metadata: Raw Mode Filter should match requested mode
1183
+
1082
1184
  ### 4. list_terminals
1083
1185
  Lists all active terminal sessions.
1084
1186
  - No parameters required
@@ -1095,6 +1197,14 @@ Terminates a terminal session.
1095
1197
  3. Read output: read_terminal to get the command results
1096
1198
  4. Continue interaction or create more terminals as needed
1097
1199
 
1200
+ ## Recommended workflow for Codex conversation:
1201
+
1202
+ 1. write_terminal with message text
1203
+ 2. wait_for_output (timeout 10000-25000, stableTime 2000-5000)
1204
+ 3. read_terminal with tail+raw+cleanAnsi
1205
+ 4. If answer seems truncated, retry read_terminal with head-tail+raw+cleanAnsi
1206
+ 5. If still waiting/running unexpectedly, send Enter via write_terminal(input: "", sendEnter: true)
1207
+
1098
1208
  ## Features:
1099
1209
 
1100
1210
  - Sessions persist even if you disconnect
@@ -1133,17 +1243,21 @@ Issue reported: "${issue}"
1133
1243
  - The command might still be running
1134
1244
  - Try reading with different 'since' parameter
1135
1245
  - Check if the terminal is still active
1246
+ - For Codex/TUI sessions, retry read_terminal with: mode="tail", raw=true, cleanAnsi=true
1247
+ - If "last 10 lines" still looks incomplete, switch to mode="head-tail" with raw=true
1136
1248
 
1137
1249
  ### Command Not Executing
1138
1250
  - Ensure you're sending the complete command with newline (\\n)
1139
1251
  - Check if the terminal is waiting for input
1140
1252
  - Verify the command syntax for the shell being used
1253
+ - For chat-like prompts waiting on Enter, send: write_terminal(input="", sendEnter=true)
1141
1254
 
1142
1255
  ### Interactive Commands
1143
1256
  - For interactive commands (vim, nano, etc.), you may need to:
1144
1257
  - Send specific key sequences
1145
1258
  - Use appropriate escape sequences
1146
1259
  - Consider the terminal's current state
1260
+ - Codex chat also behaves like an interactive TUI; treat message submission as Enter-sensitive
1147
1261
 
1148
1262
  ### Performance Issues
1149
1263
  - Large output buffers can slow down reading
@@ -1163,6 +1277,54 @@ Would you like specific help with your issue?`
1163
1277
  ]
1164
1278
  };
1165
1279
  });
1280
+ // Codex/TUI 使用最佳实践提示
1281
+ this.server.prompt('codex-tui-best-practices', 'Best practices for reading Codex/TUI output and sending Enter correctly', {
1282
+ terminalId: z.string().optional().describe('Optional terminal ID for concrete command examples')
1283
+ }, async ({ terminalId }) => {
1284
+ const sampleId = terminalId || '<terminal-id>';
1285
+ return {
1286
+ messages: [
1287
+ {
1288
+ role: 'user',
1289
+ content: {
1290
+ type: 'text',
1291
+ text: `# Codex / TUI Best Practices
1292
+
1293
+ Use this checklist when interacting with Codex-like full-screen terminal apps.
1294
+
1295
+ ## 1) Sending chat input safely
1296
+
1297
+ - Send message text with write_terminal first
1298
+ - If the app still appears to be waiting, send Enter explicitly:
1299
+ - write_terminal(terminalId="${sampleId}", input="", sendEnter=true)
1300
+
1301
+ ## 2) Reading the latest conversation
1302
+
1303
+ Preferred call for recent output:
1304
+ - read_terminal(terminalId="${sampleId}", mode="tail", tailLines=10~30, raw=true, cleanAnsi=true, maxChars=8000~20000)
1305
+
1306
+ If "last 10 lines" looks incomplete (common with ANSI redraw):
1307
+ - retry with read_terminal(mode="head-tail", headLines=30, tailLines=30, raw=true, cleanAnsi=true)
1308
+
1309
+ ## 3) Verify the read mode actually applied
1310
+
1311
+ Check metadata in response:
1312
+ - Raw Mode Filter: should match requested mode (tail/head-tail)
1313
+ - Raw Lines Omitted: indicates lines skipped outside requested window
1314
+
1315
+ ## 4) Stable turn-by-turn loop
1316
+
1317
+ 1. write_terminal(message)
1318
+ 2. wait_for_output(timeout=10000~25000, stableTime=2000~5000)
1319
+ 3. read_terminal(tail + raw + cleanAnsi)
1320
+ 4. If no final answer yet, send Enter with input="", sendEnter=true and repeat
1321
+
1322
+ This avoids missing replies and prevents context bloat from full raw dumps.`
1323
+ }
1324
+ }
1325
+ ]
1326
+ };
1327
+ });
1166
1328
  }
1167
1329
  /**
1168
1330
  * 设置事件处理器
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "persistent-terminal-mcp",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "MCP server for managing persistent terminal sessions using node-pty",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -60,10 +60,11 @@
60
60
  "start:rest": "node dist/rest-server.js",
61
61
  "test": "jest",
62
62
  "test:unit": "jest",
63
- "test:integration": "npm run test:integration:stdio && npm run test:integration:cursor && npm run test:integration:terminal",
63
+ "test:integration": "npm run test:integration:stdio && npm run test:integration:cursor && npm run test:integration:terminal && npm run test:integration:raw-tail",
64
64
  "test:integration:stdio": "node tests/integration/test-mcp-stdio.mjs",
65
65
  "test:integration:cursor": "node tests/integration/test-cursor-scenario.mjs",
66
66
  "test:integration:terminal": "node tests/integration/test-terminal-fixes.mjs",
67
+ "test:integration:raw-tail": "node tests/integration/test-read-terminal-raw-tail.mjs",
67
68
  "test:all": "npm run test:unit && npm run test:integration",
68
69
  "clean": "rm -rf dist",
69
70
  "prepare": "npm run build",