This guide will help you set up and run your first analysis with Lipsync Investigation.
Before you begin, ensure you have the following:
- Node.js: Version 22.0.0 or higher
node --version # Should show v22.0.0 or higher - Docker: Version 20.10 or higher (recommended)
docker --version # Should show 20.10 or higher docker compose --version # Should show 2.0 or higher
You'll need API keys for the services you want to use:
- Go to GitHub Settings > Developer settings > Personal access tokens
- Click "Generate new token (classic)"
- Select scopes:
repo:read(for private repositories)public_repo(for public repositories)
- Copy the generated token (starts with
ghp_)
Choose one of the following:
Option A: OpenAI API Key
- Go to OpenAI API Keys
- Create a new secret key
- Copy the key (starts with
sk-)
Option B: OpenRouter API Key
- Go to OpenRouter Dashboard
- Create a new API key
- Copy the key (starts with
sk-or-)
Docker provides the easiest and most reliable setup:
-
Clone the repository
git clone https://github.com/428lab/lipsync-investigation.git cd lipsync-investigation -
Verify Docker is running
docker --version docker compose --version
-
You're ready! Skip to Environment Configuration
If you prefer to run locally without Docker:
-
Clone the repository
git clone https://github.com/428lab/lipsync-investigation.git cd lipsync-investigation -
Install dependencies
npm install
-
Build the project
npm run build
-
Verify installation
npm start --help # Should show usage information
Create and configure your environment file:
-
Copy the example environment file
cp env.example .env
-
Edit the
.envfile with your API keys:# Required: GitHub Personal Access Token GITHUB_TOKEN=ghp_your_github_token_here # Required: Choose one LLM provider OPENAI_API_KEY=sk-your_openai_key_here # OR OPENROUTER_API_KEY=sk-or-your_openrouter_key_here # Optional: Logging level (error|warn|info|debug) LOG_LEVEL=info
-
Verify your configuration
# Check that your .env file is properly formatted cat .env
-
Start the analysis
docker compose up
-
Monitor progress
# In another terminal, watch the logs docker compose logs -f -
Check results
# Wait for completion, then check output ls output/ head output/lipsync_models_analysis.csv
-
Start the analysis
npm start
-
Monitor progress
# Watch the log file in another terminal tail -f output/lipsync-investigation.log -
Check results
# Wait for completion, then check output ls output/ head output/lipsync_models_analysis.csv
The tool will automatically verify your API keys when it starts. Look for these messages in the logs:
✅ GitHub API connection successful
✅ LLM API connection successful
After a successful run, you should see:
-
CSV file created
ls -la output/lipsync_models_analysis.csv # Should show a file with recent timestamp -
Log file generated
ls -la output/lipsync-investigation.log # Should show a file with execution logs -
Sample data in CSV
head -5 output/lipsync_models_analysis.csv # Should show header row and some data rows
Your first run will:
- Search GitHub for lip-sync repositories (takes 1-2 minutes)
- Analyze repositories using AI and heuristics (takes 5-15 minutes depending on repository count)
- Generate CSV output with analysis results
- Create log file with detailed execution information
Typical first run time: 10-20 minutes for 50-100 repositories
Now that you have Lipsync Investigation running, explore these resources:
- Configuration Guide - Customize search queries and analysis settings
- Usage Guide - Learn about different workflows and output interpretation
- Examples - See practical examples and use cases
- Customize your search - Edit
config.jsonto focus on specific types of repositories - Adjust analysis fields - Enable/disable specific analysis metrics
- Set performance mode - Choose between Fast, Balanced, or Accurate analysis
- Explore results - Import CSV into Excel, Google Sheets, or data analysis tools
If you encounter issues:
- Check the logs - Look at
output/lipsync-investigation.logfor error messages - Verify API keys - Ensure your tokens are valid and have proper permissions
- Check network - Ensure you have internet connectivity
- See Troubleshooting Guide - Common issues and solutions
- Start small - Use the default configuration for your first run
- Monitor progress - Watch the logs to understand what's happening
- Be patient - Analysis can take time, especially with many repositories
- Check results - Review the CSV output to understand the analysis quality
Ready to dive deeper? Check out the Configuration Guide to customize your analysis!