@valentia-ai-skills/framework 1.0.6 → 1.0.8

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.
Files changed (2) hide show
  1. package/bin/cli.js +19 -14
  2. package/package.json +2 -2
package/bin/cli.js CHANGED
@@ -248,9 +248,15 @@ async function requestOtpForEmail(emailInput) {
248
248
 
249
249
  // OTP sent successfully
250
250
  console.log(c("green", `\n✓ Found: ${response.user_name}`));
251
- console.log(c("dim", ` A verification code has been sent to ${email}\n`));
252
251
 
253
- return email;
252
+ if (response.fallback_code) {
253
+ // Email delivery not configured — show code in terminal
254
+ console.log(c("yellow", `\n Your verification code: ${c("bold", response.fallback_code)}\n`));
255
+ } else {
256
+ console.log(c("dim", ` A verification code has been sent to ${email}\n`));
257
+ }
258
+
259
+ return { email, fallbackCode: response.fallback_code || null };
254
260
  }
255
261
  }
256
262
 
@@ -298,11 +304,11 @@ async function cmdSetup() {
298
304
 
299
305
  let skills;
300
306
  let teamName = null;
301
- let useRemote = true;
302
307
 
303
308
  try {
304
309
  // 3. Request OTP (with 1 retry for wrong email)
305
- email = await requestOtpForEmail(email);
310
+ const otpResult = await requestOtpForEmail(email);
311
+ email = otpResult.email;
306
312
 
307
313
  // 4. Verify OTP and get skills
308
314
  const response = await verifyOtp(email);
@@ -330,11 +336,9 @@ async function cmdSetup() {
330
336
  console.log(` ${c("bold", skills.length)} skill(s) to install\n`);
331
337
 
332
338
  } catch (err) {
333
- console.log(c("yellow", `\n Could not reach skills server: ${err.message}`));
334
- console.log(c("dim", " Falling back to local skills from npm package...\n"));
335
-
336
- skills = getLocalSkills();
337
- useRemote = false;
339
+ console.log(c("red", `\n Could not complete verification: ${err.message}`));
340
+ console.log(c("dim", " Please check your internet connection and try again.\n"));
341
+ process.exit(1);
338
342
  }
339
343
 
340
344
  if (skills.length === 0) {
@@ -362,7 +366,7 @@ async function cmdSetup() {
362
366
  version: require(path.join(__dirname, "..", "package.json")).version,
363
367
  email,
364
368
  team: teamName,
365
- source: useRemote ? "supabase" : "local",
369
+ source: "supabase",
366
370
  tools,
367
371
  skills: skills.map((s) => ({ name: s.name, scope: s.scope, version: s.version })),
368
372
  installedAt: new Date().toISOString(),
@@ -395,7 +399,8 @@ async function cmdUpdate() {
395
399
 
396
400
  try {
397
401
  // Request OTP for the saved email
398
- await requestOtpForEmail(email);
402
+ const otpResult = await requestOtpForEmail(email);
403
+ email = otpResult.email;
399
404
 
400
405
  // Verify OTP
401
406
  const response = await verifyOtp(email);
@@ -408,9 +413,9 @@ async function cmdUpdate() {
408
413
  console.log(c("yellow", `⚠ ${response.message || "No team found."}`));
409
414
  }
410
415
  } catch (err) {
411
- console.log(c("yellow", `⚠ Server unreachable: ${err.message}`));
412
- console.log(c("dim", " Using local fallback...\n"));
413
- skills = getLocalSkills();
416
+ console.log(c("red", `\n✗ Could not complete verification: ${err.message}`));
417
+ console.log(c("dim", " Please check your internet connection and try again.\n"));
418
+ process.exit(1);
414
419
  }
415
420
 
416
421
  const tools = config.tools || detectTools();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@valentia-ai-skills/framework",
3
- "version": "1.0.6",
4
- "description": "AI development skills framework — centralized coding standards, security patterns, and SOPs for AI-assisted development. Works with Claude Code, Cursor, Copilot, Windsurf, and any AI coding tool.",
3
+ "version": "1.0.8",
4
+ "description": "AI development skills framework — centralized coding standards, security patterns, and SOPs for AI-assisted development. Works with Claude Code, Cursor, Copilot, Windsurf, and any AI coding tool.",
5
5
  "keywords": [
6
6
  "ai-skills",
7
7
  "claude-code",