Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/algal/sparky
/ types & classes
Types & classes
135 in github.com/algal/sparky
⨍
Functions
744
◇
Types & classes
135
↳
Endpoints
20
↓ 25 callers
Class
SpontaneousSpeechManager
Manages periodic spontaneous speech with randomized timing and presence gating. Usage:: manager = SpontaneousSpeechManager(
sparky_mvp/core/spontaneous_speech.py:63
↓ 21 callers
Class
OpenClawNodeClient
Persistent async WS client for OpenClaw Gateway in **node** role. Declares ``camera.snap``, ``camera.list``, ``action.perform``, and ``a
sparky_mvp/core/openclaw_node_client.py:114
↓ 20 callers
Class
MockWebSocket
Simulates a WebSocket connection with a sequence of frames.
tests/test_openclaw_gateway_client.py:83
↓ 19 callers
Class
AcousticEchoCanceller
Thread-safe AEC using NLMS adaptive filter. The speaker reference is buffered and consumed frame-by-frame as the microphone signal is pr
sparky_mvp/core/echo_canceller.py:77
↓ 19 callers
Class
OpenClawGatewayClient
Persistent async WS client for the OpenClaw Gateway. Usage:: client = OpenClawGatewayClient(gateway_url, token) await clien
sparky_mvp/core/openclaw_gateway_client.py:56
↓ 19 callers
Class
VADSpeechCapture
Captures speech using VAD with circular buffer pattern from GLaDOS. Uses Silero VAD to detect voice activity, buffers pre-activation audio,
sparky_mvp/core/vad_capture.py:133
↓ 13 callers
Class
MockWebSocket
Simulates a WebSocket connection with a sequence of frames.
tests/test_openclaw_node_client.py:55
↓ 12 callers
Class
CameraWorker
Thread-safe camera worker with frame buffering and face tracking.
sparky_mvp/robot/camera_worker.py:33
↓ 12 callers
Class
ReachyStateMachine
Main orchestrator for Reachy MVP voice assistant. Manages the full lifecycle: startup → sleep → wake → listen → process → respond
sparky_mvp/core/state_machine.py:72
↓ 12 callers
Class
ThinkingMove
Continuous thinking animation that escalates over time.
sparky_mvp/robot/thinking.py:59
↓ 10 callers
Class
OpenClawEvent
sparky_mvp/core/openclaw_gateway_client.py:42
↓ 10 callers
Class
STTEngine
Local speech-to-text engine with noise detection. Supports ``faster_whisper`` and ``parakeet`` backends.
sparky_mvp/core/stt_engine.py:73
↓ 9 callers
Class
SCRFDHeadTracker
Face detection head tracker using SCRFD via insightface. Same interface as the YOLO HeadTracker from the conversation app: get_head_posit
sparky_mvp/robot/scrfd_head_tracker.py:26
↓ 8 callers
Class
SpontaneousGestureManager
Periodically queues ambient recorded emotions on the MovementManager. Usage:: manager = SpontaneousGestureManager( queue_mov
sparky_mvp/core/spontaneous_gestures.py:57
↓ 7 callers
Class
DirectTTSMiddleware
Sentence-level TTS with direct SoundDevice playback. Class-level (singleton) queue so multiple pipeline instances don't overlap audio.
sparky_mvp/core/middlewares/direct_tts.py:37
↓ 7 callers
Class
FakeCameraWorker
Returns a synthetic test frame.
tests/test_openclaw_node_client.py:82
↓ 6 callers
Class
MockWebSocket
tests/test_gentle_actions.py:131
↓ 5 callers
Class
MovementManager
Coordinate sequential moves, additive offsets, and robot output at 100 Hz. Responsibilities: - Own a real-time loop that samples the current
sparky_mvp/robot/moves.py:226
↓ 5 callers
Class
SpeakerIdentifier
Identifies speakers from short audio clips using enrolled embeddings. Args: enrollments_path: Path to JSON file mapping speaker names to
sparky_mvp/core/speaker_id.py:72
↓ 5 callers
Class
VAD
Voice Activity Detection using Silero VAD v5 ONNX model. Adapted from GLaDOS implementation.
sparky_mvp/core/vad_capture.py:28
↓ 4 callers
Class
AECStream
Audio stream wrapper that applies AEC to every read.
sparky_mvp/core/aec_stream.py:23
↓ 4 callers
Class
LoopFrequencyStats
Track rolling loop frequency statistics.
sparky_mvp/robot/moves.py:208
↓ 4 callers
Class
OpenClawProviderMiddleware
Middleware that streams LLM responses from the OpenClaw Gateway. Like ProviderMiddleware, this is a *source* middleware: it ignores the inpu
sparky_mvp/core/middlewares/openclaw_provider.py:25
↓ 3 callers
Class
AudioInputResult
Result of processing audio input through STT. Contains transcribed text along with metadata about whether the input should be processed
sparky_mvp/core/audio_input_processor.py:21
↓ 3 callers
Class
GentleLookAroundMove
Curious look around — head rotates slowly to one side, pauses, returns.
sparky_mvp/robot/gentle_actions.py:123
↓ 3 callers
Class
GentleStretchMove
Slow head stretch — tilt to one side, then the other, return to center.
sparky_mvp/robot/gentle_actions.py:27
↓ 3 callers
Class
GentleYawnMove
Yawn-like motion: slow head tilt back, antennas droop, then recover.
sparky_mvp/robot/gentle_actions.py:51
↓ 3 callers
Class
MockStream
tests/test_echo_canceller.py:258
↓ 3 callers
Class
ResamplingParams
sparky_mvp/core/resampling_stream.py:23
↓ 3 callers
Class
ResamplingPyAudioStream
Wrap a PyAudio input stream and expose a 16kHz-style .read() API. The returned bytes are little-endian PCM int16 mono at `output_rate_hz`.
sparky_mvp/core/resampling_stream.py:30
↓ 3 callers
Class
WebRtcApmEchoCanceller
Thread-safe wrapper for WebRTC APM with full AEC3. APM operates on 10ms frames: - 8kHz: 80 samples - 16kHz: 160 samples - 32kHz
sparky_mvp/core/webrtc_apm.py:73
↓ 2 callers
Class
FilterMiddleware
Filter chunks based on a predicate function. Useful for removing empty chunks, filtering specific patterns, or conditionally passing thr
sparky_mvp/core/middlewares/filter.py:7
↓ 2 callers
Class
GentleAntennaWiggleMove
Quick antenna wiggle — like perking up or reacting to something.
sparky_mvp/robot/gentle_actions.py:156
↓ 2 callers
Class
GentleNodMove
Gentle nod — as if agreeing or acknowledging something.
sparky_mvp/robot/gentle_actions.py:82
↓ 2 callers
Class
GentleShakeMove
Gentle head shake — as if saying 'no' or musing.
sparky_mvp/robot/gentle_actions.py:103
↓ 2 callers
Class
HeadWobbler
Converts audio deltas into head movement offsets.
sparky_mvp/robot/head_wobbler.py:29
↓ 2 callers
Class
MockFace
tests/test_face_tracking.py:38
↓ 2 callers
Class
OrpheusEngine
Synchronous Orpheus TTS engine using vLLM LLM class.
sparky_mvp/core/orpheus_engine.py:82
↓ 2 callers
Class
RobotAnimator
Manages Reachy Mini animations for different events. Wraps blocking robot animations in async executors to prevent blocking the main asy
sparky_mvp/robot/animations.py:26
↓ 2 callers
Class
SentenceBufferMiddleware
Buffer text chunks until complete sentences are formed. Yields sentence chunks when sentence-ending punctuation is detected (. ! ?). Thi
sparky_mvp/core/middlewares/sentence_buffer.py:10
↓ 2 callers
Class
SlowStream
tests/test_vad_capture.py:360
↓ 2 callers
Class
StreamPipeline
Pipeline for processing streams through multiple middlewares.
sparky_mvp/core/streaming.py:231
↓ 2 callers
Class
WebRtcAecmEchoCanceller
Thread-safe wrapper for WebRTC AECM. AECM operates on 10ms frames: - 8kHz: 80 samples - 16kHz: 160 samples
sparky_mvp/core/webrtc_aecm.py:83
↓ 1 callers
Class
AudioInputProcessor
Processes audio input through STT pipeline with noise detection. Responsibilities: - Transcribe audio using local STT engine - Detec
sparky_mvp/core/audio_input_processor.py:47
↓ 1 callers
Class
BigFace
tests/test_face_tracking.py:64
↓ 1 callers
Class
BreathingMove
Breathing move with interpolation to neutral and then continuous breathing patterns.
sparky_mvp/robot/moves.py:68
↓ 1 callers
Class
FakeCameraWorker
Returns a synthetic test frame (colored gradient) for testing without robot.
tools/node_camera_smoke_test.py:60
↓ 1 callers
Class
MockCameraWorker
tests/test_face_tracking.py:165
↓ 1 callers
Class
MovementState
State tracking for the movement system.
sparky_mvp/robot/moves.py:173
↓ 1 callers
Class
RawStream
tests/test_vad_capture.py:438
↓ 1 callers
Class
STTResult
Result of speech-to-text transcription
sparky_mvp/core/stt_engine.py:27
↓ 1 callers
Class
SmallFace
tests/test_face_tracking.py:60
↓ 1 callers
Class
StderrFilter
Filter stderr output to suppress noisy async cleanup errors. Filters out "Exception ignored" messages from httpx/openai async generator clea
main.py:35
↓ 1 callers
Class
SwayRollRT
Feed audio chunks -> per-hop sway outputs. Usage: rt = SwayRollRT() rt.feed(pcm_int16_or_float, sr) -> List[dict]
sparky_mvp/robot/speech_tapper.py:117
↓ 1 callers
Class
TTSStreamMiddleware
Middleware that sends sentence chunks to TTS service and plays them. Only processes sentence chunks (complete sentences), not individual tex
sparky_mvp/core/middlewares/tts.py:22
↓ 1 callers
Class
TestbenchTTSMiddleware
Sentence-level TTS -> testbench playback. Class-level (singleton) queue so multiple pipeline instances don't overlap audio.
sparky_mvp/core/middlewares/testbench_tts.py:37
↓ 1 callers
Class
_Resp
tests/test_direct_tts.py:119
Class
ApmHandle
The APM instance wrapper — holds the APM pointer and the StreamConfig so we don't need to reconstruct them on every call.
sparky_mvp/core/apm_shim.cpp:21
Class
EchoCanceller
sparky_mvp/core/aec_stream.py:19
Class
InterruptibleTTSMiddleware
TTS middleware that can be interrupted by external signals. Only processes sentence chunks (complete sentences), not individual text chunks.
sparky_mvp/core/middlewares/tts.py:451
Class
OpenClawEventType
sparky_mvp/core/openclaw_gateway_client.py:32
Class
ReachyState
States for Reachy's operation.
sparky_mvp/core/state_machine.py:64
Class
StreamChunk
Represents a single chunk from the stream. Chunk types: - "text": Raw text content from the model (character/word level) - "sentence
sparky_mvp/core/streaming.py:14
Class
StreamMiddleware
Base class for stream middleware.
sparky_mvp/core/streaming.py:214
Class
TestAECStream
tests/test_echo_canceller.py:276
Class
TestActionRegistry
tests/test_gentle_actions.py:103
Class
TestApmBasics
tests/test_webrtc_apm.py:45
Class
TestApmEchoCancellation
tests/test_webrtc_apm.py:103
Class
TestApmShimLoads
tests/test_webrtc_apm.py:34
Class
TestApmThreadSafety
tests/test_webrtc_apm.py:202
Class
TestCameraWorker
Test CameraWorker thread safety and interface.
tests/test_face_tracking.py:73
Class
TestChatInject
tests/test_openclaw_gateway_client.py:800
Class
TestChatSendBasic
tests/test_openclaw_gateway_client.py:203
Class
TestChatSendErrors
tests/test_openclaw_gateway_client.py:449
Class
TestChatSendLifecycle
tests/test_openclaw_gateway_client.py:386
Class
TestChatSendToolUse
tests/test_openclaw_gateway_client.py:325
Class
TestConfig
tests/test_spontaneous_speech.py:21
Class
TestConnect
tests/test_openclaw_gateway_client.py:124
Class
TestConstruction
tests/test_echo_canceller.py:51
Class
TestContinuousVADListenerCharacterization
tests/test_wake_sleep.py:237
Class
TestEchoCancellation
tests/test_echo_canceller.py:104
Class
TestEngineDispatch
tests/test_direct_tts.py:57
Class
TestEnsureCudaLdPath
tests/test_stt_engine.py:182
Class
TestEventLoop
tests/test_openclaw_node_client.py:305
Class
TestExtractText
tests/test_openclaw_gateway_client.py:629
Class
TestFactory
tests/test_openclaw_gateway_client.py:774
Class
TestFasterWhisper
tests/test_stt_engine.py:35
Class
TestGentleMoves
tests/test_gentle_actions.py:33
Class
TestInterruptibleSleep
tests/test_spontaneous_speech.py:334
Class
TestInvokeDispatch
tests/test_openclaw_node_client.py:172
Class
TestKnownBugs
Tests that expose confirmed bugs. Each test documents a real bug found during code review. The test SHOULD pass when the bug is fixed. Until
tests/test_openclaw_gateway_client.py:871
Class
TestKnownBugs
Tests that expose confirmed bugs in capture_speech. Each test documents a real bug found during code review. Marked xfail — they should pass
tests/test_vad_capture.py:471
Class
TestLifecycle
tests/test_spontaneous_speech.py:269
Class
TestManagerConfig
tests/test_spontaneous_gestures.py:71
Class
TestManagerPresenceGating
tests/test_spontaneous_gestures.py:142
Class
TestManagerStateGating
tests/test_spontaneous_gestures.py:110
Class
TestManagerStop
tests/test_spontaneous_gestures.py:171
Class
TestManagerTiming
tests/test_spontaneous_gestures.py:96
Class
TestMultiFrame
tests/test_echo_canceller.py:212
Class
TestNodeActionDispatch
tests/test_gentle_actions.py:143
next →
1–100 of 135, ranked by callers