@nanocollective/nanocoder 1.14.1 → 1.14.3

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
@@ -8,7 +8,7 @@ A local-first CLI coding agent that brings the power of agentic coding tools lik
8
8
 
9
9
  - [FAQs](#faqs)
10
10
  - [Installation](#installation)
11
- - [For Users (Recommended)](#for-users-recommended)
11
+ - [For Users](#for-users)
12
12
  - [For Development](#for-development)
13
13
  - [Configuration](#configuration)
14
14
  - [AI Provider Setup](#ai-provider-setup)
@@ -45,7 +45,9 @@ Firstly, we would love for you to be involved. You can get started contributing
45
45
 
46
46
  ## Installation
47
47
 
48
- ### For Users (Recommended)
48
+ ### For Users
49
+
50
+ #### NPM (Recommended)
49
51
 
50
52
  Install globally and use anywhere:
51
53
 
@@ -59,6 +61,39 @@ Then run in any directory:
59
61
  nanocoder
60
62
  ```
61
63
 
64
+ #### Nix Flakes
65
+
66
+ Run Nanocoder directly using:
67
+
68
+ ```bash
69
+ # If you have flakes enabled in your Nix config:
70
+ nix run github:Nano-Collective/nanocoder
71
+
72
+ # If you don't have flakes enabled:
73
+ nix run --extra-experimental-features 'nix-command flakes' github:Nano-Collective/nanocoder
74
+ ```
75
+
76
+ Or install from `packages` output:
77
+
78
+ ```nix
79
+ # flake.nix
80
+ {
81
+ inputs = {
82
+ nanocoder = {
83
+ url = "github:Nano-Collective/nanocoder";
84
+ inputs.nixpkgs.follows = "nixpkgs";
85
+ };
86
+ };
87
+ }
88
+
89
+ # configuration.nix
90
+ { pkgs, inputs, system, ... }: {
91
+ environment.systemPackages = [
92
+ inputs.nanocoder.packages."${system}".default
93
+ ];
94
+ }
95
+ ```
96
+
62
97
  ### For Development
63
98
 
64
99
  If you want to contribute or modify Nanocoder:
@@ -100,7 +135,35 @@ npm run dev
100
135
 
101
136
  ### AI Provider Setup
102
137
 
103
- Nanocoder supports any OpenAI-compatible API through a unified provider configuration. Create `agents.config.json` in your **working directory** (where you run `nanocoder`):
138
+ Nanocoder supports any OpenAI-compatible API through a unified provider configuration.
139
+
140
+ **Configuration Methods:**
141
+
142
+ 1. **Interactive Setup (Recommended for new users)**: Run `/setup-config` inside Nanocoder for a guided wizard with provider templates
143
+ 2. **Manual Configuration**: Create an `agents.config.json` file (see below for locations)
144
+
145
+ **Configuration File Locations:**
146
+
147
+ Nanocoder looks for configuration in the following order (first found wins):
148
+
149
+ 1. **Project-level** (highest priority): `agents.config.json` in your current working directory
150
+
151
+ - Use this for project-specific providers, models, or API keys
152
+ - Perfect for team sharing or repository-specific configurations
153
+
154
+ 2. **User-level (preferred)**: Platform-specific application data directory
155
+
156
+ - **macOS**: `~/Library/Preferences/nanocoder/agents.config.json`
157
+ - **Linux/Unix**: `~/.config/nanocoder/agents.config.json`
158
+ - **Windows**: `%APPDATA%\nanocoder\agents.config.json`
159
+ - Your global default configuration
160
+ - Used when no project-level config exists
161
+
162
+ 3. **User-level (legacy)**: `~/.agents.config.json`
163
+ - Supported for backward compatibility
164
+ - Recommended to migrate to platform-specific location above
165
+
166
+ **Example Configuration** (`agents.config.json`):
104
167
 
105
168
  ```json
106
169
  {
@@ -277,11 +340,22 @@ Popular MCP servers:
277
340
  - **Memory**: Persistent context storage
278
341
  - [View more MCP servers](https://github.com/modelcontextprotocol/servers)
279
342
 
280
- > **Note**: The default save place for configuration is `~/config/nanocoder/`. You can also place an `agents.config.json` where you run Nanocoder. This will **override** the default for project-by-project configuration with different models or API keys per repository.
343
+ > **Note**: MCP server configuration follows the same location hierarchy as AI provider setup above. Use `/setup-config` for an interactive configuration wizard, or manually edit `agents.config.json` at the project level (current directory) or user level (platform-specific paths listed above).
281
344
 
282
345
  ### User Preferences
283
346
 
284
- Nanocoder automatically saves your preferences to remember your choices across sessions. Preferences are stored in `~/config/nanocoder/nanocoder-preferences.json`. You can also place a `nanocoder-preferences.json` where you run Nanocoder. This will **override** the default for project-by-project configuration.
347
+ Nanocoder automatically saves your preferences to remember your choices across sessions.
348
+
349
+ **Preferences File Locations:**
350
+
351
+ Preferences follow the same location hierarchy as configuration files:
352
+
353
+ 1. **Project-level**: `nanocoder-preferences.json` in your current working directory (overrides user-level)
354
+ 2. **User-level**: Platform-specific application data directory:
355
+ - **macOS**: `~/Library/Preferences/nanocoder/nanocoder-preferences.json`
356
+ - **Linux/Unix**: `~/.config/nanocoder/nanocoder-preferences.json`
357
+ - **Windows**: `%APPDATA%\nanocoder\nanocoder-preferences.json`
358
+ 3. **Legacy**: `~/.nanocoder-preferences.json` (backward compatibility)
285
359
 
286
360
  **What gets saved automatically:**
287
361
 
@@ -1,4 +1,8 @@
1
- import type { AssistantMessageProps } from '../types/index.js';
1
+ import type { AssistantMessageProps, Colors } from '../types/index.js';
2
+ export declare function decodeHtmlEntities(text: string): string;
3
+ export declare function wrapText(text: string, maxWidth: number): string[];
4
+ export declare function parseMarkdownTable(tableText: string, themeColors: Colors): string;
5
+ export declare function parseMarkdown(text: string, themeColors: Colors): string;
2
6
  declare const _default: import("react").NamedExoticComponent<AssistantMessageProps>;
3
7
  export default _default;
4
8
  //# sourceMappingURL=assistant-message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-message.d.ts","sourceRoot":"","sources":["../../source/components/assistant-message.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,qBAAqB,EAAS,MAAM,eAAe,CAAC;;AA8EjE,wBA0BG"}
1
+ {"version":3,"file":"assistant-message.d.ts","sourceRoot":"","sources":["../../source/components/assistant-message.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,qBAAqB,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AAKjE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2CvD;AAGD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAuBjE;AAGD,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GACjB,MAAM,CAoIR;AAGD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAgFvE;;AAED,wBA0BG"}
@@ -4,9 +4,198 @@ import { memo, useMemo } from 'react';
4
4
  import { useTheme } from '../hooks/useTheme.js';
5
5
  import chalk from 'chalk';
6
6
  import { highlight } from 'cli-highlight';
7
- // Basic markdown parser for terminal
8
- function parseMarkdown(text, themeColors) {
7
+ // Decode HTML entities
8
+ export function decodeHtmlEntities(text) {
9
+ const entities = {
10
+ '&nbsp;': ' ',
11
+ '&amp;': '&',
12
+ '&lt;': '<',
13
+ '&gt;': '>',
14
+ '&quot;': '"',
15
+ '&apos;': "'",
16
+ '&copy;': '©',
17
+ '&reg;': '®',
18
+ '&trade;': '™',
19
+ '&euro;': '€',
20
+ '&pound;': '£',
21
+ '&yen;': '¥',
22
+ '&cent;': '¢',
23
+ '&sect;': '§',
24
+ '&deg;': '°',
25
+ '&plusmn;': '±',
26
+ '&times;': '×',
27
+ '&divide;': '÷',
28
+ '&ndash;': '–',
29
+ '&mdash;': '—',
30
+ '&lsquo;': '\u2018',
31
+ '&rsquo;': '\u2019',
32
+ '&ldquo;': '\u201C',
33
+ '&rdquo;': '\u201D',
34
+ '&hellip;': '…',
35
+ '&bull;': '•',
36
+ };
9
37
  let result = text;
38
+ // Replace named entities
39
+ for (const [entity, char] of Object.entries(entities)) {
40
+ result = result.replace(new RegExp(entity, 'g'), char);
41
+ }
42
+ // Replace numeric entities (e.g., &#160; or &#xA0;)
43
+ result = result.replace(/&#(\d+);/g, (_match, code) => String.fromCharCode(parseInt(code, 10)));
44
+ result = result.replace(/&#x([0-9A-Fa-f]+);/g, (_match, code) => String.fromCharCode(parseInt(code, 16)));
45
+ return result;
46
+ }
47
+ // Wrap text to a maximum width
48
+ export function wrapText(text, maxWidth) {
49
+ if (text.length <= maxWidth)
50
+ return [text];
51
+ const words = text.split(' ');
52
+ const lines = [];
53
+ let currentLine = '';
54
+ for (const word of words) {
55
+ if (currentLine.length === 0) {
56
+ currentLine = word;
57
+ }
58
+ else if (currentLine.length + 1 + word.length <= maxWidth) {
59
+ currentLine += ' ' + word;
60
+ }
61
+ else {
62
+ lines.push(currentLine);
63
+ currentLine = word;
64
+ }
65
+ }
66
+ if (currentLine.length > 0) {
67
+ lines.push(currentLine);
68
+ }
69
+ return lines;
70
+ }
71
+ // Parse markdown tables
72
+ export function parseMarkdownTable(tableText, themeColors) {
73
+ const lines = tableText.trim().split('\n');
74
+ if (lines.length < 2)
75
+ return tableText;
76
+ // Extract rows
77
+ const rows = lines.map(line => line
78
+ .split('|')
79
+ .map(cell => cell.trim())
80
+ .filter(cell => cell.length > 0));
81
+ // Check if second row is separator (e.g., |---|---|)
82
+ const separatorRow = rows[1];
83
+ const isSeparator = separatorRow?.every(cell => /^:?-+:?$/.test(cell));
84
+ if (!isSeparator || rows.length < 3)
85
+ return tableText;
86
+ // Get column count from header
87
+ const columnCount = rows[0].length;
88
+ // Normalize all rows to have same column count
89
+ const normalizedRows = rows.map(row => {
90
+ const normalized = [...row];
91
+ while (normalized.length < columnCount) {
92
+ normalized.push('');
93
+ }
94
+ return normalized.slice(0, columnCount);
95
+ });
96
+ // Calculate reasonable column widths
97
+ // Max width per column based on terminal width (assume ~120 chars total)
98
+ const terminalWidth = process.stdout.columns || 120;
99
+ const reservedWidth = columnCount * 3 + 1; // For separators │
100
+ const availableWidth = terminalWidth - reservedWidth;
101
+ const maxColWidth = Math.floor(availableWidth / columnCount);
102
+ // Calculate actual column widths (capped at maxColWidth)
103
+ const columnWidths = [];
104
+ for (let col = 0; col < columnCount; col++) {
105
+ let maxWidth = 0;
106
+ for (let row = 0; row < normalizedRows.length; row++) {
107
+ if (row === 1)
108
+ continue; // Skip separator row
109
+ const cellText = normalizedRows[row][col] || '';
110
+ // Strip ANSI codes for width calculation
111
+ // eslint-disable-next-line no-control-regex
112
+ const plainText = cellText.replace(/\x1b\[[0-9;]*m/g, '');
113
+ maxWidth = Math.max(maxWidth, plainText.length);
114
+ }
115
+ // Cap at reasonable width to prevent overflow
116
+ columnWidths.push(Math.min(maxWidth, maxColWidth));
117
+ }
118
+ // Wrap cell content that exceeds column width
119
+ const wrappedRows = normalizedRows.map((row, rowIndex) => {
120
+ if (rowIndex === 1)
121
+ return row; // Skip separator row
122
+ const cellLines = row.map((cell, colIndex) => {
123
+ // Strip ANSI codes for length check
124
+ // eslint-disable-next-line no-control-regex
125
+ const plainText = cell.replace(/\x1b\[[0-9;]*m/g, '');
126
+ if (plainText.length <= columnWidths[colIndex]) {
127
+ return [cell];
128
+ }
129
+ return wrapText(cell, columnWidths[colIndex]);
130
+ });
131
+ // Get max line count for this row
132
+ const maxLines = Math.max(...cellLines.map(lines => lines.length));
133
+ // Create multi-line row
134
+ const rowLines = [];
135
+ for (let lineIdx = 0; lineIdx < maxLines; lineIdx++) {
136
+ const lineCells = cellLines.map(lines => lines[lineIdx] || '');
137
+ rowLines.push(lineCells);
138
+ }
139
+ return rowLines;
140
+ });
141
+ // Build table with proper alignment
142
+ const result = [];
143
+ const headerRow = wrappedRows[0];
144
+ const dataRows = wrappedRows.slice(2);
145
+ // Header with bold styling
146
+ if (Array.isArray(headerRow[0])) {
147
+ // Multi-line header
148
+ for (const headerLine of headerRow) {
149
+ const headerCells = headerLine.map((cell, i) => {
150
+ const paddedCell = cell.padEnd(columnWidths[i], ' ');
151
+ return chalk.hex(themeColors.primary).bold(paddedCell);
152
+ });
153
+ result.push(headerCells.join(' │ '));
154
+ }
155
+ }
156
+ else {
157
+ // Single-line header
158
+ const headerCells = headerRow.map((cell, i) => {
159
+ const paddedCell = cell.padEnd(columnWidths[i], ' ');
160
+ return chalk.hex(themeColors.primary).bold(paddedCell);
161
+ });
162
+ result.push(headerCells.join(' │ '));
163
+ }
164
+ // Separator line
165
+ const separatorParts = columnWidths.map(width => '─'.repeat(width));
166
+ const separator = separatorParts.join('─┼─');
167
+ result.push(chalk.hex(themeColors.secondary)(separator));
168
+ // Data rows with proper padding
169
+ for (const row of dataRows) {
170
+ if (Array.isArray(row[0])) {
171
+ // Multi-line row
172
+ for (const rowLine of row) {
173
+ const cells = rowLine.map((cell, i) => {
174
+ const paddedCell = cell.padEnd(columnWidths[i], ' ');
175
+ return chalk.hex(themeColors.white)(paddedCell);
176
+ });
177
+ result.push(cells.join(' │ '));
178
+ }
179
+ }
180
+ else {
181
+ // Single-line row
182
+ const cells = row.map((cell, i) => {
183
+ const paddedCell = cell.padEnd(columnWidths[i], ' ');
184
+ return chalk.hex(themeColors.white)(paddedCell);
185
+ });
186
+ result.push(cells.join(' │ '));
187
+ }
188
+ }
189
+ return result.join('\n');
190
+ }
191
+ // Basic markdown parser for terminal
192
+ export function parseMarkdown(text, themeColors) {
193
+ // First decode HTML entities
194
+ let result = decodeHtmlEntities(text);
195
+ // Parse tables before other markdown elements
196
+ result = result.replace(/(?:^|\n)((?:\|.+\|\n)+)/gm, (_match, tableText) => {
197
+ return '\n' + parseMarkdownTable(tableText, themeColors) + '\n';
198
+ });
10
199
  // Code blocks (```language\ncode\n```)
11
200
  result = result.replace(/```(\w+)?\n([\s\S]*?)```/g, (_match, lang, code) => {
12
201
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-message.js","sourceRoot":"","sources":["../../source/components/assistant-message.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assistant-message.js","sourceRoot":"","sources":["../../source/components/assistant-message.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nanocollective/nanocoder",
3
3
  "main": "dist/cli.js",
4
- "version": "1.14.1",
4
+ "version": "1.14.3",
5
5
  "description": "A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter",
6
6
  "keywords": [
7
7
  "cli",
@@ -54,7 +54,7 @@
54
54
  "@langchain/openai": "^0.6.15",
55
55
  "@mishieck/ink-titled-box": "^0.3.0",
56
56
  "@modelcontextprotocol/sdk": "^1.17.3",
57
- "@nanocollective/get-md": "^1.0.0",
57
+ "@nanocollective/get-md": "^1.0.1",
58
58
  "cheerio": "^1.1.2",
59
59
  "cli-highlight": "^2.1.11",
60
60
  "dotenv": "^17.2.3",