Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/workflows/helm-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ on:
paths:
- 'helm/**'
- 'install/agentteams-install.sh'
- 'install/agentteams-install.ps1'
- 'openhuman/scripts/openhuman-worker-entrypoint.sh'
- 'tests/check-agentteams-rename-defaults.sh'
- 'tests/check-installer-pre-1.2-env-compat.sh'
- 'tests/check-installer-token-plan-models.sh'
- 'tests/check-helm-agentteams.sh'
workflow_dispatch: ~

Expand All @@ -24,6 +26,9 @@ jobs:
- name: Check pre-v1.2 installer compatibility
run: bash tests/check-installer-pre-1.2-env-compat.sh

- name: Check installer Token Plan models
run: bash tests/check-installer-token-plan-models.sh

- name: Set up Helm
uses: azure/setup-helm@v4
with:
Expand Down
1 change: 1 addition & 0 deletions changelog/current.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Record release-facing changes here before the next release.

**Bug Fixes**

- **Installer Token Plan models**: Update the quick-start Token Plan GLM option to `glm-5.2` while accepting existing `glm-5` values during upgrades. (Refs [#1076](https://github.com/agentscope-ai/AgentTeams/issues/1076))
- **QwenPaw MCP policy startup convergence**: Persist built-in plugin MCP policies before runtime desired-state reloads so a replacement QwenPaw workspace cannot retain the pre-policy interactive approval handler.
- **QwenPaw Team policy and runtime-aware acceptance**: Merge Team and Worker channel-policy overrides into QwenPaw `runtime.yaml`, wait for public plugin/API state before integration assertions, and verify prompt/config files from the runtime location that consumes them.
- **QwenPaw 2.0 tool execution**: Preserve QwenPaw's asynchronous tool-result stream while sanitizing output, and allow only the built-in TeamHarness and Workerflow MCP drivers to run without an unavailable interactive approval prompt.
Expand Down
2 changes: 1 addition & 1 deletion docs/windows-deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ If you selected CodingPlan in the previous step, a model selection menu appears:
```
Select CodingPlan Default Model:
1) qwen3.5-plus - Qwen 3.5 (Fastest)
2) glm-5 - Zhipu GLM-5 (Recommended for coding)
2) glm-5.2 - Zhipu GLM-5.2 (Recommended for coding)
3) kimi-k2.5 - Moonshot Kimi K2.5
4) MiniMax-M2.5 - MiniMax M2.5

Expand Down
2 changes: 1 addition & 1 deletion docs/zh-cn/windows-deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ Set-ExecutionPolicy Bypass -Scope Process -Force; $wc=New-Object Net.WebClient;
```
选择 CodingPlan 默认模型:
1) qwen3.5-plus - 千问 3.5(速度最快)
2) glm-5 - 智谱 GLM-5(编程推荐)
2) glm-5.2 - 智谱 GLM-5.2(编程推荐)
3) kimi-k2.5 - Moonshot Kimi K2.5
4) MiniMax-M2.5 - MiniMax M2.5

Expand Down
10 changes: 6 additions & 4 deletions install/agentteams-install.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -319,7 +319,7 @@ $script:Messages = @{
"llm.alibaba.model.invalid" = @{ zh = "无效选择: {0}(请输入 1、2 或 3)"; en = "Invalid choice: {0} (please enter 1, 2, or 3)" }
"llm.codingplan.models_title" = @{ zh = "选择通义 Token 套餐默认模型:"; en = "Select Qwen Cloud default model:" }
"llm.codingplan.model.qwen36plus" = @{ zh = " 1) qwen3.6-plus - 千问 3.6(推荐)"; en = " 1) qwen3.6-plus - Qwen 3.6 (recommended)" }
"llm.codingplan.model.glm5" = @{ zh = " 2) glm-5 - 智谱 GLM-5(编程推荐)"; en = " 2) glm-5 - Zhipu GLM-5 (recommended for coding)" }
"llm.codingplan.model.glm5" = @{ zh = " 2) glm-5.2 - 智谱 GLM-5.2(编程推荐)"; en = " 2) glm-5.2 - Zhipu GLM-5.2 (recommended for coding)" }
"llm.codingplan.model.kimi" = @{ zh = " 3) kimi-k2.5 - Moonshot Kimi K2.5"; en = " 3) kimi-k2.5 - Moonshot Kimi K2.5" }
"llm.codingplan.model.minimax" = @{ zh = " 4) MiniMax-M2.5 - MiniMax M2.5"; en = " 4) MiniMax-M2.5 - MiniMax M2.5" }
"llm.codingplan.model.select" = @{ zh = "选择模型 [1/2/3/4]"; en = "Select model [1/2/3/4]" }
Expand Down Expand Up @@ -676,7 +676,7 @@ $script:KnownModels = @(
"gpt-5.4", "gpt-5.3-codex", "gpt-5-mini", "gpt-5-nano",
"claude-opus-4-6", "claude-sonnet-4-6", "claude-haiku-4-5",
"qwen3.6-plus", "qwen3.5-plus", "deepseek-chat", "deepseek-reasoner",
"kimi-k2.5", "glm-5", "MiniMax-M2.7", "MiniMax-M2.7-highspeed", "MiniMax-M2.5"
"kimi-k2.5", "glm-5.2", "glm-5", "MiniMax-M2.7", "MiniMax-M2.7-highspeed", "MiniMax-M2.5"
)

function Test-KnownModel {
Expand Down Expand Up @@ -1787,6 +1787,7 @@ function Step-Llm {
$defaultModel = switch ($script:config.DEFAULT_MODEL) {
"qwen3.6-plus" { "1" }
"glm-5" { "2" }
"glm-5.2" { "2" }
"kimi-k2.5" { "3" }
"MiniMax-M2.5" { "4" }
default { "1" }
Expand All @@ -1802,7 +1803,7 @@ function Step-Llm {
if ($codingPlanModelChoice -eq "b") { $script:StepResult = "back"; return }
switch -Regex ($codingPlanModelChoice) {
"^(1|qwen3\.6-plus)$" { $script:config.DEFAULT_MODEL = "qwen3.6-plus" }
"^(2|glm-5)$" { $script:config.DEFAULT_MODEL = "glm-5" }
"^(2|glm-5|glm-5\.2)$" { $script:config.DEFAULT_MODEL = "glm-5.2" }
"^(3|kimi-k2\.5)$" { $script:config.DEFAULT_MODEL = "kimi-k2.5" }
"^(4|MiniMax-M2\.5)$" { $script:config.DEFAULT_MODEL = "MiniMax-M2.5" }
default { $script:config.DEFAULT_MODEL = "qwen3.6-plus" }
Expand Down Expand Up @@ -1839,6 +1840,7 @@ function Step-Llm {
$defaultModel = switch ($script:config.DEFAULT_MODEL) {
"qwen3.6-plus" { "1" }
"glm-5" { "2" }
"glm-5.2" { "2" }
"kimi-k2.5" { "3" }
"MiniMax-M2.5" { "4" }
default { "1" }
Expand All @@ -1854,7 +1856,7 @@ function Step-Llm {
if ($codingPlanModelChoice -eq "b") { $script:StepResult = "back"; return }
switch -Regex ($codingPlanModelChoice) {
"^(1|qwen3\.6-plus)$" { $script:config.DEFAULT_MODEL = "qwen3.6-plus" }
"^(2|glm-5)$" { $script:config.DEFAULT_MODEL = "glm-5" }
"^(2|glm-5|glm-5\.2)$" { $script:config.DEFAULT_MODEL = "glm-5.2" }
"^(3|kimi-k2\.5)$" { $script:config.DEFAULT_MODEL = "kimi-k2.5" }
"^(4|MiniMax-M2\.5)$" { $script:config.DEFAULT_MODEL = "MiniMax-M2.5" }
default { $script:config.DEFAULT_MODEL = "qwen3.6-plus" }
Expand Down
14 changes: 7 additions & 7 deletions install/agentteams-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -471,8 +471,8 @@ msg() {
"llm.codingplan.models_title.en") text="Select Qwen Cloud default model:" ;;
"llm.codingplan.model.qwen36plus.zh") text=" 1) qwen3.6-plus - 千问 3.6(推荐)" ;;
"llm.codingplan.model.qwen36plus.en") text=" 1) qwen3.6-plus - Qwen 3.6 (recommended)" ;;
"llm.codingplan.model.glm5.zh") text=" 2) glm-5 - 智谱 GLM-5(编程推荐)" ;;
"llm.codingplan.model.glm5.en") text=" 2) glm-5 - Zhipu GLM-5 (recommended for coding)" ;;
"llm.codingplan.model.glm5.zh") text=" 2) glm-5.2 - 智谱 GLM-5.2(编程推荐)" ;;
"llm.codingplan.model.glm5.en") text=" 2) glm-5.2 - Zhipu GLM-5.2 (recommended for coding)" ;;
"llm.codingplan.model.kimi.zh") text=" 3) kimi-k2.5 - Moonshot Kimi K2.5" ;;
"llm.codingplan.model.kimi.en") text=" 3) kimi-k2.5 - Moonshot Kimi K2.5" ;;
"llm.codingplan.model.minimax.zh") text=" 4) MiniMax-M2.5 - MiniMax M2.5" ;;
Expand Down Expand Up @@ -1185,7 +1185,7 @@ resolve_embedded_image() {
# ============================================================
# Known models list — used to detect custom models during install
# ============================================================
KNOWN_MODELS="gpt-5.4 gpt-5.3-codex gpt-5-mini gpt-5-nano claude-opus-4-6 claude-sonnet-4-6 claude-haiku-4-5 qwen3.6-plus qwen3.5-plus deepseek-chat deepseek-reasoner kimi-k2.5 glm-5 MiniMax-M2.7 MiniMax-M2.7-highspeed MiniMax-M2.5"
KNOWN_MODELS="gpt-5.4 gpt-5.3-codex gpt-5-mini gpt-5-nano claude-opus-4-6 claude-sonnet-4-6 claude-haiku-4-5 qwen3.6-plus qwen3.5-plus deepseek-chat deepseek-reasoner kimi-k2.5 glm-5.2 glm-5 MiniMax-M2.7 MiniMax-M2.7-highspeed MiniMax-M2.5"

is_known_model() {
local model="$1"
Expand Down Expand Up @@ -2092,7 +2092,7 @@ step_llm() {
local _model_default
case "${AGENTTEAMS_DEFAULT_MODEL}" in
qwen3.6-plus) _model_default="1" ;;
glm-5) _model_default="2" ;;
glm-5|glm-5.2) _model_default="2" ;;
kimi-k2.5) _model_default="3" ;;
MiniMax-M2.5) _model_default="4" ;;
*) _model_default="1" ;;
Expand All @@ -2109,7 +2109,7 @@ step_llm() {
if [ "${CODINGPLAN_MODEL_CHOICE}" = "b" ]; then STEP_RESULT="back"; return 0; fi
case "${CODINGPLAN_MODEL_CHOICE}" in
1|qwen3.6-plus) AGENTTEAMS_DEFAULT_MODEL="qwen3.6-plus" ;;
2|glm-5) AGENTTEAMS_DEFAULT_MODEL="glm-5" ;;
2|glm-5|glm-5.2) AGENTTEAMS_DEFAULT_MODEL="glm-5.2" ;;
3|kimi-k2.5) AGENTTEAMS_DEFAULT_MODEL="kimi-k2.5" ;;
4|MiniMax-M2.5) AGENTTEAMS_DEFAULT_MODEL="MiniMax-M2.5" ;;
*) AGENTTEAMS_DEFAULT_MODEL="qwen3.6-plus" ;;
Expand Down Expand Up @@ -2163,7 +2163,7 @@ step_llm() {
local _model_default
case "${AGENTTEAMS_DEFAULT_MODEL}" in
qwen3.6-plus) _model_default="1" ;;
glm-5) _model_default="2" ;;
glm-5|glm-5.2) _model_default="2" ;;
kimi-k2.5) _model_default="3" ;;
MiniMax-M2.5) _model_default="4" ;;
*) _model_default="1" ;;
Expand All @@ -2180,7 +2180,7 @@ step_llm() {
if [ "${CODINGPLAN_MODEL_CHOICE}" = "b" ]; then STEP_RESULT="back"; return 0; fi
case "${CODINGPLAN_MODEL_CHOICE}" in
1|qwen3.6-plus) AGENTTEAMS_DEFAULT_MODEL="qwen3.6-plus" ;;
2|glm-5) AGENTTEAMS_DEFAULT_MODEL="glm-5" ;;
2|glm-5|glm-5.2) AGENTTEAMS_DEFAULT_MODEL="glm-5.2" ;;
3|kimi-k2.5) AGENTTEAMS_DEFAULT_MODEL="kimi-k2.5" ;;
4|MiniMax-M2.5) AGENTTEAMS_DEFAULT_MODEL="MiniMax-M2.5" ;;
*) AGENTTEAMS_DEFAULT_MODEL="qwen3.6-plus" ;;
Expand Down
37 changes: 37 additions & 0 deletions tests/check-installer-token-plan-models.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/usr/bin/env bash

set -euo pipefail

ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
SHELL_INSTALLER="${ROOT_DIR}/install/agentteams-install.sh"
POWERSHELL_INSTALLER="${ROOT_DIR}/install/agentteams-install.ps1"
WINDOWS_DOC="${ROOT_DIR}/docs/windows-deploy.md"
WINDOWS_DOC_ZH="${ROOT_DIR}/docs/zh-cn/windows-deploy.md"

require_line() {
local path="$1"
local expected="$2"
if ! grep -Fq "${expected}" "${path}"; then
echo "FAIL: expected ${path} to contain: ${expected}" >&2
exit 1
fi
}

reject_line() {
local path="$1"
local unexpected="$2"
if grep -Fq "${unexpected}" "${path}"; then
echo "FAIL: ${path} still contains stale Token Plan model entry: ${unexpected}" >&2
exit 1
fi
}

for path in "${SHELL_INSTALLER}" "${POWERSHELL_INSTALLER}" "${WINDOWS_DOC}" "${WINDOWS_DOC_ZH}"; do
require_line "${path}" "glm-5.2"
reject_line "${path}" " 2) glm-5 -"
done

require_line "${SHELL_INSTALLER}" '2|glm-5|glm-5.2) AGENTTEAMS_DEFAULT_MODEL="glm-5.2"'
require_line "${POWERSHELL_INSTALLER}" '"^(2|glm-5|glm-5\.2)$" { $script:config.DEFAULT_MODEL = "glm-5.2" }'

echo "PASS: installer Token Plan menus use glm-5.2"