clew-code 0.2.7 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +292 -299
  2. package/dist/main.js +2745 -2869
  3. package/docs/architecture.html +148 -145
  4. package/docs/architecture.th.html +79 -78
  5. package/docs/clew-code-architecture.html +1125 -0
  6. package/docs/commands.html +224 -223
  7. package/docs/commands.th.html +131 -130
  8. package/docs/configuration.html +147 -145
  9. package/docs/configuration.th.html +108 -106
  10. package/docs/css/styles.css +48 -42
  11. package/docs/daemon.html +129 -128
  12. package/docs/daemon.th.html +73 -72
  13. package/docs/features/bridge-mode.html +99 -98
  14. package/docs/features/bridge-mode.th.html +90 -89
  15. package/docs/features/evals.html +182 -181
  16. package/docs/features/evals.th.html +90 -89
  17. package/docs/features/peer.html +178 -177
  18. package/docs/features/searxng-search.html +151 -150
  19. package/docs/features/searxng-search.th.html +95 -94
  20. package/docs/features/sentry-setup.html +157 -156
  21. package/docs/features/sentry-setup.th.html +97 -96
  22. package/docs/index.html +299 -298
  23. package/docs/index.th.html +292 -290
  24. package/docs/installation.html +105 -103
  25. package/docs/installation.th.html +105 -103
  26. package/docs/internals/growthbook-ab-testing.html +113 -112
  27. package/docs/internals/growthbook-ab-testing.th.html +81 -80
  28. package/docs/internals/hidden-features.html +149 -147
  29. package/docs/internals/hidden-features.th.html +109 -107
  30. package/docs/js/main.js +83 -3
  31. package/docs/loop.html +181 -180
  32. package/docs/loop.th.html +227 -226
  33. package/docs/mcp.html +247 -246
  34. package/docs/mcp.th.html +207 -206
  35. package/docs/models.html +111 -110
  36. package/docs/models.th.html +61 -60
  37. package/docs/peer.html +236 -235
  38. package/docs/peer.th.html +280 -279
  39. package/docs/permission-model.html +102 -101
  40. package/docs/permission-model.th.html +67 -66
  41. package/docs/plugins.html +102 -101
  42. package/docs/plugins.th.html +79 -78
  43. package/docs/providers.html +126 -117
  44. package/docs/providers.th.html +80 -78
  45. package/docs/quick-start.html +93 -92
  46. package/docs/quick-start.th.html +40 -39
  47. package/docs/research-memory.html +82 -79
  48. package/docs/research-memory.th.html +72 -71
  49. package/docs/skills.html +117 -116
  50. package/docs/skills.th.html +90 -89
  51. package/docs/tools.html +170 -169
  52. package/docs/tools.th.html +84 -83
  53. package/docs/troubleshooting.html +106 -105
  54. package/docs/troubleshooting.th.html +85 -84
  55. package/package.json +164 -162
  56. package/docs/taste.html +0 -436
  57. package/docs/taste.th.html +0 -236
@@ -1,156 +1,157 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Sentry Error Reporting Clew</title>
7
- <meta name="description" content="Opt-in Sentry crash/error telemetry for Clew default off, privacy-first.">
8
- <link rel="preconnect" href="https://fonts.googleapis.com">
9
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
- <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet">
11
- <link rel="stylesheet" href="../css/styles.css">
12
- <link rel="icon" type="image/svg+xml" href="../assets/clew.svg">
13
- </head>
14
- <body>
15
- <header class="header">
16
- <div class="header-inner">
17
- <a href="../index.html" class="logo">
18
- <span>Clew Code</span>
19
- </a>
20
- <nav class="header-nav">
21
- <a href="../index.html">Home</a>
22
- <a href="../index.html#features">Features</a>
23
- <a href="../index.html#commands">Commands</a>
24
- <a href="../quick-start.html" class="active">Docs</a>
25
- <a href="https://github.com/JonusNattapong/ClewCode" target="_blank">GitHub</a>
26
- <div class="lang-wrap">
27
- <button class="lang-btn">🌐</button>
28
- <div class="lang-menu">
29
- <a href="../../readme/README.zh.md">中文</a>
30
- <a href="../../readme/README.th.md">ไทย</a>
31
- <a href="../../readme/README.ja.md">日本語</a>
32
- <a href="../../readme/README.ko.md">한국어</a>
33
- <a href="../../readme/README.es.md">Español</a>
34
- <a href="../../readme/README.fr.md">Français</a>
35
- <a href="../../readme/README.de.md">Deutsch</a>
36
- <a href="../../readme/README.pt.md">Português</a>
37
- <a href="../../readme/README.vi.md">Tiếng Việt</a>
38
- <a href="../../readme/README.id.md">Bahasa Indonesia</a>
39
- <a href="../../readme/README.ru.md">Русский</a>
40
- <a href="../../readme/README.hi.md">हिन्दी</a>
41
- <a href="../../README.md">English</a>
42
- </div>
43
- </div>
44
- </nav>
45
- <button class="menu-btn" id="menuToggle" aria-label="Toggle navigation"><span></span><span></span><span></span></button>
46
- </div>
47
- </header>
48
- <div class="app">
49
- <aside class="sidebar" id="sidebar"></aside>
50
- <div class="sidebar-overlay" id="sidebarOverlay"></div>
51
- <div class="content-wrap">
52
- <main class="content">
53
- <div class="breadcrumbs"><a href="../index.html">Home</a><span class="sep">/</span><a href="../index.html#features">Features</a><span class="sep">/</span><span>Sentry Setup</span></div>
54
- <h1>Sentry Error Reporting</h1>
55
- <p class="section-subtitle">Optional, opt-in crash and error telemetry <strong>completely disabled by default</strong>. No data leaves your machine unless you explicitly set <code>SENTRY_DSN</code>.</p>
56
-
57
- <div class="callout callout-tip">
58
- <strong>TL;DR</strong>
59
- <code>SENTRY_DSN=https://key@sentry.io/123 claude</code> that's it. Without it, zero network requests, zero telemetry.
60
- </div>
61
-
62
- <h2>Quick Start</h2>
63
- <h3>Self-hosted Sentry</h3>
64
- <pre><code>SENTRY_DSN=https://public_key@your-sentry.example.com/123 claude</code></pre>
65
-
66
- <h3>Sentry Cloud</h3>
67
- <pre><code>SENTRY_DSN=https://public_key@o123456.ingest.sentry.io/789 claude</code></pre>
68
-
69
- <h3>Disable (default)</h3>
70
- <pre><code>clew</code></pre>
71
-
72
- <h2>Environment Variables</h2>
73
- <table>
74
- <tr><th>Variable</th><th>Required</th><th>Default</th><th>Description</th></tr>
75
- <tr><td><code>SENTRY_DSN</code></td><td><strong>yes</strong></td><td>—</td><td>Sentry DSN to enable. Without this, everything is no-op.</td></tr>
76
- <tr><td><code>SENTRY_ENVIRONMENT</code></td><td>no</td><td><code>NODE_ENV</code> or <code>production</code></td><td>Environment tag in Sentry dashboard</td></tr>
77
- <tr><td><code>SENTRY_RELEASE</code></td><td>no</td><td>auto from package.json</td><td>Release version tag</td></tr>
78
- <tr><td><code>SENTRY_SAMPLE_RATE</code></td><td>no</td><td><code>1.0</code></td><td>Error sample rate (0.01.0)</td></tr>
79
- </table>
80
-
81
- <h2>What Gets Sent</h2>
82
- <p>Only error metadata <strong>never prompts, responses, file contents, or command output</strong>:</p>
83
- <ul>
84
- <li>Error name, message, and stack trace (without local variable values)</li>
85
- <li>Runtime info: OS platform, Node/Bun version</li>
86
- <li>Mode: REPL, non-interactive, MCP server</li>
87
- <li>Provider and model name (when applicable)</li>
88
- <li>Version and release tag</li>
89
- </ul>
90
-
91
- <h2>What Does NOT Get Sent</h2>
92
- <table>
93
- <tr><th>Category</th><th>Examples</th></tr>
94
- <tr><td><strong>Prompts</strong></td><td>user input, AI system prompts</td></tr>
95
- <tr><td><strong>Responses</strong></td><td>model output, streaming chunks</td></tr>
96
- <tr><td><strong>File content</strong></td><td>Read/Edit/Write payload, command stdout/stderr</td></tr>
97
- <tr><td><strong>Credentials</strong></td><td>API keys, tokens, passwords, cookies</td></tr>
98
- <tr><td><strong>Auth headers</strong></td><td>Authorization, x-api-key, Cookie, Set-Cookie</td></tr>
99
- <tr><td><strong>OAuth tokens</strong></td><td>access_token, refresh_token, id_token</td></tr>
100
- <tr><td><strong>Environment dump</strong></td><td>entire env block (individual vars may appear as tags)</td></tr>
101
- <tr><td><strong>Local paths</strong></td><td>home directory anonymized to <code>[HOME]</code></td></tr>
102
- <tr><td><strong>Breadcrumbs</strong></td><td>user actions are not tracked</td></tr>
103
- <tr><td><strong>User identity</strong></td><td>user field stripped from all events</td></tr>
104
- </table>
105
-
106
- <h2>Privacy Scrubber</h2>
107
- <p>Every event passes through a <code>beforeSend</code> hook that:</p>
108
- <ol>
109
- <li><strong>Scrubs strings</strong> removes API key patterns (<code>sk-*</code>, <code>Bearer</code> tokens), auth headers, cookie values</li>
110
- <li><strong>Strips stack frame variables</strong> removes <code>vars</code>, <code>pre_context</code>, <code>context_line</code>, <code>post_context</code></li>
111
- <li><strong>Removes breadcrumbs</strong> user actions are never tracked</li>
112
- <li><strong>Cleans request data</strong> removes headers, cookies, query strings</li>
113
- <li><strong>Anonymizes home directory</strong> replaces paths with <code>[HOME]</code></li>
114
- <li><strong>Drops oversized strings</strong> over 2000 chars truncated</li>
115
- <li><strong>Recursively scrubs nested objects</strong> drops keys named prompt, response, content, message, input, output, text, body, data, payload, token, key, secret, password, auth, cookie</li>
116
- </ol>
117
-
118
- <h2>Checking Status</h2>
119
- <pre><code># When disabled
120
- Sentry Telemetry: Disabled (set SENTRY_DSN to enable)
121
-
122
- # When enabled
123
- Sentry Telemetry: Enabled</code></pre>
124
-
125
- <div class="callout callout-info">
126
- <strong>DSN Masking</strong>
127
- The DSN is masked in the UI only the first 8 and last 4 characters of the key are shown. The full DSN is never displayed in any output.
128
- </div>
129
-
130
- <h2>Files</h2>
131
- <table>
132
- <tr><th>File</th><th>Purpose</th></tr>
133
- <tr><td><code>src/utils/sentry.ts</code></td><td>Core wrapper init, capture, close, scrubber</td></tr>
134
- <tr><td><code>src/utils/sentry.test.ts</code></td><td>Unit tests (11 tests)</td></tr>
135
- <tr><td><code>src/entrypoints/init.ts</code></td><td>Calls <code>initSentry()</code> at startup</td></tr>
136
- <tr><td><code>src/utils/gracefulShutdown.ts</code></td><td>Calls <code>closeSentry()</code> before exit</td></tr>
137
- <tr><td><code>src/utils/log.ts</code></td><td><code>logError()</code> sends to Sentry when enabled</td></tr>
138
- <tr><td><code>src/components/SentryErrorBoundary.tsx</code></td><td>React error boundary for render crashes</td></tr>
139
- <tr><td><code>src/components/App.tsx</code></td><td>Wraps app tree in <code>SentryErrorBoundary</code></td></tr>
140
- <tr><td><code>src/utils/doctorDiagnostic.ts</code></td><td><code>/doctor</code> Sentry status display</td></tr>
141
- </table>
142
-
143
- <footer class="footer">
144
- <span>Clew Code v0.2.4</span>
145
- <div class="footer-links">
146
- <a href="https://github.com/JonusNattapong/ClewCode">GitHub</a>
147
- <a href="https://github.com/JonusNattapong/ClewCode/issues">Issues</a>
148
- </div>
149
- </footer>
150
- </main>
151
- <nav class="toc-sidebar"></nav>
152
- </div>
153
- </div>
154
- <script src="../js/main.js"></script>
155
- </body>
156
- </html>
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Sentry Error Reporting — Clew</title>
7
+ <meta name="description" content="Opt-in Sentry crash/error telemetry for Clew — default off, privacy-first.">
8
+ <link rel="preconnect" href="https://fonts.googleapis.com">
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
+ <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet">
11
+ <link rel="stylesheet" href="../css/styles.css">
12
+ <link rel="icon" type="image/svg+xml" href="../assets/clew.svg">
13
+ </head>
14
+ <body>
15
+ <header class="header">
16
+ <div class="header-inner">
17
+ <a href="../index.html" class="logo">
18
+ <span>Clew Code</span>
19
+ </a>
20
+ <nav class="header-nav">
21
+ <a href="../index.html">Home</a>
22
+ <a href="../index.html#features">Features</a>
23
+ <a href="../index.html#commands">Commands</a>
24
+ <a href="../quick-start.html" class="active">Docs</a>
25
+ <a href="https://github.com/ClewCode/ClewCode" target="_blank">GitHub</a>
26
+ <div class="lang-wrap">
27
+ <button class="lang-btn">🌐</button>
28
+ <div class="lang-menu">
29
+ <a href="../../readme/README.zh.md">中文</a>
30
+ <a href="../../readme/README.th.md">ไทย</a>
31
+ <a href="../../readme/README.ja.md">日本語</a>
32
+ <a href="../../readme/README.ko.md">한국어</a>
33
+ <a href="../../readme/README.es.md">Español</a>
34
+ <a href="../../readme/README.fr.md">Français</a>
35
+ <a href="../../readme/README.de.md">Deutsch</a>
36
+ <a href="../../readme/README.pt.md">Português</a>
37
+ <a href="../../readme/README.vi.md">Tiếng Việt</a>
38
+ <a href="../../readme/README.id.md">Bahasa Indonesia</a>
39
+ <a href="../../readme/README.ru.md">Русский</a>
40
+ <a href="../../readme/README.hi.md">हिन्दी</a>
41
+ <a href="../../README.md">English</a>
42
+ </div>
43
+ </div>
44
+ </nav>
45
+ <button class="menu-btn" id="menuToggle" aria-label="Toggle navigation"><span></span><span></span><span></span></button>
46
+ </div>
47
+ </header>
48
+ <div class="app">
49
+ <aside class="sidebar" id="sidebar"></aside>
50
+ <div class="sidebar-overlay" id="sidebarOverlay"></div>
51
+ <div class="content-wrap">
52
+ <main class="content">
53
+ <div class="breadcrumbs"><a href="../index.html">Home</a><span class="sep">/</span><a href="../index.html#features">Features</a><span class="sep">/</span><span>Sentry Setup</span></div>
54
+ <h1>Sentry Error Reporting</h1>
55
+ <p class="section-subtitle">Optional, opt-in crash and error telemetry — <strong>completely disabled by default</strong>. No data leaves your machine unless you explicitly set <code>SENTRY_DSN</code>.</p>
56
+
57
+ <div class="callout callout-tip">
58
+ <strong>TL;DR</strong>
59
+ <code>SENTRY_DSN=https://key@sentry.io/123 claude</code> — that's it. Without it, zero network requests, zero telemetry.
60
+ </div>
61
+
62
+ <h2>Quick Start</h2>
63
+ <h3>Self-hosted Sentry</h3>
64
+ <pre><code>SENTRY_DSN=https://public_key@your-sentry.example.com/123 claude</code></pre>
65
+
66
+ <h3>Sentry Cloud</h3>
67
+ <pre><code>SENTRY_DSN=https://public_key@o123456.ingest.sentry.io/789 claude</code></pre>
68
+
69
+ <h3>Disable (default)</h3>
70
+ <pre><code>clew</code></pre>
71
+
72
+ <h2>Environment Variables</h2>
73
+ <table>
74
+ <tr><th>Variable</th><th>Required</th><th>Default</th><th>Description</th></tr>
75
+ <tr><td><code>SENTRY_DSN</code></td><td><strong>yes</strong></td><td>—</td><td>Sentry DSN to enable. Without this, everything is no-op.</td></tr>
76
+ <tr><td><code>SENTRY_ENVIRONMENT</code></td><td>no</td><td><code>NODE_ENV</code> or <code>production</code></td><td>Environment tag in Sentry dashboard</td></tr>
77
+ <tr><td><code>SENTRY_RELEASE</code></td><td>no</td><td>auto from package.json</td><td>Release version tag</td></tr>
78
+ <tr><td><code>SENTRY_SAMPLE_RATE</code></td><td>no</td><td><code>1.0</code></td><td>Error sample rate (0.0–1.0)</td></tr>
79
+ </table>
80
+
81
+ <h2>What Gets Sent</h2>
82
+ <p>Only error metadata — <strong>never prompts, responses, file contents, or command output</strong>:</p>
83
+ <ul>
84
+ <li>Error name, message, and stack trace (without local variable values)</li>
85
+ <li>Runtime info: OS platform, Node/Bun version</li>
86
+ <li>Mode: REPL, non-interactive, MCP server</li>
87
+ <li>Provider and model name (when applicable)</li>
88
+ <li>Version and release tag</li>
89
+ </ul>
90
+
91
+ <h2>What Does NOT Get Sent</h2>
92
+ <table>
93
+ <tr><th>Category</th><th>Examples</th></tr>
94
+ <tr><td><strong>Prompts</strong></td><td>user input, AI system prompts</td></tr>
95
+ <tr><td><strong>Responses</strong></td><td>model output, streaming chunks</td></tr>
96
+ <tr><td><strong>File content</strong></td><td>Read/Edit/Write payload, command stdout/stderr</td></tr>
97
+ <tr><td><strong>Credentials</strong></td><td>API keys, tokens, passwords, cookies</td></tr>
98
+ <tr><td><strong>Auth headers</strong></td><td>Authorization, x-api-key, Cookie, Set-Cookie</td></tr>
99
+ <tr><td><strong>OAuth tokens</strong></td><td>access_token, refresh_token, id_token</td></tr>
100
+ <tr><td><strong>Environment dump</strong></td><td>entire env block (individual vars may appear as tags)</td></tr>
101
+ <tr><td><strong>Local paths</strong></td><td>home directory anonymized to <code>[HOME]</code></td></tr>
102
+ <tr><td><strong>Breadcrumbs</strong></td><td>user actions are not tracked</td></tr>
103
+ <tr><td><strong>User identity</strong></td><td>user field stripped from all events</td></tr>
104
+ </table>
105
+
106
+ <h2>Privacy Scrubber</h2>
107
+ <p>Every event passes through a <code>beforeSend</code> hook that:</p>
108
+ <ol>
109
+ <li><strong>Scrubs strings</strong> — removes API key patterns (<code>sk-*</code>, <code>Bearer</code> tokens), auth headers, cookie values</li>
110
+ <li><strong>Strips stack frame variables</strong> — removes <code>vars</code>, <code>pre_context</code>, <code>context_line</code>, <code>post_context</code></li>
111
+ <li><strong>Removes breadcrumbs</strong> — user actions are never tracked</li>
112
+ <li><strong>Cleans request data</strong> — removes headers, cookies, query strings</li>
113
+ <li><strong>Anonymizes home directory</strong> — replaces paths with <code>[HOME]</code></li>
114
+ <li><strong>Drops oversized strings</strong> — over 2000 chars truncated</li>
115
+ <li><strong>Recursively scrubs nested objects</strong> — drops keys named prompt, response, content, message, input, output, text, body, data, payload, token, key, secret, password, auth, cookie</li>
116
+ </ol>
117
+
118
+ <h2>Checking Status</h2>
119
+ <pre><code># When disabled
120
+ Sentry Telemetry: Disabled (set SENTRY_DSN to enable)
121
+
122
+ # When enabled
123
+ Sentry Telemetry: Enabled</code></pre>
124
+
125
+ <div class="callout callout-info">
126
+ <strong>DSN Masking</strong>
127
+ The DSN is masked in the UI — only the first 8 and last 4 characters of the key are shown. The full DSN is never displayed in any output.
128
+ </div>
129
+
130
+ <h2>Files</h2>
131
+ <table>
132
+ <tr><th>File</th><th>Purpose</th></tr>
133
+ <tr><td><code>src/utils/sentry.ts</code></td><td>Core wrapper — init, capture, close, scrubber</td></tr>
134
+ <tr><td><code>src/utils/sentry.test.ts</code></td><td>Unit tests (11 tests)</td></tr>
135
+ <tr><td><code>src/entrypoints/init.ts</code></td><td>Calls <code>initSentry()</code> at startup</td></tr>
136
+ <tr><td><code>src/utils/gracefulShutdown.ts</code></td><td>Calls <code>closeSentry()</code> before exit</td></tr>
137
+ <tr><td><code>src/utils/log.ts</code></td><td><code>logError()</code> sends to Sentry when enabled</td></tr>
138
+ <tr><td><code>src/components/SentryErrorBoundary.tsx</code></td><td>React error boundary for render crashes</td></tr>
139
+ <tr><td><code>src/components/App.tsx</code></td><td>Wraps app tree in <code>SentryErrorBoundary</code></td></tr>
140
+ <tr><td><code>src/utils/doctorDiagnostic.ts</code></td><td><code>/doctor</code> Sentry status display</td></tr>
141
+ </table>
142
+
143
+ <footer class="footer">
144
+ <span>Clew Code v0.2.7</span>
145
+ <div class="footer-links">
146
+ <a href="https://github.com/ClewCode/ClewCode">GitHub</a>
147
+ <a href="https://github.com/ClewCode/ClewCode/issues">Issues</a>
148
+ </div>
149
+ </footer>
150
+ </main>
151
+ <nav class="toc-sidebar"></nav>
152
+ </div>
153
+ </div>
154
+ <script src="../js/main.js"></script>
155
+ </body>
156
+ </html>
157
+
@@ -1,96 +1,97 @@
1
- <!DOCTYPE html>
2
- <html lang="th">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Sentry การรายงานข้อผิดพลาด Clew</title>
7
- <meta name="description" content="Sentry crash/error telemetry แบบ opt-in สำหรับ Clew ปิดโดยค่าเริ่มต้น, ให้ความสำคัญกับความเป็นส่วนตัว">
8
- <link rel="preconnect" href="https://fonts.googleapis.com">
9
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
- <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&family=Noto+Sans+Thai:wght@400;500;600;700&display=swap" rel="stylesheet">
11
- <link rel="stylesheet" href="../css/styles.css">
12
- <link rel="icon" type="image/svg+xml" href="../assets/clew.svg">
13
- </head>
14
- <body>
15
- <header class="header">
16
- <div class="header-inner">
17
- <a href="../index.th.html" class="logo">
18
- <span>Clew Code</span>
19
- </a>
20
- <nav class="header-nav">
21
- <a href="../index.th.html">หน้าแรก</a><a href="../index.th.html#features">ฟีเจอร์</a><a href="../index.th.html#commands">คำสั่ง</a><a href="../quick-start.th.html" class="active">เอกสาร</a><a href="https://github.com/JonusNattapong/ClewCode" target="_blank">GitHub</a>
22
- <div class="lang-wrap">
23
- <button class="lang-btn">🌐</button>
24
- <div class="lang-menu">
25
- <a href="../../readme/README.zh.md">中文</a>
26
- <a href="../../readme/README.th.md">ไทย</a>
27
- <a href="../../readme/README.ja.md">日本語</a>
28
- <a href="../../readme/README.ko.md">한국어</a>
29
- <a href="../../readme/README.es.md">Español</a>
30
- <a href="../../readme/README.fr.md">Français</a>
31
- <a href="../../readme/README.de.md">Deutsch</a>
32
- <a href="../../readme/README.pt.md">Português</a>
33
- <a href="../../readme/README.vi.md">Tiếng Việt</a>
34
- <a href="../../readme/README.id.md">Bahasa Indonesia</a>
35
- <a href="../../readme/README.ru.md">Русский</a>
36
- <a href="../../readme/README.hi.md">हिन्दी</a>
37
- <a href="sentry-setup.html">English</a>
38
- </div>
39
- </div>
40
- </nav>
41
- <button class="menu-btn" id="menuToggle" aria-label="เปิด/ปิดเมนู"><span></span><span></span><span></span></button>
42
- </div>
43
- </header>
44
- <div class="app">
45
- <aside class="sidebar" id="sidebar"></aside>
46
- <div class="sidebar-overlay" id="sidebarOverlay"></div>
47
- <div class="content-wrap">
48
- <main class="content">
49
- <div class="breadcrumbs"><a href="../index.th.html">หน้าแรก</a><span class="sep">/</span><a href="../index.th.html#features">ฟีเจอร์</a><span class="sep">/</span><span>Sentry Setup</span></div>
50
- <h1>Sentry การรายงานข้อผิดพลาด</h1>
51
- <p class="section-subtitle">ระบบรายงาน crash และ error แบบ opt-in <strong>ปิดโดยสมบูรณ์เป็นค่าเริ่มต้น</strong> ไม่มีข้อมูลออกจากเครื่องของคุณเว้นแต่คุณจะตั้งค่า <code>SENTRY_DSN</code></p>
52
-
53
- <div class="callout callout-tip">
54
- <strong>สรุป</strong>
55
- <code>SENTRY_DSN=https://key@sentry.io/123 claude</code> เท่านั้น หากไม่มี, ไม่มีการร้องขอเครือข่าย, ไม่มี telemetry
56
- </div>
57
-
58
- <h2>เริ่มต้นใช้งาน</h2>
59
- <h3>Sentry แบบโฮสต์เอง</h3>
60
- <pre><code>SENTRY_DSN=https://public_key@your-sentry.example.com/123 claude</code></pre>
61
-
62
- <h3>Sentry Cloud</h3>
63
- <pre><code>SENTRY_DSN=https://public_key@o123456.ingest.sentry.io/789 claude</code></pre>
64
-
65
- <h2>สิ่งที่ถูกส่ง</h2>
66
- <p>เฉพาะข้อมูลเมตาของข้อผิดพลาด <strong>ไม่เคยส่ง prompts, คำตอบ, เนื้อหาไฟล์, หรือผลลัพธ์คำสั่ง</strong>:</p>
67
- <ul>
68
- <li>ชื่อ, ข้อความ, และ stack trace ของข้อผิดพลาด</li>
69
- <li>ข้อมูลรันไทม์: แพลตฟอร์ม OS, เวอร์ชัน Node/Bun</li>
70
- <li>โหมด: REPL, ไม่โต้ตอบ, เซิร์ฟเวอร์ MCP</li>
71
- <li>ชื่อผู้ให้บริการและโมเดล</li>
72
- </ul>
73
-
74
- <h2>เครื่องมือขจัดข้อมูลส่วนตัว</h2>
75
- <p>ทุกเหตุการณ์ผ่านฮุค <code>beforeSend</code> ที่:</p>
76
- <ol>
77
- <li><strong>ล้างสตริง</strong> ลบรูปแบบคีย์ API, ส่วนหัว auth, ค่า cookie</li>
78
- <li><strong>ลบตัวแปร stack frame</strong></li>
79
- <li><strong>ล้างข้อมูลคำขอ</strong> ลบส่วนหัว, cookies, query strings</li>
80
- <li><strong>ตัดสตริงที่ใหญ่เกิน</strong> เกิน 2000 ตัวอักษรถูกตัด</li>
81
- </ol>
82
-
83
- <footer class="footer">
84
- <span>Clew Code v0.2.4</span>
85
- <div class="footer-links">
86
- <a href="https://github.com/JonusNattapong/ClewCode">GitHub</a>
87
- <a href="https://github.com/JonusNattapong/ClewCode/issues">ปัญหา</a>
88
- </div>
89
- </footer>
90
- </main>
91
- <nav class="toc-sidebar"></nav>
92
- </div>
93
- </div>
94
- <script src="../js/main.js"></script>
95
- </body>
96
- </html>
1
+ <!DOCTYPE html>
2
+ <html lang="th">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Sentry การรายงานข้อผิดพลาด — Clew</title>
7
+ <meta name="description" content="Sentry crash/error telemetry แบบ opt-in สำหรับ Clew — ปิดโดยค่าเริ่มต้น, ให้ความสำคัญกับความเป็นส่วนตัว">
8
+ <link rel="preconnect" href="https://fonts.googleapis.com">
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
10
+ <link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&family=Noto+Sans+Thai:wght@400;500;600;700&display=swap" rel="stylesheet">
11
+ <link rel="stylesheet" href="../css/styles.css">
12
+ <link rel="icon" type="image/svg+xml" href="../assets/clew.svg">
13
+ </head>
14
+ <body>
15
+ <header class="header">
16
+ <div class="header-inner">
17
+ <a href="../index.th.html" class="logo">
18
+ <span>Clew Code</span>
19
+ </a>
20
+ <nav class="header-nav">
21
+ <a href="../index.th.html">หน้าแรก</a><a href="../index.th.html#features">ฟีเจอร์</a><a href="../index.th.html#commands">คำสั่ง</a><a href="../quick-start.th.html" class="active">เอกสาร</a><a href="https://github.com/ClewCode/ClewCode" target="_blank">GitHub</a>
22
+ <div class="lang-wrap">
23
+ <button class="lang-btn">🌐</button>
24
+ <div class="lang-menu">
25
+ <a href="../../readme/README.zh.md">中文</a>
26
+ <a href="../../readme/README.th.md">ไทย</a>
27
+ <a href="../../readme/README.ja.md">日本語</a>
28
+ <a href="../../readme/README.ko.md">한국어</a>
29
+ <a href="../../readme/README.es.md">Español</a>
30
+ <a href="../../readme/README.fr.md">Français</a>
31
+ <a href="../../readme/README.de.md">Deutsch</a>
32
+ <a href="../../readme/README.pt.md">Português</a>
33
+ <a href="../../readme/README.vi.md">Tiếng Việt</a>
34
+ <a href="../../readme/README.id.md">Bahasa Indonesia</a>
35
+ <a href="../../readme/README.ru.md">Русский</a>
36
+ <a href="../../readme/README.hi.md">हिन्दी</a>
37
+ <a href="sentry-setup.html">English</a>
38
+ </div>
39
+ </div>
40
+ </nav>
41
+ <button class="menu-btn" id="menuToggle" aria-label="เปิด/ปิดเมนู"><span></span><span></span><span></span></button>
42
+ </div>
43
+ </header>
44
+ <div class="app">
45
+ <aside class="sidebar" id="sidebar"></aside>
46
+ <div class="sidebar-overlay" id="sidebarOverlay"></div>
47
+ <div class="content-wrap">
48
+ <main class="content">
49
+ <div class="breadcrumbs"><a href="../index.th.html">หน้าแรก</a><span class="sep">/</span><a href="../index.th.html#features">ฟีเจอร์</a><span class="sep">/</span><span>Sentry Setup</span></div>
50
+ <h1>Sentry การรายงานข้อผิดพลาด</h1>
51
+ <p class="section-subtitle">ระบบรายงาน crash และ error แบบ opt-in — <strong>ปิดโดยสมบูรณ์เป็นค่าเริ่มต้น</strong> ไม่มีข้อมูลออกจากเครื่องของคุณเว้นแต่คุณจะตั้งค่า <code>SENTRY_DSN</code></p>
52
+
53
+ <div class="callout callout-tip">
54
+ <strong>สรุป</strong>
55
+ <code>SENTRY_DSN=https://key@sentry.io/123 claude</code> — เท่านั้น หากไม่มี, ไม่มีการร้องขอเครือข่าย, ไม่มี telemetry
56
+ </div>
57
+
58
+ <h2>เริ่มต้นใช้งาน</h2>
59
+ <h3>Sentry แบบโฮสต์เอง</h3>
60
+ <pre><code>SENTRY_DSN=https://public_key@your-sentry.example.com/123 claude</code></pre>
61
+
62
+ <h3>Sentry Cloud</h3>
63
+ <pre><code>SENTRY_DSN=https://public_key@o123456.ingest.sentry.io/789 claude</code></pre>
64
+
65
+ <h2>สิ่งที่ถูกส่ง</h2>
66
+ <p>เฉพาะข้อมูลเมตาของข้อผิดพลาด — <strong>ไม่เคยส่ง prompts, คำตอบ, เนื้อหาไฟล์, หรือผลลัพธ์คำสั่ง</strong>:</p>
67
+ <ul>
68
+ <li>ชื่อ, ข้อความ, และ stack trace ของข้อผิดพลาด</li>
69
+ <li>ข้อมูลรันไทม์: แพลตฟอร์ม OS, เวอร์ชัน Node/Bun</li>
70
+ <li>โหมด: REPL, ไม่โต้ตอบ, เซิร์ฟเวอร์ MCP</li>
71
+ <li>ชื่อผู้ให้บริการและโมเดล</li>
72
+ </ul>
73
+
74
+ <h2>เครื่องมือขจัดข้อมูลส่วนตัว</h2>
75
+ <p>ทุกเหตุการณ์ผ่านฮุค <code>beforeSend</code> ที่:</p>
76
+ <ol>
77
+ <li><strong>ล้างสตริง</strong> — ลบรูปแบบคีย์ API, ส่วนหัว auth, ค่า cookie</li>
78
+ <li><strong>ลบตัวแปร stack frame</strong></li>
79
+ <li><strong>ล้างข้อมูลคำขอ</strong> — ลบส่วนหัว, cookies, query strings</li>
80
+ <li><strong>ตัดสตริงที่ใหญ่เกิน</strong> — เกิน 2000 ตัวอักษรถูกตัด</li>
81
+ </ol>
82
+
83
+ <footer class="footer">
84
+ <span>Clew Code v0.2.7</span>
85
+ <div class="footer-links">
86
+ <a href="https://github.com/ClewCode/ClewCode">GitHub</a>
87
+ <a href="https://github.com/ClewCode/ClewCode/issues">ปัญหา</a>
88
+ </div>
89
+ </footer>
90
+ </main>
91
+ <nav class="toc-sidebar"></nav>
92
+ </div>
93
+ </div>
94
+ <script src="../js/main.js"></script>
95
+ </body>
96
+ </html>
97
+