@phren/cli 0.0.1 → 0.0.2
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/mcp/dist/phren-art.js +22 -14
- package/mcp/dist/shell-render.js +18 -14
- package/package.json +1 -1
package/mcp/dist/phren-art.js
CHANGED
|
@@ -6,24 +6,32 @@
|
|
|
6
6
|
*/
|
|
7
7
|
const ESC = "\x1b[";
|
|
8
8
|
const RESET = `${ESC}0m`;
|
|
9
|
-
const PURPLE = `${ESC}35m`; // magenta
|
|
10
|
-
const BRIGHT_PURPLE = `${ESC}95m`; // bright magenta
|
|
11
|
-
const CYAN = `${ESC}96m`; // bright cyan
|
|
9
|
+
const PURPLE = `${ESC}35m`; // magenta — body
|
|
10
|
+
const BRIGHT_PURPLE = `${ESC}95m`; // bright magenta — highlights
|
|
11
|
+
const CYAN = `${ESC}96m`; // bright cyan — sparkle
|
|
12
12
|
const DIM = `${ESC}2m`;
|
|
13
|
-
const DARK_PURPLE = `${ESC}38;5;57m`; // deep purple
|
|
13
|
+
const DARK_PURPLE = `${ESC}38;5;57m`; // deep purple — shadow/outline
|
|
14
|
+
const LIGHT_PURPLE = `${ESC}38;5;141m`; // lavender — brain highlights
|
|
15
|
+
const MID_PURPLE = `${ESC}38;5;98m`; // mid tone
|
|
16
|
+
const NAVY = `${ESC}38;5;18m`; // darkest outline
|
|
14
17
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
+
* Phren ASCII art (~11 lines tall, ~20 cols wide).
|
|
19
|
+
* Matches the pixel-art PNG: round purple brain with wrinkle texture,
|
|
20
|
+
* diamond eyes, cute smile, stubby legs, cyan sparkle.
|
|
21
|
+
* Uses Unicode half-blocks and ANSI 256-color for shading depth.
|
|
18
22
|
*/
|
|
19
23
|
export const PHREN_ART = [
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
` ${CYAN}✦${RESET}`,
|
|
25
|
+
` ${NAVY}▄${DARK_PURPLE}▄▄${PURPLE}████${DARK_PURPLE}▄▄${NAVY}▄${RESET}`,
|
|
26
|
+
` ${NAVY}▄${PURPLE}██${LIGHT_PURPLE}▓▓${PURPLE}██${LIGHT_PURPLE}▓▓${PURPLE}██${NAVY}▄${RESET}`,
|
|
27
|
+
` ${NAVY}█${PURPLE}██${LIGHT_PURPLE}░${BRIGHT_PURPLE}▓${PURPLE}██${LIGHT_PURPLE}░${BRIGHT_PURPLE}▓${PURPLE}███${NAVY}█${RESET}`,
|
|
28
|
+
` ${NAVY}█${PURPLE}███${MID_PURPLE}▄${PURPLE}████${MID_PURPLE}▄${PURPLE}███${NAVY}█${RESET}`,
|
|
29
|
+
` ${NAVY}█${PURPLE}█${NAVY}◆${PURPLE}██${DARK_PURPLE}▀${PURPLE}██${NAVY}◆${PURPLE}████${NAVY}█${RESET}`,
|
|
30
|
+
` ${NAVY}█${PURPLE}███${DIM}${PURPLE}ᵥ${RESET}${PURPLE}██████${BRIGHT_PURPLE}█${NAVY}█${RESET}`,
|
|
31
|
+
` ${NAVY}█${PURPLE}██████████${NAVY}█${RESET}`,
|
|
32
|
+
` ${NAVY}▀${DARK_PURPLE}▀${PURPLE}████████${DARK_PURPLE}▀${NAVY}▀${RESET}`,
|
|
33
|
+
` ${DARK_PURPLE}██${RESET} ${DARK_PURPLE}██${RESET}`,
|
|
34
|
+
` ${NAVY}▀▀▀${RESET} ${NAVY}▀▀▀${RESET}`,
|
|
27
35
|
];
|
|
28
36
|
/** Single-line compact phren for inline use */
|
|
29
37
|
export const PHREN_INLINE = `${PURPLE}◆${RESET}`;
|
package/mcp/dist/shell-render.js
CHANGED
|
@@ -137,22 +137,26 @@ export function gradient(text, colors = PHREN_GRADIENT) {
|
|
|
137
137
|
}
|
|
138
138
|
// Block-letter logo for startup animation
|
|
139
139
|
const PHREN_LOGO = [
|
|
140
|
-
"
|
|
141
|
-
"
|
|
142
|
-
"██║
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
"
|
|
140
|
+
"██████╗ ██╗ ██╗██████╗ ███████╗███╗ ██╗",
|
|
141
|
+
"██╔══██╗██║ ██║██╔══██╗██╔════╝████╗ ██║",
|
|
142
|
+
"██████╔╝███████║██████╔╝█████╗ ██╔██╗ ██║",
|
|
143
|
+
"██╔═══╝ ██╔══██║██╔══██╗██╔══╝ ██║╚██╗██║",
|
|
144
|
+
"██║ ██║ ██║██║ ██║███████╗██║ ╚████║",
|
|
145
|
+
"╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝",
|
|
146
146
|
];
|
|
147
|
-
// Compact phren character for startup (
|
|
147
|
+
// Compact phren character for startup (matches phren-art.ts PHREN_ART)
|
|
148
148
|
const PHREN_STARTUP = [
|
|
149
|
-
"\x1b[96m
|
|
150
|
-
"\x1b[38;5;
|
|
151
|
-
"\x1b[35m
|
|
152
|
-
"\x1b[
|
|
153
|
-
"\x1b[35m
|
|
154
|
-
"\x1b[38;5;
|
|
155
|
-
"\x1b[38;5;
|
|
149
|
+
" \x1b[96m✦\x1b[0m",
|
|
150
|
+
" \x1b[38;5;18m▄\x1b[38;5;57m▄▄\x1b[35m████\x1b[38;5;57m▄▄\x1b[38;5;18m▄\x1b[0m",
|
|
151
|
+
" \x1b[38;5;18m▄\x1b[35m██\x1b[38;5;141m▓▓\x1b[35m██\x1b[38;5;141m▓▓\x1b[35m██\x1b[38;5;18m▄\x1b[0m",
|
|
152
|
+
" \x1b[38;5;18m█\x1b[35m██\x1b[38;5;141m░\x1b[95m▓\x1b[35m██\x1b[38;5;141m░\x1b[95m▓\x1b[35m███\x1b[38;5;18m█\x1b[0m",
|
|
153
|
+
" \x1b[38;5;18m█\x1b[35m███\x1b[38;5;98m▄\x1b[35m████\x1b[38;5;98m▄\x1b[35m███\x1b[38;5;18m█\x1b[0m",
|
|
154
|
+
" \x1b[38;5;18m█\x1b[35m█\x1b[38;5;18m◆\x1b[35m██\x1b[38;5;57m▀\x1b[35m██\x1b[38;5;18m◆\x1b[35m████\x1b[38;5;18m█\x1b[0m",
|
|
155
|
+
" \x1b[38;5;18m█\x1b[35m███\x1b[2m\x1b[35mᵥ\x1b[0m\x1b[35m██████\x1b[95m█\x1b[38;5;18m█\x1b[0m",
|
|
156
|
+
" \x1b[38;5;18m█\x1b[35m██████████\x1b[38;5;18m█\x1b[0m",
|
|
157
|
+
" \x1b[38;5;18m▀\x1b[38;5;57m▀\x1b[35m████████\x1b[38;5;57m▀\x1b[38;5;18m▀\x1b[0m",
|
|
158
|
+
" \x1b[38;5;57m██\x1b[0m \x1b[38;5;57m██\x1b[0m",
|
|
159
|
+
" \x1b[38;5;18m▀▀▀\x1b[0m \x1b[38;5;18m▀▀▀\x1b[0m",
|
|
156
160
|
];
|
|
157
161
|
// ── Line-based viewport: edge-triggered scroll (stable, no jumpiness) ─────────
|
|
158
162
|
export function lineViewport(allLines, cursorFirstLine, cursorLastLine, height, prevStart) {
|