From 8f1959b41f9a0133e24809eab8d634c96ac914a8 Mon Sep 17 00:00:00 2001 From: Ayla Croft Date: Sat, 5 Sep 2026 16:08:12 -0400 Subject: [PATCH] 16f-rename-ultraviolet: rename the product in README and NOTICE prose The product is Ultraviolet. This renames the product name in prose on the two public surfaces and changes nothing else. Two files, 25 insertions, 25 deletions. README.md -- 23 occurrences of HackTUI become Ultraviolet. Includes the H1 at :313 (`# Running HackTUI`, a heading outside the fence, which opens at :317) and the clone URL and `cd` lines at :209-210, which ARE inside a ```bash fence and are renamed by owner decision because the repository is already github.com/HackTuah/Ultraviolet. The old URL redirects, which is why it read fine and was still stale. NOTICE -- 2 occurrences at :1 and :4. Added to scope mid-review after a reviewer found that README:966 directs the reader to NOTICE for attribution while NOTICE still named the old product: the two agreed before this commit and would not have after it. Identifiers are deliberately untouched: hacktui_ 36 -> 36 and HACKTUI_ 7 -> 7 in README, holytrinity 2 -> 2 tree-wide. Those belong to the script slice (SCR-71), which does not exist yet -- `ls tools/rename` fails at this tree -- so the tree-reproduction proof that slice carries is not applicable to this commit and was not asked of it. Five review rounds, two independent reviewers per round on the same tree. Round 5 returned a split verdict: r1 PASS, r2 FAIL on one finding -- FINDINGS.md:82's "occurrence counts" heading also covering two `wc -l` line counts -- which the owner dispositioned residual, evidence correct and one word wrong. No round 6, no edit. Remaining residuals R-2, R-3, R-4, R-A, R-B, R-C are held for owner. Evidence in internal/slices/16f-rename-ultraviolet/FINDINGS.md: every count pair before and after, command-written, re-derived independently by both round-5 lanes and closed against the diff stat (README 23+23 = 46, NOTICE 2+2 = 4). Issue: SCR-71. Milestone 3a. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01VNdY6wVS773UJgrHUeBN3Y Reviewed-diff: sha256:311107009372da129a9821f3efc52ff81cb94a782373c67dd5d5a67fcc2a840e --- NOTICE | 4 ++-- README.md | 46 +++++++++++++++++++++++----------------------- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/NOTICE b/NOTICE index 20a8b17..7e6c79e 100644 --- a/NOTICE +++ b/NOTICE @@ -1,7 +1,7 @@ -HackTUI +Ultraviolet Copyright 2026 Ayla Croft -This product includes software developed by the HackTUI project. +This product includes software developed by the Ultraviolet project. Licensed under the Apache License, Version 2.0. See the LICENSE file for the full terms. diff --git a/README.md b/README.md index dea7aca..cba2806 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# HackTUI +# Ultraviolet -HackTUI is a terminal-native purple team security operations platform built on **Elixir** and the **BEAM runtime**. +Ultraviolet is a terminal-native purple team security operations platform built on **Elixir** and the **BEAM runtime**. It combines: @@ -10,17 +10,17 @@ It combines: - bounded agent-assisted workflows using **Jido** - AI interoperability through **MCP (Model Context Protocol)** -HackTUI is designed as a **research and experimentation platform** for autonomous and human-guided security operations. +Ultraviolet is designed as a **research and experimentation platform** for autonomous and human-guided security operations. This repository includes: -- the HackTUI platform +- the Ultraviolet platform - the built-in MCP server -- Jido-based bounded agent components inside HackTUI +- Jido-based bounded agent components inside Ultraviolet -This repository does **not** include my external Hermes agent. Hermes was used as a development partner and can connect to HackTUI through MCP, but the private agent itself is not part of this codebase. +This repository does **not** include my external Hermes agent. Hermes was used as a development partner and can connect to Ultraviolet through MCP, but the private agent itself is not part of this codebase. -## Why HackTUI Exists +## Why Ultraviolet Exists Most security platforms today are built around: @@ -29,7 +29,7 @@ Most security platforms today are built around: - conventional SIEM pipelines - analyst workflows designed for browsers first -HackTUI explores a different direction: +Ultraviolet explores a different direction: - terminal-first operations - actor-style concurrency on the BEAM @@ -41,7 +41,7 @@ The goal is not to replace mature security platforms. The goal is to explore wha ## High-Level Architecture -HackTUI is an **Elixir umbrella application**. +Ultraviolet is an **Elixir umbrella application**. ```text apps/ @@ -124,15 +124,15 @@ Responsible for rendering: Bounded agent integration. -Uses the **real Jido runtime** for advisory investigation workflows and includes the MCP server implementation that external agents can use to interact with HackTUI. +Uses the **real Jido runtime** for advisory investigation workflows and includes the MCP server implementation that external agents can use to interact with Ultraviolet. ### `hacktui_collab` Experimental collaboration boundary for external integrations. -## What HackTUI Does +## What Ultraviolet Does -HackTUI currently supports: +Ultraviolet currently supports: - live host telemetry ingestion - network flow ingestion through `tshark` / `dumpcap` @@ -145,13 +145,13 @@ HackTUI currently supports: - Jido-backed agent runtime integration - privacy masking for safer screenshots and demos -In practice, this means HackTUI can collect observations, promote suspicious activity into alerts, open cases, expose system state through MCP, and allow a bounded agent to assist with investigation while keeping a human operator in control. +In practice, this means Ultraviolet can collect observations, promote suspicious activity into alerts, open cases, expose system state through MCP, and allow a bounded agent to assist with investigation while keeping a human operator in control. ## Major Design Principles ### Terminal First -HackTUI is built to work over SSH, in remote shells, and in environments where browser-first tooling is undesirable. +Ultraviolet is built to work over SSH, in remote shells, and in environments where browser-first tooling is undesirable. ### Durable State @@ -197,7 +197,7 @@ Useful optional tools: - Observer GUI support - `git` -HackTUI is currently best supported on **Linux**. +Ultraviolet is currently best supported on **Linux**. --- @@ -206,8 +206,8 @@ HackTUI is currently best supported on **Linux**. ## 1. Clone the repository ```bash -git clone https://github.com/HackTuah/HackTUI-Hermes-Jido.git -cd HackTUI-Hermes-Jido +git clone https://github.com/HackTuah/Ultraviolet.git +cd Ultraviolet ``` ## 2. Install Elixir dependencies @@ -310,7 +310,7 @@ If your environment uses app-specific migration tasks, run the equivalent store --- -# Running HackTUI +# Running Ultraviolet ## Start the full runtime in IEx @@ -401,7 +401,7 @@ Observer is useful for inspecting: # Verifying Jido Integration -HackTUI uses the **real Jido runtime**, not a local stub. +Ultraviolet uses the **real Jido runtime**, not a local stub. Run the following in IEx: @@ -434,7 +434,7 @@ Expected result: paths under `_build/dev/lib/jido/` and `_build/dev/lib/jido_act # Running the MCP Server -HackTUI includes a built-in MCP server. +Ultraviolet includes a built-in MCP server. ## Start in stdio mode @@ -903,14 +903,14 @@ This repository does **not** include my private Hermes runtime or personal agent It **does** include: - the built-in MCP server -- Jido integration inside HackTUI +- Jido integration inside Ultraviolet - bounded agent components used by the system itself --- # Current Status -HackTUI is a **research prototype** exploring: +Ultraviolet is a **research prototype** exploring: - terminal-native SOC workflows - purple-team telemetry and replay @@ -963,7 +963,7 @@ printf '%s\n' "$body" | ./bin/hacktui-mcp # License -HackTUI is licensed under the **Apache License, Version 2.0**. See [`LICENSE`](LICENSE) +Ultraviolet is licensed under the **Apache License, Version 2.0**. See [`LICENSE`](LICENSE) for the full terms and [`NOTICE`](NOTICE) for attribution requirements. Apache-2.0 was chosen over a simpler permissive license because it includes an