Files
gnoma/internal/plugin/errors.go
vikingowl d2d79d65da feat(m8): MCP client, tool replaceability, and plugin system
Complete the remaining M8 extensibility deliverables:

- MCP client with JSON-RPC 2.0 over stdio transport, protocol
  lifecycle (initialize/tools-list/tools-call), and process group
  management for clean shutdown
- MCP tool adapter implementing tool.Tool with mcp__{server}__{tool}
  naming convention and replace_default for swapping built-in tools
- MCP manager for multi-server orchestration with parallel startup,
  tool discovery, and registry integration
- Plugin system with plugin.json manifest (name/version/capabilities),
  directory-based discovery (global + project scopes with precedence),
  loader that merges skills/hooks/MCP configs into existing registries,
  and install/uninstall/list lifecycle manager
- Config additions: MCPServerConfig, PluginsSection with opt-in/opt-out
  enabled/disabled resolution
- TUI /plugins command for listing installed plugins
- 54 tests across internal/mcp and internal/plugin packages
2026-04-12 03:09:05 +02:00

13 lines
444 B
Go

package plugin
import "errors"
var (
ErrManifestNotFound = errors.New("plugin: plugin.json not found")
ErrManifestInvalid = errors.New("plugin: invalid manifest")
ErrAlreadyInstalled = errors.New("plugin: already installed")
ErrNotFound = errors.New("plugin: not found")
ErrVersionMismatch = errors.New("plugin: gnoma version does not satisfy constraint")
ErrPathTraversal = errors.New("plugin: path traversal detected")
)