From a1f94b504729eaee11b94d0f21ef5630241e8a52 Mon Sep 17 00:00:00 2001 From: peaceiris <30958501+peaceiris@users.noreply.github.com> Date: Sun, 10 May 2026 22:27:47 +0900 Subject: [PATCH] docs: add repository guidelines Document repository structure, development commands, testing expectations, and release-only handling for generated lib/index.js. Co-Authored-By: Codex --- AGENTS.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..948e906 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,59 @@ +# Repository Guidelines + +## Agent-Specific Instructions + +Use English for repository-facing content, including documentation, code comments, commit messages, and pull request title/body/comments, unless the task explicitly requires another language. + +## Project Structure & Module Organization + +This is a TypeScript GitHub Action for publishing GitHub Pages. Source files live +in `src/`; `src/index.ts` is the entry point and delegates to modules such as +`get-inputs.ts`, `git-utils.ts`, and `set-tokens.ts`. Tests live in `__tests__/`, +with static fixtures under `__tests__/fixtures/`. Documentation is in `README.md` +and `CHANGELOG.md`; screenshots and docs assets are in `images/`. `action.yml` +defines action inputs and points to generated `lib/index.js`. + +## Build, Test, and Development Commands + +Use Node `>=20.11.0` and npm `>=10.2.4`. + +- `npm ci`: install dependencies from `package-lock.json`. +- `npm run all`: run format, lint, and Jest tests. +- `npm run build`: bundle `src/index.ts` into `lib/` with `ncc`. +- `npm run tsc`: run the TypeScript compiler checks. +- `npm test`: run Jest with coverage and verbose output. +- `npm run lint` / `npm run lint:fix`: check or fix ESLint issues. +- `npm run format:check` / `npm run format`: check or apply Prettier formatting. + +When changing `src/`, build locally if needed for verification, but do not commit +`lib/index.js` in normal changes. Generated `lib/index.js` is placed on `main` +only during releases. + +## Coding Style & Naming Conventions + +Write strict TypeScript and keep module boundaries small. Use 2-space +indentation, semicolons, single quotes, no trailing commas, and a 100-character +print width, matching `.prettierrc.json`. Test files use `*.test.ts`. Prefer +names that match action inputs where relevant, for example `publish_branch`. + +## Testing Guidelines + +Jest with `ts-jest` is the test framework. Add focused tests in `__tests__/` near +related behavior, and place reusable filesystem samples in `__tests__/fixtures/`. +Run `npm test` for coverage, and use `npm run all` before opening a pull request +that touches TypeScript source or tests. + +## Commit & Pull Request Guidelines + +Recent history follows conventional commit prefixes such as `fix(deps):`, +`chore(deps):`, `docs:`, and `ci:`. Use a concise imperative subject and include +the scope when it clarifies the affected area. Pull requests should describe the +change, link related issues, list verification commands, and include screenshots +only for documentation image changes. Mention any action input or behavior change +explicitly so reviewers can assess compatibility. + +## Security & Configuration Tips + +Do not commit tokens, private keys, or generated secrets. Treat inputs such as +`deploy_key`, `github_token`, and `personal_token` as sensitive, and keep examples +limited to placeholder values.