@piagent/platform 1.9.0 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/README.md +1 -1
  3. package/README.vi.md +1 -1
  4. package/docs/command-reference-vietnamese.md +2 -2
  5. package/docs/distribution-standard.md +6 -6
  6. package/docs/languages.json +2 -2
  7. package/docs/operator-manual-vietnamese.md +7 -7
  8. package/docs/publishing-for-teams.md +1 -0
  9. package/docs/release-install-policy.md +2 -2
  10. package/docs/team-onboarding.md +2 -2
  11. package/docs-site/architecture.html +1 -1
  12. package/docs-site/benchmark.html +1 -1
  13. package/docs-site/commands.html +1 -1
  14. package/docs-site/content/en/index.html +4 -4
  15. package/docs-site/content/en/whats-new.html +15 -0
  16. package/docs-site/content/index.html +4 -4
  17. package/docs-site/content/whats-new.html +15 -0
  18. package/docs-site/context-engine.html +1 -1
  19. package/docs-site/ecosystem.html +1 -1
  20. package/docs-site/en/architecture.html +1 -1
  21. package/docs-site/en/benchmark.html +1 -1
  22. package/docs-site/en/commands.html +1 -1
  23. package/docs-site/en/context-engine.html +1 -1
  24. package/docs-site/en/ecosystem.html +1 -1
  25. package/docs-site/en/index.html +5 -5
  26. package/docs-site/en/mcp-approval.html +1 -1
  27. package/docs-site/en/mcp-auth.html +1 -1
  28. package/docs-site/en/mcp-servers.html +1 -1
  29. package/docs-site/en/mcp.html +1 -1
  30. package/docs-site/en/permissions.html +1 -1
  31. package/docs-site/en/profiles.html +1 -1
  32. package/docs-site/en/quickstart.html +1 -1
  33. package/docs-site/en/runtime.html +1 -1
  34. package/docs-site/en/scope.html +1 -1
  35. package/docs-site/en/security.html +1 -1
  36. package/docs-site/en/team.html +1 -1
  37. package/docs-site/en/whats-new.html +16 -1
  38. package/docs-site/en/workflows.html +1 -1
  39. package/docs-site/index.html +5 -5
  40. package/docs-site/mcp-approval.html +1 -1
  41. package/docs-site/mcp-auth.html +1 -1
  42. package/docs-site/mcp-servers.html +1 -1
  43. package/docs-site/mcp.html +1 -1
  44. package/docs-site/permissions.html +1 -1
  45. package/docs-site/profiles.html +1 -1
  46. package/docs-site/quickstart.html +1 -1
  47. package/docs-site/runtime.html +1 -1
  48. package/docs-site/scope.html +1 -1
  49. package/docs-site/security.html +1 -1
  50. package/docs-site/team.html +1 -1
  51. package/docs-site/whats-new.html +16 -1
  52. package/docs-site/workflows.html +1 -1
  53. package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
  54. package/package.json +1 -1
  55. package/packages/piagent-core/managed/client-agent.mjs +6 -0
  56. package/packages/piagent-core/managed/helper-roles.mjs +57 -0
  57. package/packages/piagent-core/managed/request-stream.mjs +2 -1
  58. package/packages/piagent-core/managed/session.mjs +45 -24
  59. package/packages/piagent-core/managed/tool-boundary.mjs +44 -12
  60. package/packages/piagent-core/managed/web-search.mjs +38 -3
  61. package/packages/piagent-core/managed/workflow.mjs +29 -2
  62. package/packages/piagent-core/package.json +1 -1
  63. package/packages/piagent-core/runtime/managed-failure.d.mts +1 -1
  64. package/packages/piagent-core/runtime/managed-failure.mjs +5 -3
  65. package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-Dd9wPk-v.js → MarkdownMessage-BRPIMCRh.js} +1 -1
  66. package/packages/piagent-webui/dist/client/assets/{index-7I-50Q2U.js → index-DNJ1vH5d.js} +3 -3
  67. package/packages/piagent-webui/dist/client/index.html +1 -1
  68. package/packages/piagent-webui/server/transcript-projection.ts +1 -1
  69. package/schemas/piagent-webui/transcript-v1.schema.json +1 -1
  70. package/scripts/init-project.sh +0 -2
  71. package/scripts/install-global.sh +3 -2
  72. package/scripts/setup.sh +10 -6
package/CHANGELOG.md CHANGED
@@ -2,7 +2,41 @@
2
2
 
3
3
  This file records release-facing changes for Pi Agent Platform. Copy the relevant version block into GitHub Releases when publishing a tag.
4
4
 
5
- ## Unreleased
5
+ ## v1.9.1 - 2026-10-03
6
+
7
+ Two more company helpers (scout and verify) and web search for every company
8
+ role through the team's search pool. The company sandbox now runs type
9
+ checks, Vitest and end-to-end suites that it used to stop. The installer no
10
+ longer advertises commands 1.9.0 retired.
11
+
12
+ ### Install
13
+
14
+ - `piagent-install` no longer ends its next steps with `/workflow task Implement <task>`, a command 1.9.0 retired; typed in Pi, it would have reached the model as a message and started a paid turn. Work is requested in plain language.
15
+ - `/subagents-doctor` is listed in those next steps only when the install includes pi-subagents, which provides it: `piagent-install` adds it only with `--with-subagents` or when it is already installed.
16
+ - `piagent-setup` lists `/mcp` and `/subagents-doctor` in its next steps only when that run installed them (not with `--no-mcp`, `--no-subagents` or `--project-only`), and no longer lists the retired `/onboard` and `/onboard run`; its daily flow says to ask in plain language instead of `/workflow task`. `piagent-init` no longer lists `/onboard` either. A test checks that no install script prints a command 1.9.0 retired.
17
+
18
+ ### Managed team harness
19
+
20
+ - Two more helpers when the company Harness enables them, beside research and review. **Scout** reads the project only (no web, no commands) and answers with `file:line` facts. **Verify** checks a result on its own: it runs the repository's checks and confirms claims against the code and primary sources, then answers pass, fail or unverifiable for each claim, with evidence. Its commands run offline, and the project is read-only for them.
21
+ - A check that verify ran and passed counts toward the turn's process, the same as one the main agent ran.
22
+ - The main agent is offered only the helpers its Harness enables, and the prompt says when to use each one. With scout enabled, research is meant for questions that need the web. A call to a helper that the Harness lacks fails at once (`managed-helper-not-configured`).
23
+ - The dashboard counts running helpers against the number enabled, not against two.
24
+ - Every company request names the client to Studio as `piagent/<version>` (model requests and web search), so Studio's reports show Piagent and its version instead of an unknown tool.
25
+ - Company `web_search` asks Studio's search pool first, for every role: the team's search keys, then keyless providers. A Claude or Codex role falls back to its provider's own search tool when the pool is missing (an older Studio) or finds nothing. A role on an API-key vendor model (DeepSeek, MiMo and others), which has no search tool of its own, can now search. The pool request carries the run token and the role id, never a model or effort.
26
+
27
+ ### Company sandbox
28
+
29
+ - `auth.json` is blocked only at the project root and in dot folders, where credentials live (Composer, `.codex`). A translation file such as `src/locales/en/auth.json` is readable, so type checks of i18n projects pass.
30
+ - Credential files (`.env*`, `credentials*`, `.npmrc`, `.netrc` and those `auth.json`) are hidden as well as unreadable. A tool that loads them when present (Vite, Vitest, Next) runs without them instead of failing with `EPERM`.
31
+ - Committed templates (`.env.example`, `.env.sample`, `.env.template`, `.env.dist`, `.env.defaults`) are ordinary files.
32
+ - In a folder that is not a git repository, a command that only reads (`ls`, `cat`, `grep`, `git status`…, with nothing written to a file) no longer counts as a code change, so a turn that only read files and ran checks no longer reports "code changed". A command that writes still counts.
33
+ - End-to-end tests run through `run_with_network`. An approved command may start a local server and drive Playwright's Chromium against it, using:
34
+ - listening on loopback;
35
+ - the member's Playwright browsers;
36
+ - Chromium's own rendezvous services.
37
+
38
+ Other system services, Keychain among them, stay closed. The sandbox cannot tell loopback from all interfaces, so the approval card says that a server the command starts accepts connections while it runs.
39
+ - A command's own timeout, up to 30 minutes, now extends the 10-minute limit, so a build followed by an end-to-end suite fits.
6
40
 
7
41
  ## v1.9.0 - 2026-10-02
8
42
 
package/README.md CHANGED
@@ -346,7 +346,7 @@ This repository intentionally excludes:
346
346
 
347
347
  ## Maturity
348
348
 
349
- The current package version is read from package metadata and release tags. Personal machines may follow the unpinned package source when accepting ongoing updates; production/team quickstarts and committed project settings should pin an explicit tag such as `v1.9.0` or a reviewed commit.
349
+ The current package version is read from package metadata and release tags. Personal machines may follow the unpinned package source when accepting ongoing updates; production/team quickstarts and committed project settings should pin an explicit tag such as `v1.9.1` or a reviewed commit.
350
350
 
351
351
  Ready for:
352
352
 
package/README.vi.md CHANGED
@@ -175,7 +175,7 @@ Xem [bằng chứng benchmark](https://piagent.io.vn/benchmark) và
175
175
 
176
176
  Gate này chạy architecture check, test, typecheck, capability validation, runtime smoke và docs consistency trước khi release.
177
177
 
178
- Bản phát hành hiện tại là `v1.9.0`. Với team hoặc production, hãy pin tag này
178
+ Bản phát hành hiện tại là `v1.9.1`. Với team hoặc production, hãy pin tag này
179
179
  hoặc một commit đã review thay vì dựa vào nguồn package không cố định.
180
180
 
181
181
  ## Security
@@ -473,8 +473,8 @@ Các lệnh này chạy ngoài Pi.
473
473
  | Command | Dùng khi nào |
474
474
  |---|---|
475
475
  | `npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1` | Cài Pi CLI tương thích với release hiện tại. |
476
- | `npm install -g --ignore-scripts @piagent/platform@1.9.0` | Cài terminal helper `piagent-*` từ release tag hiện tại. |
477
- | `pi install git:github.com/Vt-mmm/piagent@v1.9.0` | Cài pinned release khi cần reproducible team setup. |
476
+ | `npm install -g --ignore-scripts @piagent/platform@1.9.1` | Cài terminal helper `piagent-*` từ release tag hiện tại. |
477
+ | `pi install git:github.com/Vt-mmm/piagent@v1.9.1` | Cài pinned release khi cần reproducible team setup. |
478
478
  | `pi install git:github.com/Vt-mmm/piagent` | Cài latest package platform cho máy cá nhân/sandbox. |
479
479
  | `piagent-update --check` | Báo version hiện tại vs version sẽ lên cho cả ba thành phần; không cài gì. |
480
480
  | `piagent-update` | Full update global một lệnh cho cả máy: Pi host → npm-global helper → Pi package, đúng thứ tự release yêu cầu. |
@@ -15,9 +15,9 @@ Repo này phải chạy được cho nhiều project/domain khác nhau. Vì vậ
15
15
 
16
16
  | Use case | Package source |
17
17
  |---|---|
18
- | Team pinned release | `git:github.com/Vt-mmm/piagent@v1.9.0` |
18
+ | Team pinned release | `git:github.com/Vt-mmm/piagent@v1.9.1` |
19
19
  | Personal/sandbox dev | `git:github.com/Vt-mmm/piagent` |
20
- | Registry distribution | `npm:@piagent/platform@1.9.0` |
20
+ | Registry distribution | `npm:@piagent/platform@1.9.1` |
21
21
  | Enterprise npm (fork under another scope) | `npm:@your-scope/platform@x.y.z` |
22
22
  | Local platform dev | `/path/to/piagent` |
23
23
 
@@ -54,7 +54,7 @@ Root `package.json` có `pi` manifest trỏ tới:
54
54
  Do đó team có thể:
55
55
 
56
56
  ```bash
57
- pi install git:github.com/Vt-mmm/piagent@v1.9.0
57
+ pi install git:github.com/Vt-mmm/piagent@v1.9.1
58
58
  ```
59
59
 
60
60
  Không cần biết internal folder `packages/piagent-core`. Source không pin chỉ dành cho personal/sandbox như bảng channel ở trên.
@@ -66,12 +66,12 @@ Team nên install global package một lần:
66
66
  ```bash
67
67
  node --version # >= 22.19.0
68
68
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
69
- npm install -g --ignore-scripts @piagent/platform@1.9.0
69
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
70
70
  piagent-install --stable --dry-run
71
71
  piagent-install --stable
72
72
  ```
73
73
 
74
- `pi install git:github.com/Vt-mmm/piagent@v1.9.0` vẫn hợp lệ nếu chỉ cần cài Pi package. Lệnh đó không tự tạo các binary terminal `piagent-*`; muốn có helper global thì dùng `npm install -g --ignore-scripts @piagent/platform@1.9.0`.
74
+ `pi install git:github.com/Vt-mmm/piagent@v1.9.1` vẫn hợp lệ nếu chỉ cần cài Pi package. Lệnh đó không tự tạo các binary terminal `piagent-*`; muốn có helper global thì dùng `npm install -g --ignore-scripts @piagent/platform@1.9.1`.
75
75
 
76
76
  Support matrix hiện tại: macOS Apple Silicon + Bash và Linux x64 + Bash đã được verify; macOS Intel + Bash và Linux ARM64 + Bash là supported target cần chạy smoke trước rollout; native Windows chưa phải target rollout team; WSL2 experimental. Chi tiết và version runtime nằm trong [release/install policy](release-install-policy.md).
77
77
 
@@ -118,7 +118,7 @@ Nếu muốn commit sẵn `.pi/piagent-profile.json` vào repo hoặc bootstrap
118
118
  ```bash
119
119
  bash scripts/setup.sh /path/to/project \
120
120
  --profile be-readonly-fe \
121
- --package-source git:github.com/Vt-mmm/piagent@v1.9.0 \
121
+ --package-source git:github.com/Vt-mmm/piagent@v1.9.1 \
122
122
  --mcp-preset core \
123
123
  --subagents-preset safe
124
124
  ```
@@ -21,8 +21,8 @@
21
21
  "en": "README.md",
22
22
  "vi": "README.vi.md",
23
23
  "consistentAt": {
24
- "en": "9dc98a39a89ae87d3dcd2e89e2d8621f05bc2688",
25
- "vi": "c72562383aca87d2d763fc1a2185d776a1ad18f5"
24
+ "en": "df08877854a89c977e2bc05aedb1376297351812",
25
+ "vi": "cda983fb9c58e0f6dcaa2cef74965d351e94c2df"
26
26
  }
27
27
  },
28
28
  {
@@ -19,12 +19,12 @@ Support matrix release hiện tại: macOS Apple Silicon + Bash và Linux x64 +
19
19
  ```bash
20
20
  node --version # >= 22.19.0
21
21
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
22
- npm install -g --ignore-scripts @piagent/platform@1.9.0
22
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
23
23
  piagent-install --stable --dry-run
24
24
  piagent-install --stable
25
25
  ```
26
26
 
27
- Khi seed `.pi/settings.json` cho team/repo cần audit lặp lại, giữ package source dạng pinned tag như `git:github.com/Vt-mmm/piagent@v1.9.0`. Máy cá nhân có thể dùng `git:github.com/Vt-mmm/piagent` để theo latest.
27
+ Khi seed `.pi/settings.json` cho team/repo cần audit lặp lại, giữ package source dạng pinned tag như `git:github.com/Vt-mmm/piagent@v1.9.1`. Máy cá nhân có thể dùng `git:github.com/Vt-mmm/piagent` để theo latest.
28
28
 
29
29
  Nếu đang ở source checkout của platform, dùng helper theo channel để preview trước khi đổi:
30
30
 
@@ -100,7 +100,7 @@ install package once
100
100
 
101
101
  ```bash
102
102
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
103
- npm install -g --ignore-scripts @piagent/platform@1.9.0
103
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
104
104
  piagent-install --stable --dry-run
105
105
  piagent-install --stable
106
106
  ```
@@ -285,7 +285,7 @@ Không phải daily default. Dùng khi muốn tạo sẵn `.pi` files cho projec
285
285
  bash /path/to/piagent/scripts/setup.sh /path/to/project \
286
286
  --project-only \
287
287
  --profile auto \
288
- --package-source git:github.com/Vt-mmm/piagent@v1.9.0 \
288
+ --package-source git:github.com/Vt-mmm/piagent@v1.9.1 \
289
289
  --mcp-preset core \
290
290
  --subagents-preset safe
291
291
  ```
@@ -999,8 +999,8 @@ Watchdog là optional adversarial reviewer ở cuối turn, không bật mặc
999
999
 
1000
1000
  | Command | Dùng để |
1001
1001
  |---|---|
1002
- | `npm install -g --ignore-scripts @piagent/platform@1.9.0` | Cài terminal helper `piagent-*` từ release tag hiện tại. |
1003
- | `pi install git:github.com/Vt-mmm/piagent@v1.9.0` | Install pinned release cho reproducible team setup. |
1002
+ | `npm install -g --ignore-scripts @piagent/platform@1.9.1` | Cài terminal helper `piagent-*` từ release tag hiện tại. |
1003
+ | `pi install git:github.com/Vt-mmm/piagent@v1.9.1` | Install pinned release cho reproducible team setup. |
1004
1004
  | `pi install git:github.com/Vt-mmm/piagent` | Install latest platform package cho máy cá nhân/sandbox. |
1005
1005
  | Cài exact Pi host của release, rồi `npm install -g --ignore-scripts @piagent/platform@X.Y.Z` và `piagent-install --stable` | Full update: đồng bộ host, terminal helper và Pi package. Mỗi release pin một Pi host chính xác; lấy đúng version của release đang cài trong [release/install policy](release-install-policy.md). |
1006
1006
  | Cài exact Pi host ghi trong release cũ, rồi helper `vPREVIOUS` và `piagent-install --stable` | Full rollback; đánh giá lại dependency findings của host cũ trước khi hạ version. |
@@ -1096,7 +1096,7 @@ Mở lại Pi session sau khi install.
1096
1096
  Cài lại terminal helper đúng release rồi kiểm tra `PATH`:
1097
1097
 
1098
1098
  ```bash
1099
- npm install -g --ignore-scripts @piagent/platform@1.9.0
1099
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
1100
1100
  command -v piagent-install
1101
1101
  ```
1102
1102
 
@@ -41,6 +41,7 @@ pi install /path/to/piagent
41
41
 
42
42
  ## Versioning
43
43
 
44
+ - `1.9.1`: subagent khảo sát và xác minh cho tài khoản công ty (chỉ khi Harness bật); tìm web qua search pool của Studio cho mọi vai; gửi `piagent/<version>` cho Studio. Sandbox công ty: đọc được `auth.json` nằm trong source (file dịch); giấu hẳn `.env*` (trừ file mẫu) để Vite/Vitest/Next vẫn chạy; ở thư mục không có git, lệnh chỉ đọc không còn bị tính là sửa code; E2E chạy qua `run_with_network`; bộ cài không gợi ý lệnh đã bỏ.
44
45
  - `1.9.0`: phiên freeform — bỏ task contract và các command workflow (`/workflow`, `/fresh`, `/onboard`…); khung main/research/review cho tài khoản công ty; redact credential Studio; sửa duyệt trên WebUI.
45
46
  - `1.8.0`: Pi 0.87.1, thêm GPT-6 Astra/Sol/Luna vào catalog, WebUI và tier routing opt-in. Không chạy lại 108 phiên hay claim hiệu suất GPT-6.
46
47
  - `1.7.1`: Pi 0.86.1, chờ trong phiên đang mở, sửa context/usage và phục hồi; kết quả chạy lại 14 phiên lỗi được giữ riêng, không claim một full108 mới hay tiết kiệm token tổng thể.
@@ -153,7 +153,7 @@ Use this flow when the team needs both terminal commands and the Pi package:
153
153
  ```bash
154
154
  node --version # >= 22.19.0
155
155
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
156
- npm install -g --ignore-scripts @piagent/platform@1.9.0
156
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
157
157
  piagent-install --stable --dry-run
158
158
  piagent-install --stable
159
159
  ```
@@ -179,7 +179,7 @@ bash scripts/install-global.sh --stable
179
179
  Use this only when terminal commands are not needed:
180
180
 
181
181
  ```bash
182
- pi install git:github.com/Vt-mmm/piagent@v1.9.0
182
+ pi install git:github.com/Vt-mmm/piagent@v1.9.1
183
183
  ```
184
184
 
185
185
  Direct `pi install` does not create `piagent-*` commands on `PATH`.
@@ -10,7 +10,7 @@ Một thành viên mới không cần biết local path của maintainer. Luồn
10
10
  ```bash
11
11
  node --version # >= 22.19.0
12
12
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
13
- npm install -g --ignore-scripts @piagent/platform@1.9.0
13
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
14
14
  piagent-install --stable
15
15
  cd /path/to/project
16
16
  pi
@@ -45,7 +45,7 @@ Mặc định team dùng stable helper:
45
45
  ```bash
46
46
  node --version # >= 22.19.0
47
47
  npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
48
- npm install -g --ignore-scripts @piagent/platform@1.9.0
48
+ npm install -g --ignore-scripts @piagent/platform@1.9.1
49
49
  piagent-install --stable --dry-run
50
50
  piagent-install --stable
51
51
  ```
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/architecture" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/architecture" hreflang="en" lang="en">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/benchmark" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/benchmark" hreflang="en" lang="en">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/commands" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/commands" hreflang="en" lang="en">EN</a>
@@ -1,5 +1,5 @@
1
1
  <section class="hero">
2
- <p class="eyebrow">Piagent 1.9.0</p>
2
+ <p class="eyebrow">Piagent 1.9.1</p>
3
3
  <h1>A coding agent for the whole team, checked at every step.</h1>
4
4
  <p>
5
5
  One dashboard for Terminal and the browser. Use models with your own account, or the company's models through Agent Watch and Agent Studio. The guard checks every tool call; in company mode the team's Harness asks for checks, has a subagent review the change and reports the outcome right under the answer.
@@ -13,7 +13,7 @@
13
13
  <div class="hero-actions">
14
14
  <a class="button primary" href="/en/quickstart">Get started</a>
15
15
  <a class="button" href="/en/ecosystem">Ecosystem</a>
16
- <a class="button" href="/en/whats-new">What’s new in 1.9.0</a>
16
+ <a class="button" href="/en/whats-new">What’s new in 1.9.1</a>
17
17
  <a class="button" href="/en/commands">View commands</a>
18
18
  </div>
19
19
  </section>
@@ -89,9 +89,9 @@ piagent-setup</code></pre>
89
89
  <h2 id="where-to-start">Where to start</h2>
90
90
  <div class="card-grid">
91
91
  <a class="doc-card" href="/en/whats-new">
92
- <span class="card-kicker">Release 1.9.0</span>
92
+ <span class="card-kicker">Release 1.9.1</span>
93
93
  <h3>What’s new</h3>
94
- <p>Plain-language requests, the team's Harness, network commands on approval, Stop for the whole turn and clearer approval cards.</p>
94
+ <p>Scout and verify subagents and web search for every role through the search pool; earlier in 1.9.0: plain-language requests and the team's Harness.</p>
95
95
  </a>
96
96
  <a class="doc-card" href="/en/ecosystem">
97
97
  <span class="card-kicker">Get started</span>
@@ -1,3 +1,18 @@
1
+ <section class="section">
2
+ <p class="section-kicker">v1.9.1 · 2026-10-03</p>
3
+ <h2 id="v1-9-1">Scout and verify subagents, web search for every role</h2>
4
+ <p class="section-lead">In company mode the team's Harness can enable two more subagents on cheaper models. Scout reads the code before a change. Verify runs the checks again and compares conclusions with evidence. Every role, including roles on API-key models, searches the web through the team's search pool.</p>
5
+ <div class="grid cols-3">
6
+ <article class="card"><h3 id="scout-helper">Scout subagent</h3><p>It reads the project only: no web, no commands. Its answers come with file and line. The main agent hands broad reading to it and keeps its own context for the change.</p></article>
7
+ <article class="card"><h3 id="verify-helper">Verify subagent</h3><p>It runs the repository's checks in a read-only sandbox without network, and compares each requirement with the code and primary sources. Each requirement comes back as pass, fail or unverifiable, with evidence. A check it passes counts toward the turn's process.</p></article>
8
+ <article class="card"><h3 id="search-pool">Web search through the search pool</h3><p><span class="inline-code">web_search</span> asks Studio's search pool first: the team's search keys, then keyless providers. That way roles on API-key models can search too.</p></article>
9
+ <article class="card"><h3 id="enabled-helpers">Only enabled subagents</h3><p>The main agent sees only the subagents its Harness enables. The dashboard shows running subagents against the number enabled.</p></article>
10
+ <article class="card"><h3 id="sandbox-tests">Project tests run in the sandbox</h3><p>The sandbox reads translation files named <span class="inline-code">auth.json</span> and hides <span class="inline-code">.env*</span> files outright (templates excepted), so type checks, Vitest and Next run without exposing secrets. End-to-end tests with Playwright's Chromium run as a network command you approve.</p></article>
11
+ <article class="card"><h3 id="installer-hints">Leaner installer hints</h3><p><span class="inline-code">piagent-install</span> and <span class="inline-code">piagent-setup</span> no longer suggest commands retired in 1.9.0. They mention <span class="inline-code">/mcp</span> and <span class="inline-code">/subagents-doctor</span> only when that run installed them.</p></article>
12
+ </div>
13
+ <p>One company-mode turn ran live through Studio. The scout read the repository before the change, verify reported 6 of 6 requirements passed, review found no blocking issue, and every request was metered.</p>
14
+ </section>
15
+
1
16
  <section class="section">
2
17
  <p class="section-kicker">v1.9.0 · 2026-10-02</p>
3
18
  <h2 id="v1-9-0">Ask in plain language; the team's Harness does the checking</h2>
@@ -1,5 +1,5 @@
1
1
  <section class="hero">
2
- <p class="eyebrow">Piagent 1.9.0</p>
2
+ <p class="eyebrow">Piagent 1.9.1</p>
3
3
  <h1>Coding agent cho cả team, kiểm tra từng bước.</h1>
4
4
  <p>
5
5
  Một dashboard cho Terminal và trình duyệt. Dùng model bằng tài khoản của bạn, hoặc model của công ty qua Agent Watch và Agent Studio. Guard kiểm tra từng tool call; ở chế độ công ty, Harness của team tự yêu cầu chạy check, cho subagent review và báo kết quả ngay dưới câu trả lời.
@@ -13,7 +13,7 @@
13
13
  <div class="hero-actions">
14
14
  <a class="button primary" href="/quickstart">Bắt đầu</a>
15
15
  <a class="button" href="/ecosystem">Hệ sinh thái</a>
16
- <a class="button" href="/whats-new">Có gì mới trong 1.9.0</a>
16
+ <a class="button" href="/whats-new">Có gì mới trong 1.9.1</a>
17
17
  <a class="button" href="/commands">Xem command</a>
18
18
  </div>
19
19
  </section>
@@ -89,9 +89,9 @@ piagent-setup</code></pre>
89
89
  <h2 id="bat-dau-tu-dau">Bắt đầu từ đâu</h2>
90
90
  <div class="card-grid">
91
91
  <a class="doc-card" href="/whats-new">
92
- <span class="card-kicker">Bản 1.9.0</span>
92
+ <span class="card-kicker">Bản 1.9.1</span>
93
93
  <h3>Có gì mới</h3>
94
- <p>Giao việc bằng lời thường, Harness của team, lệnh có mạng theo lần duyệt, nút Dừng suốt lượt và thẻ duyệt dễ đọc.</p>
94
+ <p>Subagent khảo sát và xác minh, tìm web cho mọi vai qua search pool; trước đó ở 1.9.0: giao việc bằng lời thường và Harness của team.</p>
95
95
  </a>
96
96
  <a class="doc-card" href="/ecosystem">
97
97
  <span class="card-kicker">Get started</span>
@@ -1,3 +1,18 @@
1
+ <section class="section">
2
+ <p class="section-kicker">v1.9.1 · 2026-10-03</p>
3
+ <h2 id="v1-9-1">Subagent khảo sát và xác minh, tìm web cho mọi vai</h2>
4
+ <p class="section-lead">Ở chế độ công ty, Harness của team bật thêm được hai subagent chạy model rẻ. Subagent khảo sát đọc code trước khi sửa. Subagent xác minh chạy lại check và đối chiếu kết luận với bằng chứng. Mọi vai, kể cả vai chạy model API key, tìm web qua search pool của team.</p>
5
+ <div class="grid cols-3">
6
+ <article class="card"><h3 id="scout-helper">Subagent khảo sát</h3><p>Chỉ đọc project, không lên web và không chạy lệnh. Kết quả trả về kèm file và dòng. Agent chính giao phần đọc rộng cho nó để giữ context cho việc sửa.</p></article>
7
+ <article class="card"><h3 id="verify-helper">Subagent xác minh</h3><p>Chạy check của repo trong sandbox chỉ-đọc, không có mạng, và đối chiếu từng yêu cầu với code và nguồn gốc. Mỗi yêu cầu được trả lời là đạt, không đạt hoặc không kiểm được, kèm bằng chứng. Check nó chạy qua được tính vào quy trình của lượt.</p></article>
8
+ <article class="card"><h3 id="search-pool">Tìm web qua search pool</h3><p><span class="inline-code">web_search</span> hỏi search pool của Studio trước: key tìm kiếm của team, rồi tới nguồn không cần key. Nhờ vậy vai chạy model API key cũng tìm được web.</p></article>
9
+ <article class="card"><h3 id="enabled-helpers">Chỉ subagent được bật</h3><p>Agent chính chỉ thấy các subagent mà Harness bật. Dashboard hiện số subagent đang chạy trên số được bật.</p></article>
10
+ <article class="card"><h3 id="sandbox-tests">Sandbox chạy được test của project</h3><p>Sandbox đọc được file dịch tên <span class="inline-code">auth.json</span> và giấu hẳn file <span class="inline-code">.env*</span> (trừ file mẫu), nên type-check, Vitest và Next chạy được mà không lộ secret. E2E bằng Chromium của Playwright chạy qua lệnh có mạng mà bạn duyệt.</p></article>
11
+ <article class="card"><h3 id="installer-hints">Bộ cài gọn hơn</h3><p><span class="inline-code">piagent-install</span> và <span class="inline-code">piagent-setup</span> không còn gợi ý lệnh đã bỏ ở 1.9.0. Chúng chỉ nhắc <span class="inline-code">/mcp</span> và <span class="inline-code">/subagents-doctor</span> khi lần cài đó có cài chúng.</p></article>
12
+ </div>
13
+ <p>Đã chạy thật một lượt ở chế độ công ty qua Studio. Subagent khảo sát đọc repo trước khi sửa, subagent xác minh báo 6/6 yêu cầu đạt, review không có lỗi chặn, và mọi request đều được tính usage.</p>
14
+ </section>
15
+
1
16
  <section class="section">
2
17
  <p class="section-kicker">v1.9.0 · 2026-10-02</p>
3
18
  <h2 id="v1-9-0">Nói việc bằng lời, Harness của team lo phần kiểm tra</h2>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/context-engine" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/context-engine" hreflang="en" lang="en">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/ecosystem" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/ecosystem" hreflang="en" lang="en">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/architecture" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/architecture" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/benchmark" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/benchmark" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/commands" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/commands" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/context-engine" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/context-engine" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/ecosystem" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/ecosystem" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -93,7 +93,7 @@
93
93
  <main>
94
94
  <div class="content-shell" data-article>
95
95
  <section class="hero">
96
- <p class="eyebrow">Piagent 1.9.0</p>
96
+ <p class="eyebrow">Piagent 1.9.1</p>
97
97
  <h1>A coding agent for the whole team, checked at every step.</h1>
98
98
  <p>
99
99
  One dashboard for Terminal and the browser. Use models with your own account, or the company's models through Agent Watch and Agent Studio. The guard checks every tool call; in company mode the team's Harness asks for checks, has a subagent review the change and reports the outcome right under the answer.
@@ -107,7 +107,7 @@
107
107
  <div class="hero-actions">
108
108
  <a class="button primary" href="/en/quickstart">Get started</a>
109
109
  <a class="button" href="/en/ecosystem">Ecosystem</a>
110
- <a class="button" href="/en/whats-new">What’s new in 1.9.0</a>
110
+ <a class="button" href="/en/whats-new">What’s new in 1.9.1</a>
111
111
  <a class="button" href="/en/commands">View commands</a>
112
112
  </div>
113
113
  </section>
@@ -183,9 +183,9 @@ piagent-setup</code></pre>
183
183
  <h2 id="where-to-start">Where to start</h2>
184
184
  <div class="card-grid">
185
185
  <a class="doc-card" href="/en/whats-new">
186
- <span class="card-kicker">Release 1.9.0</span>
186
+ <span class="card-kicker">Release 1.9.1</span>
187
187
  <h3>What’s new</h3>
188
- <p>Plain-language requests, the team's Harness, network commands on approval, Stop for the whole turn and clearer approval cards.</p>
188
+ <p>Scout and verify subagents and web search for every role through the search pool; earlier in 1.9.0: plain-language requests and the team's Harness.</p>
189
189
  </a>
190
190
  <a class="doc-card" href="/en/ecosystem">
191
191
  <span class="card-kicker">Get started</span>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/mcp-approval" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/mcp-approval" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/mcp-auth" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/mcp-auth" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/mcp-servers" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/mcp-servers" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/mcp" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/mcp" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/permissions" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/permissions" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/profiles" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/profiles" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/quickstart" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/quickstart" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/runtime" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/runtime" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/scope" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/scope" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/security" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/security" hreflang="en" lang="en" aria-current="true">EN</a>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · EN</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.1 docs · EN</span>
34
34
  <nav class="language-switch" aria-label="Language">
35
35
  <a class="language-option" href="/team" hreflang="vi" lang="vi">VI</a>
36
36
  <a class="language-option current" href="/en/team" hreflang="en" lang="en" aria-current="true">EN</a>