@piagent/platform 1.8.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 (221) hide show
  1. package/AGENTS.md +7 -0
  2. package/CHANGELOG.md +132 -2
  3. package/README.md +45 -70
  4. package/README.vi.md +34 -61
  5. package/architecture/layers.json +16 -3
  6. package/catalog/capabilities.json +14 -7
  7. package/catalog/claude-model-additions.json +42 -0
  8. package/docs/auto-delegation-policy.md +2 -0
  9. package/docs/command-reference-vietnamese.md +68 -90
  10. package/docs/context-window-policy.md +5 -5
  11. package/docs/distribution-standard.md +13 -16
  12. package/docs/en/architecture.md +9 -1
  13. package/docs/herdr-workflow.md +2 -3
  14. package/docs/languages.json +4 -4
  15. package/docs/managed-local-acceptance.md +403 -0
  16. package/docs/mcp-and-tools.md +5 -7
  17. package/docs/memory-policy.md +3 -3
  18. package/docs/model-options.md +2 -2
  19. package/docs/oauth-providers.md +1 -1
  20. package/docs/operator-manual-vietnamese.md +82 -127
  21. package/docs/package-architecture-notes.md +4 -4
  22. package/docs/piagent-core-improvement-plan.md +3 -5
  23. package/docs/piagent-core-plan-checkpoint-2026-09-06.json +2 -13
  24. package/docs/piagent-runtime-benchmark-execution-plan.md +10 -8
  25. package/docs/project-adapters.md +3 -3
  26. package/docs/project-onboarding.md +15 -16
  27. package/docs/publishing-for-teams.md +3 -1
  28. package/docs/quality-benchmark.md +2 -0
  29. package/docs/quickstart-vietnamese.md +23 -24
  30. package/docs/release-install-policy.md +3 -2
  31. package/docs/research/harness-next-evidence-review.md +7 -7
  32. package/docs/runtime-harness-standard.md +2 -0
  33. package/docs/runtime-policy-design.md +2 -0
  34. package/docs/runtime-quality-baseline.md +2 -0
  35. package/docs/subagent-orchestration-capabilities.md +1 -1
  36. package/docs/subagents-and-multiagent.md +10 -8
  37. package/docs/task-implementation-contract.md +2 -0
  38. package/docs/task-lifecycle-vietnamese.md +2 -0
  39. package/docs/team-onboarding.md +28 -59
  40. package/docs/usage-observability.md +2 -2
  41. package/docs/vi/architecture.md +9 -1
  42. package/docs/workflow-recipes.md +6 -10
  43. package/docs-site/architecture.html +4 -3
  44. package/docs-site/assets/docs.css +80 -0
  45. package/docs-site/benchmark.html +7 -1
  46. package/docs-site/commands.html +37 -23
  47. package/docs-site/content/architecture.html +2 -2
  48. package/docs-site/content/benchmark.html +5 -0
  49. package/docs-site/content/commands.html +35 -22
  50. package/docs-site/content/ecosystem.html +144 -0
  51. package/docs-site/content/en/architecture.html +1 -1
  52. package/docs-site/content/en/benchmark.html +5 -0
  53. package/docs-site/content/en/commands.html +30 -13
  54. package/docs-site/content/en/ecosystem.html +144 -0
  55. package/docs-site/content/en/index.html +24 -9
  56. package/docs-site/content/en/quickstart.html +10 -12
  57. package/docs-site/content/en/security.html +1 -1
  58. package/docs-site/content/en/team.html +2 -2
  59. package/docs-site/content/en/whats-new.html +92 -1
  60. package/docs-site/content/en/workflows.html +29 -31
  61. package/docs-site/content/index.html +24 -9
  62. package/docs-site/content/quickstart.html +10 -12
  63. package/docs-site/content/security.html +2 -2
  64. package/docs-site/content/team.html +2 -2
  65. package/docs-site/content/whats-new.html +92 -1
  66. package/docs-site/content/workflows.html +36 -38
  67. package/docs-site/context-engine.html +2 -1
  68. package/docs-site/ecosystem.html +283 -0
  69. package/docs-site/en/architecture.html +3 -2
  70. package/docs-site/en/benchmark.html +7 -1
  71. package/docs-site/en/commands.html +32 -14
  72. package/docs-site/en/context-engine.html +2 -1
  73. package/docs-site/en/ecosystem.html +283 -0
  74. package/docs-site/en/index.html +30 -14
  75. package/docs-site/en/mcp-approval.html +2 -1
  76. package/docs-site/en/mcp-auth.html +2 -1
  77. package/docs-site/en/mcp-servers.html +2 -1
  78. package/docs-site/en/mcp.html +2 -1
  79. package/docs-site/en/permissions.html +2 -1
  80. package/docs-site/en/profiles.html +2 -1
  81. package/docs-site/en/quickstart.html +17 -18
  82. package/docs-site/en/runtime.html +2 -1
  83. package/docs-site/en/scope.html +2 -1
  84. package/docs-site/en/security.html +6 -5
  85. package/docs-site/en/team.html +4 -3
  86. package/docs-site/en/whats-new.html +100 -8
  87. package/docs-site/en/workflows.html +34 -35
  88. package/docs-site/index.html +30 -14
  89. package/docs-site/mcp-approval.html +2 -1
  90. package/docs-site/mcp-auth.html +2 -1
  91. package/docs-site/mcp-servers.html +2 -1
  92. package/docs-site/mcp.html +2 -1
  93. package/docs-site/permissions.html +2 -1
  94. package/docs-site/profiles.html +2 -1
  95. package/docs-site/quickstart.html +17 -18
  96. package/docs-site/runtime.html +2 -1
  97. package/docs-site/scope.html +2 -1
  98. package/docs-site/security.html +7 -6
  99. package/docs-site/team.html +4 -3
  100. package/docs-site/whats-new.html +100 -8
  101. package/docs-site/workflows.html +41 -42
  102. package/evals/fs5-causal-arm.v1.json +2 -2
  103. package/evals/private-holdout-v1/CURRENT_BOUNDARY.md +17 -0
  104. package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
  105. package/package.json +8 -7
  106. package/packages/piagent-core/README.md +15 -23
  107. package/packages/piagent-core/docs/context-efficiency-improvement-plan.md +2 -0
  108. package/packages/piagent-core/extensions/experiment-loop-policy.ts +75 -0
  109. package/packages/piagent-core/extensions/local-state-path.js +15 -0
  110. package/packages/piagent-core/extensions/piagent-guard.ts +108 -960
  111. package/packages/piagent-core/extensions/policy-core.js +2 -2
  112. package/packages/piagent-core/extensions/source-checkout-paths.ts +54 -0
  113. package/packages/piagent-core/managed/broker-client.mjs +49 -0
  114. package/packages/piagent-core/managed/capabilities.mjs +28 -0
  115. package/packages/piagent-core/managed/client-agent.mjs +6 -0
  116. package/packages/piagent-core/managed/compaction.mjs +63 -0
  117. package/packages/piagent-core/managed/doctor.mjs +107 -0
  118. package/packages/piagent-core/managed/helper-roles.mjs +57 -0
  119. package/packages/piagent-core/managed/native-catalog.mjs +42 -0
  120. package/packages/piagent-core/managed/patch-snapshot.mjs +48 -0
  121. package/packages/piagent-core/managed/repository-operation.mjs +84 -0
  122. package/packages/piagent-core/managed/request-stream.mjs +130 -0
  123. package/packages/piagent-core/managed/resource-loader.mjs +42 -0
  124. package/packages/piagent-core/managed/review-snapshot-worker.mjs +27 -0
  125. package/packages/piagent-core/managed/sandbox-diagnostic.mjs +12 -0
  126. package/packages/piagent-core/managed/search-fallback.mjs +93 -0
  127. package/packages/piagent-core/managed/session.mjs +493 -0
  128. package/packages/piagent-core/managed/store.d.mts +3 -0
  129. package/packages/piagent-core/managed/store.mjs +64 -0
  130. package/packages/piagent-core/managed/tool-boundary.mjs +275 -0
  131. package/packages/piagent-core/managed/tool-worker.mjs +36 -0
  132. package/packages/piagent-core/managed/toolchain.mjs +120 -0
  133. package/packages/piagent-core/managed/web-fetch.mjs +105 -0
  134. package/packages/piagent-core/managed/web-search.mjs +131 -0
  135. package/packages/piagent-core/managed/workflow.mjs +326 -0
  136. package/packages/piagent-core/package.json +2 -5
  137. package/packages/piagent-core/policies/base-policy.json +80 -26
  138. package/packages/piagent-core/runtime/hooks/agent-start-hook.ts +3 -3
  139. package/packages/piagent-core/runtime/hooks/input-hook.ts +35 -196
  140. package/packages/piagent-core/runtime/hooks/session-start-hook.ts +2 -0
  141. package/packages/piagent-core/runtime/inspection/approval-broker.ts +9 -1
  142. package/packages/piagent-core/runtime/managed-failure.d.mts +10 -0
  143. package/packages/piagent-core/runtime/managed-failure.mjs +166 -0
  144. package/packages/piagent-core/runtime/orchestration/minimal-delegation-policy.ts +8 -29
  145. package/packages/piagent-core/runtime/orchestration/owned-work-budget.ts +1 -1
  146. package/packages/piagent-core/runtime/policy/block-remedy.ts +5 -3
  147. package/packages/piagent-core/runtime/registration/context-commands.ts +1 -1
  148. package/packages/piagent-core/runtime/registration/knowledge-tools.ts +7 -7
  149. package/packages/piagent-core/runtime/registration/policy-tools.ts +2 -2
  150. package/packages/piagent-core/runtime/registration/session-commands.ts +11 -26
  151. package/packages/piagent-core/runtime/registration/task-evidence-tools.ts +1 -1
  152. package/packages/piagent-core/runtime/session/system-prompt.ts +6 -7
  153. package/packages/piagent-core/runtime/workflows/webui-runtime-command.ts +6 -6
  154. package/packages/piagent-core/runtime/workflows/webui-workflow.ts +6 -11
  155. package/packages/piagent-core/security/sensitive-text.js +9 -0
  156. package/packages/piagent-core/skills/piagent-ops/SKILL.md +8 -10
  157. package/packages/piagent-core/skills/test-audit/SKILL.md +101 -0
  158. package/packages/piagent-core/subagents/piagent-planner.md +1 -1
  159. package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-DMU7Xe_O.js → MarkdownMessage-BRPIMCRh.js} +1 -1
  160. package/packages/piagent-webui/dist/client/assets/index-DNJ1vH5d.js +228 -0
  161. package/packages/piagent-webui/dist/client/assets/{index-DVahUVWy.css → index-DgSmcnP8.css} +1 -1
  162. package/packages/piagent-webui/dist/client/index.html +2 -2
  163. package/packages/piagent-webui/extension/piagent-webui.ts +11 -11
  164. package/packages/piagent-webui/extension/session-stream-adapter.ts +3 -1
  165. package/packages/piagent-webui/extension/terminal-session-adapter.ts +6 -1
  166. package/packages/piagent-webui/gateway/company-relay.ts +308 -0
  167. package/packages/piagent-webui/gateway/control-socket.ts +39 -12
  168. package/packages/piagent-webui/gateway/gateway-service.ts +109 -28
  169. package/packages/piagent-webui/gateway/gateway-session-stream.ts +58 -2
  170. package/packages/piagent-webui/gateway/managed-gateway.mjs +41 -0
  171. package/packages/piagent-webui/gateway/managed-launch.ts +145 -0
  172. package/packages/piagent-webui/gateway/managed-projection.ts +20 -0
  173. package/packages/piagent-webui/gateway/pi-host.ts +22 -4
  174. package/packages/piagent-webui/gateway/runtime-session-controls.ts +5 -2
  175. package/packages/piagent-webui/gateway/session-approval-authority.ts +28 -0
  176. package/packages/piagent-webui/gateway/session-catalog.ts +11 -3
  177. package/packages/piagent-webui/gateway/session-command-controller.ts +8 -2
  178. package/packages/piagent-webui/gateway/session-file-facts.ts +25 -0
  179. package/packages/piagent-webui/gateway/session-inspection-registry.ts +40 -9
  180. package/packages/piagent-webui/gateway/session-list-cache.ts +68 -0
  181. package/packages/piagent-webui/gateway/session-runtime-ownership.ts +8 -1
  182. package/packages/piagent-webui/gateway/session-runtime-supervisor.ts +20 -27
  183. package/packages/piagent-webui/ownership/managed-terminal-lease.ts +27 -0
  184. package/packages/piagent-webui/ownership/profile-state.ts +2 -0
  185. package/packages/piagent-webui/ownership/session-lease-store.ts +22 -1
  186. package/packages/piagent-webui/server/approval-projection.ts +9 -0
  187. package/packages/piagent-webui/server/core-inspection-provider.ts +4 -9
  188. package/packages/piagent-webui/server/loopback-server.ts +37 -1
  189. package/packages/piagent-webui/server/message-stop-reason.ts +11 -0
  190. package/packages/piagent-webui/server/tool-call-summary.ts +185 -0
  191. package/packages/piagent-webui/server/transcript-projection.ts +86 -3
  192. package/packs/engineering-base/pack.json +4 -0
  193. package/schemas/piagent-webui/runtime-command-v1.schema.json +1 -2
  194. package/schemas/piagent-webui/session-catalog-v1.schema.json +8 -0
  195. package/schemas/piagent-webui/transcript-v1.schema.json +94 -1
  196. package/scripts/build-docs-site.mjs +23 -12
  197. package/scripts/check-public-wording.mjs +5 -6
  198. package/scripts/check-runtime-advisories.mjs +23 -6
  199. package/scripts/claude-model-additions.mjs +33 -0
  200. package/scripts/configure-model-scope.sh +30 -6
  201. package/scripts/configure-subagents.sh +1 -1
  202. package/scripts/explain-command.mjs +5 -6
  203. package/scripts/init-project.sh +0 -2
  204. package/scripts/install-global.sh +3 -2
  205. package/scripts/model-scope-prune.mjs +75 -0
  206. package/scripts/phase-tools-evaluation.mjs +9 -4
  207. package/scripts/piagent-cli.mjs +51 -2
  208. package/scripts/piagent-dashboard.mjs +27 -4
  209. package/scripts/piagent-installations.mjs +26 -0
  210. package/scripts/piagent-studio.mjs +155 -0
  211. package/scripts/runtime-advisory-exceptions.json +29 -0
  212. package/scripts/setup.sh +10 -6
  213. package/scripts/team-doctor.sh +20 -1
  214. package/scripts/typescript-loader.mjs +6 -0
  215. package/scripts/verify-local.sh +2 -2
  216. package/templates/global/settings.json +3 -1
  217. package/templates/project/.pi/project-context.md +3 -3
  218. package/templates/project/AGENTS.md +4 -5
  219. package/docs/piagent-core-reasoning-research-2026-09-06.md +0 -225
  220. package/docs/piagent-core-research-sources-2026-09-06.json +0 -416
  221. package/packages/piagent-webui/dist/client/assets/index-Cui9AAV_.js +0 -176
@@ -1,3 +1,94 @@
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
+
16
+ <section class="section">
17
+ <p class="section-kicker">v1.9.0 · 2026-10-02</p>
18
+ <h2 id="v1-9-0">Ask in plain language; the team's Harness does the checking</h2>
19
+ <p class="section-lead">The task contract and the workflow commands are gone: you ask as you would ask a colleague, and the guard still checks every tool call. Company mode runs through Agent Studio and Agent Watch; its Harness asks for checks, has a subagent review the change and sends blocking findings back to the agent. See <a href="/en/ecosystem">Ecosystem</a>.</p>
20
+
21
+ <div class="benchmark-metrics" aria-label="Release 1.9.0 verification figures">
22
+ <div class="benchmark-metric"><span>Live scenarios</span><strong>13/13</strong><small>9 personal, 4 company, on the final install</small></div>
23
+ <div class="benchmark-metric"><span>Automated tests</span><strong>5,800+</strong><small>unit, integration and security; 0 failures</small></div>
24
+ <div class="benchmark-metric"><span>Browser tests</span><strong>27/27</strong><small>dashboard and WebUI on Chromium</small></div>
25
+ <div class="benchmark-metric"><span>Smaller guard</span><strong>−854 lines</strong><small>code that only served the task contract (4993 → 4139)</small></div>
26
+ </div>
27
+
28
+ <figure class="shot">
29
+ <img src="/assets/shots/company-run-done.jpg" alt="A company-mode turn: the agent changes code and runs the tests; A check passed and Review found no blocking issue are written under the answer" loading="lazy" width="1600" height="1000">
30
+ <figcaption>A company-mode turn: the agent changes code and runs the tests, a subagent reviews the change, and the outcome is written right under the answer.</figcaption>
31
+ </figure>
32
+
33
+ <div class="grid cols-3">
34
+ <article class="card"><h3 id="freeform">Plain-language requests</h3><p>No more <span class="inline-code">/workflow</span>, <span class="inline-code">/fresh</span>, <span class="inline-code">/onboard</span> or task contract. The guard still blocks protected files and checks permission profiles, oversized files and stale edits, and asks you before a push or publish.</p></article>
35
+ <article class="card"><h3 id="harness">The team's Harness</h3><p>Studio decides whether each turn suggests or requires a plan, checks and a review. A separate subagent reviews; blocking findings go back to the agent within the team's fix rounds.</p></article>
36
+ <article class="card"><h3 id="network">Network on approval</h3><p>Company-mode commands run without network. To install a package the agent asks to run that one command with network; the card shows the exact command and you allow it once.</p></article>
37
+ <article class="card"><h3 id="stop">Stop and continue</h3><p>Stop works for the whole turn, including while the review runs. A stopped turn says it was stopped, not that the model failed; Continue picks up from the steps kept.</p></article>
38
+ <article class="card"><h3 id="reconnect">Reconnect company mode</h3><p>If the company runtime is not running (after a restart or an update), the conversation says so and offers Reconnect in place.</p></article>
39
+ <article class="card"><h3 id="local-state">Out of git</h3><p><span class="inline-code">.pi/piagent-state</span> gets its own <span class="inline-code">.gitignore</span>; run state no longer shows up in the project's <span class="inline-code">git status</span>.</p></article>
40
+ <article class="card"><h3 id="queue">Waiting in line when the company is busy</h3><p>When every company model account is busy, a request waits its turn (up to 20 minutes) instead of failing. The running turn shows a “Wait for a free company account” step; Stop still works.</p></article>
41
+ <article class="card"><h3 id="many-conversations">Many conversations at once</h3><p>Creating or sending in one conversation is no longer refused because another one just changed. Two folders with the same name (two clones) also show where each one is.</p></article>
42
+ <article class="card"><h3 id="model-scope">Clean up models that are gone</h3><p><span class="inline-code">piagent-doctor</span> lists configured models Pi no longer knows; <span class="inline-code">piagent-model-scope --prune</span> removes only those lines.</p></article>
43
+ </div>
44
+ </section>
45
+
46
+ <section class="section">
47
+ <p class="section-kicker">From the dashboard</p>
48
+ <h2 id="v1-9-0-shots">What a member sees while working</h2>
49
+ <div class="shot-grid">
50
+ <figure class="shot">
51
+ <img src="/assets/shots/network-approval.jpg" alt="Approval card for one network command, showing the exact npm install command" loading="lazy" width="1600" height="1000">
52
+ <figcaption>Approving one network command: the card shows the exact command and what allow or deny does.</figcaption>
53
+ </figure>
54
+ <figure class="shot">
55
+ <img src="/assets/shots/new-chat-models.jpg" alt="Choosing a model for a new conversation: Company and Personal groups" loading="lazy" width="1600" height="1000">
56
+ <figcaption>New conversation: a company model or a personal one, in the same dashboard.</figcaption>
57
+ </figure>
58
+ <figure class="shot">
59
+ <img src="/assets/shots/company-review-running.jpg" alt="Review running: the header shows Subagent 1/2 and Stop is still available" loading="lazy" width="1600" height="1000">
60
+ <figcaption>Review running: the header shows Subagent 1/2 and Stop still works.</figcaption>
61
+ </figure>
62
+ <figure class="shot">
63
+ <img src="/assets/shots/personal-edit-test.jpg" alt="A personal turn that edits code, with the diff inside the Edit card" loading="lazy" width="1600" height="1000">
64
+ <figcaption>Personal mode: every read, edit and command is a card, with the diff right there.</figcaption>
65
+ </figure>
66
+ </div>
67
+ </section>
68
+
69
+ <section class="section">
70
+ <p class="section-kicker">Verification</p>
71
+ <h2 id="v1-9-0-verification">Run for real, the way a member works</h2>
72
+ <p class="section-lead">Each scenario drives a real browser against the installed release, sends messages as a member would and checks the result on disk. Every experience bug found was fixed with a test and the scenario run again.</p>
73
+ <div class="table-wrap"><table>
74
+ <thead><tr><th>Scenario</th><th>Result</th></tr></thead>
75
+ <tbody>
76
+ <tr><td>Company · strip Vietnamese accents from slugs, add tests</td><td>2 files changed, tests pass, "A check passed on the final code · Review found no blocking issue"</td></tr>
77
+ <tr><td>Company · press Stop while the review runs</td><td>"The turn stopped before its checks finished", no error shown</td></tr>
78
+ <tr><td>Company · install a package that needs network</td><td>The approval card shows the exact command; once allowed, the package is in <span class="inline-code">package.json</span></td></tr>
79
+ <tr><td>Company · send another message during a turn</td><td>Held, sent when the turn ends, and answered</td></tr>
80
+ <tr><td>Personal · edit, test, commit and push</td><td>Push waits for approval in the browser; stopping a long command leaves no process behind</td></tr>
81
+ <tr><td>Personal · read <span class="inline-code">.env</span></td><td>Blocked without revealing values; the agent explains how to open it yourself</td></tr>
82
+ </tbody>
83
+ </table></div>
84
+ <p>Benchmark and journey results of earlier releases were measured with task contracts; they are historical, and 1.9.0 has not been measured again.</p>
85
+ </section>
86
+
87
+ <div class="callout">
88
+ <strong>Earlier releases</strong>
89
+ <p>The notes below describe earlier releases as they shipped. Since 1.9.0 the task contract, trajectories, completion receipts and workflow commands mentioned below are gone.</p>
90
+ </div>
91
+
1
92
  <section class="section">
2
93
  <p class="section-kicker">v1.8.0</p>
3
94
  <h2 id="v1-8-0">Astra, Sol, and Luna in Piagent</h2>
@@ -68,7 +159,7 @@
68
159
  <p class="section-kicker">Daily flow</p>
69
160
  <h2 id="usage-flow">The daily workflow does not break</h2>
70
161
  <div class="steps">
71
- <article class="step"><div><h3>Assign work as before</h3><p>Use a natural-language request or <span class="inline-code">/workflow task &lt;request&gt;</span>. Manual preflight is optional.</p></div></article>
162
+ <article class="step"><div><h3>Assign work as before</h3><p>Use a natural-language request (<span class="inline-code">/workflow</span> was retired in 1.9.0). Manual preflight is optional.</p></div></article>
72
163
  <article class="step"><div><h3>The runtime records truth</h3><p>Task Contracts, context, changed files, trajectories, and checkpoints are updated from hooks and tool results rather than model memory.</p></div></article>
73
164
  <article class="step"><div><h3>Verify the exact working tree</h3><p>Only observed exact commands that exit successfully and match the current-tree digest count as passing evidence.</p></div></article>
74
165
  <article class="step"><div><h3>Bounded recovery or handoff</h3><p>Source repair and transient retries have ceilings. Unsafe cases return to handoff or the operator instead of continuing by guesswork.</p></div></article>
@@ -1,20 +1,19 @@
1
1
  <section class="section">
2
2
  <p class="section-kicker">Workflow impact</p>
3
3
  <h2 id="conclusion">No new command is mandatory in the daily flow</h2>
4
- <p class="section-lead">Users still assign work with a natural-language request or <span class="inline-code">/workflow task</span>. The main change is inside the runtime: task state, trajectories, verifier evidence, recovery, and completion gates are recorded more strictly. The new commands only expose that data when needed.</p>
4
+ <p class="section-lead">Since 1.9.0 work is assigned with a plain-language request and nothing else. <span class="inline-code">/workflow</span>, <span class="inline-code">/task</span>, <span class="inline-code">/fresh</span> and <span class="inline-code">/onboard</span> were retired together with the task contract: a session no longer records a contract, work plan, completion gate or receipt. The guard still checks every tool call.</p>
5
5
  <div class="callout ok-callout">
6
6
  <strong>Short answer</strong>
7
- <p>The interaction flow is not longer. The control flow behind it is safer and fails closed when evidence is missing. A valid task does not require all four new commands.</p>
7
+ <p>Say what you want, including whether the agent may edit ("read-only, do not edit", "plan first", "implement and run the tests"). The inspection commands below are optional and never start a model turn.</p>
8
8
  </div>
9
9
  <div class="table-wrap">
10
10
  <table>
11
- <thead><tr><th>Moment</th><th>User action stays the same</th><th>New automatic runtime behavior</th><th>Optional inspection command</th></tr></thead>
11
+ <thead><tr><th>Moment</th><th>What the user does</th><th>What the runtime does</th><th>Optional inspection command</th></tr></thead>
12
12
  <tbody>
13
- <tr><td>Before a task</td><td>Send a request or <span class="inline-code">/workflow task &lt;request&gt;</span>.</td><td>Loads profile and context, classifies intent and risk, captures runtime truth, and computes a solver recommendation.</td><td><span class="inline-code">/task-preflight [--json] &lt;intent&gt;</span></td></tr>
14
- <tr><td>During work</td><td>Continue the task normally.</td><td>Records the work plan, phase, changed files, tool and command results, checkpoints, helpers, and recovery events. The inspector updates below the footer.</td><td><span class="inline-code">/piagent-inspector</span> or <span class="inline-code">/piagent-status</span></td></tr>
15
- <tr><td>Verify and review</td><td>Use project verification; call <span class="inline-code">/workflow review</span> when a separate review is useful.</td><td>Accepts only successful exact verifiers bound to the current working-tree identity.</td><td><span class="inline-code">/piagent-status</span></td></tr>
16
- <tr><td>Completion or handoff</td><td>Receive the outcome and remaining risks as before.</td><td>Approves a receipt only when trace, work plan, acceptance, changed-file integrity, and the hard gate all pass.</td><td><span class="inline-code">/piagent-status</span></td></tr>
17
- <tr><td>After a task</td><td>No new required step.</td><td>Keeps sourced telemetry without inferring quality.</td><td><span class="inline-code">/usage efficiency</span></td></tr>
13
+ <tr><td>Before the work</td><td>Send the request in plain language.</td><td>Loads the profile and project context.</td><td><span class="inline-code">/task-preflight [--json] &lt;intent&gt;</span></td></tr>
14
+ <tr><td>During the work</td><td>Follow along or answer a confirmation.</td><td>Checks each tool call: protected and read-only paths, permission profile, context budget for large files, edits against a stale read, and confirmation for destructive or external actions. The inspector updates below the footer.</td><td><span class="inline-code">/piagent-inspector</span> or <span class="inline-code">/piagent-status</span></td></tr>
15
+ <tr><td>Verify and review</td><td>Ask for the project's checks, or for a review of the current diff.</td><td>Runs the commands like any other tool call.</td><td><span class="inline-code">/piagent-inspector commands</span></td></tr>
16
+ <tr><td>After the work</td><td>No required step.</td><td>Keeps sourced telemetry without inferring quality.</td><td><span class="inline-code">/usage efficiency</span></td></tr>
18
17
  </tbody>
19
18
  </table>
20
19
  </div>
@@ -22,22 +21,22 @@
22
21
 
23
22
  <section class="section">
24
23
  <p class="section-kicker">Command semantics</p>
25
- <h2 id="command-effects">How far the new commands affect a workflow</h2>
24
+ <h2 id="command-effects">How far the inspection commands affect a workflow</h2>
26
25
  <div class="table-wrap">
27
26
  <table>
28
27
  <thead><tr><th>Command</th><th>Reads or displays</th><th>Does not perform</th></tr></thead>
29
28
  <tbody>
30
- <tr><td><span class="inline-code">/task-preflight</span></td><td>Intent, risk, scope, runtime, route, phase/tool/helper policy, backend, approval, and blockers.</td><td>Does not create a task, advance a phase, call a model, or grant implementation authority.</td></tr>
31
- <tr><td><span class="inline-code">/piagent-status</span></td><td>Task Contract, trajectory, checkpoint, verifier, recovery, helper, resume, and terminal receipt from persisted evidence.</td><td>Does not edit files, rerun verification, retry work, or turn missing evidence into success.</td></tr>
32
- <tr><td><span class="inline-code">/piagent-inspector</span></td><td>Observed task files in the four-row footer panel, exact baseline delta in the <span class="inline-code">files</span> view, current tool, command failures and blocks, safety warnings, and context budget. No argument opens the menu.</td><td>Does not edit files, execute commands, change completion state, or estimate tokens for each built-in tool.</td></tr>
33
- <tr><td><span class="inline-code">/usage efficiency</span></td><td>Sourced context telemetry and task metrics; unavailable facts remain <span class="inline-code">null</span> or unavailable.</td><td>Does not grade a person or model and does not decide the completion gate.</td></tr>
34
- <tr><td><span class="inline-code">/piagent-orchestration</span></td><td>Current mode, helper mode, subagent limit, review lenses, Field Guide, and writer policy.</td><td>Does not change mode, spawn a helper, or enable parallel writers.</td></tr>
29
+ <tr><td><span class="inline-code">/task-preflight</span></td><td>Context and the deterministic shadow route for an intent.</td><td>Does not create anything, call a model, or grant implementation authority.</td></tr>
30
+ <tr><td><span class="inline-code">/piagent-status</span></td><td>Profile, guard, runtime and authenticated model state.</td><td>Does not edit files, rerun verification or retry work.</td></tr>
31
+ <tr><td><span class="inline-code">/piagent-inspector</span></td><td>Changed files in the four-row footer panel, current tool, command failures and blocks, safety warnings, and context budget. No argument opens the menu.</td><td>Does not edit files, execute commands, or estimate tokens for each built-in tool.</td></tr>
32
+ <tr><td><span class="inline-code">/usage efficiency</span></td><td>Sourced context telemetry; unavailable facts remain <span class="inline-code">null</span> or unavailable.</td><td>Does not grade a person or model.</td></tr>
33
+ <tr><td><span class="inline-code">/piagent-orchestration</span></td><td>Current mode, helper mode, helper limit, review lenses, Field Guide, and writer policy.</td><td>Does not change mode, spawn a helper, or enable parallel writers.</td></tr>
35
34
  </tbody>
36
35
  </table>
37
36
  </div>
38
37
  <div class="callout">
39
38
  <strong>Only explicit opt-in changes behavior.</strong>
40
- <p>These five commands are read-only. Behavior changes only when an operator deliberately enables a rollout setting such as phase tools or helper mode; parent routing, automatic workers, and multiple writers do not turn on automatically.</p>
39
+ <p>These five commands are read-only. Behavior changes only when an operator deliberately enables a setting such as helper mode; parent routing, automatic workers, and multiple writers do not turn on automatically.</p>
41
40
  </div>
42
41
  </section>
43
42
 
@@ -46,14 +45,13 @@
46
45
  <h2 id="example-flow">A complete flow can look like this</h2>
47
46
  <div class="command-grid">
48
47
  <article class="command-card">
49
- <header><span>Inspect → implement → review → receipt</span><button class="clip-btn" data-clip="/task-preflight --json Fix the failing checkout test&#10;/workflow task Fix the failing checkout test and verify.&#10;/piagent-inspector&#10;/workflow review current diff&#10;/piagent-status&#10;/usage efficiency">Copy</button></header>
48
+ <header><span>Inspect → implement → review</span><button class="clip-btn" data-clip="/task-preflight --json Fix the failing checkout test&#10;Fix the failing checkout test and run the project tests.&#10;/piagent-inspector&#10;Review the current diff: correctness, missing tests, scope drift. Read-only.&#10;/usage efficiency">Copy</button></header>
50
49
  <pre><code>/task-preflight --json Fix the failing checkout test
51
- /workflow task Fix the failing checkout test and verify.
50
+ Fix the failing checkout test and run the project tests.
52
51
  /piagent-inspector
53
- /workflow review current diff
54
- /piagent-status
52
+ Review the current diff: correctness, missing tests, scope drift. Read-only.
55
53
  /usage efficiency</code></pre>
56
- <p>Only <span class="inline-code">/workflow task</span> starts implementation. The inspector opens a menu for files, commands, safety, and context; preflight, inspector, status, and efficiency are optional. Use a separate review when the scope or handoff policy calls for one.</p>
54
+ <p>Only the plain-language lines start model work. Preflight, inspector and efficiency are optional views.</p>
57
55
  </article>
58
56
  </div>
59
57
  </section>
@@ -61,21 +59,21 @@
61
59
  <section class="section">
62
60
  <div class="callout ok-callout">
63
61
  <strong>Git in Pi Agent</strong>
64
- <p>There is no separate <span class="inline-code">/git</span> namespace. Use <span class="inline-code">/workflow commit</span> for a reviewed local commit and <span class="inline-code">/workflow pr</span> to prepare a pull request. Actions such as <span class="inline-code">git push</span> or broad staging with <span class="inline-code">git add -A</span> still require operator confirmation.</p>
62
+ <p>There is no <span class="inline-code">/git</span> namespace and no workflow command. Ask for a commit or a pull request in plain language. <span class="inline-code">git push</span>, GitHub writes and broad staging such as <span class="inline-code">git add -A</span> still require operator confirmation.</p>
65
63
  </div>
66
64
  <div class="callout">
67
65
  <strong>Parent-direct orchestration</strong>
68
- <p>Use <span class="inline-code">/piagent-orchestration</span> to inspect the one-helper ceiling, dispatch/skip reason, projected token saving, review lenses, Field Guide, and writer policy. Helpers default to off. Explicit opt-in still permits only one fresh read-only helper when two independent lanes and at least 30% projected net saving are proven; workers and retries stay disabled.</p>
66
+ <p>Use <span class="inline-code">/piagent-orchestration</span> to inspect the helper ceiling, dispatch/skip reason, review lenses, Field Guide, and writer policy. Helpers default to off. With explicit opt-in the parent may use up to two fresh read-only helpers; token-saving estimates are telemetry, not a gate. Workers and retries stay disabled.</p>
69
67
  </div>
70
68
  <div class="command-grid">
71
- <article class="command-card"><header><span>Bounded implementation</span><button class="clip-btn" data-clip="/workflow task Fix the failing checkout test and verify.">Copy</button></header><pre><code>/workflow task Fix the failing checkout test and verify.</code></pre></article>
72
- <article class="command-card"><header><span>Read-only scout</span><button class="clip-btn" data-clip="/workflow scout Map the auth flow and risk areas.">Copy</button></header><pre><code>/workflow scout Map the auth flow and risk areas.</code></pre></article>
73
- <article class="command-card"><header><span>Plan before coding</span><button class="clip-btn" data-clip="/workflow plan Add multi-tenant billing support.">Copy</button></header><pre><code>/workflow plan Add multi-tenant billing support.</code></pre></article>
74
- <article class="command-card"><header><span>Review a diff</span><button class="clip-btn" data-clip="/workflow review current diff">Copy</button></header><pre><code>/workflow review current diff</code></pre></article>
75
- <article class="command-card"><header><span>Guarded local commit</span><button class="clip-btn" data-clip="/workflow commit &quot;feat: add guarded git workflow&quot;">Copy</button></header><pre><code>/workflow commit "feat: add guarded git workflow"</code></pre></article>
76
- <article class="command-card"><header><span>Prepare a pull request</span><button class="clip-btn" data-clip="/workflow pr &quot;Prepare PR for guarded git workflow&quot;">Copy</button></header><pre><code>/workflow pr "Prepare PR for guarded git workflow"</code></pre></article>
77
- <article class="command-card"><header><span>Backend spec to frontend</span><button class="clip-btn" data-clip="/profile be-readonly-fe&#10;/workflow be-to-fe Implement frontend support for the new user status endpoint.">Copy</button></header><pre><code>/profile be-readonly-fe
78
- /workflow be-to-fe Implement frontend support for the new user status endpoint.</code></pre></article>
79
- <article class="command-card"><header><span>Improve the platform</span><button class="clip-btn" data-clip="/workflow platform-improve Harden command docs and run verification.">Copy</button></header><pre><code>/workflow platform-improve Harden command docs and run verification.</code></pre></article>
69
+ <article class="command-card"><header><span>Implementation</span><button class="clip-btn" data-clip="Fix the failing checkout test and run the project tests.">Copy</button></header><pre><code>Fix the failing checkout test and run the project tests.</code></pre></article>
70
+ <article class="command-card"><header><span>Read-only scout</span><button class="clip-btn" data-clip="Map the auth flow and risk areas. Read-only, do not edit.">Copy</button></header><pre><code>Map the auth flow and risk areas. Read-only, do not edit.</code></pre></article>
71
+ <article class="command-card"><header><span>Plan before coding</span><button class="clip-btn" data-clip="Plan multi-tenant billing support. Do not edit code yet.">Copy</button></header><pre><code>Plan multi-tenant billing support. Do not edit code yet.</code></pre></article>
72
+ <article class="command-card"><header><span>Review a diff</span><button class="clip-btn" data-clip="Review the current diff: correctness, missing tests, scope drift. Read-only.">Copy</button></header><pre><code>Review the current diff: correctness, missing tests, scope drift. Read-only.</code></pre></article>
73
+ <article class="command-card"><header><span>Local commit</span><button class="clip-btn" data-clip="Commit the two docs files with message &quot;docs: update onboarding notes&quot;. Do not push.">Copy</button></header><pre><code>Commit the two docs files with message "docs: update onboarding notes". Do not push.</code></pre></article>
74
+ <article class="command-card"><header><span>Pull request</span><button class="clip-btn" data-clip="Open a draft pull request for this branch titled &quot;Harden command docs&quot;.">Copy</button></header><pre><code>Open a draft pull request for this branch titled "Harden command docs".</code></pre></article>
75
+ <article class="command-card"><header><span>Backend spec to frontend</span><button class="clip-btn" data-clip="/profile be-readonly-fe&#10;Implement frontend support for the new user status endpoint. Backend is read-only.">Copy</button></header><pre><code>/profile be-readonly-fe
76
+ Implement frontend support for the new user status endpoint. Backend is read-only.</code></pre></article>
77
+ <article class="command-card"><header><span>Onboard a project</span><button class="clip-btn" data-clip="Inspect this project read-only and record its project context.">Copy</button></header><pre><code>Inspect this project read-only and record its project context.</code></pre></article>
80
78
  </div>
81
79
  </section>
@@ -1,8 +1,8 @@
1
1
  <section class="hero">
2
- <p class="eyebrow">Team operating docs</p>
3
- <h1>Pi runtime được đóng gói như một nền tảng dùng lại cho nhiều dự án.</h1>
2
+ <p class="eyebrow">Piagent 1.9.1</p>
3
+ <h1>Coding agent cho cả team, kiểm tra từng bước.</h1>
4
4
  <p>
5
- Tài liệu này gom phần cài đặt, profile, quyền chạy, MCP, bảo mật và workflow vào một nơi duy nhất. Mục tiêu là thành viên mới chỉ cần mở trang này, chọn đúng command, chạy đúng chế độ và biết ranh giới an toàn.
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.
6
6
  </p>
7
7
  <div class="owner-strip" aria-label="Thông tin dự án">
8
8
  <span class="owner-label">Project links</span>
@@ -12,14 +12,24 @@
12
12
  </div>
13
13
  <div class="hero-actions">
14
14
  <a class="button primary" href="/quickstart">Bắt đầu</a>
15
- <a class="button" href="/whats-new">Có gì mới</a>
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.1</a>
16
17
  <a class="button" href="/commands">Xem command</a>
17
- <a class="button" href="/mcp">MCP</a>
18
18
  </div>
19
19
  </section>
20
20
 
21
21
  <section class="section">
22
- <p class="section-kicker">Production V1 · bằng chứng public của v1.6.0</p>
22
+ <p class="section-kicker">Bản 1.9.0</p>
23
+ <h2 id="ban-1-9-0">Một lượt làm việc ở chế độ công ty</h2>
24
+ <p class="section-lead">Bạn nhắn việc cần làm. Agent đọc, sửa và chạy test trong sandbox; một subagent review bản sửa; dòng cuối ghi kết quả. Đã chạy thật 13/13 kịch bản trên bản cài cuối, 27/27 test trình duyệt.</p>
25
+ <figure class="shot">
26
+ <img src="/assets/shots/company-run-done.jpg" alt="Dashboard Piagent: một lượt ở chế độ công ty với các bước đọc, sửa, chạy test và dòng Check đã qua trên code cuối, Review không có lỗi chặn" width="1600" height="1000">
27
+ <figcaption>Dashboard Piagent ở chế độ công ty. Xem toàn cảnh ở <a href="/ecosystem">Hệ sinh thái</a> và mọi thay đổi ở <a href="/whats-new">Có gì mới</a>.</figcaption>
28
+ </figure>
29
+ </section>
30
+
31
+ <section class="section">
32
+ <p class="section-kicker">Production V1 · bằng chứng lịch sử của v1.6.0</p>
23
33
  <h2 id="bang-chung">Đo được, không phải nói suông</h2>
24
34
  <p class="section-lead">Run gắn với release <code>production-v1-20260824T040017Z-05b7cf</code> đã đo 108 session bằng GPT-5.6 Luna Medium tại tag <code>v1.6.0</code>, đúng commit <code>3bba8f0b3ff521bc2a355e1f6bef6d1bbdc09511</code>, với Piagent so với <code>codex-cli</code>.</p>
25
35
 
@@ -79,14 +89,19 @@ piagent-setup</code></pre>
79
89
  <h2 id="bat-dau-tu-dau">Bắt đầu từ đâu</h2>
80
90
  <div class="card-grid">
81
91
  <a class="doc-card" href="/whats-new">
82
- <span class="card-kicker">Product update</span>
92
+ <span class="card-kicker">Bản 1.9.1</span>
83
93
  <h3>Có gì mới</h3>
84
- <p>Runtime truth, task trajectory, recovery, helper policy và completion receipt fail-closed — phần nào tự chạy, phần nào cần opt-in.</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
+ </a>
96
+ <a class="doc-card" href="/ecosystem">
97
+ <span class="card-kicker">Get started</span>
98
+ <h3>Hệ sinh thái</h3>
99
+ <p>Piagent, Agent Watch và Agent Studio: phần nào chạy ở đâu, khi nào dùng chế độ cá nhân hay công ty.</p>
85
100
  </a>
86
101
  <a class="doc-card" href="/quickstart">
87
102
  <span class="card-kicker">Get started</span>
88
103
  <h3>Quickstart</h3>
89
- <p>Cài, mở repo, onboard context, chọn profile và permission, chạy task đầu tiên, verify trước khi handoff.</p>
104
+ <p>Cài, mở repo, chọn profile và quyền, rồi giao việc đầu tiên bằng lời thường.</p>
90
105
  </a>
91
106
  <a class="doc-card" href="/scope">
92
107
  <span class="card-kicker">Get started</span>
@@ -65,12 +65,11 @@ pi</code></pre>
65
65
 
66
66
  <article class="step">
67
67
  <div>
68
- <h3 id="onboard-context">Onboard context</h3>
69
- <p>Chạy một lần ở repo mới để ghi context, verify matrix và protected areas vào <span class="inline-code">.pi/</span>. <span class="inline-code">/onboard</span> mở menu/status; <span class="inline-code">run</span> mới launch workflow đọc project.</p>
68
+ <h3 id="onboard-context">Cho agent đọc project</h3>
69
+ <p>Ở repo mới, nhờ agent đọc project (chỉ đọc) và ghi lại project context vào <span class="inline-code">.pi/</span>. Không cần lệnh riêng: nói bằng lời thường.</p>
70
70
  <div class="command-card">
71
- <header><span>Onboard</span><button class="clip-btn" data-clip="/onboard&#10;/onboard run">Lấy lệnh</button></header>
72
- <pre><code>/onboard
73
- /onboard run</code></pre>
71
+ <header><span>Đọc project</span><button class="clip-btn" data-clip="Đọc project này (chỉ đọc) và ghi lại project context.">Lấy lệnh</button></header>
72
+ <pre><code>Đọc project này (chỉ đọc) và ghi lại project context.</code></pre>
74
73
  </div>
75
74
  </div>
76
75
  </article>
@@ -102,20 +101,19 @@ pi</code></pre>
102
101
  <article class="step">
103
102
  <div>
104
103
  <h3 id="chay-workflow">Chạy workflow</h3>
105
- <p>Dùng command đúng mục tiêu để agent không phải diễn giải quá dài. Task nào nặng context thì dùng fresh session.</p>
104
+ <p>Nói rõ việc và ý định (sửa, chỉ đọc, lập plan) bằng lời thường. Việc nào nặng context thì mở session mới bằng <span class="inline-code">/new</span>.</p>
106
105
  <div class="command-card">
107
- <header><span>Workflow</span><button class="clip-btn" data-clip="/workflow task Implement the requested bounded change.&#10;/workflow review current diff&#10;/fresh task Implement the requested bounded change.">Lấy lệnh</button></header>
108
- <pre><code>/workflow task Implement the requested bounded change.
109
- /workflow review current diff
110
- /fresh task Implement the requested bounded change.</code></pre>
106
+ <header><span>Giao việc</span><button class="clip-btn" data-clip="Implement thay đổi được yêu cầu rồi chạy test của project.&#10;Review diff hiện tại. Chỉ đọc.">Lấy lệnh</button></header>
107
+ <pre><code>Implement thay đổi được yêu cầu rồi chạy test của project.
108
+ Review diff hiện tại. Chỉ đọc.</code></pre>
111
109
  </div>
112
110
  </div>
113
111
  </article>
114
112
 
115
113
  <article class="step">
116
114
  <div>
117
- <h3 id="verify-truoc-khi-handoff">Verify trước khi handoff</h3>
118
- <p>Final gate chỉ tin kết quả command đã chạy thật, exit 0, và khớp verify plan. Sau khi pin hoặc nâng version, chạy doctor trên project:</p>
115
+ <h3 id="verify-truoc-khi-handoff">Kiểm tra trước khi giao</h3>
116
+ <p>Nhờ agent chạy check của project (test, type check, build) và đọc kết quả thật; ở chế độ công ty, Harness tự yêu cầu việc này. Sau khi pin hoặc nâng version, chạy doctor trên project:</p>
119
117
  <div class="command-card">
120
118
  <header><span>Doctor</span><button class="clip-btn" data-clip="piagent-doctor">Lấy lệnh</button></header>
121
119
  <pre><code>piagent-doctor</code></pre>
@@ -22,8 +22,8 @@
22
22
  <p>Destructive hoặc external-provider action vẫn cần operator xác nhận rõ, kể cả khi full-access đang bật. Gate áp dụng cho direct tool, MCP proxy đã decode và các shell form như GitHub CLI write hoặc HTTP non-GET.</p>
23
23
  </article>
24
24
  <article class="card">
25
- <h3 id="verify-evidence">Verify evidence</h3>
26
- <p>Handoff hoàn tất cần bằng chứng verify từ bash result đã quan sát, không nhận câu trả lời “đã test” suông.</p>
25
+ <h3 id="verify-evidence">Check thật</h3>
26
+ <p>Ở chế độ công ty, Harness chỉ tính một check đã chạy thật và qua trên code cuối; câu “đã test” suông không đủ.</p>
27
27
  </article>
28
28
  </div>
29
29
 
@@ -3,7 +3,7 @@
3
3
  <div class="split">
4
4
  <article class="card">
5
5
  <h3 id="viec-nen-lam">Việc nên làm</h3>
6
- <p>Chạy <span class="inline-code">/onboard run</span>, áp <span class="inline-code">/profile auto</span>, dùng <span class="inline-code">/workflow</span>, verify thật và ghi blockers rõ ràng.</p>
6
+ <p>Nhờ agent đọc project và ghi project context, áp <span class="inline-code">/profile auto</span>, giao việc bằng lời thường, chạy check thật và nói rõ việc còn vướng.</p>
7
7
  </article>
8
8
  <article class="card">
9
9
  <h3 id="viec-nen-tranh">Việc nên tránh</h3>
@@ -12,7 +12,7 @@
12
12
  </div>
13
13
 
14
14
  <div class="callout ok-callout">
15
- <strong>Chuẩn handoff</strong>
15
+ <strong>Câu trả lời cuối</strong>
16
16
  <p>Final response nên nói ngắn: đã đổi gì, verify nào đã chạy, có dùng subagent không, và còn rủi ro hoặc next step nào cần người review.</p>
17
17
  </div>
18
18
 
@@ -1,3 +1,94 @@
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
+
16
+ <section class="section">
17
+ <p class="section-kicker">v1.9.0 · 2026-10-02</p>
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>
19
+ <p class="section-lead">Bỏ task contract và các lệnh workflow: bạn giao việc như nói với đồng nghiệp, guard vẫn kiểm tra từng tool call. Chế độ công ty chạy qua Agent Studio và Agent Watch; Harness tự yêu cầu chạy check, cho subagent review và gửi lỗi chặn lại cho agent sửa. Xem <a href="/ecosystem">Hệ sinh thái</a>.</p>
20
+
21
+ <div class="benchmark-metrics" aria-label="Số liệu kiểm chứng bản 1.9.0">
22
+ <div class="benchmark-metric"><span>Kịch bản chạy thật</span><strong>13/13</strong><small>9 cá nhân, 4 chế độ công ty, trên bản cài cuối</small></div>
23
+ <div class="benchmark-metric"><span>Test tự động</span><strong>5.800+</strong><small>unit, integration và security; 0 lỗi</small></div>
24
+ <div class="benchmark-metric"><span>Test trình duyệt</span><strong>27/27</strong><small>dashboard và WebUI trên Chromium</small></div>
25
+ <div class="benchmark-metric"><span>Guard gọn hơn</span><strong>−854 dòng</strong><small>code chỉ phục vụ task contract (4993 → 4139)</small></div>
26
+ </div>
27
+
28
+ <figure class="shot">
29
+ <img src="/assets/shots/company-run-done.jpg" alt="Một lượt ở chế độ công ty: agent sửa code và chạy test, kết quả Check đã qua và Review không có lỗi chặn ghi dưới câu trả lời" loading="lazy" width="1600" height="1000">
30
+ <figcaption>Một lượt ở chế độ công ty: agent sửa code và chạy test, một subagent review bản sửa, kết quả ghi ngay dưới câu trả lời.</figcaption>
31
+ </figure>
32
+
33
+ <div class="grid cols-3">
34
+ <article class="card"><h3 id="freeform">Giao việc bằng lời thường</h3><p>Không còn <span class="inline-code">/workflow</span>, <span class="inline-code">/fresh</span>, <span class="inline-code">/onboard</span> hay task contract. Guard vẫn chặn file bảo vệ, kiểm profile quyền, file quá lớn, sửa trên bản đã cũ, và hỏi bạn trước push hay publish.</p></article>
35
+ <article class="card"><h3 id="harness">Harness của team</h3><p>Studio quyết định mỗi lượt cần kế hoạch, check và review ở mức gợi ý hay bắt buộc. Review do một subagent riêng làm; lỗi chặn được gửi lại cho agent trong số vòng sửa team đặt.</p></article>
36
+ <article class="card"><h3 id="network">Mạng theo lần duyệt</h3><p>Lệnh ở chế độ công ty chạy không mạng. Khi cần cài package, agent xin chạy đúng một lệnh có mạng; thẻ duyệt ghi rõ câu lệnh và bạn cho phép một lần.</p></article>
37
+ <article class="card"><h3 id="stop">Dừng và tiếp tục</h3><p>Nút Dừng có hiệu lực suốt lượt, kể cả lúc review đang chạy. Lượt bị dừng ghi rõ là đã dừng, không báo lỗi model; bấm Tiếp tục để làm tiếp từ các bước đã giữ.</p></article>
38
+ <article class="card"><h3 id="reconnect">Kết nối lại chế độ công ty</h3><p>Nếu phần chạy của công ty đang tắt (máy vừa khởi động, vừa cập nhật), cuộc trò chuyện báo rõ và có nút Kết nối lại ngay tại chỗ.</p></article>
39
+ <article class="card"><h3 id="local-state">Không lẫn vào git</h3><p>Thư mục <span class="inline-code">.pi/piagent-state</span> tự có <span class="inline-code">.gitignore</span>; trạng thái chạy không còn hiện trong <span class="inline-code">git status</span> của project.</p></article>
40
+ <article class="card"><h3 id="queue">Xếp hàng khi công ty bận</h3><p>Khi mọi tài khoản model của công ty đang bận, yêu cầu tự chờ tới lượt (tối đa 20 phút) thay vì báo lỗi. Lượt đang chạy hiện bước “Chờ tài khoản công ty rảnh”; nút Dừng vẫn dùng được.</p></article>
41
+ <article class="card"><h3 id="many-conversations">Nhiều cuộc trò chuyện cùng lúc</h3><p>Tạo hay gửi trong một cuộc trò chuyện không còn bị từ chối chỉ vì cuộc khác vừa đổi. Hai thư mục trùng tên (hai bản clone) hiện thêm vị trí để chọn đúng.</p></article>
42
+ <article class="card"><h3 id="model-scope">Dọn model không còn</h3><p><span class="inline-code">piagent-doctor</span> chỉ ra model đã cấu hình mà Pi không còn biết; <span class="inline-code">piagent-model-scope --prune</span> chỉ xoá đúng các dòng đó.</p></article>
43
+ </div>
44
+ </section>
45
+
46
+ <section class="section">
47
+ <p class="section-kicker">Ảnh từ dashboard</p>
48
+ <h2 id="v1-9-0-anh">Những gì thành viên thấy khi làm việc</h2>
49
+ <div class="shot-grid">
50
+ <figure class="shot">
51
+ <img src="/assets/shots/network-approval.jpg" alt="Thẻ duyệt một lệnh có mạng, ghi đúng câu lệnh npm install sẽ chạy" loading="lazy" width="1600" height="1000">
52
+ <figcaption>Duyệt một lệnh có mạng: thẻ ghi đúng câu lệnh và điều xảy ra khi cho phép hay từ chối.</figcaption>
53
+ </figure>
54
+ <figure class="shot">
55
+ <img src="/assets/shots/new-chat-models.jpg" alt="Chọn model khi mở cuộc trò chuyện mới: nhóm Công ty và nhóm Cá nhân" loading="lazy" width="1600" height="1000">
56
+ <figcaption>Cuộc trò chuyện mới: chọn model của công ty hoặc model cá nhân trong cùng một dashboard.</figcaption>
57
+ </figure>
58
+ <figure class="shot">
59
+ <img src="/assets/shots/company-review-running.jpg" alt="Đang review: thanh trên ghi Subagent 1/2 và nút Dừng vẫn còn" loading="lazy" width="1600" height="1000">
60
+ <figcaption>Review đang chạy: thanh trên ghi Subagent 1/2, nút Dừng vẫn hoạt động.</figcaption>
61
+ </figure>
62
+ <figure class="shot">
63
+ <img src="/assets/shots/personal-edit-test.jpg" alt="Một lượt cá nhân sửa code, diff hiện ngay trong thẻ Sửa" loading="lazy" width="1600" height="1000">
64
+ <figcaption>Chế độ cá nhân: mỗi bước đọc, sửa, chạy lệnh là một thẻ; diff mở ngay tại chỗ.</figcaption>
65
+ </figure>
66
+ </div>
67
+ </section>
68
+
69
+ <section class="section">
70
+ <p class="section-kicker">Kiểm chứng</p>
71
+ <h2 id="v1-9-0-kiem-chung">Chạy thật như một thành viên</h2>
72
+ <p class="section-lead">Mỗi kịch bản do script điều khiển trình duyệt thật trên bản đã cài, gửi tin nhắn như người dùng rồi kiểm tra kết quả trên đĩa. Lỗi trải nghiệm tìm thấy được sửa kèm test rồi chạy lại.</p>
73
+ <div class="table-wrap"><table>
74
+ <thead><tr><th>Kịch bản</th><th>Kết quả</th></tr></thead>
75
+ <tbody>
76
+ <tr><td>Công ty · bỏ dấu tiếng Việt cho slug, thêm test</td><td>2 file đổi, test qua, "Check đã qua trên code cuối · Review không có lỗi chặn"</td></tr>
77
+ <tr><td>Công ty · bấm Dừng lúc review đang chạy</td><td>"Lượt bị dừng trước khi kiểm chứng xong", không báo lỗi</td></tr>
78
+ <tr><td>Công ty · cài package cần mạng</td><td>Thẻ duyệt ghi đúng lệnh; sau khi cho phép, package có trong <span class="inline-code">package.json</span></td></tr>
79
+ <tr><td>Công ty · nhắn thêm lúc lượt đang chạy</td><td>Tin được giữ, gửi khi lượt xong và được trả lời</td></tr>
80
+ <tr><td>Cá nhân · sửa code, chạy test, commit và push</td><td>Push chờ duyệt trên trình duyệt; dừng lệnh dài không để lại tiến trình</td></tr>
81
+ <tr><td>Cá nhân · đọc <span class="inline-code">.env</span></td><td>Bị chặn, không lộ giá trị; agent chỉ cách tự mở</td></tr>
82
+ </tbody>
83
+ </table></div>
84
+ <p>Kết quả benchmark và journey của các bản trước được đo khi còn task contract; chúng là số liệu lịch sử, bản 1.9.0 chưa đo lại.</p>
85
+ </section>
86
+
87
+ <div class="callout">
88
+ <strong>Các bản trước</strong>
89
+ <p>Phần dưới là ghi chú của các bản cũ, đúng với thời điểm phát hành. Từ bản 1.9.0, task contract, trajectory, completion receipt và các lệnh workflow nhắc tới bên dưới đã bỏ.</p>
90
+ </div>
91
+
1
92
  <section class="section">
2
93
  <p class="section-kicker">v1.8.0</p>
3
94
  <h2 id="v1-8-0">Astra, Sol và Luna trong Piagent</h2>
@@ -68,7 +159,7 @@
68
159
  <p class="section-kicker">Daily flow</p>
69
160
  <h2 id="luong-su-dung">Luồng dùng hằng ngày không bị phá</h2>
70
161
  <div class="steps">
71
- <article class="step"><div><h3>Giao task như trước</h3><p>Dùng prompt tự nhiên hoặc <span class="inline-code">/workflow task &lt;request&gt;</span>. Không cần gọi preflight thủ công.</p></div></article>
162
+ <article class="step"><div><h3>Giao task như trước</h3><p>Dùng prompt tự nhiên (từ bản 1.9.0 <span class="inline-code">/workflow</span> đã bỏ). Không cần gọi preflight thủ công.</p></div></article>
72
163
  <article class="step"><div><h3>Runtime tự ghi nhận truth</h3><p>Task Contract, context, changed files, trajectory và checkpoint được cập nhật từ hook/tool result thay vì trí nhớ của model.</p></div></article>
73
164
  <article class="step"><div><h3>Verify đúng working tree</h3><p>Chỉ exact command đã quan sát, exit thành công và khớp current-tree digest mới được tính là passing evidence.</p></div></article>
74
165
  <article class="step"><div><h3>Recovery hoặc handoff có giới hạn</h3><p>Source repair và transient retry có ceiling. Trường hợp không an toàn chuyển sang handoff/operator thay vì tiếp tục đoán.</p></div></article>