clew-code 0.2.4 → 0.2.6
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.
- package/README.md +264 -292
- package/dist/clew-dev.js +5118 -2840
- package/dist/main.js +2315 -2090
- package/docs/_config.yml +1 -1
- package/docs/architecture.html +145 -166
- package/docs/architecture.th.html +2 -23
- package/docs/commands.html +1 -22
- package/docs/commands.th.html +1 -22
- package/docs/configuration.html +145 -166
- package/docs/configuration.th.html +2 -23
- package/docs/css/styles.css +22 -0
- package/docs/daemon.html +128 -160
- package/docs/daemon.th.html +2 -30
- package/docs/features/bridge-mode.html +98 -98
- package/docs/features/bridge-mode.th.html +1 -1
- package/docs/features/evals.html +181 -181
- package/docs/features/evals.th.html +1 -1
- package/docs/features/searxng-search.html +150 -150
- package/docs/features/searxng-search.th.html +1 -1
- package/docs/features/sentry-setup.html +156 -156
- package/docs/features/sentry-setup.th.html +1 -1
- package/docs/index.html +298 -333
- package/docs/index.th.html +1 -36
- package/docs/installation.html +103 -124
- package/docs/installation.th.html +2 -23
- package/docs/internals/growthbook-ab-testing.html +112 -112
- package/docs/internals/growthbook-ab-testing.th.html +1 -1
- package/docs/internals/hidden-features.html +147 -147
- package/docs/internals/hidden-features.th.html +1 -1
- package/docs/js/main.js +78 -7
- package/docs/loop.html +180 -0
- package/docs/loop.th.html +226 -0
- package/docs/mcp.html +246 -157
- package/docs/mcp.th.html +156 -60
- package/docs/models.html +1 -22
- package/docs/models.th.html +1 -22
- package/docs/peer.html +235 -0
- package/docs/peer.th.html +279 -0
- package/docs/permission-model.html +101 -122
- package/docs/permission-model.th.html +2 -23
- package/docs/plugins.html +101 -122
- package/docs/plugins.th.html +2 -23
- package/docs/providers.html +117 -138
- package/docs/providers.th.html +2 -23
- package/docs/quick-start.html +92 -120
- package/docs/quick-start.th.html +1 -29
- package/docs/research-memory.html +79 -111
- package/docs/research-memory.th.html +2 -30
- package/docs/skills.html +116 -137
- package/docs/skills.th.html +2 -23
- package/docs/taste.html +96 -29
- package/docs/taste.th.html +193 -54
- package/docs/tools.html +169 -190
- package/docs/tools.th.html +2 -23
- package/docs/troubleshooting.html +105 -126
- package/docs/troubleshooting.th.html +2 -23
- package/package.json +5 -3
|
@@ -1,150 +1,150 @@
|
|
|
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>SearXNG Search — Clew</title>
|
|
7
|
-
<meta name="description" content="Self-hosted privacy-respecting web search via Docker SearXNG.">
|
|
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>SearXNG Search</span></div>
|
|
54
|
-
<h1>SearXNG Search</h1>
|
|
55
|
-
<p class="section-subtitle">Self-hosted, privacy-respecting web search via Docker</p>
|
|
56
|
-
|
|
57
|
-
<div class="callout callout-tip">
|
|
58
|
-
<strong>TL;DR</strong>
|
|
59
|
-
Run <code>cd searxng && start.bat</code> to start the search engine, then use <code>/searxng on</code> from the CLI.
|
|
60
|
-
</div>
|
|
61
|
-
|
|
62
|
-
<h2>Overview</h2>
|
|
63
|
-
<p>SearXNG is a free, privacy-respecting metasearch engine. This project provides a Docker-based setup so you can run your own instance locally, avoiding reliance on public instances (which increasingly return 403/429 due to Cloudflare/anti-bot protection).</p>
|
|
64
|
-
|
|
65
|
-
<h2>Quick Start</h2>
|
|
66
|
-
<pre><code>cd searxng
|
|
67
|
-
start.bat</code></pre>
|
|
68
|
-
<p>Starts SearXNG on <a href="http://localhost:18889">http://localhost:18889</a>.</p>
|
|
69
|
-
|
|
70
|
-
<h3>Slash Command</h3>
|
|
71
|
-
<table>
|
|
72
|
-
<tr><th>Command</th><th>Action</th></tr>
|
|
73
|
-
<tr><td><code>/searxng on</code></td><td>Start the Docker container</td></tr>
|
|
74
|
-
<tr><td><code>/searxng off</code></td><td>Stop the Docker container</td></tr>
|
|
75
|
-
<tr><td><code>/searxng status</code></td><td>Check if running</td></tr>
|
|
76
|
-
<tr><td><code>/searxng restart</code></td><td>Restart the container</td></tr>
|
|
77
|
-
</table>
|
|
78
|
-
|
|
79
|
-
<h3>Manual Docker Commands</h3>
|
|
80
|
-
<pre><code>docker compose -f searxng/docker-compose.yml up -d
|
|
81
|
-
docker compose -f searxng/docker-compose.yml down
|
|
82
|
-
docker compose -f searxng/docker-compose.yml logs -f</code></pre>
|
|
83
|
-
|
|
84
|
-
<h2>Files</h2>
|
|
85
|
-
<table>
|
|
86
|
-
<tr><th>File</th><th>Purpose</th></tr>
|
|
87
|
-
<tr><td><code>searxng/docker-compose.yml</code></td><td>Container definition, port 188899 8080</td></tr>
|
|
88
|
-
<tr><td><code>searxng/.env</code></td><td>Host, port, and secret key</td></tr>
|
|
89
|
-
<tr><td><code>searxng/config/settings.yml</code></td><td>SearXNG configuration with JSON API enabled</td></tr>
|
|
90
|
-
<tr><td><code>searxng/limiter.toml</code></td><td>Rate limiter — relaxed for local network IPs</td></tr>
|
|
91
|
-
<tr><td><code>searxng/start.bat</code></td><td>Start wrapper</td></tr>
|
|
92
|
-
<tr><td><code>searxng/stop.bat</code></td><td>Stop wrapper</td></tr>
|
|
93
|
-
<tr><td><code>searxng/restart.bat</code></td><td>Restart wrapper</td></tr>
|
|
94
|
-
<tr><td><code>searxng/logs.bat</code></td><td>Log tail wrapper</td></tr>
|
|
95
|
-
</table>
|
|
96
|
-
|
|
97
|
-
<h2>How It Works</h2>
|
|
98
|
-
<ol>
|
|
99
|
-
<li>SearXNG runs in Docker on <code>localhost:18889</code></li>
|
|
100
|
-
<li>The project's <code>.env</code> sets <code>SEARXNG_INSTANCE_URL=http://localhost:18889</code></li>
|
|
101
|
-
<li><code>selectBestDirectProvider()</code> in <code>WebSearchTool.ts</code> auto-detects this and prioritises SearXNG</li>
|
|
102
|
-
<li>The <code>SearXNGProvider</code> sends GET requests with <code>format=json</code> and parses results</li>
|
|
103
|
-
</ol>
|
|
104
|
-
|
|
105
|
-
<h2>Engines Enabled</h2>
|
|
106
|
-
<ul>
|
|
107
|
-
<li><strong>DuckDuckGo</strong> — primary general search (no API key needed)</li>
|
|
108
|
-
<li><strong>Google</strong> — general search</li>
|
|
109
|
-
<li><strong>Wikipedia</strong> — infobox and article results</li>
|
|
110
|
-
<li><strong>StackOverflow</strong> — technical Q&A</li>
|
|
111
|
-
<li><strong>GitHub</strong> — repository search</li>
|
|
112
|
-
<li><strong>Wikidata</strong> — structured data infoboxes</li>
|
|
113
|
-
</ul>
|
|
114
|
-
|
|
115
|
-
<h2>Provider Selection Priority</h2>
|
|
116
|
-
<ol>
|
|
117
|
-
<li><strong>Tavily</strong> — requires <code>TAVILY_API_KEY</code></li>
|
|
118
|
-
<li><strong>Brave</strong> — requires <code>BRAVE_API_KEY</code></li>
|
|
119
|
-
<li><strong>Serper</strong> — requires <code>SERPER_API_KEY</code></li>
|
|
120
|
-
<li><strong>SearXNG</strong> — only if <code>SEARXNG_INSTANCE_URL</code> is explicitly set</li>
|
|
121
|
-
<li><strong>DuckDuckGo</strong> — always available, free, no API key</li>
|
|
122
|
-
</ol>
|
|
123
|
-
|
|
124
|
-
<h2>Troubleshooting</h2>
|
|
125
|
-
<h3>Container won't start</h3>
|
|
126
|
-
<pre><code>docker compose -f searxng/docker-compose.yml logs</code></pre>
|
|
127
|
-
<h3>No results returned</h3>
|
|
128
|
-
<p>Check that engines are not failing by visiting <a href="http://localhost:18889">http://localhost:18889</a> and performing a search in the web UI.</p>
|
|
129
|
-
<h3>Port conflict</h3>
|
|
130
|
-
<p>Change <code>SEARXNG_PORT</code> in <code>searxng/.env</code> and update <code>SEARXNG_INSTANCE_URL</code> in <code>.env</code> to match.</p>
|
|
131
|
-
|
|
132
|
-
<h2>Updating</h2>
|
|
133
|
-
<pre><code>cd searxng
|
|
134
|
-
docker compose pull
|
|
135
|
-
docker compose up -d</code></pre>
|
|
136
|
-
|
|
137
|
-
<footer class="footer">
|
|
138
|
-
<span>Clew v0.
|
|
139
|
-
<div class="footer-links">
|
|
140
|
-
<a href="https://github.com/JonusNattapong/ClewCode">GitHub</a>
|
|
141
|
-
<a href="https://github.com/JonusNattapong/ClewCode/issues">Issues</a>
|
|
142
|
-
</div>
|
|
143
|
-
</footer>
|
|
144
|
-
</main>
|
|
145
|
-
<nav class="toc-sidebar"></nav>
|
|
146
|
-
</div>
|
|
147
|
-
</div>
|
|
148
|
-
<script src="../js/main.js"></script>
|
|
149
|
-
</body>
|
|
150
|
-
</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>SearXNG Search — Clew</title>
|
|
7
|
+
<meta name="description" content="Self-hosted privacy-respecting web search via Docker SearXNG.">
|
|
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>SearXNG Search</span></div>
|
|
54
|
+
<h1>SearXNG Search</h1>
|
|
55
|
+
<p class="section-subtitle">Self-hosted, privacy-respecting web search via Docker</p>
|
|
56
|
+
|
|
57
|
+
<div class="callout callout-tip">
|
|
58
|
+
<strong>TL;DR</strong>
|
|
59
|
+
Run <code>cd searxng && start.bat</code> to start the search engine, then use <code>/searxng on</code> from the CLI.
|
|
60
|
+
</div>
|
|
61
|
+
|
|
62
|
+
<h2>Overview</h2>
|
|
63
|
+
<p>SearXNG is a free, privacy-respecting metasearch engine. This project provides a Docker-based setup so you can run your own instance locally, avoiding reliance on public instances (which increasingly return 403/429 due to Cloudflare/anti-bot protection).</p>
|
|
64
|
+
|
|
65
|
+
<h2>Quick Start</h2>
|
|
66
|
+
<pre><code>cd searxng
|
|
67
|
+
start.bat</code></pre>
|
|
68
|
+
<p>Starts SearXNG on <a href="http://localhost:18889">http://localhost:18889</a>.</p>
|
|
69
|
+
|
|
70
|
+
<h3>Slash Command</h3>
|
|
71
|
+
<table>
|
|
72
|
+
<tr><th>Command</th><th>Action</th></tr>
|
|
73
|
+
<tr><td><code>/searxng on</code></td><td>Start the Docker container</td></tr>
|
|
74
|
+
<tr><td><code>/searxng off</code></td><td>Stop the Docker container</td></tr>
|
|
75
|
+
<tr><td><code>/searxng status</code></td><td>Check if running</td></tr>
|
|
76
|
+
<tr><td><code>/searxng restart</code></td><td>Restart the container</td></tr>
|
|
77
|
+
</table>
|
|
78
|
+
|
|
79
|
+
<h3>Manual Docker Commands</h3>
|
|
80
|
+
<pre><code>docker compose -f searxng/docker-compose.yml up -d
|
|
81
|
+
docker compose -f searxng/docker-compose.yml down
|
|
82
|
+
docker compose -f searxng/docker-compose.yml logs -f</code></pre>
|
|
83
|
+
|
|
84
|
+
<h2>Files</h2>
|
|
85
|
+
<table>
|
|
86
|
+
<tr><th>File</th><th>Purpose</th></tr>
|
|
87
|
+
<tr><td><code>searxng/docker-compose.yml</code></td><td>Container definition, port 188899 8080</td></tr>
|
|
88
|
+
<tr><td><code>searxng/.env</code></td><td>Host, port, and secret key</td></tr>
|
|
89
|
+
<tr><td><code>searxng/config/settings.yml</code></td><td>SearXNG configuration with JSON API enabled</td></tr>
|
|
90
|
+
<tr><td><code>searxng/limiter.toml</code></td><td>Rate limiter — relaxed for local network IPs</td></tr>
|
|
91
|
+
<tr><td><code>searxng/start.bat</code></td><td>Start wrapper</td></tr>
|
|
92
|
+
<tr><td><code>searxng/stop.bat</code></td><td>Stop wrapper</td></tr>
|
|
93
|
+
<tr><td><code>searxng/restart.bat</code></td><td>Restart wrapper</td></tr>
|
|
94
|
+
<tr><td><code>searxng/logs.bat</code></td><td>Log tail wrapper</td></tr>
|
|
95
|
+
</table>
|
|
96
|
+
|
|
97
|
+
<h2>How It Works</h2>
|
|
98
|
+
<ol>
|
|
99
|
+
<li>SearXNG runs in Docker on <code>localhost:18889</code></li>
|
|
100
|
+
<li>The project's <code>.env</code> sets <code>SEARXNG_INSTANCE_URL=http://localhost:18889</code></li>
|
|
101
|
+
<li><code>selectBestDirectProvider()</code> in <code>WebSearchTool.ts</code> auto-detects this and prioritises SearXNG</li>
|
|
102
|
+
<li>The <code>SearXNGProvider</code> sends GET requests with <code>format=json</code> and parses results</li>
|
|
103
|
+
</ol>
|
|
104
|
+
|
|
105
|
+
<h2>Engines Enabled</h2>
|
|
106
|
+
<ul>
|
|
107
|
+
<li><strong>DuckDuckGo</strong> — primary general search (no API key needed)</li>
|
|
108
|
+
<li><strong>Google</strong> — general search</li>
|
|
109
|
+
<li><strong>Wikipedia</strong> — infobox and article results</li>
|
|
110
|
+
<li><strong>StackOverflow</strong> — technical Q&A</li>
|
|
111
|
+
<li><strong>GitHub</strong> — repository search</li>
|
|
112
|
+
<li><strong>Wikidata</strong> — structured data infoboxes</li>
|
|
113
|
+
</ul>
|
|
114
|
+
|
|
115
|
+
<h2>Provider Selection Priority</h2>
|
|
116
|
+
<ol>
|
|
117
|
+
<li><strong>Tavily</strong> — requires <code>TAVILY_API_KEY</code></li>
|
|
118
|
+
<li><strong>Brave</strong> — requires <code>BRAVE_API_KEY</code></li>
|
|
119
|
+
<li><strong>Serper</strong> — requires <code>SERPER_API_KEY</code></li>
|
|
120
|
+
<li><strong>SearXNG</strong> — only if <code>SEARXNG_INSTANCE_URL</code> is explicitly set</li>
|
|
121
|
+
<li><strong>DuckDuckGo</strong> — always available, free, no API key</li>
|
|
122
|
+
</ol>
|
|
123
|
+
|
|
124
|
+
<h2>Troubleshooting</h2>
|
|
125
|
+
<h3>Container won't start</h3>
|
|
126
|
+
<pre><code>docker compose -f searxng/docker-compose.yml logs</code></pre>
|
|
127
|
+
<h3>No results returned</h3>
|
|
128
|
+
<p>Check that engines are not failing by visiting <a href="http://localhost:18889">http://localhost:18889</a> and performing a search in the web UI.</p>
|
|
129
|
+
<h3>Port conflict</h3>
|
|
130
|
+
<p>Change <code>SEARXNG_PORT</code> in <code>searxng/.env</code> and update <code>SEARXNG_INSTANCE_URL</code> in <code>.env</code> to match.</p>
|
|
131
|
+
|
|
132
|
+
<h2>Updating</h2>
|
|
133
|
+
<pre><code>cd searxng
|
|
134
|
+
docker compose pull
|
|
135
|
+
docker compose up -d</code></pre>
|
|
136
|
+
|
|
137
|
+
<footer class="footer">
|
|
138
|
+
<span>Clew Code v0.2.4</span>
|
|
139
|
+
<div class="footer-links">
|
|
140
|
+
<a href="https://github.com/JonusNattapong/ClewCode">GitHub</a>
|
|
141
|
+
<a href="https://github.com/JonusNattapong/ClewCode/issues">Issues</a>
|
|
142
|
+
</div>
|
|
143
|
+
</footer>
|
|
144
|
+
</main>
|
|
145
|
+
<nav class="toc-sidebar"></nav>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
<script src="../js/main.js"></script>
|
|
149
|
+
</body>
|
|
150
|
+
</html>
|
|
@@ -79,7 +79,7 @@ start.bat</code></pre>
|
|
|
79
79
|
</ol>
|
|
80
80
|
|
|
81
81
|
<footer class="footer">
|
|
82
|
-
<span>Clew v0.
|
|
82
|
+
<span>Clew Code v0.2.4</span>
|
|
83
83
|
<div class="footer-links">
|
|
84
84
|
<a href="https://github.com/JonusNattapong/ClewCode">GitHub</a>
|
|
85
85
|
<a href="https://github.com/JonusNattapong/ClewCode/issues">ปัญหา</a>
|