Skip to content

Roadmap and Known State

TomΓ‘s Platero edited this page Oct 9, 2026 · 3 revisions

Roadmap and Known State

Honesty first: this page distinguishes shipped and observed from shipped-but-unverified from planned. The authoritative internal list is docs/TAREAS.md (Spanish); this is its public mirror, and when the two disagree, the internal one wins.

The shape of the world changed on 2026-09-27: the editor tree is no longer produced by a build step β€” picode-source/ is PiCode's source, versioned in the repository, and the retired patch machinery was deleted by the owner's decision (its cleanup and the legacy quarantine are done). Since 2026-09-29 the product also ships under the lightweight cut: ten extension folders removed (test-only suites, mermaid preview, the notebook pair, Microsoft/GitHub authentication, GitHub), ESLint out of the toolchain, .vscode/ dev config out β€” an agent-driven code editor ships what it needs, and a folder under extensions/ needs a justification to exist.

Shipped and verified

  • The tree is the source: full builds from picode-source/ end in PiCode.exe, with VS Code 1.135.0 pinned in upstream/stable.json; ~3–4 minute warm builds via the esbuild route, CI and releases on GitHub.
  • Copilot out of the chat (two real causes found in real logs) and out of the model selector (strings verified zero in the built editor).
  • The native chat modified in the core β€” model selector, sessions; the retired webview panel and its standalone extension are gone, their replacement lives in src/vs/workbench/contrib/chat/** plus src/vs/platform/agentHost/.
  • @pi inside the chat: the selector's model is the one pi runs (switchable hot), thinking level, reasoning on request, editor context travelling with the message, and progress saying which tool the agent is running.
  • Providers in settings: a form row per provider (name, endpoint, dialect, key) β€” Settings > Chat > Providers with picode.providers; the OAuth subscription list from Pi itself (41 providers measured, 8 with subscription), ordered by use.
  • MCP bridge: editor MCP tools handed to pi through the editor's permissions and confirmations; MCP page with servers, edit/remove, and install deep links.
  • pi's settings in Settings > Chat > Pi: three settings that do something β€” thinking, reasoning visibility, editor context.
  • The VS Code Agents window out: its six actions unregistered (button, menu entry, shortcut, palette commands, welcome banner, tips).
  • English product copy swept clean; the sweep verified against the built editor.
  • The connector (picode-source/extensions/picode, ~5,400 lines in 24 files, built-in): pi's model provider for the native chat, the @pi participant, MCP tools, an assistant, profile import and themes; 158 connector tests green, core typecheck at zero errors.
  • Management round (10 points, 2026-09-28): models at startup with a 5-min refresh, MCP page, packages as a table, agents surfaced via Gentle AI, update notifications with an Update button (pi update --all), and the root cause of the ByteString header defect fixed.

In progress

What is not finished (sizes from the internal board β€” 🟒 small, 🟑 medium, πŸ”΄ large):

  1. pi's models surfacing in the editor's model window 🟑 β€” until then a fresh build can answer "Language model unavailable". The editor's registration door is stable; pi's catalog is already readable.
  2. The agent-host class joining session and translation πŸ”΄ β€” the biggest single piece; with it pi answers with its own loop and its own tools. (The old "session + translation" work was anchored to the retired panel; in the current model the piloting lives in the connector, and what exactly remains will be known by opening the shipped chat and testing it.)
  3. Registering the host and switching off the other agents 🟒 β€” pi as the only agent of the editor; it follows 2, because switching them off first empties the picker.
  4. The first-run assistant 🟑 β€” ask what to do: pi from inside Β· connect an external one Β· import a configuration.
  5. Connecting to an external pi / migrating its configuration 🟑 β€” the user's choice; nothing is written outside the profile.
  6. Gentle AI package skills 🟒 β€” discovery surfaces the packages' agents (23) but not their 13 skills; the discovery table cannot express package paths yet.
  7. Connector live check 🟑 β€” open the chat of the packed editor and talk: the end-to-end confirmation is pending.
  8. Recovering panel-era value into the core chat: pi statistics, its commands and sessions (editor context already travels with every message). 🟑

Planned, not started

  • Cloud profile sync πŸ”΄ β€” the commercial layer: data/ up and down as one unit, credentials encrypted, explicit consent.
  • Language packs for non-English surfaces.

Decided against (do not propose)

  • A PiCode-owned panel, tab or settings page β€” the surface is the editor.
  • Writing into the machine's pi: no configuration, credentials or sessions; one direction, inwards.
  • Reimplementing providers, OAuth, skills or the orchestrator β€” pi and Gentle AI already bring them.
  • Duplicating a pi setting in the editor (it happened once with the default model; it was retired, and a test keeps it from coming back).
  • Marking something done because it compiles.

Known limitations (current, not roadmap)

  • Windows binaries unsigned β†’ SmartScreen warning on first run.
  • Interactive surfaces have no automated coverage; every decision around them is tested, clicks are checked by hand.
  • macOS is not wired; ARM targets are not wired.
  • A theme that exists only on the Microsoft Marketplace cannot install (Open VSX is the licensed gallery).
  • The managed pi runtime installs on demand (~410 MB) β€” first use takes time and space.

The defects found on the way (including by independent review passes) are not hidden here; each has its record in odd/tasks/.

Clone this wiki locally