Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Write robust JavaScript for GitHub Actions github-script steps.
.claude/skills/github-github-script/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 14% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 13% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -20% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 137% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 8% | 0% |
Use these guidelines for JavaScript executed by actions/github-script@v8.
@actions/core and @actions/github packages globally@actions/core core.info, core.warning, core.error for logging, not console.log or console.errorcore.setOutput to set action outputscore.exportVariable to set environment variables for subsequent stepscore.getInput to get action inputs, with required: true for mandatory inputscore.setFailed to mark the action as failed with an error messageUse core.summary.* function to write output the step summary file.
core.summary.addRaw() to add raw Markdown content (GitHub Flavored Markdown supported)core.summary.write() to flush pending writescore.summary.addRaw(...).addRaw(...).write()any type as much as possible, use specific types or unknown insteadjscatch (error) { core.setFailed(error instanceof Error ? error : String(error)); }
core.setFailed also calls core.error, so do not call bothRun make js to run the typescript compiler.
Run make lint-cjs to lint the files.
Run make fmt-cjs after editing to format the file.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-05 | fail→pass | 4,970 | 3,566 | -28% | 1 | 1 | 0% | 849 | 966 | +14% | 0 | 0 | — |
case-01 | fail→pass | 6,012 | 7,063 | +17% | 1 | 1 | 0% | 1,149 | 1,302 | +13% | 0 | 0 | — |
case-02 | fail→fail | 15,239 | 5,977 | -61% | 1 | 1 | 0% | 3,148 | 1,650 | -48% | 0 | 0 | — |
case-03 | fail→pass | 5,572 | 2,320 | -58% | 1 | 1 | 0% | 1,023 | 822 | -20% | 0 | 0 | — |
case-04 | pass→pass | 7,408 | 2,854 | -61% | 1 | 1 | 0% | 1,415 | 979 | -31% | 0 | 0 | — |
case-06 | fail→pass | 3,644 | 4,995 | +37% | 1 | 1 | 0% | 612 | 1,448 | +137% | 0 | 0 | — |
case-07 | fail→pass | 7,308 | 4,581 | -37% | 1 | 1 | 0% | 1,211 | 1,307 | +8% | 0 | 0 | — |
case-08 | pass→pass | 5,143 | 7,920 | +54% | 1 | 1 | 0% | 1,006 | 1,452 | +44% | 0 | 0 | — |
case-09 | fail→pass | 5,123 | 5,208 | +2% | 1 | 1 | 0% | 932 | 1,418 | +52% | 0 | 0 | — |
case-10 | fail→pass | 5,933 | 1,811 | -69% | 1 | 1 | 0% | 955 | 695 | -27% | 0 | 0 | — |
case-11 | fail→pass | 5,535 | 2,048 | -63% | 1 | 1 | 0% | 1,047 | 727 | -31% | 0 | 0 | — |
case-12 | fail→pass | 6,660 | 1,493 | -78% | 1 | 1 | 0% | 1,065 | 657 | -38% | 0 | 0 | — |
case-13 | fail→pass | 10,761 | 7,903 | -27% | 1 | 1 | 0% | 1,890 | 2,010 | +6% | 0 | 0 | — |
case-14 | fail→pass | 2,697 | 2,236 | -17% | 1 | 1 | 0% | 427 | 828 | +94% | 0 | 0 | — |
case-15 | fail→pass | 2,650 | 3,364 | +27% | 1 | 1 | 0% | 434 | 1,060 | +144% | 0 | 0 | — |
case-16 | pass→pass | 6,615 | 3,473 | -47% | 1 | 1 | 0% | 1,280 | 1,031 | -19% | 0 | 0 | — |
case-17 | fail→pass | 4,122 | 5,318 | +29% | 1 | 1 | 0% | 755 | 1,037 | +37% | 0 | 0 | — |
case-18 | pass→pass | 5,165 | 2,594 | -50% | 1 | 1 | 0% | 954 | 882 | -8% | 0 | 0 | — |
case-19 | pass→pass | 2,277 | 1,983 | -13% | 1 | 1 | 0% | 358 | 755 | +111% | 0 | 0 | — |
case-20 | pass→pass | 2,646 | 3,100 | +17% | 1 | 1 | 0% | 369 | 863 | +134% | 0 | 0 | — |
case-21 | pass→pass | 3,042 | 2,891 | -5% | 1 | 1 | 0% | 495 | 1,039 | +110% | 0 | 0 | — |
case-22 | pass→pass | 2,231 | 1,942 | -13% | 1 | 1 | 0% | 346 | 715 | +107% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +59 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.