Conversation
glifocat
pushed a commit
that referenced
this pull request
Apr 23, 2026
Additive change — existing code paths still run via inline fallbacks. Prepares core for per-module extractions in PR #3 onward. Four registries added with empty defaults: - delivery action handlers (delivery.ts) - router inbound gate (router.ts) - response dispatcher (index.ts) - MCP tool self-registration (container/agent-runner/src/mcp-tools/server.ts) Default modules moved to src/modules/ for signaling: - src/modules/typing/ (extracted from delivery.ts) - src/modules/mount-security/ (moved from src/mount-security.ts) Both are imported directly by core — no hook, no registry. Removal requires editing core imports. Migrator now keys applied rows by name (uniqueness) so module migrations can pick arbitrary version numbers. Stored version column is auto-assigned as an applied-order sequence. sqlite_master guards added around core calls into module-owned tables (user_roles, agent_destinations, pending_questions). No-ops today; load-bearing after the owning modules are extracted. MODULE-HOOK markers placed at scheduling's two skill-edit sites (host-sweep.ts recurrence call, poll-loop.ts pre-task gate). PR #4 replaces the marked blocks when scheduling moves to its module. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
glifocat
pushed a commit
that referenced
this pull request
Apr 23, 2026
refactor: extract scheduling as registry-based module (PR #4)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Type of Change
.claude/skills/Description
Updates the
add-voice-transcriptionskill to support any OpenAI-compatible/v1/audio/transcriptionsendpoint instead of hardcoding OpenAI's Whisper API.Changes:
transcription.ts— configurableTRANSCRIPTION_BASE_URL,TRANSCRIPTION_MODEL,TRANSCRIPTION_API_KEY(optional, defaults tonot-needed). AddsconvertOggToWav()via ffmpeg for endpoint compatibility (WhatsApp sends ogg/opus which many ASR servers cannot decode directly).manifest.yaml— updated env_additions and descriptionSKILL.md— rewritten with examples for Parakeet, Whisper (Speaches), and OpenAI directtests/— assertions updated for new env vars and function namesChannel support: WhatsApp only (same as before). The transcription module uses Baileys types for audio download.
Tested live with NVIDIA Parakeet TDT 0.6B v3 (~2s latency, good Spanish support).
For Skills
Test plan
git diff --stat origin/main— only.claude/skills/add-voice-transcription/paths🤖 Generated with Claude Code