fivocell 7.3.3 → 8.0.0

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 +1 @@
1
- {"version":3,"file":"chat-repl.d.ts","sourceRoot":"","sources":["../../../../../src/walls/07-runtime/cli/commands/chat-repl.ts"],"names":[],"mappings":"AA0BA,wBAAgB,UAAU,SAqCzB"}
1
+ {"version":3,"file":"chat-repl.d.ts","sourceRoot":"","sources":["../../../../../src/walls/07-runtime/cli/commands/chat-repl.ts"],"names":[],"mappings":"AA4CA,wBAAgB,UAAU,SAmEzB"}
@@ -35,12 +35,14 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.doChatRepl = doChatRepl;
37
37
  const tui_1 = require("../tui");
38
- const utils_1 = require("../utils");
39
38
  const child_process_1 = require("child_process");
40
39
  const path = __importStar(require("path"));
41
- const D = utils_1.C.dim;
42
- const BIN = path.join(__dirname, '..', '..', '..', '..', '..', 'bin', 'cell.js');
43
- function parseLine(line) {
40
+ const R = (s) => '\x1b[38;2;248;113;113m' + s + '\x1b[0m';
41
+ const G = (s) => '\x1b[38;2;74;222;128m' + s + '\x1b[0m';
42
+ const Y = (s) => '\x1b[38;2;251;191;36m' + s + '\x1b[0m';
43
+ const BIN = path.resolve(__dirname, '..', '..', '..', '..', 'bin', 'cell.js');
44
+ // Shell-safe arg parser
45
+ function parseArgs(line) {
44
46
  const args = [];
45
47
  let current = '';
46
48
  let inQuote = false;
@@ -63,18 +65,37 @@ function parseLine(line) {
63
65
  args.push(current);
64
66
  return args;
65
67
  }
68
+ // Built-in commands that don't need to spawn child process
69
+ const BUILTINS = {
70
+ 'help': () => {
71
+ (0, tui_1.addOutput)('Available commands:', 'info');
72
+ (0, tui_1.addOutput)('/help, /context, /scan, /start, /stop, /status, /doctor, /vibe, /profile, /memory, /handoff, /continue, /session, /decisions, /watch, /blindspots, /sync, /cloud, /team, /community, /teach, /install-hook, /exit', '');
73
+ },
74
+ 'clear': () => {
75
+ (0, tui_1.addOutput)('Screen cleared', 'info');
76
+ },
77
+ 'settings': () => {
78
+ (0, tui_1.addOutput)('Settings: run cell setup or cell mcp-config', 'info');
79
+ (0, tui_1.addOutput)('Cloud: cell cloud login / cell cloud sync', 'info');
80
+ },
81
+ };
66
82
  function doChatRepl() {
67
- console.clear();
68
- (0, tui_1.showBanner)();
69
- (0, tui_1.showSuggestions)();
70
- (0, tui_1.chatInput)((line) => {
71
- if (!line)
83
+ (0, tui_1.startTUI)((line) => {
84
+ const trimmed = line.startsWith('/') ? line.slice(1).trim() : line.trim();
85
+ if (!trimmed)
72
86
  return;
73
- process.stdout.write('\n');
74
- (0, tui_1.commandBubble)(line);
75
- const args = parseLine(line);
76
- if (args.length === 0)
87
+ // Built-ins
88
+ if (BUILTINS[trimmed]) {
89
+ BUILTINS[trimmed]();
77
90
  return;
91
+ }
92
+ if (trimmed === 'exit' || trimmed === 'quit') {
93
+ (0, tui_1.addOutput)('Goodbye!', 'info');
94
+ setTimeout(() => { process.exit(0); }, 500);
95
+ return;
96
+ }
97
+ // Run command via child process
98
+ const args = parseArgs(trimmed);
78
99
  try {
79
100
  const result = (0, child_process_1.spawnSync)('node', [BIN, ...args], {
80
101
  encoding: 'utf-8',
@@ -82,20 +103,43 @@ function doChatRepl() {
82
103
  stdio: 'pipe',
83
104
  windowsHide: true,
84
105
  });
85
- const output = (result.stdout || '').toString();
86
- const clean = output
87
- .replace(/████[\s\S]*?█+\n\s*\n?/g, '')
88
- .replace(/^\s*\n/gm, '')
89
- .trim();
90
- if (clean) {
91
- (0, tui_1.responseBubble)(clean);
106
+ const output = (result.stdout || '').replace(/████[\s\S]*?█+\n\s*\n?/g, '').trim();
107
+ const errOut = (result.stderr || '').trim();
108
+ if (output) {
109
+ for (const line of output.split('\n').filter(Boolean)) {
110
+ (0, tui_1.addOutput)(line.replace(/^\s+/, ''));
111
+ }
112
+ }
113
+ if (errOut) {
114
+ for (const line of errOut.split('\n').filter(Boolean).slice(0, 5)) {
115
+ (0, tui_1.addOutput)(line, 'warn');
116
+ }
117
+ }
118
+ if (!output && !errOut) {
119
+ (0, tui_1.addOutput)('Done!', 'success');
92
120
  }
93
- else {
94
- (0, tui_1.responseBubble)('Done!');
121
+ // Update status
122
+ try {
123
+ const http = require('http');
124
+ const req = http.get('http://localhost:9876/health', { timeout: 1000 }, (res) => {
125
+ let d = '';
126
+ res.on('data', (c) => d += c);
127
+ res.on('end', () => {
128
+ try {
129
+ const j = JSON.parse(d);
130
+ const s = j.status === 'ok' ? G('●') : R('●');
131
+ (0, tui_1.setStatus)(s + ' Running ' + G('●') + ' Community ' + G('●') + ' MCP :9876');
132
+ }
133
+ catch { }
134
+ });
135
+ }).on('error', () => {
136
+ (0, tui_1.setStatus)(R('●') + ' Daemon Offline ' + Y('●') + ' Check ' + R('●') + ' MCP Down');
137
+ });
95
138
  }
139
+ catch { }
96
140
  }
97
141
  catch (e) {
98
- (0, tui_1.responseBubble)(utils_1.C.warn('Error: ' + (e.message || String(e)).substring(0, 200)));
142
+ (0, tui_1.addOutput)(e.message || String(e), 'error');
99
143
  }
100
144
  });
101
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"chat-repl.js","sourceRoot":"","sources":["../../../../../src/walls/07-runtime/cli/commands/chat-repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-repl.js","sourceRoot":"","sources":["../../../../../src/walls/07-runtime/cli/commands/chat-repl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,gCAmEC;AA/GD,gCAAwD;AACxD,iDAA0C;AAC1C,2CAA6B;AAE7B,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,wBAAwB,GAAG,CAAC,GAAG,SAAS,CAAC;AAClE,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,uBAAuB,GAAG,CAAC,GAAG,SAAS,CAAC;AACjE,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,uBAAuB,GAAG,CAAC,GAAG,SAAS,CAAC;AAEjE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AAE9E,wBAAwB;AACxB,SAAS,SAAS,CAAC,IAAY;IAC7B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC7B,OAAO,GAAG,CAAC,OAAO,CAAC;QACrB,CAAC;aAAM,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,OAAO,EAAE,CAAC;gBAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;YAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IACD,IAAI,OAAO;QAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,2DAA2D;AAC3D,MAAM,QAAQ,GAA+B;IAC3C,MAAM,EAAE,GAAG,EAAE;QACX,IAAA,eAAS,EAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACzC,IAAA,eAAS,EAAC,mNAAmN,EAAE,EAAE,CAAC,CAAC;IACrO,CAAC;IACD,OAAO,EAAE,GAAG,EAAE;QACZ,IAAA,eAAS,EAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IACD,UAAU,EAAE,GAAG,EAAE;QACf,IAAA,eAAS,EAAC,6CAA6C,EAAE,MAAM,CAAC,CAAC;QACjE,IAAA,eAAS,EAAC,2CAA2C,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;CACF,CAAC;AAEF,SAAgB,UAAU;IACxB,IAAA,cAAQ,EAAC,CAAC,IAAY,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,YAAY;QACZ,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YAC7C,IAAA,eAAS,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9B,UAAU,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,gCAAgC;QAChC,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,yBAAS,EAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE;gBAC/C,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACnF,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAE5C,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtD,IAAA,eAAS,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAClE,IAAA,eAAS,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBACvB,IAAA,eAAS,EAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAChC,CAAC;YAED,gBAAgB;YAChB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,GAAQ,EAAE,EAAE;oBACnF,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;oBACnC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;wBACjB,IAAI,CAAC;4BACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BACxB,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BAC9C,IAAA,eAAS,EAAC,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,cAAc,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;wBAChF,CAAC;wBAAC,MAAM,CAAC,CAAA,CAAC;oBACZ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBAClB,IAAA,eAAS,EAAC,CAAC,CAAC,GAAG,CAAC,GAAG,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;gBACvF,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QACZ,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAA,eAAS,EAAC,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,8 +1,5 @@
1
- export declare function showBanner(): void;
2
- export declare function responseBubble(text: string): void;
3
- export declare function commandBubble(text: string): void;
4
- export declare function showSuggestions(): void;
5
- export declare function chatInput(onCommand: (line: string) => void): void;
6
- export declare function chatPrint(text: string): void;
7
- export declare function chatClear(): void;
1
+ export declare function addOutput(text: string, type?: 'success' | 'error' | 'warn' | 'info' | ''): void;
2
+ export declare function setStatus(s: string): void;
3
+ export declare function startTUI(cb: (line: string) => void): void;
4
+ export declare function stopTUI(): void;
8
5
  //# sourceMappingURL=tui.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../../src/walls/07-runtime/cli/tui.ts"],"names":[],"mappings":"AA0BA,wBAAgB,UAAU,SAczB;AAyBD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,QAU1C;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,QAOzC;AAKD,wBAAgB,eAAe,SAc9B;AAQD,wBAAgB,SAAS,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAkDjE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,QAErC;AAED,wBAAgB,SAAS,SAExB"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../../../src/walls/07-runtime/cli/tui.ts"],"names":[],"mappings":"AAsJA,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,EAAO,QAO5F;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,QAAiD;AAwKpF,wBAAgB,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,QAkClD;AAED,wBAAgB,OAAO,SAEtB"}
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
+ // FivoCell TUI v2 — Modern AI Workspace Interface
3
+ // ChatGPT-style input + command palette + fixed header + colored output
2
4
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
5
  if (k2 === undefined) k2 = k;
4
6
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -33,60 +35,156 @@ var __importStar = (this && this.__importStar) || (function () {
33
35
  };
34
36
  })();
35
37
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.showBanner = showBanner;
37
- exports.responseBubble = responseBubble;
38
- exports.commandBubble = commandBubble;
39
- exports.showSuggestions = showSuggestions;
40
- exports.chatInput = chatInput;
41
- exports.chatPrint = chatPrint;
42
- exports.chatClear = chatClear;
43
- const readline = __importStar(require("readline"));
44
- const utils_1 = require("./utils");
38
+ exports.addOutput = addOutput;
39
+ exports.setStatus = setStatus;
40
+ exports.startTUI = startTUI;
41
+ exports.stopTUI = stopTUI;
42
+ const os = __importStar(require("os"));
45
43
  const pkg = require('../../../../package.json');
46
- const O = utils_1.C.primary;
47
- const D = utils_1.C.dim;
48
- const B = utils_1.C.bold;
49
- const G = utils_1.C.success;
50
- // Terminal dimensions
51
- function termWidth() { return process.stdout.columns || 80; }
52
- // Clear screen
53
- function clearScreen() { process.stdout.write('\x1b[2J\x1b[H'); }
54
- // Center text
55
- function center(text, width) {
56
- const visible = text.replace(/\x1b\[[0-9;]*m/g, '').length;
57
- const pad = Math.max(0, Math.floor((width - visible) / 2));
58
- return ' '.repeat(pad) + text;
44
+ // ─── ANSI Escape Helpers ────────────────────────────────────────────────────
45
+ const CSI = '\x1b[';
46
+ const hide = CSI + '?25l';
47
+ const show = CSI + '?25h';
48
+ const clear = CSI + '2J' + CSI + 'H';
49
+ const lineStart = CSI + 'G';
50
+ const eraseLine = CSI + '2K';
51
+ const eraseDown = CSI + 'J';
52
+ const savePos = CSI + 's';
53
+ const restorePos = CSI + 'u';
54
+ const altBuf = CSI + '?1049h';
55
+ const mainBuf = CSI + '?1049l';
56
+ function cursorTo(row, col) { return CSI + row + ';' + col + 'H'; }
57
+ function cursorUp(n) { return CSI + n + 'A'; }
58
+ function cursorDown(n) { return CSI + n + 'B'; }
59
+ function cursorRight(n) { return CSI + n + 'C'; }
60
+ // ─── Colors ─────────────────────────────────────────────────────────────────
61
+ const O = (s) => '\x1b[38;2;255;171;64m' + s + '\x1b[0m';
62
+ const G = (s) => '\x1b[38;2;74;222;128m' + s + '\x1b[0m';
63
+ const R = (s) => '\x1b[38;2;248;113;113m' + s + '\x1b[0m';
64
+ const Y = (s) => '\x1b[38;2;251;191;36m' + s + '\x1b[0m';
65
+ const B = (s) => '\x1b[38;2;96;165;250m' + s + '\x1b[0m';
66
+ const D = (s) => '\x1b[38;2;119;119;119m' + s + '\x1b[0m';
67
+ const BD = (s) => '\x1b[1m' + s + '\x1b[0m';
68
+ const BG = (s) => '\x1b[48;2;255;171;64;30m' + s + '\x1b[0m';
69
+ const BG_SEL = (s) => '\x1b[48;2;41;41;55m\x1b[38;2;255;171;64m' + s + '\x1b[0m';
70
+ // ─── Command Palette ────────────────────────────────────────────────────────
71
+ const ALL_COMMANDS = [
72
+ ['/help', 'Show all commands', ''],
73
+ ['/context', 'View @cell memory block', 'context'],
74
+ ['/scan', 'Scan codebase + rebuild intelligence', 'scan'],
75
+ ['/start', 'Start daemon + MCP server', 'start'],
76
+ ['/stop', 'Stop daemon', 'stop'],
77
+ ['/status', 'Project + daemon status', 'status'],
78
+ ['/doctor', '12-point health check', 'doctor'],
79
+ ['/vibe', 'Developer personality profile', 'vibe'],
80
+ ['/profile', 'View developer profile', 'profile'],
81
+ ['/memory', 'Memory statistics', 'memory'],
82
+ ['/memory search', 'Search project memory', 'memory search'],
83
+ ['/handoff', 'View or create handoff', 'handoff'],
84
+ ['/continue', 'Continue last session', 'continue'],
85
+ ['/session', 'Session history', 'session'],
86
+ ['/decisions', 'Decision history', 'decisions'],
87
+ ['/watch', 'Toggle file watcher', 'watch start'],
88
+ ['/blindspots', 'Code quality report', 'blindspots'],
89
+ ['/sync', 'Encrypted sync export/import', 'sync'],
90
+ ['/cloud', 'Cloud connect + sync', 'cloud'],
91
+ ['/team', 'Team management', 'team'],
92
+ ['/community', 'Community packs', 'community'],
93
+ ['/teach', 'Teach Cell about yourself', 'teach'],
94
+ ['/install-hook', 'Install git hooks', 'install-hook'],
95
+ ['/settings', 'Settings', 'settings'],
96
+ ['/exit', 'Exit Cell', 'exit'],
97
+ ];
98
+ // ─── State ──────────────────────────────────────────────────────────────────
99
+ let rows = 24;
100
+ let cols = 80;
101
+ let inputLine = '';
102
+ let paletteOpen = false;
103
+ let paletteIdx = 0;
104
+ let paletteFiltered = [];
105
+ let outputLines = [];
106
+ let onCommand = null;
107
+ let statusLine = G('●') + ' Running ' + G('●') + ' Community ' + G('●') + ' MCP :9876';
108
+ let rawModeRestore = null;
109
+ let isActive = false;
110
+ // ─── Screen Management ──────────────────────────────────────────────────────
111
+ function getSize() {
112
+ return [process.stdout.rows || 24, process.stdout.columns || 80];
59
113
  }
60
- // ═══════════════════════════════════════════════════════════════
61
- // BIG BANNER
62
- // ═══════════════════════════════════════════════════════════════
63
- function showBanner() {
64
- const w = termWidth();
65
- console.log('');
66
- console.log(center(O('╔══════════════════════════════════════╗'), w));
67
- console.log(center(O('║') + ' ' + O(''), w));
68
- console.log(center(O('║') + ' ' + B('F I V O C E L L') + ' ' + O('║'), w));
69
- console.log(center(O('║') + ' ' + O(''), w));
70
- console.log(center(O('║') + ' ' + D('Developer Memory Intelligence') + ' ' + O(''), w));
71
- console.log(center(O('║') + ' ' + D('AI tools write code. Cell remembers.') + ' ' + O('║'), w));
72
- console.log(center(O('║') + ' ' + O(''), w));
73
- console.log(center(O('╚══════════════════════════════════════╝'), w));
74
- console.log('');
75
- console.log(center(D('v' + pkg.version + ' · daemon :9876 · 5/5 IDEs wired'), w));
76
- console.log('');
114
+ function fullRedraw() {
115
+ [rows, cols] = getSize();
116
+ const headerH = 4; // banner + status + separator
117
+ const inputH = paletteOpen ? Math.min(ALL_COMMANDS.length, rows - headerH - 6) + 3 : 3; // input box + palette
118
+ const outputH = rows - headerH - inputH;
119
+ let buf = clear;
120
+ // ═══════════════ HEADER ═══════════════
121
+ const banner = 'FivoCell';
122
+ const tag = 'Developer Memory Intelligence v' + pkg.version;
123
+ const lpad = Math.max(0, Math.floor((cols - Math.max(banner.length, tag.length, statusLine.replace(/\x1b\[[0-9;]*m/g, '').length)) / 2));
124
+ buf += cursorTo(1, lpad) + O(BD(banner)) + '\n';
125
+ buf += cursorTo(2, lpad) + D(tag) + '\n';
126
+ buf += cursorTo(3, 1) + D(''.repeat(cols)) + '\n';
127
+ // Status bar
128
+ buf += cursorTo(4, 2) + statusLine;
129
+ buf += cursorTo(4, Math.max(cols - 25, 2)) + D(os.hostname().substring(0, 12)) + D(' · ') + D(os.userInfo().username.substring(0, 12));
130
+ buf += '\n';
131
+ // ═══════════════ OUTPUT AREA ═══════════════
132
+ const visibleOutput = outputLines.slice(-outputH);
133
+ for (let i = 0; i < outputH; i++) {
134
+ buf += cursorTo(headerH + 2 + i, 1) + eraseLine;
135
+ if (i < visibleOutput.length) {
136
+ buf += cursorTo(headerH + 2 + i, 2) + visibleOutput[i];
137
+ }
138
+ }
139
+ // ═══════════════ INPUT AREA ═══════════════
140
+ const inputTop = headerH + 2 + outputH;
141
+ // Palette (if open)
142
+ if (paletteOpen) {
143
+ const maxPalH = Math.min(paletteFiltered.length, rows - inputTop - 3);
144
+ for (let i = 0; i <= maxPalH; i++) {
145
+ buf += cursorTo(inputTop + i, 1) + eraseLine;
146
+ }
147
+ for (let i = 0; i < maxPalH; i++) {
148
+ const [cmd, desc] = paletteFiltered[i];
149
+ const isSel = i === paletteIdx;
150
+ buf += cursorTo(inputTop + i, 2) + (isSel ? BG_SEL : D)(' ' + cmd.padEnd(22) + ' ' + desc) + '\x1b[0m';
151
+ }
152
+ // Draw input box below palette
153
+ buf += cursorTo(inputTop + maxPalH + 1, 1) + eraseLine;
154
+ buf += cursorTo(inputTop + maxPalH + 1, 2) + O('▶ ') + inputLine + show;
155
+ buf += cursorTo(inputTop + maxPalH + 1, 4 + inputLine.length);
156
+ }
157
+ else {
158
+ // Standard input
159
+ buf += cursorTo(inputTop, 1) + eraseLine;
160
+ buf += cursorTo(inputTop + 1, 1) + eraseLine;
161
+ buf += cursorTo(inputTop + 2, 1) + eraseLine;
162
+ buf += cursorTo(inputTop + 1, 2) + O('▶ ') + inputLine + show;
163
+ buf += cursorTo(inputTop + 1, 4 + inputLine.length);
164
+ }
165
+ process.stdout.write(buf);
166
+ }
167
+ // ─── Output ─────────────────────────────────────────────────────────────────
168
+ function addOutput(text, type = '') {
169
+ const prefix = type === 'success' ? G('✓ ') : type === 'error' ? R('✗ ') : type === 'warn' ? Y('⚠ ') : type === 'info' ? B('ℹ ') : '';
170
+ const maxW = cols - 6;
171
+ const lines = wrapText(prefix + text, maxW);
172
+ outputLines.push(...lines.map(l => ' ' + l));
173
+ if (outputLines.length > 500)
174
+ outputLines = outputLines.slice(-500);
175
+ if (isActive)
176
+ fullRedraw();
77
177
  }
78
- // ═══════════════════════════════════════════════════════════════
79
- // CHAT BUBBLES
80
- // ═══════════════════════════════════════════════════════════════
81
- // We show both command and result as chat bubbles
82
- const CHAT_W = 60;
178
+ function setStatus(s) { statusLine = s; if (isActive)
179
+ fullRedraw(); }
83
180
  function wrapText(text, maxW) {
84
181
  const lines = [];
85
182
  const words = text.split(' ');
86
183
  let line = '';
87
184
  for (const w of words) {
88
- if ((line + ' ' + w).length > maxW && line.length > 0) {
89
- lines.push(line.trim());
185
+ const cleaned = w.replace(/\x1b\[[0-9;]*m/g, '');
186
+ if ((line + ' ' + cleaned).length > maxW && line.length > 0) {
187
+ lines.push(line);
90
188
  line = w;
91
189
  }
92
190
  else {
@@ -94,98 +192,180 @@ function wrapText(text, maxW) {
94
192
  }
95
193
  }
96
194
  if (line)
97
- lines.push(line.trim());
195
+ lines.push(line);
98
196
  return lines;
99
197
  }
100
- function responseBubble(text) {
101
- const w = Math.min(termWidth() - 4, CHAT_W + 8);
102
- const innerW = w - 10;
103
- const lines = wrapText(text, innerW);
104
- console.log(D(' ┌─ cell ─────────────────────────────┐'));
105
- for (const line of lines) {
106
- console.log(D(' │ ') + line + D(' │'));
107
- }
108
- console.log(D(' └─────────────────────────────────────┘'));
109
- console.log('');
198
+ // ─── Palette ────────────────────────────────────────────────────────────────
199
+ function openPalette() {
200
+ paletteOpen = true;
201
+ paletteIdx = 0;
202
+ paletteFiltered = ALL_COMMANDS;
203
+ inputLine = '/';
204
+ fullRedraw();
110
205
  }
111
- function commandBubble(text) {
112
- const w = Math.min(termWidth() - 4, CHAT_W + 8);
113
- const pad = termWidth() - w - 2;
114
- console.log(' '.repeat(Math.max(0, pad)) + O(' ┌───────────────── you ─┐'));
115
- console.log(' '.repeat(Math.max(0, pad)) + O(' │ ') + text + O(' │'));
116
- console.log(' '.repeat(Math.max(0, pad)) + O(' └───────────────────────┘'));
117
- console.log('');
206
+ function closePalette() {
207
+ paletteOpen = false;
208
+ inputLine = '';
209
+ paletteFiltered = [];
210
+ paletteIdx = 0;
211
+ fullRedraw();
118
212
  }
119
- // ═══════════════════════════════════════════════════════════════
120
- // QUICK COMMAND SUGGESTIONS
121
- // ═══════════════════════════════════════════════════════════════
122
- function showSuggestions() {
123
- const w = Math.min(termWidth() - 4, CHAT_W + 8);
124
- const cmds = [
125
- [O('start'), 'start daemon + mcp'],
126
- [O('check'), '12-point health check'],
127
- [O('vibe'), 'your developer personality'],
128
- [O('sync'), 'push/pull intelligence'],
129
- ];
130
- console.log(' ' + D('Try:'));
131
- for (const [cmd, desc] of cmds) {
132
- console.log(' ' + cmd + ' ' + D(desc));
133
- }
134
- console.log('');
213
+ function filterPalette() {
214
+ const q = inputLine.slice(1).toLowerCase();
215
+ paletteFiltered = q
216
+ ? ALL_COMMANDS.filter(([cmd, desc]) => cmd.toLowerCase().includes(q) || desc.toLowerCase().includes(q))
217
+ : ALL_COMMANDS;
218
+ paletteIdx = 0;
219
+ fullRedraw();
135
220
  }
136
- // ═══════════════════════════════════════════════════════════════
137
- // CHAT INPUT BOX AT BOTTOM
138
- // ═══════════════════════════════════════════════════════════════
139
- let rlInstance = null;
140
- function chatInput(onCommand) {
141
- if (rlInstance) {
142
- rlInstance.close();
143
- rlInstance = null;
221
+ // ─── Raw Input Handler ──────────────────────────────────────────────────────
222
+ function handleKey(key) {
223
+ const s = key.toString();
224
+ // Ctrl+C exit
225
+ if (s === '\x03') {
226
+ cleanup();
227
+ process.exit(0);
144
228
  }
145
- const rl = readline.createInterface({
146
- input: process.stdin,
147
- output: process.stdout,
148
- prompt: '',
149
- });
150
- rlInstance = rl;
151
- function showPrompt() {
152
- const w = termWidth();
153
- const boxW = Math.min(w - 4, 64);
154
- const leftPad = Math.floor((w - boxW) / 2);
155
- process.stdout.write('\n');
156
- process.stdout.write(' '.repeat(leftPad) + O('╭─' + '─'.repeat(boxW - 4) + '─╮') + '\n');
157
- process.stdout.write(' '.repeat(leftPad) + O('│ ') + D('cell') + G(' ▶ ') + ' '.repeat(boxW - 14) + O(' │') + '\n');
158
- process.stdout.write(' '.repeat(leftPad) + O('╰─' + '─'.repeat(boxW - 4) + '─╯') + '\n');
159
- // Move cursor inside the box
160
- process.stdout.write('\x1b[3A');
161
- process.stdout.write('\x1b[' + (leftPad + 13) + 'C');
162
- process.stdout.write('\x1b[?25h');
229
+ // Palette navigation
230
+ if (paletteOpen) {
231
+ if (s === '\x1b[A' || s === '\x1b0A') {
232
+ // Up arrow
233
+ paletteIdx = Math.max(0, paletteIdx - 1);
234
+ fullRedraw();
235
+ return;
236
+ }
237
+ if (s === '\x1b[B' || s === '\x1b0B') {
238
+ // Down arrow
239
+ paletteIdx = Math.min(paletteFiltered.length - 1, paletteIdx + 1);
240
+ fullRedraw();
241
+ return;
242
+ }
243
+ if (s === '\r' || s === '\n') {
244
+ // Enter — select command
245
+ const selected = paletteFiltered[paletteIdx];
246
+ const cmd = selected ? selected[1] : inputLine;
247
+ closePalette();
248
+ addOutput('▶ ' + cmd, '');
249
+ if (onCommand) {
250
+ if (selected && selected[2]) {
251
+ onCommand(selected[2]);
252
+ }
253
+ else {
254
+ onCommand(cmd.replace(/^\//, ''));
255
+ }
256
+ }
257
+ return;
258
+ }
259
+ if (s === '\x1b' || s === '\x1b\x1b') {
260
+ // Escape — close palette
261
+ closePalette();
262
+ return;
263
+ }
264
+ if (s === '\x7f' || s === '\b') {
265
+ // Backspace
266
+ if (inputLine.length <= 1) {
267
+ closePalette();
268
+ }
269
+ else {
270
+ inputLine = inputLine.slice(0, -1);
271
+ filterPalette();
272
+ }
273
+ return;
274
+ }
275
+ // Type character
276
+ if (s.length === 1 && s.charCodeAt(0) >= 32) {
277
+ inputLine += s;
278
+ filterPalette();
279
+ return;
280
+ }
281
+ return;
282
+ }
283
+ // Normal input mode
284
+ if (s === '\r' || s === '\n') {
285
+ const line = inputLine.trim();
286
+ inputLine = '';
287
+ if (line) {
288
+ if (line.startsWith('/')) {
289
+ const match = ALL_COMMANDS.find(([cmd]) => cmd === line);
290
+ if (match && match[2])
291
+ line === match[2];
292
+ }
293
+ addOutput('▶ ' + (line.startsWith('/') ? line : '/' + line), '');
294
+ if (onCommand)
295
+ onCommand(line);
296
+ }
297
+ fullRedraw();
298
+ return;
299
+ }
300
+ if (s === '\x7f' || s === '\b') {
301
+ if (inputLine.length > 0) {
302
+ inputLine = inputLine.slice(0, -1);
303
+ fullRedraw();
304
+ }
305
+ return;
163
306
  }
164
- rl.on('line', (line) => {
165
- const trimmed = line.trim();
166
- if (!trimmed) {
167
- onCommand('');
307
+ if (s === '/') {
308
+ if (inputLine.length === 0) {
309
+ openPalette();
168
310
  return;
169
311
  }
170
- if (trimmed === 'exit' || trimmed === 'quit') {
171
- console.log('');
172
- console.log(D(' Goodbye!'));
173
- process.exit(0);
312
+ inputLine += s;
313
+ fullRedraw();
314
+ return;
315
+ }
316
+ // Up arrow — show palette
317
+ if ((s === '\x1b[A' || s === '\x1b0A') && inputLine.length === 0) {
318
+ openPalette();
319
+ return;
320
+ }
321
+ // Type character
322
+ if (s.length === 1 && s.charCodeAt(0) >= 32) {
323
+ inputLine += s;
324
+ fullRedraw();
325
+ }
326
+ }
327
+ function cleanup() {
328
+ if (rawModeRestore) {
329
+ rawModeRestore();
330
+ rawModeRestore = null;
331
+ }
332
+ process.stdout.write(show + mainBuf);
333
+ isActive = false;
334
+ }
335
+ // ─── Public API ─────────────────────────────────────────────────────────────
336
+ function startTUI(cb) {
337
+ onCommand = cb;
338
+ [rows, cols] = getSize();
339
+ isActive = true;
340
+ // Switch to alternate buffer
341
+ process.stdout.write(altBuf + hide);
342
+ // Set raw mode
343
+ const stdin = process.stdin;
344
+ rawModeRestore = () => {
345
+ try {
346
+ stdin.setRawMode(false);
174
347
  }
175
- onCommand(trimmed);
176
- });
177
- rl.on('close', () => {
178
- console.log('');
179
- console.log(D(' Goodbye!'));
180
- process.exit(0);
348
+ catch { }
349
+ stdin.removeAllListeners('data');
350
+ stdin.pause();
351
+ };
352
+ if (typeof stdin.setRawMode === 'function') {
353
+ stdin.setRawMode(true);
354
+ }
355
+ stdin.resume();
356
+ stdin.on('data', handleKey);
357
+ // Handle resize
358
+ process.stdout.on('resize', () => {
359
+ [rows, cols] = getSize();
360
+ fullRedraw();
181
361
  });
182
- showPrompt();
183
- rl.prompt();
184
- }
185
- function chatPrint(text) {
186
- console.log(text);
362
+ // Initial draw
363
+ outputLines = [];
364
+ addOutput('Welcome to FivoCell — type / to see commands', 'info');
365
+ addOutput('Try: /help, /scan, /vibe, /context', '');
366
+ fullRedraw();
187
367
  }
188
- function chatClear() {
189
- clearScreen();
368
+ function stopTUI() {
369
+ cleanup();
190
370
  }
191
371
  //# sourceMappingURL=tui.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../../src/walls/07-runtime/cli/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../../../src/walls/07-runtime/cli/tui.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,88 +1,89 @@
1
- {
2
- "name": "fivocell",
3
- "version": "7.3.3",
4
- "description": "FIVO Cell — Permanent Developer Memory. Learns how you think, build, fail, and grow.",
5
- "main": "dist/walls/07-runtime/cli/cli.js",
6
- "types": "dist/walls/07-runtime/cli/cli.d.ts",
7
- "bin": {
8
- "cell": "./bin/cell.js"
9
- },
10
- "files": [
11
- "dist/",
12
- "bin/",
13
- "scripts/",
14
- "README.md",
15
- "LICENSE",
16
- "package.json"
17
- ],
18
- "engines": {
19
- "node": ">=18.0.0"
20
- },
21
- "scripts": {
22
- "build": "tsc",
23
- "dev": "tsc --watch",
24
- "test": "jest --passWithNoTests --no-coverage",
25
- "test:watch": "jest --passWithNoTests --no-coverage --watch",
26
- "test:coverage": "jest --passWithNoTests --coverage",
27
- "test:vitest": "vitest run",
28
- "lint": "eslint src/ --ext .ts",
29
- "format": "prettier --write \"src/**/*.ts\"",
30
- "start": "node dist/walls/07-runtime/cli/cli.js",
31
- "prepack": "tsc",
32
- "prepublishOnly": "tsc"
33
- },
34
- "publishConfig": {
35
- "access": "public"
36
- },
37
- "keywords": [
38
- "fivo",
39
- "cell",
40
- "taste",
41
- "learning",
42
- "ai",
43
- "coding",
44
- "mcp",
45
- "model-context-protocol",
46
- "intelligence",
47
- "developer-tools",
48
- "code-analysis",
49
- "pattern-learning",
50
- "knowledge-graph",
51
- "recommendation-engine"
52
- ],
53
- "license": "Apache-2.0",
54
- "private": false,
55
- "devDependencies": {
56
- "@types/better-sqlite3": "^7.6.13",
57
- "@types/cors": "^2.8.19",
58
- "@types/express": "^5.0.6",
59
- "@types/figlet": "^1.7.0",
60
- "@types/gradient-string": "^1.1.6",
61
- "@types/jest": "^29.5.0",
62
- "@types/morgan": "^1.9.10",
63
- "@types/node": "^20.0.0",
64
- "@types/ws": "^8.18.1",
65
- "@typescript-eslint/eslint-plugin": "^6.0.0",
66
- "@typescript-eslint/parser": "^6.0.0",
67
- "eslint": "^8.0.0",
68
- "jest": "^29.5.0",
69
- "prettier": "^3.0.0",
70
- "ts-jest": "^29.1.0",
71
- "typescript": "^5.0.0",
72
- "vitest": "^4.1.7"
73
- },
74
- "dependencies": {
75
- "better-sqlite3": "^12.10.0",
76
- "boxen": "^5.1.2",
77
- "chalk": "^4.1.2",
78
- "commander": "^11.0.0",
79
- "cors": "^2.8.6",
80
- "diff": "^5.1.0",
81
- "express": "^5.2.1",
82
- "figlet": "^1.7.0",
83
- "gradient-string": "^2.0.2",
84
- "morgan": "^1.10.1",
85
- "ora": "^5.4.1",
86
- "ws": "^8.21.0"
87
- }
88
- }
1
+ {
2
+ "name": "fivocell",
3
+ "version": "8.0.0",
4
+ "description": "FIVO Cell — Permanent Developer Memory. Learns how you think, build, fail, and grow.",
5
+ "main": "dist/walls/07-runtime/cli/cli.js",
6
+ "types": "dist/walls/07-runtime/cli/cli.d.ts",
7
+ "bin": {
8
+ "cell": "./bin/cell.js"
9
+ },
10
+ "files": [
11
+ "dist/",
12
+ "bin/",
13
+ "scripts/",
14
+ "README.md",
15
+ "LICENSE",
16
+ "package.json"
17
+ ],
18
+ "engines": {
19
+ "node": ">=18.0.0"
20
+ },
21
+ "scripts": {
22
+ "build": "tsc",
23
+ "dev": "tsc --watch",
24
+ "test": "jest --passWithNoTests --no-coverage",
25
+ "test:watch": "jest --passWithNoTests --no-coverage --watch",
26
+ "test:coverage": "jest --passWithNoTests --coverage",
27
+ "test:vitest": "vitest run",
28
+ "lint": "eslint src/ --ext .ts",
29
+ "format": "prettier --write \"src/**/*.ts\"",
30
+ "start": "node dist/walls/07-runtime/cli/cli.js",
31
+ "prepack": "tsc",
32
+ "prepublishOnly": "tsc",
33
+ "postinstall": "node -e \"if(!process.env.CELL_QUIET) console.log(\"\\x1b[33m\\x1b[1mFIVO Cell ready!\\x1b[0m Run: cell run\")\""
34
+ },
35
+ "publishConfig": {
36
+ "access": "public"
37
+ },
38
+ "keywords": [
39
+ "fivo",
40
+ "cell",
41
+ "taste",
42
+ "learning",
43
+ "ai",
44
+ "coding",
45
+ "mcp",
46
+ "model-context-protocol",
47
+ "intelligence",
48
+ "developer-tools",
49
+ "code-analysis",
50
+ "pattern-learning",
51
+ "knowledge-graph",
52
+ "recommendation-engine"
53
+ ],
54
+ "license": "Apache-2.0",
55
+ "private": false,
56
+ "devDependencies": {
57
+ "@types/better-sqlite3": "^7.6.13",
58
+ "@types/cors": "^2.8.19",
59
+ "@types/express": "^5.0.6",
60
+ "@types/figlet": "^1.7.0",
61
+ "@types/gradient-string": "^1.1.6",
62
+ "@types/jest": "^29.5.0",
63
+ "@types/morgan": "^1.9.10",
64
+ "@types/node": "^20.0.0",
65
+ "@types/ws": "^8.18.1",
66
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
67
+ "@typescript-eslint/parser": "^6.0.0",
68
+ "eslint": "^8.0.0",
69
+ "jest": "^29.5.0",
70
+ "prettier": "^3.0.0",
71
+ "ts-jest": "^29.1.0",
72
+ "typescript": "^5.0.0",
73
+ "vitest": "^4.1.7"
74
+ },
75
+ "dependencies": {
76
+ "better-sqlite3": "^12.10.0",
77
+ "boxen": "^5.1.2",
78
+ "chalk": "^4.1.2",
79
+ "commander": "^11.0.0",
80
+ "cors": "^2.8.6",
81
+ "diff": "^5.1.0",
82
+ "express": "^5.2.1",
83
+ "figlet": "^1.7.0",
84
+ "gradient-string": "^2.0.2",
85
+ "morgan": "^1.10.1",
86
+ "ora": "^5.4.1",
87
+ "ws": "^8.21.0"
88
+ }
89
+ }