Repository navigation
v0.1.7
v0.1.7
English · 简体中文
Interrupted streams recover instead of ending the turn, the transcript no longer re-renders on every
frame, and releases install with a verified download.
Install
macOS and Linux:
curl -fsSL https://raw.githubusercontent.com/rsbin1178/pips/main/install.sh | shWindows (PowerShell 5.1 or newer):
irm https://raw.githubusercontent.com/rsbin1178/pips/main/install.ps1 | iexBoth check the archive against the release's SHA256SUMS before installing. PIPS_VERSION pins a tag,
PIPS_BIN_DIR selects the directory, and PIPS_NO_MODIFY_PATH=1 leaves shell and PATH settings alone.
Added
install.shandinstall.ps1: download, checksum verification, install, version check.- Stream idle timeout. A streaming response that stops delivering bytes aborts with
ai.ErrStreamIdle
after ten minutes of silence.WithStreamIdleTimeoutoverrides it per adapter. - Retry episode limits:
retry.WithMaxElapsedfor one request,agent.WithStreamRecoveryWindowfor one
turn. The CLI sets twenty minutes for both. - A retry tally on the interaction journal record: total retries and a breakdown by reason.
/statussession usage: per-day buckets, per-model rows, durations on the Stats page, and pricing
from a[cost]table.- A Models page, and pointer selection for full-area list rows.
LICENSEinside every release archive, a Windows.zipalongside the.tar.gz, and checksums
covering both.
Changed
- Interrupted streams regenerate the turn by default. Per-model continuation remains available as an
opt-in. - Retry notices name the reason (
rate limited,stream idle, and so on) instead of reporting a
generic connection error.
Fixed
- Mid-stream error events that nest
codeandmessageundererrorno longer arrive empty; the
provider's text and error class are preserved. - An answer truncated at the output limit is salvaged rather than discarded.
- Append-only stores truncate by path, so a tail can be rolled back on Windows.
Performance
- The transcript no longer rebuilds the Markdown engine for the live block on every frame. A streaming
repaint costs the tail.
Verification
- Tests run on macOS, Ubuntu and Windows, with race tests over
agentandinternal/coding, the
provider adapter smoke suite,go vet,golangci-lint,govulncheck, and the dependency policy
check. - The stream idle timeout and the retry ceiling were measured on a live gateway before landing: over 72
streams the longest silence was 4.5s before the first byte and 1.2s between chunks. With the timeout
set to 5s, four live streams completed without a false abort. - Each release installs its own artifacts on Linux and Windows and checks the reported version.
简体中文
简体中文 · English
中断的模型流现在会恢复而不是终止这一轮;转录不再每帧重绘;发布产物带校验,可直接安装。
安装
macOS 与 Linux:
curl -fsSL https://raw.githubusercontent.com/rsbin1178/pips/main/install.sh | shWindows(PowerShell 5.1 及以上):
irm https://raw.githubusercontent.com/rsbin1178/pips/main/install.ps1 | iex两者都会先用发布出来的 SHA256SUMS 校验归档再安装。PIPS_VERSION 固定版本,PIPS_BIN_DIR 指定安装
目录,PIPS_NO_MODIFY_PATH=1 不改动 shell 与 PATH 设置。
新增
install.sh与install.ps1:下载、校验、安装、版本检查。- 流空闲超时:流式响应在静默十分钟后以
ai.ErrStreamIdle中止;可用WithStreamIdleTimeout按适配器
覆盖。 - 重试过程上界:
retry.WithMaxElapsed约束单次请求,agent.WithStreamRecoveryWindow约束单轮会话;
CLI 两者都取二十分钟。 - 交互 journal 记录重试次数与原因分布。
/status展示会话用量:按天分桶、按模型的行、Stats 页的耗时,以及来自[cost]配置表的金额。- 新增 Models 页面;列表整行可点选。
- 每个发布归档内包含
LICENSE;Windows 除.tar.gz外提供.zip;校验和覆盖两种格式。
变更
- 中断的流默认按整段重新生成;每模型的"续写"仍作为可选项保留。
- 重试提示会给出原因(
rate limited、stream idle等),不再统一报成连接错误。
修复
- 把
code与message嵌在error下的流内错误事件不再变成空错误;provider 的原文与错误类别得以保留。 - 因输出上限被截断的答案会被抢救,而不是丢弃。
- 仅追加的存储按路径截断,Windows 上也能回滚尾部。
性能
- 转录不再每帧为活动块重建 Markdown 引擎;流式重绘只处理尾部。
验证
- 测试在 macOS / Ubuntu / Windows 上运行,另有
agent与internal/coding的竞态测试、provider 适配器
冒烟、go vet、golangci-lint、govulncheck与依赖策略检查。 - 流空闲超时与重试上界在落地前于真实网关上量过:72 条流里最长静默为首字节前 4.5 秒、块之间 1.2 秒;
把超时设为 5 秒后跑了四条真实流,没有误报。 - 每次发布都会在 Linux 与 Windows 上安装自己的产物并核对报告的版本。
Full Changelog: v0.1.6...v0.1.7