Plugin Directory
Plugins extend the Robota agent lifecycle without modifying core packages. Every plugin in this directory extends AbstractPlugin from @robota-sdk/agent-core.
CLI plugins, the folders with a .claude-plugin/plugin.json manifest that you install with /plugin, are a different mechanism; the guide covers both.
Official Plugins
These plugins are maintained by the Robota team. The eight cross-cutting lifecycle plugins ship
consolidated in @robota-sdk/agent-plugin; the pub/sub EventEmitterPlugin is part of the core
runtime in @robota-sdk/agent-core. All are registered in the plugins option of ConversationAgent.
| Plugin | Import | Description |
|---|---|---|
LoggingPlugin | @robota-sdk/agent-plugin | Structured logging of agent activity |
UsagePlugin | @robota-sdk/agent-plugin | Token usage accounting |
LimitsPlugin | @robota-sdk/agent-plugin | Token, request and cost limits |
ErrorHandlingPlugin | @robota-sdk/agent-plugin | Error recovery (logging, circuit breaker or exponential backoff) with retry / recovery stats |
ExecutionAnalyticsPlugin | @robota-sdk/agent-plugin | Per-execution analytics |
PerformancePlugin | @robota-sdk/agent-plugin | Timing and performance metrics |
WebhookPlugin | @robota-sdk/agent-plugin | Emit lifecycle events to a webhook |
ConversationHistoryPlugin | @robota-sdk/agent-plugin | Persist / restore conversation history |
EventEmitterPlugin | @robota-sdk/agent-core | Pub/sub event subscriptions — listen to AGENT_EXECUTION_START, TOOL_BEFORE_EXECUTE, AGENT_EXECUTION_ERROR, and more |
import { ConversationAgent, type IAIProvider } from '@robota-sdk/agent-core';
import { LoggingPlugin, UsagePlugin, LimitsPlugin } from '@robota-sdk/agent-plugin';
declare const provider: IAIProvider;
const agent = new ConversationAgent({
name: 'my-agent',
aiProviders: [provider],
defaultModel: { provider: 'anthropic', model: 'claude-sonnet-4-6' },
plugins: [
new LoggingPlugin({ strategy: 'console' }),
new UsagePlugin({ strategy: 'memory' }),
new LimitsPlugin({ strategy: 'token-bucket', maxTokens: 100_000 }),
],
});Community Plugins
Community plugins are third-party packages. Review their source and trust level before use.
No community plugins listed yet. Submit yours.
Submitting a Plugin
To list your plugin here:
- Publish it to npm following the naming convention:
@your-scope/robota-plugin-<name> - Open a PR to
content/plugins/README.mdwith a one-line entry in the table above - The entry should include: package name, npm link, and a one-sentence description
Naming convention:
@your-scope/robota-plugin-<name>
# Examples:
@acme/robota-plugin-slack
@acme/robota-plugin-datadog
@acme/robota-plugin-linear
Requirements for listing:
- Published to npm
- TypeScript types included
- Peer dependency on
@robota-sdk/agent-core(not a direct dependency) - README with install instructions and usage example
Related
- Building Plugins — guide
@robota-sdk/agent-pluginpackage docs@robota-sdk/agent-corepackage docs —AbstractPlugin, the plugin contract andEventEmitterPlugin