Troubleshooting¶
Common issues you might encounter when using studiorum and how to resolve them. Check the list of known issues first.
Installation Issues¶
Python Version Compatibility¶
Problem: studiorum requires Python 3.12+
error
Solution: Install Python 3.12 or later:
Missing Dependencies¶
Problem: ModuleNotFoundError
for required packages
Solution: Reinstall with all dependencies:
# Clean installation
pip uninstall studiorum
pip install studiorum[all]
# Or with uv
uv add studiorum --extra all
LaTeX Installation¶
Problem: pdflatex not found
error
Solution: Install a LaTeX distribution:
Content Issues¶
Missing Source Data¶
Problem: Content not found: Ancient Red Dragon
Solution:
- Check available sources:
- Update content index:
- Verify exact naming:
Outdated Content¶
Problem: Missing newly released content
Solution: Update to the latest content:
# Update content sources
studiorum sources update
# Rebuild index
studiorum index rebuild
# Verify new content
studiorum list adventures --recent
Permission Errors¶
Problem: Permission denied
when accessing content files
Solution: Fix file permissions:
# Make content directory readable
chmod -R 755 ~/.studiorum/content/
# Reset ownership
sudo chown -R $USER ~/.studiorum/
Conversion Errors¶
LaTeX Compilation Failures¶
Problem: LaTeX compilation errors during PDF generation
Solution:
- Generate LaTeX only to debug:
- Check LaTeX log for specific errors:
- Try different compiler:
-
Common LaTeX fixes:
-
Missing packages: Install required LaTeX packages
-
Unicode issues: Use XeLaTeX or LuaLaTeX for Unicode content
-
Memory issues: Increase LaTeX memory limits
Memory Issues¶
Problem: MemoryError
during large conversions
Solution:
- Increase system limits:
- Process in chunks:
# Convert creatures by CR range
for cr in {1..5} {6..10} {11..15} {16..20}; do
studiorum convert creatures --cr $cr --output "cr_$cr.tex"
done
- Use streaming mode:
Encoding Issues¶
Problem: UnicodeDecodeError
or garbled text
Solution:
- Set UTF-8 encoding:
- Use proper LaTeX packages:
- Clean problematic characters:
Performance Issues¶
Slow Conversion¶
Problem: Conversions take too long
Solution:
- Enable caching:
- Use parallel processing:
- Optimize sources:
- Profile performance:
High Memory Usage¶
Problem: System becomes unresponsive during conversion
Solution:
- Monitor usage:
# Watch memory usage during conversion
studiorum convert adventure "Large Campaign" &
watch -n 1 'ps aux | grep studiorum'
- Tune garbage collection:
- Use incremental processing:
Network Issues¶
Content Download Failures¶
Problem: Connection timeout
when downloading content
Solution:
- Check network connection:
ping github.com
curl -I https://raw.githubusercontent.com/5etools-mirror-1/5etools-mirror-1.github.io/master/data/bestiary/bestiary-mm.json
- Configure proxy (if needed):
- Use local content sources:
- Retry with backoff:
MCP Server Issues¶
Connection Problems¶
Problem: Claude Desktop can't connect to MCP server
Solution:
- Check configuration:
{
"mcpServers": {
"studiorum": {
"command": "uv",
"args": ["run", "studiorum", "mcp", "run"],
"cwd": "/correct/path/to/project"
}
}
}
- Test server manually:
- Check logs:
# Claude Desktop logs
tail -f ~/.claude/logs/claude_desktop.log
# Studiorum MCP logs
tail -f ~/.studiorum/logs/mcp-server.log
Tool Execution Errors¶
Problem: MCP tools fail with errors
Solution:
- Test tools directly:
- Check permissions:
# Ensure studiorum can write temporary files
touch ~/.studiorum/temp/test.txt
rm ~/.studiorum/temp/test.txt
- Validate input:
Configuration Issues¶
Invalid Configuration¶
Problem: Invalid configuration
error on startup
Solution:
- Validate YAML syntax:
- Reset to defaults:
# Backup current config
mv ~/.studiorum/config.yaml ~/.studiorum/config.yaml.backup
# Generate new default config
studiorum config init
- Use schema validation:
Path Issues¶
Problem: FileNotFoundError
for configuration or content files
Solution:
- Check environment variables:
- Create missing directories:
- Fix permissions:
Getting Help¶
Collecting Debug Information¶
When reporting issues, include:
# System information
studiorum version --detailed
# Configuration
studiorum config show --sanitized
# Environment
env | grep STUDIORUM
# Recent logs
studiorum logs --tail 100 --level ERROR
Performance Profiling¶
For performance issues:
# Generate performance profile
studiorum convert creature "Beholder" --profile --output beholder-profile.json
# Analyze profile
studiorum profile analyze beholder-profile.json
Community Support¶
- GitHub Issues: Report bugs and feature requests
- Discussions: Community Q&A and troubleshooting
- Discord: Join our community server for real-time help
Prevention¶
Regular Maintenance¶
Prevent common issues:
#!/bin/bash
# ~/.studiorum/maintenance.sh
# Clean old temporary files
find ~/.studiorum/temp -type f -mtime +7 -delete
# Update content sources
studiorum sources update --quiet
# Rebuild index if needed
if [ -z "$(find ~/.studiorum/index -name '*.db' -mtime -30)" ]; then
studiorum index rebuild --quiet
fi
# Clean cache if too large
cache_size=$(du -sm ~/.studiorum/cache | cut -f1)
if [ "$cache_size" -gt 1000 ]; then
studiorum cache clear --keep-recent 100
fi
Run monthly with cron:
Health Checks¶
Monitor studiorum health: