SKILLEMALL.ai

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.

LambdaTest/agent-skills Agent Skills author: LambdaTest 7 files · 1 script body ≈ 4 504 tokens Open the sourcegithub.com↗ analyzed 33 h ago

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

ProcedureFirebaseGitHubPlaywrightSoftware developmentWriting and documentstype and topics are labelled automatically from the skill text
JSON
Technical rating
C
88/100
safety, quality, tests
Safety 60%
94
Quality 40%
80
Run on models
none yet
Process rating
C
58/100
Has gaps
References files that are not bundled: ../shared/testmu-cloud-reference.md
Tools and files w 18
0
Inputs and preconditions w 11
0
Result and completion w 14
60
the three weakest of ten parameters · all ten

How to improve

  1. The text references files that are not there: add them or drop the references.
For the model run — optional
  • 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-use reference/firebase-test-lab.md:51
    Credential 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-use reference/firebase-test-lab.md:52
    Credential 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-use reference/firebase-test-lab.md:54
    Credential 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-use reference/firebase-test-lab.md:57
    Credential 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-use reference/firebase-test-lab.md:111
    Credential 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-use reference/testmu-target.md:277
    Credential 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-ref reference to a missing file: ../shared/testmu-cloud-reference.md
  • note frontmatter-key unknown frontmatter key "languages"

Process rating: all ten parameters 58/100

Will not run. References files that are not bundled: ../shared/testmu-cloud-reference.md
  • 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.