| | Related | ||
| | 🗜️ Compress — | | 🗻 Format — |
This CLI tool brings GitHub repository maintenance utilities
to your workflow.
Clean 🎁
Dispatch 🎁
Edit 🎁
Node 🎁
NPM 🎁
Rust 🎁
GitHub 🎁
Star 🎁
Set Base and Token in your .env before running any commands.
There are two ways to use Maintain. Install it globally for repeated use, or
run it directly without installing.
Using NPM:
npm install -g @playform/maintain
Using Yarn:
yarn global add @playform/maintain
Using PNPM:
pnpm add -g @playform/maintain
Using NPM:
npx @playform/maintain < Command > [Arguments...]
Using Yarn:
yarn dlx @playform/maintain < Command > [Arguments...]
Using PNPM:
pnpx @playform/maintain < Command > [Arguments...]
Once installed, invoke Maintain followed by a subcommand:
Maintain < Command > [Arguments...]
Deletes GitHub Actions workflow runs, their logs, and caches for the specified repositories. Omit repositories to target all accessible ones.
Maintain Clean MyRepo AnotherRepo
Maintain Clean
Scans project directories for package manifests (package.json, Cargo.toml,
etc.) and generates .github/dependabot.yml alongside a supporting
.github/workflows/Dependabot.yml workflow to keep dependencies up-to-date
automatically.
Maintain Dependabot
Triggers workflow_dispatch events for every workflow in the specified
repositories on the Current ref. Omit repositories to dispatch for all
accessible ones.
Maintain Dispatch MyRepo AnotherRepo
Maintain Dispatch
Configures repository and organization settings: vulnerability alerts, automated security fixes, merge strategies, auto-merge, branch deletion on merge, fork settings, web commit signoffs, and default Actions permissions.
Maintain Edit MyRepo AnotherRepo
Maintain Edit
Generates or updates .github/workflows/Node.yml for Node.js projects
(package.json). Configures pnpm with lock-file caching and adds steps for
build, test, and prepublishOnly scripts. Uploads ./Target artifacts when
a build script is present.
Maintain Node
Generates or updates .github/workflows/Cloudflare.yml for Cloudflare Workers
projects (wrangler.toml). Configures cloudflare/wrangler-action for
deployments.
Maintain Cloudflare
Generates or updates .github/workflows/NPM.yml for packages published to NPM.
Adds a publish step via npm publish --legacy-peer-deps --ignore-scripts when
build, prepublishOnly, or Build scripts are detected.
Maintain NPM
Generates or updates .github/workflows/Rust.yml for Rust projects
(Cargo.toml). Caches Cargo dependencies and builds in release mode with all
features enabled.
Maintain Rust
Generates or updates .github/workflows/GitHub.yml for general CI use across
repositories.
Maintain GitHub
Meta-command that runs all workflow generators — Dependabot, Node,
Cloudflare, NPM, Rust, and GitHub — in a single pass.
Maintain Workflow
Reads all package.json files under Base, collects every NPM dependency, and
stars their corresponding GitHub repositories.
Maintain Star
Discovers and logs package file information across project directories.
Maintain Complexity "src/**/*.ts"
Maintain Complexity
.env ConfigurationCreate a .env file in the directory where you run Maintain:
# Your GitHub username — used by Clean, Dispatch, Edit.
User="YourGitHubUsername"
# Root directory scanned for package manifests.
# Defaults to the current working directory.
# Used by Star and all workflow commands.
Base="/path/to/your/projects"
# GitHub Personal Access Token with repo, workflow, and admin:org scopes.
# Used by Clean, Dispatch, Edit, Star.
Token="YourGitHubPAT"
See CHANGELOG.md for a history of changes to this tool.