skills/oss-ready/SKILL.md
Add OSS-standard files (README, CONTRIBUTING, LICENSE, CODE_OF_CONDUCT, SECURITY, GitHub templates) and run an 8-section readiness audit. Use for 'make this open source', 'OSS readiness', 'public release'. Skip for marketing pages or closed code.
npx skillsauth add montimage/skills oss-readyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Transform projects into professional open-source repositories with standard components, GitHub templates, and an 8-section OSS readiness audit.
Verify before running. Stop and tell the user if any check fails.
git rev-parse --git-dir succeeds)gh CLI is installed and authenticated for Section 3 and 6 audits (gh auth status)git status first; if dirty, ask the user whether to stash or aborttest -d "$SKILL_DIR/assets"If gh is missing, the audit still runs but Sections 3 and 6 are marked n/a — gh CLI not available rather than skipped silently.
Before making any changes, sync with the remote to avoid conflicts:
branch="$(git rev-parse --abbrev-ref HEAD)"
git fetch origin
git pull --rebase origin "$branch"
If the working tree is dirty, stash first, sync, then pop. If origin is missing or conflicts occur, stop and ask the user before continuing.
Before making any changes:
feat/, feature/, etc.)feat/oss-readyIdentify:
Use sub-agents for parallel discovery. Launch multiple Agent tool calls concurrently to keep the main context clean:
package.json, pyproject.toml, Cargo.toml, go.mod, pom.xml, and identify the primary language(s), build tools, and package manager. Return a structured summary.Collect the results from all three agents before proceeding.
Use sub-agents for parallel file creation. The files below are independent of each other. Dispatch them concurrently using the Agent tool, then collect results:
cp commands only (never read+write — content triggers filtering). Replace placeholders with sed after copying.Each agent should return the path(s) of files it created or updated.
README.md - Enhance with:
CONTRIBUTING.md - Include:
LICENSE - Default to MIT unless specified.
CODE_OF_CONDUCT.md - Contributor Covenant.
SECURITY.md - Vulnerability reporting process.
IMPORTANT — Copy asset files using shell commands only. Some asset files (CODE_OF_CONDUCT.md, SECURITY.md) contain language about harassment, abuse, and vulnerability disclosure that will trigger content filtering if you attempt to read and re-write the content. Always use cp to copy these files. Never read their contents into context and write them back out.
Destructive-overwrite caution. cp clobbers existing files silently. Before each copy, check the target with test -f <path> — if it exists with non-default content, ask the user before overwriting (cp -i will prompt) or back the file up first (cp <path> <path>.bak). The audit step (5) is read-only by design; the modification window is steps 2–4 only.
# Copy from the skill's assets directory — use cp, do NOT read+write
SKILL_ASSETS="{SKILL_DIR}/assets"
for f in LICENSE-MIT:LICENSE CODE_OF_CONDUCT.md:CODE_OF_CONDUCT.md SECURITY.md:SECURITY.md; do
src="${f%%:*}"; dst="${f##*:}"
test -f "$dst" && cp "$dst" "$dst.bak" # backup any existing file
cp "$SKILL_ASSETS/$src" "$dst"
done
After copying, only use sed to replace placeholders (e.g., [INSERT CONTACT METHOD], [INSERT EMAIL]) with project-specific values. Do not rewrite the full file.
For history rewrites (git filter-repo in Step 5 / Section 2): always run with --dry-run first, confirm the diff with the user, and require an explicit git push --force-with-lease rather than --force. Never rewrite history without user confirmation.
Copy from the skill's assets/.github/ using shell commands:
mkdir -p .github/ISSUE_TEMPLATE
cp "$SKILL_ASSETS/.github/ISSUE_TEMPLATE/bug_report.md" .github/ISSUE_TEMPLATE/
cp "$SKILL_ASSETS/.github/ISSUE_TEMPLATE/feature_request.md" .github/ISSUE_TEMPLATE/
cp "$SKILL_ASSETS/PULL_REQUEST_TEMPLATE.md" .github/ 2>/dev/null || \
cp "$SKILL_ASSETS/.github/PULL_REQUEST_TEMPLATE.md" .github/
Use sub-agents for parallel execution. These tasks are independent — dispatch them concurrently:
docs/ directory and populate the relevant files based on the project type identified in Step 1. Target structure:
docs/
├── ARCHITECTURE.md # System design, components
├── DEVELOPMENT.md # Dev setup, debugging
├── DEPLOYMENT.md # Production deployment
└── CHANGELOG.md # Version history
package.json — name, description, keywords, repository, licensepyproject.toml or setup.pyCargo.tomlgo.mod + README badges.gitignore with comprehensive patterns for the detected tech stack.Each agent should return a summary of what it created or updated.
Run the full Open Source Project Checklist against the target repo. Each item is binary (done / not done). For each item, mark the status and capture a one-line justification or pointer (file path, command, screenshot URL, etc.).
Drop the checklist into the repo so maintainers can track progress between sessions:
cp "$SKILL_ASSETS/OSS_READINESS_CHECKLIST.md" docs/OSS_READINESS_CHECKLIST.md
Use sub-agents to run the audit in parallel. Each section is independent — dispatch concurrently and collect results. The eight sections plus bonus items map to eight + one sub-agents:
gh CLI for GitHub-side checks)gh CLI)Each audit agent should:
grep, gh, ls, git).{item, status: done|missing|n/a, evidence}.The full checklist (8 sections + bonus items + GitHub Community Standards validation pointer) lives in references/checklist.md to keep SKILL.md within the agent's context budget. Each audit sub-agent reads only its assigned section from that file.
# Copy the drop-in checklist into the target repo so maintainers can track progress
cp "$SKILL_ASSETS/OSS_READINESS_CHECKLIST.md" docs/OSS_READINESS_CHECKLIST.md
See references/checklist.md for every audit item, the gh command that verifies it, and the bonus "Great" items list.
After steps 1–5, output a Step Completion Report:
◆ OSS Readiness (step 6 of 6 — <repo>)
··································································
Section 1 License: √ N/3
Section 2 Codebase Cleanup: √ N/5
Section 3 Repository Setup: √ N/5
Section 4 Essential Docs: √ N/5
Section 5 Testing & Automation: √ N/4
Section 6 GitHub Settings: √ N/5
Section 7 Packaging: √ N/3
Section 8 Final Polish: √ N/5
Bonus items: √ N/4
____________________________
Result: PASS | FAIL | PARTIAL
Then list:
gh repo edit, gh api ...) the user can run themselvesThe skill run is complete when all of the following are verifiable:
main)LICENSE, CODE_OF_CONDUCT.md, SECURITY.md exist at the repo root and are byte-identical to the asset templates except for sed-replaced placeholdersREADME.md and CONTRIBUTING.md exist and contain every required section listed in Step 2.github/ISSUE_TEMPLATE/bug_report.md, .github/ISSUE_TEMPLATE/feature_request.md, and a PULL_REQUEST_TEMPLATE.md (root or .github/) existdocs/OSS_READINESS_CHECKLIST.md is present in the target repodone/total count and a final PASS | FAIL | PARTIAL verdictassets/CODE_OF_CONDUCT.md or assets/SECURITY.md was read into context (only cp + sed were used) to avoid content filtering on harassment/disclosure languageThe Step Completion Report at the end of the run must match this shape exactly (counts vary per repo):
◆ OSS Readiness (step 6 of 6 — my-cool-project)
··································································
Section 1 License: √ 3/3
Section 2 Codebase Cleanup: √ 4/5
Section 3 Repository Setup: √ 5/5
Section 4 Essential Docs: √ 5/5
Section 5 Testing & Automation: × 2/4
Section 6 GitHub Settings: √ 4/5
Section 7 Packaging: √ 3/3
Section 8 Final Polish: × 2/5
Bonus items: — 1/4
____________________________
Result: PARTIAL
Followed by:
.github/dependabot.yml (template available at <url>)")gh calls the maintainer can run themselves (e.g., gh repo edit --add-topic open-source,documentation)LICENSE, README.md, or other root file already exists with non-default content, the skill must enhance, not overwrite. Diff the current file against the asset template; only add missing sections. Ask the user before any destructive replacement.LICENSE headers (Apache 2.0, GPLv3, etc.) and skip the LICENSE copy step; record done against Section 1 with the existing license name.CODE_OF_CONDUCT.md or SECURITY.md content into context (vs. cp-ing it), the run must abort that sub-task with a clear error and re-issue the copy as a shell command.gh not installed: Sections 3 and 6 emit n/a — gh CLI not available for each gh-dependent item; rest of audit proceeds.Templates in assets/:
LICENSE-MIT — MIT license templateCODE_OF_CONDUCT.md — Contributor CovenantSECURITY.md — Security policy templateOSS_READINESS_CHECKLIST.md — Drop-in checklist for the target repo.github/ISSUE_TEMPLATE/bug_report.md.github/ISSUE_TEMPLATE/feature_request.md.github/PULL_REQUEST_TEMPLATE.mddevelopment
Expand unit test coverage by targeting untested branches and edge cases. Use when users ask to "increase test coverage", "add more tests", "expand unit tests", "cover edge cases", "improve test coverage", "find untested code", "what's not tested", "run coverage report", "write missing tests", or want to identify and fill gaps in existing test suites. Adapts to project's testing framework. Trigger this skill whenever the user mentions test gaps, untested code, coverage percentages, or wants to harden their test suite.
development
Audit npm/pip/Docker/GitHub Actions for supply chain risks; apply cooldown, lockfile, ignore-scripts, SHA pinning, scanning after approval. Use for 'supply chain audit', 'harden dependencies'. Skip for runtime vulns, secret scanning, code review.
development
Analyze agent skills for security risks, malicious patterns, and potential dangers before installation. Use when asked to "audit a skill", "check if a skill is safe", "analyze skill security", "review skill risk", "should I install this skill", "is this skill safe", "scan this skill", or when evaluating any skill directory for trust and safety. Also triggers when the user pastes a skill install command like "npx skills add https://github.com/org/repo --skill name". Produces a comprehensive security report with a clear install/reject verdict. Trigger this skill proactively whenever the user is about to install a third-party skill or mentions concerns about skill safety.
testing
Prepare a repository for end-to-end OSS release across 6 sub-agent steps: audit, branch cleanup, docs, README, publications, optional Pages. Use for 'full OSS prep', 'OSS release flow', 'open-source this repo'. Skip for audit-only (use oss-ready) or single-doc edits.