@piagent/platform 1.8.0 → 1.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +7 -0
- package/CHANGELOG.md +132 -2
- package/README.md +45 -70
- package/README.vi.md +34 -61
- package/architecture/layers.json +16 -3
- package/catalog/capabilities.json +14 -7
- package/catalog/claude-model-additions.json +42 -0
- package/docs/auto-delegation-policy.md +2 -0
- package/docs/command-reference-vietnamese.md +68 -90
- package/docs/context-window-policy.md +5 -5
- package/docs/distribution-standard.md +13 -16
- package/docs/en/architecture.md +9 -1
- package/docs/herdr-workflow.md +2 -3
- package/docs/languages.json +4 -4
- package/docs/managed-local-acceptance.md +403 -0
- package/docs/mcp-and-tools.md +5 -7
- package/docs/memory-policy.md +3 -3
- package/docs/model-options.md +2 -2
- package/docs/oauth-providers.md +1 -1
- package/docs/operator-manual-vietnamese.md +82 -127
- package/docs/package-architecture-notes.md +4 -4
- package/docs/piagent-core-improvement-plan.md +3 -5
- package/docs/piagent-core-plan-checkpoint-2026-09-06.json +2 -13
- package/docs/piagent-runtime-benchmark-execution-plan.md +10 -8
- package/docs/project-adapters.md +3 -3
- package/docs/project-onboarding.md +15 -16
- package/docs/publishing-for-teams.md +3 -1
- package/docs/quality-benchmark.md +2 -0
- package/docs/quickstart-vietnamese.md +23 -24
- package/docs/release-install-policy.md +3 -2
- package/docs/research/harness-next-evidence-review.md +7 -7
- package/docs/runtime-harness-standard.md +2 -0
- package/docs/runtime-policy-design.md +2 -0
- package/docs/runtime-quality-baseline.md +2 -0
- package/docs/subagent-orchestration-capabilities.md +1 -1
- package/docs/subagents-and-multiagent.md +10 -8
- package/docs/task-implementation-contract.md +2 -0
- package/docs/task-lifecycle-vietnamese.md +2 -0
- package/docs/team-onboarding.md +28 -59
- package/docs/usage-observability.md +2 -2
- package/docs/vi/architecture.md +9 -1
- package/docs/workflow-recipes.md +6 -10
- package/docs-site/architecture.html +4 -3
- package/docs-site/assets/docs.css +80 -0
- package/docs-site/benchmark.html +7 -1
- package/docs-site/commands.html +37 -23
- package/docs-site/content/architecture.html +2 -2
- package/docs-site/content/benchmark.html +5 -0
- package/docs-site/content/commands.html +35 -22
- package/docs-site/content/ecosystem.html +144 -0
- package/docs-site/content/en/architecture.html +1 -1
- package/docs-site/content/en/benchmark.html +5 -0
- package/docs-site/content/en/commands.html +30 -13
- package/docs-site/content/en/ecosystem.html +144 -0
- package/docs-site/content/en/index.html +24 -9
- package/docs-site/content/en/quickstart.html +10 -12
- package/docs-site/content/en/security.html +1 -1
- package/docs-site/content/en/team.html +2 -2
- package/docs-site/content/en/whats-new.html +92 -1
- package/docs-site/content/en/workflows.html +29 -31
- package/docs-site/content/index.html +24 -9
- package/docs-site/content/quickstart.html +10 -12
- package/docs-site/content/security.html +2 -2
- package/docs-site/content/team.html +2 -2
- package/docs-site/content/whats-new.html +92 -1
- package/docs-site/content/workflows.html +36 -38
- package/docs-site/context-engine.html +2 -1
- package/docs-site/ecosystem.html +283 -0
- package/docs-site/en/architecture.html +3 -2
- package/docs-site/en/benchmark.html +7 -1
- package/docs-site/en/commands.html +32 -14
- package/docs-site/en/context-engine.html +2 -1
- package/docs-site/en/ecosystem.html +283 -0
- package/docs-site/en/index.html +30 -14
- package/docs-site/en/mcp-approval.html +2 -1
- package/docs-site/en/mcp-auth.html +2 -1
- package/docs-site/en/mcp-servers.html +2 -1
- package/docs-site/en/mcp.html +2 -1
- package/docs-site/en/permissions.html +2 -1
- package/docs-site/en/profiles.html +2 -1
- package/docs-site/en/quickstart.html +17 -18
- package/docs-site/en/runtime.html +2 -1
- package/docs-site/en/scope.html +2 -1
- package/docs-site/en/security.html +6 -5
- package/docs-site/en/team.html +4 -3
- package/docs-site/en/whats-new.html +100 -8
- package/docs-site/en/workflows.html +34 -35
- package/docs-site/index.html +30 -14
- package/docs-site/mcp-approval.html +2 -1
- package/docs-site/mcp-auth.html +2 -1
- package/docs-site/mcp-servers.html +2 -1
- package/docs-site/mcp.html +2 -1
- package/docs-site/permissions.html +2 -1
- package/docs-site/profiles.html +2 -1
- package/docs-site/quickstart.html +17 -18
- package/docs-site/runtime.html +2 -1
- package/docs-site/scope.html +2 -1
- package/docs-site/security.html +7 -6
- package/docs-site/team.html +4 -3
- package/docs-site/whats-new.html +100 -8
- package/docs-site/workflows.html +41 -42
- package/evals/fs5-causal-arm.v1.json +2 -2
- package/evals/private-holdout-v1/CURRENT_BOUNDARY.md +17 -0
- package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
- package/package.json +8 -7
- package/packages/piagent-core/README.md +15 -23
- package/packages/piagent-core/docs/context-efficiency-improvement-plan.md +2 -0
- package/packages/piagent-core/extensions/experiment-loop-policy.ts +75 -0
- package/packages/piagent-core/extensions/local-state-path.js +15 -0
- package/packages/piagent-core/extensions/piagent-guard.ts +108 -960
- package/packages/piagent-core/extensions/policy-core.js +2 -2
- package/packages/piagent-core/extensions/source-checkout-paths.ts +54 -0
- package/packages/piagent-core/managed/broker-client.mjs +49 -0
- package/packages/piagent-core/managed/capabilities.mjs +28 -0
- package/packages/piagent-core/managed/client-agent.mjs +6 -0
- package/packages/piagent-core/managed/compaction.mjs +63 -0
- package/packages/piagent-core/managed/doctor.mjs +107 -0
- package/packages/piagent-core/managed/helper-roles.mjs +57 -0
- package/packages/piagent-core/managed/native-catalog.mjs +42 -0
- package/packages/piagent-core/managed/patch-snapshot.mjs +48 -0
- package/packages/piagent-core/managed/repository-operation.mjs +84 -0
- package/packages/piagent-core/managed/request-stream.mjs +130 -0
- package/packages/piagent-core/managed/resource-loader.mjs +42 -0
- package/packages/piagent-core/managed/review-snapshot-worker.mjs +27 -0
- package/packages/piagent-core/managed/sandbox-diagnostic.mjs +12 -0
- package/packages/piagent-core/managed/search-fallback.mjs +93 -0
- package/packages/piagent-core/managed/session.mjs +493 -0
- package/packages/piagent-core/managed/store.d.mts +3 -0
- package/packages/piagent-core/managed/store.mjs +64 -0
- package/packages/piagent-core/managed/tool-boundary.mjs +275 -0
- package/packages/piagent-core/managed/tool-worker.mjs +36 -0
- package/packages/piagent-core/managed/toolchain.mjs +120 -0
- package/packages/piagent-core/managed/web-fetch.mjs +105 -0
- package/packages/piagent-core/managed/web-search.mjs +131 -0
- package/packages/piagent-core/managed/workflow.mjs +326 -0
- package/packages/piagent-core/package.json +2 -5
- package/packages/piagent-core/policies/base-policy.json +80 -26
- package/packages/piagent-core/runtime/hooks/agent-start-hook.ts +3 -3
- package/packages/piagent-core/runtime/hooks/input-hook.ts +35 -196
- package/packages/piagent-core/runtime/hooks/session-start-hook.ts +2 -0
- package/packages/piagent-core/runtime/inspection/approval-broker.ts +9 -1
- package/packages/piagent-core/runtime/managed-failure.d.mts +10 -0
- package/packages/piagent-core/runtime/managed-failure.mjs +166 -0
- package/packages/piagent-core/runtime/orchestration/minimal-delegation-policy.ts +8 -29
- package/packages/piagent-core/runtime/orchestration/owned-work-budget.ts +1 -1
- package/packages/piagent-core/runtime/policy/block-remedy.ts +5 -3
- package/packages/piagent-core/runtime/registration/context-commands.ts +1 -1
- package/packages/piagent-core/runtime/registration/knowledge-tools.ts +7 -7
- package/packages/piagent-core/runtime/registration/policy-tools.ts +2 -2
- package/packages/piagent-core/runtime/registration/session-commands.ts +11 -26
- package/packages/piagent-core/runtime/registration/task-evidence-tools.ts +1 -1
- package/packages/piagent-core/runtime/session/system-prompt.ts +6 -7
- package/packages/piagent-core/runtime/workflows/webui-runtime-command.ts +6 -6
- package/packages/piagent-core/runtime/workflows/webui-workflow.ts +6 -11
- package/packages/piagent-core/security/sensitive-text.js +9 -0
- package/packages/piagent-core/skills/piagent-ops/SKILL.md +8 -10
- package/packages/piagent-core/skills/test-audit/SKILL.md +101 -0
- package/packages/piagent-core/subagents/piagent-planner.md +1 -1
- package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-DMU7Xe_O.js → MarkdownMessage-BRPIMCRh.js} +1 -1
- package/packages/piagent-webui/dist/client/assets/index-DNJ1vH5d.js +228 -0
- package/packages/piagent-webui/dist/client/assets/{index-DVahUVWy.css → index-DgSmcnP8.css} +1 -1
- package/packages/piagent-webui/dist/client/index.html +2 -2
- package/packages/piagent-webui/extension/piagent-webui.ts +11 -11
- package/packages/piagent-webui/extension/session-stream-adapter.ts +3 -1
- package/packages/piagent-webui/extension/terminal-session-adapter.ts +6 -1
- package/packages/piagent-webui/gateway/company-relay.ts +308 -0
- package/packages/piagent-webui/gateway/control-socket.ts +39 -12
- package/packages/piagent-webui/gateway/gateway-service.ts +109 -28
- package/packages/piagent-webui/gateway/gateway-session-stream.ts +58 -2
- package/packages/piagent-webui/gateway/managed-gateway.mjs +41 -0
- package/packages/piagent-webui/gateway/managed-launch.ts +145 -0
- package/packages/piagent-webui/gateway/managed-projection.ts +20 -0
- package/packages/piagent-webui/gateway/pi-host.ts +22 -4
- package/packages/piagent-webui/gateway/runtime-session-controls.ts +5 -2
- package/packages/piagent-webui/gateway/session-approval-authority.ts +28 -0
- package/packages/piagent-webui/gateway/session-catalog.ts +11 -3
- package/packages/piagent-webui/gateway/session-command-controller.ts +8 -2
- package/packages/piagent-webui/gateway/session-file-facts.ts +25 -0
- package/packages/piagent-webui/gateway/session-inspection-registry.ts +40 -9
- package/packages/piagent-webui/gateway/session-list-cache.ts +68 -0
- package/packages/piagent-webui/gateway/session-runtime-ownership.ts +8 -1
- package/packages/piagent-webui/gateway/session-runtime-supervisor.ts +20 -27
- package/packages/piagent-webui/ownership/managed-terminal-lease.ts +27 -0
- package/packages/piagent-webui/ownership/profile-state.ts +2 -0
- package/packages/piagent-webui/ownership/session-lease-store.ts +22 -1
- package/packages/piagent-webui/server/approval-projection.ts +9 -0
- package/packages/piagent-webui/server/core-inspection-provider.ts +4 -9
- package/packages/piagent-webui/server/loopback-server.ts +37 -1
- package/packages/piagent-webui/server/message-stop-reason.ts +11 -0
- package/packages/piagent-webui/server/tool-call-summary.ts +185 -0
- package/packages/piagent-webui/server/transcript-projection.ts +86 -3
- package/packs/engineering-base/pack.json +4 -0
- package/schemas/piagent-webui/runtime-command-v1.schema.json +1 -2
- package/schemas/piagent-webui/session-catalog-v1.schema.json +8 -0
- package/schemas/piagent-webui/transcript-v1.schema.json +94 -1
- package/scripts/build-docs-site.mjs +23 -12
- package/scripts/check-public-wording.mjs +5 -6
- package/scripts/check-runtime-advisories.mjs +23 -6
- package/scripts/claude-model-additions.mjs +33 -0
- package/scripts/configure-model-scope.sh +30 -6
- package/scripts/configure-subagents.sh +1 -1
- package/scripts/explain-command.mjs +5 -6
- package/scripts/init-project.sh +0 -2
- package/scripts/install-global.sh +3 -2
- package/scripts/model-scope-prune.mjs +75 -0
- package/scripts/phase-tools-evaluation.mjs +9 -4
- package/scripts/piagent-cli.mjs +51 -2
- package/scripts/piagent-dashboard.mjs +27 -4
- package/scripts/piagent-installations.mjs +26 -0
- package/scripts/piagent-studio.mjs +155 -0
- package/scripts/runtime-advisory-exceptions.json +29 -0
- package/scripts/setup.sh +10 -6
- package/scripts/team-doctor.sh +20 -1
- package/scripts/typescript-loader.mjs +6 -0
- package/scripts/verify-local.sh +2 -2
- package/templates/global/settings.json +3 -1
- package/templates/project/.pi/project-context.md +3 -3
- package/templates/project/AGENTS.md +4 -5
- package/docs/piagent-core-reasoning-research-2026-09-06.md +0 -225
- package/docs/piagent-core-research-sources-2026-09-06.json +0 -416
- package/packages/piagent-webui/dist/client/assets/index-Cui9AAV_.js +0 -176
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<section class="section">
|
|
2
|
+
<p class="section-kicker">Toàn cảnh</p>
|
|
3
|
+
<h2 id="toan-canh">Một dashboard, hai cách dùng model</h2>
|
|
4
|
+
<p class="section-lead">Piagent chạy trên máy từng thành viên. Ở chế độ cá nhân, nó dùng tài khoản model của chính bạn. Ở chế độ công ty, nó đi qua Agent Watch trên máy bạn và Agent Studio của công ty: công ty giữ key, chọn model và đặt quy trình kiểm tra cho cả team.</p>
|
|
5
|
+
<figure class="diagram">
|
|
6
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1120 560" role="img" aria-labelledby="eco-title eco-desc" class="eco-diagram">
|
|
7
|
+
<title id="eco-title">Hệ sinh thái Piagent</title>
|
|
8
|
+
<desc id="eco-desc">Máy của thành viên chạy Piagent (Terminal và Dashboard) với guard kiểm tra mọi tool call. Chế độ cá nhân gọi thẳng model bằng tài khoản riêng. Chế độ công ty đi qua Agent Watch giữ key trong Keychain và Agent Studio của công ty, nơi chọn model và Harness cho từng lượt.</desc>
|
|
9
|
+
<defs>
|
|
10
|
+
<marker id="eco-arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#8be9c8"/></marker>
|
|
11
|
+
<marker id="eco-arrow-lime" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#d8ff7a"/></marker>
|
|
12
|
+
</defs>
|
|
13
|
+
<style>
|
|
14
|
+
.eco-box { fill: #101114; stroke: #2c2f37; stroke-width: 1.5; }
|
|
15
|
+
.eco-zone { fill: rgba(255,255,255,0.015); stroke: #24262d; stroke-width: 1.2; stroke-dasharray: 6 6; }
|
|
16
|
+
.eco-h { fill: #f4f4ef; font: 600 17px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
17
|
+
.eco-t { fill: #a4a6ad; font: 400 13.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
18
|
+
.eco-k { fill: #71747d; font: 600 12px "Be Vietnam Pro", system-ui, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
|
|
19
|
+
.eco-chip { fill: rgba(216,255,122,0.08); stroke: rgba(216,255,122,0.35); }
|
|
20
|
+
.eco-chip-t { fill: #d8ff7a; font: 600 12.5px "JetBrains Mono", ui-monospace, monospace; }
|
|
21
|
+
.eco-line { stroke: #8be9c8; stroke-width: 1.8; fill: none; }
|
|
22
|
+
.eco-line-lime { stroke: #d8ff7a; stroke-width: 1.8; fill: none; stroke-dasharray: 7 6; }
|
|
23
|
+
.eco-label { fill: #8be9c8; font: 500 12.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
24
|
+
.eco-label-lime { fill: #d8ff7a; font: 500 12.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
25
|
+
</style>
|
|
26
|
+
<rect class="eco-zone" x="16" y="16" width="420" height="528" rx="22"/>
|
|
27
|
+
<text class="eco-k" x="40" y="48">Máy của thành viên</text>
|
|
28
|
+
<rect class="eco-box" x="40" y="68" width="372" height="96" rx="16"/>
|
|
29
|
+
<text class="eco-h" x="62" y="102">Piagent · Terminal và Dashboard</text>
|
|
30
|
+
<text class="eco-t" x="62" y="128">Nói việc bằng lời thường; cùng một lịch sử</text>
|
|
31
|
+
<text class="eco-t" x="62" y="148">trong Terminal (pi) và trình duyệt.</text>
|
|
32
|
+
<rect class="eco-box" x="40" y="184" width="372" height="116" rx="16"/>
|
|
33
|
+
<text class="eco-h" x="62" y="218">Guard</text>
|
|
34
|
+
<text class="eco-t" x="62" y="244">Kiểm tra mọi tool call: file bảo vệ, profile</text>
|
|
35
|
+
<text class="eco-t" x="62" y="264">quyền, file quá lớn, sửa trên bản đã cũ;</text>
|
|
36
|
+
<text class="eco-t" x="62" y="284">push, publish, lệnh có mạng chờ bạn duyệt.</text>
|
|
37
|
+
<rect class="eco-box" x="40" y="320" width="372" height="96" rx="16"/>
|
|
38
|
+
<text class="eco-h" x="62" y="354">Sandbox của chế độ công ty</text>
|
|
39
|
+
<text class="eco-t" x="62" y="380">Lệnh chạy không mạng, không đọc Keychain,</text>
|
|
40
|
+
<text class="eco-t" x="62" y="400">.env hay SSH key; mạng chỉ mở theo lần duyệt.</text>
|
|
41
|
+
<rect class="eco-chip" x="40" y="440" width="176" height="34" rx="17"/>
|
|
42
|
+
<text class="eco-chip-t" x="58" y="462">piagent dashboard</text>
|
|
43
|
+
<rect class="eco-chip" x="226" y="440" width="186" height="34" rx="17"/>
|
|
44
|
+
<text class="eco-chip-t" x="244" y="462">piagent studio --web</text>
|
|
45
|
+
<rect class="eco-chip" x="40" y="486" width="76" height="34" rx="17"/>
|
|
46
|
+
<text class="eco-chip-t" x="64" y="508">pi</text>
|
|
47
|
+
<rect class="eco-chip" x="126" y="486" width="186" height="34" rx="17"/>
|
|
48
|
+
<text class="eco-chip-t" x="144" y="508">piagent-doctor</text>
|
|
49
|
+
<rect class="eco-box" x="500" y="68" width="250" height="96" rx="18"/>
|
|
50
|
+
<text class="eco-h" x="522" y="102">Model cá nhân</text>
|
|
51
|
+
<text class="eco-t" x="522" y="128">Đăng nhập bằng tài khoản</text>
|
|
52
|
+
<text class="eco-t" x="522" y="148">riêng: Codex, Claude, Copilot…</text>
|
|
53
|
+
<rect class="eco-box" x="500" y="184" width="250" height="232" rx="18"/>
|
|
54
|
+
<text class="eco-k" x="522" y="216">Ứng dụng macOS</text>
|
|
55
|
+
<text class="eco-h" x="522" y="244">Agent Watch</text>
|
|
56
|
+
<text class="eco-t" x="522" y="272">Giữ key công ty trong</text>
|
|
57
|
+
<text class="eco-t" x="522" y="292">Keychain; nhập cấu hình</text>
|
|
58
|
+
<text class="eco-t" x="522" y="312">cho Piagent; cấp quyền</text>
|
|
59
|
+
<text class="eco-t" x="522" y="332">ngắn hạn cho từng lượt.</text>
|
|
60
|
+
<text class="eco-t" x="522" y="364">Model không bao giờ thấy</text>
|
|
61
|
+
<text class="eco-t" x="522" y="384">key.</text>
|
|
62
|
+
<rect class="eco-zone" x="800" y="16" width="304" height="528" rx="22"/>
|
|
63
|
+
<text class="eco-k" x="824" y="48">Máy chủ công ty</text>
|
|
64
|
+
<rect class="eco-box" x="824" y="68" width="256" height="300" rx="18"/>
|
|
65
|
+
<text class="eco-h" x="846" y="102">Agent Studio</text>
|
|
66
|
+
<text class="eco-t" x="846" y="132">Thành viên, key, ngân sách</text>
|
|
67
|
+
<text class="eco-t" x="846" y="152">và usage theo ngày.</text>
|
|
68
|
+
<text class="eco-t" x="846" y="186">Harness của team:</text>
|
|
69
|
+
<text class="eco-label-lime" x="846" y="210">kế hoạch · check · review</text>
|
|
70
|
+
<text class="eco-t" x="846" y="244">Chọn model cho từng vai:</text>
|
|
71
|
+
<text class="eco-label-lime" x="846" y="268">main · research · review</text>
|
|
72
|
+
<text class="eco-t" x="846" y="302">Mỗi vai một model riêng,</text>
|
|
73
|
+
<text class="eco-t" x="846" y="322">thinking theo Harness.</text>
|
|
74
|
+
<rect class="eco-box" x="824" y="392" width="256" height="128" rx="18"/>
|
|
75
|
+
<text class="eco-h" x="846" y="426">Model của công ty</text>
|
|
76
|
+
<text class="eco-t" x="846" y="454">Claude, GPT, DeepSeek, Kimi,</text>
|
|
77
|
+
<text class="eco-t" x="846" y="474">GLM, Qwen… qua key công ty;</text>
|
|
78
|
+
<text class="eco-t" x="846" y="494">key chỉ nằm trên máy chủ.</text>
|
|
79
|
+
<path class="eco-line" d="M412 300 L 500 300" marker-end="url(#eco-arrow)"/>
|
|
80
|
+
<text class="eco-label" x="424" y="290">công ty</text>
|
|
81
|
+
<path class="eco-line" d="M750 300 C 790 300, 790 220, 824 220" marker-end="url(#eco-arrow)"/>
|
|
82
|
+
<text class="eco-label" x="748" y="348">lượt có hạn</text>
|
|
83
|
+
<path class="eco-line" d="M952 368 L952 392" marker-end="url(#eco-arrow)"/>
|
|
84
|
+
<path class="eco-line-lime" d="M412 116 L 500 116" marker-end="url(#eco-arrow-lime)"/>
|
|
85
|
+
<text class="eco-label-lime" x="420" y="106">cá nhân</text>
|
|
86
|
+
</svg>
|
|
87
|
+
<figcaption class="diagram-hint">Vuốt ngang để xem hết sơ đồ.</figcaption>
|
|
88
|
+
</figure>
|
|
89
|
+
</section>
|
|
90
|
+
|
|
91
|
+
<section class="section">
|
|
92
|
+
<p class="section-kicker">Thành phần</p>
|
|
93
|
+
<h2 id="thanh-phan">Mỗi phần làm một việc</h2>
|
|
94
|
+
<div class="grid cols-2">
|
|
95
|
+
<article class="card">
|
|
96
|
+
<h3 id="piagent">Piagent</h3>
|
|
97
|
+
<p>Coding agent trong Terminal (<span class="inline-code">pi</span>) và trên trình duyệt (<span class="inline-code">piagent dashboard</span>). Hai nơi dùng chung lịch sử: bắt đầu ở Terminal, xem tiếp trên trình duyệt.</p>
|
|
98
|
+
</article>
|
|
99
|
+
<article class="card">
|
|
100
|
+
<h3 id="guard">Guard</h3>
|
|
101
|
+
<p>Kiểm tra từng tool call trước khi chạy: file bảo vệ như <span class="inline-code">.env</span>, profile quyền, file quá lớn, sửa trên bản đã cũ. Push, publish và lệnh có mạng chờ bạn duyệt đúng một lần.</p>
|
|
102
|
+
</article>
|
|
103
|
+
<article class="card">
|
|
104
|
+
<h3 id="agent-watch">Agent Watch</h3>
|
|
105
|
+
<p>Ứng dụng macOS giữ key công ty trong Keychain và nhập cấu hình cho Piagent. Mỗi lượt nhận quyền ngắn hạn; model và các lệnh không bao giờ đọc được key.</p>
|
|
106
|
+
</article>
|
|
107
|
+
<article class="card">
|
|
108
|
+
<h3 id="agent-studio">Agent Studio</h3>
|
|
109
|
+
<p>Máy chủ của công ty: thành viên, key, ngân sách, usage theo ngày và Harness của team. Studio chọn model cho từng vai (main, research, review) và mức suy luận.</p>
|
|
110
|
+
</article>
|
|
111
|
+
</div>
|
|
112
|
+
</section>
|
|
113
|
+
|
|
114
|
+
<section class="section">
|
|
115
|
+
<p class="section-kicker">Một lượt ở chế độ công ty</p>
|
|
116
|
+
<h2 id="mot-luot">Từ tin nhắn tới "Check đã qua · Review không có lỗi chặn"</h2>
|
|
117
|
+
<div class="steps">
|
|
118
|
+
<article class="step"><div><h3>Bạn nhắn việc cần làm</h3><p>Viết như nói với đồng nghiệp, chọn model <span class="inline-code">agent-watch-auto</span> trong nhóm Công ty.</p></div></article>
|
|
119
|
+
<article class="step"><div><h3>Studio cấp một lượt</h3><p>Agent Watch xin quyền ngắn hạn; Studio chọn model cho agent chính theo Harness của team.</p></div></article>
|
|
120
|
+
<article class="step"><div><h3>Agent làm trong sandbox</h3><p>Đọc, sửa và chạy lệnh trong project, không có mạng. Cần mạng thì xin bạn duyệt đúng một lệnh.</p></div></article>
|
|
121
|
+
<article class="step"><div><h3>Harness kiểm tra</h3><p>Chưa có check nào qua trên code cuối thì yêu cầu chạy; rồi một subagent review bản sửa. Lỗi chặn được gửi lại cho agent, tối đa số vòng team đặt.</p></div></article>
|
|
122
|
+
<article class="step"><div><h3>Kết quả ghi dưới câu trả lời</h3><p>Ví dụ "Check đã qua trên code cuối · Review không có lỗi chặn". Bạn có thể Dừng bất cứ lúc nào và Tiếp tục sau.</p></div></article>
|
|
123
|
+
</div>
|
|
124
|
+
<figure class="shot">
|
|
125
|
+
<img src="/assets/shots/company-review-running.jpg" alt="Đang review: thanh trên ghi Subagent 1/2, nút Dừng vẫn còn" loading="lazy" width="1600" height="1000">
|
|
126
|
+
<figcaption>Lúc review đang chạy: thanh trên ghi Subagent 1/2, cột Workspace ghi 1/2 đang chạy, nút Dừng vẫn hoạt động.</figcaption>
|
|
127
|
+
</figure>
|
|
128
|
+
</section>
|
|
129
|
+
|
|
130
|
+
<section class="section">
|
|
131
|
+
<p class="section-kicker">Chọn chế độ</p>
|
|
132
|
+
<h2 id="chon-che-do">Khi nào dùng cá nhân, khi nào dùng công ty</h2>
|
|
133
|
+
<div class="table-wrap"><table>
|
|
134
|
+
<thead><tr><th></th><th>Cá nhân</th><th>Công ty</th></tr></thead>
|
|
135
|
+
<tbody>
|
|
136
|
+
<tr><td>Model</td><td>Tài khoản bạn đăng nhập (Codex, Claude, Copilot…)</td><td>Model công ty chọn trong Studio, theo vai</td></tr>
|
|
137
|
+
<tr><td>Key</td><td>Do Pi quản lý trên máy bạn</td><td>Nằm trên máy chủ và trong Keychain, không vào project</td></tr>
|
|
138
|
+
<tr><td>Kiểm tra</td><td>Guard; bạn quyết định khi nào chạy test</td><td>Guard, sandbox, và Harness tự yêu cầu check, review</td></tr>
|
|
139
|
+
<tr><td>Mạng khi chạy lệnh</td><td>Như trên máy bạn; push và publish chờ duyệt</td><td>Tắt; mở cho đúng một lệnh khi bạn duyệt</td></tr>
|
|
140
|
+
<tr><td>Chi phí</td><td>Theo gói của bạn</td><td>Theo ngân sách công ty, xem usage trong Studio</td></tr>
|
|
141
|
+
</tbody>
|
|
142
|
+
</table></div>
|
|
143
|
+
<div class="callout ok-callout"><strong>Bắt đầu</strong><p>Cá nhân: cài theo <a href="/quickstart">Quickstart</a> rồi chạy <span class="inline-code">piagent dashboard</span>. Công ty: mở Agent Watch, tab Studio, kết nối key và nhập cấu hình cho Piagent; model <span class="inline-code">agent-watch-auto</span> sẽ có trong nhóm Công ty.</p></div>
|
|
144
|
+
</section>
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
</div>
|
|
22
22
|
<div class="grid cols-3">
|
|
23
23
|
<article class="card"><h3>Context planner</h3><p><span class="inline-code">runtime/context/adaptive-planner.ts</span> chooses budget, retrieval lane, code inclusion, and a plan receipt from phase, context pressure, model capability, and thinking level.</p></article>
|
|
24
|
-
<article class="card"><h3>
|
|
24
|
+
<article class="card"><h3>Earlier task history</h3><p><span class="inline-code">extensions/task-journal.js</span> still reads checkpoints of tasks created before 1.9.0 for review; new sessions no longer write tasks.</p></article>
|
|
25
25
|
<article class="card"><h3>Repository memory</h3><p><span class="inline-code">extensions/repository-memory.js</span> stores only cited, expiring facts and rejects raw prompts, outputs, OAuth material, API keys, and secrets. Hints use only unused context-plan budget.</p></article>
|
|
26
26
|
<article class="card"><h3>Model capability</h3><p><span class="inline-code">runtime/model/capabilities.ts</span> reads model family, context window, and thinking level as budget signals without switching providers or requiring API keys.</p></article>
|
|
27
27
|
<article class="card"><h3>Verification intelligence</h3><p><span class="inline-code">extensions/verification-intelligence.js</span> classifies failures and chooses a targeted verifier from task scope; mixed frontend/backend scope uses the full source verifier.</p></article>
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
<div class="callout">
|
|
2
|
+
<strong>Historical figures</strong>
|
|
3
|
+
<p>This measurement ran on v1.6.0, when sessions still used the task contract and workflow commands. Release 1.9.0 works from plain-language requests and has not been measured again; do not read the figures below as 1.9.0 results.</p>
|
|
4
|
+
</div>
|
|
5
|
+
|
|
1
6
|
<section class="benchmark-summary" aria-labelledby="benchmark-verdict">
|
|
2
7
|
<div class="benchmark-verdict">
|
|
3
8
|
<div>
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
<div class="grid cols-2">
|
|
3
3
|
<article class="card">
|
|
4
4
|
<h3 id="session-basics">Session basics</h3>
|
|
5
|
-
<div class="tag-list"><span class="tag">/login</span><span class="tag">/model</span><span class="tag">/
|
|
6
|
-
<p>Set up a session, select a model, inspect profile, usage, or orchestration state, and decide whether
|
|
5
|
+
<div class="tag-list"><span class="tag">/login</span><span class="tag">/model</span><span class="tag">/piagent-status</span><span class="tag">/piagent-inspector</span><span class="tag">/piagent-orchestration</span><span class="tag">/usage</span><span class="tag">/usage efficiency</span><span class="tag">/task-preflight</span><span class="tag">/context preflight</span><span class="tag">/name</span><span class="tag">/new</span><span class="tag">/session</span></div>
|
|
6
|
+
<p>Set up a session, select a model, inspect profile, usage, or orchestration state, and decide whether large work needs a new session (<span class="inline-code">/new</span>).</p>
|
|
7
7
|
</article>
|
|
8
8
|
<article class="card">
|
|
9
9
|
<h3 id="project-profile">Project profile</h3>
|
|
@@ -11,19 +11,19 @@
|
|
|
11
11
|
<p>Apply a profile directly or use a deterministic selector for the profile and tech stack. Output stays compact and does not require model interpretation.</p>
|
|
12
12
|
</article>
|
|
13
13
|
<article class="card">
|
|
14
|
-
<h3 id="implementation-workflow">
|
|
15
|
-
<div class="tag-list"><span class="tag"
|
|
16
|
-
<p>
|
|
14
|
+
<h3 id="implementation-workflow">Assigning work</h3>
|
|
15
|
+
<div class="tag-list"><span class="tag">plain language</span><span class="tag">read-only, do not edit</span><span class="tag">plan first</span><span class="tag">review the diff</span></div>
|
|
16
|
+
<p>Since 1.9.0 there is no <span class="inline-code">/workflow</span>, <span class="inline-code">/task</span> or task contract: say what you need in plain language; the guard checks every tool call.</p>
|
|
17
17
|
</article>
|
|
18
18
|
<article class="card">
|
|
19
19
|
<h3 id="git-handoff">Git handoff</h3>
|
|
20
|
-
<div class="tag-list"><span class="tag"
|
|
21
|
-
<p>There is no <span class="inline-code">/git</span> namespace.
|
|
20
|
+
<div class="tag-list"><span class="tag">commit in plain language</span><span class="tag">draft PR in plain language</span><span class="tag">git status</span><span class="tag">git diff</span></div>
|
|
21
|
+
<p>There is no <span class="inline-code">/git</span> namespace. Commits and PRs are ordinary requests; pushes, GitHub writes and broad staging such as <span class="inline-code">git add -A</span> require confirmation.</p>
|
|
22
22
|
</article>
|
|
23
23
|
<article class="card">
|
|
24
|
-
<h3 id="fresh-sessions">
|
|
25
|
-
<div class="tag-list"><span class="tag">/
|
|
26
|
-
<p>Start a clean
|
|
24
|
+
<h3 id="fresh-sessions">New sessions</h3>
|
|
25
|
+
<div class="tag-list"><span class="tag">/new</span><span class="tag">/compact</span></div>
|
|
26
|
+
<p>Start a clean session when the current context is heavy or belongs to different work (<span class="inline-code">/fresh</span> was retired in 1.9.0).</p>
|
|
27
27
|
</article>
|
|
28
28
|
<article class="card">
|
|
29
29
|
<h3 id="mcp">MCP</h3>
|
|
@@ -49,9 +49,9 @@
|
|
|
49
49
|
<p>Inspect intent, risk, scope, runtime, solver route, phases, tool and helper recommendations, backend, approvals, and blockers before starting.</p>
|
|
50
50
|
</article>
|
|
51
51
|
<article class="command-card">
|
|
52
|
-
<header><span>
|
|
52
|
+
<header><span>Session status</span><button class="clip-btn" data-clip="/piagent-status">Copy</button></header>
|
|
53
53
|
<pre><code>/piagent-status</code></pre>
|
|
54
|
-
<p>
|
|
54
|
+
<p>The session's profile, guard, runtime and model. It changes no file, reruns no check and starts no model turn.</p>
|
|
55
55
|
</article>
|
|
56
56
|
<article class="command-card">
|
|
57
57
|
<header><span>Activity, diff, and context</span><button class="clip-btn" data-clip="/piagent-inspector">Copy</button></header>
|
|
@@ -71,6 +71,23 @@
|
|
|
71
71
|
</div>
|
|
72
72
|
<div class="callout">
|
|
73
73
|
<strong>Sourced diffs, no token estimates.</strong>
|
|
74
|
-
<p>The footer panel uses observed
|
|
74
|
+
<p>The footer panel uses the files observed in the session for fast updates; the <span class="inline-code">files</span> view computes the exact snapshot delta and marks <span class="inline-code">mixed-working-tree</span> when a turn touches a file that was already dirty. Pi exposes model usage by turn and session, so per-built-in-tool tokens remain unavailable.</p>
|
|
75
|
+
</div>
|
|
76
|
+
</section>
|
|
77
|
+
|
|
78
|
+
<section class="section">
|
|
79
|
+
<p class="section-kicker">Optional skills and packages</p>
|
|
80
|
+
<h2 id="skills-and-packages">Audit test quality, run experiment loops</h2>
|
|
81
|
+
<div class="command-grid">
|
|
82
|
+
<article class="command-card">
|
|
83
|
+
<header><span>Test audit</span><button class="clip-btn" data-clip="/skill:test-audit audit the tests of the billing module">Copy</button></header>
|
|
84
|
+
<pre><code>/skill:test-audit audit the tests of the billing module</code></pre>
|
|
85
|
+
<p>The <span class="inline-code">test-audit</span> skill ships with Piagent: it stops new tests that protect no behavior and finds duplicated tests, tests tied to the implementation, and code that exists only for tests. The agent uses it when writing or changing tests; run the command to sweep a whole area.</p>
|
|
86
|
+
</article>
|
|
87
|
+
<article class="command-card">
|
|
88
|
+
<header><span>Experiment loop</span><button class="clip-btn" data-clip="git switch -c experiment/test-speed">Copy</button></header>
|
|
89
|
+
<pre><code>git switch -c experiment/test-speed</code></pre>
|
|
90
|
+
<p>If you add a package with an automatic experiment loop (<span class="inline-code">run_experiment</span>, <span class="inline-code">log_experiment</span>): the guard checks each experiment command like any shell command, and lets the loop run only on an <span class="inline-code">experiment/</span> branch or a worktree of its own, started with nothing uncommitted, because every dropped idea erases all uncommitted changes.</p>
|
|
91
|
+
</article>
|
|
75
92
|
</div>
|
|
76
93
|
</section>
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<section class="section">
|
|
2
|
+
<p class="section-kicker">The whole picture</p>
|
|
3
|
+
<h2 id="overview">One dashboard, two ways to use models</h2>
|
|
4
|
+
<p class="section-lead">Piagent runs on each member's machine. In personal mode it uses your own model account. In company mode it goes through Agent Watch on your Mac and the company's Agent Studio: the company holds the keys, chooses the models and sets the checks for the whole team.</p>
|
|
5
|
+
<figure class="diagram">
|
|
6
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1120 560" role="img" aria-labelledby="eco-title eco-desc" class="eco-diagram">
|
|
7
|
+
<title id="eco-title">The Piagent ecosystem</title>
|
|
8
|
+
<desc id="eco-desc">Each member's machine runs Piagent (Terminal and Dashboard) with a guard that checks every tool call. Personal mode calls models with the member's own account. Company mode goes through Agent Watch, which keeps the key in Keychain, and the company's Agent Studio, which picks the models and the Harness for every turn.</desc>
|
|
9
|
+
<defs>
|
|
10
|
+
<marker id="eco-arrow" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#8be9c8"/></marker>
|
|
11
|
+
<marker id="eco-arrow-lime" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse"><path d="M0 0 L10 5 L0 10 z" fill="#d8ff7a"/></marker>
|
|
12
|
+
</defs>
|
|
13
|
+
<style>
|
|
14
|
+
.eco-box { fill: #101114; stroke: #2c2f37; stroke-width: 1.5; }
|
|
15
|
+
.eco-zone { fill: rgba(255,255,255,0.015); stroke: #24262d; stroke-width: 1.2; stroke-dasharray: 6 6; }
|
|
16
|
+
.eco-h { fill: #f4f4ef; font: 600 17px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
17
|
+
.eco-t { fill: #a4a6ad; font: 400 13.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
18
|
+
.eco-k { fill: #71747d; font: 600 12px "Be Vietnam Pro", system-ui, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
|
|
19
|
+
.eco-chip { fill: rgba(216,255,122,0.08); stroke: rgba(216,255,122,0.35); }
|
|
20
|
+
.eco-chip-t { fill: #d8ff7a; font: 600 12.5px "JetBrains Mono", ui-monospace, monospace; }
|
|
21
|
+
.eco-line { stroke: #8be9c8; stroke-width: 1.8; fill: none; }
|
|
22
|
+
.eco-line-lime { stroke: #d8ff7a; stroke-width: 1.8; fill: none; stroke-dasharray: 7 6; }
|
|
23
|
+
.eco-label { fill: #8be9c8; font: 500 12.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
24
|
+
.eco-label-lime { fill: #d8ff7a; font: 500 12.5px "Be Vietnam Pro", system-ui, sans-serif; }
|
|
25
|
+
</style>
|
|
26
|
+
<rect class="eco-zone" x="16" y="16" width="420" height="528" rx="22"/>
|
|
27
|
+
<text class="eco-k" x="40" y="48">Member's machine</text>
|
|
28
|
+
<rect class="eco-box" x="40" y="68" width="372" height="96" rx="16"/>
|
|
29
|
+
<text class="eco-h" x="62" y="102">Piagent · Terminal and Dashboard</text>
|
|
30
|
+
<text class="eco-t" x="62" y="128">Ask in plain language; one history</text>
|
|
31
|
+
<text class="eco-t" x="62" y="148">in Terminal (pi) and the browser.</text>
|
|
32
|
+
<rect class="eco-box" x="40" y="184" width="372" height="116" rx="16"/>
|
|
33
|
+
<text class="eco-h" x="62" y="218">Guard</text>
|
|
34
|
+
<text class="eco-t" x="62" y="244">Checks every tool call: protected files,</text>
|
|
35
|
+
<text class="eco-t" x="62" y="264">permissions, oversized files, stale edits;</text>
|
|
36
|
+
<text class="eco-t" x="62" y="284">push, publish, network wait for approval.</text>
|
|
37
|
+
<rect class="eco-box" x="40" y="320" width="372" height="96" rx="16"/>
|
|
38
|
+
<text class="eco-h" x="62" y="354">Company-mode sandbox</text>
|
|
39
|
+
<text class="eco-t" x="62" y="380">Commands run without network, Keychain,</text>
|
|
40
|
+
<text class="eco-t" x="62" y="400">.env or SSH keys; network per approval.</text>
|
|
41
|
+
<rect class="eco-chip" x="40" y="440" width="176" height="34" rx="17"/>
|
|
42
|
+
<text class="eco-chip-t" x="58" y="462">piagent dashboard</text>
|
|
43
|
+
<rect class="eco-chip" x="226" y="440" width="186" height="34" rx="17"/>
|
|
44
|
+
<text class="eco-chip-t" x="244" y="462">piagent studio --web</text>
|
|
45
|
+
<rect class="eco-chip" x="40" y="486" width="76" height="34" rx="17"/>
|
|
46
|
+
<text class="eco-chip-t" x="64" y="508">pi</text>
|
|
47
|
+
<rect class="eco-chip" x="126" y="486" width="186" height="34" rx="17"/>
|
|
48
|
+
<text class="eco-chip-t" x="144" y="508">piagent-doctor</text>
|
|
49
|
+
<rect class="eco-box" x="500" y="68" width="250" height="96" rx="18"/>
|
|
50
|
+
<text class="eco-h" x="522" y="102">Personal models</text>
|
|
51
|
+
<text class="eco-t" x="522" y="128">Signed in with your own</text>
|
|
52
|
+
<text class="eco-t" x="522" y="148">account: Codex, Claude, Copilot…</text>
|
|
53
|
+
<rect class="eco-box" x="500" y="184" width="250" height="232" rx="18"/>
|
|
54
|
+
<text class="eco-k" x="522" y="216">macOS app</text>
|
|
55
|
+
<text class="eco-h" x="522" y="244">Agent Watch</text>
|
|
56
|
+
<text class="eco-t" x="522" y="272">Keeps the company key in</text>
|
|
57
|
+
<text class="eco-t" x="522" y="292">Keychain; imports the</text>
|
|
58
|
+
<text class="eco-t" x="522" y="312">configuration for Piagent;</text>
|
|
59
|
+
<text class="eco-t" x="522" y="332">short-lived authority per turn.</text>
|
|
60
|
+
<text class="eco-t" x="522" y="364">The model never sees</text>
|
|
61
|
+
<text class="eco-t" x="522" y="384">the key.</text>
|
|
62
|
+
<rect class="eco-zone" x="800" y="16" width="304" height="528" rx="22"/>
|
|
63
|
+
<text class="eco-k" x="824" y="48">Company server</text>
|
|
64
|
+
<rect class="eco-box" x="824" y="68" width="256" height="300" rx="18"/>
|
|
65
|
+
<text class="eco-h" x="846" y="102">Agent Studio</text>
|
|
66
|
+
<text class="eco-t" x="846" y="132">Members, keys, budgets</text>
|
|
67
|
+
<text class="eco-t" x="846" y="152">and daily usage.</text>
|
|
68
|
+
<text class="eco-t" x="846" y="186">The team's Harness:</text>
|
|
69
|
+
<text class="eco-label-lime" x="846" y="210">plan · checks · review</text>
|
|
70
|
+
<text class="eco-t" x="846" y="244">A model for each role:</text>
|
|
71
|
+
<text class="eco-label-lime" x="846" y="268">main · research · review</text>
|
|
72
|
+
<text class="eco-t" x="846" y="302">Each role its own model,</text>
|
|
73
|
+
<text class="eco-t" x="846" y="322">reasoning set by the Harness.</text>
|
|
74
|
+
<rect class="eco-box" x="824" y="392" width="256" height="128" rx="18"/>
|
|
75
|
+
<text class="eco-h" x="846" y="426">Company models</text>
|
|
76
|
+
<text class="eco-t" x="846" y="454">Claude, GPT, DeepSeek, Kimi,</text>
|
|
77
|
+
<text class="eco-t" x="846" y="474">GLM, Qwen… on company keys;</text>
|
|
78
|
+
<text class="eco-t" x="846" y="494">keys stay on the server.</text>
|
|
79
|
+
<path class="eco-line" d="M412 300 L 500 300" marker-end="url(#eco-arrow)"/>
|
|
80
|
+
<text class="eco-label" x="424" y="290">company</text>
|
|
81
|
+
<path class="eco-line" d="M750 300 C 790 300, 790 220, 824 220" marker-end="url(#eco-arrow)"/>
|
|
82
|
+
<text class="eco-label" x="748" y="348">one turn</text>
|
|
83
|
+
<path class="eco-line" d="M952 368 L952 392" marker-end="url(#eco-arrow)"/>
|
|
84
|
+
<path class="eco-line-lime" d="M412 116 L 500 116" marker-end="url(#eco-arrow-lime)"/>
|
|
85
|
+
<text class="eco-label-lime" x="420" y="106">personal</text>
|
|
86
|
+
</svg>
|
|
87
|
+
<figcaption class="diagram-hint">Swipe sideways to see the whole diagram.</figcaption>
|
|
88
|
+
</figure>
|
|
89
|
+
</section>
|
|
90
|
+
|
|
91
|
+
<section class="section">
|
|
92
|
+
<p class="section-kicker">Parts</p>
|
|
93
|
+
<h2 id="parts">Each part does one job</h2>
|
|
94
|
+
<div class="grid cols-2">
|
|
95
|
+
<article class="card">
|
|
96
|
+
<h3 id="piagent">Piagent</h3>
|
|
97
|
+
<p>The coding agent in Terminal (<span class="inline-code">pi</span>) and in the browser (<span class="inline-code">piagent dashboard</span>). Both share one history: start in Terminal, follow it in the browser.</p>
|
|
98
|
+
</article>
|
|
99
|
+
<article class="card">
|
|
100
|
+
<h3 id="guard">Guard</h3>
|
|
101
|
+
<p>Checks every tool call before it runs: protected files such as <span class="inline-code">.env</span>, permission profiles, oversized files, edits on a stale read. Push, publish and network commands wait for your one-time approval.</p>
|
|
102
|
+
</article>
|
|
103
|
+
<article class="card">
|
|
104
|
+
<h3 id="agent-watch">Agent Watch</h3>
|
|
105
|
+
<p>A macOS app that keeps the company key in Keychain and imports the configuration for Piagent. Each turn gets short-lived authority; the model and its commands never read the key.</p>
|
|
106
|
+
</article>
|
|
107
|
+
<article class="card">
|
|
108
|
+
<h3 id="agent-studio">Agent Studio</h3>
|
|
109
|
+
<p>The company server: members, keys, budgets, daily usage and the team's Harness. Studio picks the model for each role (main, research, review) and the reasoning level.</p>
|
|
110
|
+
</article>
|
|
111
|
+
</div>
|
|
112
|
+
</section>
|
|
113
|
+
|
|
114
|
+
<section class="section">
|
|
115
|
+
<p class="section-kicker">One company turn</p>
|
|
116
|
+
<h2 id="one-turn">From a message to "A check passed · Review found no blocking issue"</h2>
|
|
117
|
+
<div class="steps">
|
|
118
|
+
<article class="step"><div><h3>You write the request</h3><p>In plain language, with <span class="inline-code">agent-watch-auto</span> from the Company group.</p></div></article>
|
|
119
|
+
<article class="step"><div><h3>Studio grants one run</h3><p>Agent Watch asks for short-lived authority; Studio picks the main agent's model from the team's Harness.</p></div></article>
|
|
120
|
+
<article class="step"><div><h3>The agent works in a sandbox</h3><p>It reads, edits and runs commands in the project without network. When a command needs the internet it asks you to approve that one command.</p></div></article>
|
|
121
|
+
<article class="step"><div><h3>The Harness checks</h3><p>If no check passed on the final code it asks for one; then a subagent reviews the change. Blocking findings go back to the agent, up to the rounds the team set.</p></div></article>
|
|
122
|
+
<article class="step"><div><h3>The outcome sits under the answer</h3><p>For example "A check passed on the final code · Review found no blocking issue". Stop at any time and Continue later.</p></div></article>
|
|
123
|
+
</div>
|
|
124
|
+
<figure class="shot">
|
|
125
|
+
<img src="/assets/shots/company-review-running.jpg" alt="During the review: the header shows Subagent 1/2 and Stop is still available" loading="lazy" width="1600" height="1000">
|
|
126
|
+
<figcaption>While the review runs: the header shows Subagent 1/2, the Workspace column shows 1/2 running, and Stop still works.</figcaption>
|
|
127
|
+
</figure>
|
|
128
|
+
</section>
|
|
129
|
+
|
|
130
|
+
<section class="section">
|
|
131
|
+
<p class="section-kicker">Choosing a mode</p>
|
|
132
|
+
<h2 id="choose">When to use personal, when to use company</h2>
|
|
133
|
+
<div class="table-wrap"><table>
|
|
134
|
+
<thead><tr><th></th><th>Personal</th><th>Company</th></tr></thead>
|
|
135
|
+
<tbody>
|
|
136
|
+
<tr><td>Models</td><td>The account you signed in with (Codex, Claude, Copilot…)</td><td>Chosen by the company in Studio, per role</td></tr>
|
|
137
|
+
<tr><td>Keys</td><td>Managed by Pi on your machine</td><td>On the server and in Keychain, never in the project</td></tr>
|
|
138
|
+
<tr><td>Checks</td><td>The guard; you decide when to run tests</td><td>The guard, the sandbox, and the Harness asking for checks and a review</td></tr>
|
|
139
|
+
<tr><td>Network for commands</td><td>As on your machine; push and publish wait for approval</td><td>Off; opened for one command when you approve it</td></tr>
|
|
140
|
+
<tr><td>Cost</td><td>Your plan</td><td>The company budget, with usage in Studio</td></tr>
|
|
141
|
+
</tbody>
|
|
142
|
+
</table></div>
|
|
143
|
+
<div class="callout ok-callout"><strong>Getting started</strong><p>Personal: install with the <a href="/en/quickstart">Quickstart</a>, then run <span class="inline-code">piagent dashboard</span>. Company: open Agent Watch, the Studio tab, connect the key and import the configuration for Piagent; <span class="inline-code">agent-watch-auto</span> then appears in the Company group.</p></div>
|
|
144
|
+
</section>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<section class="hero">
|
|
2
|
-
<p class="eyebrow">
|
|
3
|
-
<h1>A
|
|
2
|
+
<p class="eyebrow">Piagent 1.9.1</p>
|
|
3
|
+
<h1>A coding agent for the whole team, checked at every step.</h1>
|
|
4
4
|
<p>
|
|
5
|
-
|
|
5
|
+
One dashboard for Terminal and the browser. Use models with your own account, or the company's models through Agent Watch and Agent Studio. The guard checks every tool call; in company mode the team's Harness asks for checks, has a subagent review the change and reports the outcome right under the answer.
|
|
6
6
|
</p>
|
|
7
7
|
<div class="owner-strip" aria-label="Project information">
|
|
8
8
|
<span class="owner-label">Project links</span>
|
|
@@ -12,14 +12,24 @@
|
|
|
12
12
|
</div>
|
|
13
13
|
<div class="hero-actions">
|
|
14
14
|
<a class="button primary" href="/en/quickstart">Get started</a>
|
|
15
|
-
<a class="button" href="/en/
|
|
15
|
+
<a class="button" href="/en/ecosystem">Ecosystem</a>
|
|
16
|
+
<a class="button" href="/en/whats-new">What’s new in 1.9.1</a>
|
|
16
17
|
<a class="button" href="/en/commands">View commands</a>
|
|
17
|
-
<a class="button" href="/en/mcp">MCP</a>
|
|
18
18
|
</div>
|
|
19
19
|
</section>
|
|
20
20
|
|
|
21
21
|
<section class="section">
|
|
22
|
-
<p class="section-kicker">
|
|
22
|
+
<p class="section-kicker">Release 1.9.0</p>
|
|
23
|
+
<h2 id="release-1-9-0">One company-mode turn</h2>
|
|
24
|
+
<p class="section-lead">You write the request. The agent reads, edits and runs the tests in a sandbox; a subagent reviews the change; the last line states the outcome. 13 of 13 live scenarios pass on the final install, and 27 of 27 browser tests.</p>
|
|
25
|
+
<figure class="shot">
|
|
26
|
+
<img src="/assets/shots/company-run-done.jpg" alt="Piagent dashboard: a company-mode turn with read, edit and test steps and the line A check passed on the final code, Review found no blocking issue" width="1600" height="1000">
|
|
27
|
+
<figcaption>The Piagent dashboard in company mode. See the whole picture in <a href="/en/ecosystem">Ecosystem</a> and every change in <a href="/en/whats-new">What’s new</a>.</figcaption>
|
|
28
|
+
</figure>
|
|
29
|
+
</section>
|
|
30
|
+
|
|
31
|
+
<section class="section">
|
|
32
|
+
<p class="section-kicker">Production V1 · historical evidence from v1.6.0</p>
|
|
23
33
|
<h2 id="evidence">Measured, not asserted</h2>
|
|
24
34
|
<p class="section-lead">Release-bound run <code>production-v1-20260824T040017Z-05b7cf</code> measured 108 sessions on GPT-5.6 Luna Medium at tag <code>v1.6.0</code>, exact commit <code>3bba8f0b3ff521bc2a355e1f6bef6d1bbdc09511</code>, with Piagent compared against <code>codex-cli</code>.</p>
|
|
25
35
|
|
|
@@ -79,14 +89,19 @@ piagent-setup</code></pre>
|
|
|
79
89
|
<h2 id="where-to-start">Where to start</h2>
|
|
80
90
|
<div class="card-grid">
|
|
81
91
|
<a class="doc-card" href="/en/whats-new">
|
|
82
|
-
<span class="card-kicker">
|
|
92
|
+
<span class="card-kicker">Release 1.9.1</span>
|
|
83
93
|
<h3>What’s new</h3>
|
|
84
|
-
<p>
|
|
94
|
+
<p>Scout and verify subagents and web search for every role through the search pool; earlier in 1.9.0: plain-language requests and the team's Harness.</p>
|
|
95
|
+
</a>
|
|
96
|
+
<a class="doc-card" href="/en/ecosystem">
|
|
97
|
+
<span class="card-kicker">Get started</span>
|
|
98
|
+
<h3>Ecosystem</h3>
|
|
99
|
+
<p>Piagent, Agent Watch and Agent Studio: what runs where, and when to use personal or company mode.</p>
|
|
85
100
|
</a>
|
|
86
101
|
<a class="doc-card" href="/en/quickstart">
|
|
87
102
|
<span class="card-kicker">Get started</span>
|
|
88
103
|
<h3>Quickstart</h3>
|
|
89
|
-
<p>Install, open a repository,
|
|
104
|
+
<p>Install, open a repository, choose its profile and permissions, then make the first request in plain language.</p>
|
|
90
105
|
</a>
|
|
91
106
|
<a class="doc-card" href="/en/scope">
|
|
92
107
|
<span class="card-kicker">Get started</span>
|
|
@@ -47,12 +47,11 @@ pi</code></pre>
|
|
|
47
47
|
|
|
48
48
|
<article class="step">
|
|
49
49
|
<div>
|
|
50
|
-
<h3 id="onboard-context">
|
|
51
|
-
<p>
|
|
50
|
+
<h3 id="onboard-context">Let the agent read the project</h3>
|
|
51
|
+
<p>In a new repository, ask the agent to read the project (read-only) and record its project context under <span class="inline-code">.pi/</span>. No separate command: plain language is enough.</p>
|
|
52
52
|
<div class="command-card">
|
|
53
|
-
<header><span>
|
|
54
|
-
<pre><code
|
|
55
|
-
/onboard run</code></pre>
|
|
53
|
+
<header><span>Read the project</span><button class="clip-btn" data-clip="Inspect this project read-only and record its project context.">Copy</button></header>
|
|
54
|
+
<pre><code>Inspect this project read-only and record its project context.</code></pre>
|
|
56
55
|
</div>
|
|
57
56
|
</div>
|
|
58
57
|
</article>
|
|
@@ -84,20 +83,19 @@ pi</code></pre>
|
|
|
84
83
|
<article class="step">
|
|
85
84
|
<div>
|
|
86
85
|
<h3 id="run-workflow">Run a workflow</h3>
|
|
87
|
-
<p>
|
|
86
|
+
<p>State the work and the intent (edit, read-only, plan first) in plain language. Start a new session with <span class="inline-code">/new</span> for context-heavy work.</p>
|
|
88
87
|
<div class="command-card">
|
|
89
|
-
<header><span>
|
|
90
|
-
<pre><code
|
|
91
|
-
|
|
92
|
-
/fresh task Implement the requested bounded change.</code></pre>
|
|
88
|
+
<header><span>Assign work</span><button class="clip-btn" data-clip="Implement the requested change and run the project tests. Review the current diff. Read-only.">Copy</button></header>
|
|
89
|
+
<pre><code>Implement the requested change and run the project tests.
|
|
90
|
+
Review the current diff. Read-only.</code></pre>
|
|
93
91
|
</div>
|
|
94
92
|
</div>
|
|
95
93
|
</article>
|
|
96
94
|
|
|
97
95
|
<article class="step">
|
|
98
96
|
<div>
|
|
99
|
-
<h3 id="verify-before-handoff">
|
|
100
|
-
<p>
|
|
97
|
+
<h3 id="verify-before-handoff">Check before you hand over</h3>
|
|
98
|
+
<p>Ask the agent to run the project's checks (tests, type check, build) and read the real output; in company mode the Harness asks for this itself. After pinning or upgrading a version, run doctor in the project:</p>
|
|
101
99
|
<div class="command-card">
|
|
102
100
|
<header><span>Doctor</span><button class="clip-btn" data-clip="piagent-doctor">Copy</button></header>
|
|
103
101
|
<pre><code>piagent-doctor</code></pre>
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<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>
|
|
6
6
|
<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>
|
|
7
7
|
<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>
|
|
8
|
-
<article class="card"><h3 id="verify-evidence">
|
|
8
|
+
<article class="card"><h3 id="verify-evidence">Real checks</h3><p>In company mode the Harness only counts a check that actually ran and passed on the final code; saying “tested” is not enough.</p></article>
|
|
9
9
|
</div>
|
|
10
10
|
|
|
11
11
|
<div class="callout">
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<section class="section">
|
|
2
2
|
<div class="split">
|
|
3
|
-
<article class="card"><h3 id="do">Do</h3><p>
|
|
3
|
+
<article class="card"><h3 id="do">Do</h3><p>Ask the agent to read the project and record its context, apply <span class="inline-code">/profile auto</span>, assign work in plain language, run real checks, and state blockers clearly.</p></article>
|
|
4
4
|
<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>
|
|
5
5
|
</div>
|
|
6
6
|
<div class="callout ok-callout">
|
|
7
|
-
<strong>
|
|
7
|
+
<strong>The final answer</strong>
|
|
8
8
|
<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>
|
|
9
9
|
</div>
|
|
10
10
|
<div class="callout">
|