diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 09bccfa..7bd8101 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -13,3 +13,4 @@ - Keep the PR focused. - Call out any follow-up work explicitly instead of bundling it into this change. +- Do not relax branch protection, required reviews, or required CI checks to merge this PR. Governance changes should be handled separately from feature or docs changes. diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..f251ab2 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,25 @@ +# Agent Instructions + +This repository is maintained under strict branch protection. Treat those protections as part of the repository policy, not as temporary friction to work around. + +## Branch Protection Policy + +- Never change branch protection rules, rulesets, required reviews, required status checks, or admin enforcement in order to land a change unless the user explicitly asks for that exact repository-governance change. +- Never disable `CODEOWNERS` review requirements, required approving review counts, required conversation resolution, or required CI checks just to merge a PR. +- Never push directly to a protected branch to bypass the normal review or CI path. +- Never use admin merge, force push, or equivalent bypass mechanisms to land a change unless the user explicitly asks for that governance exception. +- If branch protection blocks a merge, stop and tell the user what requirement is still unmet. + +## Preferred Flow + +1. Make the change on a feature branch. +2. Open a PR. +3. Let required CI checks complete. +4. Wait for the required review state. +5. Merge only through the normal repository policy path. + +## If Blocked + +- Report the exact protection rule that is blocking progress. +- Ask the user whether they want to satisfy the rule or intentionally change repository governance. +- Treat repository-governance changes as a separate task from the feature or docs change that triggered the block. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d210b22..8647553 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -32,6 +32,7 @@ Thanks for contributing to `react-devtool-cli`. - Add or update tests when behavior changes. - Preserve the CLI's bias toward deterministic, structured output. - Do not bundle unrelated refactors into the same PR. +- Do not weaken branch protection, bypass required reviews, or disable required CI checks to land a change. If protection blocks a merge, satisfy the rule or ask the maintainer whether repository governance should change as a separate decision. ## Development diff --git a/README.md b/README.md index a71622d..a6f90f9 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,70 @@ This follows the same overall shape as Playwright's own CLI surface: one command npm install -g react-devtool-cli ``` +## Install the bundled agent skill + +If you want an AI coding agent to know how to operate the published `rdt` CLI, install the bundled `react-devtool-cli` skill with the method that matches your toolchain. + +### Codex + +Copy `skills/react-devtool-cli` into `$CODEX_HOME/skills` (`~/.codex/skills` by default), then restart Codex. + +macOS/Linux: + +```bash +git clone https://github.com/Ring-wdr/react-devtool-cli.git +mkdir -p ~/.codex/skills +cp -R react-devtool-cli/skills/react-devtool-cli ~/.codex/skills/react-devtool-cli +``` + +Windows PowerShell: + +```powershell +git clone https://github.com/Ring-wdr/react-devtool-cli.git +New-Item -ItemType Directory -Force "$env:USERPROFILE/.codex/skills" | Out-Null +Copy-Item -Recurse -Force ".\\react-devtool-cli\\skills\\react-devtool-cli" "$env:USERPROFILE/.codex/skills/react-devtool-cli" +``` + +### Claude Code + +Claude Code discovers skills from `~/.claude/skills//SKILL.md` for personal skills and `.claude/skills//SKILL.md` for project-scoped skills. Copy this repository's bundled skill directory into one of those locations: + +```bash +git clone https://github.com/Ring-wdr/react-devtool-cli.git +mkdir -p ~/.claude/skills +cp -R react-devtool-cli/skills/react-devtool-cli ~/.claude/skills/react-devtool-cli +``` + +For project-only usage, copy it to `.claude/skills/react-devtool-cli` inside your repo instead. + +### Gemini CLI + +Gemini CLI has built-in skill management. Install directly from this repo: + +```bash +gemini skills install https://github.com/Ring-wdr/react-devtool-cli.git --path skills/react-devtool-cli +``` + +If you already cloned this repository locally, you can also link the whole skills folder and let Gemini discover it: + +```bash +gemini skills link /path/to/react-devtool-cli/skills --scope workspace +``` + +Reload discovered skills with `/skills reload` if the current session is already open. + +### skills.sh + +If you want one installer path that configures the skill for a supported agent automatically, use `skills.sh`: + +```bash +npx skills add https://github.com/Ring-wdr/react-devtool-cli --skill react-devtool-cli +``` + +This is the easiest cross-tool path when you are using ecosystems such as Claude Code, Gemini CLI, Codex, or Antigravity. + +If you are working on the repository itself rather than using the published CLI, install `skills/react-devtool-cli-repo` with the same tool-specific pattern. + Published package notes: - npm consumers receive built files from `dist/`, not the repository source tree. @@ -251,9 +315,13 @@ Use `node pick` when the agent knows the visible element but not the component n ## Skills -- Installed CLI user skill: [skills/react-devtool-cli/SKILL.md](./skills/react-devtool-cli/SKILL.md) +Bundled skill directories in this repository: + +- CLI user skill: [skills/react-devtool-cli/SKILL.md](./skills/react-devtool-cli/SKILL.md) - Repository maintenance skill: [skills/react-devtool-cli-repo/SKILL.md](./skills/react-devtool-cli-repo/SKILL.md) +Use the installation routes above to place either skill into your agent's skill directory or installer flow. + ## Notes - Initial browser support is Chromium-only diff --git a/docs/public-repo-strategy.md b/docs/public-repo-strategy.md index 18de6d9..e95a35b 100644 --- a/docs/public-repo-strategy.md +++ b/docs/public-repo-strategy.md @@ -51,3 +51,10 @@ This repository is run as a solo-maintainer open source project. The operating m - Discussions disabled unless issue volume justifies a separate support channel - Secret scanning enabled when available - Topic metadata kept current so the repo is discoverable without overselling scope + +## 8. Governance Guardrails + +- Branch protection is part of the maintenance policy, not a convenience setting. +- Do not reduce required reviews, required checks, or code owner enforcement just to land an otherwise-ready PR. +- Do not use admin overrides for normal day-to-day maintenance. +- If a branch protection rule becomes counterproductive, change that governance intentionally in a separate maintainer decision, not as part of shipping an unrelated fix.