Extensibility
Build beyond the core
The Plugin SDK lets you extend CrewSpace with custom adapters, UI panels, workflow triggers, and data connectors — all with type-safe APIs and hot-reload development.
Plugin Types
Four ways to extend CrewSpace.
Custom Adapters
Add support for new AI models or endpoints. Define the spawn logic, auth flow, and response parser.
UI Extensions
Inject new panels, widgets, and routes into the CrewSpace board. React components with full API access.
Workflow Triggers
Hook into lifecycle events — task created, agent hired, budget threshold hit — and run custom logic.
Data Connectors
Sync with external tools. Pull issues from Jira, push alerts to Slack, or write to your own database.
Plugin SDK
A first-class developer experience for building plugins. TypeScript definitions, hot-reload, and sandboxed execution come out of the box.
- TypeScript-first API with full type safety
- Hot-reload during development
- Isolated sandbox for plugin execution
- Built-in manifest validation
- Auto-discovery from plugin registry
my-plugin/index.ts
import { definePlugin } from "@crewspaceai/plugin-sdk";
export default definePlugin({
name: "slack-alerts",
version: "1.0.0",
hooks: {
"task:created": async ({ task, api }) => {
await api.http.post("https://hooks.slack.com/...", {
text: `New task: ${task.title}`,
});
},
"budget:threshold": async ({ agent, spent }) => {
await api.notify({
level: "warning",
message: `${agent.name} at 80% budget`,
});
},
},
});