@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.
- package/AGENTS.md +7 -0
- package/CHANGELOG.md +132 -2
- package/README.md +45 -70
- package/README.vi.md +34 -61
- package/architecture/layers.json +16 -3
- package/catalog/capabilities.json +14 -7
- package/catalog/claude-model-additions.json +42 -0
- package/docs/auto-delegation-policy.md +2 -0
- package/docs/command-reference-vietnamese.md +68 -90
- package/docs/context-window-policy.md +5 -5
- package/docs/distribution-standard.md +13 -16
- package/docs/en/architecture.md +9 -1
- package/docs/herdr-workflow.md +2 -3
- package/docs/languages.json +4 -4
- package/docs/managed-local-acceptance.md +403 -0
- package/docs/mcp-and-tools.md +5 -7
- package/docs/memory-policy.md +3 -3
- package/docs/model-options.md +2 -2
- package/docs/oauth-providers.md +1 -1
- package/docs/operator-manual-vietnamese.md +82 -127
- package/docs/package-architecture-notes.md +4 -4
- package/docs/piagent-core-improvement-plan.md +3 -5
- package/docs/piagent-core-plan-checkpoint-2026-09-06.json +2 -13
- package/docs/piagent-runtime-benchmark-execution-plan.md +10 -8
- package/docs/project-adapters.md +3 -3
- package/docs/project-onboarding.md +15 -16
- package/docs/publishing-for-teams.md +3 -1
- package/docs/quality-benchmark.md +2 -0
- package/docs/quickstart-vietnamese.md +23 -24
- package/docs/release-install-policy.md +3 -2
- package/docs/research/harness-next-evidence-review.md +7 -7
- package/docs/runtime-harness-standard.md +2 -0
- package/docs/runtime-policy-design.md +2 -0
- package/docs/runtime-quality-baseline.md +2 -0
- package/docs/subagent-orchestration-capabilities.md +1 -1
- package/docs/subagents-and-multiagent.md +10 -8
- package/docs/task-implementation-contract.md +2 -0
- package/docs/task-lifecycle-vietnamese.md +2 -0
- package/docs/team-onboarding.md +28 -59
- package/docs/usage-observability.md +2 -2
- package/docs/vi/architecture.md +9 -1
- package/docs/workflow-recipes.md +6 -10
- package/docs-site/architecture.html +4 -3
- package/docs-site/assets/docs.css +80 -0
- package/docs-site/benchmark.html +7 -1
- package/docs-site/commands.html +37 -23
- package/docs-site/content/architecture.html +2 -2
- package/docs-site/content/benchmark.html +5 -0
- package/docs-site/content/commands.html +35 -22
- package/docs-site/content/ecosystem.html +144 -0
- package/docs-site/content/en/architecture.html +1 -1
- package/docs-site/content/en/benchmark.html +5 -0
- package/docs-site/content/en/commands.html +30 -13
- package/docs-site/content/en/ecosystem.html +144 -0
- package/docs-site/content/en/index.html +24 -9
- package/docs-site/content/en/quickstart.html +10 -12
- package/docs-site/content/en/security.html +1 -1
- package/docs-site/content/en/team.html +2 -2
- package/docs-site/content/en/whats-new.html +92 -1
- package/docs-site/content/en/workflows.html +29 -31
- package/docs-site/content/index.html +24 -9
- package/docs-site/content/quickstart.html +10 -12
- package/docs-site/content/security.html +2 -2
- package/docs-site/content/team.html +2 -2
- package/docs-site/content/whats-new.html +92 -1
- package/docs-site/content/workflows.html +36 -38
- package/docs-site/context-engine.html +2 -1
- package/docs-site/ecosystem.html +283 -0
- package/docs-site/en/architecture.html +3 -2
- package/docs-site/en/benchmark.html +7 -1
- package/docs-site/en/commands.html +32 -14
- package/docs-site/en/context-engine.html +2 -1
- package/docs-site/en/ecosystem.html +283 -0
- package/docs-site/en/index.html +30 -14
- package/docs-site/en/mcp-approval.html +2 -1
- package/docs-site/en/mcp-auth.html +2 -1
- package/docs-site/en/mcp-servers.html +2 -1
- package/docs-site/en/mcp.html +2 -1
- package/docs-site/en/permissions.html +2 -1
- package/docs-site/en/profiles.html +2 -1
- package/docs-site/en/quickstart.html +17 -18
- package/docs-site/en/runtime.html +2 -1
- package/docs-site/en/scope.html +2 -1
- package/docs-site/en/security.html +6 -5
- package/docs-site/en/team.html +4 -3
- package/docs-site/en/whats-new.html +100 -8
- package/docs-site/en/workflows.html +34 -35
- package/docs-site/index.html +30 -14
- package/docs-site/mcp-approval.html +2 -1
- package/docs-site/mcp-auth.html +2 -1
- package/docs-site/mcp-servers.html +2 -1
- package/docs-site/mcp.html +2 -1
- package/docs-site/permissions.html +2 -1
- package/docs-site/profiles.html +2 -1
- package/docs-site/quickstart.html +17 -18
- package/docs-site/runtime.html +2 -1
- package/docs-site/scope.html +2 -1
- package/docs-site/security.html +7 -6
- package/docs-site/team.html +4 -3
- package/docs-site/whats-new.html +100 -8
- package/docs-site/workflows.html +41 -42
- package/evals/fs5-causal-arm.v1.json +2 -2
- package/evals/private-holdout-v1/CURRENT_BOUNDARY.md +17 -0
- package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
- package/package.json +8 -7
- package/packages/piagent-core/README.md +15 -23
- package/packages/piagent-core/docs/context-efficiency-improvement-plan.md +2 -0
- package/packages/piagent-core/extensions/experiment-loop-policy.ts +75 -0
- package/packages/piagent-core/extensions/local-state-path.js +15 -0
- package/packages/piagent-core/extensions/piagent-guard.ts +108 -960
- package/packages/piagent-core/extensions/policy-core.js +2 -2
- package/packages/piagent-core/extensions/source-checkout-paths.ts +54 -0
- package/packages/piagent-core/managed/broker-client.mjs +49 -0
- package/packages/piagent-core/managed/capabilities.mjs +28 -0
- package/packages/piagent-core/managed/client-agent.mjs +6 -0
- package/packages/piagent-core/managed/compaction.mjs +63 -0
- package/packages/piagent-core/managed/doctor.mjs +107 -0
- package/packages/piagent-core/managed/helper-roles.mjs +57 -0
- package/packages/piagent-core/managed/native-catalog.mjs +42 -0
- package/packages/piagent-core/managed/patch-snapshot.mjs +48 -0
- package/packages/piagent-core/managed/repository-operation.mjs +84 -0
- package/packages/piagent-core/managed/request-stream.mjs +130 -0
- package/packages/piagent-core/managed/resource-loader.mjs +42 -0
- package/packages/piagent-core/managed/review-snapshot-worker.mjs +27 -0
- package/packages/piagent-core/managed/sandbox-diagnostic.mjs +12 -0
- package/packages/piagent-core/managed/search-fallback.mjs +93 -0
- package/packages/piagent-core/managed/session.mjs +493 -0
- package/packages/piagent-core/managed/store.d.mts +3 -0
- package/packages/piagent-core/managed/store.mjs +64 -0
- package/packages/piagent-core/managed/tool-boundary.mjs +275 -0
- package/packages/piagent-core/managed/tool-worker.mjs +36 -0
- package/packages/piagent-core/managed/toolchain.mjs +120 -0
- package/packages/piagent-core/managed/web-fetch.mjs +105 -0
- package/packages/piagent-core/managed/web-search.mjs +131 -0
- package/packages/piagent-core/managed/workflow.mjs +326 -0
- package/packages/piagent-core/package.json +2 -5
- package/packages/piagent-core/policies/base-policy.json +80 -26
- package/packages/piagent-core/runtime/hooks/agent-start-hook.ts +3 -3
- package/packages/piagent-core/runtime/hooks/input-hook.ts +35 -196
- package/packages/piagent-core/runtime/hooks/session-start-hook.ts +2 -0
- package/packages/piagent-core/runtime/inspection/approval-broker.ts +9 -1
- package/packages/piagent-core/runtime/managed-failure.d.mts +10 -0
- package/packages/piagent-core/runtime/managed-failure.mjs +166 -0
- package/packages/piagent-core/runtime/orchestration/minimal-delegation-policy.ts +8 -29
- package/packages/piagent-core/runtime/orchestration/owned-work-budget.ts +1 -1
- package/packages/piagent-core/runtime/policy/block-remedy.ts +5 -3
- package/packages/piagent-core/runtime/registration/context-commands.ts +1 -1
- package/packages/piagent-core/runtime/registration/knowledge-tools.ts +7 -7
- package/packages/piagent-core/runtime/registration/policy-tools.ts +2 -2
- package/packages/piagent-core/runtime/registration/session-commands.ts +11 -26
- package/packages/piagent-core/runtime/registration/task-evidence-tools.ts +1 -1
- package/packages/piagent-core/runtime/session/system-prompt.ts +6 -7
- package/packages/piagent-core/runtime/workflows/webui-runtime-command.ts +6 -6
- package/packages/piagent-core/runtime/workflows/webui-workflow.ts +6 -11
- package/packages/piagent-core/security/sensitive-text.js +9 -0
- package/packages/piagent-core/skills/piagent-ops/SKILL.md +8 -10
- package/packages/piagent-core/skills/test-audit/SKILL.md +101 -0
- package/packages/piagent-core/subagents/piagent-planner.md +1 -1
- package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-DMU7Xe_O.js → MarkdownMessage-BRPIMCRh.js} +1 -1
- package/packages/piagent-webui/dist/client/assets/index-DNJ1vH5d.js +228 -0
- package/packages/piagent-webui/dist/client/assets/{index-DVahUVWy.css → index-DgSmcnP8.css} +1 -1
- package/packages/piagent-webui/dist/client/index.html +2 -2
- package/packages/piagent-webui/extension/piagent-webui.ts +11 -11
- package/packages/piagent-webui/extension/session-stream-adapter.ts +3 -1
- package/packages/piagent-webui/extension/terminal-session-adapter.ts +6 -1
- package/packages/piagent-webui/gateway/company-relay.ts +308 -0
- package/packages/piagent-webui/gateway/control-socket.ts +39 -12
- package/packages/piagent-webui/gateway/gateway-service.ts +109 -28
- package/packages/piagent-webui/gateway/gateway-session-stream.ts +58 -2
- package/packages/piagent-webui/gateway/managed-gateway.mjs +41 -0
- package/packages/piagent-webui/gateway/managed-launch.ts +145 -0
- package/packages/piagent-webui/gateway/managed-projection.ts +20 -0
- package/packages/piagent-webui/gateway/pi-host.ts +22 -4
- package/packages/piagent-webui/gateway/runtime-session-controls.ts +5 -2
- package/packages/piagent-webui/gateway/session-approval-authority.ts +28 -0
- package/packages/piagent-webui/gateway/session-catalog.ts +11 -3
- package/packages/piagent-webui/gateway/session-command-controller.ts +8 -2
- package/packages/piagent-webui/gateway/session-file-facts.ts +25 -0
- package/packages/piagent-webui/gateway/session-inspection-registry.ts +40 -9
- package/packages/piagent-webui/gateway/session-list-cache.ts +68 -0
- package/packages/piagent-webui/gateway/session-runtime-ownership.ts +8 -1
- package/packages/piagent-webui/gateway/session-runtime-supervisor.ts +20 -27
- package/packages/piagent-webui/ownership/managed-terminal-lease.ts +27 -0
- package/packages/piagent-webui/ownership/profile-state.ts +2 -0
- package/packages/piagent-webui/ownership/session-lease-store.ts +22 -1
- package/packages/piagent-webui/server/approval-projection.ts +9 -0
- package/packages/piagent-webui/server/core-inspection-provider.ts +4 -9
- package/packages/piagent-webui/server/loopback-server.ts +37 -1
- package/packages/piagent-webui/server/message-stop-reason.ts +11 -0
- package/packages/piagent-webui/server/tool-call-summary.ts +185 -0
- package/packages/piagent-webui/server/transcript-projection.ts +86 -3
- package/packs/engineering-base/pack.json +4 -0
- package/schemas/piagent-webui/runtime-command-v1.schema.json +1 -2
- package/schemas/piagent-webui/session-catalog-v1.schema.json +8 -0
- package/schemas/piagent-webui/transcript-v1.schema.json +94 -1
- package/scripts/build-docs-site.mjs +23 -12
- package/scripts/check-public-wording.mjs +5 -6
- package/scripts/check-runtime-advisories.mjs +23 -6
- package/scripts/claude-model-additions.mjs +33 -0
- package/scripts/configure-model-scope.sh +30 -6
- package/scripts/configure-subagents.sh +1 -1
- package/scripts/explain-command.mjs +5 -6
- package/scripts/init-project.sh +0 -2
- package/scripts/install-global.sh +3 -2
- package/scripts/model-scope-prune.mjs +75 -0
- package/scripts/phase-tools-evaluation.mjs +9 -4
- package/scripts/piagent-cli.mjs +51 -2
- package/scripts/piagent-dashboard.mjs +27 -4
- package/scripts/piagent-installations.mjs +26 -0
- package/scripts/piagent-studio.mjs +155 -0
- package/scripts/runtime-advisory-exceptions.json +29 -0
- package/scripts/setup.sh +10 -6
- package/scripts/team-doctor.sh +20 -1
- package/scripts/typescript-loader.mjs +6 -0
- package/scripts/verify-local.sh +2 -2
- package/templates/global/settings.json +3 -1
- package/templates/project/.pi/project-context.md +3 -3
- package/templates/project/AGENTS.md +4 -5
- package/docs/piagent-core-reasoning-research-2026-09-06.md +0 -225
- package/docs/piagent-core-research-sources-2026-09-06.json +0 -416
- 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
|
|
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">
|
|
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>
|
|
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>
|
|
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
|
|
14
|
-
<tr><td>During work</td><td>
|
|
15
|
-
<tr><td>Verify and review</td><td>
|
|
16
|
-
<tr><td>
|
|
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] <intent></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
|
|
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>
|
|
31
|
-
<tr><td><span class="inline-code">/piagent-status</span></td><td>
|
|
32
|
-
<tr><td><span class="inline-code">/piagent-inspector</span></td><td>
|
|
33
|
-
<tr><td><span class="inline-code">/usage efficiency</span></td><td>Sourced context telemetry
|
|
34
|
-
<tr><td><span class="inline-code">/piagent-orchestration</span></td><td>Current mode, helper mode,
|
|
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
|
|
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
|
|
48
|
+
<header><span>Inspect → implement → review</span><button class="clip-btn" data-clip="/task-preflight --json Fix the failing checkout test Fix the failing checkout test and run the project tests. /piagent-inspector Review the current diff: correctness, missing tests, scope drift. Read-only. /usage efficiency">Copy</button></header>
|
|
50
49
|
<pre><code>/task-preflight --json Fix the failing checkout test
|
|
51
|
-
|
|
50
|
+
Fix the failing checkout test and run the project tests.
|
|
52
51
|
/piagent-inspector
|
|
53
|
-
|
|
54
|
-
/piagent-status
|
|
52
|
+
Review the current diff: correctness, missing tests, scope drift. Read-only.
|
|
55
53
|
/usage efficiency</code></pre>
|
|
56
|
-
<p>Only
|
|
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
|
|
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
|
|
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>
|
|
72
|
-
<article class="command-card"><header><span>Read-only scout</span><button class="clip-btn" data-clip="
|
|
73
|
-
<article class="command-card"><header><span>Plan before coding</span><button class="clip-btn" data-clip="
|
|
74
|
-
<article class="command-card"><header><span>Review a diff</span><button class="clip-btn" data-clip="
|
|
75
|
-
<article class="command-card"><header><span>
|
|
76
|
-
<article class="command-card"><header><span>
|
|
77
|
-
<article class="command-card"><header><span>Backend spec to frontend</span><button class="clip-btn" data-clip="/profile be-readonly-fe

|
|
78
|
-
|
|
79
|
-
<article class="command-card"><header><span>
|
|
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 "docs: update onboarding notes". 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 "Harden command docs".">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 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">
|
|
3
|
-
<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
|
-
|
|
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="/
|
|
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">
|
|
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">
|
|
92
|
+
<span class="card-kicker">Bản 1.9.1</span>
|
|
83
93
|
<h3>Có gì mới</h3>
|
|
84
|
-
<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,
|
|
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">
|
|
69
|
-
<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
|
|
72
|
-
<pre><code
|
|
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>
|
|
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>
|
|
108
|
-
<pre><code
|
|
109
|
-
|
|
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. 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">
|
|
118
|
-
<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">
|
|
26
|
-
<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>
|
|
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>
|
|
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
|
|
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>
|