@piagent/platform 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +7 -0
- package/CHANGELOG.md +97 -1
- 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 +2 -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 +77 -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 +77 -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 +85 -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 +85 -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/compaction.mjs +63 -0
- package/packages/piagent-core/managed/doctor.mjs +107 -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 +129 -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 +472 -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 +243 -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 +96 -0
- package/packages/piagent-core/managed/workflow.mjs +299 -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 +164 -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-Dd9wPk-v.js} +1 -1
- package/packages/piagent-webui/dist/client/assets/index-7I-50Q2U.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/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/team-doctor.sh +20 -1
- package/scripts/typescript-loader.mjs +6 -0
- package/scripts/verify-local.sh +2 -2
- package/templates/global/settings.json +3 -1
- package/templates/project/.pi/project-context.md +3 -3
- package/templates/project/AGENTS.md +4 -5
- package/docs/piagent-core-reasoning-research-2026-09-06.md +0 -225
- package/docs/piagent-core-research-sources-2026-09-06.json +0 -416
- package/packages/piagent-webui/dist/client/assets/index-Cui9AAV_.js +0 -176
|
@@ -1,3 +1,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.0</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.0</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.0</span>
|
|
83
93
|
<h3>What’s new</h3>
|
|
84
|
-
<p>
|
|
94
|
+
<p>Plain-language requests, the team's Harness, network commands on approval, Stop for the whole turn and clearer approval cards.</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">
|
|
@@ -1,3 +1,79 @@
|
|
|
1
|
+
<section class="section">
|
|
2
|
+
<p class="section-kicker">v1.9.0 · 2026-10-02</p>
|
|
3
|
+
<h2 id="v1-9-0">Ask in plain language; the team's Harness does the checking</h2>
|
|
4
|
+
<p class="section-lead">The task contract and the workflow commands are gone: you ask as you would ask a colleague, and the guard still checks every tool call. Company mode runs through Agent Studio and Agent Watch; its Harness asks for checks, has a subagent review the change and sends blocking findings back to the agent. See <a href="/en/ecosystem">Ecosystem</a>.</p>
|
|
5
|
+
|
|
6
|
+
<div class="benchmark-metrics" aria-label="Release 1.9.0 verification figures">
|
|
7
|
+
<div class="benchmark-metric"><span>Live scenarios</span><strong>13/13</strong><small>9 personal, 4 company, on the final install</small></div>
|
|
8
|
+
<div class="benchmark-metric"><span>Automated tests</span><strong>5,800+</strong><small>unit, integration and security; 0 failures</small></div>
|
|
9
|
+
<div class="benchmark-metric"><span>Browser tests</span><strong>27/27</strong><small>dashboard and WebUI on Chromium</small></div>
|
|
10
|
+
<div class="benchmark-metric"><span>Smaller guard</span><strong>−854 lines</strong><small>code that only served the task contract (4993 → 4139)</small></div>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
<figure class="shot">
|
|
14
|
+
<img src="/assets/shots/company-run-done.jpg" alt="A company-mode turn: the agent changes code and runs the tests; A check passed and Review found no blocking issue are written under the answer" loading="lazy" width="1600" height="1000">
|
|
15
|
+
<figcaption>A company-mode turn: the agent changes code and runs the tests, a subagent reviews the change, and the outcome is written right under the answer.</figcaption>
|
|
16
|
+
</figure>
|
|
17
|
+
|
|
18
|
+
<div class="grid cols-3">
|
|
19
|
+
<article class="card"><h3 id="freeform">Plain-language requests</h3><p>No more <span class="inline-code">/workflow</span>, <span class="inline-code">/fresh</span>, <span class="inline-code">/onboard</span> or task contract. The guard still blocks protected files and checks permission profiles, oversized files and stale edits, and asks you before a push or publish.</p></article>
|
|
20
|
+
<article class="card"><h3 id="harness">The team's Harness</h3><p>Studio decides whether each turn suggests or requires a plan, checks and a review. A separate subagent reviews; blocking findings go back to the agent within the team's fix rounds.</p></article>
|
|
21
|
+
<article class="card"><h3 id="network">Network on approval</h3><p>Company-mode commands run without network. To install a package the agent asks to run that one command with network; the card shows the exact command and you allow it once.</p></article>
|
|
22
|
+
<article class="card"><h3 id="stop">Stop and continue</h3><p>Stop works for the whole turn, including while the review runs. A stopped turn says it was stopped, not that the model failed; Continue picks up from the steps kept.</p></article>
|
|
23
|
+
<article class="card"><h3 id="reconnect">Reconnect company mode</h3><p>If the company runtime is not running (after a restart or an update), the conversation says so and offers Reconnect in place.</p></article>
|
|
24
|
+
<article class="card"><h3 id="local-state">Out of git</h3><p><span class="inline-code">.pi/piagent-state</span> gets its own <span class="inline-code">.gitignore</span>; run state no longer shows up in the project's <span class="inline-code">git status</span>.</p></article>
|
|
25
|
+
<article class="card"><h3 id="queue">Waiting in line when the company is busy</h3><p>When every company model account is busy, a request waits its turn (up to 20 minutes) instead of failing. The running turn shows a “Wait for a free company account” step; Stop still works.</p></article>
|
|
26
|
+
<article class="card"><h3 id="many-conversations">Many conversations at once</h3><p>Creating or sending in one conversation is no longer refused because another one just changed. Two folders with the same name (two clones) also show where each one is.</p></article>
|
|
27
|
+
<article class="card"><h3 id="model-scope">Clean up models that are gone</h3><p><span class="inline-code">piagent-doctor</span> lists configured models Pi no longer knows; <span class="inline-code">piagent-model-scope --prune</span> removes only those lines.</p></article>
|
|
28
|
+
</div>
|
|
29
|
+
</section>
|
|
30
|
+
|
|
31
|
+
<section class="section">
|
|
32
|
+
<p class="section-kicker">From the dashboard</p>
|
|
33
|
+
<h2 id="v1-9-0-shots">What a member sees while working</h2>
|
|
34
|
+
<div class="shot-grid">
|
|
35
|
+
<figure class="shot">
|
|
36
|
+
<img src="/assets/shots/network-approval.jpg" alt="Approval card for one network command, showing the exact npm install command" loading="lazy" width="1600" height="1000">
|
|
37
|
+
<figcaption>Approving one network command: the card shows the exact command and what allow or deny does.</figcaption>
|
|
38
|
+
</figure>
|
|
39
|
+
<figure class="shot">
|
|
40
|
+
<img src="/assets/shots/new-chat-models.jpg" alt="Choosing a model for a new conversation: Company and Personal groups" loading="lazy" width="1600" height="1000">
|
|
41
|
+
<figcaption>New conversation: a company model or a personal one, in the same dashboard.</figcaption>
|
|
42
|
+
</figure>
|
|
43
|
+
<figure class="shot">
|
|
44
|
+
<img src="/assets/shots/company-review-running.jpg" alt="Review running: the header shows Subagent 1/2 and Stop is still available" loading="lazy" width="1600" height="1000">
|
|
45
|
+
<figcaption>Review running: the header shows Subagent 1/2 and Stop still works.</figcaption>
|
|
46
|
+
</figure>
|
|
47
|
+
<figure class="shot">
|
|
48
|
+
<img src="/assets/shots/personal-edit-test.jpg" alt="A personal turn that edits code, with the diff inside the Edit card" loading="lazy" width="1600" height="1000">
|
|
49
|
+
<figcaption>Personal mode: every read, edit and command is a card, with the diff right there.</figcaption>
|
|
50
|
+
</figure>
|
|
51
|
+
</div>
|
|
52
|
+
</section>
|
|
53
|
+
|
|
54
|
+
<section class="section">
|
|
55
|
+
<p class="section-kicker">Verification</p>
|
|
56
|
+
<h2 id="v1-9-0-verification">Run for real, the way a member works</h2>
|
|
57
|
+
<p class="section-lead">Each scenario drives a real browser against the installed release, sends messages as a member would and checks the result on disk. Every experience bug found was fixed with a test and the scenario run again.</p>
|
|
58
|
+
<div class="table-wrap"><table>
|
|
59
|
+
<thead><tr><th>Scenario</th><th>Result</th></tr></thead>
|
|
60
|
+
<tbody>
|
|
61
|
+
<tr><td>Company · strip Vietnamese accents from slugs, add tests</td><td>2 files changed, tests pass, "A check passed on the final code · Review found no blocking issue"</td></tr>
|
|
62
|
+
<tr><td>Company · press Stop while the review runs</td><td>"The turn stopped before its checks finished", no error shown</td></tr>
|
|
63
|
+
<tr><td>Company · install a package that needs network</td><td>The approval card shows the exact command; once allowed, the package is in <span class="inline-code">package.json</span></td></tr>
|
|
64
|
+
<tr><td>Company · send another message during a turn</td><td>Held, sent when the turn ends, and answered</td></tr>
|
|
65
|
+
<tr><td>Personal · edit, test, commit and push</td><td>Push waits for approval in the browser; stopping a long command leaves no process behind</td></tr>
|
|
66
|
+
<tr><td>Personal · read <span class="inline-code">.env</span></td><td>Blocked without revealing values; the agent explains how to open it yourself</td></tr>
|
|
67
|
+
</tbody>
|
|
68
|
+
</table></div>
|
|
69
|
+
<p>Benchmark and journey results of earlier releases were measured with task contracts; they are historical, and 1.9.0 has not been measured again.</p>
|
|
70
|
+
</section>
|
|
71
|
+
|
|
72
|
+
<div class="callout">
|
|
73
|
+
<strong>Earlier releases</strong>
|
|
74
|
+
<p>The notes below describe earlier releases as they shipped. Since 1.9.0 the task contract, trajectories, completion receipts and workflow commands mentioned below are gone.</p>
|
|
75
|
+
</div>
|
|
76
|
+
|
|
1
77
|
<section class="section">
|
|
2
78
|
<p class="section-kicker">v1.8.0</p>
|
|
3
79
|
<h2 id="v1-8-0">Astra, Sol, and Luna in Piagent</h2>
|
|
@@ -68,7 +144,7 @@
|
|
|
68
144
|
<p class="section-kicker">Daily flow</p>
|
|
69
145
|
<h2 id="usage-flow">The daily workflow does not break</h2>
|
|
70
146
|
<div class="steps">
|
|
71
|
-
<article class="step"><div><h3>Assign work as before</h3><p>Use a natural-language request
|
|
147
|
+
<article class="step"><div><h3>Assign work as before</h3><p>Use a natural-language request (<span class="inline-code">/workflow</span> was retired in 1.9.0). Manual preflight is optional.</p></div></article>
|
|
72
148
|
<article class="step"><div><h3>The runtime records truth</h3><p>Task Contracts, context, changed files, trajectories, and checkpoints are updated from hooks and tool results rather than model memory.</p></div></article>
|
|
73
149
|
<article class="step"><div><h3>Verify the exact working tree</h3><p>Only observed exact commands that exit successfully and match the current-tree digest count as passing evidence.</p></div></article>
|
|
74
150
|
<article class="step"><div><h3>Bounded recovery or handoff</h3><p>Source repair and transient retries have ceilings. Unsafe cases return to handoff or the operator instead of continuing by guesswork.</p></div></article>
|