No description
  • Go 99.7%
  • Makefile 0.3%
Find a file
Dries De Peuter 49527f40b9
Some checks failed
CI / test (pull_request) Failing after 2s
CI / test (push) Failing after 2s
feat: add prefix+/ fuzzy session search modal
2026-05-09 20:04:09 +02:00
.github/workflows feat: scaffold lman core (phases 0-2) 2026-05-07 14:02:53 +02:00
cmd/lman fix: unblock opencode session recovery 2026-05-08 01:05:42 +02:00
internal feat: add prefix+/ fuzzy session search modal 2026-05-09 20:04:09 +02:00
spec/lman feat: rename sessions and dismiss failed auto-restarts 2026-05-08 08:16:40 +02:00
.gitignore fix: rendering, key forwarding, cursor, and UX polish 2026-05-07 17:42:26 +02:00
AGENTS.md docs: add agent workflow guidance 2026-05-07 20:34:15 +02:00
go.mod feat: add interactive TUI (phases 3-4) 2026-05-07 14:12:40 +02:00
go.sum feat: add interactive TUI (phases 3-4) 2026-05-07 14:12:40 +02:00
LICENSE feat: scaffold lman core (phases 0-2) 2026-05-07 14:02:53 +02:00
Makefile feat: improve session lifecycle and sidebar UX 2026-05-08 09:19:18 +02:00
mise.toml feat: scaffold lman core (phases 0-2) 2026-05-07 14:02:53 +02:00
README.md feat: improve session lifecycle and sidebar UX 2026-05-08 09:19:18 +02:00

lman

A terminal-based UI for managing multiple LLM agent CLI sessions across projects, with built-in git worktree support.

Status

Pre-alpha. Under active development.

Development setup

This project uses mise to pin the Go toolchain and dev tools. After cloning:

# one-time, install mise itself
curl https://mise.run | sh

# inside this repo
mise trust       # opt in to running ./mise.toml
mise install     # installs the pinned Go and golangci-lint

Once that's done, go, golangci-lint, and the make targets will all use the project-pinned versions whenever you're inside the repo.

Building

make build

Running tests

make test

Default keybindings

All actions use the ctrl+e prefix by default.

  • ctrl+e p open project
  • ctrl+e n new session
  • ctrl+e r rename focused session
  • ctrl+e j next session
  • ctrl+e k previous session
  • ctrl+e x close session
  • ctrl+e R restart focused session
  • ctrl+e z toggle fullscreen
  • ctrl+e ? show help
  • ctrl+e q quit

UI config

Set the default sidebar width in config.toml:

[ui]
sidebar_width = 36

You can also drag the sidebar's right edge at runtime to resize it.

Linting

make lint

Architecture

See spec/lman/architecture.md for design decisions and spec/lman/requirements.md for the requirements.

License

MIT