Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. auto-session

auto-session

MITLua

An automated session manager for Neovim that saves and restores your open files and windows.

GitHubGitHub
1.8k stars57 forks0 contributors

What is auto-session?

AutoSession is a Neovim plugin that automatically saves and restores your editing sessions. It solves the problem of losing your workspace by reopening all buffers, windows, and layout exactly as you left them, making it feel like you never closed the editor.

Target Audience

Neovim users who work across multiple projects or directories and want persistent workspaces without manual session management.

Value Proposition

Developers choose AutoSession for its hands-off automation, deep integration with Neovim's ecosystem, and extensive customization options through hooks and picker support.

Overview

A small automated session manager for Neovim

Use Cases

Best For

  • Neovim users who want automatic session persistence between editor sessions
  • Developers working across multiple git branches who need separate session states
  • Power users who want to customize session behavior with pre/post hooks
  • Teams using Telescope or other pickers to quickly switch between project sessions
  • Those who need to save custom data like debugger breakpoints with their sessions
  • Users who frequently change directories and want session tracking per working directory

Not Ideal For

  • Vim users or those on Neovim versions below 0.10 without using legacy tags
  • Developers who prefer minimal configuration and avoid plugins with over 30 options
  • Environments with ephemeral workspaces where session persistence adds unnecessary complexity

Pros & Cons

Pros

Hands-Off Automation

Automatically saves on exit and restores on startup based on working directory, requiring no manual commands for basic use, as highlighted in the 'How it works' section.

Picker Ecosystem Integration

Seamlessly integrates with popular Neovim pickers like Telescope and Fzf-Lua for browsing and loading sessions, with automatic detection and customization options.

Git-Aware Session Management

Supports separate sessions per git branch and can auto-restore on branch changes, ideal for multi-branch workflows as shown in the Git section.

Extensive Customization Hooks

Offers pre/post hooks for saving, restoring, and deleting sessions, allowing users to execute commands or Lua functions, such as saving DAP breakpoints.

Cons

Configuration Overhead

With dozens of options and the need to set sessionoptions correctly, setup can be overwhelming; the README admits errors in config can disable auto-saving.

Error-Prone Restoration

Restoration may fail silently or disable features if config has issues, and the plugin requires Neovim >=0.10, limiting compatibility.

Disruptive Automatic Behaviors

Features like cwd_change_handling automatically clear all buffers on directory changes, which can be jarring and might not suit all workflows.

Frequently Asked Questions

Quick Stats

Stars1,813
Forks57
Contributors0
Open Issues18
Last commit9 days ago
CreatedSince 2021

Tags

#vimscript#hacktoberfest#developer-tools#productivity-tools#workflow-automation#neovim-plugin#editor-enhancement#neovim#lua#lua-configuration#session-management

Built With

N
Neovim
L
Lua

Included in

Neovim20.6k
Auto-fetched 1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub