That one who knows all the secrets
Project description
Yog-Sothoth
The Key and the Gate
A personal infrastructure CLI tool written in Go. Not something you work inside — it's the ritual you run at the threshold of a project. It eliminates friction at project lifecycle boundaries: starting clean, staying clean, validating everything.
Pairs with Azathoth (AI/MCP layer) as a personal dev acceleration system.
Yog creates the world. Azathoth understands it. You do everything.
Commands
| Command | Description |
|---|---|
yog doctor |
Health check — runtimes, .env completeness, git, README, LICENSE |
yog env check |
Validates nothing is missing vs .env.example |
yog env diff |
Surfaces drift — vars in .env but not in the template |
yog env sync |
Interactively fills in missing variables |
yog env load |
Walks up the directory tree to find and load .env |
yog reborn [runtime] |
Deep-cleans build artifacts and reinstalls from scratch |
reborn flags: --deep (also nuke lockfiles), --full (recursive workspace
clean), --dry-run, --no-install
Node.js is never supported. Deno and Bun only.
Install
Go binary
go build -o ~/go/bin/yog ./src/yog_sothoth
Ensure ~/go/bin is in your $PATH. On NixOS, add it via home.sessionPath in
home-manager, or use the uv wrapper below.
uv wrapper (NixOS / read-only systems)
uv tool install --editable .
This installs a yog shim via the Python wrapper that proxies to the compiled
Go binary — no PATH surgery required.
Architecture
Strict 3-layer separation — non-negotiable:
src/yog_sothoth/
├── main.go ← calls cmd.Execute(), nothing else
├── cmd/ ← CLI layer: Cobra only, zero logic
├── internal/
│ ├── deps/ ← reborn logic
│ ├── env/ ← .env management logic
│ └── health/ ← doctor check logic
└── pkg/ ← shared config types + Lip Gloss UI styles
cmd/defines flags and delegates. Never contains business logic.internal/does all real work. Never knows about Cobra.pkg/holds only what's genuinely shared across layers.
Tech Stack
- Language: Go — Cobra · Viper · Lip Gloss · godotenv
- Python shim: uv workspace ·
uv tool install --editable .
License
This project is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yog_sothoth-0.0.2.tar.gz.
File metadata
- Download URL: yog_sothoth-0.0.2.tar.gz
- Upload date:
- Size: 11.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f11f21d16e9c0ee43d9e1f0ff037f8d77a789f74dc3143328fbc6f8e0f3371bc
|
|
| MD5 |
d564a2965317d012cb1ada95a8bcc23e
|
|
| BLAKE2b-256 |
01a41751dd7a694405a86327ff6a490456228b43e614377bdab0932ab7389195
|
File details
Details for the file yog_sothoth-0.0.2-py3-none-any.whl.
File metadata
- Download URL: yog_sothoth-0.0.2-py3-none-any.whl
- Upload date:
- Size: 11.9 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"NixOS","version":"25.11","id":"xantusia","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d843858d1d639cd5b9fe8c745304f1cf279b5609557dcc5a07c52b20b92dcc9e
|
|
| MD5 |
0ce749492205c5885685be40d40d3d07
|
|
| BLAKE2b-256 |
00a5536f8de65db41a4e7b3a23e916395ad69428708103aee751fcb03dd80c16
|