Plugin trait definitions for clawft.
This crate defines the unified plugin architecture for the clawft AI assistant framework. It provides trait definitions for tools, channels, pipeline stages, skills, memory backends, and voice handlers -- the six core extension points that all downstream feature work depends on.
Trait Overview
| Trait | Purpose |
|---|---|
[Tool] |
Tool execution interface for agent capabilities |
[ChannelAdapter] |
Channel message handling for external platforms |
[PipelineStage] |
Processing stage in the agent pipeline |
[Skill] |
High-level agent capability with tools and instructions |
[MemoryBackend] |
Pluggable memory storage backend |
[VoiceHandler] |
Voice/audio processing (placeholder for Workstream G) |
Supporting Traits
| Trait | Purpose |
|---|---|
[KeyValueStore] |
Key-value storage exposed to plugins via ToolContext |
[ToolContext] |
Execution context passed to tool/skill invocations |
[ChannelAdapterHost] |
Host services for channel adapters |
Plugin Manifest
Plugins declare their capabilities, permissions, and resource limits
through a [PluginManifest], typically parsed from a JSON file
(clawft.plugin.json).
Feature Flags
voice-- Enables the voice pipeline module (impliesvoice-vad).voice-vad-- Voice Activity Detection (Silero VAD stub).voice-stt-- Speech-to-Text (sherpa-rs stub).voice-tts-- Text-to-Speech (sherpa-rs stub).voice-wake-- Wake-word detection (reserved).
Crate Ecosystem
WeftOS is built from these crates:
| Crate | Role |
|---|---|
weftos |
Product facade -- re-exports kernel, core, types |
clawft-kernel |
Kernel: processes, services, governance, mesh, ExoChain |
clawft-core |
Agent framework: pipeline, context, tools, skills |
clawft-types |
Shared type definitions |
clawft-platform |
Platform abstraction (native/WASM/browser) |
clawft-plugin |
Plugin SDK for tools, channels, and extensions |
clawft-llm |
LLM provider abstraction (11 providers + local) |
exo-resource-tree |
Hierarchical resource namespace with Merkle integrity |