{"id":"file-headers","name":"file-headers","summary":"すべてのコーディングエージェント(Claude Code、Codex、またはその他の)に対して、すべての変更セットで必須です — エージェントが作成または更新するすべての該当ソースファイルは、必ずプロジェクトの著作権/著者ヘッダー(ファイル概要+正確な著者行)から始まらなければなりません。","body":"# File Headers — Copyright Comment + File Overview\n\nEvery applicable source file in this repository starts with a header comment\ncontaining a **file overview** and the **exact author line**:\n\n```\n@author Son Nguyen <hoangson091104@gmail.com>\n```\n\nThe name and email must be exactly as above — no variations, no substitutions,\nno other names. This applies to **every coding agent** working in this repo\n(Claude Code, Codex, or any other tool): when you **create** a new applicable\nfile, write the header first; when you **update** an existing applicable file\nthat is missing the header, add it as part of the same change.\n\n## Applicable files\n\n| Included | Excluded |\n| -------- | -------- |\n| `*.js`, `*.ts`, `*.tsx`, `*.cjs`, `*.mjs` | anything under `node_modules/`, `dist/`, `build/`, `data/`, `.worktrees/` |\n| `*.py`, `*.sh` | vendored/minified files (`*.min.js`, `wiki/mermaid.min.js`) |\n| `*.css` | generated files (`wiki/i18n-content.js` — carries its own AUTO-GENERATED banner) |\n| | snapshots (`__snapshots__/`), lockfiles, JSON/YAML/Markdown |\n\n## Header formats by file type\n\n**JS / TS / TSX — server & scripts style** (overview inline in `@file`):\n\n```js\n/**\n * @file One-to-few-sentence overview of what this file does and why it\n * exists. Mention the key contracts or invariants the file owns.\n * @author Son Nguyen <hoangson091104@gmail.com>\n */\n```\n\n**JS / TS / TSX — client style** (`@file` name + `@description` overview), used\nunder `client/src/`:\n\n```ts\n/**\n * @file ComponentName.tsx\n * @description What the component/module renders or provides and how it fits\n * into the app.\n * @author Son Nguyen <hoangson091104@gmail.com>\n */\n```\n\n**CSS** (same block-comment shape as `client/src/index.css`):\n\n```css\n/**\n * @file file.css\n * @description What these styles cover.\n * @author Son Nguyen <hoangson091104@gmail.com>\n */\n```\n\n**Shell** (`#` block right after the shebang; existing overview comments count —\njust make sure the `@author` line is in the block):\n\n```bash\n#!/usr/bin/env bash\n# script-name.sh — what the script does, one to few lines.\n# @author Son Nguyen <hoangson091104@gmail.com>\n```\n\n**Python** (inside the module docstring):\n\n```python\n\"\"\"\nmodule.py — what the module does.\n\n@author Son Nguyen <hoangson091104@gmail.com>\n\"\"\"\n```\n\n## Rules\n\n1. **New file → header first.** Any applicable file you create starts with the\n   header before any code (after the shebang for scripts).\n2. **Touched file missing header → add it.** If you edit a file that lacks the\n   header, add one in the same commit. Write a real overview — describe what\n   the file actually does; never a placeholder like \"TODO\" or \"utility file\".\n3. **Exact author line.** `@author Son Nguyen <hoangson091104@gmail.com>` —\n   byte-exact, in every file type (shell and Python use it inside `#` / docstring\n   comments).\n4. **Don't churn existing headers.** If a file already has a compliant header,\n   leave it alone unless the file's purpose changed (then update the overview).\n5. **Overviews must stay truthful.** When an edit changes what a file does,\n   update its `@file`/`@description` overview in the same change.\n\n## Audit\n\nRun the bundled checker to list any applicable file missing the header:\n\n```bash\nbash .claude/skills/file-headers/scripts/check-headers.sh\n```\n\nExit code `0` = fully compliant; `1` = the printed files are missing headers.\nRun it before finishing any change-set that adds files, and during reviews.\n\nOn every pull request, GitHub Actions runs\n`.claude/skills/file-headers/scripts/check-headers-pr.sh` against only the\nfiles changed in the PR diff (added, copied, renamed, or modified). Test locally\nbefore pushing:\n\n```bash\nbash .claude/skills/file-headers/scripts/check-headers-pr.sh origin/master HEAD\n```","author":"@hoangsonww","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/hoangsonww/Claude-Code-Agent-Monitor/tree/master/.claude/skills/file-headers","license":"MIT","category":"writing","lang":"en","tokens":961,"stars":0,"calls30d":2,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[{"path":"scripts/check-headers-pr.sh","size":4068,"sha256":"588599ab21768b1cae73c91ab20238d37b972f9b747d8d3327f735bb6537ef9b"},{"path":"scripts/check-headers.sh","size":1198,"sha256":"965d7035fcb7343e367415a49ece70403844065e5dfc9f6b1884d369ca9a8c7e"}],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[],"scannedAt":"2026-08-22","hasScripts":true,"networkEndpoints":[]}}