From a3b6eda9910d8561bbbd0b2922a648dcbba8d571 Mon Sep 17 00:00:00 2001 From: KeiSei84 <2206745@gmail.com> Date: Wed, 27 May 2026 14:30:49 +0800 Subject: [PATCH] =?UTF-8?q?feat(splash+install):=20v0.47=20=E2=80=94=20yel?= =?UTF-8?q?low=20drop-shadow=20+=20post-install=20launch=20prompt=20+=20Wi?= =?UTF-8?q?ndows=20guidance?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. Splash (bin/kei) — благородная насыщенная жёлто-бронзовая drop-shadow on the KEISEI ASCII art: - New CS color: \033[1;38;5;130m (noble saturated bronze-gold). - Shadow block printed FIRST (6 lines, offset +2 cols right). - \e[7A cursor-up returns to start; blue art overwrites where they overlap. - Visible shadow: right-edge 2-col tail on blue rows 2-6 + full shadow row 6 standalone (offset down-right). - TTY-gated: no terminal → no shadow, no colors (existing fallback). 2. bootstrap.sh — post-install launch prompt: "Запустить kei сейчас? [Y/n]" at the very end, after all install + onboarding + next-steps text. Default Y on Enter. - Stdin-TTY gate only (rule: tty-interactivity-gate.md — `-t 1` would falsely skip under curl|bash because the bootstrap log tees stdout). - Reads from /dev/tty explicitly so curl|bash piped install still works. - KEI_NO_AUTORUN=1 env opt-out for CI / scripts. 3. README — Platforms section: honest Windows status. - macOS + Linux: fully supported. - Windows: substrate is Bash-only; WSL2 recommended path; MCP-server binary (.exe) ships in releases for MCP-only mode; native PowerShell port NOT on roadmap (WSL gives 100% coverage with 0 code duplication). 4. v0.47 version bumps: plugin.json + bin/kei splash + README counts header. Co-Authored-By: Claude Opus 4.7 (1M context) --- README.md | 20 +++++++++++++++++++- bin/kei | 19 ++++++++++++++++--- bootstrap.sh | 19 +++++++++++++++++++ plugin.json | 2 +- 4 files changed, 55 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 175fb73..80f7ea4 100644 --- a/README.md +++ b/README.md @@ -46,12 +46,30 @@ sleep consolidates 30-session windows into morning markdown reports. updates, agent regeneration, DNA index refresh, keimd graph reindex. Auto-self-indexing via kei-registry SQLite. -## By the numbers (v0.46) +## By the numbers (v0.47) 110 Rust crates · 69 skills · 54 hooks · 38 agent manifests · 86 substrate blocks · 18 capability atoms · 7 substrate roles · 565 indexed DNAs · 6 install profiles (minimal → full). +## Platforms + +- **macOS** (arm64 + x64) — fully supported, primary dev target. +- **Linux** (Ubuntu, Debian, Fedora, Arch — x64 + arm64) — fully supported. +- **Windows** — substrate itself is Bash-only, but the **MCP server binary** + ships as `kei-mcp-server-windows-x64.exe` in every release. Two + recommended paths: + - **WSL2** (recommended) — install Windows Subsystem for Linux, + then run `bootstrap.sh` inside Ubuntu/Debian as normal. Full + substrate works. + - **MCP-only** — drop `kei-mcp-server-windows-x64.exe` into your + Claude Desktop / VS Code MCP config to get `spawn_agent` + + `kei_bash`/`kei_edit`/`kei_write` tools, without the full + Bash-based substrate. Skills, hooks, and `kei` CLI not available + in this mode. + - Native PowerShell port: not on the roadmap (would double maintenance + surface; WSL gives 100% coverage with 0 duplication). + ## Maturity matrix The substrate ships as a layered set of components at different diff --git a/bin/kei b/bin/kei index 7bbaabe..6307ede 100755 --- a/bin/kei +++ b/bin/kei @@ -217,17 +217,30 @@ splash() { as="$(active_sessions)" # Only color if stdout is a tty. Brand palette: голубой (sky-blue) + жёлтый (gold). - local C0= C1= C2= C3= CV= + local C0= C1= C2= C3= CV= CS= GO_BACK= SHADOW_BLOCK= if [ -t 1 ]; then C0=$'\033[0m' C1=$'\033[1;38;5;39m' # голубой (sky-blue) — logo C2=$'\033[1;38;5;220m' # жёлтый (gold) — brand line C3=$'\033[2;38;5;39m' # dim blue — separators CV=$'\033[1;38;5;220m' # жёлтый — field values + CS=$'\033[1;38;5;130m' # благородная насыщенная жёлто-бронзовая тень + # v0.47 drop shadow: print shadow first (offset +2 cols right), + # then \e[7A returns cursor to start of art, blue letters overwrite + # shadow where they overlap. Visible shadow = right-edge tail + + # one full row below blue's bottom (offset +1 row down). + GO_BACK=$'\033[7A' + SHADOW_BLOCK=" +${CS} ██╗ ██╗███████╗██╗███████╗███████╗██╗${C0} +${CS} ██║ ██╔╝██╔════╝██║██╔════╝██╔════╝██║${C0} +${CS} █████╔╝ █████╗ ██║███████╗█████╗ ██║${C0} +${CS} ██╔═██╗ ██╔══╝ ██║╚════██║██╔══╝ ██║${C0} +${CS} ██║ ██╗███████╗██║███████║███████╗██║${C0} +${CS} ╚═╝ ╚═╝╚══════╝╚═╝╚══════╝╚══════╝╚═╝${C0}${GO_BACK}" fi cat <&2 + read -r _reply