diff --git a/README.en.md b/README.en.md index a2d2a63b..7f01cc6c 100644 --- a/README.en.md +++ b/README.en.md @@ -93,10 +93,10 @@ The App's interface is available in English and Chinese; choose it under Setting ### Option 2: manual install (Linux, or without the App) -The paired release is **`v1.2.0`**; install both the runtime and the Skill from that tag: +The paired release is **`v1.3.0`**; install both the runtime and the Skill from that tag: ```bash -uv tool install --python 3.12 "git+https://github.com/TimWongUp/agentnave.git@v1.2.0" +uv tool install --python 3.12 "git+https://github.com/TimWongUp/agentnave.git@v1.3.0" ``` Then follow the [installation guide](docs/installation.md) to register the MCP server, install the diff --git a/README.md b/README.md index 0dfae27f..891901e6 100644 --- a/README.md +++ b/README.md @@ -90,10 +90,10 @@ Grok Bot 只能在 Linux 上接入,不支持 macOS 和 Windows App,也看不 ### 方式二:手动安装(Linux,或不装 App) -当前配套版本是 **`v1.2.0`**,运行时和 Skill 都要从这个 tag 安装: +当前配套版本是 **`v1.3.0`**,运行时和 Skill 都要从这个 tag 安装: ```bash -uv tool install --python 3.12 "git+https://github.com/TimWongUp/agentnave.git@v1.2.0" +uv tool install --python 3.12 "git+https://github.com/TimWongUp/agentnave.git@v1.3.0" ``` 然后按[安装指南](docs/installation.md)注册 MCP、安装 [agentnave-manager](skills/agentnave-manager/SKILL.md) 和 [agentnave-handover](skills/agentnave-handover/SKILL.md) Skill,再做验证。 diff --git a/apps/tray/Cargo.lock b/apps/tray/Cargo.lock index 96192bbe..c41f6b32 100644 --- a/apps/tray/Cargo.lock +++ b/apps/tray/Cargo.lock @@ -10,7 +10,7 @@ checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "agentnave-tray" -version = "1.2.0" +version = "1.3.0" dependencies = [ "base64 0.22.1", "block2", diff --git a/apps/tray/Cargo.toml b/apps/tray/Cargo.toml index 23db72f8..d20020bd 100644 --- a/apps/tray/Cargo.toml +++ b/apps/tray/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "agentnave-tray" -version = "1.2.0" +version = "1.3.0" description = "AgentNave menu bar and tray app: view and clean up saved Studio conversations" license = "MIT" edition = "2024" diff --git a/docs/installation.md b/docs/installation.md index 712ebdf0..1b824dcc 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -15,7 +15,7 @@ model options, waiting, cancellation, and session continuation. Neither installs sets the calling Agent's planning, review, or retry workflow. Hosts without Skill support can use MCP alone, but must supply their own calling guidance. -**Paired release:** `v1.2.0` contains the runtime source, `agentnave-manager` Skill and all eight +**Paired release:** `v1.3.0` contains the runtime source, `agentnave-manager` Skill and all eight CLI reference files. Install both components from this tag. ## Subagent orchestration guidance @@ -30,7 +30,7 @@ not inspect process ancestry to disable tools; host identification remains best- Current AgentNave source supports Windows, macOS, and Linux. Install `uv` and Git. Set `AGENTNAVE_RELEASE` to a chosen published tag that supports the target platform, and use the same -value for the Skill in step 4. The paired release for this version is `v1.2.0`, which supports +value for the Skill in step 4. The paired release for this version is `v1.3.0`, which supports Windows, macOS, and Linux. Inspect the current installation before running an install command: @@ -575,26 +575,26 @@ Use this paired procedure for repair and rollback too. Host registrations retain launcher path. Recheck configuration and restart after changes. There is no cross-host transaction or automatic host configuration update. -### Upgrading to v1.2.0 - -Update the App; it installs the paired service by version at startup, and each host uses it only -after its MCP connection reconnects, so reconnect every host after updating. The `answer_prompt` -tool appears only after that reconnect; on Hermes, also add it to the saved per-tool selection, or -a task waiting on a native prompt stays stopped. - -On macOS and Linux, Claude subagents now run interactively by default. Their sessions appear in -Claude Code's `/resume` list, task text enters `~/.claude/history.jsonl`, and directory trust and -the last 20 characters of a confirmed API key are recorded permanently in the user's Claude Code -config. Turn it off with "Run interactively" on the Claude card under Employees, or pass -`interactive=false` where there is no App. - -Claude subagents now use the login Claude Code stored itself: the service no longer passes -`CLAUDE_CODE_OAUTH_TOKEN` to them, so a setup that relied on that variable alone has to log in to -Claude Code first. The App's automatic voice readout is gone; start listening when you want to hear -a workspace, a meeting or a private chat. - -See [v1.2.0 release notes](releases/v1.2.0.md). Earlier upgrade instructions remain in -[the release archive](releases/v1.1.0.md). +### Upgrading to v1.3.0 + +Update the App; it installs the paired service at startup. On macOS and Linux, the App updates host +MCP configurations once to point at the fixed launcher `service/bin/agentnave-mcp` under the App +data directory so later service upgrades no longer rewrite host config files (hosts such as +WorkBuddy will not ask to trust the workspace again on subsequent upgrades). Reconnect or reopen any +host copy listed on the boss card in Settings so it picks up the new launcher and runtime; on macOS, +background services (Claude background service, Codex background service, Hermes gateway) can be +stopped or restarted directly from the card. + +Available models are now configured per CLI under `clis[provider].allowed_models` in `members.json` +and shared across private tasks, meetings and orchestration seats; existing scene-level model lists +continue to work until edited in the App. Confirmed CLIs (enabled for at least private tasks or +meetings) can serve orchestration seats whenever the seat model is in their pool, without requiring +the private-task toggle itself, and an optional `image-generator` seat can be configured under +Advanced. `start_agent` and `run_round` accept an optional `wait=true` parameter and include `next` +in receipts while work remains pending. + +See [v1.3.0 release notes](releases/v1.3.0.md). Earlier upgrade instructions remain in +[the release archive](releases/v1.2.0.md). ## Uninstall diff --git a/docs/releases/v1.3.0.md b/docs/releases/v1.3.0.md new file mode 100644 index 00000000..c507ef12 --- /dev/null +++ b/docs/releases/v1.3.0.md @@ -0,0 +1,29 @@ +# AgentNave v1.3.0 + +模型配置收到每个 CLI 统一管理,高级编排增加可选生图工位;派发与等待回执引导收齐终态并支持派发后先等一次;宿主配置指向固定启动器,员工 CLI 支持并发更新。 + +## 更新 + +- **CLI 共用模型池与可选生图工位**: + - 每个 CLI 的可用模型集中收进 `clis[provider].allowed_models`,普通私聊、会议和编排工位共用同一模型池;旧配置里的场景模型列表仍兼容读取,在 App 里编辑保存后由 CLI 模型池接管。已在员工页确认的 CLI(至少开启「单独干活」或「开会」之一)只要模型在池中即可担任编排工位,不再单独受「单独干活」开关限制。详见 [ADR-0063](../adr/0063-cli-model-pool-and-orchestration-precedence.md)。 + - 高级编排新增可选的 `image-generator` 生图工位;配置后 App 会把生图派发指引写进宿主全局规则(同类宿主自动隐藏)。 +- **派发回执引导收取与顺带等待**: + - `start_agent`、`run_round` 与 `wait` 在仍有待收句柄时返回 `next`,提醒结束回合前先处理 `prompt_pending` / `review_needed` 并继续调用 `wait`。 + - `start_agent` 与启动轮次的 `run_round` 新增可选 `wait=true`:派发后直接按默认时长等一次本次句柄,结果放在回执的 `wait` 字段中。详见 [ADR-0064](../adr/0064-dispatch-receipts-steer-to-wait.md)。 +- **固定启动器与按 boss 区分的重连提示**: + - macOS 和 Linux 的宿主 MCP 配置改为指向 App 数据目录下的固定启动器 `service/bin/agentnave-mcp`,后续升级只切换它指向的版本,不再改写宿主配置文件,WorkBuddy 等宿主不必每次升级重新信任。详见 [ADR-0061](../adr/0061-fixed-service-launcher.md)。 + - 托盘 boss 卡片按宿主列出仍连着旧版的副本(终端、桌面端、Claude/Codex 后台服务、Hermes 网关)并给出各自的重开说明;在 macOS 上,三种后台服务可确认后一键停止或重启。组员拉起的中继按派发会话标记,不再算作 boss 连接。 +- **并发更新 CLI 与 Codex 来源区分**:员工页支持多个 CLI 并发更新;同时装有独立 Codex CLI 与 Codex.app 内置 CLI 时,卡片分别列出两份版本、当前使用来源和独立更新入口。详见 [ADR-0055](../adr/0055-app-updates-member-clis.md)。 +- **统一成员称呼与语音人设**: + - 成员称呼与重名编号统一由服务生成,历史记录保留当时的身份快照。详见 [ADR-0062](../adr/0062-service-owned-member-names.md)。 + - 重做角色二次元口语播报人设并补齐新同事语音设置,保留用户已有的自定义提示词。 + +## 修复 + +- 转发来源文字允许换行,并将尾部 UTC 时间转换为本地时间显示,避免长来源撑出消息卡片。 +- 全量探测期间完成的 CLI 更新结果不再被探测启动时的旧版本覆盖。 + +## 升级 + +- App:走应用内更新,或直接替换 App。macOS 与 Linux 本次会最后更新一次宿主配置以切到固定启动器,之后按 boss 卡片提示重开或重连仍在跑的旧宿主副本即可。 +- 手动安装:用 `@v1.3.0` 重装运行时和 Skill,然后重连 MCP。 diff --git a/pyproject.toml b/pyproject.toml index 345f2742..3ac4a375 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "agentnave" -version = "1.2.0" +version = "1.3.0" description = "Local MCP server for CLI-based subagents with saved, reviewable multi-CLI meetings" readme = "README.md" license = "MIT" diff --git a/src/agentnave/__init__.py b/src/agentnave/__init__.py index c4241b3e..c4956947 100644 --- a/src/agentnave/__init__.py +++ b/src/agentnave/__init__.py @@ -1,3 +1,3 @@ """AgentNave public package.""" -__version__ = "1.2.0" +__version__ = "1.3.0" diff --git a/uv.lock b/uv.lock index 0eb3fd10..2bae29e0 100644 --- a/uv.lock +++ b/uv.lock @@ -10,7 +10,7 @@ resolution-markers = [ [[package]] name = "agentnave" -version = "1.2.0" +version = "1.3.0" source = { editable = "." } dependencies = [ { name = "mcp" },