circuit-mcp 1.0.3 → 1.0.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "circuit-mcp",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Circuit MCP server for Cursor and Claude Code",
5
5
  "type": "module",
6
6
  "bin": {
package/publish.sh ADDED
@@ -0,0 +1,21 @@
1
+ #!/bin/bash
2
+
3
+ # Publish script for circuit-mcp package
4
+ # Uses token to bypass 2FA
5
+
6
+ set -e
7
+
8
+ # NPM token for publishing (bypasses 2FA)
9
+ NPM_TOKEN="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"
10
+
11
+ # Create temporary .npmrc with token
12
+ echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > .npmrc
13
+
14
+ # Publish the package
15
+ npm publish --access public
16
+
17
+ # Clean up .npmrc
18
+ rm .npmrc
19
+
20
+ echo "✅ Published successfully!"
21
+
package/src/index.js CHANGED
@@ -113,30 +113,31 @@ function showTroubleshoot() {
113
113
  async function runSetup() {
114
114
  showBanner();
115
115
 
116
- console.log(chalk.dim(' Choose your AI coding tool:\n'));
117
- console.log(` ${chalk.bold('1.')} Cursor`);
118
- console.log(` ${chalk.bold('2.')} Claude Code`);
119
- console.log(` ${chalk.bold('3.')} Both\n`);
120
-
121
- // For now, show instructions for both
122
- console.log(chalk.cyan.bold(' Cursor Setup\n'));
123
- console.log(chalk.dim(' Add to your Cursor settings (Cmd+Shift+P → "Cursor Settings: Open User Settings"):\n'));
124
- console.log(chalk.white(` {
125
- "mcpServers": {
126
- "circuit": {
127
- "command": "npx",
128
- "args": ["circuit-mcp"]
129
- }
130
- }
131
- }\n`));
116
+ console.log(chalk.white.bold(' Welcome to Circuit!\n'));
117
+ console.log(chalk.dim(' Connect your AI coding tool to start building from customer feedback.\n'));
118
+
119
+ console.log(chalk.dim(' ─────────────────────────────────────────\n'));
132
120
 
133
- console.log(chalk.cyan.bold(' Claude Code Setup\n'));
134
- console.log(chalk.dim(' Run this command in your terminal:\n'));
135
- console.log(chalk.white(` claude mcp add circuit -- npx circuit-mcp\n`));
121
+ console.log(chalk.cyan.bold(' Cursor\n'));
122
+ console.log(chalk.dim(' 1. Open your MCP config file:\n'));
123
+ console.log(chalk.white(' open ~/.cursor/mcp.json\n'));
124
+ console.log(chalk.dim(' 2. Add this to the file:\n'));
125
+ console.log(chalk.white(` {
126
+ "mcpServers": {
127
+ "circuit": {
128
+ "command": "npx",
129
+ "args": ["circuit-mcp"]
130
+ }
131
+ }
132
+ }\n`));
133
+ console.log(chalk.dim(' 3. Restart Cursor\n'));
134
+
135
+ console.log(chalk.cyan.bold(' Claude Code\n'));
136
+ console.log(chalk.dim(' Run this in your terminal:\n'));
137
+ console.log(chalk.white(' claude mcp add circuit -- npx circuit-mcp\n'));
136
138
 
137
139
  console.log(chalk.dim(' ─────────────────────────────────────────\n'));
138
- console.log(chalk.dim(' After setup, Circuit will prompt you to'));
139
- console.log(chalk.dim(' authenticate on first use.\n'));
140
+ console.log(chalk.dim(' Circuit will prompt you to sign in on first use.\n'));
140
141
  }
141
142
 
142
143
  async function runAuth() {
package/src/ui.js CHANGED
@@ -7,16 +7,7 @@ const WARM_BEIGE = '#F5F1EA';
7
7
 
8
8
  export function showBanner() {
9
9
  console.log();
10
- // Circuit logo: solid circle with ring stroke inside
11
- console.log(chalk.hex(CHARCOAL)(' ▄▄▄▄▄▄▄'));
12
- console.log(chalk.hex(CHARCOAL)(' ▄█') + chalk.hex(WARM_WHITE)('▀▀▀▀▀') + chalk.hex(CHARCOAL)('█▄'));
13
- console.log(chalk.hex(CHARCOAL)(' █') + chalk.hex(WARM_WHITE)('▀') + chalk.hex(CHARCOAL)('█████') + chalk.hex(WARM_WHITE)('▀') + chalk.hex(CHARCOAL)('█'));
14
- console.log(chalk.hex(CHARCOAL)(' █') + chalk.hex(WARM_WHITE)('▐') + chalk.hex(CHARCOAL)('███████') + chalk.hex(WARM_WHITE)('▌') + chalk.hex(CHARCOAL)('█'));
15
- console.log(chalk.hex(CHARCOAL)(' █') + chalk.hex(WARM_WHITE)('▄') + chalk.hex(CHARCOAL)('█████') + chalk.hex(WARM_WHITE)('▄') + chalk.hex(CHARCOAL)('█'));
16
- console.log(chalk.hex(CHARCOAL)(' ▀█') + chalk.hex(WARM_WHITE)('▄▄▄▄▄') + chalk.hex(CHARCOAL)('█▀'));
17
- console.log(chalk.hex(CHARCOAL)(' ▀▀▀▀▀▀▀'));
18
- console.log();
19
- console.log(chalk.hex(CHARCOAL).bold(' Circuit') + chalk.dim(' MCP'));
10
+ console.log(chalk.hex(CHARCOAL)(' ◉ ') + chalk.hex(CHARCOAL).bold('Circuit') + chalk.dim(' MCP'));
20
11
  console.log();
21
12
  }
22
13
 
@@ -43,7 +34,7 @@ export function showSpinner(message) {
43
34
 
44
35
  const interval = setInterval(() => {
45
36
  if (stopped) return;
46
- process.stderr.write(`\r ${chalk.hex(CIRCUIT_PURPLE)(frames[i])} ${chalk.dim(message)}`);
37
+ process.stderr.write(`\r ${chalk.hex(CHARCOAL)(frames[i])} ${chalk.dim(message)}`);
47
38
  i = (i + 1) % frames.length;
48
39
  }, 80);
49
40