dotstate

Create profile-based symlinks for dotfiles and sync via Git.

1|Updated Feb 11, 2026
One-click install
npx skills add https://github.com/fredericosantos/skills --skill dotstate
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotstate
Source: https://github.com/fredericosantos/skills/tree/main/skills/dotstate
Command: npx skills add https://github.com/fredericosantos/skills --skill dotstate

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

dotstate helps you manage your dotfiles by replacing them with symlinks to a Git repository, enabling per-machine profiles and syncing across devices.

Core Features & Use Cases

  • Profile-based dotfile management across machines
  • Symlink-backed storage with per-machine profiles (e.g., ubuntu, macos)
  • Git-based syncing and a simple TUI for managing profiles
  • Smooth migration from other dotfile managers

Quick Start

Launch the TUI to connect to your storage repository, set up a common profile, and activate symlinks for the current machine.

Frequently Asked Questions about dotstate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync dotfiles across macOS and Ubuntu machines?

You can sync dotfiles across macOS and Ubuntu by replacing them with symlinks pointing to a Git repository. This approach uses per-machine profiles to apply the correct configuration on each device and pushes changes through GitHub sync.

What is profile-based dotfile management?

Profile-based dotfile management organizes your configurations into distinct groups, such as separate profiles for Ubuntu and macOS. It allows a single Git repository to apply specific symlinks and settings depending on which machine you are currently configuring.

How do I migrate from Dotbot to a new dotfile manager?

You can migrate from Dotbot by transitioning your existing configurations into a new profile-based symlink system. This process involves moving your files into a storage repository and re-establishing symlinks through the new management interface.

Do I need a Git repository to manage dotfiles with symlinks?

Yes, you need a Git storage repository to manage dotfiles with symlinks. The repository acts as the central storage for your configuration files, enabling version control and cross-machine syncing.

Can I create dotfile profiles using a TUI?

Yes, you can create and manage dotfile profiles using a built-in TUI. The terminal user interface allows you to connect to your storage repository, set up common profiles, and activate symlinks for the current machine interactively.