docs/build/plugins.md

Plugins

A plugin is a bundle of workspace files — agents, skills, playbooks, object types, missions, automations, teams, pages, trust rules — that a workspace turns on with one line. Apps are made of plugins: a workspace has an app when one of its plugins is on. Core ships the mechanism (tools, record and artifact nouns, page archetypes); a plugin ships the meaning (which agent, on what cadence, graded on what); a workspace ships its own facts.

The six that ship

PluginAppGives you
wikiWorkforceLong-term memory the agents keep, searchable and mounted into context
data-roomsGTMOne room per engagement, filled after every sync
proposalsGTMProposal Writer and render-verified documents (needs data-rooms)
growth-loopGTMBriefs judged on a reading taken after publication
software-factorySoftware FactoryRequest → plan → build → QA → release
production-watchSoftware FactorySentry errors become incidents with a likely cause

Turn one on

# workspace.yaml
plugins: [proposals]
pluginSettings:
  software-factory: { narrateRecordings: true }

Or Add app → Marketplace → Plugins (admins), or accept an agent's recommendation in chat (the plugin.enable action). Turning a plugin off removes its pages, agents, automations and team from the applied workspace; nothing it wrote is deleted. Override any of its files by slug — see Customize an app.

Write a plugin

Plugins load from vocion-core at packages/core/templates/plugins/<slug>/, so a new one is a change to your fork or a pull request:

templates/plugins/field-jobs/
  plugin.yaml
  README.md
  agents/  skills/  objects/  missions/  automations/  teams/  pages/  trust.yaml
# plugin.yaml
slug: field-jobs
name: Field jobs
version: 1.0.0
description: Each job becomes a record with a crew, a window and a sign-off.
depends: []
nav: { section: Jobs }
recommend:
  when:
    - a person asks which crew is on a job

plugin.yaml also takes surfaces, settings, setup and notifications. Each enabled plugin's version is folded into the workspace version every run records. If the capability is true of one company only, put it in that company's workspace instead.

The code SDK (experimental)

@vocion/sdk (in packages/sdk, not published to npm) exports defineSkill, defineSource, defineCard and the PluginManifest type. Code plugins listed in VOCION_PLUGINS (comma-separated module specifiers) are loaded by the local MCP server and shown by plugins_list. Plugin skills are not executed by the app in 5.x; first-party cards use defineCard. The reference sample is packages/plugins/transcript-highlights.