luciq_cli 1.0.8
luciq_cli: ^1.0.8 copied to clipboard
CLI tool for migrating Flutter projects from Instabug to Luciq SDK
Luciq CLI #
A command-line interface for Luciq Flutter SDK.
Installation #
Global Installation #
dart pub global activate luciq_cli
Local Development #
cd packages/luciq_cli
dart pub get
Usage #
Migration Command #
Migrate your Flutter project from Instabug to Luciq:
# Run migration on current Flutter project directory
luciq migrate
# Run migration on specific Flutter project path
luciq migrate --project-path /path/to/flutter/project
# Dry run to see what would be changed
luciq migrate --dry-run
# Get help
luciq migrate --help
Upload Symbols Command #
Upload debug symbol files to Luciq. The command automatically detects platform from filenames:
- Files containing
.androidin their name → uploaded as Android platform - Files containing
.iosin their name → uploaded as iOS platform
# Upload all symbols (searches current directory recursively if --symbols-path not provided)
luciq upload-symbols
# Upload symbols from a specific directory
luciq upload-symbols --symbols-path /path/to/symbols
# Upload symbols with explicit credentials
luciq upload-symbols --token YOUR_APP_TOKEN --api_key YOUR_API_KEY
# Upload symbols with native sourcemaps (Android mapping.txt and iOS DWARF files)
luciq upload-symbols --enable-native-sourcemaps
# Upload symbols with explicit version (overrides pubspec.yaml)
luciq upload-symbols --version-name "1.0.0" --version-number "1"
# Upload symbols with verbose logging
luciq upload-symbols --verbose-logs
# Get help
luciq upload-symbols --help
Example: If your symbols folder contains:
app.android-arm.symbolsapp.android-arm64.symbolsapp.ios-arm64.symbols
The command will:
- Create one zip file with all
.androidfiles and upload as Android platform - Create another zip file with all
.iosfiles and upload as iOS platform
Note: The command automatically:
- Finds the app token from your source files (luciq.json, Dart files, .env files, or JS/TS files) if not provided
- Reads the app version from
pubspec.yaml(can be overridden with--version-nameand--version-number) - Groups files by platform based on filename (
.androidor.ios) - Uploads each platform group separately
- If
--symbols-pathis not provided, searches the current directory recursively for.symbolsfiles (skips common build/dependency directories likebuild,.git,node_modules, etc.)
Native Sourcemaps (--enable-native-sourcemaps):
When enabled, the command also uploads:
- Android:
mapping.txtfile frombuild/*/outputs/mapping/release/mapping.txtto the native sourcemaps endpoint - iOS: DWARF files from
build/ios/archive/*/dSYMs/*.framework.dSYM/Contents/Resources/DWARF/orios/build/archive/...(zipped and uploaded to the native sourcemaps endpoint)
Environment Variables:
LUCIQ_APP_TOKENorINSTABUG_APP_TOKEN- Your app tokenLUCIQ_API_KEYorINSTABUG_API_KEY- Your API keyLUCIQ_AUTO_UPLOAD_ENABLEorINSTABUG_AUTO_UPLOAD_ENABLE- Enable/disable auto upload (default: true)
You can also set these in local.properties file:
LUCIQ_APP_TOKEN=your_token_here
LUCIQ_API_KEY=your_api_key_here
LUCIQ_AUTO_UPLOAD_ENABLE=true
This project is licensed under the MIT License - see the LICENSE file for details.