Skip to content

Releases: lucky-goals/goals-iterm-mcp

v0.2.2

Choose a tag to compare

@lucky-goals lucky-goals released this 25 Oct 16:31

本版本为版本同步发布,功能代码与 0.2.1 保持一致。

变更

  • 包版本统一为 0.2.2,四语言 README、固定安装示例和官网同步更新。
  • 保留 13 个 MCP 工具及只读模式的 4 个工具,没有新增工具或改变终端操作语义。
  • 与 goals-iterm-skill 0.2.4 的 orchestrator 流程配套;调度规则属于 Skill,不新增 MCP 后台服务。

验证与分发

  • 15 项 MCP direct 定向测试通过。
  • wheel/源码包构建、twine check --strict、包内 14 个模块/版本/CLI 入口检查通过;最终发行文件作为本 Release 附件提供。
  • Release workflow 的 build job(构建、严格校验、安装与测试)通过;publish job 因 Trusted Publisher 配置不匹配 invalid-publisher 失败:workflow 日志。
  • 已使用本机现有凭据,将同一份 CI 产物上传 PyPI。wheel、源码包及 SHA256SUMS 均已附于本 Release。
  • PyPI 与 GitHub 附件均已重新下载,SHA256 与 CI 产物一致。
  • 全新 Python 3.12 环境从 PyPI 安装 0.2.2 后,依赖检查、CLI --help、stdio MCP 握手及工具发现通过:普通模式 13 个工具、只读模式 4 个工具。
  • 自动发布仍需修正 PyPI 项目的 Trusted Publisher 配置:owner lucky-goals、repository goals-iterm-mcp、workflow publish.yml、environment pypi。本次 PyPI 分发已完成。

PyPI:goals-iterm-mcp 0.2.2

v0.2.1 — Session diagnostics and current CLI identity

Choose a tag to compare

@lucky-goals lucky-goals released this 25 Oct 15:35

本版本新增只读会话诊断,并加强 CLI 当前对话身份验证。

变更

  • 新增 inspect_sessions,支持准确 ID、唯一昵称及授权可见范围,分列 prompt、进程、CLI 身份、活动与回收阻碍。
  • 区分缺失 prompt/进程证据;不将未知状态推断为空闲,诊断结果不授予关闭权限。
  • 每次核对当前进程与对话证据,防止沿用过期 UUID;覆盖进程重用、会话切换、证据消失及退出前重新验证。
  • 共 13 个 MCP 工具,只读模式提供 4 个工具;四语言安装文档与官网已更新。

验证与分发

  • 83 项相关定向测试通过。
  • wheel 与源码包构建、twine check --strict、版本/模块/CLI 入口检查通过。
  • 官网、文档引用/围栏与 git diff --check 通过。
  • Release workflow 的 build job 已通过构建、严格元数据校验、安装与测试。publish job 因 PyPI Trusted Publisher 配置不匹配(invalid-publisher)失败:workflow 日志。
  • 已使用本机现有凭据将同一份 CI 构建产物上传 PyPI;wheel、源码包和 SHA256SUMS 已作为本 Release 附件提供。
  • 已从 PyPI 和 GitHub 分别下载两个发行包,确认 SHA256 与 CI 产物一致。
  • 全新 Python 3.12 环境从 PyPI 安装 0.2.1 后,依赖兼容性、CLI --help、stdio MCP 握手与工具发现均通过:普通模式 13 个工具,只读模式 4 个工具。
  • 自动发布配置仍需在 PyPI 项目中修正:owner lucky-goals、repository goals-iterm-mcp、workflow publish.yml、environment pypi。本次 PyPI 分发已完成。

PyPI:goals-iterm-mcp 0.2.1

可信的实时 CLI 活动事件尚未全面接入;Kiro 当前对话与 PID 绑定仍有能力限制,缺少证据时继续拒绝自动回收。未退出或关闭既有用户终端。

goals-iterm-mcp 0.2.0 — Guarded terminal closing

Choose a tag to compare

@lucky-goals lucky-goals released this 22 Oct 13:56

What's new

  • Add close_session, close_tab, close_window, and clean_all_sessions, bringing the stdio MCP API to 12 tools. Session nicknames identify a single pane; tab/window selectors resolve the containing native object.
  • Default cleanup closes confirmed idle sessions and skips busy or unknown sessions. Explicit force can interrupt tasks within the allowed scope; missing or ambiguous current CLI identity still blocks closure.
  • Capture CLI chat UUIDs in private recovery receipts before exit, verify process identity and terminal membership, and preserve recovery information in structured results. UUID recovery does not guarantee that the CLI persisted resumable conversation history.
  • Add upgrade instructions in English, Simplified Chinese, Traditional Chinese, and Japanese. Update website installation commands to 0.2.0 and make its checker independent of the local clone directory name.

Validation

  • 69 targeted closing, process inspection, CLI recovery, and MCP contract tests passed locally.
  • Real iTerm smoke checks covered all four closing tools, dry runs, idle/busy cleanup, and preservation of existing user terminals. A separate disposable Cursor CLI check verified UUID capture and closure.
  • Local wheel and source distribution passed twine check --strict; package versions, modules, and CLI entry point were verified.
  • A separate Python 3.12 installation passed dependency checks, CLI startup, and stdio discovery of all 12 tools. Website and changed-file correctness checks passed.
  • The GitHub build job passed all 137 tests and strict package checks. Its exact wheel and source distribution are attached to this release.
  • PyPI and GitHub downloads were verified byte-for-byte against the CI artifacts. Installation from PyPI passed dependency checks and CLI startup.

Install or upgrade

uvx --python 3.12 goals-iterm-mcp@0.2.0 serve

Update the saved MCP client version pin and restart/reconnect the server to load the new tool list.

PyPI: https://pypi.org/project/goals-iterm-mcp/0.2.0/

Publishing status

Both PyPI and GitHub Release are published. The automated publish job failed with invalid-pending-publisher: valid token, but project already exists. PyPI still has a pending publisher configuration; configure a trusted publisher on the existing project for repository lucky-goals/goals-iterm-mcp, workflow publish.yml, environment pypi before the next automated release.

For this release, the same CI artifacts were uploaded using existing local PyPI credentials. The failed automated publish job remains visible: https://github.com/lucky-goals/goals-iterm-mcp/actions/runs/39791376775

SHA256

  • goals_iterm_mcp-0.2.0-py3-none-any.whl: 5f5337bf76d506f13a312440d0e30027e53d1c3f63deffc672ef9624217b6388
  • goals_iterm_mcp-0.2.0.tar.gz: 8309955b603ed21c6413b58e659344af14145156bd80884c5e6b27657fde937f

goals-iterm-mcp 0.1.2 — Session nicknames

Choose a tag to compare

@lucky-goals lucky-goals released this 17 Oct 18:05

Adds persistent conversational names for iTerm sessions.

  • Add rename_session(session_id, name=None) for explicit or random names.
  • Automatically assign unused names from a pool of 200 distinct 4–7 character nicknames when creating windows and tabs.
  • Return readable name values in list_sessions, retained across MCP reconnects.
  • Rename the Python package to goals_iterm_mcp and add Traditional Chinese and Japanese documentation.
  • Require paired PyPI and GitHub releases in AGENTS.md.

Validation: 21 targeted tests, Ruff, strict Twine package checks, and real iTerm smoke checks passed, including naming, renaming, reconnect persistence, and cleanup of temporary sessions. Published-package CLI startup was verified. Attached wheel and source distribution are the exact files published to PyPI, verified by SHA256.

PyPI 0.1.2

uvx --python 3.12 goals-iterm-mcp@0.1.2 serve

goals-iterm-mcp 0.1.1 — Documentation update

Choose a tag to compare

@lucky-goals lucky-goals released this 17 Oct 10:10

Documentation-focused release. Runtime behavior and dependencies are unchanged from 0.1.0.

  • Add English and Chinese prompts for agent-assisted MCP installation from PyPI.
  • Explain mobile/remote agent workflows and goal-driven coordination of coding CLI sessions.
  • Consolidate prerequisites: enable and authorize the iTerm2 Python API, and configure each coding CLI's OAuth or API Gateway credentials.
  • Record verification with iTerm2 3.7.6.
  • Translate audit and verification documents into English while retaining README.zh-CN.md.
  • Update installation examples to 0.1.1.
uvx --python 3.12 goals-iterm-mcp@0.1.1 serve

Validation: wheel and source distribution built successfully, strict Twine metadata checks passed, README links/code fences were checked, and the wheel's CLI entry point was verified in an isolated environment. The functional suite was not rerun for this documentation release.

Published manually to PyPI.

goals-iterm-mcp 0.1.0

Choose a tag to compare

@lucky-goals lucky-goals released this 17 Oct 08:47

First public release of goals-iterm-mcp: seven stdio MCP tools backed by the iTerm2 Python API.

  • Discover sessions; read screens and scrollback.
  • Send exact text and terminal keys; create windows and tabs.
  • Optional read-only mode and session allowlist.
  • Bounded connection cleanup and no automatic write retries.
  • MIT license, copyright 2026 lucky-goals.

Requires macOS, iTerm2 with the Python API enabled, and Python 3.12.

uvx --python 3.12 goals-iterm-mcp@0.1.0 serve

Validation: 69 automated tests and real iTerm MCP smoke tests passed. The PyPI wheel was installed successfully with uvx; both published distribution hashes match the verified local artifacts.

Published manually to PyPI because GitHub Actions runners were blocked by account billing/spending limits. This release's automation is not the source of the initial PyPI upload.