skillfed

github-action-utils

Collection of python functions that can be used to run GitHub Action Workflow Commands

github-action-utils v1.1.0 817.3K downloads/30d#4,986 on PyPI81
Permissive license MIT DORMANT released

What it is and what it does

This package wraps GitHub Actions workflow commands as Python functions, allowing you to emit structured logs, set step outputs, manage state, and organize workflow console output from within a Python script running in an action. It provides functions for debug, notice, warning, and error messages with optional file/line annotations, output parameter setting via GITHUB_OUTPUT, state management via GITHUB_STATE, job summary appending, and log grouping. The package has no external runtime dependencies and works by writing to GitHub's standard environment files or echoing command syntax to stdout.

It is designed specifically for use inside GitHub Actions workflows—either as a standalone Python step or embedded in a workflow's inline Python shell. The functions map directly to GitHub's documented workflow command syntax, so you write Python instead of shell echo statements to control action behavior and logging.

Use it for:

  • Emit structured debug, warning, and error messages with file/line annotations from a Python action step.
  • Set step outputs and state variables for use in downstream steps or post-action cleanup.
  • Append formatted markdown content to the job summary visible in the workflow run UI.
  • Group related log lines into collapsible sections to reduce workflow console noise.
  • Stop and restart workflow command processing to log raw text without accidental command interpretation.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides Python functions to invoke GitHub Actions workflow commands (logging, output setting, state management, grouping) from within an action script.

Yes, if you are writing Python code inside a GitHub Actions workflow and want a cleaner API than shell echo commands. The package is stable, has no dependencies, carries a permissive MIT license, and has no known vulnerabilities. The dormant maintenance status (last release 2022-10-17) is not a blocker for a thin wrapper around stable GitHub APIs, but verify that the documented functions still work with your target Python and Actions environment before relying on it in production.

Install

github-action-utils on PyPI

pip

pip install github-action-utils

uv

uv add github-action-utils

poetry

poetry add github-action-utils

Installing github-action-utils

Before you install

Low install friction with no runtime dependencies. Maintenance is dormant—last release was 2022-10-17 and last commit 2023-10-01—but the package is not archived and has no known vulnerabilities.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects.

Quickstart

pip install github-action-utils

import github_action_utils as gha_utils

gha_utils.set_output("my_output", "test_value")
gha_utils.error("Error message", title="Error Title", file="example.py", col=1, line=1)

Must run inside a GitHub Actions workflow environment to access GITHUB_OUTPUT, GITHUB_STATE, and other action-specific environment variables.

Verify before relying

  • Whether dormant status (last commit 2023-10-01) affects compatibility with recent GitHub Actions API changes.
  • Whether all documented functions work correctly with Python 3.11 and 3.10 given the long maintenance gap.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.6.0)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance dormant — 1,397 days since the last release
Last repo commit
First released
Downloads 817,293/month — #4,986 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: github_action_utils-1.1.0-py2.py3-none-any.whl

License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPython

Tags

github actions python workflow commandsgithub action logging and outputgithub actions state managementworkflow command wrapper pythongithub actions debug error noticegithub action job summarygithub actions grouped logs
github-actionsworkflow-automationci-cd

More Build Tools packages