kimi-mcp-hub 0.1.0 → 0.2.1
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 +508 -115
- package/install/install.ps1 +140 -15
- package/install/install.sh +158 -34
- package/install/npm-wrapper.js +4 -18
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,24 +1,34 @@
|
|
|
1
1
|
# Kimi MCP Hub
|
|
2
2
|
|
|
3
|
-
One-click MCP server and skills manager for **Kimi CLI** -- like `claude-mem` but for connecting
|
|
3
|
+
One-click MCP server and skills manager for **Kimi CLI** -- like `claude-mem` but for connecting 24 MCP servers (Jira, GitHub, Slack, Obsidian, Datadog, Perplexity, Stripe, GitLab, DBHub, etc.), 57 AI skills (7 core + 50 optional), persistent memory, and Claude Desktop import.
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
## Table of Contents
|
|
8
8
|
|
|
9
9
|
- [Install](#install)
|
|
10
|
-
- [One-liner (
|
|
11
|
-
- [
|
|
12
|
-
- [
|
|
10
|
+
- [One-liner with npx (recommended)](#one-liner-with-npx-recommended)
|
|
11
|
+
- [One-liner (curl / PowerShell)](#one-liner-curl-powershell)
|
|
12
|
+
- [From GitHub (pip) inside a venv](#from-github-pip-inside-a-venv)
|
|
13
|
+
- [Clone + Install (development)](#clone-install-development)
|
|
14
|
+
- [Requirements](#requirements)
|
|
13
15
|
- [Verify](#verify)
|
|
16
|
+
- [Run the wizard](#run-the-wizard)
|
|
14
17
|
- [Uninstall](#uninstall)
|
|
15
18
|
- [Quick Start](#quick-start)
|
|
19
|
+
- [Update](#update)
|
|
20
|
+
- [Managing MCP Servers and Skills](#managing-mcp-servers-and-skills)
|
|
21
|
+
- [Obsidian Local Memory](#obsidian-local-memory)
|
|
22
|
+
- [Install Claude/Codex Plugins](#install-claudecodex-plugins)
|
|
23
|
+
- [Project-Level MCP Configuration](#project-level-mcp-configuration)
|
|
24
|
+
- [Remote MCP Server Setup](docs/remote-mcp-server-setup.md)
|
|
16
25
|
- [OAuth Auto-Browser](#oauth-auto-browser)
|
|
26
|
+
- [CLAUDE.md Compatibility](#claudemd-compatibility)
|
|
17
27
|
- [All Commands](#all-commands)
|
|
18
|
-
- [
|
|
19
|
-
- [
|
|
28
|
+
- [Testing](#testing)
|
|
29
|
+
- [MCP Servers](#24-mcp-servers)
|
|
30
|
+
- [Skills](#57-skills)
|
|
20
31
|
- [Architecture](#architecture)
|
|
21
|
-
- [Ideas from Claude-Mem](#-ideas-from-claude-mem)
|
|
22
32
|
|
|
23
33
|
---
|
|
24
34
|
|
|
@@ -27,11 +37,10 @@ One-click MCP server and skills manager for **Kimi CLI** -- like `claude-mem` bu
|
|
|
27
37
|
### One-liner with npx (recommended)
|
|
28
38
|
|
|
29
39
|
```bash
|
|
30
|
-
# macOS / Linux / Windows
|
|
31
40
|
npx kimi-mcp-hub install
|
|
32
41
|
```
|
|
33
42
|
|
|
34
|
-
This creates an isolated Python virtual environment
|
|
43
|
+
This creates an isolated Python virtual environment at `~/.kimi-mcp-hub/.venv`, installs the package, and runs the interactive setup.
|
|
35
44
|
|
|
36
45
|
### One-liner (curl / PowerShell)
|
|
37
46
|
|
|
@@ -39,24 +48,29 @@ This creates an isolated Python virtual environment in `~/.kimi-mcp-hub/venv`, i
|
|
|
39
48
|
# macOS / Linux (curl + pip from GitHub)
|
|
40
49
|
curl -fsSL https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.sh | bash
|
|
41
50
|
|
|
51
|
+
# macOS / Linux with auto CLAUDE.md support
|
|
52
|
+
curl -fsSL https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.sh | bash -s -- -y
|
|
53
|
+
|
|
54
|
+
# macOS / Linux with Obsidian local memory
|
|
55
|
+
curl -fsSL https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.sh | bash -s -- --with-obsidian
|
|
56
|
+
|
|
42
57
|
# Windows (PowerShell)
|
|
43
58
|
iwr -useb https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.ps1 | iex
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### From GitHub (pip)
|
|
47
59
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
pip install --user git+https://github.com/KalimeroMK/kimi-mcp-hub.git
|
|
60
|
+
# Windows with auto CLAUDE.md support
|
|
61
|
+
iwr -useb https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.ps1 | & ([scriptblock]::create($_)) -Yes
|
|
51
62
|
|
|
52
|
-
#
|
|
53
|
-
|
|
63
|
+
# Windows with Obsidian local memory
|
|
64
|
+
iwr -useb https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.ps1 | & ([scriptblock]::create($_)) -Yes -WithObsidian
|
|
54
65
|
```
|
|
55
66
|
|
|
56
|
-
### From
|
|
67
|
+
### From GitHub (pip) inside a venv
|
|
57
68
|
|
|
58
69
|
```bash
|
|
59
|
-
|
|
70
|
+
# Direct from GitHub -- no clone needed
|
|
71
|
+
python3 -m venv ~/.kimi-mcp-hub/.venv
|
|
72
|
+
~/.kimi-mcp-hub/.venv/bin/pip install --upgrade git+https://github.com/KalimeroMK/kimi-mcp-hub.git
|
|
73
|
+
ln -s ~/.kimi-mcp-hub/.venv/bin/kimi-mcp-hub ~/.local/bin/kimi-mcp-hub
|
|
60
74
|
```
|
|
61
75
|
|
|
62
76
|
### Clone + Install (development)
|
|
@@ -64,6 +78,8 @@ pip install --user kimi-mcp-hub
|
|
|
64
78
|
```bash
|
|
65
79
|
git clone https://github.com/KalimeroMK/kimi-mcp-hub.git
|
|
66
80
|
cd kimi-mcp-hub
|
|
81
|
+
python3 -m venv .venv
|
|
82
|
+
source .venv/bin/activate
|
|
67
83
|
pip install -e .
|
|
68
84
|
```
|
|
69
85
|
|
|
@@ -84,17 +100,17 @@ kimi-mcp-hub --version
|
|
|
84
100
|
On first run you'll see:
|
|
85
101
|
|
|
86
102
|
```
|
|
87
|
-
Kimi MCP Hub v0.1.0
|
|
103
|
+
Kimi MCP Hub v0.1.0 installed successfully!
|
|
88
104
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
1 Persistent memory
|
|
105
|
+
24 MCP servers available
|
|
106
|
+
57 AI skills for better coding
|
|
107
|
+
1 Persistent memory system
|
|
92
108
|
|
|
93
|
-
|
|
94
|
-
kimi-mcp-hub init --
|
|
95
|
-
kimi-mcp-hub welcome --
|
|
96
|
-
kimi-mcp-hub status -- status
|
|
97
|
-
kimi-mcp-hub doctor --
|
|
109
|
+
To get started:
|
|
110
|
+
kimi-mcp-hub init -- interactive wizard
|
|
111
|
+
kimi-mcp-hub welcome -- detailed overview
|
|
112
|
+
kimi-mcp-hub status -- status check
|
|
113
|
+
kimi-mcp-hub doctor -- system health check
|
|
98
114
|
```
|
|
99
115
|
|
|
100
116
|
### Run the wizard
|
|
@@ -104,21 +120,23 @@ kimi-mcp-hub init
|
|
|
104
120
|
```
|
|
105
121
|
|
|
106
122
|
This walks you through:
|
|
107
|
-
1. **MCP Servers** -- pick
|
|
123
|
+
1. **MCP Servers** -- Chrome DevTools, Context7, and Playwright are auto-installed if `npx` is available; pick additional services manually
|
|
108
124
|
2. **Skills** -- install AI behavior patterns
|
|
109
125
|
3. **Memory** -- enable persistent cross-session memory
|
|
110
126
|
|
|
127
|
+
|
|
111
128
|
---
|
|
112
129
|
|
|
113
130
|
## Uninstall
|
|
114
131
|
|
|
115
132
|
```bash
|
|
116
133
|
# Full reset
|
|
117
|
-
|
|
118
|
-
rm -
|
|
119
|
-
rm -rf ~/.kimi/
|
|
120
|
-
rm -rf ~/.kimi/mcp-hub/
|
|
134
|
+
rm -f ~/.kimi-code/mcp.json
|
|
135
|
+
rm -rf ~/.kimi-code/skills/
|
|
136
|
+
rm -rf ~/.kimi-mcp-hub/
|
|
121
137
|
rm -rf ~/.config/kimi-mcp-hub/
|
|
138
|
+
rm -f ~/.local/bin/kimi-mcp-hub
|
|
139
|
+
rm -f ~/.local/bin/kmcp
|
|
122
140
|
|
|
123
141
|
# Or use the CLI
|
|
124
142
|
kimi-mcp-hub remove jira # remove one server
|
|
@@ -128,9 +146,8 @@ kimi-mcp-hub remove github # remove another
|
|
|
128
146
|
**Complete reinstall:**
|
|
129
147
|
|
|
130
148
|
```bash
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
pip install --user git+https://github.com/KalimeroMK/kimi-mcp-hub.git
|
|
149
|
+
rm -rf ~/.kimi-code/mcp.json ~/.kimi-code/skills/ ~/.kimi-mcp-hub/
|
|
150
|
+
bash -c "$(curl -fsSL https://raw.githubusercontent.com/KalimeroMK/kimi-mcp-hub/main/install/install.sh)"
|
|
134
151
|
kimi-mcp-hub init
|
|
135
152
|
```
|
|
136
153
|
|
|
@@ -148,9 +165,18 @@ kimi-mcp-hub doctor
|
|
|
148
165
|
# Full interactive setup
|
|
149
166
|
kimi-mcp-hub init
|
|
150
167
|
|
|
168
|
+
# Non-interactive setup (auto-installs core + frontend skills, memory, and claude-compat)
|
|
169
|
+
kimi-mcp-hub init --yes
|
|
170
|
+
|
|
171
|
+
# Auto-load CLAUDE.md and CLAUDE.local.md at every session start
|
|
172
|
+
kimi-mcp-hub claude-compat
|
|
173
|
+
kimi-mcp-hub claude-compat --yes
|
|
174
|
+
|
|
151
175
|
# Add servers individually
|
|
152
176
|
kimi-mcp-hub add jira
|
|
153
177
|
kimi-mcp-hub add github
|
|
178
|
+
kimi-mcp-hub add slack
|
|
179
|
+
kimi-mcp-hub add supabase
|
|
154
180
|
kimi-mcp-hub add perplexity
|
|
155
181
|
kimi-mcp-hub add gitlab
|
|
156
182
|
kimi-mcp-hub add stripe
|
|
@@ -159,20 +185,35 @@ kimi-mcp-hub add desktop-commander
|
|
|
159
185
|
kimi-mcp-hub add dbhub
|
|
160
186
|
kimi-mcp-hub add mobile
|
|
161
187
|
|
|
162
|
-
#
|
|
163
|
-
|
|
188
|
+
# Update to the latest version
|
|
189
|
+
kimi-mcp-hub update
|
|
190
|
+
|
|
191
|
+
# Add and authorize OAuth servers -- like Claude Code CLI
|
|
192
|
+
kimi-mcp-hub add github # choose oauth-device to configure and authorize
|
|
193
|
+
kimi-mcp-hub add figma
|
|
194
|
+
|
|
195
|
+
# GitLab and Stripe are official remote MCP servers; authorize via Kimi CLI:
|
|
196
|
+
# kimi mcp auth gitlab
|
|
197
|
+
# kimi mcp auth stripe
|
|
164
198
|
|
|
165
|
-
#
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
kimi-mcp-hub auth stripe
|
|
199
|
+
# For other official remote MCP servers, Kimi CLI handles the popup:
|
|
200
|
+
# /mcp-config login jira
|
|
201
|
+
# /mcp-config login linear
|
|
202
|
+
# /mcp-config login confluence
|
|
203
|
+
# /mcp-config login supabase
|
|
171
204
|
|
|
172
205
|
# See everything configured
|
|
173
206
|
kimi-mcp-hub list
|
|
174
207
|
kimi-mcp-hub status
|
|
175
208
|
kimi-mcp-hub welcome
|
|
209
|
+
kimi-mcp-hub notify
|
|
210
|
+
|
|
211
|
+
# Fix broken configs after package updates
|
|
212
|
+
kimi-mcp-hub repair
|
|
213
|
+
|
|
214
|
+
# Per-project MCP configuration
|
|
215
|
+
kimi-mcp-hub add --project linear # save to ./.kimi/mcp.json
|
|
216
|
+
kimi-mcp-hub sync # merge project config into global config
|
|
176
217
|
|
|
177
218
|
# Import from Claude Desktop
|
|
178
219
|
kimi-mcp-hub import-claude
|
|
@@ -183,6 +224,232 @@ kimi-mcp-hub install-skill docker-pro
|
|
|
183
224
|
|
|
184
225
|
# Test a server
|
|
185
226
|
kimi-mcp-hub test github
|
|
227
|
+
|
|
228
|
+
# Manage Obsidian vaults for local memory
|
|
229
|
+
kimi-mcp-hub obsidian status
|
|
230
|
+
kimi-mcp-hub obsidian add ~/Documents/MyVault
|
|
231
|
+
kimi-mcp-hub obsidian list
|
|
232
|
+
kimi-mcp-hub obsidian remove myvault
|
|
233
|
+
kimi-mcp-hub obsidian sync-templates myvault
|
|
234
|
+
kimi-mcp-hub obsidian sync-templates --templates-dir ./templates myvault
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## Update
|
|
240
|
+
|
|
241
|
+
Update `kimi-mcp-hub` to the latest version in the isolated venv:
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
kimi-mcp-hub update
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
This upgrades the package from GitHub and refreshes the `~/.local/bin` symlinks. Development installs (git checkouts) are detected and skipped.
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
## Managing MCP Servers and Skills
|
|
252
|
+
|
|
253
|
+
### Skills
|
|
254
|
+
|
|
255
|
+
Skills are toggled **inside Kimi CLI**:
|
|
256
|
+
|
|
257
|
+
```text
|
|
258
|
+
/skill:caveman
|
|
259
|
+
/skill:headroom
|
|
260
|
+
/skill:code-review
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
- Core skills (`karpathy`, `superpowers`, `caveman`, `headroom`, `context-mode`, `cybersecurity`, `kimi-mcp-hub-status`) activate automatically on every Kimi start.
|
|
264
|
+
- Install more skills from the terminal:
|
|
265
|
+
```bash
|
|
266
|
+
kimi-mcp-hub install-skill docker-pro
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### MCP Servers
|
|
270
|
+
|
|
271
|
+
MCP servers are enabled **outside Kimi CLI**, in your regular terminal:
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
# Stdio / API-key servers
|
|
275
|
+
kimi-mcp-hub add github # choose PAT or oauth-device
|
|
276
|
+
kimi-mcp-hub add slack
|
|
277
|
+
|
|
278
|
+
# Official remote OAuth servers can also be connected inside Kimi:
|
|
279
|
+
# /mcp-config login linear
|
|
280
|
+
# /mcp-config login jira
|
|
281
|
+
# /mcp-config login supabase
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
`linear` also supports an API-key stdio mode via `kimi-mcp-hub add linear` → choose `api-key`.
|
|
285
|
+
|
|
286
|
+
When you add an `npx`-based server for the first time, `kimi-mcp-hub` checks if the package is already installed and prompts to install it globally. This prevents the 30-second timeout that can happen when Kimi CLI tries to launch a not-yet-cached npx package.
|
|
287
|
+
|
|
288
|
+
After adding a server, **restart Kimi CLI** (`exit` → `kimi`) so it picks up the new config.
|
|
289
|
+
|
|
290
|
+
For a detailed walkthrough of official remote OAuth servers (Linear, Jira, Confluence, Supabase, Figma, Stripe, GitLab), see [Remote MCP Server Setup](docs/remote-mcp-server-setup.md).
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
## Obsidian Local Memory
|
|
295
|
+
|
|
296
|
+
Obsidian vaults can be used as local memory and knowledge bases. The `obsidian` command group manages vault paths without needing the full `init` wizard.
|
|
297
|
+
|
|
298
|
+
```bash
|
|
299
|
+
# Show configured vaults and their status
|
|
300
|
+
kimi-mcp-hub obsidian status
|
|
301
|
+
|
|
302
|
+
# Add a vault path (scaffolds the vault if needed)
|
|
303
|
+
kimi-mcp-hub obsidian add ~/Documents/MyVault
|
|
304
|
+
|
|
305
|
+
# List configured vaults
|
|
306
|
+
kimi-mcp-hub obsidian list
|
|
307
|
+
|
|
308
|
+
# Remove a vault from the config by slug (files are kept)
|
|
309
|
+
kimi-mcp-hub obsidian remove myvault
|
|
310
|
+
|
|
311
|
+
# Copy built-in templates into a vault
|
|
312
|
+
kimi-mcp-hub obsidian sync-templates myvault
|
|
313
|
+
|
|
314
|
+
# Copy custom templates into a vault
|
|
315
|
+
kimi-mcp-hub obsidian sync-templates --templates-dir ./templates myvault
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
The first vault added is set as the default memory vault. After adding a vault, restart Kimi CLI so the Obsidian MCP server picks it up.
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
## Install Claude/Codex Plugins
|
|
323
|
+
|
|
324
|
+
Kimi CLI now supports lifecycle hooks (`PreToolUse`, `PostToolUse`, `Stop`, etc.) via `~/.kimi-code/config.toml`. Because Kimi uses the same JSON wire protocol as Claude Code and Codex, plugins written for those agents can be adapted automatically.
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
# Install Ponytail (reduces over-engineering)
|
|
328
|
+
kimi-mcp-hub install-plugin DietrichGebert/ponytail
|
|
329
|
+
|
|
330
|
+
# From a full URL
|
|
331
|
+
kimi-mcp-hub install-plugin https://github.com/DietrichGebert/ponytail
|
|
332
|
+
|
|
333
|
+
# From a local checkout
|
|
334
|
+
kimi-mcp-hub install-plugin ./ponytail
|
|
335
|
+
|
|
336
|
+
# Non-interactive reinstall/update
|
|
337
|
+
kimi-mcp-hub install-plugin DietrichGebert/ponytail --yes
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
`install-plugin` does the following:
|
|
341
|
+
|
|
342
|
+
1. Clones the repo to `~/.config/kimi-mcp-hub/plugins/<name>/` (or copies a local directory)
|
|
343
|
+
2. Discovers the plugin manifest among supported formats:
|
|
344
|
+
- `hooks.json` / `hooks/hooks.json` / `hooks/claude-codex-hooks.json`
|
|
345
|
+
- `.claude/settings.json`
|
|
346
|
+
- `.codex/hooks.json`
|
|
347
|
+
- `.claude-plugin/plugin.json` (Claude marketplace format)
|
|
348
|
+
- `gemini-extension.json`
|
|
349
|
+
3. Converts discovered hooks to Kimi `[[hooks]]` entries in `~/.kimi-code/config.toml`
|
|
350
|
+
4. Expands `${PLUGIN_ROOT}`, `${CLAUDE_PLUGIN_ROOT}`, and `${CLAUDE_CODE_PLUGIN_ROOT}` to the install directory
|
|
351
|
+
5. Relativizes hardcoded absolute paths that still point inside the plugin directory so commands stay portable
|
|
352
|
+
6. Merges the plugin's `AGENTS.md` into `~/.kimi-code/AGENTS.md` (idempotent by marker)
|
|
353
|
+
7. Copies plugin skills into `~/.kimi-code/skills/`
|
|
354
|
+
|
|
355
|
+
**What this unlocks**
|
|
356
|
+
|
|
357
|
+
1. **Ponytail** works immediately — reduces over-engineering in every project.
|
|
358
|
+
2. **Security hooks** — block edits to `.env` files or dangerous `rm` commands.
|
|
359
|
+
3. **Auto-format / auto-lint** hooks after every `WriteFile`.
|
|
360
|
+
4. **Stop hooks** — verify tests passed before the session ends.
|
|
361
|
+
5. `kimi-mcp-hub` becomes a hub for agent extensions, not just an MCP manager.
|
|
362
|
+
|
|
363
|
+
**Tool-name mapping**
|
|
364
|
+
|
|
365
|
+
| Claude/Codex | Kimi matcher |
|
|
366
|
+
|--------------|--------------|
|
|
367
|
+
| `Write` | `WriteFile\|StrReplaceFile` |
|
|
368
|
+
| `Edit` | `Edit\|StrReplaceFile` |
|
|
369
|
+
| `Read` | `ReadFile` |
|
|
370
|
+
| `Bash` | `Shell\|Bash` |
|
|
371
|
+
|
|
372
|
+
After installing a plugin, **restart Kimi CLI** for the hooks to take effect.
|
|
373
|
+
|
|
374
|
+
### Managing installed plugins
|
|
375
|
+
|
|
376
|
+
Plugins installed from GitHub can be updated and removed through the CLI:
|
|
377
|
+
|
|
378
|
+
```bash
|
|
379
|
+
# Pull latest changes for a git plugin, or re-copy a local plugin
|
|
380
|
+
kimi-mcp-hub update-plugin ponytail
|
|
381
|
+
|
|
382
|
+
# Remove a plugin completely
|
|
383
|
+
kimi-mcp-hub uninstall-plugin ponytail
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
`update-plugin` re-runs the install merge, so new hooks, skills, and `AGENTS.md` sections are applied automatically. `uninstall-plugin` removes the plugin directory, deletes its hooks from `~/.kimi-code/config.toml`, removes any skills it installed, and removes its section from `~/.kimi-code/AGENTS.md`.
|
|
387
|
+
|
|
388
|
+
---
|
|
389
|
+
|
|
390
|
+
## Project-Level MCP Configuration
|
|
391
|
+
|
|
392
|
+
If you work on multiple projects that need different MCP accounts, you can store MCP servers inside each project. The example below adds Linear's official remote OAuth server:
|
|
393
|
+
|
|
394
|
+
```bash
|
|
395
|
+
cd my-project
|
|
396
|
+
kimi-mcp-hub add --project linear # choose the default "official-oauth" mode
|
|
397
|
+
kimi-mcp-hub sync
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
This creates:
|
|
401
|
+
|
|
402
|
+
```text
|
|
403
|
+
my-project/
|
|
404
|
+
└── .kimi/
|
|
405
|
+
├── mcp.json # server config
|
|
406
|
+
└── mcp.env # only needed for API-key / stdio servers (add this to .gitignore)
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
`.kimi/mcp.json` example (Linear official remote OAuth — no `env`):
|
|
410
|
+
|
|
411
|
+
```json
|
|
412
|
+
{
|
|
413
|
+
"mcpServers": {
|
|
414
|
+
"linear": {
|
|
415
|
+
"transport": "http",
|
|
416
|
+
"url": "https://mcp.linear.app/mcp",
|
|
417
|
+
"auth": "oauth"
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
`.kimi/mcp.env` is only required for servers that store secrets in environment variables (for example, API-key stdio servers such as Perplexity or a GitHub PAT). OAuth servers like Linear keep tokens inside Kimi CLI's own secure storage and do not need a project `.env` file.
|
|
424
|
+
|
|
425
|
+
### Switching between projects
|
|
426
|
+
|
|
427
|
+
When you switch projects, run `sync` to rewrite the global `~/.kimi-code/mcp.json` with that project's servers:
|
|
428
|
+
|
|
429
|
+
```bash
|
|
430
|
+
cd project-a && kimi-mcp-hub sync # global config now uses project-a's Linear
|
|
431
|
+
cd project-b && kimi-mcp-hub sync # global config now uses project-b's Linear
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
Project servers override global servers with the same name. Global servers that are not overridden remain available.
|
|
435
|
+
|
|
436
|
+
### Commands with --project
|
|
437
|
+
|
|
438
|
+
```bash
|
|
439
|
+
kimi-mcp-hub init --project # save wizard servers to current project
|
|
440
|
+
kimi-mcp-hub add --project perplexity # add API-key server to current project
|
|
441
|
+
kimi-mcp-hub add --project linear # add official remote OAuth server to current project
|
|
442
|
+
kimi-mcp-hub auth --project figma # authorize and save an OAuth server to current project
|
|
443
|
+
kimi-mcp-hub remove --project perplexity # remove server from current project
|
|
444
|
+
kimi-mcp-hub sync # merge current project into global config
|
|
445
|
+
kimi-mcp-hub sync /path/to/project # merge a specific project
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
If you have **Desktop Commander** installed, you can also ask Kimi to run the command for you:
|
|
450
|
+
|
|
451
|
+
```text
|
|
452
|
+
run kimi-mcp-hub add linear in the terminal
|
|
186
453
|
```
|
|
187
454
|
|
|
188
455
|
---
|
|
@@ -213,19 +480,43 @@ GitHub authorized successfully!
|
|
|
213
480
|
```
|
|
214
481
|
|
|
215
482
|
| Server | Method | Auto-browser |
|
|
216
|
-
|
|
483
|
+
|--------|------|:-----:|
|
|
217
484
|
| **GitHub** | Device Flow (or PAT fallback) | Yes |
|
|
218
|
-
| **Jira** |
|
|
219
|
-
| **Confluence** |
|
|
220
|
-
| **Slack** | Bot
|
|
485
|
+
| **Jira** | Official MCP OAuth or API token | Yes* |
|
|
486
|
+
| **Confluence** | Official MCP OAuth or API token | Yes* |
|
|
487
|
+
| **Slack** | Bot/User token (`slack-mcp-server`) | Yes |
|
|
221
488
|
| **Figma** | Official OAuth 2.1, PAT or custom OAuth 2.0 | Yes* |
|
|
222
489
|
| **Gmail** | Google OAuth 2.0 or npx | Yes |
|
|
223
490
|
| **Linear** | Official OAuth 2.1 or API key | Yes* |
|
|
224
491
|
| **Stripe** | Official OAuth 2.1 or restricted API key | Yes* |
|
|
225
492
|
| **GitLab** | Official OAuth 2.1 or PAT | Yes* |
|
|
493
|
+
| **Supabase** | Official remote OAuth or access-token stdio | Yes* |
|
|
226
494
|
| **Datadog** | API + App keys | No (manual) |
|
|
227
495
|
|
|
228
|
-
\*
|
|
496
|
+
\* Official remote OAuth 2.1 is initiated by Kimi CLI (`kimi mcp auth <server>` or `/mcp-config login <server>`) after you add the official remote MCP server. For Slack, run `kimi-mcp-hub auth slack` to start the browser-based OAuth flow.
|
|
497
|
+
|
|
498
|
+
---
|
|
499
|
+
|
|
500
|
+
## CLAUDE.md Compatibility
|
|
501
|
+
|
|
502
|
+
If you are migrating from Claude Code or want Kimi to automatically read project instructions, apply the `claude-compat` patch:
|
|
503
|
+
|
|
504
|
+
```bash
|
|
505
|
+
# Interactive
|
|
506
|
+
kimi-mcp-hub claude-compat
|
|
507
|
+
|
|
508
|
+
# Non-interactive (useful in install scripts)
|
|
509
|
+
kimi-mcp-hub claude-compat --yes
|
|
510
|
+
```
|
|
511
|
+
|
|
512
|
+
This appends a block to `~/.kimi-code/AGENTS.md` that tells Kimi to check for two files at the start of every session:
|
|
513
|
+
|
|
514
|
+
| Priority | File | Purpose |
|
|
515
|
+
|----------|------|---------|
|
|
516
|
+
| 1 | `CLAUDE.local.md` | Local overrides — machine-specific, gitignored |
|
|
517
|
+
| 2 | `CLAUDE.md` | Project-wide instructions — committed to the repo |
|
|
518
|
+
|
|
519
|
+
`CLAUDE.local.md` takes precedence over `CLAUDE.md` when they conflict.
|
|
229
520
|
|
|
230
521
|
---
|
|
231
522
|
|
|
@@ -235,23 +526,43 @@ GitHub authorized successfully!
|
|
|
235
526
|
|---------|-------------|
|
|
236
527
|
| `kimi-mcp-hub` | Show welcome banner and status |
|
|
237
528
|
| `kimi-mcp-hub --version` | Show version |
|
|
238
|
-
| `kimi-mcp-hub install` | Install
|
|
529
|
+
| `kimi-mcp-hub install` | Install or update Kimi MCP Hub |
|
|
530
|
+
| `kimi-mcp-hub update` | Update to the latest version |
|
|
239
531
|
| `kimi-mcp-hub init` | Full interactive wizard |
|
|
532
|
+
| `kimi-mcp-hub init --yes` | Non-interactive setup with defaults |
|
|
533
|
+
| `kimi-mcp-hub claude-compat` | Patch AGENTS.md for CLAUDE.md auto-load |
|
|
534
|
+
| `kimi-mcp-hub claude-compat --yes` | Apply patch without confirmation |
|
|
240
535
|
| `kimi-mcp-hub status` | Version, servers, skills, memory |
|
|
241
536
|
| `kimi-mcp-hub welcome` | Detailed welcome banner |
|
|
537
|
+
| `kimi-mcp-hub notify` | Short startup notification for shell wrappers |
|
|
242
538
|
| `kimi-mcp-hub add <server>` | Add an MCP server |
|
|
539
|
+
| `kimi-mcp-hub add obsidian` | Add Obsidian vault as local memory |
|
|
540
|
+
| `kimi-mcp-hub add --project <server>` | Add an MCP server to the current project |
|
|
243
541
|
| `kimi-mcp-hub remove <server>` | Remove an MCP server |
|
|
542
|
+
| `kimi-mcp-hub remove --project <server>` | Remove an MCP server from the current project |
|
|
244
543
|
| `kimi-mcp-hub auth <server>` | OAuth with auto-browser |
|
|
544
|
+
| `kimi-mcp-hub auth --project <server>` | OAuth and save to the current project |
|
|
545
|
+
| `kimi-mcp-hub sync` | Merge project `.kimi/mcp.json` into global config |
|
|
546
|
+
| `kimi-mcp-hub repair` | Fix broken/outdated server configs |
|
|
245
547
|
| `kimi-mcp-hub import-claude` | Import from Claude Desktop |
|
|
548
|
+
| `kimi-mcp-hub install-plugin <repo>` | Install Claude/Codex plugin into Kimi |
|
|
549
|
+
| `kimi-mcp-hub install-plugin <repo> --yes` | Install plugin without confirmation |
|
|
550
|
+
| `kimi-mcp-hub update-plugin <name>` | Update an installed plugin |
|
|
551
|
+
| `kimi-mcp-hub uninstall-plugin <name>` | Remove an installed plugin and its artifacts |
|
|
246
552
|
| `kimi-mcp-hub list` | All servers + skills + memory |
|
|
247
|
-
| `kimi-mcp-hub list-skills` | All
|
|
553
|
+
| `kimi-mcp-hub list-skills` | All 57 available skills |
|
|
248
554
|
| `kimi-mcp-hub install-skill <name>` | Install a skill |
|
|
249
|
-
| `kimi-mcp-hub test <server>` |
|
|
555
|
+
| `kimi-mcp-hub test <server>` | Check if server binary/HTTP endpoint is configured |
|
|
250
556
|
| `kimi-mcp-hub doctor` | System health check |
|
|
557
|
+
| `kimi-mcp-hub obsidian status` | Show configured Obsidian vaults |
|
|
558
|
+
| `kimi-mcp-hub obsidian add <path>` | Add an Obsidian vault path |
|
|
559
|
+
| `kimi-mcp-hub obsidian list` | List configured Obsidian vaults |
|
|
560
|
+
| `kimi-mcp-hub obsidian remove <slug>` | Remove an Obsidian vault from config |
|
|
561
|
+
| `kimi-mcp-hub obsidian sync-templates [--templates-dir PATH] <vault-slug>` | Copy templates into a vault |
|
|
251
562
|
|
|
252
563
|
---
|
|
253
564
|
|
|
254
|
-
##
|
|
565
|
+
## 24 MCP Servers
|
|
255
566
|
|
|
256
567
|
| Server | Auth | Tools | Best for |
|
|
257
568
|
|--------|------|:-----:|----------|
|
|
@@ -259,8 +570,9 @@ GitHub authorized successfully!
|
|
|
259
570
|
| **Linear** | Official OAuth 2.1 or API key | 6 | Issues, projects, teams |
|
|
260
571
|
| **Confluence** | OAuth or API token | 5 | Docs, wiki, pages |
|
|
261
572
|
| **GitHub** | Device Flow / PAT | 6 | Repos, PRs, issues, code |
|
|
262
|
-
| **Slack** |
|
|
263
|
-
| **
|
|
573
|
+
| **Slack** | Bot/User token (`slack-mcp-server`) | 5 | Channels, DMs, search |
|
|
574
|
+
| **Obsidian** | STDIO (npx) — vault path | 4 | Local memory, notes, knowledge base |
|
|
575
|
+
| **Datadog** | Official remote MCP (API + App keys) | 12 | Metrics, logs, monitors, APM |
|
|
264
576
|
| **Figma** | Official OAuth 2.1, PAT or custom OAuth | 9 | Designs, tokens, components |
|
|
265
577
|
| **Figma Context** | Figma API access token | 3 | Design-to-code implementation |
|
|
266
578
|
| **GitLab** | Official OAuth 2.1 or PAT | 8 | Repos, MRs, issues, CI/CD pipelines |
|
|
@@ -276,69 +588,141 @@ GitHub authorized successfully!
|
|
|
276
588
|
| **Playwright** | STDIO (Node.js) | 8 | Browser automation, E2E testing, screenshots |
|
|
277
589
|
| **Sentry** | Auth token + org | 6 | Error tracking, issue triage, stack traces |
|
|
278
590
|
| **Context7** | STDIO (npx) | 4 | Live library docs, version-aware API lookup |
|
|
279
|
-
| **Supabase** |
|
|
280
|
-
| **Perplexity** | **API key (
|
|
591
|
+
| **Supabase** | Official remote OAuth or access-token stdio | 6 | Database, auth, storage, realtime, edge functions |
|
|
592
|
+
| **Perplexity** | **API key (paid, $5 trial credit)** | **3** | **Real-time web search with AI summaries + citations** |
|
|
281
593
|
|
|
282
594
|
---
|
|
283
595
|
|
|
284
|
-
##
|
|
596
|
+
## 57 Skills
|
|
285
597
|
|
|
286
598
|
### Core Skills (installed by default)
|
|
287
599
|
|
|
288
|
-
| Skill | Description |
|
|
289
|
-
|
|
290
|
-
| **karpathy** | Clean, simple, readable code
|
|
291
|
-
| **superpowers** | 14 agentic
|
|
292
|
-
| **headroom** | Compress tool outputs
|
|
293
|
-
| **context-mode** | Context window optimization
|
|
294
|
-
| **cybersecurity** |
|
|
295
|
-
| **
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
| **
|
|
303
|
-
| **
|
|
304
|
-
| **
|
|
305
|
-
| **
|
|
306
|
-
| **
|
|
307
|
-
| **
|
|
308
|
-
| **
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
|
313
|
-
|
|
314
|
-
| **code-
|
|
315
|
-
| **
|
|
316
|
-
| **
|
|
317
|
-
| **
|
|
318
|
-
| **
|
|
319
|
-
| **
|
|
320
|
-
| **
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
|
600
|
+
| Skill | Description |
|
|
601
|
+
|-------|-------------|
|
|
602
|
+
| **karpathy** | Clean, simple, readable code discipline |
|
|
603
|
+
| **superpowers** | 14 agentic workflows (plan, debug, test, deploy...) |
|
|
604
|
+
| **headroom** | Compress large tool outputs to save tokens |
|
|
605
|
+
| **context-mode** | Context window optimization and token budget |
|
|
606
|
+
| **cybersecurity** | Cybersecurity expert (OWASP, cloud, IR, pentest) |
|
|
607
|
+
| **caveman** | Ultra-compressed caveman communication mode |
|
|
608
|
+
| **kimi-mcp-hub-status** | Show MCP Hub version and status |
|
|
609
|
+
|
|
610
|
+
### Frontend Skills (installed as a stack by default)
|
|
611
|
+
|
|
612
|
+
| Skill | Description |
|
|
613
|
+
|-------|-------------|
|
|
614
|
+
| **react-coder** | React 19 specialist (RSC, hooks) |
|
|
615
|
+
| **ts-coder** | TypeScript specialist (strict, generics) |
|
|
616
|
+
| **ui-engineer** | UI component implementation (Tailwind, a11y) |
|
|
617
|
+
| **ui-ux-pro-max** | UI/UX design intelligence and design systems |
|
|
618
|
+
| **vercel-react-best-practices** | React/Next.js performance optimization |
|
|
619
|
+
| **web-design-guidelines** | Audit UI code against Vercel guidelines |
|
|
620
|
+
| **agent-browser** | Browser automation for web tasks and testing |
|
|
621
|
+
|
|
622
|
+
### Code Quality & Review Skills
|
|
623
|
+
|
|
624
|
+
| Skill | Description |
|
|
625
|
+
|-------|-------------|
|
|
626
|
+
| **code-reviewer** | Quick single-agent code review |
|
|
627
|
+
| **code-review** | Multi-agent code review (explore/coder/plan) |
|
|
628
|
+
| **surgical-refactoring** | Surgical code refactoring without behavior change |
|
|
629
|
+
| **tdd** | Test-driven development with red-green-refactor |
|
|
630
|
+
| **perf-optimization** | Performance profiling and optimization |
|
|
631
|
+
| **security-audit** | Security review checklist |
|
|
632
|
+
| **security-guidance** | 3-layer security scanning guidance |
|
|
633
|
+
|
|
634
|
+
### Architecture & Design Skills
|
|
635
|
+
|
|
636
|
+
| Skill | Description |
|
|
637
|
+
|-------|-------------|
|
|
638
|
+
| **api-designer** | REST/GraphQL API design |
|
|
639
|
+
| **backend-architect** | Backend architecture and system design |
|
|
640
|
+
| **backend-typescript-architect** | TypeScript/Bun backend architecture |
|
|
641
|
+
| **codebase-design** | Design deep modules and testable interfaces |
|
|
642
|
+
| **domain-modeling** | Build domain models and ubiquitous language |
|
|
643
|
+
| **database-expert** | Database design and optimization |
|
|
644
|
+
| **design-system** | Design tokens, component specs, and systematic design systems |
|
|
645
|
+
| **api-design** | REST API design patterns |
|
|
646
|
+
|
|
647
|
+
### DevOps & Deployment Skills
|
|
648
|
+
|
|
649
|
+
| Skill | Description |
|
|
650
|
+
|-------|-------------|
|
|
651
|
+
| **docker-pro** | Docker and Kubernetes best practices |
|
|
652
|
+
| **gitnexus** | Code knowledge graph and blast radius |
|
|
653
|
+
| **resolving-merge-conflicts** | Resolve git merge/rebase conflicts |
|
|
654
|
+
| **deployment-patterns** | CI/CD and deployment best practices |
|
|
655
|
+
|
|
656
|
+
### Language / Framework Skills
|
|
657
|
+
|
|
658
|
+
| Skill | Description |
|
|
659
|
+
|-------|-------------|
|
|
660
|
+
| **python-engineer** | Python specialist (FastAPI, Django, async) |
|
|
661
|
+
| **laravel-engineer** | Laravel specialist (Eloquent, Blade, Livewire) |
|
|
662
|
+
| **php-pro** | Senior PHP development (strict typing, Laravel/Symfony, PSR) |
|
|
663
|
+
| **wp-plugin-development** | WordPress plugin development with hooks and Settings API |
|
|
664
|
+
| **react-coder** | React 19 specialist (RSC, hooks) |
|
|
665
|
+
| **ts-coder** | TypeScript specialist (strict, generics) |
|
|
666
|
+
| **ui-engineer** | UI component implementation (Tailwind, a11y) |
|
|
667
|
+
| **ui-ux-pro-max** | UI/UX design intelligence and design systems |
|
|
668
|
+
|
|
669
|
+
### Data & Migrations Skills
|
|
670
|
+
|
|
671
|
+
| Skill | Description |
|
|
672
|
+
|-------|-------------|
|
|
673
|
+
| **database-migrations** | Safe database migration patterns |
|
|
674
|
+
|
|
675
|
+
### Testing & Browser Skills
|
|
676
|
+
|
|
677
|
+
| Skill | Description |
|
|
678
|
+
|-------|-------------|
|
|
679
|
+
| **playwright-best-practices** | Playwright testing best practices |
|
|
680
|
+
| **chrome-devtools-skill** | Chrome DevTools MCP debugging and automation |
|
|
681
|
+
|
|
682
|
+
### Research & Automation Skills
|
|
683
|
+
|
|
684
|
+
| Skill | Description |
|
|
685
|
+
|-------|-------------|
|
|
686
|
+
| **search-first** | Research-before-coding workflow |
|
|
687
|
+
| **regex-vs-llm-structured-text** | Regex vs LLM parsing decision framework |
|
|
688
|
+
|
|
689
|
+
### Productivity & Meta Skills
|
|
690
|
+
|
|
691
|
+
| Skill | Description |
|
|
692
|
+
|-------|-------------|
|
|
693
|
+
| **claude-compat** | Auto-load CLAUDE.md and CLAUDE.local.md at session start |
|
|
694
|
+
| **caveman-review** | Ultra-compressed code review comments |
|
|
695
|
+
| **caveman-commit** | Ultra-compressed Conventional Commits messages |
|
|
696
|
+
| **memory-palace** | Advanced memory and context retrieval |
|
|
697
|
+
| **hindsight** | Memory that learns from past decisions |
|
|
698
|
+
| **task-master** | Task management system |
|
|
699
|
+
| **ralph** | Autonomous loop with stop-hooks |
|
|
700
|
+
| **grill-me** | Stress-test a plan or design |
|
|
701
|
+
| **visual-explainer** | HTML diagrams and slides |
|
|
702
|
+
| **research-mode** | Research-driven development |
|
|
703
|
+
| **ecc** | Engineering competence (perf, security, research) |
|
|
704
|
+
| **skill-creator** | Create and optimize agent skills |
|
|
705
|
+
| **agent-automation-recommender** | Recommend agent automations for codebases |
|
|
706
|
+
| **find-skills** | Discover and install agent skills |
|
|
707
|
+
|
|
708
|
+
### Integration Skills
|
|
709
|
+
|
|
710
|
+
| Skill | Description |
|
|
711
|
+
|-------|-------------|
|
|
712
|
+
| **stripe-best-practices** | Stripe integration best practices |
|
|
325
713
|
|
|
326
714
|
---
|
|
327
715
|
|
|
328
|
-
##
|
|
716
|
+
## Testing
|
|
329
717
|
|
|
330
|
-
|
|
718
|
+
The test suite lives in `tests/`:
|
|
719
|
+
|
|
720
|
+
```bash
|
|
721
|
+
pytest -q
|
|
722
|
+
```
|
|
331
723
|
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
| **One-line install** | `npx claude-mem install` | `curl .../install.sh \| bash` |
|
|
335
|
-
| **Auto-detect CLI** | `--ide gemini-cli`, `--ide opencode` | Auto-detect `kimi` CLI |
|
|
336
|
-
| **Persistent memory** | AI-compressed observations | SQLite + FTS5 |
|
|
337
|
-
| **Web viewer UI** | `http://localhost:37777` | Coming soon |
|
|
338
|
-
| **Skills / memory search** | `mem-search` skill | Built-in `memory_palace` skill |
|
|
339
|
-
| **Privacy tags** | `<private>` content exclusion | Planned |
|
|
340
|
-
| **Plugin hooks** | `.claude/`, `.codex/` hooks | `~/.kimi/skills/` directory |
|
|
341
|
-
| **Import from other tools** | - | Claude Desktop import |
|
|
724
|
+
- `tests/test_integration.py` covers end-to-end flows such as `init --yes`, server `add`, `remove`, and `test`.
|
|
725
|
+
- Unit tests cover config handling, Obsidian vault management, and the plugin installer.
|
|
342
726
|
|
|
343
727
|
---
|
|
344
728
|
|
|
@@ -349,23 +733,31 @@ Features we adopted from the 81k-star `claude-mem` project:
|
|
|
349
733
|
| kimi-mcp-hub CLI |
|
|
350
734
|
| +---------------------------------+ |
|
|
351
735
|
| | (no args) -> welcome banner | |
|
|
352
|
-
| | install ->
|
|
736
|
+
| | install -> GitHub update | |
|
|
353
737
|
| | init -> interactive wizard | |
|
|
354
|
-
| | add -> writes ~/.kimi
|
|
738
|
+
| | add -> writes ~/.kimi-code/...| |
|
|
739
|
+
| | add --project -> writes ./.kimi| |
|
|
740
|
+
| | sync -> merge project + global | |
|
|
355
741
|
| | auth -> OAuth + auto browser | |
|
|
742
|
+
| | repair -> fix broken configs | |
|
|
356
743
|
| | import-claude -> migrate config| |
|
|
357
744
|
| | list -> pretty table of tools | |
|
|
358
745
|
| | status -> version + health | |
|
|
359
746
|
| | welcome -> full info display | |
|
|
747
|
+
| | notify -> startup notification | |
|
|
360
748
|
| +---------------------------------+ |
|
|
361
749
|
| | |
|
|
362
750
|
| +---------------------------------+ |
|
|
363
|
-
| | ~/.kimi/mcp.json
|
|
364
|
-
| |
|
|
365
|
-
| |
|
|
751
|
+
| | Global: ~/.kimi-code/mcp.json | |
|
|
752
|
+
| | Project: ./.kimi/mcp.json | |
|
|
753
|
+
| | Project secrets: ./.kimi/mcp.env| |
|
|
754
|
+
| | ~/.kimi-code/skills/ (57 skills)| |
|
|
755
|
+
| | <config-dir>/kimi-mcp-hub/ | |
|
|
756
|
+
| | tokens.json + memory.db | |
|
|
366
757
|
| +---------------------------------+ |
|
|
367
758
|
| | |
|
|
368
|
-
|
|
|
759
|
+
| Optional shell wrapper prints notify |
|
|
760
|
+
| on every `kimi` start |
|
|
369
761
|
| | |
|
|
370
762
|
| Kimi CLI reads config |
|
|
371
763
|
| | |
|
|
@@ -379,9 +771,10 @@ Features we adopted from the 81k-star `claude-mem` project:
|
|
|
379
771
|
|
|
380
772
|
## Security Notes
|
|
381
773
|
|
|
382
|
-
-
|
|
774
|
+
- On macOS and Linux, sensitive files (`tokens.json`, `memory.db`, and `~/.kimi-code/mcp.json`) are written with `chmod 600` (owner read/write only).
|
|
775
|
+
- Run `kimi-mcp-hub doctor` to detect and fix overly permissive files.
|
|
776
|
+
- OAuth tokens are still stored as plain JSON inside those files. This keeps the tool dependency-free, but a process running as your user can read them while Kimi CLI is active.
|
|
383
777
|
- By default GitHub authentication uses a public OAuth app (`kimi-mcp-hub`). You can supply your own GitHub/Atlassian OAuth Client ID when running `kimi-mcp-hub auth <server>`.
|
|
384
|
-
- API keys and PATs are written to `~/.kimi/mcp.json`. Protect that file accordingly.
|
|
385
778
|
|
|
386
779
|
---
|
|
387
780
|
|