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
| Hook | Purpose |
|---|---|
registerTools | Adds callable tools to the task runtime. |
extendPrompt | Adds bounded prompt context. |
resolveTaskContext | Supplies task-specific context before execution. |
transformText | Applies text transforms before or after model calls. |
selectExpression | Chooses visual or voice expression state. |
getAdminState | Exposes plugin settings to admin UI. |
handleAdminAction | Handles plugin-level configuration actions. |
uiSurfaces | Registers 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.
