githubnext

github-script

@githubnext/github-script
githubnext
302
35 forks
Updated 1/18/2026
View on GitHub

Best practices for writing JavaScript code for GitHub Actions using github-script

Installation

$skills install @githubnext/github-script
Claude Code
Cursor
Copilot
Codex
Antigravity

Details

Pathskills/github-script/SKILL.md
Branchmain
Scoped Name@githubnext/github-script

Usage

After installing, this skill will be available to your AI coding assistant.

Verify installation:

skills list

Skill Instructions


name: github-script description: Best practices for writing JavaScript code for GitHub Actions using github-script

GitHub Action Script Best Practices

This skill provides guidelines for writing JavaScript files that run using the GitHub Action actions/github-script@v8.

Important Notes

Best Practices

  • Use core.info, core.warning, core.error for logging, not console.log or console.error
  • Use core.setOutput to set action outputs
  • Use core.exportVariable to set environment variables for subsequent steps
  • Use core.getInput to get action inputs, with required: true for mandatory inputs
  • Use core.setFailed to mark the action as failed with an error message

Step Summary

Use core.summary.* function to write output the step summary file.

  • Use core.summary.addRaw() to add raw Markdown content (GitHub Flavored Markdown supported)
  • Make sure to call core.summary.write() to flush pending writes
  • Summary function calls can be chained, e.g. core.summary.addRaw(...).addRaw(...).write()

Common Errors

  • Avoid any type as much as possible, use specific types or unknown instead
  • Catch handler: check if error is an instance of Error before accessing message property
catch (error) {
  core.setFailed(error instanceof Error ? error : String(error));
}
  • core.setFailed also calls core.error, so do not call both

Typechecking

Run 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.