workflow-automation

When to use this skill

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "workflow-automation" with this command: npx skills add supercent-io/skills-template/supercent-io-skills-template-workflow-automation

Workflow Automation

When to use this skill

  • Repetitive tasks: running the same commands every time

  • Complex builds: multi-step build processes

  • Team onboarding: a consistent development environment

Instructions

Step 1: npm scripts

package.json:

{ "scripts": { "dev": "nodemon src/index.ts", "build": "tsc && vite build", "test": "jest --coverage", "test:watch": "jest --watch", "lint": "eslint src --ext .ts,.tsx", "lint:fix": "eslint src --ext .ts,.tsx --fix", "format": "prettier --write "src/**/*.{ts,tsx,json}"", "type-check": "tsc --noEmit", "pre-commit": "lint-staged", "prepare": "husky install", "clean": "rm -rf dist node_modules", "reset": "npm run clean && npm install", "docker:build": "docker build -t myapp .", "docker:run": "docker run -p 3000:3000 myapp" } }

Step 2: Makefile

Makefile:

.PHONY: help install dev build test clean docker

.DEFAULT_GOAL := help

help: ## Show this help @grep -E '^[a-zA-Z_-]+:.?## .$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'

install: ## Install dependencies npm install

dev: ## Start development server npm run dev

build: ## Build for production npm run build

test: ## Run all tests npm test

lint: ## Run linter npm run lint

lint-fix: ## Fix linting issues npm run lint:fix

clean: ## Clean build artifacts rm -rf dist coverage

docker-build: ## Build Docker image docker build -t myapp:latest .

docker-run: ## Run Docker container docker run -d -p 3000:3000 --name myapp myapp:latest

deploy: build ## Deploy to production @echo "Deploying to production..." ./scripts/deploy.sh production

ci: lint test build ## Run CI pipeline locally @echo "✅ CI pipeline passed!"

Usage:

make help # Show all commands make dev # Start development make ci # Run full CI locally

Step 3: Husky + lint-staged (Git Hooks)

package.json:

{ "lint-staged": { ".{ts,tsx}": [ "eslint --fix", "prettier --write" ], ".{json,md}": [ "prettier --write" ] } }

.husky/pre-commit:

#!/usr/bin/env sh . "$(dirname -- "$0")/_/husky.sh"

echo "Running pre-commit checks..."

Lint staged files

npx lint-staged

Type check

npm run type-check

Run tests related to changed files

npm test -- --onlyChanged

echo "✅ Pre-commit checks passed!"

Step 4: Task Runner scripts

scripts/dev-setup.sh:

#!/bin/bash set -e

echo "🚀 Setting up development environment..."

Check prerequisites

if ! command -v node &> /dev/null; then echo "❌ Node.js is not installed" exit 1 fi

if ! command -v docker &> /dev/null; then echo "❌ Docker is not installed" exit 1 fi

Install dependencies

echo "📦 Installing dependencies..." npm install

Copy environment file

if [ ! -f .env ]; then echo "📄 Creating .env file..." cp .env.example .env echo "⚠️ Please update .env with your configuration" fi

Start Docker services

echo "🐳 Starting Docker services..." docker-compose up -d

Wait for database

echo "⏳ Waiting for database..." ./scripts/wait-for-it.sh localhost:5432 --timeout=30

Run migrations

echo "🗄️ Running database migrations..." npm run migrate

Seed data (optional)

read -p "Seed database with sample data? (y/n) " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]]; then npm run seed fi

echo "✅ Development environment ready!" echo "Run 'make dev' to start the development server"

scripts/deploy.sh:

#!/bin/bash set -e

ENV=$1

if [ -z "$ENV" ]; then echo "Usage: ./deploy.sh [staging|production]" exit 1 fi

echo "🚀 Deploying to $ENV..."

Build

echo "📦 Building application..." npm run build

Run tests

echo "🧪 Running tests..." npm test

Deploy based on environment

if [ "$ENV" == "production" ]; then echo "🌍 Deploying to production..." # Production deployment logic ssh production "cd /app && git pull && npm install && npm run build && pm2 restart all" elif [ "$ENV" == "staging" ]; then echo "🧪 Deploying to staging..." # Staging deployment logic ssh staging "cd /app && git pull && npm install && npm run build && pm2 restart all" fi

echo "✅ Deployment to $ENV completed!"

Step 5: GitHub Actions workflow automation

.github/workflows/ci.yml:

name: CI

on: push: branches: [main, develop] pull_request: branches: [main]

jobs: test: runs-on: ubuntu-latest

steps:
  - uses: actions/checkout@v4

  - name: Setup Node.js
    uses: actions/setup-node@v4
    with:
      node-version: '18'
      cache: 'npm'

  - name: Install dependencies
    run: npm ci

  - name: Run linter
    run: npm run lint

  - name: Type check
    run: npm run type-check

  - name: Run tests
    run: npm test -- --coverage

  - name: Upload coverage
    uses: codecov/codecov-action@v3

Output format

project/ ├── scripts/ │ ├── dev-setup.sh │ ├── deploy.sh │ ├── test.sh │ └── cleanup.sh ├── Makefile ├── package.json └── .husky/ ├── pre-commit └── pre-push

Constraints

Required rules (MUST)

  • Idempotency: safe to run scripts multiple times

  • Error handling: clear messages on failure

  • Documentation: comments on how to use the scripts

Prohibited items (MUST NOT)

  • Hardcoded secrets: do not include passwords or API keys in scripts

  • Destructive commands: do not run rm -rf without confirmation

Best practices

  • Use Make: platform-agnostic interface

  • Git Hooks: automated quality checks

  • CI/CD: automated with GitHub Actions

References

  • npm scripts

  • Make Tutorial

  • Husky

Metadata

Version

-- Current version: 1.0.0 -- Last updated: 2025-01-01 -- Compatible platforms: Claude, ChatGPT, Gemini

Tags

#automation #scripts #workflow #npm-scripts #Makefile #utilities

Examples

Example 1: Basic usage

Example 2: Advanced usage

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

deployment-automation

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

git-workflow

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

copilot-coding-agent

No summary provided by upstream source.

Repository SourceNeeds Review
workflow-automation | V50.AI