prevail-cli

skill
Security Audit
Warn
Health Warn
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 7 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

prevAIl — a terminal cockpit for your life. Fan high-stakes questions out to Claude + Codex + Gemini in parallel and let the council vote. Self-contained Bun + OpenTUI binary; bring-your-own CLI.

README.md

prevAIl

A terminal cockpit for the rest of your life.
Ask Claude, Codex, Antigravity (Google's `agy`), and your local Ollama the same question in parallel. Let the council vote.

release install bun OpenTUI MIT

prevAIl cockpit — 20+ life domains, council × framework × lens × web × save × serendipity × auto
The cockpit at a glance. 20+ life domains in the sidebar. The active workspace on the right (here: chief). A single ConfigBar at the bottom carries every per-turn dial — Council · Framework · Lens · Web · Save · Serendipity · Auto — each clickable.


One question. Four engines. One verdict. Every part of your life — wealth, health, tax, career — is a folder of markdown. Open one, ask, and prevAIl fans the question out to every CLI you already have logged in. A chair model reads all four replies and writes one decisive answer, with a dedicated panel surfacing the disagreement — which is the point. Works from your terminal or your phone (Telegram bridge). Single 95 MB binary. No daemon, no Docker, no API keys.

prevAIl — navigate to a domain, switch tabs, see the deliberation chips
Per-domain workspaces. Each domain has its own chat / state / quick start / prompts / skills tabs. Frameworks (BLUF, SCQA, …) and lenses (FIRST PRINCIPLES, CONTRARIAN, MOM, DAD, …) override per-domain — what you set on wealth stays on wealth.

┌─ wealth ─────────────────────────────────────────────────────── prevAIl ─┐
│ [chat] · state · quick start · prompts · skills      ● Council ON  ◇ cfg │
├──────────────────────────────────────────────────────────────────────────┤
│ › /council should I prepay the mortgage or invest the cash?              │
│                                                                          │
│   ◆ convening · claude · codex · gemini · ollama                         │
│                                                                          │
│   ◇ Claude    At your tax rate the effective mortgage cost is ~4.1%.    │
│              A diversified index has cleared 7% long-run. Math: invest. │
│   ◇ Codex     Spread = (after-tax return − rate) × principal × years.  │
│              Positive → invest. Keep 6 months liquidity floor.          │
│   ◇ Antigravity Behavioral: a guaranteed return on a known liability vs. │
│              a probabilistic one. Pick the path you'll actually hold.   │
│   ◇ Ollama    Local-only check: same conclusion as the cloud panel.    │
│                                                                          │
│  ┌─ ▸ Where panelists disagreed ──────────────────────────────────┐    │
│  │ Liquidity floor: Codex says 6mo, Antigravity says 12mo (risk-off).  │    │
│  └────────────────────────────────────────────────────────────────┘    │
│                                                                          │
│  ┌─ ◆ Verdict · synthesized by Claude ────────────────────────────┐    │
│  │ Invest IF (a) ≥6mo liquidity, (b) you'll hold through −30%,    │    │
│  │ (c) spread > 2%. Else prepay. Liquidity is the binding test.   │    │
│  └────────────────────────────────────────────────────────────────┘    │
│                                                                          │
│  ready · 4 calls · 3k↑ 1.4k↓ · ~$0.03         ◆ Framework: BLUF  ● ON  │
└──────────────────────────────────────────────────────────────────────────┘

Install

curl -fsSL https://raw.githubusercontent.com/fru-dev3/prevail-cli/main/scripts/install.sh | bash
prevail

First launch runs a 30-second wizard. Pick the bundled demo vault (synthetic, safe to explore) or point at your own folder. macOS + Linux. Windows via WSL.

Why prevAIl

◆ Council, not a single voice Four models in parallel, one chair synthesizes. Disagreement gets its own panel — that's where the value is.
◇ Domain = folder wealth/, health/, tax/. Plain markdown. Edit anywhere. Sync with git, iCloud, Tailscale. No database.
● Uses CLIs you already pay for Spawns claude, codex, gemini — inherits every login, MCP server, and skill. No API keys to manage.
◇ Local-private when it matters Ollama auto-detected at localhost:11434. Run health or wealth on a local-only council.
▸ Off-the-keyboard prevail daemon --telegram exposes the cockpit on your phone. Same engines, same council. Chat-ID allowlist enforced.
◆ Scheduled briefings prevail briefing add --cron "0 7 * * *" --domain wealth --prompt "what's new this week?". Verdict lands on your phone at 7am.
◇ Self-curating vault Every chat writes a one-line summary to <domain>/_log/YYYY-MM-DD.md. The vault writes its own decision log.
● Hardened by default Vault-shell off by default, env-scrubbed subprocess, file-locked schedules, OAuth refresh tokens chmod 0600. Audit notes →

The cockpit at a glance

┌─ prevAIl ─────────────────────────────────────────────────────────────────┐
│  domains            │  [chat] · state · quick start · prompts · skills    │
│  ───────────────    │  ───────────────────────────────────────────────    │
│  ▸ wealth      ●    │                                                     │
│    health      ·    │   council  ● ON       framework  ◆ BLUF             │
│    tax         ·    │   vault    ▸ open     ◇ configure                   │
│    career      ·    │                                                     │
│    chief       ·    │  ─ chat ──────────────────────────────────────────  │
│    vision      ·    │   you › what's new in tax this quarter?             │
│                     │   ai  › Three deltas worth pulling forward …       │
│  apps  [s]          │                                                     │
│  ───────────────    │   ▸ tools     ◆ Council ON     ◇ configure         │
│    1password   ✓    │                                                     │
│    plaid       ✓    │                                                     │
│    youtube     !    │  claude ✓   codex ✓   gemini ·   ollama ✓          │
└─────────────────────┴─────────────────────────────────────────────────────┘
  • Sidebar lists every domain and every connected app. ↑ ↓ to navigate, s to swap focus between the two lists.
  • Tab strip is consistent everywhere: chat is the default landing, state shows the live vault snapshot, quick start / prompts are editable markdown, skills toggles which skills the chair can call.
  • Council is a single toggle on the right. ● ON fans every question to every available CLI; ◆ OFF uses just the active one.
  • Framework cycles through BLUF · WIN · SCQA · SBAR · OODA · pros/cons · steelman. One click; the answer is rewritten in that structure.
  • Tools panel (▸ tools) exposes the MCP server snippet, Telegram setup, briefings, calibration, benchmarks, and clickable paths to the vault + config.

30 seconds in

# Boot the cockpit
prevail demo                    # safe synthetic vault — explore first
prevail                         # use your own vault

# Inside, type:
/council should I sell or rent? # fans to all engines, gives one verdict
/framework bluf                 # Bottom Line Up Front structure
/distill                        # turn this conversation into a reusable skill

On your phone

prevail telegram setup <bot-token>     # token from @BotFather
prevail telegram add-user <chat-id>    # mandatory allowlist
prevail daemon --telegram              # poll Telegram + tick briefings

Now /council, /domain wealth, /framework bluf — from anywhere.

Connectors

Every app declares how it authenticates: api, oauth, browser, mcp, or manual. Click a connector in the sidebar to see live auth status, what's missing, and Test Connection. The OAuth runner handles PKCE + loopback callback + token refresh:

prevail connectors list
prevail connectors test plaid
prevail connectors oauth youtube-analytics

Ships with examples for each auth type: Plaid (api), LinkedIn (browser), YouTube Analytics (oauth), GitHub (http+key), Google Calendar (mcp).

Commands

prevail                          boot the cockpit
prevail init                     first-run wizard
prevail demo                     use the synthetic vault
prevail doctor                   check vault + CLIs
prevail council ...              council ops from the shell
prevail briefing ...             scheduled domain briefings
prevail telegram ...             configure the Telegram bridge
prevail connectors ...           list / test / oauth
prevail daemon --telegram        headless mode (bot + ticker)

Inside the TUI: ↑ ↓ between domains, s swap to apps, e edit the active markdown tab, q quit. /help lists every slash command.

Platform

prevAIl is bun-only. Currently builds for:

  • macOS arm64 (Apple Silicon)
  • macOS x86_64 (Intel)
  • Linux arm64
  • Linux x86_64
  • Windows via WSL only (no native Windows build — bun's Windows support is preview-quality as of bun 1.3.x; we'll add Windows binaries when bun's Windows story stabilizes)

A terminal with UTF-8 + true-color is required. Tested on iTerm2, kitty, alacritty, WezTerm, Ghostty, GNOME Terminal. Should work in most modern xterm-256color terminals.

Requirements

Built with

OpenTUI (Zig core + React reconciler) on Bun. Single binary via bun --compile. No runtime dependencies.

Docs · changelog · roadmap

  • CHANGELOG — what shipped in each tag
  • Releases — pre-built binaries
  • Demo vault — synthetic "Alex Rivera" persona
  • Connector architecture — auth probes, OAuth runner, manual recipes
  • Threat model — long-form threat model + worked example
  • Data flow — how a turn moves through cockpit / vault / log / journal / benchmark
  • Extending — how to add a framework, lens, CLI bridge, ConfigBar chip, slash command

Scope

prevAIl is a single-user terminal cockpit for personal decisions. You run it on your own machine, with your own AI CLI credentials, against a folder of your own markdown.

It is not a SaaS, not multi-tenant, not an enterprise audit-log system, not a replacement for a knowledge base. If you need any of those, prevAIl is the wrong tool.

Vault sync caveat. If you sync your vault folder via iCloud, Dropbox, Tailscale Drive, git, or any other mechanism, sync should cover <vault>/ only and MUST EXCLUDE ~/.prevail/. The latter contains secrets (Telegram bot tokens, OAuth refresh tokens) and machine-local state.

The threat model is documented in SECURITY.md and docs/threat-model.md. Read those before exposing the MCP server or the Telegram bridge to anything other than your own laptop.

License

MIT. The bundled demo vault contains no real personal data.

Reviews (0)

No results found