refactor: remove local ContextWizard pages, redirect to contextwizard.site
- Delete contextwizard_top/install/privacy_policy/tokushoho HTML files - Update index.html, llms.txt, sitemap.xml links to contextwizard.site - Remove contextwizard-files deployment from deploy-amipro.sh - Fix .htaccess infinite loop causing 500 error on robots.txt - Remove redundant 'Allow: /' from robots.txt - Clean up GEO audit report files
This commit is contained in:
@@ -7,10 +7,6 @@ RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
|||||||
RewriteCond %{HTTP_HOST} ^www\.amipro\.me$ [NC]
|
RewriteCond %{HTTP_HOST} ^www\.amipro\.me$ [NC]
|
||||||
RewriteRule ^(.*)$ https://amipro.me/$1 [L,R=301]
|
RewriteRule ^(.*)$ https://amipro.me/$1 [L,R=301]
|
||||||
|
|
||||||
# === Serve static robots.txt and sitemap.xml directly (bypass WordPress) ===
|
|
||||||
RewriteRule ^robots\.txt$ /robots.txt [L]
|
|
||||||
RewriteRule ^sitemap\.xml$ /sitemap.xml [L]
|
|
||||||
|
|
||||||
# === Security Headers ===
|
# === Security Headers ===
|
||||||
<IfModule mod_headers.c>
|
<IfModule mod_headers.c>
|
||||||
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" env=HTTPS
|
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains" env=HTTPS
|
||||||
|
|||||||
@@ -1,218 +0,0 @@
|
|||||||
{
|
|
||||||
"generated_at": "2026-06-21T09:01:21.925512",
|
|
||||||
"domain": "amipro.me",
|
|
||||||
"pages_audited": 10,
|
|
||||||
"site_checks": {
|
|
||||||
"crawler": {
|
|
||||||
"score": 100.0,
|
|
||||||
"robots_found": true,
|
|
||||||
"blocked_crawlers": [],
|
|
||||||
"allowed_crawlers": [],
|
|
||||||
"noindex": false,
|
|
||||||
"nofollow": false,
|
|
||||||
"issues": []
|
|
||||||
},
|
|
||||||
"llmstxt": {
|
|
||||||
"score": 94.0,
|
|
||||||
"found": true,
|
|
||||||
"url": "https://amipro.me/llms.txt",
|
|
||||||
"has_required_sections": true,
|
|
||||||
"link_count": 9,
|
|
||||||
"broken_links": [],
|
|
||||||
"issues": []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"brand_score": 0.0,
|
|
||||||
"pages": [
|
|
||||||
{
|
|
||||||
"filename": "contextwizard_install.html",
|
|
||||||
"url": "https://amipro.me/contextwizard_install.html",
|
|
||||||
"category": "product:contextwizard",
|
|
||||||
"weighted_total": 51.5,
|
|
||||||
"grade": "C+",
|
|
||||||
"scores": {
|
|
||||||
"citability": 49.9,
|
|
||||||
"content": 55.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 90.0,
|
|
||||||
"platform": 42.2,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 281,
|
|
||||||
"issue_count": 27
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "contextwizard_privacy_policy.html",
|
|
||||||
"url": "https://amipro.me/contextwizard_privacy_policy.html",
|
|
||||||
"category": "legal",
|
|
||||||
"weighted_total": 61.4,
|
|
||||||
"grade": "B",
|
|
||||||
"scores": {
|
|
||||||
"citability": 62.8,
|
|
||||||
"content": 80.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 90.0,
|
|
||||||
"platform": 43.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 803,
|
|
||||||
"issue_count": 25
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "contextwizard_tokushoho.html",
|
|
||||||
"url": "https://amipro.me/contextwizard_tokushoho.html",
|
|
||||||
"category": "legal",
|
|
||||||
"weighted_total": 43.6,
|
|
||||||
"grade": "C",
|
|
||||||
"scores": {
|
|
||||||
"citability": 27.8,
|
|
||||||
"content": 50.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 90.0,
|
|
||||||
"platform": 43.0,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 71,
|
|
||||||
"issue_count": 29
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "contextwizard_top.html",
|
|
||||||
"url": "https://amipro.me/contextwizard_top.html",
|
|
||||||
"category": "product:contextwizard",
|
|
||||||
"weighted_total": 57.6,
|
|
||||||
"grade": "C+",
|
|
||||||
"scores": {
|
|
||||||
"citability": 32.2,
|
|
||||||
"content": 55.0,
|
|
||||||
"schema_markup": 80.0,
|
|
||||||
"technical": 95.0,
|
|
||||||
"platform": 52.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 38,
|
|
||||||
"issue_count": 23
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "fido2_top.html",
|
|
||||||
"url": "https://amipro.me/fido2_top.html",
|
|
||||||
"category": "product:passkey",
|
|
||||||
"weighted_total": 46.7,
|
|
||||||
"grade": "C",
|
|
||||||
"scores": {
|
|
||||||
"citability": 17.5,
|
|
||||||
"content": 45.0,
|
|
||||||
"schema_markup": 60.0,
|
|
||||||
"technical": 95.0,
|
|
||||||
"platform": 45.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 19,
|
|
||||||
"issue_count": 28
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "index.html",
|
|
||||||
"url": "https://amipro.me/",
|
|
||||||
"category": "homepage",
|
|
||||||
"weighted_total": 62.8,
|
|
||||||
"grade": "B",
|
|
||||||
"scores": {
|
|
||||||
"citability": 46.5,
|
|
||||||
"content": 55.0,
|
|
||||||
"schema_markup": 90.0,
|
|
||||||
"technical": 95.0,
|
|
||||||
"platform": 47.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 31,
|
|
||||||
"issue_count": 24
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "integration.html",
|
|
||||||
"url": "https://amipro.me/integration.html",
|
|
||||||
"category": "docs",
|
|
||||||
"weighted_total": 34.8,
|
|
||||||
"grade": "D",
|
|
||||||
"scores": {
|
|
||||||
"citability": 10.0,
|
|
||||||
"content": 45.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 85.0,
|
|
||||||
"platform": 33.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 4,
|
|
||||||
"issue_count": 34
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "integration_api.html",
|
|
||||||
"url": "https://amipro.me/integration_api.html",
|
|
||||||
"category": "docs",
|
|
||||||
"weighted_total": 34.8,
|
|
||||||
"grade": "D",
|
|
||||||
"scores": {
|
|
||||||
"citability": 10.0,
|
|
||||||
"content": 45.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 85.0,
|
|
||||||
"platform": 33.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 4,
|
|
||||||
"issue_count": 34
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "merits.html",
|
|
||||||
"url": "https://amipro.me/merits.html",
|
|
||||||
"category": "marketing",
|
|
||||||
"weighted_total": 33.6,
|
|
||||||
"grade": "D",
|
|
||||||
"scores": {
|
|
||||||
"citability": 8.4,
|
|
||||||
"content": 45.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 80.0,
|
|
||||||
"platform": 33.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 2,
|
|
||||||
"issue_count": 36
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"filename": "passkey.html",
|
|
||||||
"url": "https://amipro.me/passkey.html",
|
|
||||||
"category": "marketing",
|
|
||||||
"weighted_total": 33.6,
|
|
||||||
"grade": "D",
|
|
||||||
"scores": {
|
|
||||||
"citability": 8.4,
|
|
||||||
"content": 45.0,
|
|
||||||
"schema_markup": 20.0,
|
|
||||||
"technical": 80.0,
|
|
||||||
"platform": 33.8,
|
|
||||||
"brand_mentions": 0.0,
|
|
||||||
"crawler_access": 0.0,
|
|
||||||
"llms_txt": 0.0
|
|
||||||
},
|
|
||||||
"word_count": 2,
|
|
||||||
"issue_count": 36
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -86,7 +86,7 @@
|
|||||||
3. 提交 ContextWizard:
|
3. 提交 ContextWizard:
|
||||||
- Product name: `ContextWizard`
|
- Product name: `ContextWizard`
|
||||||
- Tagline: "Local-first AI chat backup & search across 10+ platforms"
|
- Tagline: "Local-first AI chat backup & search across 10+ platforms"
|
||||||
- Website: `https://amipro.me/contextwizard_top.html`
|
- Website: `https://contextwizard.site/`
|
||||||
- Description: 详细产品描述
|
- Description: 详细产品描述
|
||||||
- Topics: Productivity, AI, Privacy, Browser Extensions
|
- Topics: Productivity, AI, Privacy, Browser Extensions
|
||||||
- Logo: 上传产品 logo
|
- Logo: 上传产品 logo
|
||||||
|
|||||||
@@ -1,712 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en-US" class="light-style">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
|
|
||||||
<title>Install ContextWizard - amiPro, LLC</title>
|
|
||||||
|
|
||||||
<meta
|
|
||||||
name="description"
|
|
||||||
content="Step-by-step instructions to install the ContextWizard browser extension in Chrome, Edge, and other Chromium-based browsers."
|
|
||||||
/>
|
|
||||||
|
|
||||||
<link rel="canonical" href="https://amipro.me/contextwizard_install.html" />
|
|
||||||
<link rel="alternate" hreflang="en" href="https://amipro.me/contextwizard_install.html" />
|
|
||||||
<link rel="alternate" hreflang="ja" href="https://amipro.me/contextwizard_install.html" />
|
|
||||||
<link rel="alternate" hreflang="x-default" href="https://amipro.me/contextwizard_install.html" />
|
|
||||||
|
|
||||||
<meta property="og:type" content="website" />
|
|
||||||
<meta property="og:title" content="Install ContextWizard - amiPro, LLC" />
|
|
||||||
<meta property="og:description" content="Step-by-step instructions to install the ContextWizard browser extension in Chrome, Edge, and other Chromium-based browsers." />
|
|
||||||
<meta property="og:url" content="https://amipro.me/contextwizard_install.html" />
|
|
||||||
<meta property="og:site_name" content="amiPro, LLC" />
|
|
||||||
<meta property="og:image" content="https://amipro.me/files/og-contextwizard.png" />
|
|
||||||
|
|
||||||
<meta name="twitter:card" content="summary_large_image" />
|
|
||||||
<meta name="twitter:title" content="Install ContextWizard - amiPro, LLC" />
|
|
||||||
<meta name="twitter:description" content="Step-by-step instructions to install the ContextWizard browser extension in Chrome, Edge, and other Chromium-based browsers." />
|
|
||||||
<meta name="twitter:image" content="https://amipro.me/files/og-contextwizard.png" />
|
|
||||||
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "Article",
|
|
||||||
"headline": "Install ContextWizard - amiPro, LLC",
|
|
||||||
"description": "Step-by-step instructions to install the ContextWizard browser extension in Chrome, Edge, and other Chromium-based browsers.",
|
|
||||||
"url": "https://amipro.me/contextwizard_install.html",
|
|
||||||
"author": {
|
|
||||||
"@type": "Person",
|
|
||||||
"name": "amiPro Team"
|
|
||||||
},
|
|
||||||
"publisher": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "amiPro, LLC",
|
|
||||||
"url": "https://amipro.me"
|
|
||||||
},
|
|
||||||
"datePublished": "2025-01-15",
|
|
||||||
"dateModified": "2025-06-21"
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<link rel="icon" type="image/x-icon" href="files/favicon.ico" />
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap"
|
|
||||||
rel="stylesheet"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="files/boxicons.css?v=20230405" />
|
|
||||||
<link rel="stylesheet" href="files/core.css" class="template-customizer-core-css" />
|
|
||||||
<link rel="stylesheet" href="files/theme-default.css" class="template-customizer-theme-css" />
|
|
||||||
<link rel="stylesheet" href="files/demo.css" />
|
|
||||||
<link rel="stylesheet" href="files/modern.css" />
|
|
||||||
<link rel="stylesheet" href="files/perfect-scrollbar.css" />
|
|
||||||
|
|
||||||
<script src="files/helpers.js"></script>
|
|
||||||
<script src="files/config.js"></script>
|
|
||||||
<script src="files/jquery.js"></script>
|
|
||||||
<script src="files/popper.js"></script>
|
|
||||||
<script src="files/bootstrap.js"></script>
|
|
||||||
<script src="files/perfect-scrollbar.js"></script>
|
|
||||||
<script src="files/menu.js"></script>
|
|
||||||
<script src="files/main.js"></script>
|
|
||||||
<script src="files/ua-parser.js"></script>
|
|
||||||
<script src="files/amipro_utils.js?v=20230401402"></script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
color: #0f172a;
|
|
||||||
background: linear-gradient(180deg, #f8fbff 0%, #ffffff 40%, #f5f7fb 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__title {
|
|
||||||
font-size: clamp(2rem, 3.25vw, 3rem);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__lead {
|
|
||||||
max-width: 620px;
|
|
||||||
color: #475569;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-brand-logo {
|
|
||||||
height: 48px;
|
|
||||||
width: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.step-card {
|
|
||||||
border: none;
|
|
||||||
border-radius: 1.25rem;
|
|
||||||
box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
|
|
||||||
}
|
|
||||||
|
|
||||||
.step-number {
|
|
||||||
width: 32px;
|
|
||||||
height: 32px;
|
|
||||||
border-radius: 999px;
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
background: #eff6ff;
|
|
||||||
color: #1d4ed8;
|
|
||||||
font-weight: 600;
|
|
||||||
margin-right: 0.5rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.browser-pill {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 0.25rem 0.75rem;
|
|
||||||
border-radius: 999px;
|
|
||||||
background: #eff6ff;
|
|
||||||
color: #1e293b;
|
|
||||||
font-size: 0.875rem;
|
|
||||||
margin-right: 0.5rem;
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.browser-pill i {
|
|
||||||
font-size: 1rem;
|
|
||||||
margin-right: 0.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero-chip {
|
|
||||||
display: inline-flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 0.35rem 0.9rem;
|
|
||||||
border-radius: 999px;
|
|
||||||
background: #eff6ff;
|
|
||||||
color: #1e293b;
|
|
||||||
font-size: 0.9rem;
|
|
||||||
margin-right: 0.5rem;
|
|
||||||
margin-bottom: 0.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
|
||||||
.hero__actions {
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: stretch;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const i18n_messages = new Map();
|
|
||||||
let lang_map;
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'amiPro, LLC');
|
|
||||||
lang_map.set('ja', 'amiPro, LLC');
|
|
||||||
i18n_messages.set('nav_brand', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Privacy-first identity & AI products');
|
|
||||||
lang_map.set('ja', 'プライバシーを重視したID・AIプロダクト');
|
|
||||||
i18n_messages.set('nav_tagline', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Back to ContextWizard');
|
|
||||||
lang_map.set('ja', 'ContextWizard に戻る');
|
|
||||||
i18n_messages.set('nav_back', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Contact support');
|
|
||||||
lang_map.set('ja', 'サポートに問い合わせ');
|
|
||||||
i18n_messages.set('nav_contact', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard');
|
|
||||||
lang_map.set('ja', 'ContextWizard');
|
|
||||||
i18n_messages.set('hero_eyebrow', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Install ContextWizard in your browser');
|
|
||||||
lang_map.set('ja', 'ブラウザに ContextWizard をインストール');
|
|
||||||
i18n_messages.set('hero_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Follow this guide to install the unpackaged ContextWizard extension in Chrome, Microsoft Edge, Brave, or any Chromium-based browser that supports developer mode extensions.');
|
|
||||||
lang_map.set('ja', 'このガイドに従って、Chrome、Microsoft Edge、Brave、または開発者モード拡張機能をサポートする Chromium ベースのブラウザに、パッケージ未処理の ContextWizard 拡張機能をインストールします。');
|
|
||||||
i18n_messages.set('hero_lead', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Works offline on your machine');
|
|
||||||
lang_map.set('ja', 'オフラインで動作');
|
|
||||||
i18n_messages.set('chip_offline', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'No account required');
|
|
||||||
lang_map.set('ja', 'アカウント不要');
|
|
||||||
i18n_messages.set('chip_no_account', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Download ContextWizard ZIP');
|
|
||||||
lang_map.set('ja', 'ContextWizard ZIP をダウンロード');
|
|
||||||
i18n_messages.set('btn_download', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Read privacy policy');
|
|
||||||
lang_map.set('ja', 'プライバシーポリシーを読む');
|
|
||||||
i18n_messages.set('btn_privacy', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Step-by-step installation');
|
|
||||||
lang_map.set('ja', 'ステップバイステップのインストール');
|
|
||||||
i18n_messages.set('steps_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Download the ZIP file');
|
|
||||||
lang_map.set('ja', 'ZIP ファイルをダウンロード');
|
|
||||||
i18n_messages.set('step1_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Click <strong>Download ContextWizard ZIP</strong> above and save the file to a location you can find, such as your <em>Downloads</em> folder.');
|
|
||||||
lang_map.set('ja', '上の<strong>「ContextWizard ZIP をダウンロード」</strong>をクリックし、<em>ダウンロード</em>フォルダなど、見つけやすい場所にファイルを保存します。');
|
|
||||||
i18n_messages.set('step1_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'The ZIP contains the full extension source so your browser can run it in developer mode.');
|
|
||||||
lang_map.set('ja', 'ZIP には完全な拡張機能ソースが含まれており、ブラウザの開発者モードで実行できます。');
|
|
||||||
i18n_messages.set('step1_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Unzip the archive');
|
|
||||||
lang_map.set('ja', 'アーカイブを展開');
|
|
||||||
i18n_messages.set('step2_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Locate the downloaded ZIP file, then unzip it:');
|
|
||||||
lang_map.set('ja', 'ダウンロードした ZIP ファイルを見つけて展開します:');
|
|
||||||
i18n_messages.set('step2_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'On macOS: double-click the ZIP file in Finder.');
|
|
||||||
lang_map.set('ja', 'macOS:Finder で ZIP ファイルをダブルクリックします。');
|
|
||||||
i18n_messages.set('step2_mac', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'On Windows: right-click the ZIP and choose <em>Extract All…</em>.');
|
|
||||||
lang_map.set('ja', 'Windows:ZIP を右クリックし、<em>すべて展開...</em> を選択します。');
|
|
||||||
i18n_messages.set('step2_win', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'You should end up with a folder named something like <code>ContextWizard-crx-latest</code>. Keep this folder in a permanent location (not inside your browser cache or trash).');
|
|
||||||
lang_map.set('ja', '<code>ContextWizard-crx-latest</code> という名前のフォルダが作成されます。このフォルダをブラウザのキャッシュやゴミ箱ではなく、永続的な場所に保管してください。');
|
|
||||||
i18n_messages.set('step2_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Open the extensions page');
|
|
||||||
lang_map.set('ja', '拡張機能ページを開く');
|
|
||||||
i18n_messages.set('step3_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'In Chrome, open <code>chrome://extensions</code> in the address bar. In Edge, use <code>edge://extensions</code>. You will see the extensions management screen.');
|
|
||||||
lang_map.set('ja', 'Chrome では、アドレスバーに <code>chrome://extensions</code> を入力します。Edge では <code>edge://extensions</code> を使用します。拡張機能の管理画面が表示されます。');
|
|
||||||
i18n_messages.set('step3_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'This is where you manage, enable, and remove extensions in your browser.');
|
|
||||||
lang_map.set('ja', 'ここでブラウザの拡張機能の管理、有効化、削除を行います。');
|
|
||||||
i18n_messages.set('step3_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Enable developer mode');
|
|
||||||
lang_map.set('ja', '開発者モードを有効にする');
|
|
||||||
i18n_messages.set('step4_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Turn on <strong>Developer mode</strong> using the toggle in the top-right corner of the extensions page.');
|
|
||||||
lang_map.set('ja', '拡張機能ページの右上にあるトグルで<strong>「開発者モード」</strong>をオンにします。');
|
|
||||||
i18n_messages.set('step4_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'When Developer mode is on, you should see a <strong>Load unpacked</strong> button near the top of the page.');
|
|
||||||
lang_map.set('ja', '開発者モードがオンになると、ページ上部に<strong>「パッケージを展開して読み込む」</strong>ボタンが表示されます。');
|
|
||||||
i18n_messages.set('step4_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Load the unpacked extension');
|
|
||||||
lang_map.set('ja', 'パッケージ未処理の拡張機能を読み込む');
|
|
||||||
i18n_messages.set('step5_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Click <strong>Load unpacked</strong> and choose the folder you unzipped in Step 2.');
|
|
||||||
lang_map.set('ja', '<strong>「パッケージを展開して読み込む」</strong>をクリックし、ステップ 2 で展開したフォルダを選択します。');
|
|
||||||
i18n_messages.set('step5_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'In the file picker, select the <strong>folder</strong> (for example, <code>ContextWizard-crx-latest</code>), not the ZIP file.');
|
|
||||||
lang_map.set('ja', 'ファイル選択で ZIP ファイルではなく<strong>フォルダ</strong>(例:<code>ContextWizard-crx-latest</code>)を選択してください。');
|
|
||||||
i18n_messages.set('step5_note1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'After loading, your browser will add ContextWizard to the list of installed extensions.');
|
|
||||||
lang_map.set('ja', '読み込み後、ブラウザのインストール済み拡張機能一覧に ContextWizard が追加されます。');
|
|
||||||
i18n_messages.set('step5_note2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Pin and open ContextWizard');
|
|
||||||
lang_map.set('ja', 'ContextWizard をピン留めして開く');
|
|
||||||
i18n_messages.set('step6_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Pin the extension so it is easy to reach, then open it in a new tab.');
|
|
||||||
lang_map.set('ja', '拡張機能をピン留めしてアクセスしやすくし、新しいタブで開きます。');
|
|
||||||
i18n_messages.set('step6_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Click the puzzle icon (Chrome/Edge), then pin <strong>ContextWizard</strong>.');
|
|
||||||
lang_map.set('ja', 'パズルアイコン(Chrome/Edge)をクリックし、<strong>ContextWizard</strong> をピン留めします。');
|
|
||||||
i18n_messages.set('step6_li1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Click the ContextWizard icon or open the extension\'s page to start using it.');
|
|
||||||
lang_map.set('ja', 'ContextWizard アイコンをクリックするか、拡張機能のページを開いて使用を開始します。');
|
|
||||||
i18n_messages.set('step6_li2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Your conversations stay local on your machine. You can remove the unpacked extension at any time from the extensions page.');
|
|
||||||
lang_map.set('ja', '会話はすべてローカルのマシンに保存されます。拡張機能ページからいつでもパッケージ未処理の拡張機能を削除できます。');
|
|
||||||
i18n_messages.set('step6_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Supported browsers');
|
|
||||||
lang_map.set('ja', 'サポート対応ブラウザ');
|
|
||||||
i18n_messages.set('browsers_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard works in most Chromium-based desktop browsers that support loading unpacked extensions:');
|
|
||||||
lang_map.set('ja', 'ContextWizard は、パッケージ未処理の拡張機能の読み込みをサポートするほとんどの Chromium ベースのデスクトップブラウザで動作します:');
|
|
||||||
i18n_messages.set('browsers_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Mobile browsers and Safari do not support this unpacked extension flow.');
|
|
||||||
lang_map.set('ja', 'モバイルブラウザと Safari はこのパッケージ未処理拡張機能のフローをサポートしていません。');
|
|
||||||
i18n_messages.set('browsers_limit', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'If something doesn\'t work');
|
|
||||||
lang_map.set('ja', '問題が発生した場合');
|
|
||||||
i18n_messages.set('troubleshoot_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Make sure <strong>Developer mode</strong> is enabled on the extensions page.');
|
|
||||||
lang_map.set('ja', '拡張機能ページで<strong>「開発者モード」</strong>が有効になっていることを確認してください。');
|
|
||||||
i18n_messages.set('troubleshoot_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Confirm you selected the <strong>uncompressed folder</strong>, not the ZIP file.');
|
|
||||||
lang_map.set('ja', '<strong>解凍済みフォルダ</strong>を選択していることを確認してください(ZIP ファイルではありません)。');
|
|
||||||
i18n_messages.set('troubleshoot_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Try restarting the browser after loading the extension.');
|
|
||||||
lang_map.set('ja', '拡張機能を読み込んだ後、ブラウザを再起動してみてください。');
|
|
||||||
i18n_messages.set('troubleshoot_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'If you are still stuck, reach out and we\'ll help you get set up.');
|
|
||||||
lang_map.set('ja', 'まだ解決しない場合は、お問い合わせください。セットアップをお手伝いします。');
|
|
||||||
i18n_messages.set('troubleshoot_help', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Email support');
|
|
||||||
lang_map.set('ja', 'メールでサポート');
|
|
||||||
i18n_messages.set('btn_email_support', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard overview');
|
|
||||||
lang_map.set('ja', 'ContextWizard 概要');
|
|
||||||
i18n_messages.set('footer_overview', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Privacy policy');
|
|
||||||
lang_map.set('ja', 'プライバシーポリシー');
|
|
||||||
i18n_messages.set('footer_privacy', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'What You Get After Installation');
|
|
||||||
lang_map.set('ja', 'インストール後に利用できる機能');
|
|
||||||
lang_map.set('zh-CN', '安装后你将获得');
|
|
||||||
i18n_messages.set('static_get_title', lang_map);
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
window.onload = function () {
|
|
||||||
setI18NText(i18n_messages);
|
|
||||||
if (typeof initRevealAnimations === 'function') {
|
|
||||||
initRevealAnimations();
|
|
||||||
} else {
|
|
||||||
// Fallback: ensure content is visible even if animations aren't loaded
|
|
||||||
document.querySelectorAll('.reveal [data-animate]').forEach(function (el) {
|
|
||||||
el.style.opacity = '1';
|
|
||||||
el.style.transform = 'none';
|
|
||||||
});
|
|
||||||
}
|
|
||||||
var nav = document.getElementById('navbar-collapse');
|
|
||||||
if (typeof createLanguageSelector === 'function') {
|
|
||||||
document.body.appendChild(createLanguageSelector());
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="layout-wrapper layout-content-navbar">
|
|
||||||
<div class="layout-container">
|
|
||||||
<div class="layout-page">
|
|
||||||
<nav
|
|
||||||
class="layout-navbar container-xxl navbar navbar-expand-xl navbar-detached align-items-center bg-navbar-theme"
|
|
||||||
id="layout-navbar"
|
|
||||||
>
|
|
||||||
<div class="navbar-nav-right d-flex align-items-center w-100" id="navbar-collapse">
|
|
||||||
<div class="navbar-nav align-items-center">
|
|
||||||
<div class="nav-item d-flex align-items-center">
|
|
||||||
<img
|
|
||||||
src="files/favicon.ico"
|
|
||||||
alt="amiPro"
|
|
||||||
width="64"
|
|
||||||
height="64"
|
|
||||||
class="nav-brand-logo"
|
|
||||||
style="margin-right: 16px;"
|
|
||||||
/>
|
|
||||||
<div>
|
|
||||||
<div id="nav_brand" style="font-weight: 700; font-size: 1.25rem; color: #0f172a;">amiPro, LLC</div>
|
|
||||||
<small id="nav_tagline" style="color: #64748b;">Privacy-first identity & AI products</small>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<a id="nav_back" href="contextwizard_top.html" class="btn btn-link ms-auto me-3">Back to ContextWizard</a>
|
|
||||||
<a id="nav_contact"
|
|
||||||
href="mailto:sales@amipro.me?subject=ContextWizard%20support"
|
|
||||||
class="btn btn-outline-primary"
|
|
||||||
>Contact support</a>
|
|
||||||
</div>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<div class="content-wrapper">
|
|
||||||
<div class="container-xxl" style="padding: 32px 24px 72px;">
|
|
||||||
<section class="hero reveal">
|
|
||||||
<div class="hero__text" data-animate>
|
|
||||||
<span id="hero_eyebrow" class="hero__eyebrow">ContextWizard</span>
|
|
||||||
<h1 id="hero_title" class="hero__title">Install ContextWizard in your browser</h1>
|
|
||||||
<p id="hero_lead" class="hero__lead">
|
|
||||||
Follow this guide to install the unpackaged ContextWizard extension in Chrome, Microsoft Edge,
|
|
||||||
Brave, or any Chromium-based browser that supports developer mode extensions.
|
|
||||||
</p>
|
|
||||||
<div style="margin-top: 1.5rem;" class="hero__chips">
|
|
||||||
<span id="chip_offline" class="hero-chip">Works offline on your machine</span>
|
|
||||||
<span id="chip_no_account" class="hero-chip">No account required</span>
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
class="hero__actions"
|
|
||||||
style="margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 1rem;"
|
|
||||||
>
|
|
||||||
<a
|
|
||||||
id="btn_download"
|
|
||||||
href="https://amipro.me/contextwizard-files/ContextWizard-crx-latest.zip"
|
|
||||||
class="btn btn-primary"
|
|
||||||
style="flex: 1 0 220px;"
|
|
||||||
>Download ContextWizard ZIP</a>
|
|
||||||
<a
|
|
||||||
id="btn_privacy"
|
|
||||||
href="contextwizard_privacy_policy.html"
|
|
||||||
class="btn btn-outline-secondary"
|
|
||||||
style="flex: 1 0 220px;"
|
|
||||||
>Read privacy policy</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section style="margin-top: 2rem; padding: 1.5rem; background: #f0f9ff; border-radius: 12px; border-left: 4px solid #2563eb;">
|
|
||||||
<h2 id="static_get_title" style="font-size: 1.25rem; font-weight: 600; color: #0f172a; margin-bottom: 0.75rem;">What You Get After Installation</h2>
|
|
||||||
<ul style="color: #475569; line-height: 1.8; margin: 0; padding-left: 1.25rem;">
|
|
||||||
<li><strong>Automatic AI chat capture:</strong> ContextWizard detects when you visit a supported AI platform and starts recording conversations in real-time.</li>
|
|
||||||
<li><strong>Full-text search:</strong> Search across all your AI conversations by title, summary, or message body with instant results.</li>
|
|
||||||
<li><strong>Cross-platform bookmarks:</strong> Save key moments from ChatGPT, Claude, and Gemini in one unified list.</li>
|
|
||||||
<li><strong>Local-first privacy:</strong> All data is encrypted and stored in your browser local storage. Nothing leaves your machine.</li>
|
|
||||||
<li><strong>12-language UI:</strong> Automatically detects your browser language and supports manual switching.</li>
|
|
||||||
</ul>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="reveal" data-animate style="margin-top: 48px;">
|
|
||||||
<div class="row g-4 align-items-start">
|
|
||||||
<div class="col-lg-7">
|
|
||||||
<article class="card step-card">
|
|
||||||
<div class="card-body">
|
|
||||||
<h2 id="steps_title" style="font-weight: 600; color: #0f172a; margin-bottom: 1rem;">
|
|
||||||
Step-by-step installation
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
<ol class="list-unstyled" style="margin: 0; padding: 0;">
|
|
||||||
<li style="margin-bottom: 1.5rem;">
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">1</div>
|
|
||||||
<div>
|
|
||||||
<h3 id="step1_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Download the ZIP file</h3>
|
|
||||||
<p id="step1_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
Click <strong>Download ContextWizard ZIP</strong> above and save the file to a
|
|
||||||
location you can find, such as your <em>Downloads</em> folder.
|
|
||||||
</p>
|
|
||||||
<p id="step1_note" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
The ZIP contains the full extension source so your browser can run it in
|
|
||||||
developer mode.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li style="margin-bottom: 1.5rem;">
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">2</div>
|
|
||||||
<div>
|
|
||||||
<h3 id="step2_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Unzip the archive</h3>
|
|
||||||
<p id="step2_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
Locate the downloaded ZIP file, then unzip it:
|
|
||||||
</p>
|
|
||||||
<ul style="padding-left: 1.1rem; margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
<li id="step2_mac">On macOS: double-click the ZIP file in Finder.</li>
|
|
||||||
<li id="step2_win">On Windows: right-click the ZIP and choose <em>Extract All…</em>.</li>
|
|
||||||
</ul>
|
|
||||||
<p id="step2_note" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
You should end up with a folder named something like
|
|
||||||
<code>ContextWizard-crx-latest</code>. Keep this folder in a permanent location
|
|
||||||
(not inside your browser cache or trash).
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li style="margin-bottom: 1.5rem;">
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">3</div>
|
|
||||||
<div style="width: 100%;">
|
|
||||||
<h3 id="step3_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Open the extensions page</h3>
|
|
||||||
<p id="step3_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
In Chrome, open <code>chrome://extensions</code> in the address bar. In Edge, use
|
|
||||||
<code>edge://extensions</code>. You will see the extensions management screen.
|
|
||||||
</p>
|
|
||||||
<div style="margin: 0.5rem 0 0.75rem;">
|
|
||||||
<img
|
|
||||||
src="files/01-ChromeExtension-nonDev.png"
|
|
||||||
alt="Chrome extensions page highlighting chrome://extensions in the address bar"
|
|
||||||
style="max-width: 100%; border-radius: 0.75rem; box-shadow: 0 10px 30px rgba(15, 23, 42, 0.12);"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<p id="step3_note" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
This is where you manage, enable, and remove extensions in your browser.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li style="margin-bottom: 1.5rem;">
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">4</div>
|
|
||||||
<div style="width: 100%;">
|
|
||||||
<h3 id="step4_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Enable developer mode</h3>
|
|
||||||
<p id="step4_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
Turn on <strong>Developer mode</strong> using the toggle in the top-right corner of
|
|
||||||
the extensions page.
|
|
||||||
</p>
|
|
||||||
<div style="margin: 0.5rem 0 0.75rem;">
|
|
||||||
<img
|
|
||||||
src="files/02-ChromeExtension-enabledDev.png"
|
|
||||||
alt="Chrome extensions page with Developer mode toggle turned on and Load unpacked button visible"
|
|
||||||
style="max-width: 100%; border-radius: 0.75rem; box-shadow: 0 10px 30px rgba(15, 23, 42, 0.12);"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<p id="step4_note" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
When Developer mode is on, you should see a <strong>Load unpacked</strong> button
|
|
||||||
near the top of the page.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li style="margin-bottom: 1.5rem;">
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">5</div>
|
|
||||||
<div style="width: 100%;">
|
|
||||||
<h3 id="step5_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Load the unpacked extension</h3>
|
|
||||||
<p id="step5_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
Click <strong>Load unpacked</strong> and choose the folder you unzipped in Step 2.
|
|
||||||
</p>
|
|
||||||
<div style="margin: 0.5rem 0 0.75rem;">
|
|
||||||
<img
|
|
||||||
src="files/03-ChromeExtension-select-unpackaged-folder.png"
|
|
||||||
alt="Chrome extensions page with Load unpacked button highlighted and ContextWizard folder selected in Finder"
|
|
||||||
style="max-width: 100%; border-radius: 0.75rem; box-shadow: 0 10px 30px rgba(15, 23, 42, 0.12);"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<p id="step5_note1" style="margin-bottom: 0.25rem; color: #475569; font-size: 0.9rem;">
|
|
||||||
In the file picker, select the <strong>folder</strong> (for example,
|
|
||||||
<code>ContextWizard-crx-latest</code>), not the ZIP file.
|
|
||||||
</p>
|
|
||||||
<p id="step5_note2" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
After loading, your browser will add ContextWizard to the list of installed
|
|
||||||
extensions.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<div style="display: flex; align-items: flex-start;">
|
|
||||||
<div class="step-number">6</div>
|
|
||||||
<div>
|
|
||||||
<h3 id="step6_title" style="font-size: 1.05rem; margin-bottom: 0.35rem;">Pin and open ContextWizard</h3>
|
|
||||||
<p id="step6_desc" style="margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
Pin the extension so it is easy to reach, then open it in a new tab.
|
|
||||||
</p>
|
|
||||||
<div style="margin: 0.5rem 0 0.75rem;">
|
|
||||||
<img
|
|
||||||
src="files/04-ChromeExtension-installed.png"
|
|
||||||
alt="Chrome extensions page showing ContextWizard installed in the All Extensions list"
|
|
||||||
style="max-width: 100%; border-radius: 0.75rem; box-shadow: 0 10px 30px rgba(15, 23, 42, 0.12);"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<ul style="padding-left: 1.1rem; margin-bottom: 0.5rem; color: #475569;">
|
|
||||||
<li id="step6_li1">Click the puzzle icon (Chrome/Edge), then pin <strong>ContextWizard</strong>.</li>
|
|
||||||
<li id="step6_li2">Click the ContextWizard icon or open the extension's page to start using it.</li>
|
|
||||||
</ul>
|
|
||||||
<p id="step6_note" style="margin-bottom: 0; color: #64748b; font-size: 0.9rem;">
|
|
||||||
Your conversations stay local on your machine. You can remove the unpacked
|
|
||||||
extension at any time from the extensions page.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ol>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-5">
|
|
||||||
<article
|
|
||||||
class="card h-100"
|
|
||||||
style="border-radius: 1.25rem; box-shadow: 0 16px 50px rgba(15, 23, 42, 0.08);"
|
|
||||||
>
|
|
||||||
<div class="card-body">
|
|
||||||
<h3 id="browsers_title" style="font-size: 1.15rem; margin-bottom: 0.75rem;">Supported browsers</h3>
|
|
||||||
<p id="browsers_desc" style="color: #475569;">
|
|
||||||
ContextWizard works in most Chromium-based desktop browsers that support loading
|
|
||||||
unpacked extensions:
|
|
||||||
</p>
|
|
||||||
<div style="margin-bottom: 0.75rem;">
|
|
||||||
<span class="browser-pill"><i class="bx bxl-chrome"></i>Chrome (latest)</span>
|
|
||||||
<span class="browser-pill"><i class="bx bxl-microsoft"></i>Microsoft Edge</span>
|
|
||||||
<span class="browser-pill"><i class="bx bxs-ship"></i>Brave / Vivaldi / Opera</span>
|
|
||||||
</div>
|
|
||||||
<p id="browsers_limit" style="color: #64748b; font-size: 0.9rem;">
|
|
||||||
Mobile browsers and Safari do not support this unpacked extension flow.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<hr />
|
|
||||||
|
|
||||||
<h3 id="troubleshoot_title" style="font-size: 1.05rem; margin-bottom: 0.5rem;">If something doesnt work</h3>
|
|
||||||
<ul style="padding-left: 1.1rem; color: #475569;">
|
|
||||||
<li id="troubleshoot_1">Make sure <strong>Developer mode</strong> is enabled on the extensions page.</li>
|
|
||||||
<li id="troubleshoot_2">Confirm you selected the <strong>uncompressed folder</strong>, not the ZIP file.</li>
|
|
||||||
<li id="troubleshoot_3">Try restarting the browser after loading the extension.</li>
|
|
||||||
</ul>
|
|
||||||
<p id="troubleshoot_help" style="color: #64748b; font-size: 0.9rem; margin-bottom: 0.75rem;">
|
|
||||||
If you are still stuck, reach out and we'll help you get set up.
|
|
||||||
</p>
|
|
||||||
<a id="btn_email_support" href="mailto:support@amipro.me?subject=ContextWizard%20installation%20help" class="btn btn-sm btn-outline-primary">
|
|
||||||
Email support
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<footer class="content-footer footer bg-footer-theme">
|
|
||||||
<div class="container-xxl d-flex flex-wrap justify-content-between py-2 flex-md-row flex-column">
|
|
||||||
<div class="mb-2 mb-md-0">
|
|
||||||
©
|
|
||||||
<script>
|
|
||||||
document.write(new Date().getFullYear());
|
|
||||||
</script>
|
|
||||||
<a href="https://www.amipro.me" target="_blank" class="footer-link fw-bolder">amiPro, LLC</a>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<a id="footer_overview" href="contextwizard_top.html" class="footer-link me-4">ContextWizard overview</a>
|
|
||||||
<a id="footer_privacy" href="contextwizard_privacy_policy.html" class="footer-link">Privacy policy</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
||||||
<div class="content-backdrop fade"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="layout-overlay layout-menu-toggle"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
||||||
@@ -1,864 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
|
|
||||||
<html
|
|
||||||
lang="en-US"
|
|
||||||
class="light-style"
|
|
||||||
>
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<meta
|
|
||||||
name="viewport"
|
|
||||||
content="width=device-width, initial-scale=1.0"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<title> ContextWizard Privacy Policy - amiPro </title>
|
|
||||||
|
|
||||||
<!-- Google tag (gtag.js) -->
|
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-850DCHX9EJ"></script>
|
|
||||||
<script>
|
|
||||||
globalThis.dataLayer = globalThis.dataLayer || [];
|
|
||||||
function gtag(){dataLayer.push(arguments);}
|
|
||||||
gtag('js', new Date());
|
|
||||||
|
|
||||||
gtag('config', 'G-850DCHX9EJ');
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<meta name="description" content="ContextWizard privacy policy and data handling disclosures" />
|
|
||||||
|
|
||||||
<!-- Canonical -->
|
|
||||||
<link rel="canonical" href="https://amipro.me/contextwizard_privacy_policy.html" />
|
|
||||||
|
|
||||||
<!-- Hreflang -->
|
|
||||||
<link rel="alternate" hreflang="en" href="https://amipro.me/contextwizard_privacy_policy.html" />
|
|
||||||
<link rel="alternate" hreflang="ja" href="https://amipro.me/contextwizard_privacy_policy.html" />
|
|
||||||
<link rel="alternate" hreflang="x-default" href="https://amipro.me/contextwizard_privacy_policy.html" />
|
|
||||||
|
|
||||||
<!-- Open Graph -->
|
|
||||||
<meta property="og:type" content="article" />
|
|
||||||
<meta property="og:title" content="ContextWizard Privacy Policy - amiPro" />
|
|
||||||
<meta property="og:description" content="ContextWizard privacy policy and data handling disclosures" />
|
|
||||||
<meta property="og:url" content="https://amipro.me/contextwizard_privacy_policy.html" />
|
|
||||||
<meta property="og:site_name" content="amiPro" />
|
|
||||||
<meta property="og:image" content="https://amipro.me/files/og-image.png" />
|
|
||||||
|
|
||||||
<!-- Twitter Card -->
|
|
||||||
<meta name="twitter:card" content="summary_large_image" />
|
|
||||||
<meta name="twitter:title" content="ContextWizard Privacy Policy - amiPro" />
|
|
||||||
<meta name="twitter:description" content="ContextWizard privacy policy and data handling disclosures" />
|
|
||||||
<meta name="twitter:image" content="https://amipro.me/files/og-image.png" />
|
|
||||||
|
|
||||||
<!-- JSON-LD Article Schema -->
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "Article",
|
|
||||||
"headline": "ContextWizard Privacy Policy",
|
|
||||||
"description": "ContextWizard privacy policy and data handling disclosures",
|
|
||||||
"url": "https://amipro.me/contextwizard_privacy_policy.html",
|
|
||||||
"datePublished": "2025-11-18",
|
|
||||||
"dateModified": "2025-11-18",
|
|
||||||
"author": {
|
|
||||||
"@type": "Person",
|
|
||||||
"name": "amiPro Team"
|
|
||||||
},
|
|
||||||
"publisher": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "amiPro, LLC",
|
|
||||||
"url": "https://amipro.me",
|
|
||||||
"logo": {
|
|
||||||
"@type": "ImageObject",
|
|
||||||
"url": "https://amipro.me/files/og-image.png"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mainEntityOfPage": {
|
|
||||||
"@type": "WebPage",
|
|
||||||
"@id": "https://amipro.me/contextwizard_privacy_policy.html"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<!-- Favicon -->
|
|
||||||
<link rel="icon" type="image/x-icon" href="files/favicon.ico" />
|
|
||||||
|
|
||||||
<!-- Fonts -->
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap"
|
|
||||||
rel="stylesheet"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!-- Icons. Uncomment required icon fonts -->
|
|
||||||
<link rel="stylesheet" href="files/boxicons.css?v=20230405" />
|
|
||||||
|
|
||||||
<!-- Core CSS -->
|
|
||||||
<link rel="stylesheet" href="files/core.css" class="template-customizer-core-css" />
|
|
||||||
<link rel="stylesheet" href="files/theme-default.css" class="template-customizer-theme-css" />
|
|
||||||
<link rel="stylesheet" href="files/demo.css" />
|
|
||||||
<link rel="stylesheet" href="files/modern.css" />
|
|
||||||
|
|
||||||
<!-- Vendors CSS -->
|
|
||||||
<link rel="stylesheet" href="files/perfect-scrollbar.css" />
|
|
||||||
|
|
||||||
<!-- Page CSS -->
|
|
||||||
|
|
||||||
<!-- Helpers -->
|
|
||||||
<script src="files/helpers.js"></script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
color: #1f2a37;
|
|
||||||
background-color: #f5f7fb;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card {
|
|
||||||
border: none;
|
|
||||||
border-radius: 1rem;
|
|
||||||
box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
|
|
||||||
background-color: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card-header {
|
|
||||||
background: transparent;
|
|
||||||
border-bottom: 1px solid rgba(15, 23, 42, 0.08);
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card-title {
|
|
||||||
color: #0f172a;
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card-body,
|
|
||||||
.privacy-content .card-body p,
|
|
||||||
.privacy-content .card-body li,
|
|
||||||
.privacy-content .card-body td,
|
|
||||||
.privacy-content .card-body th {
|
|
||||||
color: #1f2937;
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card-body ul {
|
|
||||||
padding-left: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content .card-body code {
|
|
||||||
color: #c026d3;
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
|
|
||||||
.privacy-content table {
|
|
||||||
border-color: rgba(15, 23, 42, 0.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__text,
|
|
||||||
.hero__text .hero__title,
|
|
||||||
.hero__text p,
|
|
||||||
.hero__eyebrow,
|
|
||||||
.hero__chips .hero-chip {
|
|
||||||
color: #f8fafc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__text .hero__title {
|
|
||||||
text-shadow: 0 4px 24px rgba(15, 23, 42, 0.35);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__chips .hero-chip {
|
|
||||||
background: rgba(255, 255, 255, 0.12);
|
|
||||||
border-color: rgba(255, 255, 255, 0.2);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__device h4,
|
|
||||||
.hero__device p {
|
|
||||||
color: #e2e8f0;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<!--! Template customizer & Theme config files MUST be included after core stylesheets and helpers.js in the <head> section -->
|
|
||||||
<!--? Config: Mandatory theme config file contain global vars & default theme options, Set your preferred theme option in this file. -->
|
|
||||||
<script src="files/config.js"></script>
|
|
||||||
|
|
||||||
<script src="files/jquery.js"></script>
|
|
||||||
<script src="files/popper.js"></script>
|
|
||||||
<script src="files/bootstrap.js"></script>
|
|
||||||
<script src="files/perfect-scrollbar.js"></script>
|
|
||||||
<script src="files/menu.js"></script>
|
|
||||||
<script src="files/main.js"></script>
|
|
||||||
|
|
||||||
<script src="files/ua-parser.js"></script>
|
|
||||||
|
|
||||||
<script src="files/amipro_utils.js?v=20230401402"></script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
const i18n_messages = new Map();
|
|
||||||
let lang_map = new Map();
|
|
||||||
lang_map.set('en-US', 'amiPro - Trustworthy passkey & privacy tooling');
|
|
||||||
lang_map.set('zh-CN', 'amiPro - 值得信赖的 Passkey 与隐私工具');
|
|
||||||
lang_map.set('ja', 'amiPro - 信頼できるパスキーとプライバシーツール');
|
|
||||||
i18n_messages.set('label_welcome', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en-US', 'Management Portal');
|
|
||||||
lang_map.set('zh-CN', '管理门户');
|
|
||||||
lang_map.set('ja', '管理ポータル');
|
|
||||||
i18n_messages.set('label_portal', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard · Privacy');
|
|
||||||
lang_map.set('ja', 'ContextWizard · プライバシー');
|
|
||||||
i18n_messages.set('hero_eyebrow', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Your AI conversations stay on your device');
|
|
||||||
lang_map.set('ja', 'AI会話はデバイス内にとどまります');
|
|
||||||
i18n_messages.set('hero_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard by amiPro, LLC captures what is already visible in your AI chat windows, encrypts and stores it locally, and never transmits it to amiPro or third parties.');
|
|
||||||
lang_map.set('ja', 'ContextWizard(amiPro, LLC)は、AIチャットウィンドウにすでに表示されている内容をキャプチャし、ローカルで暗号化・保存します。amiProや第三者への送信は一切行いません。');
|
|
||||||
i18n_messages.set('hero_lead', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Local-first');
|
|
||||||
lang_map.set('ja', 'ローカルファースト');
|
|
||||||
i18n_messages.set('chip_local', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Chrome Manifest V3');
|
|
||||||
lang_map.set('ja', 'Chrome Manifest V3');
|
|
||||||
i18n_messages.set('chip_manifest', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'GDPR & CCPA aligned');
|
|
||||||
lang_map.set('ja', 'GDPR・CCPA準拠');
|
|
||||||
i18n_messages.set('chip_gdpr', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard Privacy Policy');
|
|
||||||
lang_map.set('ja', 'ContextWizard プライバシーポリシー');
|
|
||||||
i18n_messages.set('hero_media_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "Learn exactly how data moves (and doesn't move) inside the extension and how to stay in control.");
|
|
||||||
lang_map.set('ja', 'データが拡張機能内でどのように移動(または移動しない)するのか、そしてどのようにしてコントロールを維持するのかを正確に把握できます。');
|
|
||||||
i18n_messages.set('hero_media_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'No telemetry');
|
|
||||||
lang_map.set('ja', 'テレメトリなし');
|
|
||||||
i18n_messages.set('chip_telemetry', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Full user control');
|
|
||||||
lang_map.set('ja', 'ユーザー完全管理');
|
|
||||||
i18n_messages.set('chip_control', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Offline friendly');
|
|
||||||
lang_map.set('ja', 'オフライン対応');
|
|
||||||
i18n_messages.set('chip_offline', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '<strong>Last updated:</strong> 18 November 2025');
|
|
||||||
lang_map.set('ja', '<strong>最終更新日:</strong>2025年11月18日');
|
|
||||||
i18n_messages.set('last_updated', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard Privacy Policy');
|
|
||||||
lang_map.set('ja', 'ContextWizard プライバシーポリシー');
|
|
||||||
i18n_messages.set('section_intro_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "ContextWizard is a Chrome extension built by amiPro, LLC that helps you capture, search, and revisit AI chat conversations across multiple platforms. This Privacy Policy explains what data the extension processes, how the data stays on your device, and what controls you have. By installing or using ContextWizard you agree to the data practices described below.");
|
|
||||||
lang_map.set('ja', 'ContextWizardは、amiPro, LLCが開発したChrome拡張機能で、複数のプラットフォームにわたるAIチャット会話をキャプチャ、検索、再確認できるようにします。本プライバシーポリシーでは、拡張機能がどのようなデータを処理するか、データがどのようにデバイス内にとどまるか、およびどのようなコントロールがあるかを説明します。ContextWizardをインストールまたは使用することで、以下に記載されるデータ慣行に同意したものとみなされます。');
|
|
||||||
i18n_messages.set('section_intro_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '1. Scope & Purpose');
|
|
||||||
lang_map.set('ja', '1. 適用範囲と目的');
|
|
||||||
i18n_messages.set('section_1_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "ContextWizard runs entirely as a browser extension and operates solely within the Chrome profile where it is installed. Its only purpose is to capture the text you already see on supported AI chat platforms, store summaries and metadata locally, and provide search, filtering, and export/import features.");
|
|
||||||
lang_map.set('ja', 'ContextWizardは完全にブラウザ拡張機能として動作し、インストールされたChromeプロファイル内のみで動作します。唯一の目的は、対応するAIチャットプラットフォームですでに表示されているテキストをキャプチャし、サマリーメタデータをローカルに保存し、検索、フィルタリング、エクスポート/インポート機能を提供することです。');
|
|
||||||
i18n_messages.set('section_1_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '2. Data We Process');
|
|
||||||
lang_map.set('ja', '2. 処理するデータ');
|
|
||||||
i18n_messages.set('section_2_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Category');
|
|
||||||
lang_map.set('ja', 'カテゴリ');
|
|
||||||
i18n_messages.set('th_category', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Description');
|
|
||||||
lang_map.set('ja', '説明');
|
|
||||||
i18n_messages.set('th_description', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Storage Location');
|
|
||||||
lang_map.set('ja', '保存先');
|
|
||||||
i18n_messages.set('th_storage', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Conversation content');
|
|
||||||
lang_map.set('ja', '会話コンテンツ');
|
|
||||||
i18n_messages.set('td_conv_content', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Message text, titles, timestamps, participant role (user/assistant), detected platform, and the URL of the conversation you are currently viewing.');
|
|
||||||
lang_map.set('ja', 'メッセージテキスト、タイトル、タイムスタンプ、参加者ロール(ユーザー/アシスタント)、検出されたプラットフォーム、および現在閲覧中の会話のURL。');
|
|
||||||
i18n_messages.set('td_conv_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Platform settings');
|
|
||||||
lang_map.set('ja', 'プラットフォーム設定');
|
|
||||||
i18n_messages.set('td_platform_settings', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Which built-in platforms are enabled, custom platform URL patterns, color assignments, and per-platform toggles.');
|
|
||||||
lang_map.set('ja', '有効な組み込みプラットフォーム、カスタムプラットフォームのURLパターン、色の割り当て、プラットフォームごとのトグル。');
|
|
||||||
i18n_messages.set('td_platform_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'UI preferences');
|
|
||||||
lang_map.set('ja', 'UI設定');
|
|
||||||
i18n_messages.set('td_ui_prefs', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Language override, sort order, search filters, onboarding dismissals, and other UX state.');
|
|
||||||
lang_map.set('ja', '言語オーバーライド、ソート順、検索フィルタ、オンボーディングの非表示設定、その他のUX状態。');
|
|
||||||
i18n_messages.set('td_ui_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard does <strong>not</strong> collect account credentials, payment data, unrelated browsing history, or telemetry/analytics.');
|
|
||||||
lang_map.set('ja', 'ContextWizardはアカウント認証情報、支払いデータ、無関係な閲覧履歴、テレメトリ/アナリティクスを<strong>収集しません</strong>。');
|
|
||||||
i18n_messages.set('section_2_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '3. Data Sources & Collection Method');
|
|
||||||
lang_map.set('ja', '3. データソースと収集方法');
|
|
||||||
i18n_messages.set('section_3_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Content is captured only from pages whose URLs match the built-in or user-configured host permissions (e.g., <code>https://chatgpt.com/*</code>).');
|
|
||||||
lang_map.set('ja', 'コンテンツは、URLが組み込みまたはユーザー設定のホスト権限と一致するページのみからキャプチャされます(例:<code>https://chatgpt.com/*</code>)。');
|
|
||||||
i18n_messages.set('section_3_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "The extension uses MutationObserver and DOM queries to read message containers in the active tab; it does <strong>not</strong> call any platform APIs or intercept network traffic.");
|
|
||||||
lang_map.set('ja', '拡張機能はMutationObserverとDOMクエリを使用してアクティブタブのメッセージコンテナを読み取ります。プラットフォームAPIを呼び出したり、ネットワークトラフィックを傍受したりすることは<strong>ありません</strong>。');
|
|
||||||
i18n_messages.set('section_3_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Data collection begins only after you navigate to a supported page and the recording indicator appears. Closing the tab or disabling the platform stops collection immediately.');
|
|
||||||
lang_map.set('ja', 'データ収集は、対応するページに移動し、録画インジケータが表示された後にのみ開始されます。タブを閉じるかプラットフォームを無効にすると、収集は直ちに停止します。');
|
|
||||||
i18n_messages.set('section_3_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '4. How We Use Data');
|
|
||||||
lang_map.set('ja', '4. データの使用方法');
|
|
||||||
i18n_messages.set('section_4_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "All captured data is used exclusively to power the extension's on-device features:");
|
|
||||||
lang_map.set('ja', 'キャプチャされたすべてのデータは、拡張機能のデバイス内機能を駆動するためにのみ使用されます:');
|
|
||||||
i18n_messages.set('section_4_intro', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Build a searchable, unified list of your AI conversations.');
|
|
||||||
lang_map.set('ja', 'AI会話の検索可能な統一リストを構築します。');
|
|
||||||
i18n_messages.set('section_4_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Provide quick links back to the source page via <code>chrome.tabs.update</code>.');
|
|
||||||
lang_map.set('ja', '<code>chrome.tabs.update</code>を通じてソースページへのクイックリンクを提供します。');
|
|
||||||
i18n_messages.set('section_4_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Enable exports/imports so you can back up or restore your local archive.');
|
|
||||||
lang_map.set('ja', 'エクスポート/インポートを有効にし、ローカルアーカイブのバックアップや復元が可能になります。');
|
|
||||||
i18n_messages.set('section_4_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Maintain per-platform enable/disable states and custom URL patterns.');
|
|
||||||
lang_map.set('ja', 'プラットフォームごとの有効/無効状態とカスタムURLパターンを維持します。');
|
|
||||||
i18n_messages.set('section_4_4', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'We never send this information to amiPro, LLC servers or any third party.');
|
|
||||||
lang_map.set('ja', 'この情報がamiPro, LLCのサーバーや第三者に送信されることはありません。');
|
|
||||||
i18n_messages.set('section_4_note', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '5. Data Sharing & Transfers');
|
|
||||||
lang_map.set('ja', '5. データの共有と転送');
|
|
||||||
i18n_messages.set('section_5_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'ContextWizard does <strong>not</strong> transmit data outside the local browser environment.');
|
|
||||||
lang_map.set('ja', 'ContextWizardはローカルブラウザ環境の外部にデータを送信するこた<strong>ありません</strong>。');
|
|
||||||
i18n_messages.set('section_5_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'We do not share, sell, rent, or trade any user data with third parties.');
|
|
||||||
lang_map.set('ja', 'ユーザーデータを第三者と共有、販売、賃貸、取引することはありません。');
|
|
||||||
i18n_messages.set('section_5_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'The extension does not embed third-party analytics or advertising scripts.');
|
|
||||||
lang_map.set('ja', '拡張機能には第三者のアナリティクスや広告スクリプトは埋め込まれていません。');
|
|
||||||
i18n_messages.set('section_5_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Operating offline is fully supported once the extension is installed.');
|
|
||||||
lang_map.set('ja', '拡張機能のインストール後、オフラインでの動作が完全にサポートされます。');
|
|
||||||
i18n_messages.set('section_5_4', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '6. Permissions & Technical Safeguards');
|
|
||||||
lang_map.set('ja', '6. 権限と技術的保護措置');
|
|
||||||
i18n_messages.set('section_6_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Permission');
|
|
||||||
lang_map.set('ja', '権限');
|
|
||||||
i18n_messages.set('th_permission', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Reason');
|
|
||||||
lang_map.set('ja', '理由');
|
|
||||||
i18n_messages.set('th_reason', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Detects whether the tab you explicitly interact with matches a supported platform so conversations can be listed in the popup.');
|
|
||||||
lang_map.set('ja', 'ユーザーが明示的に操作したタブが対応するプラットフォームと一致するかを検出し、ポップアップに会話を一覧表示できるようにします。');
|
|
||||||
i18n_messages.set('td_activeTab', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "Opens the saved conversation's URL in the current window and reads metadata (title/URL) for the active tab only.");
|
|
||||||
lang_map.set('ja', '保存された会話のURLを現在のウィンドウで開き、アクティブタブのメタデータ(タイトル/URL)のみを読み取ります。');
|
|
||||||
i18n_messages.set('td_tabs', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Injects the packaged content script (<code>content.js</code>) on supported hosts to observe DOM changes in real time; no remote code is used.');
|
|
||||||
lang_map.set('ja', '対応するホストにパッケージされたコンテンツスクリプト(<code>content.js</code>)を注入し、DOMの変更をリアルタイムで監視します。リモートコードは使用されません。');
|
|
||||||
i18n_messages.set('td_scripting', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Saves conversations, summaries, and user preferences locally using Chrome Storage APIs.');
|
|
||||||
lang_map.set('ja', 'Chrome Storage APIを使用して会話、サマリー、ユーザー設定をローカルに保存します。');
|
|
||||||
i18n_messages.set('td_storage_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Host permissions');
|
|
||||||
lang_map.set('ja', 'ホスト権限');
|
|
||||||
i18n_messages.set('td_host_perm', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Restrict DOM access to specific AI chat domains so we can parse message containers safely.');
|
|
||||||
lang_map.set('ja', 'DOMアクセスを特定のAIチャットドメインに制限し、メッセージコンテナを安全に解析できるようにします。');
|
|
||||||
i18n_messages.set('td_host_perm_desc', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Additional safeguards:');
|
|
||||||
lang_map.set('ja', '追加の保護措置:');
|
|
||||||
i18n_messages.set('safeguards_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Manifest V3 service worker architecture prevents persistent background execution.');
|
|
||||||
lang_map.set('ja', 'Manifest V3のサービスワーカーアーキテクチャにより、永続的なバックグラウンド実行が防止されます。');
|
|
||||||
i18n_messages.set('safeguard_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'All JavaScript injected into pages ships with the extension bundle; no remote code execution or eval of downloaded strings.');
|
|
||||||
lang_map.set('ja', 'ページに注入されるすべてのJavaScriptは拡張機能バンドルに含まれています。リモートコード実行やダウンロードされた文字列のevalはありません。');
|
|
||||||
i18n_messages.set('safeguard_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'Obfuscation is applied only during the optional <code>npm run build</code> release process; source review builds remain readable.');
|
|
||||||
lang_map.set('ja', 'オフスケーションはオプションの<code>npm run build</code>リリースプロセス中のみ適用されます。ソースレビュー用ビルドはそのまま読める状態です。');
|
|
||||||
i18n_messages.set('safeguard_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '7. User Controls');
|
|
||||||
lang_map.set('ja', '7. ユーザーコントロール');
|
|
||||||
i18n_messages.set('section_7_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '<strong>Platform Toggles:</strong> Settings (<code>options.html</code>) lets you enable/disable each built-in domain or remove custom domains.');
|
|
||||||
lang_map.set('ja', '<strong>プラットフォームトグル:</strong>設定(<code>options.html</code>)で、各組み込みドメインの有効/無効やカスタムドメインの削除が可能です。');
|
|
||||||
i18n_messages.set('section_7_1', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '<strong>Data Management:</strong> Export, import, or delete all stored data from Settings → Data Management. Deleting clears <code>chrome.storage</code> entries.');
|
|
||||||
lang_map.set('ja', '<strong>データ管理:</strong>設定 → データ管理から、保存されたデータをすべてエクスポート、インポート、または削除できます。削除すると<code>chrome.storage</code>エントリがクリアされます。');
|
|
||||||
i18n_messages.set('section_7_2', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "<strong>Pause Collection:</strong> Use Chrome's site access controls or the in-extension platform toggle to stop monitoring a site temporarily. Removing the extension deletes every stored record.");
|
|
||||||
lang_map.set('ja', '<strong>収集の一時停止:</strong>Chromeのサイトアクセスコントロールまたは拡張機能内のプラットフォームトグルを使用して、サイトの監視を一時的に停止できます。拡張機能を削除すると、保存されたすべてのレコードが削除されます。');
|
|
||||||
i18n_messages.set('section_7_3', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '<strong>Language & UI:</strong> Switch languages via the popup menu; UI choices persist only within your profile.');
|
|
||||||
lang_map.set('ja', '<strong>言語とUI:</strong>ポップアップメニューで言語を切り替えます。UIの選択はプロファイル内でのみ維持されます。');
|
|
||||||
i18n_messages.set('section_7_4', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '8. Data Retention');
|
|
||||||
lang_map.set('ja', '8. データの保持');
|
|
||||||
i18n_messages.set('section_8_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "Data stays in your local Chrome profile until you delete it via the Data Management screen, clear Chrome's site data, or uninstall the extension. We do not maintain server-side backups, so removing the extension permanently erases your archive.");
|
|
||||||
lang_map.set('ja', 'データは、データ管理画面で削除するか、Chromeのサイトデータをクリアするか、拡張機能をアンインストールするまで、ローカルのChromeプロファイルに残ります。サーバーサイドのバックアップは保持していないため、拡張機能を削除するとアーカイブが完全に消去されます。');
|
|
||||||
i18n_messages.set('section_8_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '9. Compliance Statement');
|
|
||||||
lang_map.set('ja', '9. コンプライアンス声明');
|
|
||||||
i18n_messages.set('section_9_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "ContextWizard complies with the Chrome Web Store Developer Program Policies, including the User Data, Limited Use, and Secure Handling requirements. Because all processing occurs locally and no personal data leaves the device, ContextWizard also aligns with major privacy regulations (e.g., GDPR, CCPA) regarding data minimization and user control.");
|
|
||||||
lang_map.set('ja', 'ContextWizardは、ユーザーデータ、限定利用、安全な取り扱いの要件を含むChrome Web Store開発者プログラムポリシーに準拠しています。すべての処理がローカルで行われ、個人データがデバイス外に出ないため、ContextWizardはデータ最小化とユーザーコントロールに関する主要なプライバシー規制(GDPR、CCPAなど)にも適合しています。');
|
|
||||||
i18n_messages.set('section_9_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "10. Children's Privacy");
|
|
||||||
lang_map.set('ja', '10. 児童のプライバシー');
|
|
||||||
i18n_messages.set('section_10_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', "ContextWizard is intended for general audiences and does not knowingly collect information from children under 13. If you believe a minor has provided data, remove the extension or clear the storage to delete it immediately.");
|
|
||||||
lang_map.set('ja', 'ContextWizardは一般向けに意図されたものであり、13歳未満の児童の情報を故意に収集しません。未成年者がデータを提供したと思われる場合は、拡張機能を削除するか、ストレージをクリアして直ちに削除してください。');
|
|
||||||
i18n_messages.set('section_10_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '11. Changes to This Policy');
|
|
||||||
lang_map.set('ja', '11. ポリシーの変更');
|
|
||||||
i18n_messages.set('section_11_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'We may update this policy to reflect feature changes or regulatory guidance. When we do, we will update the "Last updated" date above and publish the revised policy at this same URL. Material changes will be summarized in the README and release notes.');
|
|
||||||
lang_map.set('ja', '機能の変更や規制ガイドラインの反映 위해、本ポリシーを更新する場合があります。更新する際は、上記の「最終更新日」を更新し、同じURLで改訂版ポリシーを公開します。重要な変更はREADMEとリリースノートに要約されます。');
|
|
||||||
i18n_messages.set('section_11_text', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', '12. Contact Us');
|
|
||||||
lang_map.set('ja', '12. お問い合わせ');
|
|
||||||
i18n_messages.set('section_12_title', lang_map);
|
|
||||||
|
|
||||||
lang_map = new Map();
|
|
||||||
lang_map.set('en', 'For privacy questions, requests, or bug reports, email <a href="mailto:support@amipro.me">support@amipro.me</a>. We aim to respond within five business days.');
|
|
||||||
lang_map.set('ja', 'プライバシーに関するお問い合わせ、リクエスト、バグ報告は、<a href="mailto:support@amipro.me">support@amipro.me</a>までメールください。5営業日以内に回答を目指しています。');
|
|
||||||
i18n_messages.set('section_12_text', lang_map);
|
|
||||||
|
|
||||||
window.onload = async function() {
|
|
||||||
setI18NText(i18n_messages);
|
|
||||||
initRevealAnimations();
|
|
||||||
if (typeof createLanguageSelector === 'function') {
|
|
||||||
document.body.appendChild(createLanguageSelector());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<!-- Layout wrapper -->
|
|
||||||
<div class="layout-wrapper layout-content-navbar">
|
|
||||||
<div class="layout-container">
|
|
||||||
<!-- Layout container -->
|
|
||||||
<div class="layout-page">
|
|
||||||
<!-- Navbar -->
|
|
||||||
|
|
||||||
<!-- Content wrapper -->
|
|
||||||
<div class="content-wrapper">
|
|
||||||
<!-- Content -->
|
|
||||||
<div style="margin: 24px;">
|
|
||||||
<section class="hero reveal">
|
|
||||||
<div class="hero__text" data-animate>
|
|
||||||
<span id="hero_eyebrow" class="hero__eyebrow">ContextWizard · Privacy</span>
|
|
||||||
<h1 id="hero_title" class="hero__title">Your AI conversations stay on your device</h1>
|
|
||||||
<p id="hero_lead" class="hero__lead">
|
|
||||||
ContextWizard by amiPro, LLC captures what is already visible in your AI chat windows,
|
|
||||||
encrypts and stores it locally, and never transmits it to amiPro or third parties.
|
|
||||||
</p>
|
|
||||||
<div class="hero__chips">
|
|
||||||
<span id="chip_local" class="hero-chip">Local‑first</span>
|
|
||||||
<span id="chip_manifest" class="hero-chip">Chrome Manifest V3</span>
|
|
||||||
<span id="chip_gdpr" class="hero-chip">GDPR & CCPA aligned</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hero__media" data-animate>
|
|
||||||
<div class="hero__orb"></div>
|
|
||||||
<div class="hero__device">
|
|
||||||
<h4 id="hero_media_title">ContextWizard Privacy Policy</h4>
|
|
||||||
<p id="hero_media_desc">
|
|
||||||
Learn exactly how data moves (and doesn't move) inside the extension and how to stay in control.
|
|
||||||
</p>
|
|
||||||
<div class="hero__chips" style="margin-top: 1.5rem;">
|
|
||||||
<span id="chip_telemetry" class="hero-chip">No telemetry</span>
|
|
||||||
<span id="chip_control" class="hero-chip">Full user control</span>
|
|
||||||
<span id="chip_offline" class="hero-chip">Offline friendly</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="alert alert-info d-flex align-items-center" role="alert" style="margin-top: 24px;">
|
|
||||||
<i class="bx bx-shield-quarter bx-sm me-2"></i>
|
|
||||||
<div>
|
|
||||||
<span id="last_updated"><strong>Last updated:</strong> 18 November 2025</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<article class="privacy-content" style="margin-top: 24px;">
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 id="section_intro_title" class="card-title" style="margin: 0;">ContextWizard Privacy Policy</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_intro_text">
|
|
||||||
ContextWizard is a Chrome extension built by amiPro, LLC that helps you capture, search, and revisit
|
|
||||||
AI chat conversations across multiple platforms. This Privacy Policy explains what data the extension
|
|
||||||
processes, how the data stays on your device, and what controls you have. By installing or using
|
|
||||||
ContextWizard you agree to the data practices described below.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_1_title" class="card-title" style="margin: 0;">1. Scope & Purpose</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_1_text">
|
|
||||||
ContextWizard runs entirely as a browser extension and operates solely within the Chrome profile where it is
|
|
||||||
installed. Its only purpose is to capture the text you already see on supported AI chat platforms, store summaries
|
|
||||||
and metadata locally, and provide search, filtering, and export/import features.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_2_title" class="card-title" style="margin: 0;">2. Data We Process</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-striped">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th id="th_category">Category</th>
|
|
||||||
<th id="th_description">Description</th>
|
|
||||||
<th id="th_storage">Storage Location</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td id="td_conv_content">Conversation content</td>
|
|
||||||
<td id="td_conv_desc">Message text, titles, timestamps, participant role (user/assistant), detected platform, and the URL of the conversation you are currently viewing.</td>
|
|
||||||
<td><code>chrome.storage.local</code></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td id="td_platform_settings">Platform settings</td>
|
|
||||||
<td id="td_platform_desc">Which built-in platforms are enabled, custom platform URL patterns, color assignments, and per-platform toggles.</td>
|
|
||||||
<td><code>chrome.storage.sync</code></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td id="td_ui_prefs">UI preferences</td>
|
|
||||||
<td id="td_ui_desc">Language override, sort order, search filters, onboarding dismissals, and other UX state.</td>
|
|
||||||
<td><code>chrome.storage.local</code></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<p id="section_2_note" class="mb-0">
|
|
||||||
ContextWizard does <strong>not</strong> collect account credentials, payment data, unrelated browsing history, or telemetry/analytics.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_3_title" class="card-title" style="margin: 0;">3. Data Sources & Collection Method</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<ul>
|
|
||||||
<li id="section_3_1">Content is captured only from pages whose URLs match the built-in or user-configured host permissions (e.g., <code>https://chatgpt.com/*</code>).</li>
|
|
||||||
<li id="section_3_2">The extension uses MutationObserver and DOM queries to read message containers in the active tab; it does <strong>not</strong> call any platform APIs or intercept network traffic.</li>
|
|
||||||
<li id="section_3_3">Data collection begins only after you navigate to a supported page and the recording indicator appears. Closing the tab or disabling the platform stops collection immediately.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_4_title" class="card-title" style="margin: 0;">4. How We Use Data</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_4_intro">All captured data is used exclusively to power the extension's on-device features:</p>
|
|
||||||
<ol>
|
|
||||||
<li id="section_4_1">Build a searchable, unified list of your AI conversations.</li>
|
|
||||||
<li id="section_4_2">Provide quick links back to the source page via <code>chrome.tabs.update</code>.</li>
|
|
||||||
<li id="section_4_3">Enable exports/imports so you can back up or restore your local archive.</li>
|
|
||||||
<li id="section_4_4">Maintain per-platform enable/disable states and custom URL patterns.</li>
|
|
||||||
</ol>
|
|
||||||
<p id="section_4_note" class="mb-0">We never send this information to amiPro, LLC servers or any third party.</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_5_title" class="card-title" style="margin: 0;">5. Data Sharing & Transfers</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<ul>
|
|
||||||
<li id="section_5_1">ContextWizard does <strong>not</strong> transmit data outside the local browser environment.</li>
|
|
||||||
<li id="section_5_2">We do not share, sell, rent, or trade any user data with third parties.</li>
|
|
||||||
<li id="section_5_3">The extension does not embed third-party analytics or advertising scripts.</li>
|
|
||||||
<li id="section_5_4">Operating offline is fully supported once the extension is installed.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_6_title" class="card-title" style="margin: 0;">6. Permissions & Technical Safeguards</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-striped">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th id="th_permission">Permission</th>
|
|
||||||
<th id="th_reason">Reason</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td><code>activeTab</code></td>
|
|
||||||
<td id="td_activeTab">Detects whether the tab you explicitly interact with matches a supported platform so conversations can be listed in the popup.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><code>tabs</code></td>
|
|
||||||
<td id="td_tabs">Opens the saved conversation's URL in the current window and reads metadata (title/URL) for the active tab only.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><code>scripting</code></td>
|
|
||||||
<td id="td_scripting">Injects the packaged content script (<code>content.js</code>) on supported hosts to observe DOM changes in real time; no remote code is used.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><code>storage</code></td>
|
|
||||||
<td id="td_storage_desc">Saves conversations, summaries, and user preferences locally using Chrome Storage APIs.</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td id="td_host_perm">Host permissions</td>
|
|
||||||
<td id="td_host_perm_desc">Restrict DOM access to specific AI chat domains so we can parse message containers safely.</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<p id="safeguards_title"><strong>Additional safeguards:</strong></p>
|
|
||||||
<ul>
|
|
||||||
<li id="safeguard_1">Manifest V3 service worker architecture prevents persistent background execution.</li>
|
|
||||||
<li id="safeguard_2">All JavaScript injected into pages ships with the extension bundle; no remote code execution or eval of downloaded strings.</li>
|
|
||||||
<li id="safeguard_3">Obfuscation is applied only during the optional <code>npm run build</code> release process; source review builds remain readable.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_7_title" class="card-title" style="margin: 0;">7. User Controls</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<ul>
|
|
||||||
<li id="section_7_1"><strong>Platform Toggles:</strong> Settings (<code>options.html</code>) lets you enable/disable each built-in domain or remove custom domains.</li>
|
|
||||||
<li id="section_7_2"><strong>Data Management:</strong> Export, import, or delete all stored data from Settings → Data Management. Deleting clears <code>chrome.storage</code> entries.</li>
|
|
||||||
<li id="section_7_3"><strong>Pause Collection:</strong> Use Chrome's site access controls or the in-extension platform toggle to stop monitoring a site temporarily. Removing the extension deletes every stored record.</li>
|
|
||||||
<li id="section_7_4"><strong>Language & UI:</strong> Switch languages via the popup menu; UI choices persist only within your profile.</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_8_title" class="card-title" style="margin: 0;">8. Data Retention</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_8_text">
|
|
||||||
Data stays in your local Chrome profile until you delete it via the Data Management screen, clear Chrome's site data, or uninstall the extension. We do not maintain server-side backups, so removing the extension permanently erases your archive.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_9_title" class="card-title" style="margin: 0;">9. Compliance Statement</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_9_text">
|
|
||||||
ContextWizard complies with the Chrome Web Store Developer Program Policies, including the User Data, Limited Use, and Secure Handling requirements. Because all processing occurs locally and no personal data leaves the device, ContextWizard also aligns with major privacy regulations (e.g., GDPR, CCPA) regarding data minimization and user control.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_10_title" class="card-title" style="margin: 0;">10. Children’s Privacy</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_10_text">
|
|
||||||
ContextWizard is intended for general audiences and does not knowingly collect information from children under 13. If you believe a minor has provided data, remove the extension or clear the storage to delete it immediately.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_11_title" class="card-title" style="margin: 0;">11. Changes to This Policy</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_11_text">
|
|
||||||
We may update this policy to reflect feature changes or regulatory guidance. When we do, we will update the "Last updated" date above and publish the revised policy at this same URL. Material changes will be summarized in the README and release notes.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-5 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h3 id="section_12_title" class="card-title" style="margin: 0;">12. Contact Us</h3>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<p id="section_12_text">
|
|
||||||
For privacy questions, requests, or bug reports, email <a href="mailto:support@amipro.me">support@amipro.me</a>.
|
|
||||||
We aim to respond within five business days.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
<!-- / Content -->
|
|
||||||
|
|
||||||
<div class="content-backdrop fade"></div>
|
|
||||||
</div>
|
|
||||||
<!-- Content wrapper -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout page -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout container -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout wrapper -->
|
|
||||||
|
|
||||||
<!-- Overlay -->
|
|
||||||
<div class="layout-overlay layout-menu-toggle"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,402 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
|
|
||||||
<html
|
|
||||||
lang="ja"
|
|
||||||
class="light-style"
|
|
||||||
>
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<meta
|
|
||||||
name="viewport"
|
|
||||||
content="width=device-width, initial-scale=1.0"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<title>特定商取引法に基づく表記 - ContextWizard - amiPro</title>
|
|
||||||
|
|
||||||
<!-- Google tag (gtag.js) -->
|
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-850DCHX9EJ"></script>
|
|
||||||
<script>
|
|
||||||
globalThis.dataLayer = globalThis.dataLayer || [];
|
|
||||||
function gtag(){dataLayer.push(arguments);}
|
|
||||||
gtag('js', new Date());
|
|
||||||
|
|
||||||
gtag('config', 'G-850DCHX9EJ');
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<meta name="description" content="ContextWizard Chrome拡張機能の特定商取引法に基づく表記(通信販売に関する表示事項)" />
|
|
||||||
|
|
||||||
<!-- Canonical -->
|
|
||||||
<link rel="canonical" href="https://amipro.me/contextwizard_tokushoho.html" />
|
|
||||||
|
|
||||||
<!-- Hreflang -->
|
|
||||||
<link rel="alternate" hreflang="ja" href="https://amipro.me/contextwizard_tokushoho.html" />
|
|
||||||
<link rel="alternate" hreflang="x-default" href="https://amipro.me/contextwizard_tokushoho.html" />
|
|
||||||
|
|
||||||
<!-- Open Graph -->
|
|
||||||
<meta property="og:type" content="article" />
|
|
||||||
<meta property="og:title" content="特定商取引法に基づく表記 - ContextWizard - amiPro" />
|
|
||||||
<meta property="og:description" content="ContextWizard Chrome拡張機能の特定商取引法に基づく表記(通信販売に関する表示事項)" />
|
|
||||||
<meta property="og:url" content="https://amipro.me/contextwizard_tokushoho.html" />
|
|
||||||
<meta property="og:site_name" content="amiPro" />
|
|
||||||
<meta property="og:image" content="https://amipro.me/files/og-image.png" />
|
|
||||||
|
|
||||||
<!-- Twitter Card -->
|
|
||||||
<meta name="twitter:card" content="summary_large_image" />
|
|
||||||
<meta name="twitter:title" content="特定商取引法に基づく表記 - ContextWizard - amiPro" />
|
|
||||||
<meta name="twitter:description" content="ContextWizard Chrome拡張機能の特定商取引法に基づく表記(通信販売に関する表示事項)" />
|
|
||||||
<meta name="twitter:image" content="https://amipro.me/files/og-image.png" />
|
|
||||||
|
|
||||||
<!-- JSON-LD Article Schema -->
|
|
||||||
<script type="application/ld+json">
|
|
||||||
{
|
|
||||||
"@context": "https://schema.org",
|
|
||||||
"@type": "Article",
|
|
||||||
"headline": "特定商取引法に基づく表記 - ContextWizard",
|
|
||||||
"description": "ContextWizard Chrome拡張機能の特定商取引法に基づく表記(通信販売に関する表示事項)",
|
|
||||||
"url": "https://amipro.me/contextwizard_tokushoho.html",
|
|
||||||
"datePublished": "2025-12-29",
|
|
||||||
"dateModified": "2025-12-29",
|
|
||||||
"author": {
|
|
||||||
"@type": "Person",
|
|
||||||
"name": "杜 慶捷"
|
|
||||||
},
|
|
||||||
"publisher": {
|
|
||||||
"@type": "Organization",
|
|
||||||
"name": "amiPro合同会社",
|
|
||||||
"url": "https://amipro.me"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<!-- Favicon -->
|
|
||||||
<link rel="icon" type="image/x-icon" href="files/favicon.ico" />
|
|
||||||
|
|
||||||
<!-- Fonts -->
|
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
||||||
<link
|
|
||||||
href="https://fonts.googleapis.com/css2?family=Public+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&display=swap"
|
|
||||||
rel="stylesheet"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!-- Icons. Uncomment required icon fonts -->
|
|
||||||
<link rel="stylesheet" href="files/boxicons.css?v=20230405" />
|
|
||||||
|
|
||||||
<!-- Core CSS -->
|
|
||||||
<link rel="stylesheet" href="files/core.css" class="template-customizer-core-css" />
|
|
||||||
<link rel="stylesheet" href="files/theme-default.css" class="template-customizer-theme-css" />
|
|
||||||
<link rel="stylesheet" href="files/demo.css" />
|
|
||||||
<link rel="stylesheet" href="files/modern.css" />
|
|
||||||
|
|
||||||
<!-- Vendors CSS -->
|
|
||||||
<link rel="stylesheet" href="files/perfect-scrollbar.css" />
|
|
||||||
|
|
||||||
<!-- Page CSS -->
|
|
||||||
|
|
||||||
<!-- Helpers -->
|
|
||||||
<script src="files/helpers.js"></script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
body {
|
|
||||||
color: #1f2a37;
|
|
||||||
background-color: #f5f7fb;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content .card {
|
|
||||||
border: none;
|
|
||||||
border-radius: 1rem;
|
|
||||||
box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
|
|
||||||
background-color: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content .card-header {
|
|
||||||
background: transparent;
|
|
||||||
border-bottom: 1px solid rgba(15, 23, 42, 0.08);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content .card-title {
|
|
||||||
color: #0f172a;
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content .card-body,
|
|
||||||
.tokushoho-content .card-body p,
|
|
||||||
.tokushoho-content .card-body li,
|
|
||||||
.tokushoho-content .card-body td,
|
|
||||||
.tokushoho-content .card-body th {
|
|
||||||
color: #1f2937;
|
|
||||||
font-size: 1rem;
|
|
||||||
line-height: 1.7;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content .card-body ul {
|
|
||||||
padding-left: 1.25rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content table {
|
|
||||||
border-color: rgba(15, 23, 42, 0.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.tokushoho-content table th {
|
|
||||||
background-color: #f8fafc;
|
|
||||||
font-weight: 600;
|
|
||||||
white-space: nowrap;
|
|
||||||
width: 200px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__text,
|
|
||||||
.hero__text .hero__title,
|
|
||||||
.hero__text p,
|
|
||||||
.hero__eyebrow,
|
|
||||||
.hero__chips .hero-chip {
|
|
||||||
color: #f8fafc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__text .hero__title {
|
|
||||||
text-shadow: 0 4px 24px rgba(15, 23, 42, 0.35);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__chips .hero-chip {
|
|
||||||
background: rgba(255, 255, 255, 0.12);
|
|
||||||
border-color: rgba(255, 255, 255, 0.2);
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero__device h4,
|
|
||||||
.hero__device p {
|
|
||||||
color: #e2e8f0;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<!--! Template customizer & Theme config files MUST be included after core stylesheets and helpers.js in the <head> section -->
|
|
||||||
<!--? Config: Mandatory theme config file contain global vars & default theme options, Set your preferred theme option in this file. -->
|
|
||||||
<script src="files/config.js"></script>
|
|
||||||
|
|
||||||
<script src="files/jquery.js"></script>
|
|
||||||
<script src="files/popper.js"></script>
|
|
||||||
<script src="files/bootstrap.js"></script>
|
|
||||||
<script src="files/perfect-scrollbar.js"></script>
|
|
||||||
<script src="files/menu.js"></script>
|
|
||||||
<script src="files/main.js"></script>
|
|
||||||
|
|
||||||
<script src="files/ua-parser.js"></script>
|
|
||||||
|
|
||||||
<script src="files/amipro_utils.js?v=20230401402"></script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
window.onload = async function() {
|
|
||||||
initRevealAnimations();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<!-- Layout wrapper -->
|
|
||||||
<div class="layout-wrapper layout-content-navbar">
|
|
||||||
<div class="layout-container">
|
|
||||||
<!-- Layout container -->
|
|
||||||
<div class="layout-page">
|
|
||||||
<!-- Navbar -->
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- / Navbar -->
|
|
||||||
|
|
||||||
<!-- Content wrapper -->
|
|
||||||
<div class="content-wrapper">
|
|
||||||
<!-- Content -->
|
|
||||||
<div style="margin: 24px;">
|
|
||||||
<section class="hero reveal">
|
|
||||||
<div class="hero__text" data-animate>
|
|
||||||
<span class="hero__eyebrow">ContextWizard · 法的情報</span>
|
|
||||||
<h1 class="hero__title">特定商取引法に基づく表記</h1>
|
|
||||||
<p class="hero__lead">
|
|
||||||
ContextWizard Chrome拡張機能の有料アップグレードに関する、
|
|
||||||
特定商取引法に基づく販売業者情報および取引条件の表示です。
|
|
||||||
</p>
|
|
||||||
<div class="hero__chips">
|
|
||||||
<span class="hero-chip">日本国内向け</span>
|
|
||||||
<span class="hero-chip">安全なカード決済</span>
|
|
||||||
<span class="hero-chip">買い切りプラン</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="hero__media" data-animate>
|
|
||||||
<div class="hero__orb"></div>
|
|
||||||
<div class="hero__device">
|
|
||||||
<h4>通信販売に関する表示事項</h4>
|
|
||||||
<p>
|
|
||||||
お客様に安心してお取引いただくため、販売条件・返品ポリシー等を明記しています。
|
|
||||||
</p>
|
|
||||||
<div class="hero__chips" style="margin-top: 1.5rem;">
|
|
||||||
<span class="hero-chip">明瞭な価格表示</span>
|
|
||||||
<span class="hero-chip">即時利用可能</span>
|
|
||||||
<span class="hero-chip">安心サポート</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="alert alert-info d-flex align-items-center" role="alert" style="margin-top: 24px;">
|
|
||||||
<i class="bx bx-calendar bx-sm me-2"></i>
|
|
||||||
<div>
|
|
||||||
<strong>最終更新日:</strong>2025年12月29日
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<article class="tokushoho-content" style="margin-top: 24px;">
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">販売業者情報</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>販売業者</th>
|
|
||||||
<td>amiPro合同会社 (法 人 番 号 1 0 1 1 0 0 3 0 1 6 4 0 3)</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>運営責任者</th>
|
|
||||||
<td>杜 慶捷</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>所在地</th>
|
|
||||||
<td>〒150-0001<br>東京都渋谷区神宮前六丁目23番4号桑野ビル2階</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>電話番号</th>
|
|
||||||
<td>03-6869-2796<br><small class="text-muted">(受付時間:平日 10:00〜18:00)</small></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>メールアドレス</th>
|
|
||||||
<td><a href="mailto:support@amipro.me">support@amipro.me</a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">商品・料金について</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>商品名</th>
|
|
||||||
<td>ContextWizard Pro アップグレード</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>販売価格</th>
|
|
||||||
<td>500円(税込、買い切り型)</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>商品代金以外の必要料金</th>
|
|
||||||
<td>なし</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">お支払いについて</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>支払方法</th>
|
|
||||||
<td>クレジットカード(Visa / Mastercard / JCB / American Express)</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>支払時期</th>
|
|
||||||
<td>購入時即時決済</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">商品の引渡しについて</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>引渡時期</th>
|
|
||||||
<td>決済完了後即時(拡張機能内でPro機能が自動有効化)</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th>引渡方法</th>
|
|
||||||
<td>オンラインによるデジタル提供(物理配送なし)</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-4 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">返品・キャンセルについて</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>返品・キャンセル</th>
|
|
||||||
<td>本商品はデジタルコンテンツの性質上、原則として購入後の返品・キャンセル・返金はお受けできません。ただし、技術的な問題により正常に動作しない場合、サポート(<a href="mailto:support@amipro.me">support@amipro.me</a>)までお問い合わせください。個別に対応いたします。</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section class="card mb-5 reveal" data-animate>
|
|
||||||
<div class="card-header">
|
|
||||||
<h2 class="card-title" style="margin: 0;">動作環境</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered">
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th>動作環境</th>
|
|
||||||
<td>Google Chrome最新版(Windows / macOS / Linux対応)</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</article>
|
|
||||||
</div>
|
|
||||||
<!-- / Content -->
|
|
||||||
|
|
||||||
<div class="content-backdrop fade"></div>
|
|
||||||
</div>
|
|
||||||
<!-- Content wrapper -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout page -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout container -->
|
|
||||||
</div>
|
|
||||||
<!-- / Layout wrapper -->
|
|
||||||
|
|
||||||
<!-- Overlay -->
|
|
||||||
<div class="layout-overlay layout-menu-toggle"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -55,7 +55,6 @@ emit_verify_urls() {
|
|||||||
cat <<'EOF'
|
cat <<'EOF'
|
||||||
/
|
/
|
||||||
/fido2_top.html
|
/fido2_top.html
|
||||||
/contextwizard_top.html
|
|
||||||
/integration_api.html
|
/integration_api.html
|
||||||
/passkey.html
|
/passkey.html
|
||||||
EOF
|
EOF
|
||||||
@@ -86,7 +85,6 @@ verify_live_page() {
|
|||||||
|
|
||||||
printf 'cd "%s"\n' "$REMOTE_DIR" > "$batch_file"
|
printf 'cd "%s"\n' "$REMOTE_DIR" > "$batch_file"
|
||||||
emit_site_file_commands
|
emit_site_file_commands
|
||||||
emit_directory_commands contextwizard-files
|
|
||||||
emit_directory_commands files
|
emit_directory_commands files
|
||||||
|
|
||||||
echo "Deploying to $SFTP_USER@$SFTP_HOST:$REMOTE_DIR"
|
echo "Deploying to $SFTP_USER@$SFTP_HOST:$REMOTE_DIR"
|
||||||
|
|||||||
@@ -462,7 +462,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 1rem;">
|
<div style="margin-top: 2rem; display: flex; flex-wrap: wrap; gap: 1rem;">
|
||||||
<a href="fido2_top.html" class="btn btn-primary" style="flex: 1 0 220px;" id="hero_btn_passkey">Explore Passkey Platform</a>
|
<a href="fido2_top.html" class="btn btn-primary" style="flex: 1 0 220px;" id="hero_btn_passkey">Explore Passkey Platform</a>
|
||||||
<a href="contextwizard_top.html" class="btn btn-outline-info" style="flex: 1 0 220px;" id="hero_btn_contextwizard">Discover ContextWizard</a>
|
<a href="https://contextwizard.site/" class="btn btn-outline-info" style="flex: 1 0 220px;" id="hero_btn_contextwizard">Discover ContextWizard</a>
|
||||||
<a href="https://mcporb.ai" class="btn btn-outline-success" style="flex: 1 0 220px;" id="hero_btn_mcporb">Explore MCPOrb</a>
|
<a href="https://mcporb.ai" class="btn btn-outline-success" style="flex: 1 0 220px;" id="hero_btn_mcporb">Explore MCPOrb</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -520,7 +520,7 @@
|
|||||||
Keep every AI conversation searchable, portable, and private. Automatically capture threads across assistants
|
Keep every AI conversation searchable, portable, and private. Automatically capture threads across assistants
|
||||||
with encryption that never leaves your machine.
|
with encryption that never leaves your machine.
|
||||||
</p>
|
</p>
|
||||||
<a href="contextwizard_top.html" class="btn btn-link px-0" id="product_cw_link">See ContextWizard →</a>
|
<a href="https://contextwizard.site/" class="btn btn-link px-0" id="product_cw_link">See ContextWizard →</a>
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
@@ -585,7 +585,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<a href="fido2_top.html" class="footer-link me-4" id="footer_fido2">FIDO2 Platform</a>
|
<a href="fido2_top.html" class="footer-link me-4" id="footer_fido2">FIDO2 Platform</a>
|
||||||
<a href="contextwizard_top.html" class="footer-link me-4" id="footer_cw">ContextWizard</a>
|
<a href="https://contextwizard.site/" class="footer-link me-4" id="footer_cw">ContextWizard</a>
|
||||||
<a href="https://mcporb.ai" class="footer-link" id="footer_mcporb">MCPOrb</a>
|
<a href="https://mcporb.ai" class="footer-link" id="footer_mcporb">MCPOrb</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
2
llms.txt
2
llms.txt
@@ -5,7 +5,7 @@
|
|||||||
## Products
|
## Products
|
||||||
|
|
||||||
- [Passkey Hub](https://amipro.me/fido2_top.html): FIDO2-certified passwordless authentication cloud with open-source server, drop-in SDKs (JavaScript, iOS, Android), and a management portal for registration, recovery, and analytics. Pricing is per active user per month.
|
- [Passkey Hub](https://amipro.me/fido2_top.html): FIDO2-certified passwordless authentication cloud with open-source server, drop-in SDKs (JavaScript, iOS, Android), and a management portal for registration, recovery, and analytics. Pricing is per active user per month.
|
||||||
- [ContextWizard](https://amipro.me/contextwizard_top.html): Local-first browser extension that captures, organizes, and encrypts AI conversations across 10+ platforms including ChatGPT, Claude, Gemini, and Perplexity. Free and open-source.
|
- [ContextWizard](https://contextwizard.site/): Local-first browser extension that captures, organizes, and encrypts AI conversations across 10+ platforms including ChatGPT, Claude, Gemini, and Perplexity. Free and open-source.
|
||||||
|
|
||||||
## Documentation
|
## Documentation
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
User-agent: *
|
User-agent: *
|
||||||
Allow: /
|
|
||||||
|
|
||||||
Sitemap: https://amipro.me/sitemap.xml
|
Sitemap: https://amipro.me/sitemap.xml
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
<priority>0.9</priority>
|
<priority>0.9</priority>
|
||||||
</url>
|
</url>
|
||||||
<url>
|
<url>
|
||||||
<loc>https://amipro.me/contextwizard_top.html</loc>
|
<loc>https://contextwizard.site/</loc>
|
||||||
<lastmod>2026-01-08</lastmod>
|
<lastmod>2026-01-08</lastmod>
|
||||||
<priority>0.9</priority>
|
<priority>0.9</priority>
|
||||||
</url>
|
</url>
|
||||||
|
|||||||
Reference in New Issue
Block a user