This document covers what is needed to publish OpenSpecPowers to your own GitHub account and keep it as a healthy open-source project.
Provide these values before automation:
- GitHub username (or org):
YOUR_GITHUB_OWNER - Repository name: usually
OpenSpecPowers - Visibility:
publicorprivate - Git commit identity:
GIT_NAMEGIT_EMAIL
- Personal Access Token (classic or fine-grained) with:
- repo administration/write access for target repo
- contents: read/write
- pull requests: read/write
- workflows: read/write (if editing workflow files by push)
- npm scope/package plan (
@your-scope/openspecpowersor keep current) - project website URL
- security contact email
- support channel (Discussions/Discord/Email)
npm run build
npm test
bash scripts/opsp-conflict-audit.sh .# Set identity in this repo
git config user.name "YOUR_NAME"
git config user.email "YOUR_EMAIL"
# Point remote to your repository
git remote set-url origin https://github.com/YOUR_GITHUB_OWNER/OpenSpecPowers.git
# Push current branch
git push -u origin mainIf the repository does not exist yet, create it first in GitHub UI or via API, then run the commands above.
After first push, configure:
- Description
- Topics:
ai,cli,spec-driven-development,openspecpowers - Homepage URL
- Enable Issues
- Enable Discussions (optional, recommended)
- Default labels and issue templates
- Repository secret:
NPM_TOKENfor automated npm publishing
This repository uses tag-driven publishing.
Release flow:
npm version patch
git push origin main --follow-tagsGitHub Actions will:
- verify the pushed tag matches
package.json - build and test the package
- publish to npm using
NPM_TOKEN - create a GitHub Release for the tag
This repo includes:
LICENSEREADME.mdCONTRIBUTING.mdCODE_OF_CONDUCT.mdSECURITY.mdSUPPORT.md.github/ISSUE_TEMPLATE/*.github/pull_request_template.md
For your GitHub profile page:
- avatar
- display name
- bio
- location
- website link
- profile README (optional but useful)
- pinned repositories