Governed shell binary — human + machine modes (Rust)
Find a file
Tyler J King 0adcf12e78 feat: Phase 4 — Bascule dual-cluster connectivity
Hetzner Bascule: already deployed (pod 756dccc486-wwg78, 5d uptime).
  Exposed via NodePort 30222 on all worker nodes.
  SSH responds: russh_0.46.0, session created, DID resolved.

Connectivity verified from WSL2:
  ssh stg.gsh '!whoami'
  → session: 019d4fd5-..., did: did:web:guildhouse.dev/user/tyler
  → tier: ReadOnly, roles: ["operator"]

Config files:
  config/bascule-dev.toml    — permissive auth, localhost:2223
  config/bascule-hetzner.toml — reference for Hetzner NodePort endpoints

bascule-proxy built and installed (~/.local/bin/).
  Config at ~/.config/bascule/config.toml
  Hosts: dev (localhost:2223), stg/prod (178.104.110.197:30222)

SSH config: stg.gsh and prod.gsh aliases configured.

The full chain: WSL2 → SSH → Bascule (Hetzner) → session + DID.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 16:14:51 -04:00
config feat: Phase 4 — Bascule dual-cluster connectivity 2026-04-02 16:14:51 -04:00
gsh feat: gsh human mode — interactive governed shell with reedline 2026-04-02 15:44:34 -04:00
libgsh feat: gsh human mode — interactive governed shell with reedline 2026-04-02 15:44:34 -04:00
scripts feat: gsh human mode — interactive governed shell with reedline 2026-04-02 15:44:34 -04:00
.gitignore feat: gsh machine mode — first governed shell execution 2026-04-01 19:01:22 -04:00
Cargo.lock feat: gsh human mode — interactive governed shell with reedline 2026-04-02 15:44:34 -04:00
Cargo.toml feat: gsh human mode — interactive governed shell with reedline 2026-04-02 15:44:34 -04:00
DESIGN.md feat: gsh governed shell — design exploration 2026-03-30 23:20:27 -04:00
README.md Initial commit 2026-03-31 03:15:52 +00:00

gsh

gsh — the GCAP governed shell. Human and machine modes. Chronicle-attributed execution.