testing-actions

Test GitHub Actions and supply-chain code with service doubles and real-IO harnesses.

2|Updated Jul 2, 2026
One-click install
npx skills add https://github.com/spencerbeggs/effected --skill testing-actions
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: testing-actions
Source: https://github.com/spencerbeggs/effected/tree/main/plugin/skills/testing-actions
Command: npx skills add https://github.com/spencerbeggs/effected --skill testing-actions

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill addresses the complexity of testing GitHub Actions, GitHub API integrations, and supply-chain code by providing a robust framework for mocking services, handling real IO, and ensuring test reliability without false positives.

Core Features & Use Cases

  • Service Doubling: Provides a standardized convention for creating lazy, type-safe test doubles for services like ActionOutputs, ActionEnvironment, and GitHubClient.
  • Real-IO Harnessing: Offers patterns for using real IO (filesystem, network, child processes) where the test intent is to verify boundary behavior, such as using a scripted fetch harness for octokit.
  • Regression Guardrails: Includes specific strategies for catching common testing pitfalls like environment variable mutation, concurrency leaks, and incorrect input mangling.

Quick Start

Use the testing-actions skill to generate a test double for a GitHub Action service and configure the environment for a local integration test.

Frequently Asked Questions about testing-actions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I mock GitHub Actions services in TypeScript?

Mock GitHub Actions services by creating lazy, type-safe test doubles for components like ActionOutputs and GitHubClient. This pattern enforces strict environment variable handling and ensures test reliability without false positives.

What is the best way to test octokit API integrations?

Testing octokit API integrations is best handled using real-IO harnesses with scripted fetch mechanisms. This verifies boundary behavior across network and filesystem operations while maintaining strict concurrency management.

Can I use this testing framework with the Effect ecosystem?

Yes, this framework is designed specifically for the Effect ecosystem. It provides comprehensive testing patterns for supply-chain code, enforcing structural reachability analysis and discriminating mutants to ensure suite integrity.

How do I prevent environment variable mutation during GitHub Actions testing?

Prevent environment variable mutation using built-in regression guardrails that catch common testing pitfalls. The framework enforces strict patterns for environment variable handling to eliminate incorrect input mangling.

Why do my GitHub Actions tests produce false positives?

GitHub Actions tests produce false positives due to concurrency leaks and inadequate service doubling. Implementing discriminating mutants and standardized test doubles eliminates these false positives and ensures test suite integrity.

Does this framework support real filesystem and network IO testing?

Yes, the framework supports real-IO testing for filesystem, network, and child processes. It offers patterns to verify boundary behavior where mocking is insufficient, ensuring accurate integration testing for supply-chain code.