A warm, keyboard-driven defensive communication CLI for recognizing manipulation, rehearsing boundaries, answering bullies without becoming one, and keeping factual local notes.
██╗ ██████╗ ██╗
██║ ██╔══██╗ ██║ IRL GASLIGHT
██║ ██████╔╝ ██║ ─────────────
██║ ██╔══██╗ ██║ A calmer answer,
██║ ██║ ██║ ███████╗ right when pressure hits.
╚═╝ ╚═╝ ╚═╝ ╚══════╝
IRL Gaslight turns a terminal window into a small reality-check toolkit. Open the command palette, choose what happened, and leave with a response you can actually say—not another argument designed to exhaust you.
It does not teach gaslighting, coercion, humiliation, retaliation, or psychological abuse.
pip install --upgrade irl-gaslight
Then open the interactive experience:
irl-gaslight
Use the arrow keys to move and press Enter to choose. On first launch, the shared IRL identity ritual can create your local profile and optionally link Google.
| Path | What you get |
|---|---|
| Pattern check | Phrase-based signals for 20 manipulation tactics |
| Boundaries | Calm lines with consequences you control |
| Comebacks | Calm, dry, and direct answers without abuse |
| Rehearsal | Practice against realistic pressure scenarios |
| Incident log | Factual notes stored only on your machine |
| Daily grounding | One deterministic reality check each day |
| Favorites | A personal response shelf stored locally |
| Safety resources | Clear signals for stepping beyond a comeback |
| Shared identity | Name, pronunciation, pronouns, avatar, and oath |
| Google OAuth | Optional local account link shared across IRL tools |
The library contains 110 curated defensive entries across work, school, family, dating, friendship, and online situations. The interface includes a daily streak, clipboard support, favorites, responsive ANSI title art, and the warm burnt-orange IRL-Wisdom command-palette aesthetic.
irl-gaslight spot "That never happened. You imagined it."
irl-gaslight boundary --context work
irl-gaslight comeback --tone dry
irl-gaslight rehearse
irl-gaslight log
irl-gaslight history
irl-gaslight clear-log
irl-gaslight daily
irl-gaslight favorites
irl-gaslight resources
irl-gaslight upgrade
Add --copy or -c to supported response commands:
irl-gaslight boundary --context school --copy
Interactive lesson cards also offer Copy, Save to favorites, Back, and Exit actions.
IRL Gaslight uses the same local identity system as IRL Wisdom. A profile created in one ecosystem CLI can appear in the others.
irl-gaslight profile
irl-gaslight profile edit
irl-gaslight profile reset
irl-gaslight avatar
irl-gaslight oath
irl-gaslight oauth login
irl-gaslight oauth status
irl-gaslight oauth logout
Google linking is ready without API keys, downloaded client files, or environment-variable setup. The sign-in ritual uses OAuth 2.0 Authorization Code with PKCE and keeps profile and token data local to the device. Secrets are never committed or bundled into the package.
Google linking is optional. Cancelling, going offline, or skipping login does not block the defensive tools.
For a browserless terminal:
irl-gaslight oauth login --no-browser
IRL Gaslight checks PyPI, compares versions, and asks before installing:
irl-gaslight upgrade
For scripts and confident terminals:
irl-gaslight upgrade --yes
irl-gaslight
├── Typer commands
├── Questionary command palette
├── Rich terminal rendering
├── Local JSON defensive library
├── irl_identity
│ ├── first-launch profile ritual
│ ├── avatars and Wisdom oath
│ └── Google OAuth with PKCE
├── ~/.irl_gaslight.json
│ ├── favorites
│ ├── incident notes
│ └── daily streak
└── ~/.irl
├── profile.json
└── google_oauth.json
There is no application database, telemetry, or cloud sync. Gaslight state, the shared profile, and OAuth tokens stay on the local device.
The detector is a phrase-based educational aid, not a diagnosis. Context, repetition, power imbalance, and safety matter more than one sentence.
Do not use a comeback when it could increase danger. If someone is threatening, stalking, controlling, or violent, prioritize distance, trusted support, and local emergency or abuse-support services. Use irl-gaslight resources for the built-in safety checklist.
The optional ML workspace trains a ~4.94M-parameter classifier and curated-response retriever without reading private logs or OAuth data.
git clone https://github.com/Dev2Creator/irl-gaslight.git
cd irl-gaslight
python -m venv .venv
.venv\Scripts\activate
python -m pip install -e .
irl-gaslight
Build and validate a release:
python -m pytest -q
python -m build
python -m twine check dist/*
Created by Anika Mukherjee
Email: cuteypieanika@gmail.com
GitHub: @Dev2Creator
Copyright © 2026 Anika Mukherjee. All rights reserved.
IRL Gaslight™ is a trademark of Anika Mukherjee.
The source code is licensed under the GNU Affero General Public License v3 or later.
Built for people who want their footing back before they choose their next words.