Plugins

Extend Noema with tools, prompt hooks, task context, UI surfaces, and admin actions.

Runtime plugins are loaded from plugins/*/plugin.json. A plugin should contribute capability through generic runtime hooks instead of requiring plugin-specific changes in core code.

Plugin Manifest

{
  "name": "base-tools",
  "version": "0.1.0",
  "description": "File operations, search, patching, and shell commands.",
  "entry": "./src/index.ts"
}

Runtime Hooks

HookPurpose
registerToolsAdds callable tools to the task runtime.
extendPromptAdds bounded prompt context.
resolveTaskContextSupplies task-specific context before execution.
transformTextApplies text transforms before or after model calls.
selectExpressionChooses visual or voice expression state.
getAdminStateExposes plugin settings to admin UI.
handleAdminActionHandles plugin-level configuration actions.
uiSurfacesRegisters plugin-owned UI surfaces.

Built-In Plugin Categories

  • base-tools: file operations, search, patching, shell commands.
  • browser-use: Electron browser automation.
  • computer-use: desktop observation and control.
  • skills-manager: local skill discovery and reading.
  • mcp-manager: MCP server management and remote tool dispatch.

For implementation guidance, see Plugin Development.

On this page