## New Skill: transcript-fixer v1.0.0 Correct speech-to-text (ASR/STT) transcription errors through dictionary-based rules and AI-powered corrections with automatic pattern learning. **Features:** - Two-stage correction pipeline (dictionary + AI) - Automatic pattern detection and learning - Domain-specific dictionaries (general, embodied_ai, finance, medical) - SQLite-based correction repository - Team collaboration with import/export - GLM API integration for AI corrections - Cost optimization through dictionary promotion **Use cases:** - Correcting meeting notes, lecture recordings, or interview transcripts - Fixing Chinese/English homophone errors and technical terminology - Building domain-specific correction dictionaries - Improving transcript accuracy through iterative learning **Documentation:** - Complete workflow guides in references/ - SQL query templates - Troubleshooting guide - Team collaboration patterns - API setup instructions **Marketplace updates:** - Updated marketplace to v1.8.0 - Added transcript-fixer plugin (category: productivity) - Updated README.md with skill description and use cases - Updated CLAUDE.md with skill listing and counts 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
45 lines
1.6 KiB
Python
45 lines
1.6 KiB
Python
"""
|
|
Core Module - Business Logic and Data Access
|
|
|
|
This module contains the core business logic for transcript correction:
|
|
- CorrectionRepository: Data access layer with ACID transactions
|
|
- CorrectionService: Business logic layer with validation
|
|
- DictionaryProcessor: Stage 1 dictionary-based corrections
|
|
- AIProcessor: Stage 2 AI-powered corrections
|
|
- LearningEngine: Pattern detection and learning
|
|
"""
|
|
|
|
# Core SQLite-based components (always available)
|
|
from .correction_repository import CorrectionRepository, Correction, DatabaseError, ValidationError
|
|
from .correction_service import CorrectionService, ValidationRules
|
|
|
|
# Processing components (imported lazily to avoid dependency issues)
|
|
def _lazy_import(name):
|
|
"""Lazy import to avoid loading heavy dependencies."""
|
|
if name == 'DictionaryProcessor':
|
|
from .dictionary_processor import DictionaryProcessor
|
|
return DictionaryProcessor
|
|
elif name == 'AIProcessor':
|
|
from .ai_processor import AIProcessor
|
|
return AIProcessor
|
|
elif name == 'LearningEngine':
|
|
from .learning_engine import LearningEngine
|
|
return LearningEngine
|
|
raise ImportError(f"Unknown module: {name}")
|
|
|
|
# Export main classes
|
|
__all__ = [
|
|
'CorrectionRepository',
|
|
'CorrectionService',
|
|
'Correction',
|
|
'DatabaseError',
|
|
'ValidationError',
|
|
'ValidationRules',
|
|
]
|
|
|
|
# Make lazy imports available via __getattr__
|
|
def __getattr__(name):
|
|
if name in ['DictionaryProcessor', 'AIProcessor', 'LearningEngine']:
|
|
return _lazy_import(name)
|
|
raise AttributeError(f"module '{__name__}' has no attribute '{name}'")
|