Lific

io.github.VoidNullablePublished by GitHub account VoidNullablev2.11.1Updated Oct 24, 2026

Local-first, lightweight issue tracker. Single binary, SQLite-backed, MCP-native.

Overview

AI-generated overview

Lific is a local-first, SQLite-backed issue tracker whose MCP tools let an assistant manage issues, plans, pages, comments and attachments across sessions.

What you can do
Lific stores projects, issues, plans and pages in a single SQLite file and exposes them to an assistant through 31 MCP tools. Tool families cover issues (list, get, create, update, bulk update, edit, board), relations and waits, pages, plans, comments, attachments, search and history, structure, and export. Agents can resume a project with get_briefing, find workable issues, create nested step plans, link issues to people or date windows, and close an issue with verification evidence. Each AI tool connects as its own bot under the user's account, so history records which tool made a change.
When to use it
Worth adding when one person directs several agents and wants plans and issues to live on a server rather than in the context window, so work outlives a session. It suits small, self-hosted setups; the README says it is not for large teams needing SSO, sprints or Gantt charts, for issues stored in the repo itself, or for several servers syncing with each other.
Requirements
Runs as a local process over stdio, installed with cargo or a downloaded binary; no Docker or Postgres needed. Setup runs lific init, which creates config, database, an admin account and a background service on port 3456, then lific connect writes MCP config for supported clients. A remote Streamable HTTP option uses an Authorization Bearer API key created with lific key create; a stdio session without LIFIC_TOKEN acts as the instance operator. Docker use requires LIFIC_INIT_ADMIN_NAME and LIFIC
Before you install
A stdio session without LIFIC_TOKEN acts as the instance operator, so access is effectively unrestricted in that mode. The HTTP endpoint takes an Authorization Bearer API key, and Docker first boot requires LIFIC_INIT_ADMIN_NAME and LIFIC_INIT_ADMIN_PASSWORD. Tools can create, update, bulk update, edit and delete issues, pages, comments and resources, and upload attachments. The web UI listens on localhost:3456; set server.public_url before exposing it beyond localhost.

Installation

In SourceWeft

  1. Open Lific in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

[Lific: an issue tracker for prolific agents]

[CI] [crates.io] [Release] [License] [Discord]

An issue tracker for prolific agents.
One binary. One SQLite file. MCP built in.

lific.dev  ·  Docs  ·  Discord


Plans and issues live on your server instead of in the context window, so work outlives the session. Agents use it over MCP; you use the web UI.

  • 31 MCP tools in 5,781 tokens, about one long file read.
  • One 25 to 32 MB binary with SQLite, the web UI and backups built in. No Docker, no Postgres.
  • lific connect writes MCP config for 11 AI clients.
  • Identifiers like APP-42, never UUIDs.

60-second setup

bash
cargo install lific   # or Homebrew (below), or download a binary from Releaseslific init            # config, database, admin account, background service on :3456lific connect         # MCP config for your AI clients

Restart your AI client. The web UI is at http://localhost:3456. lific doctor checks config, database, server and an MCP round trip, and exits nonzero if anything is broken.

  • brew install voidnullable/tap/lific replaces cargo install on macOS and Linux: a release binary in seconds, no Rust toolchain.
  • lific init --here keeps config and database in the current directory.
  • lific init --no-service skips the background service; run lific start yourself.
  • lific service status | restart | stop | uninstall manages the service.

More: Installation · Quickstart

What your agent can do

CallWhat it does
get_briefing(project="APP")Resume a project: plans and next steps, blocked and workable issues, and with since, what changed
list_issues(project="APP", workable=true)Open issues whose blockers are all resolved
list_issues(members=["me"])Your active work across the projects you belong to
create_plan / get_planNested step plans that survive the session; a step and its issue close together
link_issues(target="APP-9", relation_type="blocks", user="ada")Block an issue on a person or a date window, not only another issue
update_issue(assignees=["human"])Mark work a person must do; agents take unassigned issues
update_issue(status="done", evidence="cargo test: 412 passed")Close with the proof saved as a verification comment
edit_issue / edit_pageChange one string without resending the document
get_activity(identifier="APP", since="2026-10-01")Who changed what while you were away

Each AI tool connects as its own bot under your account. The history says "OpenCode closed APP-42", and you can revoke one tool without touching the others.

MCP tools

FamilyTools
Issueslist_issues · get_issue · create_issue · update_issue · bulk_update · edit_issue · get_board
Relations and waitslink_issues · unlink_issues
Pagesget_page · create_page · update_page · edit_page
Planscreate_plan · get_plan · edit_plan_step · update_plan_step
Commentsadd_comment · list_comments · edit_comment · delete_comment
Attachmentsupload_attachment · get_attachment · list_attachments
Search and historyget_briefing · search · get_activity
Structurelist_resources · manage_resource · delete
Exportexport

The 5,781 tokens are the tools/list definitions as compact JSON, counted with tiktoken's o200k_base. Parameters and output: MCP tools.

Connect your AI tools

lific connect supports opencode · claude-code · claude-desktop · cursor · vscode · codex · zed · gemini · windsurf · goose · crush.

bash
lific connect                                          # pick from the clients it findslific connect --client opencode --client cursor --yes  # no promptslific connect --client claude-code --scope project     # repo-local .mcp.jsonlific connect --client zed --stdio                     # no server: direct SQLite over stdio

It merges into existing config, and leaves a file it can't parse alone and prints the snippet instead. OAuth sign-in from the client and lific login for headless machines also work: Connect agents.

Manual config for any MCP client

Remote, over Streamable HTTP:

json
{  "lific": {    "type": "remote",    "url": "http://localhost:3456/mcp",    "headers": { "Authorization": "Bearer your-api-key" }  }}

Local, over stdio with no server:

json
{  "lific": {    "type": "local",    "command": ["lific", "--db", "path/to/lific.db", "mcp"]  }}

Create a key with lific key create --name my-key --user <you>. A stdio session without LIFIC_TOKEN acts as the instance operator.

CLI

bash
lific issue list --project APPlific issue create --project APP --title "Fix login bug" --priority highlific issue update APP-42 --status donelific search "authentication" --project APPlific --backend http --url https://lific.example.com issue list --project APP   # after lific login

The CLI reads the database directly, or a remote server with --backend http. Output is JSON when piped. lific agents-md adds a short Lific section to a repo's AGENTS.md. Full reference: CLI.

When Lific is the wrong tool

  • You coordinate a large team and need SSO, sprints or Gantt charts. Use Linear or Plane.
  • You want issues stored in the repo itself. Use a git-native tracker such as beads.
  • You need several servers syncing with each other. One Lific instance is one SQLite file.

It's built for one person directing several agents.

Running it

Access. New installs check project membership on every call, reads included. Add people with lific member add --project APP --user sam --role maintainer. See Self-hosting.

Backups. Lific writes an archive every hour and keeps 24. For a one-off:

bash
lific dump                                    # database plus attachments, safe while runninglific restore lific_20260703_141500.tar.gz    # stop the server first

Config. lific init writes lific.toml. Set server.public_url before exposing the server beyond localhost. See Configuration.

Docker. Optional; the binary needs nothing else.

bash
docker build -t lific .docker run -p 3456:3456 -v lific-data:/data \  -e LIFIC_INIT_ADMIN_NAME="Your Name" \  -e LIFIC_INIT_ADMIN_PASSWORD="a long password" \  lific

Both variables are required on first boot and ignored after it.

Upgrading. Read Upgrading before you skip versions.

Build from source

bash
git clone https://github.com/VoidNullable/lific && cd lificdevenv allow && devenv shelldevenv tasks run lific:debug-build

CONTRIBUTING.md covers tests and release builds.

Community

Questions, bug reports and release announcements: Discord. Support questions get answered fastest in #support.

Contributing

Issues and PRs welcome. For anything large, open an issue first.

MCP Registry

Lific publishes server.json to the MCP Registry.

  • mcp-name: io.github.VoidNullable/lific

License

Apache-2.0

Source: README.md at commit 7526f40

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

4
  1. v2.11.1LatestOct 14, 2026
  2. v2.11.0Oct 13, 2026
  3. v2.10.0Sep 23, 2026
  4. v2.9.0Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts