@bmhall2/skylight-mcp 1.1.8 → 1.1.10

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.
@@ -1,38 +1,25 @@
1
1
  /**
2
2
  * Skylight Authentication
3
- * Handles login via email/password to obtain API token
3
+ * Handles the browser-style OAuth login flow used by Skylight web.
4
4
  */
5
- export interface LoginResponse {
6
- data: {
7
- id: string;
8
- type: "authenticated_user";
9
- attributes: {
10
- email: string;
11
- token: string;
12
- subscription_status: string;
13
- };
14
- };
15
- meta?: {
16
- password_reset?: boolean;
17
- };
5
+ export interface OAuthTokenResponse {
6
+ access_token?: string;
7
+ token?: string;
8
+ token_type?: string;
9
+ scope?: string;
10
+ refresh_token?: string;
11
+ expires_in?: number;
12
+ created_at?: number;
13
+ [key: string]: unknown;
18
14
  }
19
15
  export interface AuthResult {
20
- userId: string;
21
16
  email: string;
22
17
  token: string;
23
- subscriptionStatus: string;
18
+ subscriptionStatus: string | null;
24
19
  }
25
20
  /**
26
- * Login to Skylight with email and password
27
- * Returns the authentication token and user info
21
+ * Login to Skylight with email and password.
22
+ * Replays the same browser OAuth flow observed from Skylight web.
28
23
  */
29
24
  export declare function login(email: string, password: string): Promise<AuthResult>;
30
- /**
31
- * Get cached auth result or login if needed
32
- */
33
- export declare function getAuth(email: string, password: string): Promise<AuthResult>;
34
- /**
35
- * Clear cached auth (for re-login)
36
- */
37
- export declare function clearAuthCache(): void;
38
25
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/api/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,oBAAoB,CAAC;QAC3B,UAAU,EAAE;YACV,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,mBAAmB,EAAE,MAAM,CAAC;SAC7B,CAAC;KACH,CAAC;IACF,IAAI,CAAC,EAAE;QACL,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAuChF;AAKD;;GAEG;AACH,wBAAsB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAOlF;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/api/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAuWD;;;GAGG;AACH,wBAAsB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAwBhF"}
package/dist/api/auth.js CHANGED
@@ -1,62 +1,310 @@
1
1
  /**
2
2
  * Skylight Authentication
3
- * Handles login via email/password to obtain API token
3
+ * Handles the browser-style OAuth login flow used by Skylight web.
4
4
  */
5
- const BASE_URL = "https://app.ourskylight.com";
6
- /**
7
- * Login to Skylight with email and password
8
- * Returns the authentication token and user info
9
- */
10
- export async function login(email, password) {
11
- console.error(`[auth] Attempting login for ${email}...`);
12
- const response = await fetch(`${BASE_URL}/api/sessions`, {
5
+ import { createHash, randomUUID } from "node:crypto";
6
+ import { SKYLIGHT_API_VERSION, SKYLIGHT_BASE_URL, SKYLIGHT_WEB_APP_URL } from "./constants.js";
7
+ const REDIRECT_URI = `${SKYLIGHT_WEB_APP_URL}/welcome`;
8
+ const CLIENT_ID = "skylight-mobile";
9
+ const SCOPE = "everything";
10
+ const WEB_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:149.0) Gecko/20100101 Firefox/149.0";
11
+ class CookieJar {
12
+ cookies = new Map();
13
+ setFromResponse(response) {
14
+ const headerValues = typeof response.headers.getSetCookie === "function"
15
+ ? response.headers.getSetCookie().flatMap((headerValue) => splitSetCookieHeader(headerValue))
16
+ : splitSetCookieHeader(response.headers.get("set-cookie"));
17
+ for (const header of headerValues) {
18
+ const [cookiePair] = header.split(";", 1);
19
+ const separatorIndex = cookiePair.indexOf("=");
20
+ if (separatorIndex <= 0) {
21
+ continue;
22
+ }
23
+ const name = cookiePair.slice(0, separatorIndex).trim();
24
+ const value = cookiePair.slice(separatorIndex + 1).trim();
25
+ if (name && value) {
26
+ this.cookies.set(name, value);
27
+ }
28
+ }
29
+ }
30
+ toHeader() {
31
+ if (this.cookies.size === 0) {
32
+ return undefined;
33
+ }
34
+ return Array.from(this.cookies.entries())
35
+ .map(([name, value]) => `${name}=${value}`)
36
+ .join("; ");
37
+ }
38
+ }
39
+ function splitSetCookieHeader(headerValue) {
40
+ if (!headerValue) {
41
+ return [];
42
+ }
43
+ const cookies = [];
44
+ let current = "";
45
+ let inExpiresAttribute = false;
46
+ for (let index = 0; index < headerValue.length; index += 1) {
47
+ const char = headerValue[index];
48
+ const remainingHeader = headerValue.slice(index).toLowerCase();
49
+ if (!inExpiresAttribute && remainingHeader.startsWith("expires=")) {
50
+ inExpiresAttribute = true;
51
+ }
52
+ if (char === "," && !inExpiresAttribute) {
53
+ cookies.push(current.trim());
54
+ current = "";
55
+ continue;
56
+ }
57
+ if (inExpiresAttribute && char === ";") {
58
+ inExpiresAttribute = false;
59
+ }
60
+ current += char;
61
+ }
62
+ if (current.trim()) {
63
+ cookies.push(current.trim());
64
+ }
65
+ return cookies;
66
+ }
67
+ function createPkceVerifier() {
68
+ return randomUUID().replace(/-/g, "") + randomUUID().replace(/-/g, "");
69
+ }
70
+ function createPkceChallenge(verifier) {
71
+ return createHash("sha256").update(verifier).digest("base64url");
72
+ }
73
+ function createState() {
74
+ return randomUUID().replace(/-/g, "").slice(0, 10);
75
+ }
76
+ function buildAuthorizeUrl(params) {
77
+ const url = new URL("/oauth/authorize", SKYLIGHT_BASE_URL);
78
+ url.searchParams.set("client_id", CLIENT_ID);
79
+ url.searchParams.set("code_challenge", params.codeChallenge);
80
+ url.searchParams.set("code_challenge_method", "S256");
81
+ url.searchParams.set("redirect_uri", REDIRECT_URI);
82
+ url.searchParams.set("response_type", "code");
83
+ url.searchParams.set("scope", SCOPE);
84
+ url.searchParams.set("state", params.state);
85
+ if (params.prompt) {
86
+ url.searchParams.set("prompt", params.prompt);
87
+ }
88
+ return url.toString();
89
+ }
90
+ function parseAuthenticityToken(html) {
91
+ const match = html.match(/name=["']authenticity_token["'][^>]*value=["']([^"']+)["']/i);
92
+ if (!match) {
93
+ throw new Error("Could not find authenticity token in Skylight login form");
94
+ }
95
+ return match[1];
96
+ }
97
+ function parseAuthorizationCode(location, expectedState) {
98
+ const url = new URL(location);
99
+ const state = url.searchParams.get("state");
100
+ const code = url.searchParams.get("code");
101
+ if (!code) {
102
+ throw new Error("OAuth redirect did not include an authorization code");
103
+ }
104
+ if (state !== expectedState) {
105
+ throw new Error("OAuth state mismatch during Skylight login");
106
+ }
107
+ return code;
108
+ }
109
+ function getDeviceMetadata() {
110
+ const platform = process.platform === "darwin" ? "Macintosh" :
111
+ process.platform === "win32" ? "Windows" :
112
+ process.platform === "linux" ? "Linux" :
113
+ process.platform;
114
+ return {
115
+ skylight_api_client_device_fingerprint: randomUUID(),
116
+ skylight_api_client_device_platform: "web",
117
+ skylight_api_client_device_name: "unknown",
118
+ skylight_api_client_device_os_version: "unknown",
119
+ skylight_api_client_device_app_version: "unknown",
120
+ skylight_api_client_device_hardware: platform,
121
+ };
122
+ }
123
+ async function fetchWithCookies(url, init, cookieJar) {
124
+ const headers = new Headers(init.headers);
125
+ const cookieHeader = cookieJar.toHeader();
126
+ if (cookieHeader) {
127
+ headers.set("Cookie", cookieHeader);
128
+ }
129
+ const response = await fetch(url, {
130
+ ...init,
131
+ headers,
132
+ redirect: "manual",
133
+ });
134
+ cookieJar.setFromResponse(response);
135
+ return response;
136
+ }
137
+ async function beginOAuthFlow(state, codeChallenge, cookieJar) {
138
+ const response = await fetchWithCookies(buildAuthorizeUrl({ state, codeChallenge, prompt: "login" }), {
139
+ method: "GET",
140
+ headers: {
141
+ Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
142
+ "User-Agent": WEB_USER_AGENT,
143
+ Referer: `${SKYLIGHT_WEB_APP_URL}/`,
144
+ },
145
+ }, cookieJar);
146
+ const location = response.headers.get("location");
147
+ if (response.status !== 302 || !location) {
148
+ response.body?.cancel();
149
+ throw new Error(`Unexpected authorize response: HTTP ${response.status}`);
150
+ }
151
+ response.body?.cancel();
152
+ return new URL(location).toString();
153
+ }
154
+ async function loadLoginForm(loginUrl, cookieJar) {
155
+ const response = await fetchWithCookies(loginUrl, {
156
+ method: "GET",
157
+ headers: {
158
+ Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
159
+ "User-Agent": WEB_USER_AGENT,
160
+ Referer: `${SKYLIGHT_WEB_APP_URL}/`,
161
+ },
162
+ }, cookieJar);
163
+ if (!response.ok) {
164
+ response.body?.cancel();
165
+ throw new Error(`Failed to load Skylight login form: HTTP ${response.status}`);
166
+ }
167
+ return response.text();
168
+ }
169
+ async function submitLoginForm(email, password, authenticityToken, cookieJar) {
170
+ const body = new URLSearchParams({
171
+ authenticity_token: authenticityToken,
172
+ email,
173
+ password,
174
+ });
175
+ const response = await fetchWithCookies(`${SKYLIGHT_BASE_URL}/auth/session`, {
13
176
  method: "POST",
14
177
  headers: {
15
- "Content-Type": "application/json",
16
- Accept: "application/json",
178
+ Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
179
+ "Content-Type": "application/x-www-form-urlencoded",
180
+ Origin: SKYLIGHT_BASE_URL,
181
+ Referer: `${SKYLIGHT_BASE_URL}/auth/session/new`,
182
+ "User-Agent": WEB_USER_AGENT,
17
183
  },
18
- body: JSON.stringify({ email, password }),
184
+ body,
185
+ }, cookieJar);
186
+ const location = response.headers.get("location");
187
+ if (response.status === 302 && location) {
188
+ response.body?.cancel();
189
+ return new URL(location, SKYLIGHT_BASE_URL).toString();
190
+ }
191
+ const errorBody = await response.text();
192
+ if (response.status === 401 || response.status === 422) {
193
+ throw new Error("Invalid email or password. Please check your SKYLIGHT_EMAIL and SKYLIGHT_PASSWORD environment variables.");
194
+ }
195
+ throw new Error(`Skylight login form submission failed: HTTP ${response.status}${errorBody ? ` - ${errorBody.slice(0, 200)}` : ""}`);
196
+ }
197
+ async function authorizeAuthenticatedSession(authorizeUrl, cookieJar) {
198
+ const response = await fetchWithCookies(authorizeUrl, {
199
+ method: "GET",
200
+ headers: {
201
+ Accept: "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
202
+ Referer: `${SKYLIGHT_BASE_URL}/auth/session/new`,
203
+ "User-Agent": WEB_USER_AGENT,
204
+ },
205
+ }, cookieJar);
206
+ const location = response.headers.get("location");
207
+ if (response.status !== 302 || !location) {
208
+ response.body?.cancel();
209
+ throw new Error(`Unexpected post-login authorize response: HTTP ${response.status}`);
210
+ }
211
+ response.body?.cancel();
212
+ return location;
213
+ }
214
+ async function exchangeAuthorizationCode(code, codeVerifier) {
215
+ const tokenBody = new URLSearchParams({
216
+ grant_type: "authorization_code",
217
+ client_id: CLIENT_ID,
218
+ scope: SCOPE,
219
+ redirect_uri: REDIRECT_URI,
220
+ code,
221
+ code_verifier: codeVerifier,
222
+ ...getDeviceMetadata(),
223
+ });
224
+ const response = await fetch(`${SKYLIGHT_BASE_URL}/oauth/token`, {
225
+ method: "POST",
226
+ headers: {
227
+ Accept: "application/json, text/javascript; q=0.01",
228
+ "Content-Type": "application/x-www-form-urlencoded",
229
+ Origin: SKYLIGHT_WEB_APP_URL,
230
+ Referer: `${SKYLIGHT_WEB_APP_URL}/`,
231
+ "User-Agent": WEB_USER_AGENT,
232
+ },
233
+ body: tokenBody,
19
234
  });
20
- console.error(`[auth] Login response status: ${response.status}`);
21
235
  if (!response.ok) {
22
- let errorBody = "";
23
- try {
24
- errorBody = await response.text();
25
- console.error(`[auth] Login error response: ${errorBody}`);
236
+ const errorBody = await response.text();
237
+ throw new Error(`OAuth token exchange failed: HTTP ${response.status}${errorBody ? ` - ${errorBody.slice(0, 200)}` : ""}`);
238
+ }
239
+ const data = (await response.json());
240
+ const token = data.access_token ?? data.token;
241
+ if (!token) {
242
+ throw new Error("OAuth token exchange did not return an access token");
243
+ }
244
+ return token;
245
+ }
246
+ async function detectSubscriptionStatus(token) {
247
+ try {
248
+ const response = await fetch(`${SKYLIGHT_BASE_URL}/api/plus_access`, {
249
+ method: "GET",
250
+ headers: {
251
+ Accept: "application/json",
252
+ Authorization: `Bearer ${token}`,
253
+ Origin: SKYLIGHT_WEB_APP_URL,
254
+ Referer: `${SKYLIGHT_WEB_APP_URL}/`,
255
+ "Skylight-Api-Version": SKYLIGHT_API_VERSION,
256
+ "User-Agent": "SkylightMobile (web)",
257
+ },
258
+ });
259
+ if (response.status === 401 || response.status === 403 || response.status === 404) {
260
+ response.body?.cancel();
261
+ return "free";
262
+ }
263
+ if (!response.ok) {
264
+ response.body?.cancel();
265
+ return null;
26
266
  }
27
- catch {
28
- // ignore
267
+ const rawBody = await response.text();
268
+ if (!rawBody.trim()) {
269
+ return "plus";
29
270
  }
30
- if (response.status === 401) {
31
- throw new Error(`Invalid email or password. Please check your SKYLIGHT_EMAIL and SKYLIGHT_PASSWORD environment variables.`);
271
+ const body = JSON.parse(rawBody);
272
+ const text = JSON.stringify(body).toLowerCase();
273
+ if (text.includes("\"subscription_status\":\"plus\"") || text.includes("\"plus\":true") || text.includes("\"has_access\":true")) {
274
+ return "plus";
32
275
  }
33
- throw new Error(`Login failed: HTTP ${response.status}${errorBody ? ` - ${errorBody}` : ""}`);
276
+ if (text.includes("\"subscription_status\":\"free\"") || text.includes("\"plus\":false") || text.includes("\"has_access\":false")) {
277
+ return "free";
278
+ }
279
+ return "plus";
34
280
  }
35
- const data = (await response.json());
36
- console.error(`[auth] Login successful, token prefix: ${data.data.attributes.token.substring(0, 10)}...`);
37
- return {
38
- userId: data.data.id,
39
- email: data.data.attributes.email,
40
- token: data.data.attributes.token,
41
- subscriptionStatus: data.data.attributes.subscription_status,
42
- };
43
- }
44
- // Cache for auth result
45
- let cachedAuth = null;
46
- /**
47
- * Get cached auth result or login if needed
48
- */
49
- export async function getAuth(email, password) {
50
- if (cachedAuth) {
51
- return cachedAuth;
281
+ catch {
282
+ return null;
52
283
  }
53
- cachedAuth = await login(email, password);
54
- return cachedAuth;
55
284
  }
56
285
  /**
57
- * Clear cached auth (for re-login)
286
+ * Login to Skylight with email and password.
287
+ * Replays the same browser OAuth flow observed from Skylight web.
58
288
  */
59
- export function clearAuthCache() {
60
- cachedAuth = null;
289
+ export async function login(email, password) {
290
+ console.error("[auth] Starting OAuth login.");
291
+ const cookieJar = new CookieJar();
292
+ const state = createState();
293
+ const codeVerifier = createPkceVerifier();
294
+ const codeChallenge = createPkceChallenge(codeVerifier);
295
+ const loginUrl = await beginOAuthFlow(state, codeChallenge, cookieJar);
296
+ const loginHtml = await loadLoginForm(loginUrl, cookieJar);
297
+ const authenticityToken = parseAuthenticityToken(loginHtml);
298
+ const authorizeUrl = await submitLoginForm(email, password, authenticityToken, cookieJar);
299
+ const callbackLocation = await authorizeAuthenticatedSession(authorizeUrl, cookieJar);
300
+ const authorizationCode = parseAuthorizationCode(callbackLocation, state);
301
+ const token = await exchangeAuthorizationCode(authorizationCode, codeVerifier);
302
+ const subscriptionStatus = await detectSubscriptionStatus(token);
303
+ console.error("[auth] OAuth login successful.");
304
+ return {
305
+ email,
306
+ token,
307
+ subscriptionStatus,
308
+ };
61
309
  }
62
310
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/api/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,QAAQ,GAAG,6BAA6B,CAAC;AAwB/C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,KAAa,EAAE,QAAgB;IACzD,OAAO,CAAC,KAAK,CAAC,+BAA+B,KAAK,KAAK,CAAC,CAAC;IAEzD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,eAAe,EAAE;QACvD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;SAC3B;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;KAC1C,CAAC,CAAC;IAEH,OAAO,CAAC,KAAK,CAAC,iCAAiC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAElE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,gCAAgC,SAAS,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,0GAA0G,CAAC,CAAC;QAC9H,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,sBAAsB,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;IAEtD,OAAO,CAAC,KAAK,CAAC,0CAA0C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IAE1G,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;QACpB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;QACjC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;QACjC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB;KAC7D,CAAC;AACJ,CAAC;AAED,wBAAwB;AACxB,IAAI,UAAU,GAAsB,IAAI,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,KAAa,EAAE,QAAgB;IAC3D,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,UAAU,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,UAAU,GAAG,IAAI,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/api/auth.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,6 @@ export interface RequestOptions {
15
15
  export declare class SkylightClient {
16
16
  private config;
17
17
  private resolvedToken;
18
- private resolvedUserId;
19
18
  private loginPromise;
20
19
  private subscriptionStatus;
21
20
  constructor(config?: Config);
@@ -30,8 +29,8 @@ export declare class SkylightClient {
30
29
  private performLogin;
31
30
  /**
32
31
  * Build the Authorization header
33
- * For email/password auth: Basic base64(userId:token)
34
- * For manual token auth: Bearer or Basic based on config
32
+ * Email/password auth now resolves to an OAuth bearer token.
33
+ * Manual token auth still respects the configured auth type.
35
34
  */
36
35
  private getAuthHeader;
37
36
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAWrE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,kBAAkB,CAA4B;gBAE1C,MAAM,CAAC,EAAE,MAAM;IAI3B;;;OAGG;YACW,cAAc;IA6B5B;;OAEG;YACW,YAAY;IAa1B;;;;OAIG;YACW,aAAa;IAgB3B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAchB;;OAEG;YACW,mBAAmB;IAyCjC;;OAEG;IACG,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IA6C7F;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1G;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,qBAAqB,IAAI,kBAAkB;IAI3C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGlC;AAKD,wBAAgB,SAAS,IAAI,cAAc,CAK1C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,cAAc,CAAC,CAIhE"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAUrE;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAElE,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,kBAAkB,CAA4B;gBAE1C,MAAM,CAAC,EAAE,MAAM;IAI3B;;;OAGG;YACW,cAAc;IA2B5B;;OAEG;YACW,YAAY;IAa1B;;;;OAIG;YACW,aAAa;IAc3B;;OAEG;IACH,OAAO,CAAC,QAAQ;IAchB;;OAEG;YACW,mBAAmB;IAwCjC;;OAEG;IACG,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;IA8C7F;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1G;;OAEG;IACG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D;;OAEG;IACH,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;OAEG;IACH,OAAO,IAAI,OAAO;IAIlB;;OAEG;IACH,qBAAqB,IAAI,kBAAkB;IAI3C;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGlC;AAKD,wBAAgB,SAAS,IAAI,cAAc,CAK1C;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,cAAc,CAAC,CAIhE"}
@@ -1,7 +1,7 @@
1
1
  import { getConfig, usesEmailAuth } from "../config.js";
2
2
  import { login } from "./auth.js";
3
+ import { SKYLIGHT_API_VERSION, SKYLIGHT_BASE_URL } from "./constants.js";
3
4
  import { AuthenticationError, NotFoundError, RateLimitError, SkylightError, } from "../utils/errors.js";
4
- const BASE_URL = "https://app.ourskylight.com";
5
5
  /**
6
6
  * Skylight API Client
7
7
  * Handles authentication and HTTP requests to the Skylight API
@@ -9,7 +9,6 @@ const BASE_URL = "https://app.ourskylight.com";
9
9
  export class SkylightClient {
10
10
  config;
11
11
  resolvedToken = null;
12
- resolvedUserId = null;
13
12
  loginPromise = null;
14
13
  subscriptionStatus = null;
15
14
  constructor(config) {
@@ -22,23 +21,21 @@ export class SkylightClient {
22
21
  async getCredentials() {
23
22
  // If we already have a resolved token, use it
24
23
  if (this.resolvedToken) {
25
- return { token: this.resolvedToken, userId: this.resolvedUserId };
24
+ return { token: this.resolvedToken };
26
25
  }
27
26
  // If using token-based auth, use the configured token
28
27
  if (!usesEmailAuth(this.config)) {
29
- return { token: this.config.token, userId: null };
28
+ return { token: this.config.token };
30
29
  }
31
30
  // If already logging in, wait for that to complete
32
31
  if (this.loginPromise) {
33
- const result = await this.loginPromise;
34
- return { token: result.token, userId: result.userId };
32
+ return this.loginPromise;
35
33
  }
36
34
  // Login with email/password
37
35
  this.loginPromise = this.performLogin();
38
36
  try {
39
37
  const result = await this.loginPromise;
40
38
  this.resolvedToken = result.token;
41
- this.resolvedUserId = result.userId;
42
39
  return result;
43
40
  }
44
41
  finally {
@@ -56,20 +53,18 @@ export class SkylightClient {
56
53
  console.error("Logging in to Skylight...");
57
54
  const result = await login(email, password);
58
55
  this.subscriptionStatus = result.subscriptionStatus;
59
- console.error(`Logged in as ${result.email} (${result.subscriptionStatus})`);
60
- return { token: result.token, userId: result.userId };
56
+ console.error(`Logged in as ${result.email}${result.subscriptionStatus ? ` (${result.subscriptionStatus})` : ""}`);
57
+ return { token: result.token };
61
58
  }
62
59
  /**
63
60
  * Build the Authorization header
64
- * For email/password auth: Basic base64(userId:token)
65
- * For manual token auth: Bearer or Basic based on config
61
+ * Email/password auth now resolves to an OAuth bearer token.
62
+ * Manual token auth still respects the configured auth type.
66
63
  */
67
64
  async getAuthHeader() {
68
- const { token, userId } = await this.getCredentials();
69
- // If using email/password auth, use Basic auth with userId:token
70
- if (usesEmailAuth(this.config) && userId) {
71
- const credentials = Buffer.from(`${userId}:${token}`).toString("base64");
72
- return `Basic ${credentials}`;
65
+ const { token } = await this.getCredentials();
66
+ if (usesEmailAuth(this.config)) {
67
+ return `Bearer ${token}`;
73
68
  }
74
69
  // For manual token config, respect the authType setting
75
70
  if (this.config.authType === "basic") {
@@ -81,7 +76,7 @@ export class SkylightClient {
81
76
  * Build URL with query parameters
82
77
  */
83
78
  buildUrl(endpoint, params) {
84
- const url = new URL(endpoint, BASE_URL);
79
+ const url = new URL(endpoint, SKYLIGHT_BASE_URL);
85
80
  if (params) {
86
81
  for (const [key, value] of Object.entries(params)) {
87
82
  if (value !== undefined) {
@@ -99,7 +94,6 @@ export class SkylightClient {
99
94
  if (status === 401) {
100
95
  // Clear cached credentials on auth failure
101
96
  this.resolvedToken = null;
102
- this.resolvedUserId = null;
103
97
  console.error(`[client] 401 Unauthorized for ${url}`);
104
98
  if (usesEmailAuth(this.config)) {
105
99
  throw new AuthenticationError("API request returned 401. This may indicate your frame ID is incorrect or doesn't belong to this account. " +
@@ -139,6 +133,8 @@ export class SkylightClient {
139
133
  const headers = {
140
134
  Authorization: await this.getAuthHeader(),
141
135
  Accept: "application/json",
136
+ "User-Agent": "SkylightMobile (web)",
137
+ "Skylight-Api-Version": SKYLIGHT_API_VERSION,
142
138
  };
143
139
  if (body) {
144
140
  headers["Content-Type"] = "application/json";
@@ -154,7 +150,6 @@ export class SkylightClient {
154
150
  if (response.status === 401 && usesEmailAuth(this.config) && !isRetry) {
155
151
  console.error("[client] Got 401, attempting re-login...");
156
152
  this.resolvedToken = null;
157
- this.resolvedUserId = null;
158
153
  return this.request(endpoint, options, true);
159
154
  }
160
155
  await this.handleResponseError(response, url);
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const SKYLIGHT_BASE_URL = "https://app.ourskylight.com";
2
+ export declare const SKYLIGHT_WEB_APP_URL = "https://ourskylight.com";
3
+ export declare const SKYLIGHT_API_VERSION = "2026-03-01";
4
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/api/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,gCAAgC,CAAC;AAC/D,eAAO,MAAM,oBAAoB,4BAA4B,CAAC;AAC9D,eAAO,MAAM,oBAAoB,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ export const SKYLIGHT_BASE_URL = "https://app.ourskylight.com";
2
+ export const SKYLIGHT_WEB_APP_URL = "https://ourskylight.com";
3
+ export const SKYLIGHT_API_VERSION = "2026-03-01";
4
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/api/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AAC9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC"}
@@ -29,7 +29,7 @@ Use this to answer:
29
29
  }
30
30
  const categoryList = categories
31
31
  .map((cat) => {
32
- const parts = [`- ${cat.attributes.label ?? "Unnamed"}`];
32
+ const parts = [`- ${cat.attributes.label ?? "Unnamed"} (ID: ${cat.id})`];
33
33
  if (cat.attributes.color) {
34
34
  parts.push(` Color: ${cat.attributes.color}`);
35
35
  }
@@ -51,7 +51,7 @@ Use this to answer:
51
51
  const memberList = members
52
52
  .map((member) => {
53
53
  const attrs = member.attributes;
54
- const parts = [`- ${attrs.label ?? "Unnamed"}`];
54
+ const parts = [`- ${attrs.label ?? "Unnamed"} (ID: ${member.id})`];
55
55
  if (attrs.color) {
56
56
  parts.push(` Color: ${attrs.color}`);
57
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"family.js","sourceRoot":"","sources":["../../src/tools/family.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,0BAA0B;IAC1B,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB;;;;;;;gCAO4B,EAC5B,EAAE,EACF,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAEzC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,8BAA8B;gBAC9B,MAAM,UAAU,GAAG,MAAM,aAAa,EAAE,CAAC;gBACzC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,oDAAoD;6BAC3D;yBACF;qBACF,CAAC;gBACJ,CAAC;gBAED,MAAM,YAAY,GAAG,UAAU;qBAC5B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;oBACX,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;oBACzD,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;wBACzB,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjD,CAAC;oBACD,IAAI,GAAG,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC;wBAC5C,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;oBACtC,CAAC;oBACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC,CAAC;qBACD,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEhB,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,6CAA6C,YAAY,EAAE;yBAClE;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,OAAO;iBACvB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACd,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;gBAChC,MAAM,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;gBAEhD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;oBAChB,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBACxC,CAAC;gBACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAC3C,CAAC;gBACD,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;oBACnC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBACtC,CAAC;gBAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,CAAC;YAEhB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,sBAAsB,UAAU,EAAE;qBACzC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC;qBAC/B;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,sBAAsB;IACtB,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB;;;;;;wBAMoB,EACpB,EAAE,EACF,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;YAE/B,MAAM,KAAK,GAAG,CAAC,aAAa,KAAK,CAAC,EAAE,EAAE,EAAE,SAAS,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAE/D,qBAAqB;YACrB,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBAC1C,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;qBACvB;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC;qBAC/B;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,mBAAmB;IACnB,MAAM,CAAC,IAAI,CACT,aAAa,EACb;;;;4CAIwC,EACxC,EAAE,EACF,KAAK,IAAI,EAAE;QACT,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;YAEnC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,4BAA4B;yBACnC;qBACF;iBACF,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,OAAO;iBACvB,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACd,MAAM,KAAK,GAAG,CAAC,iBAAiB,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;gBAE9C,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;gBAChC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBAC1C,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;gBAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC,CAAC;iBACD,IAAI,CAAC,MAAM,CAAC,CAAC;YAEhB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,wBAAwB,UAAU,EAAE;qBAC3C;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC;qBAC/B;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"family.js","sourceRoot":"","sources":["../../src/tools/family.ts"],"names":[],"mappings":"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"}
@@ -67,9 +67,9 @@ export function formatErrorForMcp(error) {
67
67
  return `Authentication Error: ${error.message}
68
68
 
69
69
  Your Skylight token may have expired. To fix this:
70
- 1. Open the Skylight app on your device
71
- 2. Capture fresh API traffic using a proxy tool
72
- 3. Update your SKYLIGHT_TOKEN environment variable
70
+ 1. If using email/password auth, retry with valid SKYLIGHT_EMAIL and SKYLIGHT_PASSWORD
71
+ 2. If using a manual token, capture fresh API traffic using a proxy tool
72
+ 3. Update your SKYLIGHT_TOKEN environment variable if you are using manual token auth
73
73
 
74
74
  See the auth documentation for detailed steps.`;
75
75
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bmhall2/skylight-mcp",
3
- "version": "1.1.8",
3
+ "version": "1.1.10",
4
4
  "description": "MCP server for Skylight Calendar API - enables agentic interactions for calendar, chores, lists, and family management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",