Webapp legal contact pages
Skill bokuwalily/claude-code-skills/skills/webapp-legal-contact-pages
新規webapp/Webゲームに LP・お問い合わせ・プライバシーポリシー・利用規約 を実態に合わせて追加する時。特にログイン/個人情報を扱うアプリ。ログイン不要でも問い合わせ導線は必須。From its SKILL.md
npx -y skills add bokuwalily/claude-code-skills --skill webapp-legal-contact-pagesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.4 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it
Procedure
- 実態調査(コピペ防止の起点)
- ルート構成:
find src/app -name page.tsx。トップがLPかログイン即か。既存の privacy/terms/contact 有無。 - 認証: middleware/proxy か、クライアント
AuthRequired方式か。NEXT_PUBLIC_AUTH_MODE等。 - 取得データ: prisma schema の User / DB のテーブル / OAuth scope(Gmail/Calendar/AI送信の有無)。→ これがプラポリの中身。
- デザイントークン:
globals.cssの:rootか Tailwind v4@theme。LP/法務はこのトークンに合わせる。
- ルート構成:
- LP: 未ログインの入口を作る。ヒーロー+実機能(コードから抽出)+使い方+CTA。
- middlewareガード型 → ダッシュボードを
/dashboardに退避し/をLPに。ログイン済は/→/dashboardリダイレクトで保険。/参照(href/redirect/callbackUrl)を grep で全張り替え。 - クライアント認証型 → 未ログイン時に出る共通コンポーネント(
AuthRequired等)自体をLP化すれば全経路でLPが出る(ルート変更不要=低リスク)。
- middlewareガード型 → ダッシュボードを
- 法務ページ:
/privacy/termsを新設。取得データ・第三者送信先(Google/Vercel/Turso/Anthropic等)を実態どおり列挙。決済が無ければ特商法は不要。大学/第三者の非公式ツールなら「公式で確認」免責を入れる。 - 問い合わせ:
/contactフォーム +POST /api/feedback→ 既存DB(Turso)に Feedback テーブル保存。外部サービスは足さない。匿名可・任意メール。 - 到達性: middlewareがあれば公開パスに
/(完全一致)/privacy/terms/contact/api/feedbackを追加。設定ページとフッターに法務・問い合わせリンクを置きログイン後からも到達可能に。 - ゲーム/ログイン無しアプリ: 最低限「開発者へのお問い合わせ」をホームかポーズ/設定に出す。
- ビルド → commit → push →
vercel --prod --yes→ ライブ疎通。
Pitfalls
- プラポリのテンプレ流用は危険。決済しないのに特商法、AI使わないのにAI送信、などズレると逆効果。必ずコードで実態確認。
- Tursoへのスキーマ反映手段はプロジェクト差:
prisma.config.tsがfile:./dev.db固定だとprisma db pushはローカルのみ。本番は@libsql/client直CREATE か、起動時ensureInitにCREATE TABLE IF NOT EXISTSを足す(後者が手動マイグレ不要で楽)。 - proxyの公開パス:
startsWithに/を足すと全パス公開になる。ルートはpathname === "/"の完全一致で別扱い。 - ルート移動時の張り替え漏れ: ログイン済が
/に来たら/dashboardへリダイレクトする保険を入れると、参照漏れがあっても事故らない。 - pre-pushレイアウトゲート(hosei等):
grid+レスポンシブ列で basegrid-cols-*無しは弾かれる。base にgrid-cols-1を足す(CSS Grid暗黙auto列の横溢れ対策)。 - dotenv未導入のプロジェクト:
-r dotenv/configが preload失敗。export $(grep '^TURSO_' .env.local | xargs)で env注入してから tsx 実行。接続変数名はプロジェクト差(DATABASE_URLvsTURSO_DATABASE_URL)。 vercel project removeにyesをパイプすると (y/N) を無限ループさせ巨大出力になる。--non-interactiveを使う。
Verification
- 全公開ページが本番で 200。LP本文の想定テキストが出る(クライアント描画LPは curl に出ないのでブラウザ/スクショで確認)。
- 本番で
POST /api/feedback→{"success":true}を確認し、__CLAUDE_VERIFY__検証行を即削除(ダミー残存ゼロ)。 - ログイン後の設定ページ・フッターから問い合わせ/法務に到達できる。
/dashboard等の保護ページは未ログインで signin にリダイレクトされる(認証ガード健在)。
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most legal skills give in ~1.5k tokens
Counted across 234 of the 234 authors here whose files we hold, read 2026-08-07
- Use text operators for text fieldsin 11 of 234, across 6 files
- Consult qualified counsel before usein 11 of 234, across 3 files
- Use PatentSearch API for patent searchesin 10 of 234, across 5 files
- Confirm jurisdiction, employment type, and required clausesin 9 of 234, across 2 files
- Choose a document template and tailor role-specific termsin 9 of 234, across 2 files
- Validate compensation, benefits, and compliance requirementsin 9 of 234, across 2 files
- Add signature, confidentiality, and IP assignment terms as neededin 9 of 234, across 2 files
- Open the implementation playbook for detailed templatesin 9 of 234, across 2 files
- Use TSDR for trademark data retrievalin 9 of 234, across 4 files
- Ask for clarification if required inputs are missingin 8 of 234, across 2 files
- Set the USPTO_API_KEY environment variablein 8 of 234, across 3 files
- Use the uspto-opendata-python library for PEDSin 8 of 234, across 3 files
Said here and by no other author read
- investigate the actual codebase state before adding pages
- create a landing page for unauthenticated visitors
- create privacy and terms pages reflecting actual data usage
- create a contact form posting to the existing database
- add legal and contact links to settings and footer
- add public paths to the middleware configuration
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.