Medical Research Skills for Claude Code, Codex, Cursor & Copilot
58 open-source skills for the full medical research lifecycle. Built by physicians, tested on real publications.
産業保健活動の統合管理システム
Translation pending
HealthTypeScript · PLpgSQLGitHub @hironoriuematsu-byteOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
うえまつ産業医事務所(Mestate LLC)の産業保健活動 統合管理システム。 稼働中の「ストレスチェックWeb」と将来同じSupabaseプロジェクトを共用します(開発中は別の無料プロジェクトを使用)。 • 技術: Next.js 14 (App Router) + Supabase (Auth / Postgres / RLS) + Vercel • 設計原則: RLS+最小権限 / 危険操作はSECURITY DEFINER RPC+監査ログ / 10名未満の集計非表示 / 年度は4月始まり / セッションCookie+20分自動ログアウト セットアップ手順(開発用・無料Supabaseプロジェクト)Read the full README ↗
うえまつ産業医事務所(Mestate LLC)の産業保健活動 統合管理システム。 稼働中の「ストレスチェックWeb」と将来同じSupabaseプロジェクトを共用します(開発中は別の無料プロジェクトを使用)。
| フェーズ | 内容 | 状態 |
|---|---|---|
| Phase 1 | 基盤(認証・ロール・企業共用)+ 安全衛生委員会議事録(作成・共有・添付・印刷/PDF) | ✅ 実装済み |
| Phase 2 | 面談管理(予定・実施記録・非公開メモ・意見書PDF) | ✅ 実装済み |
| Phase 3 | 健康診断結果(CSV取込・有所見・就業判定・経年・個人票・報告書サマリ・受診勧奨通知書) | ✅ 実装済み |
| Phase 4 | 統合ビュー・ダッシュボード・集計・ストレスチェック連携 | ✅ 実装済み(本番はstresリポジトリの hm-stress-link.sql で接続) |
| Phase 5 | 従業員カルテ(書類共有・産業医文書作成・履歴集約) | ✅ 実装済み |
supabase/dev_setup/0000_dev_base.sql …… 開発用のみ(companies / profiles の代替を作成)supabase/dev_setup/0001_dev_fix_recursion.sql …… 開発用のみ(RLS修正パッチ。0000を最新版で実行した場合は不要)supabase/dev_setup/0002_dev_stress_mock.sql …… 開発用のみ(ストレスチェック連携モック)supabase/migrations/0101_hm_phase1.sql …… Phase 1 本体supabase/migrations/0102_hm_phase2.sql …… Phase 2 面談管理supabase/migrations/0103_hm_phase3.sql …… Phase 3 健康診断結果supabase/migrations/0104_hm_checkup_bulk_delete.sql …… 健診記録の一括削除RPCsupabase/migrations/0106_hm_phase5_karte.sql …… Phase 5 従業員カルテsupabase/migrations/0107_hm_company_info.sql …… 企業補足情報(住所等)supabase/migrations/0108_hm_interview_pre_info.sql …… 面談の事前情報欄supabase/migrations/0109_hm_patrols_person_link.sql …… 産業医巡視記録・面談とカルテの連携supabase/migrations/0110_hm_minutes_settings.sql …… 議事録の企業別デフォルト設定supabase/migrations/0111_hm_hygiene_patrols.sql …… 衛生管理者巡視記録(チェックリスト)supabase/migrations/0112_hm_hygiene_defaults.sql …… 衛生管理者氏名のデフォルト設定supabase/migrations/0113_hm_env_patrol_files.sql …… 作業環境測定・巡視記録の写真添付supabase/migrations/0114_hm_bulk_work_judgment.sql …… 就業判定の一括入力supabase/migrations/0117_hm_judgment_setup.sql …… 健診結果の自動判定一式(判定区分2026年4月1日改定)supabase/migrations/0118_hm_followup_defaults.sql …… 事後措置の既定値を総合判定に連動supabase/migrations/0119_hm_checkup_person_link.sql …… 健診結果の生年月日・カルテ紐付けsupabase/migrations/0120_hm_interview_type_followup.sql …… 面談種別に復職後フォローアップ面談を追加supabase/migrations/0121_hm_work_judgment_pending.sql …… 就業判定に「判定保留」を追加・医師の意見の更新RPCsupabase/migrations/0122_hm_office_info.sql …… 産業医事務所の情報(帳票・CSV記載用)0000_dev_base.sql の末尾コメントに沿って、テストユーザー(office / company)とテスト企業を作成.env.local.example をコピーして .env.local を作成し、開発用プロジェクトの
Settings > API から URL と anon key を設定:
NEXT_PUBLIC_SUPABASE_URL=...
NEXT_PUBLIC_SUPABASE_ANON_KEY=...
npm install
npm run dev
ストレスチェックWeb(hironoriuematsu-byte/stres)と同じSupabaseプロジェクトに同居し、
ストレスチェックのデータは読み取りのみ参照します。依存の向きは
健康管理Web → ストレスチェックWeb の一方向のみです。
詳細はストレスチェックWeb側の連携仕様書を参照してください。
適用は次の順序で行います(すべて本番のSQL Editorで1回だけ実行)。
| # | 実行するもの | リポジトリ |
|---|---|---|
| 1 | supabase/migrations/0016_hm_link.sql | stres(profilesの別名列・companies.hm_enabled を追加) |
| 2 | supabase/migrations/0101〜0104, 0106〜0114, 0117〜0122 | kenko-kanri(本リポジトリ) |
| 3 | supabase/hm-stress-link.sql | stres(連携用の読み取り関数3つ) |
| 4 | Vercel環境変数 NEXT_PUBLIC_KENKO_URL=https://kenko.mestate.jp を設定 | stres側のVercel |
| 5 | 企業管理で対象企業の「健康管理Web」にチェック | ストレスチェックWebの画面 |
注意点:
dev_setup/ 配下のSQLは絶対に実行しない(本番にはcompanies/profilesが既にあるため)supabase/hm-stress-link.sql を使う
(本リポジトリの旧テンプレート 0105_... は削除済み)NEXT_PUBLIC_STRESS_URL=https://stres.mestate.jp を設定するkenko-kanri-khaki.vercel.app)は更新されないため、残っていれば削除する。利用者には https://kenko.mestate.jp を案内するprofiles の user_id / name / emp_id / dept は列名を変更しない
(0016の別名列の定義が壊れるため)企業ごとに Google Meet の常設ルーム(Meet の「スペース」)を1つ用意し、健康管理Webにログインしている産業医事務所と、その企業の事業者担当者だけが「面談ルームに入る」から入室できる。リンクは作り直さない限り変わらない。
| 項目 | 内容 |
|---|---|
| ルーム | 企業ごとに Meet のスペースを1つ(Meet REST API spaces.create) |
| 認証 | サービスアカウント+ドメイン全体の委任で、産業医の Workspace アカウント(GOOGLE_MEET_OWNER_EMAIL)として操作。主催者は産業医。npm 追加なし(Node の crypto で JWT 署名) |
| スコープ | meetings.space.created, meetings.space.readonly |
| アクセス種別 | TRUSTED(既定): 企業側(Workspace 外)は「参加をリクエスト」→ 産業医が承認。GOOGLE_MEET_ACCESS_TYPE=OPEN で承認不要 |
| 対象企業の限定 | hm_meet_rooms.enabled。office がオン/オフ。company は RLS で自社の有効なルームのみ読める |
| 入室 | RPC hm_meet_enter(company_id) が権限確認 → hm_meet_entries に記録 → hm_log_access → リンクを返す |
| 在室表示 | API Route が spaces.get の activeConference → participants を取得。30秒ごとにポーリング(タブ表示中のみ) |
| 開催履歴 | conferenceRecords から開始・終了時刻(参加者名は含めない) |
| APIなしでも | Meet リンクを手入力で登録可(在室表示・開催履歴なし) |
supabase/migrations/0146_hm_meet_rooms.sql を実行https://www.googleapis.com/auth/meetings.space.created,https://www.googleapis.com/auth/meetings.space.readonly を登録GOOGLE_SERVICE_ACCOUNT_EMAIL / GOOGLE_SERVICE_ACCOUNT_PRIVATE_KEY / GOOGLE_MEET_OWNER_EMAIL(任意で GOOGLE_MEET_ACCESS_TYPE)→ Redeployhm_ 接頭辞(hm_minutes, hm_minute_files, hm_interviews, hm_interview_opinions, hm_access_logs など)interview_requests(高ストレス申出)との連携はhm_interviews.interview_request_idで受け口のみ用意(本番スキーマ確認後に接続)0101_ からの番号付きSQLファイルで管理し、SQL Editorで手動実行results 等)は読み取り専用で参照(Phase 4)hm-files(非公開・企業別RLS)hm_access_logs は削除・変更不可(閲覧はofficeのみ)| ロール | 権限 |
|---|---|
| office | 産業医事務所。全企業・全機能。議事録の削除(論理削除・理由必須・ログ記録)はofficeのみ |
| company | 企業側担当者。自社の議事録の作成・閲覧・添付 |
| employee | 従業員。「従業員に公開」された自社議事録の閲覧のみ |
| jimu | 本システムは対象外(ストレスチェックWebのみ) |