@arts1234567/arc-code 0.1.4 → 0.1.6

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/README.md CHANGED
@@ -10,12 +10,12 @@ Arc-code is an agentic coding assistant that runs in your terminal. It can read
10
10
 
11
11
  **Mac / Linux:**
12
12
  ```bash
13
- curl -fsSL https://github.com/artsblr-bot/arc-code/releases/download/v0.1.0/install.sh | bash
13
+ curl -fsSL https://github.com/artsblr-bot/arc-code/releases/download/v0.1.4/install.sh | bash
14
14
  ```
15
15
 
16
16
  **Windows (PowerShell):**
17
17
  ```powershell
18
- iwr -useb https://github.com/artsblr-bot/arc-code/releases/download/v0.1.0/install.ps1 | iex
18
+ iwr -useb https://github.com/artsblr-bot/arc-code/releases/download/v0.1.4/install.ps1 | iex
19
19
  ```
20
20
 
21
21
  Then run:
package/dist/config.js CHANGED
@@ -27,7 +27,7 @@ function reconstructKey() {
27
27
  return dec(P1) + dec(P2) + dec(P3);
28
28
  }
29
29
  export const CONFIG = {
30
- VERSION: "0.1.4",
30
+ VERSION: "0.1.6",
31
31
  MODEL_NAME: "Arc 3.4 Ultra",
32
32
  MODEL_ID: "qwen/qwen3.5-397b-a17b",
33
33
  API_BASE: "https://integrate.api.nvidia.com/v1",
@@ -26,7 +26,8 @@ You have ten tools. Use the smallest set that solves the task.
26
26
 
27
27
  BEHAVIOR
28
28
  - Think before acting. Show your reasoning briefly so the user can follow.
29
- - Keep prose tight. Prefer showing code or tool output over describing it.
29
+ - Keep prose tight. Be concise.
30
+ - When creating or modifying files, ALWAYS use write_file / edit_file. Never output large file contents as chat text — write them with the write_file tool.
30
31
  - If a tool fails, try a different approach instead of repeating the same call.
31
32
  - When done, give a short summary of what changed and why.
32
33
  - For questions or informational queries, always synthesize a clear, concise final answer for the user after gathering data. Do not silently stop after running a tool.
@@ -1 +1 @@
1
- {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/llm/system.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,4EAA4E;AAC5E,gFAAgF;AAEhF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAmC2D,CAAC"}
1
+ {"version":3,"file":"system.js","sourceRoot":"","sources":["../../src/llm/system.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,4EAA4E;AAC5E,gFAAgF;AAEhF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wFAoC2D,CAAC"}
@@ -26,16 +26,16 @@ function renderMessage(m, isActive) {
26
26
  switch (m.kind) {
27
27
  // ── Startup banner ───────────────────────────────────────────────────────
28
28
  case "banner":
29
- return React.createElement(Box, { key: m.id, flexDirection: "column" }, ...m.content.split("\n").map((line, i) => React.createElement(Text, { key: i, color: "#FF6B35", bold: line.includes("✦") }, line)));
29
+ return React.createElement(Box, { key: m.id, flexDirection: "column" }, ...m.content.split("\n").map((line, i) => React.createElement(Text, { key: i, color: "#C97A4A", bold: line.includes("✦") }, line)));
30
30
  // ── Slash command echo ───────────────────────────────────────────────────
31
31
  case "command":
32
- return React.createElement(Box, { key: m.id, flexDirection: "row", marginTop: 1 }, React.createElement(Text, { color: "#FFB74D", bold: true }, "❯ "), React.createElement(Text, { color: "#FFD180", bold: true }, m.content));
32
+ return React.createElement(Box, { key: m.id, flexDirection: "row", marginTop: 1 }, React.createElement(Text, { color: "#CC9A50", bold: true }, "❯ "), React.createElement(Text, { color: "#C4A870", bold: true }, m.content));
33
33
  // ── User prompt ──────────────────────────────────────────────────────────
34
34
  case "user":
35
- return React.createElement(Box, { key: m.id, flexDirection: "column", marginTop: 1 }, React.createElement(Box, { flexDirection: "row" }, React.createElement(Text, { color: "#FF6B35", bold: true }, "› You"), React.createElement(Text, { color: "#333" }, " ─────────────────")), React.createElement(Box, { marginLeft: 2, marginTop: 0 }, React.createElement(Text, { color: "#FFD180" }, m.content)));
35
+ return React.createElement(Box, { key: m.id, flexDirection: "column", marginTop: 1 }, React.createElement(Box, { flexDirection: "row" }, React.createElement(Text, { color: "#C97A4A", bold: true }, "› You"), React.createElement(Text, { color: "#333" }, " ─────────────────")), React.createElement(Box, { marginLeft: 2, marginTop: 0 }, React.createElement(Text, { color: "#C4A870" }, m.content)));
36
36
  // ── Assistant reply ──────────────────────────────────────────────────────
37
37
  case "assistant":
38
- return React.createElement(Box, { key: m.id, flexDirection: "column", marginTop: 1 }, React.createElement(Box, { flexDirection: "row" }, React.createElement(Text, { color: "#FF6B35", bold: true }, "◉ Arc 3.4 Ultra"), React.createElement(Text, { color: "#333" }, " ──────────────")), React.createElement(Box, { marginLeft: 2 }, React.createElement(Text, { color: "#F5F5F5" }, isActive ? tailLines(m.content, 15) : m.content)));
38
+ return React.createElement(Box, { key: m.id, flexDirection: "column", marginTop: 1 }, React.createElement(Box, { flexDirection: "row" }, React.createElement(Text, { color: "#C97A4A", bold: true }, "◉ Arc 3.4 Ultra"), React.createElement(Text, { color: "#333" }, " ──────────────")), React.createElement(Box, { marginLeft: 2 }, React.createElement(Text, { color: "#F5F5F5" }, isActive ? tailLines(m.content, 15) : m.content)));
39
39
  // ── Reasoning / thinking block ───────────────────────────────────────────
40
40
  case "reasoning":
41
41
  return React.createElement(Box, { key: m.id, flexDirection: "column", marginLeft: 2 }, React.createElement(Text, { color: "#444", dimColor: true }, " ┊ thinking"), React.createElement(Box, { marginLeft: 4, borderLeft: false }, React.createElement(Text, { color: "#555", dimColor: true }, isActive ? tailLines(m.content, 5) : truncate(m.content, 600))));
@@ -44,7 +44,7 @@ function renderMessage(m, isActive) {
44
44
  const toolName = m.meta ?? "tool";
45
45
  // read_image gets a purple camera icon; all others get the orange gear
46
46
  const isImage = toolName === "read_image";
47
- return React.createElement(Box, { key: m.id, marginLeft: 2, flexDirection: "row", marginTop: 0 }, React.createElement(Text, { color: isImage ? "#CE93D8" : "#FF6B35" }, isImage ? " 🖼 " : " ⚙ "), React.createElement(Text, { color: isImage ? "#CE93D8" : "#FFB74D", bold: true }, toolName), React.createElement(Text, { color: "#555" }, " → running"));
47
+ return React.createElement(Box, { key: m.id, marginLeft: 2, flexDirection: "row", marginTop: 0 }, React.createElement(Text, { color: isImage ? "#CE93D8" : "#C97A4A" }, isImage ? " 🖼 " : " ⚙ "), React.createElement(Text, { color: isImage ? "#CE93D8" : "#CC9A50", bold: true }, toolName), React.createElement(Text, { color: "#555" }, " → running"));
48
48
  }
49
49
  // ── Tool result ──────────────────────────────────────────────────────────
50
50
  case "tool_result": {
@@ -65,9 +65,9 @@ function renderMessage(m, isActive) {
65
65
  case "compaction":
66
66
  return React.createElement(Box, { key: m.id, marginTop: 1, flexDirection: "column" }, React.createElement(Box, {
67
67
  borderStyle: "single",
68
- borderColor: "#FFB300",
68
+ borderColor: "#B88A30",
69
69
  paddingX: 2,
70
- }, React.createElement(Text, { color: "#FFB300", bold: true }, "⟳ Context Compacted"), React.createElement(Text, { color: "#888" }, " " + m.content)));
70
+ }, React.createElement(Text, { color: "#B88A30", bold: true }, "⟳ Context Compacted"), React.createElement(Text, { color: "#888" }, " " + m.content)));
71
71
  // ── System / command output ──────────────────────────────────────────────
72
72
  case "system":
73
73
  default:
@@ -78,7 +78,7 @@ function renderMessage(m, isActive) {
78
78
  return React.createElement(Box, { key: m.id, flexDirection: "column", marginTop: 0 }, ...lines.map((line, i) => React.createElement(Text, {
79
79
  key: i,
80
80
  color: line.startsWith("┌") || line.startsWith("│") || line.startsWith("└")
81
- ? "#FF6B35"
81
+ ? "#C97A4A"
82
82
  : line.startsWith(" ├") || line.startsWith(" └") || line.startsWith(" ─")
83
83
  ? "#555"
84
84
  : "#888",
@@ -78,12 +78,12 @@ export const InputBar = ({ onSubmit, disabled, working, mode = "build", }) => {
78
78
  }
79
79
  });
80
80
  const isCommand = value.startsWith("/");
81
- const brandColor = mode === "plan" ? "#00E5FF" : "#FF6B35";
82
- const glowColor = mode === "plan" ? "#18FFFF" : "#FFB74D";
83
- const workingColor = mode === "plan" ? "#84FFFF" : "#FF8C42";
81
+ const brandColor = mode === "plan" ? "#00E5FF" : "#C97A4A";
82
+ const glowColor = mode === "plan" ? "#18FFFF" : "#CC9A50";
83
+ const workingColor = mode === "plan" ? "#84FFFF" : "#C47A48";
84
84
  const label = mode === "plan" ? "Arc 3.4 [Plan]" : "Arc 3.4 [Build]";
85
85
  const promptColor = (disabled && !isCommand) ? "#444" : isCommand ? glowColor : brandColor;
86
- const textColor = (disabled && !isCommand) ? "#444" : isCommand ? (mode === "plan" ? "#E0F7FA" : "#FFD180") : "#F5F5F5";
86
+ const textColor = (disabled && !isCommand) ? "#444" : isCommand ? (mode === "plan" ? "#E0F7FA" : "#C4A870") : "#F5F5F5";
87
87
  const borderColor = working
88
88
  ? brandColor
89
89
  : isCommand
@@ -109,7 +109,7 @@ export const InputBar = ({ onSubmit, disabled, working, mode = "build", }) => {
109
109
  color: i === clampedIdx ? "#1A1A1A" : "#888",
110
110
  backgroundColor: i === clampedIdx ? workingColor : undefined,
111
111
  bold: i === clampedIdx,
112
- }, ` /${cmd.name.padEnd(10)} `), React.createElement(Text, { color: i === clampedIdx ? (mode === "plan" ? "#E0F7FA" : "#FFD180") : "#555" }, cmd.aliases && cmd.aliases.length > 0
112
+ }, ` /${cmd.name.padEnd(10)} `), React.createElement(Text, { color: i === clampedIdx ? (mode === "plan" ? "#E0F7FA" : "#C4A870") : "#555" }, cmd.aliases && cmd.aliases.length > 0
113
113
  ? `(${cmd.aliases.map(a => `/${a}`).join(", ")}) ${cmd.description}`
114
114
  : cmd.description))))
115
115
  : null,
@@ -47,8 +47,8 @@ export const ThinkingIndicator = ({ active, status, iteration, mode = "build", }
47
47
  const elapsed = mins > 0
48
48
  ? `${mins}m ${secs.toString().padStart(2, "0")}s`
49
49
  : `${secs}s`;
50
- const brandColor = mode === "plan" ? "#00E5FF" : "#FF6B35";
51
- const workingColor = mode === "plan" ? "#84FFFF" : "#FF8C42";
50
+ const brandColor = mode === "plan" ? "#00E5FF" : "#C97A4A";
51
+ const workingColor = mode === "plan" ? "#84FFFF" : "#C47A48";
52
52
  return React.createElement(Box, {
53
53
  flexDirection: "column",
54
54
  borderStyle: "single",
package/dist/ui/mascot.js CHANGED
@@ -28,7 +28,7 @@ const FRAMES = [
28
28
  ],
29
29
  ];
30
30
  const COLORS = {
31
- body: "#FF6B35",
31
+ body: "#C97A4A",
32
32
  bodyDim: "#555555",
33
33
  };
34
34
  export const MASCOT_NAME = "Arc";
package/dist/ui/theme.js CHANGED
@@ -3,14 +3,14 @@
3
3
  import chalk from "chalk";
4
4
  export const theme = {
5
5
  // Brand
6
- brand: chalk.hex("#FF6B35").bold,
7
- brandSoft: chalk.hex("#FF8C42"),
6
+ brand: chalk.hex("#C97A4A").bold,
7
+ brandSoft: chalk.hex("#C47A48"),
8
8
  brandDim: chalk.hex("#C45528"),
9
9
  // Surfaces
10
10
  bg: chalk.hex("#1A1A1A"),
11
11
  surface: chalk.hex("#2A2A2A"),
12
12
  border: chalk.hex("#3A3A3A"),
13
- borderActive: chalk.hex("#FF6B35"),
13
+ borderActive: chalk.hex("#C97A4A"),
14
14
  // Text
15
15
  text: chalk.hex("#F5F5F5"),
16
16
  textDim: chalk.hex("#888888"),
@@ -18,26 +18,26 @@ export const theme = {
18
18
  // States
19
19
  success: chalk.hex("#4CAF50"),
20
20
  error: chalk.hex("#F44336"),
21
- warn: chalk.hex("#FFB300"),
22
- thinking: chalk.hex("#FF8C42"),
21
+ warn: chalk.hex("#B88A30"),
22
+ thinking: chalk.hex("#C47A48"),
23
23
  // Roles
24
- user: chalk.hex("#FFD180"),
24
+ user: chalk.hex("#C4A870"),
25
25
  assistant: chalk.hex("#F5F5F5"),
26
- tool: chalk.hex("#FF6B35"),
26
+ tool: chalk.hex("#C97A4A"),
27
27
  toolResult: chalk.hex("#B0BEC5"),
28
28
  // Accents
29
- accent: chalk.hex("#FF6B35"),
30
- glow: chalk.hex("#FFB74D"),
29
+ accent: chalk.hex("#C97A4A"),
30
+ glow: chalk.hex("#CC9A50"),
31
31
  };
32
32
  export const colors = {
33
- primary: "#FF6B35",
34
- secondary: "#E85D26",
33
+ primary: "#C97A4A",
34
+ secondary: "#C45D30",
35
35
  bg: "#1A1A1A",
36
36
  surface: "#2A2A2A",
37
37
  text: "#F5F5F5",
38
38
  textDim: "#888888",
39
39
  success: "#4CAF50",
40
40
  error: "#F44336",
41
- thinking: "#FF8C42",
41
+ thinking: "#C47A48",
42
42
  };
43
43
  //# sourceMappingURL=theme.js.map
package/dist/ui/tui.js CHANGED
@@ -403,9 +403,9 @@ const StatusBar = ({ state, working, mode = "build", }) => {
403
403
  const barLen = 12;
404
404
  const filled = Math.round((pct / 100) * barLen);
405
405
  const miniBar = "▰".repeat(filled) + "▱".repeat(barLen - filled);
406
- const ctxColor = pct > 80 ? "#F44336" : pct > 60 ? "#FFB300" : "#4CAF50";
407
- const brandColor = mode === "plan" ? "#00E5FF" : "#FF6B35";
408
- const workingColor = mode === "plan" ? "#84FFFF" : "#FF8C42";
406
+ const ctxColor = pct > 80 ? "#F44336" : pct > 60 ? "#B88A30" : "#4CAF50";
407
+ const brandColor = mode === "plan" ? "#00E5FF" : "#C97A4A";
408
+ const workingColor = mode === "plan" ? "#84FFFF" : "#C47A48";
409
409
  const label = mode === "plan" ? "✦ Arc 3.4 [Plan]" : "✦ Arc 3.4 [Build]";
410
410
  return React.createElement(Box, {
411
411
  borderStyle: "single",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arts1234567/arc-code",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Arc-code - AI-powered coding CLI with Arc 3.4 Ultra",
5
5
  "type": "module",
6
6
  "bin": {