[Bug]: Pi setup suggests installation without guiding reuse of an existing off-PATH runtime and profile

未关闭
#36,157 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

@juliusmarminge 已经在做这个了。

开始于 2026年11月13日。

  • #36162 来自 @juliusmarminge —— 未关闭

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
30/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
停滞
领域
frontend

调研方向

The report concerns the Pi provider card under apps/web, specifically the 'Not found' diagnostic shown when the default pi command is missing from PATH. Start by locating that message and the Binary path setting it should reference. Done means the failure text points to both installing Pi and setting Binary path, and mentions PI_CODING_AGENT_DIR for an existing profile. Pull request #36162 already targets this, so check it before starting.

由索引模型根据 Issue 内容生成。

描述

Before submitting
  • I searched existing issues and did not find an exact duplicate.
  • I included the observed setup, executable verification, and related reports.
Area

apps/web

Steps to reproduce

Observed on an existing macOS installation:

  1. Have Pi Web installed in a user-level, isolated runtime, with its own Pi agent directory and existing custom-model configuration.
  2. Launch T3 Code desktop and enable Pi in Settings → Providers. Leave Binary path at its default, pi.
  3. The Pi executable is not on T3's PATH, although it exists inside the Pi Web runtime.
  4. Open the Pi provider card.
Actual behavior

The card shows:

Not found · Pi CLI (pi) is not installed or not on PATH. Install with npm install -g --ignore-scripts @earendil-works/pi-coding-agent.

The installation instruction is prominent, while this diagnostic does not point to Binary path or explain that an existing installation may use a separate agent directory.

In this case, Pi was already installed and its GUI service was running. The existing CLI answered:

node "$HOME/Library/Application Support/Pi Agent/runtime/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js" --version
# 1.5.0

There is also a runtime/node_modules/.bin/pi symlink. The existing profile is under $HOME/Library/Application Support/Pi Agent/agent, and already contains custom-model configuration.

The lookup failure itself is understandable: this private runtime is outside PATH. The problem is the recovery guidance. It encouraged a reinstall diagnosis even though the executable and configuration were already present.

Expected behavior

The default-command lookup failure should point directly to both supported recovery options:

  • Install Pi if it is absent.
  • Reuse an existing executable through Binary path.

For an existing installation, setup should also explain PI_CODING_AGENT_DIR so users can retain their models, authentication, and extensions rather than accidentally starting with a different profile. A file/directory picker or clear inline example would make this much easier.

This is a setup/diagnostic usability report, not a claim that T3 should automatically scan and execute arbitrary bundled dependencies. The provider documentation already describes manual configuration; the missing guidance is in the failure state where it is needed.

Impact

Minor bug or occasional failure. It makes a working installation look like it needs another installation and makes reuse of an existing model profile difficult to discover.

Version or commit

T3 Code (Beta) 0.1.9

Environment

macOS 27.0, arm64; Node.js 24.14.1; Pi Web @agegr/[email protected]; bundled @earendil-works/[email protected].

Workaround / verification limits

The existing CLI was verified directly. Configuring T3 with that executable and the original agent directory is the documented reuse route, but I have not yet completed an end-to-end T3 conversation with this installation.

Related: #35373 concerns a nonexistent custom Binary path; here the default lookup is used and the real executable exists elsewhere. #28714 concerns startup PATH capture, not discovery of a GUI-private runtime.

主要语言
TypeScript
星标
24.8k
派生
6.4k
平均合并
59 分钟
30 天内合并 PR
418

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

pingdotgg/t3code 的其他 Issue

查看 pingdotgg/t3code 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。