Modules & .vpack

Last updated · 2026-09-05

A module is an extension shipped as a .vpack package. Modules contribute capabilities declaratively: navigation entries, UI slots, background workers, skills, and expert definitions — the package itself carries no freely executable code.

Built-in module: VibeWorking

Shipped with the app and enabled by default. It contributes:

  • All primary sidebar entries (New Task, Skills, Kanban, Schedules, Experts, Projects);
  • The built-in review-code skill;
  • Definitions for the six built-in experts and leads;
  • Pages such as Kanban and Browser.

If the module ever misbehaves, the Modules page offers a "Repair VibeWorking" safe-mode button to restore it.

Optional module: VibeCoding

Adds an embedded native terminal to the workspace:

  • Lives in the bottom panel of the workbench — run commands and read output directly;
  • Shares the workspace with the agent, handy for manual intervention and verifying agent changes;
  • Driven by the module's own worker process, isolated from the agent runtime.

Installing and uninstalling

On the Modules page:

  1. Import .vpack: pick a downloaded or built module package;
  2. On install, VibeSpace verifies the Ed25519 signature and the SHA-256 integrity manifest; failures are rejected;
  3. Installed modules can be disabled / enabled (a disabled module's contributions disappear);
  4. Roll back to the previous version or uninstall entirely.

There is no remote marketplace yet — .vpack files are sideloaded from trusted channels.

Security model

  • Signature + integrity: every .vpack is Ed25519-signed and its files are hash-verified against the manifest, preventing tampering;
  • Declarative contributions: package contents are never loaded and executed as code; navigation, UI, skills, and experts register via declarations;
  • Capability requests: modules must declare sensitive capabilities (like "local shell"), and you grant them at install/enable time;
  • Process isolation: module workers run in separate processes with frame size limits; a crash doesn't take down the app.

Dependencies and recovery

Modules can declare dependencies on other modules; the package manager resolves them across install, upgrade, and rollback. If an upgrade misbehaves, rollback restores the previous working state.