evrex-mcp 0.9.0 → 0.9.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/dist/capture.js CHANGED
@@ -3500,11 +3500,13 @@ evrex will not fall back to writing the credential in a plain file.`
3500
3500
  if (!await this.available()) throw new NoKeychainError(this.runner.platform);
3501
3501
  switch (this.runner.platform) {
3502
3502
  case "darwin": {
3503
+ if (/["\\\r\n]/.test(secret)) {
3504
+ throw new Error("Keychain write refused: the credential has a character `security -i` cannot carry.");
3505
+ }
3503
3506
  const result = await this.runner.run(
3504
3507
  "security",
3505
- ["add-generic-password", "-a", ACCOUNT, "-s", SERVICE, "-U", "-w"],
3506
- `${secret}
3507
- ${secret}
3508
+ ["-i"],
3509
+ `add-generic-password -a "${ACCOUNT}" -s "${SERVICE}" -U -w "${secret}"
3508
3510
  `
3509
3511
  );
3510
3512
  if (result.code !== 0) throw new Error(`Keychain write failed: ${result.stderr.trim()}`);
package/dist/import.js CHANGED
@@ -3500,11 +3500,13 @@ evrex will not fall back to writing the credential in a plain file.`
3500
3500
  if (!await this.available()) throw new NoKeychainError(this.runner.platform);
3501
3501
  switch (this.runner.platform) {
3502
3502
  case "darwin": {
3503
+ if (/["\\\r\n]/.test(secret)) {
3504
+ throw new Error("Keychain write refused: the credential has a character `security -i` cannot carry.");
3505
+ }
3503
3506
  const result = await this.runner.run(
3504
3507
  "security",
3505
- ["add-generic-password", "-a", ACCOUNT, "-s", SERVICE, "-U", "-w"],
3506
- `${secret}
3507
- ${secret}
3508
+ ["-i"],
3509
+ `add-generic-password -a "${ACCOUNT}" -s "${SERVICE}" -U -w "${secret}"
3508
3510
  `
3509
3511
  );
3510
3512
  if (result.code !== 0) throw new Error(`Keychain write failed: ${result.stderr.trim()}`);
package/dist/index.js CHANGED
@@ -141,11 +141,13 @@ evrex will not fall back to writing the credential in a plain file.`
141
141
  if (!await this.available()) throw new NoKeychainError(this.runner.platform);
142
142
  switch (this.runner.platform) {
143
143
  case "darwin": {
144
+ if (/["\\\r\n]/.test(secret)) {
145
+ throw new Error("Keychain write refused: the credential has a character `security -i` cannot carry.");
146
+ }
144
147
  const result = await this.runner.run(
145
148
  "security",
146
- ["add-generic-password", "-a", ACCOUNT, "-s", SERVICE, "-U", "-w"],
147
- `${secret}
148
- ${secret}
149
+ ["-i"],
150
+ `add-generic-password -a "${ACCOUNT}" -s "${SERVICE}" -U -w "${secret}"
149
151
  `
150
152
  );
151
153
  if (result.code !== 0) throw new Error(`Keychain write failed: ${result.stderr.trim()}`);
package/dist/tickets.js CHANGED
@@ -141,11 +141,13 @@ evrex will not fall back to writing the credential in a plain file.`
141
141
  if (!await this.available()) throw new NoKeychainError(this.runner.platform);
142
142
  switch (this.runner.platform) {
143
143
  case "darwin": {
144
+ if (/["\\\r\n]/.test(secret)) {
145
+ throw new Error("Keychain write refused: the credential has a character `security -i` cannot carry.");
146
+ }
144
147
  const result = await this.runner.run(
145
148
  "security",
146
- ["add-generic-password", "-a", ACCOUNT, "-s", SERVICE, "-U", "-w"],
147
- `${secret}
148
- ${secret}
149
+ ["-i"],
150
+ `add-generic-password -a "${ACCOUNT}" -s "${SERVICE}" -U -w "${secret}"
149
151
  `
150
152
  );
151
153
  if (result.code !== 0) throw new Error(`Keychain write failed: ${result.stderr.trim()}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evrex-mcp",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "description": "MCP server that gives coding agents the recorded reasoning behind a repo: prior decisions, hard constraints, and approaches already rejected.",
5
5
  "keywords": [
6
6
  "mcp",
@@ -48,8 +48,8 @@
48
48
  "typescript": "^5.9.2",
49
49
  "@repo/eslint-config": "0.0.0",
50
50
  "@repo/ingest-core": "0.0.0",
51
- "@repo/typescript-config": "0.0.0",
52
- "@repo/llm-core": "0.0.0"
51
+ "@repo/llm-core": "0.0.0",
52
+ "@repo/typescript-config": "0.0.0"
53
53
  },
54
54
  "scripts": {
55
55
  "build": "tsc -p tsconfig.json",