@alivault/pico

中文文档
2.5.0发布于 2026/11/08AGPL-3.0-onlyES Module构建来源已验证近 30 天下载 2092

A local browser workspace for durable Pi coding-agent sessions.

原始使用文档
文档目录8 节
  1. Requirements
  2. Install
  3. Run from source
  4. What it does
  5. Remote access
  6. Multiple machines
  7. Development
  8. License

Pico

A web workspace for durable Pi coding agents. One Node server hosts the agent runtime and serves the React web app.

Pico workspace where an agent runs two subagents, each in its own worktree

Pico workspace in light mode with subagents in the sidebar and the Agent tab

Dark mobile browserLight mobile browser
Pico mobile browser in dark modePico mobile browser in light mode

Requirements

  • Node.js 22.19 or later
  • pnpm 10.33 (only to run from source)
  • Git and a shell
  • Provider credentials in ~/.pi/agent/auth.json, or set them in Pico

Install

npm install -g @alivault/pico
pico-app

Or try it without a global install: npx @alivault/pico.

Run from source

pnpm install
pnpm build
pnpm start

Open http://127.0.0.1:3141. Useful commands:

pnpm start --no-open --port 3141
pnpm start --data-dir PATH   # default: ~/.pico
pnpm start status
pnpm start stop --wait       # let active turns finish first
pnpm start import-pi         # import Pi sessions as agents (stop Pico first)

What it does

  • Durable agents. Agents and their conversations live in one SQLite database. Turns continue after a crash or restart. Tools with side effects do not run twice.
  • Workspace. Git changes and diffs, file browser, syntax highlighting, and terminals.
  • Terminals that survive restarts. Terminals and background jobs run in a small pico-pty-host process (one for each data directory). When the Pico server restarts, it finds them again with their output. The host stops by itself when no terminal runs and no server is connected for 10 minutes; with no server for 12 hours, it also ends shells that run nothing. To stop Pico and the host: pico-app stop --pty-host (terminals and jobs end too). pico-app serve --no-pty-host keeps terminals in the server process.
  • Agent tools. Todo lists, questions to the user, background jobs that report their exit, terminals, subagents in git worktrees, browser automation, code mode, web access, and MCP.
  • Tool profiles. full, builder, researcher, reviewer, read-only, or your own. In reviewer and read-only, bash runs in a bubblewrap sandbox (Linux): the filesystem is read-only and there is no network, so the agent cannot change files with a script.
  • Safe subagents. A subagent gets a tool profile from its parent. It has no ask_user or spawn_subagent unless the parent grants them, and its bash refuses git push to main, sudo, and the commands that the parent lists. Each message from a subagent is a question, done, or waiting (its turn ended on a job). Questions and done go into the parent's follow-up queue; waiting shows only in the agents list action.
  • Notifications. Web Push and ntfy when a turn finishes or the agent asks a question.

Pi skills, prompt templates, project instructions, and credentials are used. Legacy Pi extensions are not loaded.

Remote access

Pico has no login. Anyone who can reach it can run commands as your user. Use Tailscale and never expose it to the public internet.

pnpm start --host <tailscale-ip> --no-open

Use Tailscale Serve for HTTPS (needed for push notifications).

Multiple machines

One Pico can show the agents of other computers, for example a build server. Each machine runs its own Pico on its 127.0.0.1. The Pico that you open (the hub) connects to them over SSH and shows them in the sidebar. Agents, terminals, and jobs run on their own machine and continue when the hub goes offline.

pico-app machine add ali@workbox      # SSH target, alias, or Tailscale name
pico-app machine list
pico-app machine reconnect workbox    # after a password, key, or check prompt
pico-app machine remove workbox       # Pico keeps running on workbox

machine add connects in your terminal, so SSH can ask for a password or a host key. It finds Node.js 22.19+ and Pico on the remote machine, and asks before it installs Pico (with npm, into ~/.local). The hub then uses your SSH config, keys, and agent with one shared connection. It never asks for input; when SSH needs you, the machine shows Attention and the command to run. Pico does not store passwords or keys, and it copies no settings or credentials to other machines.

Tailscale works: use a MagicDNS name or a 100.x address as the target, with OpenSSH or Tailscale SSH.

Anyone who can open the hub can run commands on all its machines. Keep the hub on localhost or your tailnet. Agents on the hub can use the agent tools (spawn_subagent, agents) with a machine argument, for example to start a subagent on workbox.

Development

pnpm dev     # backend on 3141, Vite client on 3142
pnpm check
pnpm build

This is a pnpm monorepo:

  • apps/pico: the Pico app. Client code is in apps/pico/src. Server code is in apps/pico/server/src.
  • apps/website: the static site at pico.aliabbas.net. Deploy it with pnpm website:deploy.

License

AGPL-3.0-only. See LICENSE.

版本与发布记录

@alivault/pico 共发布 56 个版本,首次发布于 2026/05/08;过去 12 个月发布了 56 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
2.5.0latest2026/11/08今天
2.4.12026/11/07今天
2.4.02026/11/061 天前
2.3.02026/11/052 天前
2.2.02026/11/043 天前
2.1.02026/11/034 天前

关于 @alivault/pico 的常见问题

@alivault/pico 是什么?

A local browser workspace for durable Pi coding-agent sessions.

如何安装 @alivault/pico?

在项目目录运行 npm install @alivault/pico,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 pico-app,可以用 npx pico-app 直接运行。

@alivault/pico 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/alivault__pico 是否存在。

@alivault/pico 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@alivault/pico 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.19.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@alivault/pico 可以商用吗?

@alivault/pico 使用 AGPL-3.0-only 许可。最严格的 Copyleft:除分发外,通过网络向用户提供基于它的服务也需要开源对应源码。闭源 SaaS 使用前务必评估。以上为概括,不构成法律意见,请以许可原文为准。

@alivault/pico 的下载量有多少?

根据 npm 官方下载统计,@alivault/pico 在 2026/10/06 – 2026/11/04 这 30 天内被下载 2,092 次,日均约 70 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@alivault/pico 还在维护吗?

最新版本 2.5.0 发布于 2026/11/08(今天);至今共发布 56 个版本,其中过去 12 个月发布了 56 个;首次发布于 2026/05/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。