@xmemo/client 0.4.155 → 0.4.157
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 +37 -7
- package/package.json +3 -2
- package/plugins/kiro/.kiro-plugin/power.json +35 -0
- package/plugins/kiro/CHANGELOG.md +9 -0
- package/plugins/kiro/LICENSE +7 -0
- package/plugins/kiro/POWER.md +147 -0
- package/plugins/kiro/README.md +31 -0
- package/plugins/kiro/SETUP.md +234 -0
- package/plugins/kiro/assets/logo.svg +27 -0
- package/plugins/kiro/mcp.json +7 -0
- package/plugins/kiro/steering/xmemo-memory.md +32 -0
- package/src/cli.js +23 -3996
- package/src/commands/auth.js +230 -0
- package/src/commands/diagnostics.js +197 -0
- package/src/commands/mcp.js +188 -0
- package/src/commands/profile.js +57 -0
- package/src/commands/setup.js +191 -0
- package/src/commands/update.js +58 -0
- package/src/config/env.js +82 -0
- package/src/config/paths.js +26 -0
- package/src/config/profile.js +533 -0
- package/src/core/args.js +63 -0
- package/src/core/constants.js +32 -0
- package/src/core/errors.js +6 -0
- package/src/core/io.js +16 -0
- package/src/core/runtime.js +144 -0
- package/src/core/version.js +1 -0
- package/src/mcp/clients/detect.js +51 -0
- package/src/mcp/clients/registry.js +68 -0
- package/src/mcp/clients.js +81 -0
- package/src/mcp/core/names.js +13 -0
- package/src/mcp/core/templates.js +156 -0
- package/src/mcp/formats/json.js +355 -0
- package/src/mcp/formats/toml.js +148 -0
- package/src/mcp/formats/yaml.js +72 -0
- package/src/mcp/identity/device.js +78 -0
- package/src/mcp/identity/paths.js +155 -0
- package/src/mcp/proxy/copilot.js +44 -0
- package/src/mcp/proxy/server.js +112 -0
- package/src/network/auth.js +200 -0
- package/src/network/base-url.js +13 -0
- package/src/network/discovery.js +103 -0
- package/src/network/http.js +161 -0
- package/src/ui/help.js +59 -0
- package/src/ui/setup.js +244 -0
package/README.md
CHANGED
|
@@ -41,6 +41,8 @@ xmemo setup gemini
|
|
|
41
41
|
xmemo setup gemini --dry-run
|
|
42
42
|
xmemo setup antigravity
|
|
43
43
|
xmemo setup antigravity --dry-run
|
|
44
|
+
xmemo setup kiro
|
|
45
|
+
xmemo setup kiro --dry-run
|
|
44
46
|
xmemo mcp add antigravity2
|
|
45
47
|
xmemo mcp add antigravity2 --write
|
|
46
48
|
xmemo doctor
|
|
@@ -69,8 +71,9 @@ xmemo privacy
|
|
|
69
71
|
- `xmemo doctor`, `xmemo discovery show`, and `xmemo status` do not send tokens.
|
|
70
72
|
- MCP config generated by the CLI references `XMEMO_KEY` or uses the client's
|
|
71
73
|
MCP OAuth flow; it does not write token values into project files.
|
|
72
|
-
- The CLI generates one stable non-secret `XMEMO_AGENT_INSTANCE_ID` per
|
|
73
|
-
|
|
74
|
+
- The CLI generates one stable non-secret `XMEMO_AGENT_INSTANCE_ID` per device
|
|
75
|
+
and stores it in user-scoped config outside git. All agents on the same device
|
|
76
|
+
share this instance ID.
|
|
74
77
|
- `xmemo setup <client>` can install a marker-scoped XMemo memory behavior
|
|
75
78
|
profile for the selected agent. The profile contains instructions only; it
|
|
76
79
|
never embeds token values.
|
|
@@ -213,8 +216,8 @@ xmemo mcp add antigravity2 --url https://xmemo.dev --write
|
|
|
213
216
|
|
|
214
217
|
The generated config uses `https://xmemo.dev/mcp`, contains no bearer token, and
|
|
215
218
|
expects Antigravity 2.0 to complete MCP OAuth in the browser on first use.
|
|
216
|
-
`XMEMO_AGENT_INSTANCE_ID` is
|
|
217
|
-
|
|
219
|
+
`XMEMO_AGENT_INSTANCE_ID` is a device-level identifier shared by all agents on
|
|
220
|
+
the same machine, generated and stored when `--write` is used.
|
|
218
221
|
|
|
219
222
|
## MCP setup
|
|
220
223
|
|
|
@@ -233,6 +236,7 @@ copilot ~/.copilot/mcp-config.json
|
|
|
233
236
|
gemini ~/.gemini/settings.json
|
|
234
237
|
antigravity ~/.gemini/antigravity/mcp_config.json
|
|
235
238
|
antigravity2 ~/.antigravity2/mcp.json
|
|
239
|
+
kiro ~/.kiro/settings/mcp.json
|
|
236
240
|
```
|
|
237
241
|
|
|
238
242
|
For clients without a verified user-scoped write path, generate a read-only
|
|
@@ -242,7 +246,7 @@ template and apply it manually after review:
|
|
|
242
246
|
xmemo mcp config --client generic --base-url "https://your-private-service.example" --json
|
|
243
247
|
```
|
|
244
248
|
|
|
245
|
-
Codex, Cursor, Copilot CLI, Gemini CLI, and
|
|
249
|
+
Codex, Cursor, Copilot CLI, Gemini CLI, Antigravity, and Kiro have write-capable setup
|
|
246
250
|
helpers. Antigravity 2.0 is write-capable through `xmemo mcp add antigravity2
|
|
247
251
|
--write`.
|
|
248
252
|
Other client writes should only be added after their official user-scoped config
|
|
@@ -417,6 +421,32 @@ directly, for example with `--url` or `--config` in advanced/multi-client setup.
|
|
|
417
421
|
The CLI refuses to overwrite an existing `XMemo`, `memory_os`, or `memory-os`
|
|
418
422
|
MCP server entry. Edit the config manually if you need to rotate the endpoint.
|
|
419
423
|
|
|
424
|
+
### Kiro
|
|
425
|
+
|
|
426
|
+
Recommended Kiro setup:
|
|
427
|
+
|
|
428
|
+
```bash
|
|
429
|
+
xmemo setup kiro
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
`setup kiro` merges an XMemo MCP server into Kiro's user MCP config at
|
|
433
|
+
`~/.kiro/settings/mcp.json`. It writes a remote HTTP server using Kiro's
|
|
434
|
+
standard `url` key plus `X-Memory-OS-Agent-ID` and `X-Memory-OS-Agent-Instance-ID`
|
|
435
|
+
headers. Use `xmemo setup kiro --dry-run` to preview without writing.
|
|
436
|
+
|
|
437
|
+
The Kiro config includes `Authorization: Bearer ${env:XMEMO_KEY}` so
|
|
438
|
+
authentication uses the environment variable approach. Set your XMemo token with:
|
|
439
|
+
|
|
440
|
+
```bash
|
|
441
|
+
xmemo login
|
|
442
|
+
# or
|
|
443
|
+
printf '%s\n' 'your-token' | xmemo token add --from-stdin
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
After setup, restart Kiro or reload MCP servers for the changes to take effect.
|
|
447
|
+
The CLI refuses to overwrite an existing `XMemo`, `memory_os`, or `memory-os`
|
|
448
|
+
MCP server entry. Edit the config manually if you need to rotate the endpoint.
|
|
449
|
+
|
|
420
450
|
### Antigravity 2.0
|
|
421
451
|
|
|
422
452
|
Recommended Antigravity 2.0 setup:
|
|
@@ -452,8 +482,8 @@ The generated `XMemo` entry uses hosted HTTP MCP:
|
|
|
452
482
|
|
|
453
483
|
No token value is written. Restart Antigravity 2.0 after setup and complete the
|
|
454
484
|
MCP OAuth browser flow on first use. If you use `--write`, the CLI also prepares
|
|
455
|
-
a
|
|
456
|
-
|
|
485
|
+
a device-level `XMEMO_AGENT_INSTANCE_ID` shared by all agents on the same
|
|
486
|
+
machine so XMemo can attribute activity consistently without embedding secrets.
|
|
457
487
|
|
|
458
488
|
## Release model
|
|
459
489
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xmemo/client",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.157",
|
|
4
4
|
"description": "Privacy-first CLI and MCP setup helper for XMemo.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -10,11 +10,12 @@
|
|
|
10
10
|
"files": [
|
|
11
11
|
"bin",
|
|
12
12
|
"src",
|
|
13
|
+
"plugins/kiro",
|
|
13
14
|
"README.md",
|
|
14
15
|
"LICENSE"
|
|
15
16
|
],
|
|
16
17
|
"scripts": {
|
|
17
|
-
"lint": "node
|
|
18
|
+
"lint": "node scripts/check-js.mjs",
|
|
18
19
|
"test": "node --test",
|
|
19
20
|
"pack:dry-run": "npm pack --dry-run",
|
|
20
21
|
"prepublishOnly": "npm run lint && npm test && npm run pack:dry-run"
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "xmemo",
|
|
3
|
+
"displayName": "XMemo",
|
|
4
|
+
"version": "0.1.0",
|
|
5
|
+
"description": "Connect Kiro to XMemo's hosted, user-owned memory layer for durable project context, coding preferences, decisions, and reusable agent knowledge.",
|
|
6
|
+
"author": {
|
|
7
|
+
"name": "XMemo",
|
|
8
|
+
"email": "support@xmemo.dev"
|
|
9
|
+
},
|
|
10
|
+
"publisher": "XMemo",
|
|
11
|
+
"homepage": "https://xmemo.dev",
|
|
12
|
+
"repository": "https://github.com/yonro/memory-os-cli",
|
|
13
|
+
"license": "UNLICENSED",
|
|
14
|
+
"logo": "assets/logo.svg",
|
|
15
|
+
"keywords": [
|
|
16
|
+
"kiro",
|
|
17
|
+
"power",
|
|
18
|
+
"mcp",
|
|
19
|
+
"memory",
|
|
20
|
+
"agent-memory",
|
|
21
|
+
"developer-tools",
|
|
22
|
+
"oauth"
|
|
23
|
+
],
|
|
24
|
+
"category": "Developer Tools",
|
|
25
|
+
"tags": [
|
|
26
|
+
"mcp",
|
|
27
|
+
"memory",
|
|
28
|
+
"oauth",
|
|
29
|
+
"developer-tools"
|
|
30
|
+
],
|
|
31
|
+
"steering": [
|
|
32
|
+
"steering/xmemo-memory.md"
|
|
33
|
+
],
|
|
34
|
+
"mcpServers": "mcp.json"
|
|
35
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
Copyright (c) Yonro.
|
|
2
|
+
|
|
3
|
+
All rights reserved.
|
|
4
|
+
|
|
5
|
+
This package is published as a client distribution artifact for XMemo.
|
|
6
|
+
No license is granted to copy, modify, distribute, sublicense, or use the source
|
|
7
|
+
code except as expressly permitted by Yonro in a separate written agreement.
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
# XMemo for Kiro
|
|
2
|
+
|
|
3
|
+
XMemo gives Kiro a hosted, user-owned memory layer for durable project context, coding preferences, decisions, TODOs, and reusable agent knowledge.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This Kiro Power integrates XMemo's MCP server to provide persistent memory across your Kiro sessions. XMemo helps Kiro remember:
|
|
8
|
+
|
|
9
|
+
- **Project context**: Repository conventions, architecture decisions, and verified commands
|
|
10
|
+
- **Coding preferences**: Your approved preferences for code review, testing, and documentation
|
|
11
|
+
- **Decisions**: Important technical decisions that should inform future work
|
|
12
|
+
- **TODOs**: Follow-up tasks and reminders for future sessions
|
|
13
|
+
- **Knowledge**: Reusable agent knowledge and learnings
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
Install this power through Kiro's Powers panel or manually configure:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
xmemo setup kiro
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
This command:
|
|
24
|
+
1. Merges XMemo MCP server configuration into `~/.kiro/settings/mcp.json`
|
|
25
|
+
2. Sets up OAuth or environment-variable-based authentication
|
|
26
|
+
3. Adds agent identity headers for attribution
|
|
27
|
+
|
|
28
|
+
## Authentication
|
|
29
|
+
|
|
30
|
+
### OAuth (Recommended)
|
|
31
|
+
|
|
32
|
+
The power uses OAuth by default. On first use, Kiro will open a browser window for you to authorize XMemo access.
|
|
33
|
+
|
|
34
|
+
### Environment Variable (Alternative)
|
|
35
|
+
|
|
36
|
+
If OAuth is unavailable, you can use an environment variable:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
xmemo login
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Or manually set your token:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
printf '%s\n' 'your-token' | xmemo token add --from-stdin
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Then set the environment variable:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# PowerShell
|
|
52
|
+
[Environment]::SetEnvironmentVariable("XMEMO_KEY", "your-token", "User")
|
|
53
|
+
|
|
54
|
+
# Bash/Zsh
|
|
55
|
+
export XMEMO_KEY="your-token"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Usage
|
|
59
|
+
|
|
60
|
+
Once installed, Kiro will automatically use XMemo when appropriate. The steering file instructs Kiro to:
|
|
61
|
+
|
|
62
|
+
1. **Recall first**: Search XMemo before making assumptions about preferences or past decisions
|
|
63
|
+
2. **Save durable information**: Remember important context that should persist across sessions
|
|
64
|
+
3. **Keep content useful**: Store concrete facts, decisions, and action items (not chat transcripts)
|
|
65
|
+
4. **Confirm destructive actions**: Ask before deleting or overwriting memory
|
|
66
|
+
|
|
67
|
+
### Example Prompts
|
|
68
|
+
|
|
69
|
+
- "Search XMemo for coding style preferences for this project"
|
|
70
|
+
- "Remember in XMemo: Always use TypeScript strict mode in this project"
|
|
71
|
+
- "Recall what I saved about API design patterns"
|
|
72
|
+
- "Create a TODO in XMemo to refactor the auth module next week"
|
|
73
|
+
- "List my XMemo TODOs"
|
|
74
|
+
|
|
75
|
+
## What Gets Stored
|
|
76
|
+
|
|
77
|
+
**Good candidates for XMemo:**
|
|
78
|
+
- Repository conventions and verified commands
|
|
79
|
+
- Architecture decisions and design patterns
|
|
80
|
+
- Release procedures and deployment notes
|
|
81
|
+
- User-approved preferences for development practices
|
|
82
|
+
- TODOs and follow-up actions
|
|
83
|
+
|
|
84
|
+
**Never store:**
|
|
85
|
+
- Secrets, credentials, API keys, or tokens
|
|
86
|
+
- Private customer data or PII
|
|
87
|
+
- Temporary debugging output
|
|
88
|
+
- Chat transcripts or verbose logs
|
|
89
|
+
|
|
90
|
+
## Configuration
|
|
91
|
+
|
|
92
|
+
The power installs:
|
|
93
|
+
- **MCP server**: `https://xmemo.dev/mcp`
|
|
94
|
+
- **Steering file**: Auto-included guidance for when to use XMemo
|
|
95
|
+
- **Agent identity**: Headers for attribution (non-secret)
|
|
96
|
+
|
|
97
|
+
### Manual Configuration
|
|
98
|
+
|
|
99
|
+
Advanced users can generate a config snippet:
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
xmemo mcp config --client kiro --json
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Or see the dry-run preview:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
xmemo setup kiro --dry-run
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Troubleshooting
|
|
112
|
+
|
|
113
|
+
### Connection Issues
|
|
114
|
+
|
|
115
|
+
Check your token status:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
xmemo auth status
|
|
119
|
+
xmemo token status --verify
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Configuration Issues
|
|
123
|
+
|
|
124
|
+
View your current MCP config:
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
cat ~/.kiro/settings/mcp.json
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Reset Configuration
|
|
131
|
+
|
|
132
|
+
To remove XMemo from Kiro, manually edit `~/.kiro/settings/mcp.json` and remove the `XMemo` entry from `mcpServers`.
|
|
133
|
+
|
|
134
|
+
## Privacy & Security
|
|
135
|
+
|
|
136
|
+
- No telemetry or analytics
|
|
137
|
+
- OAuth tokens are stored securely by Kiro
|
|
138
|
+
- Agent identity headers are non-secret attribution IDs
|
|
139
|
+
- Environment variable approach keeps tokens out of config files
|
|
140
|
+
- All memory content is user-owned and controlled through your XMemo account
|
|
141
|
+
|
|
142
|
+
## Support
|
|
143
|
+
|
|
144
|
+
- **Documentation**: https://xmemo.dev
|
|
145
|
+
- **CLI Help**: `xmemo --help`
|
|
146
|
+
- **Issues**: https://github.com/yonro/memory-os-cli/issues
|
|
147
|
+
- **Email**: support@xmemo.dev
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# XMemo Kiro Power
|
|
2
|
+
|
|
3
|
+
XMemo gives Kiro a hosted, user-owned memory layer for durable project context, coding preferences, decisions, TODOs, and reusable agent knowledge.
|
|
4
|
+
|
|
5
|
+
## What it installs
|
|
6
|
+
|
|
7
|
+
- `mcp.json` adds the hosted XMemo MCP server at `https://xmemo.dev/mcp`.
|
|
8
|
+
- `assets/logo.svg` reuses the canonical XMemo marketplace icon source used by the existing ChatGPT/Claude listing assets.
|
|
9
|
+
- `steering/xmemo-memory.md` tells Kiro when to use XMemo memory.
|
|
10
|
+
|
|
11
|
+
## Authentication
|
|
12
|
+
|
|
13
|
+
The Kiro Power is OAuth-first. The power metadata stores only the hosted MCP URL; the first XMemo tool use should open the browser-based OAuth flow. Do not add `Authorization`, `Bearer`, or `XMEMO_KEY` to the power's `mcp.json`.
|
|
14
|
+
|
|
15
|
+
Manual direct-key fallback remains available through:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
xmemo mcp config --client kiro --json
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Use that fallback only for local/manual installs where Kiro OAuth is unavailable.
|
|
22
|
+
|
|
23
|
+
## Reviewer smoke prompts
|
|
24
|
+
|
|
25
|
+
1. "List the XMemo tools you can use in Kiro."
|
|
26
|
+
2. "Search XMemo for coding style preferences for this project."
|
|
27
|
+
3. "Remember in XMemo: For Kiro review, prefer small PRs with validation evidence."
|
|
28
|
+
4. "Recall what I saved about Kiro review PR preferences."
|
|
29
|
+
5. "Create a XMemo memory TODO to capture Kiro review screenshots tomorrow, then list my TODOs."
|
|
30
|
+
|
|
31
|
+
Use a dedicated reviewer workspace with synthetic data only. Redact emails, OAuth codes, cookies, bearer tokens, trace IDs, internal account IDs, real memory content, and private local paths from evidence.
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
# XMemo Kiro Power Setup Guide
|
|
2
|
+
|
|
3
|
+
This guide walks you through setting up XMemo for Kiro.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
Install and configure XMemo for Kiro in one command:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
xmemo setup kiro
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
This will:
|
|
14
|
+
1. Merge XMemo MCP server config into `~/.kiro/settings/mcp.json`
|
|
15
|
+
2. Configure authentication via `XMEMO_KEY` environment variable
|
|
16
|
+
3. Set up agent identity headers for attribution
|
|
17
|
+
|
|
18
|
+
## Step-by-Step Setup
|
|
19
|
+
|
|
20
|
+
### 1. Install XMemo CLI
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install -g @xmemo/client
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### 2. Authenticate with XMemo
|
|
27
|
+
|
|
28
|
+
Choose one of these methods:
|
|
29
|
+
|
|
30
|
+
#### Option A: OAuth Login (Recommended)
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
xmemo login
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
This opens your browser for secure OAuth authentication.
|
|
37
|
+
|
|
38
|
+
#### Option B: Direct Token
|
|
39
|
+
|
|
40
|
+
If you already have a token:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
printf '%s\n' 'your-token' | xmemo token add --from-stdin
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Set the environment variable:
|
|
47
|
+
|
|
48
|
+
**PowerShell:**
|
|
49
|
+
```powershell
|
|
50
|
+
[Environment]::SetEnvironmentVariable("XMEMO_KEY", "your-token", "User")
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
**Bash/Zsh:**
|
|
54
|
+
```bash
|
|
55
|
+
export XMEMO_KEY="your-token"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3. Configure Kiro
|
|
59
|
+
|
|
60
|
+
Preview the configuration first:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
xmemo setup kiro --dry-run
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Then write the configuration:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
xmemo setup kiro
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### 4. Verify Installation
|
|
73
|
+
|
|
74
|
+
Check your MCP configuration:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
cat ~/.kiro/settings/mcp.json
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
You should see an `XMemo` entry in `mcpServers`.
|
|
81
|
+
|
|
82
|
+
Verify token status:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
xmemo auth status
|
|
86
|
+
xmemo token status --verify
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 5. Restart Kiro
|
|
90
|
+
|
|
91
|
+
After configuration, restart Kiro or reload MCP servers for changes to take effect.
|
|
92
|
+
|
|
93
|
+
## Using XMemo in Kiro
|
|
94
|
+
|
|
95
|
+
Once installed, you can use XMemo through natural language:
|
|
96
|
+
|
|
97
|
+
### Search Memory
|
|
98
|
+
```
|
|
99
|
+
Search XMemo for coding style preferences for this project
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Save Information
|
|
103
|
+
```
|
|
104
|
+
Remember in XMemo: Always use TypeScript strict mode in this project
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Recall Decisions
|
|
108
|
+
```
|
|
109
|
+
Recall what I saved about API design patterns
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Manage TODOs
|
|
113
|
+
```
|
|
114
|
+
Create a TODO in XMemo to refactor the auth module next week
|
|
115
|
+
List my XMemo TODOs
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Configuration Details
|
|
119
|
+
|
|
120
|
+
The setup command creates this configuration:
|
|
121
|
+
|
|
122
|
+
```json
|
|
123
|
+
{
|
|
124
|
+
"mcpServers": {
|
|
125
|
+
"XMemo": {
|
|
126
|
+
"url": "https://xmemo.dev/mcp",
|
|
127
|
+
"headers": {
|
|
128
|
+
"Authorization": "Bearer ${env:XMEMO_KEY}",
|
|
129
|
+
"X-Memory-OS-Agent-ID": "kiro",
|
|
130
|
+
"X-Memory-OS-Agent-Instance-ID": "${XMEMO_AGENT_INSTANCE_ID}"
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Configuration Components
|
|
138
|
+
|
|
139
|
+
- **url**: XMemo MCP server endpoint
|
|
140
|
+
- **Authorization**: Bearer token from `XMEMO_KEY` environment variable
|
|
141
|
+
- **X-Memory-OS-Agent-ID**: Identifies the agent as Kiro
|
|
142
|
+
- **X-Memory-OS-Agent-Instance-ID**: Unique identifier for this installation
|
|
143
|
+
|
|
144
|
+
## Troubleshooting
|
|
145
|
+
|
|
146
|
+
### XMemo tools not available
|
|
147
|
+
|
|
148
|
+
**Check MCP configuration:**
|
|
149
|
+
```bash
|
|
150
|
+
cat ~/.kiro/settings/mcp.json
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**Verify the `XMemo` entry exists in `mcpServers`.**
|
|
154
|
+
|
|
155
|
+
**Restart Kiro** or reload MCP servers.
|
|
156
|
+
|
|
157
|
+
### Authentication errors
|
|
158
|
+
|
|
159
|
+
**Check token status:**
|
|
160
|
+
```bash
|
|
161
|
+
xmemo auth status
|
|
162
|
+
xmemo token status --verify
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
**Verify environment variable:**
|
|
166
|
+
|
|
167
|
+
PowerShell:
|
|
168
|
+
```powershell
|
|
169
|
+
$env:XMEMO_KEY
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Bash/Zsh:
|
|
173
|
+
```bash
|
|
174
|
+
echo $XMEMO_KEY
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
**Re-authenticate if needed:**
|
|
178
|
+
```bash
|
|
179
|
+
xmemo login
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Duplicate server entries
|
|
183
|
+
|
|
184
|
+
If you see an error about duplicate entries:
|
|
185
|
+
|
|
186
|
+
```
|
|
187
|
+
MCP config already contains mcpServers.XMemo
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
Edit `~/.kiro/settings/mcp.json` manually to remove or update the existing entry.
|
|
191
|
+
|
|
192
|
+
## Advanced Configuration
|
|
193
|
+
|
|
194
|
+
### Custom Service URL
|
|
195
|
+
|
|
196
|
+
For self-hosted or enterprise XMemo:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
xmemo setup kiro --url https://your-xmemo-instance.example.com
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### Manual Configuration
|
|
203
|
+
|
|
204
|
+
Generate config without writing:
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
xmemo mcp config --client kiro --json
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Copy the output and manually merge into your Kiro config.
|
|
211
|
+
|
|
212
|
+
## Uninstalling
|
|
213
|
+
|
|
214
|
+
To remove XMemo from Kiro:
|
|
215
|
+
|
|
216
|
+
1. Edit `~/.kiro/settings/mcp.json`
|
|
217
|
+
2. Remove the `XMemo` entry from `mcpServers`
|
|
218
|
+
3. Restart Kiro or reload MCP servers
|
|
219
|
+
|
|
220
|
+
## Getting Help
|
|
221
|
+
|
|
222
|
+
- **Documentation**: https://xmemo.dev
|
|
223
|
+
- **CLI Help**: `xmemo --help`
|
|
224
|
+
- **Setup Help**: `xmemo setup --help`
|
|
225
|
+
- **Issues**: https://github.com/yonro/memory-os-cli/issues
|
|
226
|
+
- **Email**: support@xmemo.dev
|
|
227
|
+
|
|
228
|
+
## Privacy & Security
|
|
229
|
+
|
|
230
|
+
- Configuration does not embed token values
|
|
231
|
+
- Tokens are stored securely outside project files
|
|
232
|
+
- Agent identity headers are non-secret attribution IDs
|
|
233
|
+
- No telemetry or analytics
|
|
234
|
+
- All memory content is user-owned
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" role="img" aria-label="XMemo Claude connector icon">
|
|
2
|
+
<defs>
|
|
3
|
+
<radialGradient id="halo" cx="28%" cy="18%" r="78%">
|
|
4
|
+
<stop offset="0" stop-color="#8df7d5"/>
|
|
5
|
+
<stop offset="0.36" stop-color="#22d3ee"/>
|
|
6
|
+
<stop offset="0.74" stop-color="#102033"/>
|
|
7
|
+
<stop offset="1" stop-color="#070b18"/>
|
|
8
|
+
</radialGradient>
|
|
9
|
+
<linearGradient id="mark" x1="180" x2="844" y1="238" y2="786" gradientUnits="userSpaceOnUse">
|
|
10
|
+
<stop offset="0" stop-color="#f2fff9"/>
|
|
11
|
+
<stop offset="0.42" stop-color="#8df7d5"/>
|
|
12
|
+
<stop offset="1" stop-color="#22d3ee"/>
|
|
13
|
+
</linearGradient>
|
|
14
|
+
<filter id="glow" x="-20%" y="-20%" width="140%" height="140%" color-interpolation-filters="sRGB">
|
|
15
|
+
<feDropShadow dx="0" dy="24" stdDeviation="46" flood-color="#22d3ee" flood-opacity="0.36"/>
|
|
16
|
+
<feDropShadow dx="0" dy="0" stdDeviation="18" flood-color="#8df7d5" flood-opacity="0.46"/>
|
|
17
|
+
</filter>
|
|
18
|
+
</defs>
|
|
19
|
+
<rect width="1024" height="1024" rx="220" fill="#070b18"/>
|
|
20
|
+
<circle cx="272" cy="214" r="440" fill="url(#halo)" opacity="0.64"/>
|
|
21
|
+
<circle cx="842" cy="820" r="420" fill="#14b8a6" opacity="0.18"/>
|
|
22
|
+
<path fill="#ffffff" opacity="0.08" d="M126 746c160 70 310 88 448 56 138-31 246-110 324-235v235c-88 78-197 125-326 141-156 19-304-7-446-79Z"/>
|
|
23
|
+
<g filter="url(#glow)">
|
|
24
|
+
<path fill="url(#mark)" d="M224 724V300h118l170 230 170-230h118v424H672V502L552 670h-80L352 502v222Z"/>
|
|
25
|
+
<path fill="#e6fff8" opacity="0.92" d="M382 300h96l34 48 34-48h96L512 486Z"/>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
inclusion: auto
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# XMemo Memory
|
|
6
|
+
|
|
7
|
+
Use XMemo's hosted MCP memory tools for durable context, project preferences, decisions, reminders, and cross-session recall in Kiro.
|
|
8
|
+
|
|
9
|
+
## When to Use
|
|
10
|
+
|
|
11
|
+
Use XMemo when the task may depend on prior memory, durable project context, coding preferences, decisions, or follow-up actions.
|
|
12
|
+
|
|
13
|
+
## Workflow
|
|
14
|
+
|
|
15
|
+
1. **Recall first** when prior context could change the answer. Use XMemo search/recall/context tools before making assumptions about preferences or past decisions.
|
|
16
|
+
2. **Save only durable information** that the user asks to remember or that is clearly useful across future Kiro sessions.
|
|
17
|
+
3. **Keep memory content concise, scoped, and useful**. Prefer concrete facts, decisions, links to public docs, and action items over chat transcripts.
|
|
18
|
+
4. **For destructive memory actions**, confirm the exact target before deleting, forgetting, or overwriting.
|
|
19
|
+
5. **If authorization is missing or expired**, ask the user to reconnect XMemo through Kiro's OAuth flow. Do not request raw bearer tokens in chat.
|
|
20
|
+
|
|
21
|
+
## Good Memory Candidates
|
|
22
|
+
|
|
23
|
+
- Repository conventions and verified commands.
|
|
24
|
+
- Architecture decisions, release procedures, and deployment notes.
|
|
25
|
+
- User-approved preferences for code review, testing, documentation, or UX.
|
|
26
|
+
- TODOs and follow-ups that should be visible to future agents.
|
|
27
|
+
|
|
28
|
+
## Avoid Saving
|
|
29
|
+
|
|
30
|
+
- Secrets, credentials, OAuth codes, cookies, API keys, or token prefixes.
|
|
31
|
+
- Private customer data or sensitive personal data.
|
|
32
|
+
- Temporary debugging output that will not help future work.
|