Getting Started

Keel is a local-first desktop app for project and programme managers. Everything lives on your machine — no cloud account required to get started.


Installation

Download the build for your operating system from the latest GitHub release.

Linux

Download the .tar.gz archive, extract it, and run the keel binary:

tar -xzf keel-linux-x64.tar.gz
cd keel
./keel

To install system-wide, move the extracted folder to /opt/keel and create a symlink:

sudo mv keel /opt/keel
sudo ln -s /opt/keel/keel /usr/local/bin/keel

macOS

Download the .dmg, open it, and drag Keel to your Applications folder.

Gatekeeper warning? Right-click the app and choose Open the first time, then click Open in the dialog. This only needs to happen once.

Windows

Download the .zip, extract it, and run keel.exe. No installer is needed — Keel is fully portable.

SmartScreen warning? Click More info then Run anyway. This is expected for apps not yet in Microsoft's certificate database.


Your First Project

When Keel opens for the first time you'll see a blank canvas. Create a new project with + New Project and give it a name — your programme, workstream, or client engagement.

Each project is a self-contained database file stored locally. You can have as many projects as you like.

If you want to explore with sample data first, choose Load Demo Data to create a pre-populated project you can poke around in.


Modules

Keel organises your programme work into focused modules, accessible from the left sidebar:

  • RAID Log — Risks, Assumptions, Issues, Dependencies. Track status, owner, and impact in one view.
  • Decisions — Log decisions with context, rationale, and outcome so nothing is lost.
  • Actions — Task list tied to your project, not a generic to-do app.
  • Journal — Daily notes, meeting notes, retrospectives. Full-text search across all entries.
  • People — Stakeholder register. Track roles, engagement level, and contact info.
  • Settings — App preferences and sync configuration.

Sync (Solo plan)

The Solo plan ($8/month) adds encrypted sync across your devices via the Keel sync server. Your data is encrypted on your device before it ever leaves — the server never sees plaintext.

Setting up sync

  1. Open Settings in the sidebar.
  2. Under Sync, click Create account (or sign in if you already have one).
  3. Click Upgrade to Solo to subscribe via Stripe.
  4. Once subscribed, enter an encryption password. This password encrypts your data — keep it safe. It is never stored or sent to the server.
  5. Click Sync Now to push your current project to the server.

Important: Your encryption password is not recoverable. If you forget it, your synced data cannot be decrypted. Store it in a password manager.

Pulling to another device

  1. Install Keel on the second device and open Settings.
  2. Sign in with the same account credentials.
  3. Enter the same encryption password you used when you first synced.
  4. Click Pull from Server to download and decrypt your project.

Your Data

Each Keel project is stored as a single SQLite database file on your machine. You can find your databases in your OS application data directory:

  • Linux: ~/.local/share/keel/
  • macOS: ~/Library/Application Support/keel/
  • Windows: %APPDATA%\keel\

You can back these files up manually, move them between machines, or open them with any SQLite viewer. Keel will never delete or modify your files without your instruction.


FAQ

Is there a web or mobile version?

Not yet. Keel is desktop-first (Linux, macOS, Windows). A web app is on the roadmap.

Can I use Keel without a subscription?

Yes. The core app — all modules, unlimited projects, local storage — is free forever. Sync across devices requires a Solo plan.

What happens if I cancel my Solo plan?

Your local data is unaffected. You can keep using Keel; you just won't be able to push or pull from the sync server.

Is my data private?

Yes. Data never leaves your machine unless you enable sync, and even then it's encrypted with a key derived from your password before transmission. The sync server stores only ciphertext.

Something isn't working

Open an issue on GitHub or email [email protected].