skills/github-script/SKILL.md
Writes secure actions/github-script workflow steps. Use when GitHub Actions needs inline JavaScript with GitHub API/context.
npx skillsauth add kjanat/skills github-scriptInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use for authoring or reviewing uses: actions/github-script@v8 workflow steps.
with.script runs as an async function body; use await import(...) for module imports.
actions/github-script@v8v2.327.1github.rest.* endpoint methods; use github.request(...) for raw requests..mjs or .js with // @ts-check); avoid CommonJS (require, module.exports)..mjs/.js and import the built file in workflow steps.id if downstream steps need outputs.context and context.payload for event data already provided.env.process.env inside module only when needed.github.rest.*, github.graphql, or github.request.script should usually do one thing: import + call exported function.scripts/*.mjs modules.checkJs in tsconfig.json or add // @ts-check for JS)..ts source files, keep runtime imports pointed at compiled JS outputs.See references/external-files.md for patterns.
| Task | Read |
| -------------------- | ---------------------------------------------------------------------------------------------- |
| Write new step | SKILL.md, references/external-files.md, references/examples.md, references/security.md |
| Review existing step | SKILL.md, references/security.md, references/inputs-outputs-retries.md |
| Migrate old workflow | SKILL.md, references/runtime-and-migrations.md |
${{ ... }} expressions directly inside script.context, use it there; do not mirror into env.env boundary and parse/validate in script.See references/security.md for patterns.
github: authenticated Octokit client with pagination pluginsoctokit: alias for githubcontext: workflow run contextcore, glob, io, execrequire plus escape hatch __original_require__ (legacy; prefer ESM import)If you need source-level API details, inspect the action repo: https://github.com/actions/github-script (for example action.yml, types/async-function.d.ts, src/main.ts).
with.script is the body of an async function. These values are pre-defined (no import needed):
github: pre-authenticated octokit/rest.js clientcontext: workflow run contextcore: @actions/coreglob: @actions/globio: @actions/ioexec: @actions/execrequire: wrapped Node require (cwd-relative + local npm packages); use __original_require__ for unwrapped requiresteps.<id>.outputs.resultresult-encoding: string for raw string outputretries: <n>400,401,403,404,422retry-exempt-status-codesSee references/inputs-outputs-retries.md for details.
github-token input default (typically workflow token, repo-scoped)github-token with PAT secret for cross-repo or broader scopes| File | Purpose |
| -------------------------------------- | --------------------------------------------- |
| references/security.md | injection avoidance and env-boundary patterns |
| references/inputs-outputs-retries.md | inputs, outputs, retry semantics |
| references/runtime-and-migrations.md | v5-v8 changes and upgrade checks |
| references/external-files.md | external ESM architecture, reuse, typecheck |
| references/examples.md | minimal templates for common tasks |
Upstream repository currently does not accept general contributions.
Security fixes and major breakage fixes still maintained.
development
Use this skill whenever the user is designing, building, scaffolding, reviewing, or debugging Go-based reverse proxy or HTTP edge infrastructure, especially when they mention statute, config-as-code proxies, building an nginx replacement in Go, networking topology, TLS termination, load balancing, HTTP/2, HTTP/3, QUIC, ACME, upstream pools, middleware chains, or graceful shutdown. Trigger this skill even when the user does not explicitly name statute but is clearly working on a Go HTTP server, edge proxy, or networking infrastructure problem where the resulting artefact will be a compiled binary rather than a runtime-configured server. Also trigger when the user asks for explanations of networking protocols (HTTP/1.1, HTTP/2, HTTP/3, WebSockets, gRPC, TLS) in the context of building or operating a proxy, or when they ask about Go net/http pitfalls, transport tuning, or production-grade server defaults.
development
Routes Threlte questions to exact, commit-pinned docs paths and practical workflows. Use when helping with setup, debugging, or architecture across @threlte/core, @threlte/extras, @threlte/gltf, @threlte/rapier, @threlte/theatre, @threlte/xr, @threlte/flex, and @threlte/studio.
testing
Comprehensive lightning physics knowledge base derived from Rakov & Uman (2003) "Lightning: Physics and Effects". Covers discharge types, current parameters, leader/return-stroke physics, cloud electrification, protection, detection systems, atmospheric effects, and quantitative reference data. Use when answering questions about lightning physics, electromagnetic fields, thunderstorm electricity, lightning protection, or atmospheric electrical phenomena.
development
Generate hierarchical AGENTS.md knowledge base for a codebase. Creates root + complexity-scored subdirectory documentation.