diff --git a/AGENTS.md b/AGENTS.md index 21dd66d..b2a917c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,4 +1,8 @@ -# Project instructions +# Ghostwire project instructions + +The project name is Ghostwire. Keep the existing `whatsapp.py` launcher, `whatsapp_suite` package and configured repository URL unless explicitly migrating them. + +For clickable local Windows file links, use the actual absolute path starting with `C:/`, never `/C:/`. Wrap Markdown targets containing spaces in angle brackets. This format was confirmed to work in Karl's chat on 2026-10-11. Use `whatsapp_suite/` as canonical source. `whatsapp.py` is generated; rebuild it after changing Python, assets or tests. Documentation-only changes do not require rebuilding. diff --git a/CHANGELOG.md b/CHANGELOG.md index 1a5de9a..9566f55 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## Ghostwire identity — 2026-10-11 + +- Adopt the Ghostwire name and the approved monochrome ghost mascot. +- Add editable SVG and PNG logo assets and usage guidance. +- Preserve the existing launcher, package and repository URL. + ## Documentation and development guide — 2026-10-11 - Rewrite the user entry point and CLI guide around practical tasks. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b934cb4..eba9cc2 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,4 +1,4 @@ -# Develop and extend the suite +# Develop and extend Ghostwire The editable implementation is `whatsapp_suite/`. The single-file `whatsapp.py` is a generated distribution. Changes to the encoded payload will be overwritten by the builder. diff --git a/README.md b/README.md index 06fed51..91b25ae 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,14 @@ -# WhatsApp Desktop Suite +

+ Ghostwire ghost mascot +

+ +# Ghostwire + +**Inside the process. Across the wire.** Read, search and export local WhatsApp Desktop messages and contacts. Install a message listener that delivers events to an HTTPS webhook. -The main commands run JavaScript inside the signed-in Windows Desktop app through a bundled native bridge. They use neither CDP nor UI automation. This is an independent, reverse-engineered toolkit; it is not an official WhatsApp API. +The main commands run JavaScript inside the signed-in Windows Desktop app through a bundled native bridge. They use neither CDP nor UI automation. Ghostwire is an independent, reverse-engineered toolkit; it is not an official WhatsApp API. ## Start here @@ -89,6 +95,7 @@ Edit `whatsapp_suite/`; `whatsapp.py` is generated. The portable file is about 2 | [Architecture](docs/ARCHITECTURE.md) | Understand the bridge and choose the right extension point | | [Contributing](CONTRIBUTING.md) | Add a command, change JavaScript, rebuild native helpers | | [Agent skill](skills/whatsapp-suite-development/SKILL.md) | Repository-specific guidance for coding agents | +| [Brand assets](assets/README.md) | Logo files and usage | | [Troubleshooting](docs/TROUBLESHOOTING.md) | Resolve common setup and runtime problems | | [Validation](docs/VALIDATION.md) | Distinguish tested behavior from assumptions | | [Security](SECURITY.md) | Handle private data and credentials | diff --git a/assets/README.md b/assets/README.md new file mode 100644 index 0000000..aa6f04d --- /dev/null +++ b/assets/README.md @@ -0,0 +1,10 @@ +# Ghostwire brand assets + +Ghostwire's mascot is a minimal white ghost with a black outline, angry eyes and a mischievous smile. Use it with the project name **Ghostwire**. The optional tagline is **Inside the process. Across the wire.** + +- [ghostwire-icon.svg](ghostwire-icon.svg): editable vector master, white ghost on a transparent background. +- [ghostwire-icon.png](ghostwire-icon.png): 512 × 512 PNG on white, suitable for repository avatars and previews. + +Prefer the SVG for resizing. Preserve the silhouette, facial expression and proportions. Use on a light background, with space around the icon. Avoid gradients, shadows or stretching. The icon is independent of WhatsApp's branding. + +These are visual identity assets, not runtime dependencies. See [licensing status](../LICENSE.md) for the repository's current terms. diff --git a/assets/ghostwire-icon.png b/assets/ghostwire-icon.png new file mode 100644 index 0000000..53a29b2 Binary files /dev/null and b/assets/ghostwire-icon.png differ diff --git a/assets/ghostwire-icon.svg b/assets/ghostwire-icon.svg new file mode 100644 index 0000000..85f608c --- /dev/null +++ b/assets/ghostwire-icon.svg @@ -0,0 +1,8 @@ + + Ghostwire ghost mascot + A minimal white ghost with a black outline, angry eyes and a mischievous smile. + + + + diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index a5c1870..e4c15de 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -1,4 +1,4 @@ -# Architecture +# Ghostwire architecture ## Two ways to run the same code diff --git a/docs/CLI.md b/docs/CLI.md index 1a0e938..d5b9d4c 100644 --- a/docs/CLI.md +++ b/docs/CLI.md @@ -1,4 +1,4 @@ -# CLI reference +# Ghostwire CLI reference Use the portable file from a writable folder: diff --git a/skills/whatsapp-suite-development/SKILL.md b/skills/whatsapp-suite-development/SKILL.md index b7550e3..e56e11f 100644 --- a/skills/whatsapp-suite-development/SKILL.md +++ b/skills/whatsapp-suite-development/SKILL.md @@ -1,9 +1,9 @@ --- name: whatsapp-suite-development -description: Maintain and extend this repository's WhatsApp Desktop Python suite, WebView bridge, message exports and webhook listener. Use for implementation, debugging, packaging or documentation in this project. +description: Maintain and extend Ghostwire, this repository's WhatsApp Desktop Python suite, WebView bridge, message exports and webhook listener. Use for implementation, debugging, packaging or documentation in this project. --- -# WhatsApp suite development +# Ghostwire development Use the repository containing this file. It has two distributions of the same code: editable `whatsapp_suite/` and generated portable `whatsapp.py`. The core path is Python ctypes → temporary Windows hook → bundled native DLL → existing WhatsApp WebView JavaScript. Core commands require no CDP or UI automation; separate research commands may use other transports.