CC firebase-test-lab-migration-skill
Migrate test automation from Firebase Test Lab to TestMu AI (formerly LambdaTest) in any language or framework. Covers gcloud firebase test android|ios run (instrumentation, XCTest, Robo, Game Loop), device model and API-level strings, Fastlane/Bitrise/Codemagic/GitHub Actions wrappers; Test Lab is deprecated with shutdown on 30 September 2027. Use this whenever someone wants to move, switch, port, migrate or point tests from Firebase Test Lab to TestMu AI or LambdaTest, asks what the TestMu or LT:Options equivalent is for a capability, config, CLI flag or API from Firebase Test Lab, mentions gcloud firebase test, --type instrumentation, --type robo, --device model=, run_tests_firebase_testlab and firebase_test_lab_ios_xctest fastlane actions, test lab in CI YAML, Firebase Test Lab shutdown, or wants a migration plan, estimate, PR or checklist for a repo currently on Firebase Test Lab, even without the word migrate.
Migrate test automation from Firebase Test Lab to TestMu AI (formerly LambdaTest) in any language or framework.
As a process C 58/100 · Has gaps — References files that are not bundled: ../shared/testmu-cloud-reference.md
How to improve
- The text references files that are not there: add them or drop the references.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 6
✓ No critical or high findings
Medium and low: 6
-
low Exfiltration
net-credential-usereference/firebase-test-lab.md:51Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)curl -u "$LT_USERNAME:$LT_ACCESS_KEY" -X POST "https://manual-api.lambdatest.com/app/uploadFramework" -F "appFile=@app-debug.apk" -F "type=espresso-android"
fixturevendor-host -
low Exfiltration
net-credential-usereference/firebase-test-lab.md:52Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)curl -u "$LT_USERNAME:$LT_ACCESS_KEY" -X POST "https://manual-api.lambdatest.com/app/uploadFramework" -F "appFile=@app-debug-androidTest.apk" -F "type=espresso-android"
fixturevendor-host -
low Exfiltration
net-credential-usereference/firebase-test-lab.md:54Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)curl -u "$LT_USERNAME:$LT_ACCESS_KEY" -X POST "https://mobile-api.lambdatest.com/framework/v1/espresso/build" -H "Content-Type: application/json" \
fixturevendor-host -
low Exfiltration
net-credential-usereference/firebase-test-lab.md:57Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)curl -u "$LT_USERNAME:$LT_ACCESS_KEY" "https://mobile-api.lambdatest.com/mobile-automation/api/v1/framework/builds/<build_id>/report/?encoder=false"
fixturevendor-host -
low Exfiltration
net-credential-usereference/firebase-test-lab.md:111Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)APP=$(curl -s -u "$LT_USERNAME:$LT_ACCESS_KEY" -X POST https://manual-api.lambdatest.com/app/uploadFramework -F "appFile=@app/build/outputs/apk/debug/app-debug.apk" -F "type=espresso-android" | jq -r
fixturevendor-host -
low Exfiltration
net-credential-usereference/testmu-target.md:277Credential used in a network call (verify the destination is the intended service) (test fixture / example file; the skill's own vendor host)curl -u "$LT_USERNAME:$LT_ACCESS_KEY" -X POST "https://manual-api.lambdatest.com/app/upload/realDevice" -F "appFile=@app.apk" -F "name=myapp"
fixturevendor-host
Files scanned: 7. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- warning
missing-refreference to a missing file: ../shared/testmu-cloud-reference.md - note
frontmatter-keyunknown frontmatter key "languages"
Process rating: all ten parameters 58/100
- 0Tools and files. 1 referenced file(s) missing: ../shared/testmu-cloud-reference.md
- 0Inputs and preconditions. Does not say what the process needs to start
- 60Result and completion. Output format stated, no completion criterion
- 70When it triggers. States when to use, but not when not to
- 70Execution cost. Instruction body is 4504 tokens
- 85Steps. 45 steps, 1 vague phrases
- 100Failures and branches. 2 branches, has a failure section
- 100Consistency. Name and required fields are in place
- 100Running it twice. Mutating operations check current state
- 100Progress reporting. Reports progress
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +5Description has no quoted example phrases that should trigger the skill
- +4Description does not say when NOT to use the skill (false activations)
- +3Description length 929: 120–800 characters recommended
- -5TODO / placeholder text left in the skill
- +2Single-language instructions
- +4Structure: 12 headings
- +3Step-by-step instructions: 45 items
- +3Output format is stated explicitly
- +4Has examples (2 code blocks)
- +4Reference files are cited in the instructions (5 of 5)
- +3All 1 scripts are documented
- +1License stated
Quality base 70; lint remarks subtract, signals add up to 100. Result: 80.