{"_id":"@cursorversinc/medical-ai-boundary-kit","name":"@cursorversinc/medical-ai-boundary-kit","dist-tags":{"latest":"2.0.0"},"versions":{"2.0.0":{"name":"@cursorversinc/medical-ai-boundary-kit","version":"2.0.0","description":"医療AI境界判定キット — 3省2ガイドライン準拠チェッカー + 監査証跡 + 文書生成","type":"module","main":"kit-v2.mjs","bin":{"medical-ai-boundary-kit":"kit-v2.mjs","mai-boundary":"kit-v2.mjs"},"scripts":{"check":"node kit-v2.mjs --mode check --preset patient-handout-no-phi","presets":"node kit-v2.mjs --mode presets","verify":"node kit-v2.mjs --mode verify","test":"node --test"},"keywords":["medical-ai","compliance","healthcare","audit","SaMD"],"author":{"name":"Masayuki Otawara","email":"info@cursorvers.com"},"engines":{"node":">=20.0.0"},"license":"SEE LICENSE IN LICENSE.md","publishConfig":{"access":"public"},"_id":"@cursorversinc/medical-ai-boundary-kit@2.0.0","gitHead":"67f30d304a06801d7b5a798c02b78bd9beae178b","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-RksDBmWrTqcWUr/jPDqhCbVmwUZw6j/ZguywgiNB0zpPN0nJzgVpoHo3BpM2pm6WEjKlbagKi6w7ttYHI0nP3g==","shasum":"bfe3fa8f188ce1e29f3cae99c5c55bc50ccfd92d","tarball":"https://registry.npmjs.org/@cursorversinc/medical-ai-boundary-kit/-/medical-ai-boundary-kit-2.0.0.tgz","fileCount":16,"unpackedSize":181371,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICS38r75y4fn0HfBfyDtiA96o+eESE7OUBlowkpxnk1qAiEAy7sxraklj36bzK5kT+jL9NQG5LjReLQFW0sS7QlvYyI="}]},"_npmUser":{"name":"cursorvers-inc","email":"info@cursorvers.com"},"directories":{},"maintainers":[{"name":"cursorvers-inc","email":"info@cursorvers.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/medical-ai-boundary-kit_2.0.0_1774878465037_0.12575641252411507"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-30T13:47:44.919Z","2.0.0":"2026-03-30T13:47:45.225Z","modified":"2026-03-30T13:47:45.517Z"},"maintainers":[{"name":"cursorvers-inc","email":"info@cursorvers.com"}],"description":"医療AI境界判定キット — 3省2ガイドライン準拠チェッカー + 監査証跡 + 文書生成","keywords":["medical-ai","compliance","healthcare","audit","SaMD"],"author":{"name":"Masayuki Otawara","email":"info@cursorvers.com"},"license":"SEE LICENSE IN LICENSE.md","readme":"# Medical AI Boundary Kit v2\n\n開業医と医療機関向けに作り直した、生成AIの境界判定キットです。\n\nv1 からの大きな変更\n1. 初学者向けの安全側デフォルト\n2. unknown を明示的に扱う三値ロジック\n3. 消費者向けブラウザ AI への患者情報直貼りをハードブロック\n4. 診断系と画像系をスコアより先に強いルールで扱う\n5. サービス仕様適合開示書、SLA、障害時連絡先を確認項目に追加\n6. JSON モードで純 JSON を保証\n7. 監査ログに簡易ロックを追加\n8. 判定ハッシュを常に出力\n9. 利用申請票の事前記入版などを自動生成\n\n## 対象\n\n- これからバイブコーディングを学ぶ開業医\n- 小規模医療機関の情報管理責任者\n- まずは安全な題材から始めたい医師\n- note 記事からそのままコピペで動かしたい読者\n\n## 使い方\n\n### まずはプリセットを見る\n\n```bash\nnode kit-v2.mjs --mode presets\n```\n\n### 安全寄りの題材で判定する\n\n```bash\nnode kit-v2.mjs --mode check --preset patient-handout-no-phi\nnode kit-v2.mjs --mode check --preset referral-draft-domestic\n```\n\n### 自分の JSON で判定する\n\n```bash\nnode kit-v2.mjs --mode check --input ./examples/intake-template.json\nnode kit-v2.mjs --mode check --input ./examples/intake-template.json --json\n```\n\n### 判定と同時に文書を生成する\n\n```bash\nnode kit-v2.mjs --mode check --preset soap-polish-domestic --docs-dir ./generated\n```\n\n生成されるもの\n- decision-pack.md\n- application-prefill.md\n- vendor-memo.md\n- manager-brief.md\n- decision.json\n\n### 監査ログを検証する\n\n```bash\nnode kit-v2.mjs --mode verify --audit-log ./logs/audit-log.jsonl\n```\n\n### 監査マニフェストを生成する\n\n```bash\nnode kit-v2.mjs --mode manifest --audit-log ./logs/audit-log.jsonl --json\n```\n\n### PHI マスキング補助\n\n```bash\nnode kit-v2.mjs --mode mask --text \"患者名: 山田太郎 住所: 東京都...\"\n```\n\n注意\n- これは送信前の補助チェックです\n- 完全匿名化や法的適合を保証しません\n- 残存する自由記述は必ず人が確認してください\n\n## なぜこの設計に変えたか\n\n### 1. 初学者は unknown が多い\nv1 は true と false だけで組んでいたため、未確認と不適合が混ざっていました。v2 では unknown を分け、わからないこと自体をリスクとして扱います。\n\n### 2. 小規模医療機関は事業者確認が要点\n小規模医療機関では、事業者からの説明資料、責任分界、非常時の連絡体制を明確にすることが重要です。そこで、サービス仕様適合開示書、SLA、障害時連絡先を入力項目にしました。\n\n### 3. 診断系は最初の題材に向かない\n診断候補提案や画像解析は、単なる文書下書きより患者安全と規制の論点が強く出ます。v2 はそこで無理に green を出さず、まず用途を下げる設計にしています。\n\n### 4. 判定だけでは現場が動かない\n判定後に必要なのは、申請票、ベンダー確認、管理者説明です。なので v2 は docs モードで文書まで出します。\n\n## 入力スキーマ\n\n```json\n{\n  \"name\": \"紹介状の下書き\",\n  \"workflowType\": \"referral_draft\",\n  \"dataSensitivity\": \"pseudonymized\",\n  \"destination\": \"domestic_vendor\",\n  \"reviewer\": \"physician\",\n  \"automationLevel\": \"copy_paste_manual\",\n  \"distribution\": \"internal_only\",\n  \"vendor\": {\n    \"name\": \"Vendor Name\",\n    \"plan\": \"Enterprise\",\n    \"noTraining\": \"yes\",\n    \"domesticRegion\": \"yes\",\n    \"serviceSpecDisclosure\": \"yes\",\n    \"securityDisclosure\": \"unknown\",\n    \"sla\": \"yes\",\n    \"incidentContact\": \"yes\",\n    \"retention\": \"short\"\n  },\n  \"controls\": {\n    \"phiMinimization\": \"yes\",\n    \"maskingBeforeSend\": \"yes\",\n    \"outputLabeledDraft\": \"yes\",\n    \"auditLog\": \"yes\",\n    \"accessControl\": \"yes\",\n    \"fallbackPlan\": \"yes\",\n    \"policyApproved\": \"yes\",\n    \"trainingCompleted\": \"unknown\"\n  }\n}\n```\n\n## verdict の意味\n\n- allowed\n  - 初学者でも比較的始めやすい\n- allowed_with_controls\n  - 条件を整えれば始められる\n- escalation_required\n  - 院長、情報管理責任者、外部専門家の確認が先\n- blocked\n  - 今の形ではやらない\n\n## プリセットの考え方\n\nおすすめの学習順\n1. patient-handout-no-phi\n2. admin-faq\n3. referral-draft-domestic\n4. soap-polish-domestic\n5. billing-support\n6. diagnosis-suggestion\n7. xray-external-sale は読むだけ\n\n## テスト\n\n```bash\nnode --test\n```\n\n## 免責\n\n- 法的助言ではありません\n- PMDA 該当性や国外提供の最終判断を代替しません\n- PHI マスキングは補助であり、完全匿名化ではありません\n- ロック付き監査ログは単一ホストのローカルファイル運用を想定しています\n","readmeFilename":"README.md","_rev":"1-9bebf49fa14baf23add16b60f8f5100e"}