@lightupai/polaris 0.0.83 → 0.0.85

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.
@@ -5,6 +5,7 @@
5
5
  "args": ["bun", "src/client/client.ts"],
6
6
  "env": {
7
7
  "POLARIS_DAEMON_URL": "http://127.0.0.1:4322",
8
+ "POLARIS_DAEMON_SECRET": "<your daemonSecret from ~/.polaris/config.json>",
8
9
  "POLARIS_SERVICE_URL": "http://localhost:4321"
9
10
  }
10
11
  }
package/README.md CHANGED
@@ -67,6 +67,38 @@ make test
67
67
  make clean
68
68
  ```
69
69
 
70
+ ## New Developer Setup
71
+
72
+ After cloning and completing the Quick Start above, a few extra steps to get the MCP + daemon working for local development:
73
+
74
+ ### 1. Install the CLI
75
+
76
+ ```sh
77
+ npm install -g @lightupai/polaris
78
+ polaris login --local # authenticates against localhost:3000
79
+ ```
80
+
81
+ This generates a shared daemon secret and stores it in `~/.polaris/config.json`.
82
+
83
+ ### 2. Set up .mcp.json
84
+
85
+ The project `.mcp.json` is gitignored (it contains your machine-specific daemon secret). Copy the example and fill it in:
86
+
87
+ ```sh
88
+ cp .mcp.json.example .mcp.json
89
+ ```
90
+
91
+ Then open `.mcp.json` and replace the placeholder with your `daemonSecret`:
92
+
93
+ ```sh
94
+ # Print your daemon secret:
95
+ cat ~/.polaris/config.json | python3 -c "import sys,json; print(json.load(sys.stdin)['daemonSecret'])"
96
+ ```
97
+
98
+ ### 3. Restart Claude Code
99
+
100
+ Restart Claude Code so it picks up the updated `.mcp.json`. The Polaris MCP tools (`polaris_connect`, `polaris_reply`, etc.) will then be available in your session.
101
+
70
102
  ## CLI
71
103
 
72
104
  ```sh
@@ -207,7 +239,7 @@ tests/ Test suite (bun test)
207
239
  - [ ] `POLARIS_PROMPT_STYLE` env var exists but only `color-header` mode remains — clean up dead references
208
240
  - [ ] No pagination on event queries — will be slow for projects with thousands of events
209
241
  - [ ] Bridge polls DB every 5 seconds for new events — switch to Postgres LISTEN/NOTIFY for lower latency
210
- - [ ] No auth on daemon HTTP endpoints — any local process can connect/disconnect sessions
242
+ - [x] No auth on daemon HTTP endpoints — any local process can connect/disconnect sessions
211
243
  - [ ] Slack channel creation uses sanitized project name — names with special characters may collide
212
244
  - [ ] Dashboard SSE connection has no reconnect logic on the client side
213
245
  - [ ] No way to delete a project or archive old sessions
@@ -16,22 +16,12 @@ INPUT=$(cat)
16
16
  # Extract the CC session ID if available
17
17
  CC_SESSION_ID=$(echo "$INPUT" | jq -r '.session_id // ""' 2>/dev/null || echo "")
18
18
 
19
- # Query daemon — try specific session first, fall back to any connected session
19
+ # Query daemon for this shell's session only — no fallback to other sessions
20
20
  if [ -n "$CC_SESSION_ID" ]; then
21
21
  STATUS=$(curl -s ${SECRET_HEADER:+-H "$SECRET_HEADER"} "http://127.0.0.1:${POLARIS_DAEMON_PORT}/status/${CC_SESSION_ID}" 2>/dev/null)
22
22
  CONNECTED=$(echo "$STATUS" | jq -r '.connected' 2>/dev/null || echo "false")
23
23
  fi
24
24
 
25
- # If no match, check if there's any active session
26
- if [ "$CONNECTED" != "true" ]; then
27
- STATUS=$(curl -s ${SECRET_HEADER:+-H "$SECRET_HEADER"} "http://127.0.0.1:${POLARIS_DAEMON_PORT}/status" 2>/dev/null)
28
- FIRST_SESSION=$(echo "$STATUS" | jq -r '.sessions[0] // empty' 2>/dev/null)
29
- if [ -n "$FIRST_SESSION" ]; then
30
- STATUS="{\"connected\":true,\"project\":$(echo "$STATUS" | jq '.sessions[0].project'),\"session\":$(echo "$STATUS" | jq '.sessions[0].session'),\"user\":$(echo "$STATUS" | jq '.sessions[0].user')}"
31
- CONNECTED="true"
32
- fi
33
- fi
34
-
35
25
  if [ "$CONNECTED" = "true" ]; then
36
26
  PROJECT=$(echo "$STATUS" | jq -r '.project' 2>/dev/null)
37
27
  SESSION=$(echo "$STATUS" | jq -r '.session' 2>/dev/null)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lightupai/polaris",
3
- "version": "0.0.83",
3
+ "version": "0.0.85",
4
4
  "description": "Record and stream Claude Code sessions to Slack. Like Gong for AI coding — capture every prompt, response, and tool call. Multiplayer collaboration across AI coding agents.",
5
5
  "keywords": [
6
6
  "claude-code",