buildwithnexus 0.6.8 → 0.6.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.
package/dist/bin.js CHANGED
@@ -16,14 +16,15 @@ __export(init_command_exports, {
16
16
  });
17
17
  import fs from "fs";
18
18
  import path from "path";
19
- import { input, confirm } from "@inquirer/prompts";
19
+ import os from "os";
20
+ import { input, confirm, password } from "@inquirer/prompts";
20
21
  async function deepAgentsInitCommand() {
21
22
  console.log(`
22
23
  \u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557
23
24
  \u2551 Deep Agents -- First Time Setup \u2551
24
25
  \u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D
25
26
  `);
26
- const envPath = path.join(process.cwd(), ".env.local");
27
+ const envPath = path.join(os.homedir(), ".env.local");
27
28
  const hasEnv = fs.existsSync(envPath);
28
29
  if (hasEnv) {
29
30
  const shouldReset = await confirm({
@@ -38,19 +39,17 @@ async function deepAgentsInitCommand() {
38
39
  console.log(
39
40
  "Please provide your LLM API keys:\n(You can set these later by editing .env.local)\n"
40
41
  );
41
- const anthropicKey = await input({
42
+ const anthropicKey = await password({
42
43
  message: "ANTHROPIC_API_KEY (Claude)",
43
- default: "",
44
44
  validate: (val) => {
45
45
  if (!val) {
46
- return "At least one API key is required";
46
+ return "API key is required";
47
47
  }
48
48
  return true;
49
49
  }
50
50
  });
51
- const openaiKey = await input({
52
- message: "OPENAI_API_KEY (GPT - optional)",
53
- default: ""
51
+ const openaiKey = await password({
52
+ message: "OPENAI_API_KEY (GPT - optional, press Enter to skip)"
54
53
  });
55
54
  const backendUrl = await input({
56
55
  message: "Backend URL",
@@ -117,7 +116,7 @@ function getVersion() {
117
116
  const packageJson = JSON.parse(readFileSync(packagePath, "utf-8"));
118
117
  return packageJson.version;
119
118
  } catch {
120
- return true ? "0.6.8" : "0.0.0-unknown";
119
+ return true ? "0.6.10" : "0.0.0-unknown";
121
120
  }
122
121
  }
123
122
  function showBanner() {
@@ -1025,10 +1024,10 @@ var log = {
1025
1024
  };
1026
1025
 
1027
1026
  // src/core/platform.ts
1028
- import os from "os";
1027
+ import os2 from "os";
1029
1028
  function detectPlatform() {
1030
- const platform = os.platform();
1031
- const arch = os.arch();
1029
+ const platform = os2.platform();
1030
+ const arch = os2.arch();
1032
1031
  if (platform === "darwin") {
1033
1032
  return {
1034
1033
  os: "mac",
@@ -1483,7 +1482,7 @@ import { Command as Command2 } from "commander";
1483
1482
  import chalk7 from "chalk";
1484
1483
 
1485
1484
  // src/ui/prompts.ts
1486
- import { confirm as confirm2, password } from "@inquirer/prompts";
1485
+ import { confirm as confirm2, password as password2 } from "@inquirer/prompts";
1487
1486
  import chalk6 from "chalk";
1488
1487
 
1489
1488
  // src/core/dlp.ts
@@ -1629,7 +1628,7 @@ function audit(event, detail = "") {
1629
1628
  // src/ui/prompts.ts
1630
1629
  async function promptInitConfig() {
1631
1630
  console.log(chalk6.bold("\n API Keys\n"));
1632
- const anthropicKey = await password({
1631
+ const anthropicKey = await password2({
1633
1632
  message: "Anthropic API key (required):",
1634
1633
  mask: "*",
1635
1634
  validate: (val) => {
@@ -1643,7 +1642,7 @@ async function promptInitConfig() {
1643
1642
  return true;
1644
1643
  }
1645
1644
  });
1646
- const openaiKey = await password({
1645
+ const openaiKey = await password2({
1647
1646
  message: "OpenAI API key (optional, press Enter to skip):",
1648
1647
  mask: "*",
1649
1648
  validate: (val) => {
@@ -1656,7 +1655,7 @@ async function promptInitConfig() {
1656
1655
  return true;
1657
1656
  }
1658
1657
  });
1659
- const googleKey = await password({
1658
+ const googleKey = await password2({
1660
1659
  message: "Google AI API key (optional, press Enter to skip):",
1661
1660
  mask: "*",
1662
1661
  validate: (val) => {
@@ -2404,7 +2403,7 @@ var destroyCommand = new Command9("destroy").description("Remove NEXUS VM and al
2404
2403
 
2405
2404
  // src/commands/keys.ts
2406
2405
  import { Command as Command10 } from "commander";
2407
- import { password as password2 } from "@inquirer/prompts";
2406
+ import { password as password3 } from "@inquirer/prompts";
2408
2407
  import chalk11 from "chalk";
2409
2408
  var keysCommand = new Command10("keys").description("Manage API keys");
2410
2409
  keysCommand.command("list").description("Show configured API keys (masked)").action(() => {
@@ -2439,7 +2438,7 @@ keysCommand.command("set <key>").description("Set or update an API key (e.g. ANT
2439
2438
  log.dim(`Valid keys: ${validKeys.join(", ")}`);
2440
2439
  process.exit(1);
2441
2440
  }
2442
- const value = await password2({ message: `Enter value for ${upper}:`, mask: "*" });
2441
+ const value = await password3({ message: `Enter value for ${upper}:`, mask: "*" });
2443
2442
  if (!value) {
2444
2443
  log.warn("Empty value \u2014 key not changed");
2445
2444
  return;
@@ -3029,8 +3028,8 @@ var EventStream = class {
3029
3028
  };
3030
3029
 
3031
3030
  // src/commands/shell.ts
3032
- async function httpPost(httpPort, path10, body) {
3033
- const res = await fetch(`http://localhost:${httpPort}${path10}`, {
3031
+ async function httpPost(httpPort, path11, body) {
3032
+ const res = await fetch(`http://localhost:${httpPort}${path11}`, {
3034
3033
  method: "POST",
3035
3034
  headers: { "Content-Type": "application/json" },
3036
3035
  body: JSON.stringify(body),
@@ -3045,9 +3044,9 @@ async function httpPost(httpPort, path10, body) {
3045
3044
  return text;
3046
3045
  }
3047
3046
  }
3048
- async function httpGet(httpPort, path10) {
3047
+ async function httpGet(httpPort, path11) {
3049
3048
  try {
3050
- const res = await fetch(`http://localhost:${httpPort}${path10}`, {
3049
+ const res = await fetch(`http://localhost:${httpPort}${path11}`, {
3051
3050
  signal: AbortSignal.timeout(1e4)
3052
3051
  });
3053
3052
  const text = await res.text();
@@ -3472,7 +3471,7 @@ function getVersionStatic() {
3472
3471
  const packageJson = JSON.parse(readFileSync2(packagePath, "utf-8"));
3473
3472
  return packageJson.version;
3474
3473
  } catch {
3475
- return true ? "0.6.8" : "0.0.0-unknown";
3474
+ return true ? "0.6.10" : "0.0.0-unknown";
3476
3475
  }
3477
3476
  }
3478
3477
  var cli = new Command15().name("buildwithnexus").description("Auto-scaffold and launch a fully autonomous NEXUS runtime").version(getVersionStatic());
@@ -3497,12 +3496,12 @@ cli.action(() => {
3497
3496
  // src/core/update-notifier.ts
3498
3497
  import fs8 from "fs";
3499
3498
  import path9 from "path";
3500
- import os2 from "os";
3499
+ import os3 from "os";
3501
3500
  import https from "https";
3502
3501
  import chalk17 from "chalk";
3503
3502
  var PACKAGE_NAME = "buildwithnexus";
3504
3503
  var CHECK_INTERVAL_MS = 4 * 60 * 60 * 1e3;
3505
- var STATE_DIR = path9.join(os2.homedir(), ".buildwithnexus");
3504
+ var STATE_DIR = path9.join(os3.homedir(), ".buildwithnexus");
3506
3505
  var STATE_FILE = path9.join(STATE_DIR, ".update-check.json");
3507
3506
  function readState() {
3508
3507
  try {
@@ -3589,8 +3588,11 @@ function printUpdateBanner(current, latest) {
3589
3588
 
3590
3589
  // src/bin.ts
3591
3590
  import dotenv from "dotenv";
3592
- dotenv.config({ path: ".env.local" });
3593
- var version = true ? "0.6.8" : "0.5.17";
3591
+ import os4 from "os";
3592
+ import path10 from "path";
3593
+ var homeEnvPath = path10.join(os4.homedir(), ".env.local");
3594
+ dotenv.config({ path: homeEnvPath });
3595
+ var version = true ? "0.6.10" : "0.5.17";
3594
3596
  checkForUpdates(version);
3595
3597
  program.name("buildwithnexus").description("Deep Agents - AI-Powered Task Execution").version(version);
3596
3598
  program.command("da-init").description("Initialize Deep Agents (set up API keys and .env.local)").action(deepAgentsInitCommand);
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "buildwithnexus",
3
- "version": "0.6.8",
3
+ "version": "0.6.10",
4
4
  "description": "Interactive AI agent orchestrator with intent-based planning, execution, and brainstorming modes",
5
5
  "type": "module",
6
6
  "bin": {