Skip to main content

Plugins and marketplaces

Plugins extend TalkOps Kubernetes Agent (k8s-autopilot) with domain skills, custom subagents, MCP server connections, and slash commands without modifying the core runtime. k8s-autopilot natively supports standard plugin.json manifests as well as .claude-plugin/plugin.json and .opscode-plugin/plugin.json packages.

Plugin types​

k8s-autopilot automatically determines how a plugin binds based on its directory contents:

TypeDetection ruleHow it binds
Agent pluginContains an agents/ directoryRegisters a dedicated subagent with isolated skills, MCP servers, and tool scope
Vertical pluginNo agents/ directoryBinds skills (skills/), commands (commands/), and .mcp.json directly to the main Supervisor agent
Trust boundary

Only install plugins and marketplaces from trusted publishers. Enabled plugins can inject system instructions and spawn MCP server processes under the agent's permissions.

Install plugins from the Settings UI​

1
Open the Plugins & Extensions panel

Navigate to Settings → Plugins to view the four management tabs (Discover, Installed, Marketplaces, and Errors):

Plugins & Extensions panel

2
Connect a marketplace source

Click + Add Marketplace and enter a GitHub repository (owner/repo), an HTTPS URL serving a marketplace.json catalog, or a local directory path:

Add Marketplace Source dialog

3
Discover and install plugins

Switch to the Discover tab to inspect each plugin's version, author, and bundled skills, then click Install:

Discover available plugins

Installed plugins activate immediately without restarting containers.

Plugin directory structure​

my-plugin/
├── plugin.json # Required (also supports .claude-plugin/plugin.json)
├── agents/ # Optional — subagent definitions (makes it an agent plugin)
│ └── my-agent/
│ └── AGENTS.md
├── skills/ # Optional — domain skills
│ └── my-skill/
│ └── SKILL.md
├── commands/ # Optional — custom slash commands
│ └── my-command.md
├── .mcp.json # Optional — bundled MCP server configuration
└── resources/ # Optional — templates, scripts, and static assets

plugin.json manifest​

plugin.json
{
"name": "kubernetes-security-auditor",
"version": "1.0.0",
"description": "Audits Kubernetes namespaces for Pod Security Standards and NetworkPolicy coverage.",
"author": {
"name": "Platform Security"
}
}

Runtime variable substitution in .mcp.json​

When a plugin includes a .mcp.json file, k8s-autopilot resolves the following variables automatically at startup:

VariableResolves to
${PLUGIN_ROOT}The plugin's installation directory
${PLUGIN_DATA}Persistent data directory allocated to the plugin
${PROJECT_DIR}Active project workspace directory
${ENV_VAR}Any host or runtime environment variable

Host a team marketplace​

Create a Git repository containing a marketplace.json catalog at the root to distribute internal plugins across your organization:

marketplace.json
{
"name": "platform-engineering-plugins",
"description": "Internal Kubernetes and cloud platform plugins",
"plugins": [
{
"name": "kubernetes-sre",
"displayName": "Kubernetes SRE Runbooks",
"description": "Incident triage playbooks and post-mortem generators",
"source": "./plugins/kubernetes-sre"
},
{
"name": "cost-analyzer",
"displayName": "Cluster Cost Analyzer",
"description": "Kubecost and cloud billing optimization skills",
"source": "./plugins/cost-analyzer"
}
]
}

Storage locations​

LocationContents
~/.k8s-autopilot/plugins/Marketplace-installed plugins
~/.k8s-autopilot/plugins/marketplaces/Cloned marketplace catalog repositories
.k8s-autopilot/plugins/Project-scoped plugins committed to Git
Configuration databasePlugin enablement state and persisted skill backups