@piagent/platform 1.2.16 → 1.2.17
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 +14 -0
- package/README.md +3 -3
- package/docs/README.md +1 -1
- package/docs/command-reference-vietnamese.md +2 -2
- package/docs/distribution-standard.md +7 -7
- package/docs/operator-manual-vietnamese.md +7 -7
- package/docs/release-install-policy.md +6 -6
- package/docs/security-threat-model.md +1 -1
- package/docs/team-onboarding.md +2 -2
- package/docs/vercel-docs-site.md +7 -5
- package/docs-site/architecture.html +12 -6
- package/docs-site/assets/docs.css +52 -1
- package/docs-site/assets/docs.js +4 -2
- package/docs-site/benchmark.html +12 -6
- package/docs-site/commands.html +12 -6
- package/docs-site/content/en/architecture.html +33 -0
- package/docs-site/content/en/benchmark.html +164 -0
- package/docs-site/content/en/commands.html +39 -0
- package/docs-site/content/en/context-engine.html +30 -0
- package/docs-site/content/en/index.html +85 -0
- package/docs-site/content/en/mcp-approval.html +74 -0
- package/docs-site/content/en/mcp-auth.html +57 -0
- package/docs-site/content/en/mcp-servers.html +91 -0
- package/docs-site/content/en/mcp.html +90 -0
- package/docs-site/content/en/permissions.html +19 -0
- package/docs-site/content/en/profiles.html +27 -0
- package/docs-site/content/en/quickstart.html +126 -0
- package/docs-site/content/en/runtime.html +27 -0
- package/docs-site/content/en/scope.html +45 -0
- package/docs-site/content/en/security.html +33 -0
- package/docs-site/content/en/team.html +14 -0
- package/docs-site/content/en/workflows.html +21 -0
- package/docs-site/content/quickstart.html +1 -1
- package/docs-site/context-engine.html +12 -6
- package/docs-site/en/architecture.html +166 -0
- package/docs-site/en/benchmark.html +297 -0
- package/docs-site/en/commands.html +172 -0
- package/docs-site/en/context-engine.html +163 -0
- package/docs-site/en/index.html +203 -0
- package/docs-site/en/mcp-approval.html +207 -0
- package/docs-site/en/mcp-auth.html +190 -0
- package/docs-site/en/mcp-servers.html +224 -0
- package/docs-site/en/mcp.html +223 -0
- package/docs-site/en/permissions.html +152 -0
- package/docs-site/en/profiles.html +160 -0
- package/docs-site/en/quickstart.html +259 -0
- package/docs-site/en/runtime.html +160 -0
- package/docs-site/en/scope.html +178 -0
- package/docs-site/en/security.html +166 -0
- package/docs-site/en/team.html +143 -0
- package/docs-site/en/workflows.html +154 -0
- package/docs-site/index.html +12 -6
- package/docs-site/mcp-approval.html +12 -6
- package/docs-site/mcp-auth.html +12 -6
- package/docs-site/mcp-servers.html +12 -6
- package/docs-site/mcp.html +12 -6
- package/docs-site/permissions.html +12 -6
- package/docs-site/profiles.html +12 -6
- package/docs-site/quickstart.html +13 -7
- package/docs-site/runtime.html +12 -6
- package/docs-site/scope.html +12 -6
- package/docs-site/security.html +12 -6
- package/docs-site/team.html +12 -6
- package/docs-site/workflows.html +12 -6
- package/package.json +1 -1
- package/packages/piagent-core/package.json +1 -1
- package/scripts/build-docs-site.mjs +224 -50
- package/scripts/verify-local.sh +6 -0
- package/scripts/verify-release-identity.mjs +15 -6
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en" data-copy-success="Copied" data-copy-fallback="Select command">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>What the platform owns · Pi Agent Platform Docs</title>
|
|
7
|
+
<meta name="description" content="General coding agents already provide governance primitives. This platform packages one repeatable operating model for Pi across every repository." />
|
|
8
|
+
<meta name="theme-color" content="#050505" />
|
|
9
|
+
<link rel="canonical" href="https://piagent.io.vn/en/scope" />
|
|
10
|
+
<link rel="alternate" hreflang="vi" href="https://piagent.io.vn/scope" />
|
|
11
|
+
<link rel="alternate" hreflang="en" href="https://piagent.io.vn/en/scope" />
|
|
12
|
+
<link rel="alternate" hreflang="x-default" href="https://piagent.io.vn/scope" />
|
|
13
|
+
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
|
14
|
+
<meta property="og:title" content="What the platform owns · Pi Agent Platform Docs" />
|
|
15
|
+
<meta property="og:description" content="General coding agents already provide governance primitives. This platform packages one repeatable operating model for Pi across every repository." />
|
|
16
|
+
<meta property="og:url" content="https://piagent.io.vn/en/scope" />
|
|
17
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
18
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
19
|
+
<link
|
|
20
|
+
href="https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap"
|
|
21
|
+
rel="stylesheet"
|
|
22
|
+
/>
|
|
23
|
+
<link rel="stylesheet" href="/assets/docs.css" />
|
|
24
|
+
<script src="/assets/docs.js" defer></script>
|
|
25
|
+
</head>
|
|
26
|
+
<body>
|
|
27
|
+
<header class="topbar">
|
|
28
|
+
<a class="brand" href="/en/" aria-label="Pi Agent Platform">
|
|
29
|
+
<span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" /></span>
|
|
30
|
+
<span>Pi Agent Platform</span>
|
|
31
|
+
</a>
|
|
32
|
+
<div class="top-actions">
|
|
33
|
+
<span class="pill"><span class="pill-dot"></span>v1.2.17 docs · EN</span>
|
|
34
|
+
<nav class="language-switch" aria-label="Language">
|
|
35
|
+
<a class="language-option" href="/scope" hreflang="vi" lang="vi">VI</a>
|
|
36
|
+
<a class="language-option current" href="/en/scope" hreflang="en" lang="en" aria-current="true">EN</a>
|
|
37
|
+
</nav>
|
|
38
|
+
<a class="button social" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Open 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>Menu</button>
|
|
45
|
+
<a class="button top-command-link" href="/en/commands">Commands</a>
|
|
46
|
+
</div>
|
|
47
|
+
</header>
|
|
48
|
+
|
|
49
|
+
<div class="layout with-toc">
|
|
50
|
+
<aside class="sidebar" data-sidebar>
|
|
51
|
+
<div class="sidebar-search" aria-label="Search documentation">
|
|
52
|
+
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
53
|
+
<path d="M10.8 18.1a7.3 7.3 0 1 1 0-14.6 7.3 7.3 0 0 1 0 14.6Zm5.3-1.7 4.4 4.4" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
|
|
54
|
+
</svg>
|
|
55
|
+
<input type="search" placeholder="Search pages" data-filter />
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<nav aria-label="Documentation">
|
|
59
|
+
<div class="nav-group">
|
|
60
|
+
<p class="nav-title">Get started</p>
|
|
61
|
+
<a class="nav-link" href="/en/">Overview</a>
|
|
62
|
+
<a class="nav-link" href="/en/quickstart">Quickstart</a>
|
|
63
|
+
<a class="nav-link current" href="/en/scope" aria-current="page">Platform scope</a>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="nav-group">
|
|
66
|
+
<p class="nav-title">Build</p>
|
|
67
|
+
<a class="nav-link" href="/en/profiles">Project profiles</a>
|
|
68
|
+
<a class="nav-link" href="/en/permissions">Permission modes</a>
|
|
69
|
+
<a class="nav-link" href="/en/commands">Command catalog</a>
|
|
70
|
+
<a class="nav-link" href="/en/workflows">Workflows</a>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="nav-group">
|
|
73
|
+
<p class="nav-title">MCP</p>
|
|
74
|
+
<a class="nav-link" href="/en/mcp">MCP overview</a>
|
|
75
|
+
<a class="nav-link" href="/en/mcp-servers">Server management</a>
|
|
76
|
+
<a class="nav-link" href="/en/mcp-auth">Authentication</a>
|
|
77
|
+
<a class="nav-link" href="/en/mcp-approval">Approval gate</a>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="nav-group">
|
|
80
|
+
<p class="nav-title">Operate</p>
|
|
81
|
+
<a class="nav-link" href="/en/security">Security model</a>
|
|
82
|
+
<a class="nav-link" href="/en/architecture">Architecture</a>
|
|
83
|
+
<a class="nav-link" href="/en/context-engine">Context Engine</a>
|
|
84
|
+
<a class="nav-link" href="/en/benchmark">Benchmark</a>
|
|
85
|
+
<a class="nav-link" href="/en/runtime">Runtime tools</a>
|
|
86
|
+
<a class="nav-link" href="/en/team">Team usage</a>
|
|
87
|
+
</div>
|
|
88
|
+
</nav>
|
|
89
|
+
</aside>
|
|
90
|
+
|
|
91
|
+
<main>
|
|
92
|
+
<div class="content-shell" data-article>
|
|
93
|
+
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
94
|
+
<a href="/en/">Docs</a>
|
|
95
|
+
<span aria-hidden="true">/</span>
|
|
96
|
+
<span>Get started</span>
|
|
97
|
+
<span aria-hidden="true">/</span>
|
|
98
|
+
<span>Platform scope</span>
|
|
99
|
+
</nav>
|
|
100
|
+
<div class="page-head">
|
|
101
|
+
<h1>What the platform owns</h1>
|
|
102
|
+
<p>General coding agents already provide governance primitives. This platform packages one repeatable operating model for Pi across every repository.</p>
|
|
103
|
+
</div>
|
|
104
|
+
<section class="section">
|
|
105
|
+
<h2 id="not-a-new-agent">This is not a new agent</h2>
|
|
106
|
+
<p>The platform has no model, runtime, or agent loop of its own. It runs as a Pi extension and adds one thing: <strong>a repeatable operating model</strong> that every repository can reuse.</p>
|
|
107
|
+
<p>General coding agent CLIs already provide sandboxes, approvals, and project configuration. The useful question is not which agent is stronger. It is who configures those controls, and whether the configuration stays consistent across twenty repositories.</p>
|
|
108
|
+
|
|
109
|
+
<div class="table-wrap">
|
|
110
|
+
<table>
|
|
111
|
+
<thead>
|
|
112
|
+
<tr><th>Area</th><th>General agent CLI</th><th>What this platform adds</th></tr>
|
|
113
|
+
</thead>
|
|
114
|
+
<tbody>
|
|
115
|
+
<tr><td>Role</td><td>A coding agent operating on a local repository with tool and command selection.</td><td>A governance layer for Pi: policy, profiles, and workflows represented as files instead of prompt conventions.</td></tr>
|
|
116
|
+
<tr><td>Team customization</td><td>Instructions, settings, permissions, hooks, skills, and MCP configured per repository.</td><td>Profile adapters, base policy, command guards, capability packs, docs, and scripts defined once and distributed with <span class="inline-code">piagent-init</span>.</td></tr>
|
|
117
|
+
<tr><td>Execution permissions</td><td>OS or process sandboxing, per-action approval, and workspace boundaries.</td><td>Three named modes: <span class="inline-code">read-only</span>, <span class="inline-code">workspace-write</span>, and <span class="inline-code">trusted-full-access</span>, changed with one command.</td></tr>
|
|
118
|
+
<tr><td>Secret safety</td><td>Sandbox, approval, and network policy beneath the tool layer.</td><td>Application-level policy after a tool call: protected paths, shell checks, symlink aliases, output redaction, and integrity locks.</td></tr>
|
|
119
|
+
<tr><td>Distinct value</td><td>A complete agent experience and broad tool ecosystem.</td><td>Repeatability: the same profiles, guard, and verification discipline across repositories, with differences visible in files.</td></tr>
|
|
120
|
+
</tbody>
|
|
121
|
+
</table>
|
|
122
|
+
</div>
|
|
123
|
+
</section>
|
|
124
|
+
|
|
125
|
+
<section class="section">
|
|
126
|
+
<h2 id="complementary-layers">The two layers are complementary</h2>
|
|
127
|
+
<p>The host sandbox controls processes: a process cannot open files outside its permitted scope. The platform guard controls tool calls: it can inspect the <em>arguments</em> the agent intends to use, including paths, destinations, and external payloads.</p>
|
|
128
|
+
<div class="split">
|
|
129
|
+
<div class="card">
|
|
130
|
+
<h3 id="lower-layer">The lower layer sees processes</h3>
|
|
131
|
+
<p>It can tell that a process is writing outside the workspace. It cannot tell whether that process is <span class="inline-code">npm test</span> or a script generated during the current turn.</p>
|
|
132
|
+
</div>
|
|
133
|
+
<div class="card">
|
|
134
|
+
<h3 id="upper-layer">The upper layer sees intent</h3>
|
|
135
|
+
<p>It knows the tool, arguments, and capability. That is enough to block <span class="inline-code">.env</span> by name, redact tokens in output, and reject an MCP server supplied by a repository.</p>
|
|
136
|
+
</div>
|
|
137
|
+
</div>
|
|
138
|
+
<div class="callout">
|
|
139
|
+
<strong>Removing either layer leaves a gap</strong>
|
|
140
|
+
<p>An application guard cannot replace a sandbox once a process is running. A sandbox does not know why <span class="inline-code">.env</span> differs from <span class="inline-code">.env.example</span>. The platform assumes the lower layer remains enabled.</p>
|
|
141
|
+
</div>
|
|
142
|
+
</section>
|
|
143
|
+
|
|
144
|
+
<section class="section">
|
|
145
|
+
<h2 id="when-not-needed">When you may not need it</h2>
|
|
146
|
+
<p>For one person, one repository, no meaningful secrets, and no shared operating process, Pi's native configuration may be sufficient.</p>
|
|
147
|
+
<p>The platform becomes useful when no one can remember which permissions are active across many repositories, or when "has this been verified?" needs the same evidence-based answer everywhere.</p>
|
|
148
|
+
</section>
|
|
149
|
+
<nav class="pager" aria-label="Adjacent pages">
|
|
150
|
+
<a class="pager-prev" href="/en/quickstart">
|
|
151
|
+
<span class="pager-label">Previous</span>
|
|
152
|
+
<span class="pager-title">Quickstart</span>
|
|
153
|
+
</a>
|
|
154
|
+
<a class="pager-next" href="/en/profiles">
|
|
155
|
+
<span class="pager-label">Next</span>
|
|
156
|
+
<span class="pager-title">Project profiles</span>
|
|
157
|
+
</a>
|
|
158
|
+
</nav>
|
|
159
|
+
|
|
160
|
+
<footer class="footer">
|
|
161
|
+
<p>Pi Agent Platform docs · static HTML · governed agent workflow</p>
|
|
162
|
+
<div class="footer-links" aria-label="External links">
|
|
163
|
+
<a href="https://piagent.io.vn" target="_blank" rel="noopener noreferrer">piagent.io.vn</a>
|
|
164
|
+
<a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub repository</a>
|
|
165
|
+
<a href="/scope" hreflang="vi">Tiếng Việt</a>
|
|
166
|
+
<a href="https://www.facebook.com/vinhtam0544/" target="_blank" rel="noopener noreferrer">Facebook profile</a>
|
|
167
|
+
</div>
|
|
168
|
+
</footer>
|
|
169
|
+
</div>
|
|
170
|
+
</main>
|
|
171
|
+
|
|
172
|
+
<aside class="toc" aria-label="Page contents">
|
|
173
|
+
<p class="toc-title">On this page</p>
|
|
174
|
+
<nav data-toc></nav>
|
|
175
|
+
</aside>
|
|
176
|
+
</div>
|
|
177
|
+
</body>
|
|
178
|
+
</html>
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en" data-copy-success="Copied" data-copy-fallback="Select command">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>Policy enforcement, not an OS sandbox · Pi Agent Platform Docs</title>
|
|
7
|
+
<meta name="description" content="Controlled tool surfaces fail closed when profiles, integrity locks, permissions, or verification evidence are invalid." />
|
|
8
|
+
<meta name="theme-color" content="#050505" />
|
|
9
|
+
<link rel="canonical" href="https://piagent.io.vn/en/security" />
|
|
10
|
+
<link rel="alternate" hreflang="vi" href="https://piagent.io.vn/security" />
|
|
11
|
+
<link rel="alternate" hreflang="en" href="https://piagent.io.vn/en/security" />
|
|
12
|
+
<link rel="alternate" hreflang="x-default" href="https://piagent.io.vn/security" />
|
|
13
|
+
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
|
14
|
+
<meta property="og:title" content="Policy enforcement, not an OS sandbox · Pi Agent Platform Docs" />
|
|
15
|
+
<meta property="og:description" content="Controlled tool surfaces fail closed when profiles, integrity locks, permissions, or verification evidence are invalid." />
|
|
16
|
+
<meta property="og:url" content="https://piagent.io.vn/en/security" />
|
|
17
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
18
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
19
|
+
<link
|
|
20
|
+
href="https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap"
|
|
21
|
+
rel="stylesheet"
|
|
22
|
+
/>
|
|
23
|
+
<link rel="stylesheet" href="/assets/docs.css" />
|
|
24
|
+
<script src="/assets/docs.js" defer></script>
|
|
25
|
+
</head>
|
|
26
|
+
<body>
|
|
27
|
+
<header class="topbar">
|
|
28
|
+
<a class="brand" href="/en/" aria-label="Pi Agent Platform">
|
|
29
|
+
<span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" /></span>
|
|
30
|
+
<span>Pi Agent Platform</span>
|
|
31
|
+
</a>
|
|
32
|
+
<div class="top-actions">
|
|
33
|
+
<span class="pill"><span class="pill-dot"></span>v1.2.17 docs · EN</span>
|
|
34
|
+
<nav class="language-switch" aria-label="Language">
|
|
35
|
+
<a class="language-option" href="/security" hreflang="vi" lang="vi">VI</a>
|
|
36
|
+
<a class="language-option current" href="/en/security" hreflang="en" lang="en" aria-current="true">EN</a>
|
|
37
|
+
</nav>
|
|
38
|
+
<a class="button social" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Open 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>Menu</button>
|
|
45
|
+
<a class="button top-command-link" href="/en/commands">Commands</a>
|
|
46
|
+
</div>
|
|
47
|
+
</header>
|
|
48
|
+
|
|
49
|
+
<div class="layout with-toc">
|
|
50
|
+
<aside class="sidebar" data-sidebar>
|
|
51
|
+
<div class="sidebar-search" aria-label="Search documentation">
|
|
52
|
+
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
53
|
+
<path d="M10.8 18.1a7.3 7.3 0 1 1 0-14.6 7.3 7.3 0 0 1 0 14.6Zm5.3-1.7 4.4 4.4" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
|
|
54
|
+
</svg>
|
|
55
|
+
<input type="search" placeholder="Search pages" data-filter />
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<nav aria-label="Documentation">
|
|
59
|
+
<div class="nav-group">
|
|
60
|
+
<p class="nav-title">Get started</p>
|
|
61
|
+
<a class="nav-link" href="/en/">Overview</a>
|
|
62
|
+
<a class="nav-link" href="/en/quickstart">Quickstart</a>
|
|
63
|
+
<a class="nav-link" href="/en/scope">Platform scope</a>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="nav-group">
|
|
66
|
+
<p class="nav-title">Build</p>
|
|
67
|
+
<a class="nav-link" href="/en/profiles">Project profiles</a>
|
|
68
|
+
<a class="nav-link" href="/en/permissions">Permission modes</a>
|
|
69
|
+
<a class="nav-link" href="/en/commands">Command catalog</a>
|
|
70
|
+
<a class="nav-link" href="/en/workflows">Workflows</a>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="nav-group">
|
|
73
|
+
<p class="nav-title">MCP</p>
|
|
74
|
+
<a class="nav-link" href="/en/mcp">MCP overview</a>
|
|
75
|
+
<a class="nav-link" href="/en/mcp-servers">Server management</a>
|
|
76
|
+
<a class="nav-link" href="/en/mcp-auth">Authentication</a>
|
|
77
|
+
<a class="nav-link" href="/en/mcp-approval">Approval gate</a>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="nav-group">
|
|
80
|
+
<p class="nav-title">Operate</p>
|
|
81
|
+
<a class="nav-link current" href="/en/security" aria-current="page">Security model</a>
|
|
82
|
+
<a class="nav-link" href="/en/architecture">Architecture</a>
|
|
83
|
+
<a class="nav-link" href="/en/context-engine">Context Engine</a>
|
|
84
|
+
<a class="nav-link" href="/en/benchmark">Benchmark</a>
|
|
85
|
+
<a class="nav-link" href="/en/runtime">Runtime tools</a>
|
|
86
|
+
<a class="nav-link" href="/en/team">Team usage</a>
|
|
87
|
+
</div>
|
|
88
|
+
</nav>
|
|
89
|
+
</aside>
|
|
90
|
+
|
|
91
|
+
<main>
|
|
92
|
+
<div class="content-shell" data-article>
|
|
93
|
+
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
94
|
+
<a href="/en/">Docs</a>
|
|
95
|
+
<span aria-hidden="true">/</span>
|
|
96
|
+
<span>Operate</span>
|
|
97
|
+
<span aria-hidden="true">/</span>
|
|
98
|
+
<span>Security model</span>
|
|
99
|
+
</nav>
|
|
100
|
+
<div class="page-head">
|
|
101
|
+
<h1>Policy enforcement, not an OS sandbox</h1>
|
|
102
|
+
<p>Controlled tool surfaces fail closed when profiles, integrity locks, permissions, or verification evidence are invalid.</p>
|
|
103
|
+
</div>
|
|
104
|
+
<section class="section">
|
|
105
|
+
<div class="grid cols-2">
|
|
106
|
+
<article class="card"><h3 id="protected-paths">Protected paths</h3><p>Controlled tools block reads and writes to files such as <span class="inline-code">.env</span>, <span class="inline-code">auth.json</span>, local trust files, profile locks, and sensitive settings.</p></article>
|
|
107
|
+
<article class="card"><h3 id="shell-hardening">Shell hardening</h3><p>The guard uses shell parsing and controlled-command rules to catch globs, braces, redirects, bare-word symlinks, and xargs composition before runtime expansion.</p></article>
|
|
108
|
+
<article class="card"><h3 id="secret-redaction">Secret redaction</h3><p>Text tool output passes through a redactor for provider tokens, secret keyword patterns, and common sensitive values. Current benchmarks are synthetic and internal; the model continues to evolve.</p></article>
|
|
109
|
+
<article class="card"><h3 id="capability-lock">Capability lock</h3><p>Capability packs have digests and tamper detection. An invalid lock fails closed and never expands permissions automatically.</p></article>
|
|
110
|
+
<article class="card"><h3 id="human-action-gate">Human-action gate</h3><p>Destructive or external-provider actions require explicit operator confirmation even in full-access mode. The gate covers direct tools, decoded MCP proxy calls, GitHub CLI writes, and non-GET HTTP shell forms.</p></article>
|
|
111
|
+
<article class="card"><h3 id="verify-evidence">Verification evidence</h3><p>A completed handoff requires observed bash results, not an unsupported statement that tests passed.</p></article>
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
<div class="callout">
|
|
115
|
+
<strong>Important boundary</strong>
|
|
116
|
+
<p>The guard depends on controlled tool paths and the shell syntax it can observe. It cannot stop another process running with the same OS permissions outside the guard, and it does not replace operating-system sandboxing.</p>
|
|
117
|
+
<ul>
|
|
118
|
+
<li>Symlinks, encodings, nested payloads, shell expansion, or newly introduced tools can affect coverage.</li>
|
|
119
|
+
<li>Redaction is a leak-reduction backstop, not permission to place real secrets in prompts or outputs.</li>
|
|
120
|
+
<li>The context index is a local cache containing source bodies. Owner-only mode limits cross-account access, but processes under the same OS account must still be trusted.</li>
|
|
121
|
+
<li>Untrusted workloads require a container or VM with filesystem, process, network, and credential boundaries.</li>
|
|
122
|
+
</ul>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
125
|
+
<div class="callout">
|
|
126
|
+
<strong>Redaction still requires independent audit</strong>
|
|
127
|
+
<p>Current benchmarks are synthetic internal regression and release gates, not an external security audit. The project publishes its <a href="https://github.com/Vt-mmm/piagent/blob/main/docs/security-threat-model.md" target="_blank" rel="noopener noreferrer">threat model and attack-vector map</a>. Broader parser fuzzing, third-party review, and LTS guarantees remain higher assurance levels that are not currently claimed. Published npm packages do include signed provenance through GitHub Actions and Sigstore.</p>
|
|
128
|
+
</div>
|
|
129
|
+
|
|
130
|
+
<div class="callout">
|
|
131
|
+
<strong>Dependency gates separate two trees</strong>
|
|
132
|
+
<p>Releases audit the small terminal-helper dependency tree separately from the exact Pi host and pinned add-ons. The helper tree is clean. The current Pi host tree has one high and eleven moderate advisories; the project reports those numbers instead of claiming zero runtime vulnerabilities.</p>
|
|
133
|
+
<p>The high advisory is <span class="inline-code">GHSA-mh99-v99m-4gvg</span> in <span class="inline-code">brace-expansion</span>, a denial-of-service issue rather than privilege escalation or data exposure. The published Pi host shrinkwrap pins the affected version and overrides cannot replace it. The release gate exempts only this named advisory with a source-controlled rationale and expires the exemption on <span class="inline-code">2026-08-25</span> or when upstream publishes a fix. Every other high or critical advisory still blocks release.</p>
|
|
134
|
+
<p>The eleven moderate findings belong to two upstream advisories: encoded-backslash path traversal on Windows in a Hono adapter and a protobuf parser denial of service. Native Windows and WSL2 are not team rollout targets, but both findings remain tracked.</p>
|
|
135
|
+
</div>
|
|
136
|
+
</section>
|
|
137
|
+
<nav class="pager" aria-label="Adjacent pages">
|
|
138
|
+
<a class="pager-prev" href="/en/mcp-approval">
|
|
139
|
+
<span class="pager-label">Previous</span>
|
|
140
|
+
<span class="pager-title">Approval gate</span>
|
|
141
|
+
</a>
|
|
142
|
+
<a class="pager-next" href="/en/architecture">
|
|
143
|
+
<span class="pager-label">Next</span>
|
|
144
|
+
<span class="pager-title">Architecture</span>
|
|
145
|
+
</a>
|
|
146
|
+
</nav>
|
|
147
|
+
|
|
148
|
+
<footer class="footer">
|
|
149
|
+
<p>Pi Agent Platform docs · static HTML · governed agent workflow</p>
|
|
150
|
+
<div class="footer-links" aria-label="External links">
|
|
151
|
+
<a href="https://piagent.io.vn" target="_blank" rel="noopener noreferrer">piagent.io.vn</a>
|
|
152
|
+
<a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub repository</a>
|
|
153
|
+
<a href="/security" hreflang="vi">Tiếng Việt</a>
|
|
154
|
+
<a href="https://www.facebook.com/vinhtam0544/" target="_blank" rel="noopener noreferrer">Facebook profile</a>
|
|
155
|
+
</div>
|
|
156
|
+
</footer>
|
|
157
|
+
</div>
|
|
158
|
+
</main>
|
|
159
|
+
|
|
160
|
+
<aside class="toc" aria-label="Page contents">
|
|
161
|
+
<p class="toc-title">On this page</p>
|
|
162
|
+
<nav data-toc></nav>
|
|
163
|
+
</aside>
|
|
164
|
+
</div>
|
|
165
|
+
</body>
|
|
166
|
+
</html>
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en" data-copy-success="Copied" data-copy-fallback="Select command">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<title>A repeatable team operating standard · Pi Agent Platform Docs</title>
|
|
7
|
+
<meta name="description" content="Each repository links the package, selects a fitting profile, and keeps project-specific documentation in the repository that owns it." />
|
|
8
|
+
<meta name="theme-color" content="#050505" />
|
|
9
|
+
<link rel="canonical" href="https://piagent.io.vn/en/team" />
|
|
10
|
+
<link rel="alternate" hreflang="vi" href="https://piagent.io.vn/team" />
|
|
11
|
+
<link rel="alternate" hreflang="en" href="https://piagent.io.vn/en/team" />
|
|
12
|
+
<link rel="alternate" hreflang="x-default" href="https://piagent.io.vn/team" />
|
|
13
|
+
<link rel="icon" href="/favicon.svg" type="image/svg+xml" />
|
|
14
|
+
<meta property="og:title" content="A repeatable team operating standard · Pi Agent Platform Docs" />
|
|
15
|
+
<meta property="og:description" content="Each repository links the package, selects a fitting profile, and keeps project-specific documentation in the repository that owns it." />
|
|
16
|
+
<meta property="og:url" content="https://piagent.io.vn/en/team" />
|
|
17
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
18
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
19
|
+
<link
|
|
20
|
+
href="https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap"
|
|
21
|
+
rel="stylesheet"
|
|
22
|
+
/>
|
|
23
|
+
<link rel="stylesheet" href="/assets/docs.css" />
|
|
24
|
+
<script src="/assets/docs.js" defer></script>
|
|
25
|
+
</head>
|
|
26
|
+
<body>
|
|
27
|
+
<header class="topbar">
|
|
28
|
+
<a class="brand" href="/en/" aria-label="Pi Agent Platform">
|
|
29
|
+
<span class="brand-mark"><img src="/assets/piagent-logo.svg" alt="" /></span>
|
|
30
|
+
<span>Pi Agent Platform</span>
|
|
31
|
+
</a>
|
|
32
|
+
<div class="top-actions">
|
|
33
|
+
<span class="pill"><span class="pill-dot"></span>v1.2.17 docs · EN</span>
|
|
34
|
+
<nav class="language-switch" aria-label="Language">
|
|
35
|
+
<a class="language-option" href="/team" hreflang="vi" lang="vi">VI</a>
|
|
36
|
+
<a class="language-option current" href="/en/team" hreflang="en" lang="en" aria-current="true">EN</a>
|
|
37
|
+
</nav>
|
|
38
|
+
<a class="button social" href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer" aria-label="Open 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>Menu</button>
|
|
45
|
+
<a class="button top-command-link" href="/en/commands">Commands</a>
|
|
46
|
+
</div>
|
|
47
|
+
</header>
|
|
48
|
+
|
|
49
|
+
<div class="layout with-toc">
|
|
50
|
+
<aside class="sidebar" data-sidebar>
|
|
51
|
+
<div class="sidebar-search" aria-label="Search documentation">
|
|
52
|
+
<svg viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
53
|
+
<path d="M10.8 18.1a7.3 7.3 0 1 1 0-14.6 7.3 7.3 0 0 1 0 14.6Zm5.3-1.7 4.4 4.4" stroke="currentColor" stroke-width="2" stroke-linecap="round" />
|
|
54
|
+
</svg>
|
|
55
|
+
<input type="search" placeholder="Search pages" data-filter />
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
<nav aria-label="Documentation">
|
|
59
|
+
<div class="nav-group">
|
|
60
|
+
<p class="nav-title">Get started</p>
|
|
61
|
+
<a class="nav-link" href="/en/">Overview</a>
|
|
62
|
+
<a class="nav-link" href="/en/quickstart">Quickstart</a>
|
|
63
|
+
<a class="nav-link" href="/en/scope">Platform scope</a>
|
|
64
|
+
</div>
|
|
65
|
+
<div class="nav-group">
|
|
66
|
+
<p class="nav-title">Build</p>
|
|
67
|
+
<a class="nav-link" href="/en/profiles">Project profiles</a>
|
|
68
|
+
<a class="nav-link" href="/en/permissions">Permission modes</a>
|
|
69
|
+
<a class="nav-link" href="/en/commands">Command catalog</a>
|
|
70
|
+
<a class="nav-link" href="/en/workflows">Workflows</a>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="nav-group">
|
|
73
|
+
<p class="nav-title">MCP</p>
|
|
74
|
+
<a class="nav-link" href="/en/mcp">MCP overview</a>
|
|
75
|
+
<a class="nav-link" href="/en/mcp-servers">Server management</a>
|
|
76
|
+
<a class="nav-link" href="/en/mcp-auth">Authentication</a>
|
|
77
|
+
<a class="nav-link" href="/en/mcp-approval">Approval gate</a>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="nav-group">
|
|
80
|
+
<p class="nav-title">Operate</p>
|
|
81
|
+
<a class="nav-link" href="/en/security">Security model</a>
|
|
82
|
+
<a class="nav-link" href="/en/architecture">Architecture</a>
|
|
83
|
+
<a class="nav-link" href="/en/context-engine">Context Engine</a>
|
|
84
|
+
<a class="nav-link" href="/en/benchmark">Benchmark</a>
|
|
85
|
+
<a class="nav-link" href="/en/runtime">Runtime tools</a>
|
|
86
|
+
<a class="nav-link current" href="/en/team" aria-current="page">Team usage</a>
|
|
87
|
+
</div>
|
|
88
|
+
</nav>
|
|
89
|
+
</aside>
|
|
90
|
+
|
|
91
|
+
<main>
|
|
92
|
+
<div class="content-shell" data-article>
|
|
93
|
+
<nav class="breadcrumb" aria-label="Breadcrumb">
|
|
94
|
+
<a href="/en/">Docs</a>
|
|
95
|
+
<span aria-hidden="true">/</span>
|
|
96
|
+
<span>Operate</span>
|
|
97
|
+
<span aria-hidden="true">/</span>
|
|
98
|
+
<span>Team usage</span>
|
|
99
|
+
</nav>
|
|
100
|
+
<div class="page-head">
|
|
101
|
+
<h1>A repeatable team operating standard</h1>
|
|
102
|
+
<p>Each repository links the package, selects a fitting profile, and keeps project-specific documentation in the repository that owns it.</p>
|
|
103
|
+
</div>
|
|
104
|
+
<section class="section">
|
|
105
|
+
<div class="split">
|
|
106
|
+
<article class="card"><h3 id="do">Do</h3><p>Run <span class="inline-code">/onboard run</span>, apply <span class="inline-code">/profile auto</span>, use <span class="inline-code">/workflow</span>, execute real verification, and state blockers clearly.</p></article>
|
|
107
|
+
<article class="card"><h3 id="avoid">Avoid</h3><p>Do not place tokens, authentication files, caches, sessions, private examples, or project-specific business logic in the public core package.</p></article>
|
|
108
|
+
</div>
|
|
109
|
+
<div class="callout ok-callout">
|
|
110
|
+
<strong>Handoff standard</strong>
|
|
111
|
+
<p>A final response should briefly state what changed, which verification ran, whether subagents were used, and which risks or next steps require review.</p>
|
|
112
|
+
</div>
|
|
113
|
+
<div class="callout">
|
|
114
|
+
<strong>Release documentation gate</strong>
|
|
115
|
+
<p>A new docs version is promoted to Vercel only after tag-triggered CI passes and the stable dry run resolves the exact commit SHA. Promotion uses the tagged commit without an intervening merge or docs-only edit. The canonical domain is <span class="inline-code">piagent.io.vn</span>; the apex is the Vercel primary and <span class="inline-code">www</span> redirects to it.</p>
|
|
116
|
+
</div>
|
|
117
|
+
</section>
|
|
118
|
+
<nav class="pager" aria-label="Adjacent pages">
|
|
119
|
+
<a class="pager-prev" href="/en/runtime">
|
|
120
|
+
<span class="pager-label">Previous</span>
|
|
121
|
+
<span class="pager-title">Runtime tools</span>
|
|
122
|
+
</a>
|
|
123
|
+
</nav>
|
|
124
|
+
|
|
125
|
+
<footer class="footer">
|
|
126
|
+
<p>Pi Agent Platform docs · static HTML · governed agent workflow</p>
|
|
127
|
+
<div class="footer-links" aria-label="External links">
|
|
128
|
+
<a href="https://piagent.io.vn" target="_blank" rel="noopener noreferrer">piagent.io.vn</a>
|
|
129
|
+
<a href="https://github.com/Vt-mmm/piagent" target="_blank" rel="noopener noreferrer">GitHub repository</a>
|
|
130
|
+
<a href="/team" hreflang="vi">Tiếng Việt</a>
|
|
131
|
+
<a href="https://www.facebook.com/vinhtam0544/" target="_blank" rel="noopener noreferrer">Facebook profile</a>
|
|
132
|
+
</div>
|
|
133
|
+
</footer>
|
|
134
|
+
</div>
|
|
135
|
+
</main>
|
|
136
|
+
|
|
137
|
+
<aside class="toc" aria-label="Page contents">
|
|
138
|
+
<p class="toc-title">On this page</p>
|
|
139
|
+
<nav data-toc></nav>
|
|
140
|
+
</aside>
|
|
141
|
+
</div>
|
|
142
|
+
</body>
|
|
143
|
+
</html>
|