@piagent/platform 1.40.0 → 1.42.0
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/CHANGELOG.md +1012 -2035
- package/CONTRIBUTING.md +2 -0
- package/README.md +128 -325
- package/README.vi.md +149 -143
- package/architecture/layers.json +10 -0
- package/docs/command-reference-vietnamese.md +2 -2
- package/docs/distribution-standard.md +6 -6
- package/docs/en/architecture.md +1 -0
- package/docs/languages.json +4 -4
- package/docs/operator-manual-vietnamese.md +7 -7
- package/docs/publishing-for-teams.md +2 -0
- package/docs/release-install-policy.md +3 -3
- package/docs/team-onboarding.md +2 -2
- package/docs/vi/architecture.md +1 -0
- package/docs-site/architecture.html +71 -63
- package/docs-site/assets/docs.css +2736 -1030
- package/docs-site/assets/docs.js +451 -43
- package/docs-site/assets/og.png +0 -0
- package/docs-site/assets/piagent-logo.svg +9 -31
- package/docs-site/assets/search-en.json +1 -0
- package/docs-site/assets/search-vi.json +1 -0
- package/docs-site/benchmark.html +71 -63
- package/docs-site/commands.html +72 -64
- package/docs-site/content/en/index.html +220 -131
- package/docs-site/content/en/quickstart.html +74 -90
- package/docs-site/content/en/update.html +80 -0
- package/docs-site/content/en/whats-new.html +1 -678
- package/docs-site/content/index.html +220 -131
- package/docs-site/content/quickstart.html +73 -108
- package/docs-site/content/update.html +80 -0
- package/docs-site/content/whats-new.html +1 -678
- package/docs-site/context-engine.html +73 -65
- package/docs-site/ecosystem.html +73 -65
- package/docs-site/en/architecture.html +67 -59
- package/docs-site/en/benchmark.html +67 -59
- package/docs-site/en/commands.html +68 -60
- package/docs-site/en/context-engine.html +68 -60
- package/docs-site/en/ecosystem.html +68 -60
- package/docs-site/en/index.html +281 -220
- package/docs-site/en/mcp-approval.html +67 -59
- package/docs-site/en/mcp-auth.html +67 -59
- package/docs-site/en/mcp-servers.html +68 -60
- package/docs-site/en/mcp.html +64 -56
- package/docs-site/en/permissions.html +68 -60
- package/docs-site/en/profiles.html +68 -60
- package/docs-site/en/quickstart.html +142 -150
- package/docs-site/en/runtime.html +67 -59
- package/docs-site/en/scope.html +68 -60
- package/docs-site/en/security.html +64 -56
- package/docs-site/en/team.html +67 -59
- package/docs-site/en/update.html +228 -0
- package/docs-site/en/whats-new.html +1601 -719
- package/docs-site/en/windows.html +71 -63
- package/docs-site/en/workflows.html +68 -60
- package/docs-site/favicon.svg +9 -14
- package/docs-site/index.html +281 -220
- package/docs-site/mcp-approval.html +70 -62
- package/docs-site/mcp-auth.html +70 -62
- package/docs-site/mcp-servers.html +71 -63
- package/docs-site/mcp.html +70 -62
- package/docs-site/permissions.html +72 -64
- package/docs-site/profiles.html +72 -64
- package/docs-site/quickstart.html +145 -172
- package/docs-site/releases.json +4449 -0
- package/docs-site/runtime.html +73 -65
- package/docs-site/scope.html +73 -65
- package/docs-site/security.html +73 -65
- package/docs-site/team.html +71 -63
- package/docs-site/update.html +228 -0
- package/docs-site/whats-new.html +1605 -723
- package/docs-site/windows.html +75 -67
- package/docs-site/workflows.html +73 -65
- package/evals/fixtures/piagent-webui/document-asset-v1.invalid.json +12 -0
- package/evals/fixtures/piagent-webui/document-asset-v1.valid.json +12 -0
- package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
- package/package.json +1 -1
- package/packages/piagent-core/package.json +1 -1
- package/packages/piagent-core/runtime/inspection/document-workspace-projection.ts +78 -15
- package/packages/piagent-core/skills/fe-change-report/SKILL.md +175 -0
- package/packages/piagent-core/skills/fe-change-report/scripts/build-report.mjs +183 -0
- package/packages/piagent-core/skills/fe-change-report/scripts/capture.mjs +150 -0
- package/packages/piagent-core/skills/fe-change-report/scripts/diff-regions.mjs +110 -0
- package/packages/piagent-webui/dist/client/assets/App-DBx4BU3F.js +5 -0
- package/packages/piagent-webui/dist/client/assets/LineReview-DzonwD-g.js +3 -0
- package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-BpoF2k2-.js → MarkdownMessage-DchODuO7.js} +2 -2
- package/packages/piagent-webui/dist/client/assets/SessionInspectorDrawer-BHHNlct3.js +1 -0
- package/packages/piagent-webui/dist/client/assets/SettingsPage-DX28MsZA.js +1 -0
- package/packages/piagent-webui/dist/client/assets/TerminalPanel-C--BiN0p.js +2 -0
- package/packages/piagent-webui/dist/client/assets/{TerminalView-Dw9xqakv.js → TerminalView-BML7uS6R.js} +3 -3
- package/packages/piagent-webui/dist/client/assets/WorkspaceCodeEditor-B7ieqDnt.js +2 -0
- package/packages/piagent-webui/dist/client/assets/WorkspaceExplorer-BOafuPU-.js +5 -0
- package/packages/piagent-webui/dist/client/assets/WorkspaceQuickOpen-CGoGfUPk.js +1 -0
- package/packages/piagent-webui/dist/client/assets/api-BUjrtT1B.js +1 -0
- package/packages/piagent-webui/dist/client/assets/index-C7Azrwpq.js +132 -0
- package/packages/piagent-webui/dist/client/assets/index-Dqb2hNan.css +1 -0
- package/packages/piagent-webui/dist/client/assets/tab-close-Crj8vsUq.js +1 -0
- package/packages/piagent-webui/dist/client/assets/ui-preferences-B3UfDp-5.js +1 -0
- package/packages/piagent-webui/dist/client/assets/vendor-Ch5hIe0W.js +136 -0
- package/packages/piagent-webui/dist/client/index.html +5 -8
- package/packages/piagent-webui/extension/piagent-webui.ts +1 -0
- package/packages/piagent-webui/server/core-inspection-provider.ts +5 -0
- package/packages/piagent-webui/server/ipc-read-model-client.ts +1 -0
- package/packages/piagent-webui/server/read-model-provider.ts +1 -0
- package/packages/piagent-webui/server/read-only-router.ts +6 -0
- package/schemas/piagent-webui/catalog-v1.json +9 -0
- package/schemas/piagent-webui/document-asset-v1.schema.json +57 -0
- package/scripts/build-docs-site.mjs +205 -348
- package/scripts/check-public-wording.mjs +2 -1
- package/scripts/docs-site-icons.mjs +84 -0
- package/scripts/docs-site-nav.mjs +302 -0
- package/scripts/docs-site-releases.mjs +227 -0
- package/packages/piagent-webui/dist/client/assets/Alert-DGWhP2MM.js +0 -1
- package/packages/piagent-webui/dist/client/assets/Button-QItfZUNj.js +0 -1
- package/packages/piagent-webui/dist/client/assets/DialogTitle-CyaFPaiW.js +0 -3
- package/packages/piagent-webui/dist/client/assets/TerminalPanel-Dg3eghy4.js +0 -2
- package/packages/piagent-webui/dist/client/assets/Typography-B9om7Evq.js +0 -1
- package/packages/piagent-webui/dist/client/assets/WorkspaceCodeEditor-DtwXZAgK.js +0 -2
- package/packages/piagent-webui/dist/client/assets/WorkspaceExplorer-WS-yLlnb.js +0 -5
- package/packages/piagent-webui/dist/client/assets/WorkspaceQuickOpen-CYCY-s44.js +0 -1
- package/packages/piagent-webui/dist/client/assets/index-BgJgso6j.js +0 -102
- package/packages/piagent-webui/dist/client/assets/index-Brs_HjIo.css +0 -1
- package/packages/piagent-webui/dist/client/assets/tab-close-CqPDs-w5.js +0 -1
- package/packages/piagent-webui/dist/client/assets/ui-preferences-BO3AV7QE.js +0 -10
- package/packages/piagent-webui/dist/client/assets/useId-DEefKUAT.js +0 -124
package/docs-site/index.html
CHANGED
|
@@ -1,276 +1,337 @@
|
|
|
1
1
|
<!doctype html>
|
|
2
|
-
<html lang="vi" data-copy-success="Đã lấy" data-copy-fallback="Chọn lệnh">
|
|
2
|
+
<html lang="vi" data-copy-success="Đã lấy" data-copy-fallback="Chọn lệnh" data-copy-label="Sao chép">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
-
<title>Pi Agent Platform
|
|
7
|
-
<meta name="description" content="Coding agent cho cả team:
|
|
8
|
-
<meta name="theme-color" content="#
|
|
6
|
+
<title>Pi Agent Platform — Coding agent cho cả team</title>
|
|
7
|
+
<meta name="description" content="Coding agent cho cả team: guard kiểm tra mọi tool call, Harness của team tự chạy check và review, một dashboard cho Terminal và trình duyệt." />
|
|
8
|
+
<meta name="theme-color" content="#09090b" media="(prefers-color-scheme: dark)" />
|
|
9
|
+
<meta name="theme-color" content="#fbfbf9" media="(prefers-color-scheme: light)" />
|
|
9
10
|
<link rel="canonical" href="https://piagent.io.vn/" />
|
|
10
11
|
<link rel="alternate" hreflang="vi" href="https://piagent.io.vn/" />
|
|
11
12
|
<link rel="alternate" hreflang="en" href="https://piagent.io.vn/en/" />
|
|
12
13
|
<link rel="alternate" hreflang="x-default" href="https://piagent.io.vn/" />
|
|
13
14
|
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
|
14
|
-
<meta property="og:
|
|
15
|
-
<meta property="og:
|
|
15
|
+
<meta property="og:type" content="website" />
|
|
16
|
+
<meta property="og:title" content="Pi Agent Platform — Coding agent cho cả team" />
|
|
17
|
+
<meta property="og:description" content="Coding agent cho cả team: guard kiểm tra mọi tool call, Harness của team tự chạy check và review, một dashboard cho Terminal và trình duyệt." />
|
|
16
18
|
<meta property="og:url" content="https://piagent.io.vn/" />
|
|
19
|
+
<meta property="og:image" content="https://piagent.io.vn/assets/og.png" />
|
|
20
|
+
<meta name="twitter:card" content="summary_large_image" />
|
|
21
|
+
<script>try{var t=localStorage.getItem("piagent-docs-theme");if(t==="light"||t==="dark")document.documentElement.dataset.theme=t}catch(e){}</script>
|
|
17
22
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
18
23
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
19
24
|
<link
|
|
20
|
-
href="https://fonts.googleapis.com/css2?family=
|
|
25
|
+
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;550;600;650;700;750&family=JetBrains+Mono:wght@400;500;600;700&display=swap"
|
|
21
26
|
rel="stylesheet"
|
|
22
27
|
/>
|
|
23
28
|
<link rel="stylesheet" href="/assets/docs.css" />
|
|
24
29
|
<script src="/assets/docs.js" defer></script>
|
|
25
30
|
</head>
|
|
26
|
-
<body>
|
|
31
|
+
<body class="home">
|
|
32
|
+
<svg width="0" height="0" style="position:absolute" aria-hidden="true"><symbol id="icon-apple" viewBox="0 0 24 24"><path d="M16 3.5c-1 .3-2.4 1.3-2.6 3 1.2.1 2.4-.8 2.6-3zM12 8c-1.5-1-5-1-6 2.5S6.5 19 9 20c1.2.5 2-.4 3-.4s1.8.9 3 .4c1.4-.6 2.5-2.7 3-4.5-2.5-1-2.8-4.6-.5-6-1.2-1.6-3.3-2-4.5-1.5z"/></symbol><symbol id="icon-arrow-right" viewBox="0 0 24 24"><path d="M5 12h14M13 6l6 6-6 6"/></symbol><symbol id="icon-box" viewBox="0 0 24 24"><path d="m12 3 8 4.5v9L12 21l-8-4.5v-9z"/><path d="m4 7.5 8 4.5 8-4.5M12 12v9"/></symbol><symbol id="icon-brain" viewBox="0 0 24 24"><path d="M9 4a3 3 0 0 0-3 3 3 3 0 0 0-2 5 3 3 0 0 0 2 5 3 3 0 0 0 3 3h0a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"/><path d="M15 4a3 3 0 0 1 3 3 3 3 0 0 1 2 5 3 3 0 0 1-2 5 3 3 0 0 1-3 3h0a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z"/></symbol><symbol id="icon-branch" viewBox="0 0 24 24"><circle cx="6" cy="5.5" r="2"/><circle cx="6" cy="18.5" r="2"/><circle cx="18" cy="7.5" r="2"/><path d="M6 7.5v9M18 9.5c0 4.5-5 4-11 7.5"/></symbol><symbol id="icon-building" viewBox="0 0 24 24"><rect x="4.5" y="3" width="15" height="18" rx="1.5"/><path d="M9 7h1.5M13.5 7H15M9 11h1.5M13.5 11H15M9 15h1.5M13.5 15H15M10 21v-3h4v3"/></symbol><symbol id="icon-camera" viewBox="0 0 24 24"><path d="M4 8h3l2-3h6l2 3h3v11H4z"/><circle cx="12" cy="13" r="3.5"/></symbol><symbol id="icon-chart" viewBox="0 0 24 24"><path d="M4 4v16h16"/><path d="M8.5 16v-5M12.5 16V8M16.5 16v-3"/></symbol><symbol id="icon-check" viewBox="0 0 24 24"><path d="m5 12 5 5 9-10"/></symbol><symbol id="icon-check-circle" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="m8.5 12 2.5 2.5 4.5-5"/></symbol><symbol id="icon-clock" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></symbol><symbol id="icon-code" viewBox="0 0 24 24"><path d="m8 7-5 5 5 5M16 7l5 5-5 5M14 4l-4 16"/></symbol><symbol id="icon-copy" viewBox="0 0 24 24"><rect x="9" y="9" width="11" height="11" rx="2"/><path d="M5 15V6a2 2 0 0 1 2-2h9"/></symbol><symbol id="icon-cpu" viewBox="0 0 24 24"><rect x="6" y="6" width="12" height="12" rx="2"/><rect x="9.5" y="9.5" width="5" height="5" rx=".8"/><path d="M9 2.5V6M15 2.5V6M9 18v3.5M15 18v3.5M2.5 9H6M2.5 15H6M18 9h3.5M18 15h3.5"/></symbol><symbol id="icon-github" viewBox="0 0 24 24"><path d="M9 19c-4.5 1.5-4.5-2.5-6.5-3m13 6v-3.5a3 3 0 0 0-.9-2.4c3-.3 6.4-1.5 6.4-6.7a5.2 5.2 0 0 0-1.4-3.6 4.8 4.8 0 0 0-.1-3.6s-1.1-.3-3.7 1.4a12.6 12.6 0 0 0-6.6 0C6.6 1.9 5.5 2.2 5.5 2.2a4.8 4.8 0 0 0-.1 3.6A5.2 5.2 0 0 0 4 9.4c0 5.2 3.4 6.4 6.4 6.7a3 3 0 0 0-.9 2.4V22"/></symbol><symbol id="icon-hash" viewBox="0 0 24 24"><path d="M5 9h15M4 15h15M10 3 8 21M16 3l-2 18"/></symbol><symbol id="icon-home" viewBox="0 0 24 24"><path d="M3 10.5 12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1z"/></symbol><symbol id="icon-key" viewBox="0 0 24 24"><circle cx="8" cy="15" r="4"/><path d="m10.9 12.1 8.6-8.6M16.5 6.5l2.5 2.5M14 9l2 2"/></symbol><symbol id="icon-layers" viewBox="0 0 24 24"><path d="m12 3 9 5-9 5-9-5z"/><path d="m3 13 9 5 9-5"/><path d="m3 17.5 9 5 9-5" opacity=".55"/></symbol><symbol id="icon-list" viewBox="0 0 24 24"><path d="M9 6h11M9 12h11M9 18h11M4.5 6h.01M4.5 12h.01M4.5 18h.01"/></symbol><symbol id="icon-lock" viewBox="0 0 24 24"><rect x="4" y="11" width="16" height="10" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></symbol><symbol id="icon-message" viewBox="0 0 24 24"><path d="M4 5h16v11H9l-5 4z"/></symbol><symbol id="icon-moon" viewBox="0 0 24 24"><path d="M20 14.5A8 8 0 1 1 9.5 4a6.5 6.5 0 0 0 10.5 10.5z"/></symbol><symbol id="icon-network" viewBox="0 0 24 24"><circle cx="12" cy="5" r="2.5"/><circle cx="5" cy="19" r="2.5"/><circle cx="19" cy="19" r="2.5"/><path d="M12 7.5V12m0 0-5.2 5.2M12 12l5.2 5.2"/></symbol><symbol id="icon-plug" viewBox="0 0 24 24"><path d="M9 3v4M15 3v4M6 7h12v4a6 6 0 0 1-12 0zM12 17v4"/></symbol><symbol id="icon-refresh" viewBox="0 0 24 24"><path d="M20 11A8 8 0 0 0 5.3 6.7M4 3v4h4"/><path d="M4 13a8 8 0 0 0 14.7 4.3M20 21v-4h-4"/></symbol><symbol id="icon-rocket" viewBox="0 0 24 24"><path d="M5.5 15.5C4 17 3.5 19.5 3.5 20.5c1 0 3.5-.5 5-2"/><path d="M9 15 6.5 12.5C8 8.5 11.5 4.5 20 4c-.5 8.5-4.5 12-8.5 13.5z"/><circle cx="14.5" cy="9.5" r="1.5"/></symbol><symbol id="icon-search" viewBox="0 0 24 24"><circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/></symbol><symbol id="icon-server" viewBox="0 0 24 24"><rect x="3" y="4" width="18" height="7" rx="2"/><rect x="3" y="13" width="18" height="7" rx="2"/><path d="M7 7.5h.01M7 16.5h.01"/></symbol><symbol id="icon-shield" viewBox="0 0 24 24"><path d="M12 3 4.5 6v5.5c0 4.8 3.2 8.2 7.5 9.5 4.3-1.3 7.5-4.7 7.5-9.5V6z"/></symbol><symbol id="icon-shield-check" viewBox="0 0 24 24"><path d="M12 3 4.5 6v5.5c0 4.8 3.2 8.2 7.5 9.5 4.3-1.3 7.5-4.7 7.5-9.5V6z"/><path d="m9 12 2.2 2.2L15.5 10"/></symbol><symbol id="icon-sliders" viewBox="0 0 24 24"><path d="M4 7h9M17 7h3M4 17h3M11 17h9"/><circle cx="15" cy="7" r="2"/><circle cx="9" cy="17" r="2"/></symbol><symbol id="icon-sparkles" viewBox="0 0 24 24"><path d="M11 3c.6 4.6 2.4 6.4 7 7-4.6.6-6.4 2.4-7 7-.6-4.6-2.4-6.4-7-7 4.6-.6 6.4-2.4 7-7z"/><path d="M19 15v5M16.5 17.5h5"/></symbol><symbol id="icon-sun" viewBox="0 0 24 24"><circle cx="12" cy="12" r="4"/><path d="M12 2.5v2M12 19.5v2M4.6 4.6 6 6M18 18l1.4 1.4M2.5 12h2M19.5 12h2M4.6 19.4 6 18M18 6l1.4-1.4"/></symbol><symbol id="icon-target" viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1"/></symbol><symbol id="icon-terminal" viewBox="0 0 24 24"><rect x="3" y="4" width="18" height="16" rx="2.5"/><path d="m7.5 9.5 3 2.5-3 2.5M13 15h4"/></symbol><symbol id="icon-users" viewBox="0 0 24 24"><circle cx="9" cy="8" r="3.5"/><path d="M2.5 20a6.5 6.5 0 0 1 13 0"/><path d="M16 4.5a3.5 3.5 0 0 1 0 7M18 14a6 6 0 0 1 3.5 6"/></symbol><symbol id="icon-windows" viewBox="0 0 24 24"><path d="M3.5 5.5 10.5 4.5v7h-7zM13 4.2 20.5 3v8.5H13zM3.5 13h7v7l-7-1zM13 13h7.5v8.5L13 20.3z"/></symbol><symbol id="icon-wrench" viewBox="0 0 24 24"><path d="M15 6.5a4.5 4.5 0 0 1-6 6l-5 5L6.5 20l5-5a4.5 4.5 0 0 0 6-6L15 11.5l-2.5-2.5z"/></symbol></svg>
|
|
33
|
+
<a class="skip-link" href="#content">Tới nội dung</a>
|
|
27
34
|
<header class="topbar">
|
|
28
35
|
<a class="brand" href="/" aria-label="Pi Agent Platform">
|
|
29
|
-
<span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" /></span>
|
|
30
|
-
<span>
|
|
36
|
+
<span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" width="28" height="28" /></span>
|
|
37
|
+
<span class="brand-name"><b>Piagent</b> <span>Platform</span></span>
|
|
31
38
|
</a>
|
|
39
|
+
<a class="version-badge" href="/whats-new" data-docs-version="v1.42.0" title="v1.42.0 docs · VI"><span class="dot"></span>v1.42.0</a>
|
|
40
|
+
<nav class="top-nav" aria-label="Tài liệu">
|
|
41
|
+
<a href="/quickstart">Tài liệu</a>
|
|
42
|
+
<a href="/whats-new">Changelog</a>
|
|
43
|
+
<a href="/benchmark">Benchmark</a>
|
|
44
|
+
</nav>
|
|
45
|
+
<span class="top-spacer"></span>
|
|
46
|
+
<button class="search-trigger" type="button" data-search aria-label="Tìm trong tài liệu"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-search"/></svg><span>Tìm trong tài liệu…</span><kbd>⌘K</kbd></button>
|
|
32
47
|
<div class="top-actions">
|
|
33
|
-
<
|
|
34
|
-
<
|
|
35
|
-
|
|
36
|
-
<a class="language-option" href="/en/" hreflang="en" lang="en">EN</a>
|
|
37
|
-
</nav>
|
|
38
|
-
<a class="button social" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Mở GitHub repository">
|
|
39
|
-
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
40
|
-
<path d="M7 17 17 7M9 7h8v8" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
|
|
41
|
-
</svg>
|
|
42
|
-
GitHub
|
|
43
|
-
</a>
|
|
44
|
-
<button class="button mobile-menu" type="button" data-menu>Lộ trình</button>
|
|
45
|
-
<a class="button top-command-link" href="/commands">Commands</a>
|
|
48
|
+
<nav class="language-switch" aria-label="Ngôn ngữ"><a class="language-option current" href="/" hreflang="vi" lang="vi" aria-current="true">VI</a><a class="language-option" href="/en/" hreflang="en" lang="en">EN</a></nav>
|
|
49
|
+
<button class="icon-button theme-toggle" type="button" data-theme-toggle aria-label="Đổi giao diện sáng/tối"><svg class="icon icon-moon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-moon"/></svg><svg class="icon icon-sun" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-sun"/></svg></button>
|
|
50
|
+
<a class="icon-button" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Mở GitHub repository"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-github"/></svg></a>
|
|
46
51
|
</div>
|
|
47
52
|
</header>
|
|
48
53
|
|
|
49
|
-
<
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
<main id="content" class="home-main" data-article>
|
|
55
|
+
<section class="hero">
|
|
56
|
+
<div class="hero-bg" aria-hidden="true"></div>
|
|
57
|
+
<div class="hero-glow" aria-hidden="true"></div>
|
|
58
|
+
<div class="home-wrap">
|
|
59
|
+
<a class="hero-pill" href="/whats-new#v1-42-0"><b>v1.42.0</b><span>Dashboard thiết kế lại, tin cũ tải mà không nhảy trang</span><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></a>
|
|
60
|
+
<h1>Coding agent cho cả team, <span class="grad">kiểm tra từng bước.</span></h1>
|
|
61
|
+
<p class="hero-sub">Guard chặn tool call nguy hiểm trước khi chạy. Harness của team tự chạy check và cho subagent review. Một dashboard cho Terminal và trình duyệt, với model của bạn hoặc của công ty.</p>
|
|
62
|
+
<div class="hero-cta">
|
|
63
|
+
<div class="install-box"><span class="prompt" aria-hidden="true">$</span><code>npm i -g @piagent/platform</code><button class="clip-btn" type="button" data-clip="npm install -g @piagent/platform piagent-setup" aria-label="Sao chép lệnh cài"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-copy"/></svg></button></div>
|
|
64
|
+
<a class="button primary lg" href="/quickstart">Bắt đầu <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></a>
|
|
65
|
+
<a class="button lg" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-github"/></svg> GitHub</a>
|
|
66
|
+
</div>
|
|
67
|
+
<p class="hero-note"><span>MIT</span><span>Node.js ≥ 22.19</span><span>macOS · Linux · Windows (WSL2)</span></p>
|
|
57
68
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
<
|
|
64
|
-
<
|
|
65
|
-
<
|
|
66
|
-
<
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
<
|
|
70
|
-
<a class="nav-link" href="/profiles">Project profile</a>
|
|
71
|
-
<a class="nav-link" href="/permissions">Permission modes</a>
|
|
72
|
-
<a class="nav-link" href="/commands">Command catalog</a>
|
|
73
|
-
<a class="nav-link" href="/workflows">Workflows</a>
|
|
74
|
-
</div>
|
|
75
|
-
<div class="nav-group">
|
|
76
|
-
<p class="nav-title">MCP</p>
|
|
77
|
-
<a class="nav-link" href="/mcp">MCP overview</a>
|
|
78
|
-
<a class="nav-link" href="/mcp-servers">Quản lý server</a>
|
|
79
|
-
<a class="nav-link" href="/mcp-auth">Auth và readiness</a>
|
|
80
|
-
<a class="nav-link" href="/mcp-approval">Approval gate</a>
|
|
69
|
+
<div class="demo" data-reveal>
|
|
70
|
+
<div class="window" aria-label="Minh hoạ một lượt ở chế độ công ty" role="img">
|
|
71
|
+
<div class="window-bar" aria-hidden="true"><i></i><i></i><i></i><span class="title">piagent dashboard · shop-api</span></div>
|
|
72
|
+
<div class="window-body" aria-hidden="true">
|
|
73
|
+
<div class="window-side">
|
|
74
|
+
<p>Cuộc trò chuyện</p>
|
|
75
|
+
<div class="item active"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-message"/></svg><span>Sửa làm tròn tiền</span><i class="status run"></i></div>
|
|
76
|
+
<div class="item"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-message"/></svg><span>Phân trang /orders</span><i class="status ok"></i></div>
|
|
77
|
+
<div class="item"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-message"/></svg><span>Đọc project</span><i class="status ok"></i></div>
|
|
78
|
+
<p style="margin-top:18px">Harness</p>
|
|
79
|
+
<div class="item"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-shield-check"/></svg><span>check · review</span></div>
|
|
80
|
+
<div class="item"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-branch"/></svg><span>fix/invoice-rounding</span></div>
|
|
81
81
|
</div>
|
|
82
|
-
<div class="
|
|
83
|
-
<
|
|
84
|
-
<
|
|
85
|
-
<
|
|
86
|
-
<
|
|
87
|
-
<
|
|
88
|
-
<
|
|
89
|
-
<
|
|
82
|
+
<div class="term" data-term>
|
|
83
|
+
<div class="term-line you"><span class="g">›</span><span data-type="Sửa lỗi làm tròn tiền trong hoá đơn, chạy test rồi push."></span><span class="caret"></span></div>
|
|
84
|
+
<div class="term-line dim" data-wait="700"><span class="g">·</span><span>Đọc src/billing/invoice.ts, tests/invoice.test.ts</span></div>
|
|
85
|
+
<div class="term-line warn"><span class="g">✕</span><span>Guard chặn: đọc <b>.env</b> · file được bảo vệ</span></div>
|
|
86
|
+
<div class="term-line mint"><span class="g">✎</span><span>Sửa src/billing/invoice.ts <span class="ok">+12</span> <span class="warn">−3</span></span></div>
|
|
87
|
+
<div class="term-line" data-wait="800"><span class="g ok">▶</span><span>npm test <span class="dim">— sandbox, không mạng</span> <span class="ok">48 passed</span></span></div>
|
|
88
|
+
<div class="term-line" data-wait="800"><span class="g lime">◆</span><span>Review · subagent đọc diff: <span class="ok">không có lỗi chặn</span></span></div>
|
|
89
|
+
<div class="term-result" data-wait="700"><span class="ok">✓</span> Check đã qua trên code cuối · Review không có lỗi chặn</div>
|
|
90
|
+
<div class="term-card" data-wait="900">Agent muốn chạy <b>git push origin fix/invoice-rounding</b>
|
|
91
|
+
<div class="row"><span class="chip yes">Cho phép một lần</span><span class="chip">Từ chối</span></div>
|
|
92
|
+
</div>
|
|
90
93
|
</div>
|
|
91
|
-
</
|
|
92
|
-
</
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
93
97
|
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
<
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
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.
|
|
101
|
-
</p>
|
|
102
|
-
<div class="owner-strip" aria-label="Thông tin dự án">
|
|
103
|
-
<span class="owner-label">Project links</span>
|
|
104
|
-
<a href="https://piagent.io.vn" target="_blank" rel="noopener noreferrer">Docs · piagent.io.vn</a>
|
|
105
|
-
<a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub · Vt-mmm/piagent</a>
|
|
106
|
-
<a href="https://www.facebook.com/vinhtam0544/" target="_blank" rel="noopener noreferrer">Facebook · Vĩnh Tâm</a>
|
|
107
|
-
</div>
|
|
108
|
-
<div class="hero-actions">
|
|
109
|
-
<a class="button primary" href="/quickstart">Bắt đầu</a>
|
|
110
|
-
<a class="button" href="/ecosystem">Hệ sinh thái</a>
|
|
111
|
-
<a class="button" href="/whats-new">Có gì mới trong 1.40.0</a>
|
|
112
|
-
<a class="button" href="/commands">Xem command</a>
|
|
98
|
+
<div class="proof" data-reveal>
|
|
99
|
+
<div><strong><span data-count="54">54</span><em>/54</em></strong><span>task giải quyết trong benchmark production</span><small>codex-cli cùng model: 48/54</small></div>
|
|
100
|
+
<div><strong>−<span data-count="61">61</span><em>%</em></strong><span>fresh token trên cùng workload</span><small>khoảng tin cậy 95%: ít nhất −51,6%</small></div>
|
|
101
|
+
<div><strong><span data-count="52">52</span><em>/52</em></strong><span>mẫu secret bị che trong output</span><small>0/30 văn bản thường bị che nhầm</small></div>
|
|
102
|
+
<div><strong><span data-count="115">115</span></strong><span>bản phát hành từ 21/07/2026</span><small>4.400+ test tự động trên macOS và Linux</small></div>
|
|
103
|
+
</div>
|
|
113
104
|
</div>
|
|
114
105
|
</section>
|
|
115
106
|
|
|
116
|
-
<section class="section">
|
|
117
|
-
<
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
<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>
|
|
123
|
-
</figure>
|
|
124
|
-
</section>
|
|
125
|
-
|
|
126
|
-
<section class="section">
|
|
127
|
-
<p class="section-kicker">Production V1 · bằng chứng lịch sử của v1.6.0</p>
|
|
128
|
-
<h2 id="bang-chung">Đo được, không phải nói suông</h2>
|
|
129
|
-
<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>
|
|
130
|
-
|
|
131
|
-
<div class="benchmark-metrics" aria-label="Số liệu benchmark nổi bật">
|
|
132
|
-
<div class="benchmark-metric">
|
|
133
|
-
<span>Bằng chứng release</span>
|
|
134
|
-
<strong>v1.6.0</strong>
|
|
135
|
-
<small>đúng commit 3bba8f0</small>
|
|
136
|
-
</div>
|
|
137
|
-
<div class="benchmark-metric">
|
|
138
|
-
<span>Task resolved</span>
|
|
139
|
-
<strong>54/54</strong>
|
|
140
|
-
<small>Piagent; codex-cli đạt 48/54</small>
|
|
141
|
-
</div>
|
|
142
|
-
<div class="benchmark-metric">
|
|
143
|
-
<span>Fresh token</span>
|
|
144
|
-
<strong>-61,43%</strong>
|
|
145
|
-
<small>tỷ lệ family fixed-workload chính 0,3857</small>
|
|
107
|
+
<section class="home-section">
|
|
108
|
+
<div class="home-wrap">
|
|
109
|
+
<div class="home-head" data-reveal>
|
|
110
|
+
<p class="section-kicker">Khác biệt</p>
|
|
111
|
+
<h2 id="khac-biet">Agent làm nhanh. Platform giữ cho nó làm đúng.</h2>
|
|
112
|
+
<p>Mọi tool call đi qua guard, mọi việc rủi ro chờ bạn duyệt, và ở chế độ công ty, kết quả chỉ được báo là xong khi check đã chạy trên code cuối.</p>
|
|
146
113
|
</div>
|
|
147
|
-
<div class="
|
|
148
|
-
<
|
|
149
|
-
|
|
150
|
-
|
|
114
|
+
<div class="bento" data-spotlight>
|
|
115
|
+
<article class="tile wide" data-reveal>
|
|
116
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-shield-check"/></svg></span>
|
|
117
|
+
<h3>Guard trên mọi tool call</h3>
|
|
118
|
+
<p>Fail-closed: file bảo vệ, profile quyền, file quá lớn, sửa trên bản đọc đã cũ. Sai thì chặn, không đoán.</p>
|
|
119
|
+
<div class="mini"><span class="x">✕</span> read .env <span class="d">— protected path</span><br><span class="x">✕</span> edit src/app.ts <span class="d">— đọc lại trước khi sửa</span><br><span class="w">!</span> git push <span class="d">— chờ duyệt một lần</span><br><span class="ok">✓</span> npm test <span class="d">— được phép</span></div>
|
|
120
|
+
</article>
|
|
121
|
+
<article class="tile wide" data-reveal>
|
|
122
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check-circle"/></svg></span>
|
|
123
|
+
<h3>Harness của team tự check và review</h3>
|
|
124
|
+
<p>Studio đặt kế hoạch, check và số vòng review cho cả team. Subagent đọc diff độc lập; kết quả nằm ngay dưới câu trả lời.</p>
|
|
125
|
+
<div class="chips"><span>plan</span><span>check</span><span>review</span><span>main · research · review</span></div>
|
|
126
|
+
</article>
|
|
127
|
+
<article class="tile" data-reveal>
|
|
128
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-key"/></svg></span>
|
|
129
|
+
<h3>Duyệt từng lần</h3>
|
|
130
|
+
<p>Push, publish, lệnh có mạng chỉ chạy sau khi bạn bấm <strong>Cho phép một lần</strong>. Không có "luôn cho phép".</p>
|
|
131
|
+
</article>
|
|
132
|
+
<article class="tile" data-reveal>
|
|
133
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-box"/></svg></span>
|
|
134
|
+
<h3>Sandbox ở chế độ công ty</h3>
|
|
135
|
+
<p>Seatbelt trên macOS, bubblewrap trên Linux và WSL2: không mạng, không đọc Keychain, <code>.env</code> hay SSH key.</p>
|
|
136
|
+
</article>
|
|
137
|
+
<article class="tile" data-reveal>
|
|
138
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-code"/></svg></span>
|
|
139
|
+
<h3>Dashboard là editor</h3>
|
|
140
|
+
<p>Cây thư mục, editor, terminal, review từng hunk, Timeline khôi phục lượt và <code>/undo</code>. 13 theme màu.</p>
|
|
141
|
+
</article>
|
|
142
|
+
<article class="tile" data-reveal>
|
|
143
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-clock"/></svg></span>
|
|
144
|
+
<h3>Task dài không bỏ dở</h3>
|
|
145
|
+
<p>Model lỗi tạm thời thì tự hỏi lại; Studio cập nhật thì chờ rồi làm tiếp. Một lượt chạy được tới 24 giờ.</p>
|
|
146
|
+
</article>
|
|
147
|
+
<article class="tile" data-reveal>
|
|
148
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-brain"/></svg></span>
|
|
149
|
+
<h3>Team memory</h3>
|
|
150
|
+
<p>Agent nhớ quyết định và quy tắc của team theo repo và branch; <code>memory_ask</code> trả lời kèm nguồn.</p>
|
|
151
|
+
</article>
|
|
152
|
+
<article class="tile" data-reveal>
|
|
153
|
+
<span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-camera"/></svg></span>
|
|
154
|
+
<h3>Báo cáo thay đổi giao diện</h3>
|
|
155
|
+
<p>Ảnh trước/sau, mỗi thay đổi một khung đỏ đánh số, kèm check và E2E. Xem ngay trong Tài liệu.</p>
|
|
156
|
+
</article>
|
|
151
157
|
</div>
|
|
152
158
|
</div>
|
|
159
|
+
</section>
|
|
153
160
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
<
|
|
161
|
+
<section class="home-section">
|
|
162
|
+
<div class="home-wrap">
|
|
163
|
+
<div class="home-head center" data-reveal>
|
|
164
|
+
<p class="section-kicker">Một lượt làm việc</p>
|
|
165
|
+
<h2 id="mot-luot">Bạn nói việc. Phần còn lại có kiểm chứng.</h2>
|
|
166
|
+
</div>
|
|
167
|
+
<div class="flow" data-flow>
|
|
168
|
+
<div class="flow-step"><span class="flow-dot"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-message"/></svg></span><div><h3>Nhắn việc</h3><p>Lời thường, không cần task contract hay lệnh workflow.</p></div></div>
|
|
169
|
+
<div class="flow-step"><span class="flow-dot"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-code"/></svg></span><div><h3>Đọc và sửa</h3><p>Agent đọc đúng file cần, sửa có diff rõ ràng.</p></div></div>
|
|
170
|
+
<div class="flow-step"><span class="flow-dot"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-shield-check"/></svg></span><div><h3>Guard kiểm tra</h3><p>Mỗi tool call qua policy; việc rủi ro chờ bạn duyệt.</p></div></div>
|
|
171
|
+
<div class="flow-step"><span class="flow-dot"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check-circle"/></svg></span><div><h3>Check và review</h3><p>Test chạy trên code cuối, subagent review độc lập.</p></div></div>
|
|
172
|
+
<div class="flow-step"><span class="flow-dot"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-list"/></svg></span><div><h3>Báo kết quả</h3><p>Một dòng cuối: xong, dừng giữa chừng, hay lỗi.</p></div></div>
|
|
173
|
+
</div>
|
|
157
174
|
</div>
|
|
175
|
+
</section>
|
|
158
176
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
<
|
|
163
|
-
<
|
|
177
|
+
<section class="home-section">
|
|
178
|
+
<div class="home-wrap">
|
|
179
|
+
<div class="home-head center" data-reveal>
|
|
180
|
+
<p class="section-kicker">Màn hình thật</p>
|
|
181
|
+
<h2 id="man-hinh">Chụp từ dashboard đang chạy</h2>
|
|
164
182
|
</div>
|
|
165
|
-
<div
|
|
166
|
-
<
|
|
167
|
-
|
|
168
|
-
|
|
183
|
+
<div data-gallery data-reveal>
|
|
184
|
+
<div class="gallery-tabs">
|
|
185
|
+
<div class="tab-list" role="tablist" aria-label="Chọn ảnh">
|
|
186
|
+
<button type="button" role="tab" aria-selected="true" data-shot="/assets/shots/company-run-done.jpg" data-alt="Một lượt ở chế độ công ty: đọc, sửa, chạy test, dòng cuối báo check đã qua và review không có lỗi chặn" data-caption="Một lượt ở chế độ công ty: đọc, sửa, chạy test; dòng cuối ghi check và review.">Lượt công ty</button>
|
|
187
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/company-review-running.jpg" data-alt="Subagent đang review bản sửa trong lượt công ty" data-caption="Subagent review bản sửa trong khi lượt vẫn chạy.">Review</button>
|
|
188
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/network-approval.jpg" data-alt="Thẻ duyệt lệnh có mạng, hiện đúng lệnh sẽ chạy" data-caption="Lệnh có mạng chờ duyệt, thẻ hiện đúng lệnh sẽ chạy.">Duyệt mạng</button>
|
|
189
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/personal-edit-test.jpg" data-alt="Chế độ cá nhân: sửa code và chạy test" data-caption="Chế độ cá nhân: model của bạn, cùng guard.">Cá nhân</button>
|
|
190
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/hub-source-review.jpg" data-alt="Agent Inspector: thay đổi trong working tree, diff inline và nút mở trong editor" data-caption="Source Changes: diff theo file, inline hoặc hai cột, review và stage từng hunk.">Source Changes</button>
|
|
191
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/hub-palette.jpg" data-alt="Bảng lệnh mở bằng phím tắt, liệt kê lệnh và chủ đề màu" data-caption="Bảng lệnh ⌘K: mọi lệnh, cài đặt và 13 chủ đề màu trong một ô tìm.">Bảng lệnh</button>
|
|
192
|
+
<button type="button" role="tab" aria-selected="false" data-shot="/assets/shots/hub-new-chat.jpg" data-alt="Trang tạo cuộc trò chuyện mới với chọn project, model và việc mẫu" data-caption="Tạo cuộc trò chuyện: chọn project và model, hoặc bấm một việc mẫu.">Tạo mới</button>
|
|
193
|
+
</div>
|
|
194
|
+
</div>
|
|
195
|
+
<figure class="gallery-frame">
|
|
196
|
+
<img src="/assets/shots/company-run-done.jpg" alt="Một lượt ở chế độ công ty: đọc, sửa, chạy test, dòng cuối báo check đã qua và review không có lỗi chặn" width="1600" height="1000" loading="lazy" decoding="async" style="transition:opacity .2s">
|
|
197
|
+
<figcaption>Một lượt ở chế độ công ty: đọc, sửa, chạy test; dòng cuối ghi check và review.</figcaption>
|
|
198
|
+
</figure>
|
|
169
199
|
</div>
|
|
170
200
|
</div>
|
|
171
|
-
|
|
172
|
-
<p>Tỷ lệ family fixed-workload chính là <strong>0,3857</strong>, với khoảng tin cậy 95% <strong>0,3073–0,4840</strong>. Ước lượng điểm thấp hơn 61,43%; theo cận trên của khoảng tin cậy, có thể phát biểu thận trọng rằng Piagent dùng ít hơn ít nhất 51,60% fresh token trên đúng workload production-v1 đã khai báo trước và đúng release này. Usage của cả 108 session đều exact và không có retry. <a href="/benchmark">Xem phương pháp benchmark và ranh giới bằng chứng</a>.</p>
|
|
173
201
|
</section>
|
|
174
202
|
|
|
175
|
-
<section class="section">
|
|
176
|
-
<
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
203
|
+
<section class="home-section">
|
|
204
|
+
<div class="home-wrap">
|
|
205
|
+
<div class="home-head" data-reveal>
|
|
206
|
+
<p class="section-kicker">Hai chế độ</p>
|
|
207
|
+
<h2 id="hai-che-do">Cùng một dashboard, hai cách dùng model</h2>
|
|
208
|
+
<p>Đổi chế độ không đổi cách làm việc: cùng guard, cùng lịch sử giữa Terminal và trình duyệt.</p>
|
|
209
|
+
</div>
|
|
210
|
+
<div class="modes">
|
|
211
|
+
<article class="mode" data-reveal>
|
|
212
|
+
<div class="mode-head"><span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-users"/></svg></span><h3>Cá nhân</h3><code>pi</code></div>
|
|
213
|
+
<p>Đăng nhập bằng tài khoản model của bạn. Key nằm trên máy bạn.</p>
|
|
214
|
+
<ul class="checks">
|
|
215
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Chọn model và thinking tuỳ ý</span></li>
|
|
216
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Guard và protected path như chế độ công ty</span></li>
|
|
217
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Push và publish vẫn chờ duyệt</span></li>
|
|
218
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span><code>piagent dashboard</code> mở giao diện web</span></li>
|
|
219
|
+
</ul>
|
|
220
|
+
</article>
|
|
221
|
+
<article class="mode featured" data-reveal>
|
|
222
|
+
<div class="mode-head"><span class="tile-icon"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-building"/></svg></span><h3>Công ty</h3><code>piagent studio --web</code></div>
|
|
223
|
+
<p>Agent Watch giữ key công ty trong Keychain; Agent Studio chọn model và Harness cho cả team.</p>
|
|
224
|
+
<ul class="checks">
|
|
225
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Model không bao giờ thấy key</span></li>
|
|
226
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Sandbox không mạng, mạng mở theo từng lần duyệt</span></li>
|
|
227
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Check và review tự động theo Harness</span></li>
|
|
228
|
+
<li><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-check"/></svg><span>Usage, ngân sách, cảnh báo sai project trên Studio</span></li>
|
|
229
|
+
</ul>
|
|
230
|
+
</article>
|
|
231
|
+
</div>
|
|
232
|
+
</div>
|
|
181
233
|
</section>
|
|
182
234
|
|
|
183
|
-
<section class="section">
|
|
184
|
-
<
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
<
|
|
188
|
-
<
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
</a>
|
|
221
|
-
<a class="doc-card" href="/benchmark">
|
|
222
|
-
<span class="card-kicker">Operate</span>
|
|
223
|
-
<h3>Production benchmark</h3>
|
|
224
|
-
<p>Điểm chất lượng, safety, workflow và biểu đồ token từ phép đo 108 session so với surface <code>codex-cli</code>.</p>
|
|
225
|
-
</a>
|
|
226
|
-
<a class="doc-card" href="/commands">
|
|
227
|
-
<span class="card-kicker">Build</span>
|
|
228
|
-
<h3>Command catalog</h3>
|
|
229
|
-
<p>Slash command và terminal command, nhóm theo việc cần làm.</p>
|
|
230
|
-
</a>
|
|
235
|
+
<section class="home-section">
|
|
236
|
+
<div class="home-wrap">
|
|
237
|
+
<div class="home-head" data-reveal>
|
|
238
|
+
<p class="section-kicker">Cài đặt</p>
|
|
239
|
+
<h2 id="cai-dat">Chạy trong hai phút</h2>
|
|
240
|
+
<p><code>piagent-setup</code> tự cài đúng bản Pi mà release này pin, khởi tạo project rồi chạy doctor.</p>
|
|
241
|
+
</div>
|
|
242
|
+
<div class="tabs" data-tabs="os" data-reveal>
|
|
243
|
+
<div class="tab-list" role="tablist" aria-label="Hệ điều hành">
|
|
244
|
+
<button type="button" role="tab" data-tab="macos" aria-selected="true"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-apple"/></svg> macOS · Linux</button>
|
|
245
|
+
<button type="button" role="tab" data-tab="windows" aria-selected="false" tabindex="-1"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-windows"/></svg> Windows</button>
|
|
246
|
+
</div>
|
|
247
|
+
<div class="tab-panel" data-panel="macos">
|
|
248
|
+
<div class="install-grid">
|
|
249
|
+
<div class="install-step"><span class="num">01</span><h3>Cài</h3><p>Chạy trong thư mục project.</p>
|
|
250
|
+
<div class="command-card"><header><span>bash</span><button class="clip-btn" type="button" data-clip="npm install -g @piagent/platform piagent-setup">Lấy lệnh</button></header>
|
|
251
|
+
<pre><code>npm install -g @piagent/platform
|
|
252
|
+
piagent-setup</code></pre></div></div>
|
|
253
|
+
<div class="install-step"><span class="num">02</span><h3>Mở</h3><p>Terminal, hoặc dashboard trên trình duyệt.</p>
|
|
254
|
+
<div class="command-card"><header><span>bash</span><button class="clip-btn" type="button" data-clip="piagent dashboard">Lấy lệnh</button></header>
|
|
255
|
+
<pre><code>piagent dashboard
|
|
256
|
+
pi # Terminal</code></pre></div></div>
|
|
257
|
+
<div class="install-step"><span class="num">03</span><h3>Cập nhật</h3><p>Dashboard tự báo khi có bản mới, mỗi giờ.</p>
|
|
258
|
+
<div class="command-card"><header><span>bash</span><button class="clip-btn" type="button" data-clip="piagent-update">Lấy lệnh</button></header>
|
|
259
|
+
<pre><code>piagent-update</code></pre></div></div>
|
|
260
|
+
</div>
|
|
261
|
+
</div>
|
|
262
|
+
<div class="tab-panel" data-panel="windows" hidden>
|
|
263
|
+
<div class="install-grid">
|
|
264
|
+
<div class="install-step span-2"><span class="num">01</span><h3>Một lệnh PowerShell</h3><p>Cài WSL2, Ubuntu, Piagent và Agent Watch, thêm Piagent vào Start menu. Chạy lại để cập nhật.</p>
|
|
265
|
+
<div class="command-card"><header><span>PowerShell</span><button class="clip-btn" type="button" data-clip="irm https://raw.githubusercontent.com/Vt-mmm/agentwatch/main/windows/setup.ps1 | iex">Lấy lệnh</button></header>
|
|
266
|
+
<pre><code>irm https://raw.githubusercontent.com/Vt-mmm/agentwatch/main/windows/setup.ps1 | iex</code></pre></div></div>
|
|
267
|
+
<div class="install-step"><span class="num">02</span><h3>Chi tiết</h3><p>Lần đầu cần khởi động lại để bật WSL2. Mã kết nối công ty là tuỳ chọn.</p>
|
|
268
|
+
<a class="button" href="/windows">Hướng dẫn Windows <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></a></div>
|
|
269
|
+
</div>
|
|
270
|
+
</div>
|
|
271
|
+
</div>
|
|
231
272
|
</div>
|
|
232
273
|
</section>
|
|
233
274
|
|
|
234
|
-
<section class="section">
|
|
235
|
-
<
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
<
|
|
239
|
-
<p>
|
|
240
|
-
</div>
|
|
241
|
-
<div class="card">
|
|
242
|
-
<h3 id="build-nhom">Build</h3>
|
|
243
|
-
<p>Dùng hằng ngày: profile, permission, command, workflow — và MCP tách riêng vì có bề mặt lệnh của nó.</p>
|
|
275
|
+
<section class="home-section">
|
|
276
|
+
<div class="home-wrap">
|
|
277
|
+
<div class="home-head" data-reveal>
|
|
278
|
+
<p class="section-kicker">Changelog</p>
|
|
279
|
+
<h2 id="moi-cap-nhat">Phát hành đều, ghi rõ từng thay đổi</h2>
|
|
280
|
+
<p>Mỗi bản ghi thay đổi gì và cần bản nào của Studio hay Agent Watch. <a href="/whats-new">Xem toàn bộ changelog</a>.</p>
|
|
244
281
|
</div>
|
|
245
|
-
<div class="
|
|
246
|
-
<
|
|
247
|
-
|
|
282
|
+
<div class="updates">
|
|
283
|
+
<a class="update" href="/whats-new#v1-42-0" data-reveal>
|
|
284
|
+
<span class="update-meta"><span class="release-version">v1.42.0</span>25/10/2026</span>
|
|
285
|
+
<h3>Dashboard thiết kế lại, tin cũ tải mà không nhảy trang</h3>
|
|
286
|
+
<p>Dashboard có một thang thiết kế và mọi theme tô tới mọi khung; tin cũ tự tải khi cuộn lên và tin bạn đang đọc đứng yên.</p>
|
|
287
|
+
<span class="update-more">Xem chi tiết <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></span>
|
|
288
|
+
</a>
|
|
289
|
+
<a class="update" href="/whats-new#v1-41-0" data-reveal>
|
|
290
|
+
<span class="update-meta"><span class="release-version">v1.41.0</span>24/10/2026</span>
|
|
291
|
+
<h3>Báo cáo thay đổi giao diện với ảnh trước/sau</h3>
|
|
292
|
+
<p>Skill mới biến task front-end thành báo cáo có ảnh trước/sau được khoanh khung, thay đổi business và logic, kết quả check, hiện ngay trên dashboard.</p>
|
|
293
|
+
<span class="update-more">Xem chi tiết <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></span>
|
|
294
|
+
</a>
|
|
295
|
+
<a class="update" href="/whats-new#v1-40-0" data-reveal>
|
|
296
|
+
<span class="update-meta"><span class="release-version">v1.40.0</span>24/10/2026</span>
|
|
297
|
+
<h3>Project local cũng được báo cho Studio</h3>
|
|
298
|
+
<p>Cuộc trò chuyện công ty trong thư mục không có remote báo project local cho Studio, mọi lượt chạy đều báo, và member thấy mọi loại cảnh báo project.</p>
|
|
299
|
+
<span class="update-more">Xem chi tiết <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></span>
|
|
300
|
+
</a>
|
|
248
301
|
</div>
|
|
249
302
|
</div>
|
|
250
303
|
</section>
|
|
251
|
-
<nav class="pager" aria-label="Trang kế tiếp">
|
|
252
|
-
<a class="pager-next" href="/ecosystem">
|
|
253
|
-
<span class="pager-label">Tiếp</span>
|
|
254
|
-
<span class="pager-title">Hệ sinh thái</span>
|
|
255
|
-
</a>
|
|
256
|
-
</nav>
|
|
257
304
|
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
<
|
|
273
|
-
|
|
305
|
+
<section class="home-wrap">
|
|
306
|
+
<div class="final-cta" data-reveal>
|
|
307
|
+
<h2>Giao việc cho agent, giữ quyền quyết định.</h2>
|
|
308
|
+
<p>Hai lệnh để cài. Đọc tài liệu theo đúng thứ tự bạn cần.</p>
|
|
309
|
+
<div class="hero-cta" style="margin-top:0">
|
|
310
|
+
<a class="button primary lg" href="/quickstart">Cài đặt <svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-arrow-right"/></svg></a>
|
|
311
|
+
<a class="button lg" href="/ecosystem">Hệ sinh thái</a>
|
|
312
|
+
<a class="button lg ghost" href="/benchmark"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-chart"/></svg> Benchmark</a>
|
|
313
|
+
</div>
|
|
314
|
+
</div>
|
|
315
|
+
</section>
|
|
316
|
+
</main>
|
|
317
|
+
<footer class="site-footer">
|
|
318
|
+
<div class="home-wrap">
|
|
319
|
+
<p>Pi Agent Platform · MIT · tài liệu tĩnh, không cookie</p>
|
|
320
|
+
<nav aria-label="Liên kết ngoài">
|
|
321
|
+
<a href="/quickstart">Tài liệu</a>
|
|
322
|
+
<a href="/whats-new">Changelog</a>
|
|
323
|
+
<a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub</a>
|
|
324
|
+
<a href="https://www.npmjs.com/package/@piagent/platform" target="_blank" rel="noopener noreferrer">npm</a>
|
|
325
|
+
<a href="/en/" hreflang="en">English</a>
|
|
326
|
+
</nav>
|
|
327
|
+
</div>
|
|
328
|
+
</footer>
|
|
329
|
+
<div class="palette" data-palette data-index="/assets/search-vi.json" data-empty="Không có trang nào khớp." role="dialog" aria-modal="true" aria-label="Tìm trong tài liệu">
|
|
330
|
+
<div class="palette-box">
|
|
331
|
+
<label class="palette-input"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-search"/></svg><input type="search" placeholder="Tìm trong tài liệu…" aria-label="Tìm trong tài liệu" autocomplete="off" spellcheck="false" /></label>
|
|
332
|
+
<div class="palette-results" data-results role="listbox"></div>
|
|
333
|
+
<div class="palette-foot"><span>↑↓ chọn</span><span>↵ mở</span><span>esc đóng</span></div>
|
|
334
|
+
</div>
|
|
274
335
|
</div>
|
|
275
336
|
<script>
|
|
276
337
|
window.va = window.va || function () { (window.vaq = window.vaq || []).push(arguments); };
|