@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.
Files changed (124) hide show
  1. package/CHANGELOG.md +1012 -2035
  2. package/CONTRIBUTING.md +2 -0
  3. package/README.md +128 -325
  4. package/README.vi.md +149 -143
  5. package/architecture/layers.json +10 -0
  6. package/docs/command-reference-vietnamese.md +2 -2
  7. package/docs/distribution-standard.md +6 -6
  8. package/docs/en/architecture.md +1 -0
  9. package/docs/languages.json +4 -4
  10. package/docs/operator-manual-vietnamese.md +7 -7
  11. package/docs/publishing-for-teams.md +2 -0
  12. package/docs/release-install-policy.md +3 -3
  13. package/docs/team-onboarding.md +2 -2
  14. package/docs/vi/architecture.md +1 -0
  15. package/docs-site/architecture.html +71 -63
  16. package/docs-site/assets/docs.css +2736 -1030
  17. package/docs-site/assets/docs.js +451 -43
  18. package/docs-site/assets/og.png +0 -0
  19. package/docs-site/assets/piagent-logo.svg +9 -31
  20. package/docs-site/assets/search-en.json +1 -0
  21. package/docs-site/assets/search-vi.json +1 -0
  22. package/docs-site/benchmark.html +71 -63
  23. package/docs-site/commands.html +72 -64
  24. package/docs-site/content/en/index.html +220 -131
  25. package/docs-site/content/en/quickstart.html +74 -90
  26. package/docs-site/content/en/update.html +80 -0
  27. package/docs-site/content/en/whats-new.html +1 -678
  28. package/docs-site/content/index.html +220 -131
  29. package/docs-site/content/quickstart.html +73 -108
  30. package/docs-site/content/update.html +80 -0
  31. package/docs-site/content/whats-new.html +1 -678
  32. package/docs-site/context-engine.html +73 -65
  33. package/docs-site/ecosystem.html +73 -65
  34. package/docs-site/en/architecture.html +67 -59
  35. package/docs-site/en/benchmark.html +67 -59
  36. package/docs-site/en/commands.html +68 -60
  37. package/docs-site/en/context-engine.html +68 -60
  38. package/docs-site/en/ecosystem.html +68 -60
  39. package/docs-site/en/index.html +281 -220
  40. package/docs-site/en/mcp-approval.html +67 -59
  41. package/docs-site/en/mcp-auth.html +67 -59
  42. package/docs-site/en/mcp-servers.html +68 -60
  43. package/docs-site/en/mcp.html +64 -56
  44. package/docs-site/en/permissions.html +68 -60
  45. package/docs-site/en/profiles.html +68 -60
  46. package/docs-site/en/quickstart.html +142 -150
  47. package/docs-site/en/runtime.html +67 -59
  48. package/docs-site/en/scope.html +68 -60
  49. package/docs-site/en/security.html +64 -56
  50. package/docs-site/en/team.html +67 -59
  51. package/docs-site/en/update.html +228 -0
  52. package/docs-site/en/whats-new.html +1601 -719
  53. package/docs-site/en/windows.html +71 -63
  54. package/docs-site/en/workflows.html +68 -60
  55. package/docs-site/favicon.svg +9 -14
  56. package/docs-site/index.html +281 -220
  57. package/docs-site/mcp-approval.html +70 -62
  58. package/docs-site/mcp-auth.html +70 -62
  59. package/docs-site/mcp-servers.html +71 -63
  60. package/docs-site/mcp.html +70 -62
  61. package/docs-site/permissions.html +72 -64
  62. package/docs-site/profiles.html +72 -64
  63. package/docs-site/quickstart.html +145 -172
  64. package/docs-site/releases.json +4449 -0
  65. package/docs-site/runtime.html +73 -65
  66. package/docs-site/scope.html +73 -65
  67. package/docs-site/security.html +73 -65
  68. package/docs-site/team.html +71 -63
  69. package/docs-site/update.html +228 -0
  70. package/docs-site/whats-new.html +1605 -723
  71. package/docs-site/windows.html +75 -67
  72. package/docs-site/workflows.html +73 -65
  73. package/evals/fixtures/piagent-webui/document-asset-v1.invalid.json +12 -0
  74. package/evals/fixtures/piagent-webui/document-asset-v1.valid.json +12 -0
  75. package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
  76. package/package.json +1 -1
  77. package/packages/piagent-core/package.json +1 -1
  78. package/packages/piagent-core/runtime/inspection/document-workspace-projection.ts +78 -15
  79. package/packages/piagent-core/skills/fe-change-report/SKILL.md +175 -0
  80. package/packages/piagent-core/skills/fe-change-report/scripts/build-report.mjs +183 -0
  81. package/packages/piagent-core/skills/fe-change-report/scripts/capture.mjs +150 -0
  82. package/packages/piagent-core/skills/fe-change-report/scripts/diff-regions.mjs +110 -0
  83. package/packages/piagent-webui/dist/client/assets/App-DBx4BU3F.js +5 -0
  84. package/packages/piagent-webui/dist/client/assets/LineReview-DzonwD-g.js +3 -0
  85. package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-BpoF2k2-.js → MarkdownMessage-DchODuO7.js} +2 -2
  86. package/packages/piagent-webui/dist/client/assets/SessionInspectorDrawer-BHHNlct3.js +1 -0
  87. package/packages/piagent-webui/dist/client/assets/SettingsPage-DX28MsZA.js +1 -0
  88. package/packages/piagent-webui/dist/client/assets/TerminalPanel-C--BiN0p.js +2 -0
  89. package/packages/piagent-webui/dist/client/assets/{TerminalView-Dw9xqakv.js → TerminalView-BML7uS6R.js} +3 -3
  90. package/packages/piagent-webui/dist/client/assets/WorkspaceCodeEditor-B7ieqDnt.js +2 -0
  91. package/packages/piagent-webui/dist/client/assets/WorkspaceExplorer-BOafuPU-.js +5 -0
  92. package/packages/piagent-webui/dist/client/assets/WorkspaceQuickOpen-CGoGfUPk.js +1 -0
  93. package/packages/piagent-webui/dist/client/assets/api-BUjrtT1B.js +1 -0
  94. package/packages/piagent-webui/dist/client/assets/index-C7Azrwpq.js +132 -0
  95. package/packages/piagent-webui/dist/client/assets/index-Dqb2hNan.css +1 -0
  96. package/packages/piagent-webui/dist/client/assets/tab-close-Crj8vsUq.js +1 -0
  97. package/packages/piagent-webui/dist/client/assets/ui-preferences-B3UfDp-5.js +1 -0
  98. package/packages/piagent-webui/dist/client/assets/vendor-Ch5hIe0W.js +136 -0
  99. package/packages/piagent-webui/dist/client/index.html +5 -8
  100. package/packages/piagent-webui/extension/piagent-webui.ts +1 -0
  101. package/packages/piagent-webui/server/core-inspection-provider.ts +5 -0
  102. package/packages/piagent-webui/server/ipc-read-model-client.ts +1 -0
  103. package/packages/piagent-webui/server/read-model-provider.ts +1 -0
  104. package/packages/piagent-webui/server/read-only-router.ts +6 -0
  105. package/schemas/piagent-webui/catalog-v1.json +9 -0
  106. package/schemas/piagent-webui/document-asset-v1.schema.json +57 -0
  107. package/scripts/build-docs-site.mjs +205 -348
  108. package/scripts/check-public-wording.mjs +2 -1
  109. package/scripts/docs-site-icons.mjs +84 -0
  110. package/scripts/docs-site-nav.mjs +302 -0
  111. package/scripts/docs-site-releases.mjs +227 -0
  112. package/packages/piagent-webui/dist/client/assets/Alert-DGWhP2MM.js +0 -1
  113. package/packages/piagent-webui/dist/client/assets/Button-QItfZUNj.js +0 -1
  114. package/packages/piagent-webui/dist/client/assets/DialogTitle-CyaFPaiW.js +0 -3
  115. package/packages/piagent-webui/dist/client/assets/TerminalPanel-Dg3eghy4.js +0 -2
  116. package/packages/piagent-webui/dist/client/assets/Typography-B9om7Evq.js +0 -1
  117. package/packages/piagent-webui/dist/client/assets/WorkspaceCodeEditor-DtwXZAgK.js +0 -2
  118. package/packages/piagent-webui/dist/client/assets/WorkspaceExplorer-WS-yLlnb.js +0 -5
  119. package/packages/piagent-webui/dist/client/assets/WorkspaceQuickOpen-CYCY-s44.js +0 -1
  120. package/packages/piagent-webui/dist/client/assets/index-BgJgso6j.js +0 -102
  121. package/packages/piagent-webui/dist/client/assets/index-Brs_HjIo.css +0 -1
  122. package/packages/piagent-webui/dist/client/assets/tab-close-CqPDs-w5.js +0 -1
  123. package/packages/piagent-webui/dist/client/assets/ui-preferences-BO3AV7QE.js +0 -10
  124. package/packages/piagent-webui/dist/client/assets/useId-DEefKUAT.js +0 -124
@@ -0,0 +1,228 @@
1
+ <!doctype html>
2
+ <html lang="en" data-copy-success="Copied" data-copy-fallback="Select command" data-copy-label="Copy">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Update, roll back and uninstall · Pi Agent Platform</title>
7
+ <meta name="description" content="One command moves to a new release, and the dashboard and Terminal tell you when one is out. Rollback and uninstall both preview first." />
8
+ <meta name="theme-color" content="#09090b" media="(prefers-color-scheme: dark)" />
9
+ <meta name="theme-color" content="#fbfbf9" media="(prefers-color-scheme: light)" />
10
+ <link rel="canonical" href="https://piagent.io.vn/en/update" />
11
+ <link rel="alternate" hreflang="vi" href="https://piagent.io.vn/update" />
12
+ <link rel="alternate" hreflang="en" href="https://piagent.io.vn/en/update" />
13
+ <link rel="alternate" hreflang="x-default" href="https://piagent.io.vn/update" />
14
+ <link rel="icon" href="/favicon.svg" type="image/svg+xml" />
15
+ <meta property="og:type" content="website" />
16
+ <meta property="og:title" content="Update, roll back and uninstall · Pi Agent Platform" />
17
+ <meta property="og:description" content="One command moves to a new release, and the dashboard and Terminal tell you when one is out. Rollback and uninstall both preview first." />
18
+ <meta property="og:url" content="https://piagent.io.vn/en/update" />
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>
22
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
23
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
24
+ <link
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"
26
+ rel="stylesheet"
27
+ />
28
+ <link rel="stylesheet" href="/assets/docs.css" />
29
+ <script src="/assets/docs.js" defer></script>
30
+ </head>
31
+ <body>
32
+ <svg width="0" height="0" style="position:absolute" aria-hidden="true"><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-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-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-edit" viewBox="0 0 24 24"><path d="M4 20h4L19 9l-4-4L4 16z"/><path d="m13.5 6.5 4 4"/></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-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-menu" viewBox="0 0 24 24"><path d="M4 7h16M4 12h16M4 17h16"/></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">Skip to content</a>
34
+ <header class="topbar">
35
+ <button class="icon-button mobile-menu" type="button" data-menu aria-label="Open docs menu"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-menu"/></svg></button>
36
+ <a class="brand" href="/en/" aria-label="Pi Agent Platform">
37
+ <span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" width="28" height="28" /></span>
38
+ <span class="brand-name"><b>Piagent</b> <span>Platform</span></span>
39
+ </a>
40
+ <a class="version-badge" href="/en/whats-new" data-docs-version="v1.42.0" title="v1.42.0 docs · EN"><span class="dot"></span>v1.42.0</a>
41
+ <nav class="top-nav" aria-label="Documentation">
42
+ <a href="/en/quickstart">Docs</a>
43
+ <a href="/en/whats-new">Changelog</a>
44
+ <a href="/en/benchmark">Benchmark</a>
45
+ </nav>
46
+ <span class="top-spacer"></span>
47
+ <button class="search-trigger" type="button" data-search aria-label="Search documentation"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-search"/></svg><span>Search the docs…</span><kbd>⌘K</kbd></button>
48
+ <div class="top-actions">
49
+ <nav class="language-switch" aria-label="Language"><a class="language-option" href="/update" hreflang="vi" lang="vi">VI</a><a class="language-option current" href="/en/update" hreflang="en" lang="en" aria-current="true">EN</a></nav>
50
+ <button class="icon-button theme-toggle" type="button" data-theme-toggle aria-label="Switch light/dark theme"><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>
51
+ <a class="icon-button" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Open GitHub repository"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-github"/></svg></a>
52
+ </div>
53
+ </header>
54
+
55
+ <div class="layout with-toc">
56
+ <aside class="sidebar" data-sidebar>
57
+ <nav aria-label="Documentation">
58
+ <div class="nav-group">
59
+ <p class="nav-title">Get started</p>
60
+ <a class="nav-link" href="/en/"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-home"/></svg><span>Overview</span></a>
61
+ <a class="nav-link" href="/en/ecosystem"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-network"/></svg><span>Ecosystem</span></a>
62
+ <a class="nav-link" href="/en/quickstart"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-rocket"/></svg><span>Install</span></a>
63
+ <a class="nav-link" href="/en/windows"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-windows"/></svg><span>Windows</span></a>
64
+ <a class="nav-link current" href="/en/update" aria-current="page"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-refresh"/></svg><span>Update &amp; uninstall</span></a>
65
+ <a class="nav-link" href="/en/whats-new"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-sparkles"/></svg><span>Changelog</span></a>
66
+ <a class="nav-link" href="/en/scope"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-target"/></svg><span>Platform scope</span></a>
67
+ </div>
68
+ <div class="nav-group">
69
+ <p class="nav-title">Build</p>
70
+ <a class="nav-link" href="/en/profiles"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-sliders"/></svg><span>Project profiles</span></a>
71
+ <a class="nav-link" href="/en/permissions"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-key"/></svg><span>Permission modes</span></a>
72
+ <a class="nav-link" href="/en/commands"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-terminal"/></svg><span>Command catalog</span></a>
73
+ <a class="nav-link" href="/en/workflows"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-branch"/></svg><span>Workflows</span></a>
74
+ </div>
75
+ <div class="nav-group">
76
+ <p class="nav-title">MCP</p>
77
+ <a class="nav-link" href="/en/mcp"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-plug"/></svg><span>MCP overview</span></a>
78
+ <a class="nav-link" href="/en/mcp-servers"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-server"/></svg><span>Server management</span></a>
79
+ <a class="nav-link" href="/en/mcp-auth"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-lock"/></svg><span>Authentication</span></a>
80
+ <a class="nav-link" href="/en/mcp-approval"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-shield-check"/></svg><span>Approval gate</span></a>
81
+ </div>
82
+ <div class="nav-group">
83
+ <p class="nav-title">Operate</p>
84
+ <a class="nav-link" href="/en/security"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-shield"/></svg><span>Security model</span></a>
85
+ <a class="nav-link" href="/en/architecture"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-layers"/></svg><span>Architecture</span></a>
86
+ <a class="nav-link" href="/en/context-engine"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-cpu"/></svg><span>Context Engine</span></a>
87
+ <a class="nav-link" href="/en/benchmark"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-chart"/></svg><span>Benchmark</span></a>
88
+ <a class="nav-link" href="/en/runtime"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-wrench"/></svg><span>Runtime tools</span></a>
89
+ <a class="nav-link" href="/en/team"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-users"/></svg><span>Team usage</span></a>
90
+ </div>
91
+ </nav>
92
+ </aside>
93
+
94
+ <main id="content">
95
+ <div class="content-shell" data-article>
96
+ <nav class="breadcrumb" aria-label="Breadcrumb">
97
+ <a href="/en/">Docs</a>
98
+ <span aria-hidden="true">/</span>
99
+ <span>Get started</span>
100
+ </nav>
101
+ <div class="page-head">
102
+ <h1>Update, roll back and uninstall</h1>
103
+ <p>One command moves to a new release, and the dashboard and Terminal tell you when one is out. Rollback and uninstall both preview first.</p>
104
+ <div class="page-meta">
105
+ <a href="https://github.com/Vt-mmm/piagent/blob/main/docs-site/content/en/update.html" target="_blank" rel="noopener noreferrer"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-edit"/></svg>Edit this page</a>
106
+ </div>
107
+ </div>
108
+ <section class="section">
109
+ <h2 id="update">Update</h2>
110
+ <p>The dashboard and Terminal check for a new release every hour. When one is out, the dashboard opens a dialog with what will change, <strong>Update now</strong> and <strong>Later</strong> (asks again in an hour). To run it yourself, one command:</p>
111
+ <div class="command-card">
112
+ <header><span>Move to the latest release</span><button class="clip-btn" data-clip="piagent-update">Copy</button></header>
113
+ <pre><code>piagent-update</code></pre>
114
+ </div>
115
+ <p>Restart the dashboard afterwards so the new interface takes effect.</p>
116
+
117
+ <h3 id="what-it-does">What it does, in order</h3>
118
+ <ol>
119
+ <li>Resolves the target release and the Pi version it pins.</li>
120
+ <li>Installs that Pi host, then replaces the <code>piagent-update</code> helper.</li>
121
+ <li>Checks the version actually on disk before running the installer.</li>
122
+ <li>With <code>--project</code>: migrates the project's state and runs <code>piagent-doctor --strict-share</code>.</li>
123
+ </ol>
124
+ <div class="callout">
125
+ <strong>Not from a git checkout</strong>
126
+ <p><code>piagent-update</code> refuses to run when the global package is a link to a source repository, so it never overwrites code you are editing.</p>
127
+ </div>
128
+
129
+ <h3 id="options">Common options</h3>
130
+ <div class="table-wrap">
131
+ <table>
132
+ <thead><tr><th>Command</th><th>Use when</th></tr></thead>
133
+ <tbody>
134
+ <tr><td><code>piagent-update --check</code></td><td>You only want to know whether a release is out.</td></tr>
135
+ <tr><td><code>piagent-update --dry-run</code></td><td>You want to see what would be installed, changing nothing.</td></tr>
136
+ <tr><td><code>piagent-update --version X.Y.Z</code></td><td>You want exactly one release, newer or older.</td></tr>
137
+ <tr><td><code>piagent-update --project .</code></td><td>You want the current project migrated too.</td></tr>
138
+ <tr><td><code>--no-host</code> · <code>--no-package</code> · <code>--no-migrate</code></td><td>You want to skip a step.</td></tr>
139
+ </tbody>
140
+ </table>
141
+ </div>
142
+ </section>
143
+
144
+ <section class="section">
145
+ <h2 id="pin-for-a-team">Pin one release for a team</h2>
146
+ <p>For a team rollout, install the exact Pi host and platform release, then run the installer in stable mode. The <code>--dry-run</code> step prints what would change.</p>
147
+ <div class="command-card">
148
+ <header><span>Pinned install</span><button class="clip-btn" data-clip="npm install -g --ignore-scripts @earendil-works/pi-coding-agent@1.3.0&#10;npm install -g --ignore-scripts @piagent/platform@1.42.0&#10;piagent-install --stable --dry-run&#10;piagent-install --stable">Copy</button></header>
149
+ <pre><code>npm install -g --ignore-scripts @earendil-works/pi-coding-agent@1.3.0
150
+ npm install -g --ignore-scripts @piagent/platform@1.42.0
151
+ piagent-install --stable --dry-run
152
+ piagent-install --stable</code></pre>
153
+ </div>
154
+ <p>Installed from a package, <code>.pi/settings.json</code> records <code>npm:@piagent/platform@&lt;version&gt;</code>: the same value on every machine, so the team can commit it. The full procedure is in the <a href="https://github.com/Vt-mmm/piagent/blob/main/docs/release-install-policy.md">release &amp; install policy</a>.</p>
155
+ </section>
156
+
157
+ <section class="section">
158
+ <h2 id="rollback">Roll back</h2>
159
+ <p>Rolling back is deliberate, never automatic. Move to a specific release with the same update command:</p>
160
+ <div class="command-card">
161
+ <header><span>Back to a previous release</span><button class="clip-btn" data-clip="piagent-update --version X.Y.Z --dry-run&#10;piagent-update --version X.Y.Z">Copy</button></header>
162
+ <pre><code>piagent-update --version X.Y.Z --dry-run
163
+ piagent-update --version X.Y.Z</code></pre>
164
+ </div>
165
+ <p>To change only the Pi package and keep the host: <code>piagent-install --version vX.Y.Z --resolve-tag</code>. Run <code>piagent-doctor</code> on the project afterwards.</p>
166
+ </section>
167
+
168
+ <section class="section">
169
+ <h2 id="uninstall">Uninstall</h2>
170
+ <p><code>piagent-uninstall</code> only reports what it would remove and exits. It acts with <code>--apply</code>, because it edits Pi settings that other tools also write to.</p>
171
+ <div class="command-card">
172
+ <header><span>Preview, then remove</span><button class="clip-btn" data-clip="piagent-uninstall&#10;piagent-uninstall --apply">Copy</button></header>
173
+ <pre><code>piagent-uninstall
174
+ piagent-uninstall --apply
175
+ npm uninstall -g @piagent/platform</code></pre>
176
+ </div>
177
+ <p>Add-ons, the Pi host and project state are opt-in: <code>--with-addons</code>, <code>--with-host</code>, <code>--project &lt;path&gt;</code>.</p>
178
+ <div class="callout ok-callout">
179
+ <strong>Never removed</strong>
180
+ <p>Credentials, trust, sessions, todos and <code>.pi/memory/</code> are kept under every combination of flags. Files generated from a template and then edited (<code>AGENTS.md</code>, <code>.pi/settings.json</code>) are only listed, for you to decide.</p>
181
+ </div>
182
+ </section>
183
+
184
+ <section class="section">
185
+ <h2 id="windows">On Windows</h2>
186
+ <p>Run the same PowerShell command you installed with: it updates WSL, Piagent and Agent Watch. See <a href="/en/windows">Windows</a>.</p>
187
+ </section>
188
+ <nav class="pager" aria-label="Adjacent pages">
189
+ <a class="pager-prev" href="/en/windows">
190
+ <span class="pager-label">← Previous</span>
191
+ <span class="pager-title">Windows</span>
192
+ </a>
193
+ <a class="pager-next" href="/en/whats-new">
194
+ <span class="pager-label">Next →</span>
195
+ <span class="pager-title">Changelog</span>
196
+ </a>
197
+ </nav>
198
+
199
+ <footer class="footer">
200
+ <p>Pi Agent Platform · MIT · static docs, no cookies</p>
201
+ <div class="footer-links" aria-label="External links">
202
+ <a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub</a>
203
+ <a href="https://www.npmjs.com/package/@piagent/platform" target="_blank" rel="noopener noreferrer">npm</a>
204
+ <a href="/update" hreflang="vi">Tiếng Việt</a>
205
+ <a href="https://www.facebook.com/vinhtam0544/" target="_blank" rel="noopener noreferrer">Facebook</a>
206
+ </div>
207
+ </footer>
208
+ </div>
209
+ </main>
210
+
211
+ <aside class="toc" aria-label="Page contents">
212
+ <p class="toc-title">On this page</p>
213
+ <nav data-toc></nav>
214
+ </aside>
215
+ </div>
216
+ <div class="palette" data-palette data-index="/assets/search-en.json" data-empty="No page matches." role="dialog" aria-modal="true" aria-label="Search documentation">
217
+ <div class="palette-box">
218
+ <label class="palette-input"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><use href="#icon-search"/></svg><input type="search" placeholder="Search the docs…" aria-label="Search documentation" autocomplete="off" spellcheck="false" /></label>
219
+ <div class="palette-results" data-results role="listbox"></div>
220
+ <div class="palette-foot"><span>↑↓ select</span><span>↵ open</span><span>esc close</span></div>
221
+ </div>
222
+ </div>
223
+ <script>
224
+ window.va = window.va || function () { (window.vaq = window.vaq || []).push(arguments); };
225
+ </script>
226
+ <script defer src="/_vercel/insights/script.js"></script>
227
+ </body>
228
+ </html>