New to Claude Skills? Learn how to install them →

danielmiessler on GitHub

LifeOS

Free

Onboard users into the Life Operating System seamlessly.

Get this skill

Free · Opens the source repo

What LifeOS does

LifeOS is designed to streamline the onboarding process for users into the Life Operating System, enabling a personalized setup that aligns their current state with their ideal state. With a single command, users can transition from a blank slate to a fully integrated system that showcases their progress on a Pulse dashboard. This skill is particularly beneficial for those looking to enhance their personal or professional lives without the need to adopt a completely new harness or system.

The installation process is AI-native, meaning users can provide the installation document directly to their AI, which will handle the installation on their operating system and harness. This is facilitated by a series of tools that detect the user's environment, wire necessary hooks with permission, and scaffold a personalized user tree. The setup phase is followed by an interview phase, where users articulate their goals and provide external sources to enrich their context, ensuring that the Pulse dashboard reflects meaningful data from the start.

LifeOS is structured to be non-destructive, ensuring that existing configurations are not overwritten. The installation process includes permission-gated changes, which means users are always aware of what modifications are being made to their system. The skill is particularly suited for individuals who want to enhance their productivity and personal development without the complexities of traditional software installations.

In summary, LifeOS offers a unique solution for users seeking a tailored onboarding experience into a comprehensive life management system, making it an ideal tool for anyone interested in personal growth and efficiency.

When to use it

Use LifeOS when you want to integrate a user into the Life Operating System quickly and effectively, leveraging AI for a seamless setup experience.

When not to use it

This skill is not suitable for building or cutting a LifeOS release or for performing system maintenance tasks; those require different tools.

What you can build with it

First-Time Setup

A user wants to quickly set up LifeOS on their system without prior experience, using the AI to guide the installation.

Personal Goal Setting

An individual aims to align their current life state with their ideal goals using the interview phase of LifeOS.

Integrating Existing Sources

A user has existing notes and configurations they want to incorporate into their LifeOS setup to enrich their user experience.

How to install LifeOS

View source

1. Install with the skills CLI

npx skills add danielmiessler/lifeos/LifeOS --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by danielmiessler

LifeOS

This is the INSTALLED copy of the LifeOS skill, not the distribution root. Its install/ directory holds only bootstrap files; the whole-system payload lived in the release artifact you installed FROM and is now deployed across ~/.claude. Statements below about the skill being self-contained describe that release artifact, not this directory. Run the setup and deploy tools from ~/.claude, not from here — relative paths do not resolve in this copy.

The install + onboarding surface for LifeOS — the Life Operating System (formerly LifeOS). One command takes a stranger on any harness from nothing to a working, personalized install whose Pulse dashboard already shows their current state vs ideal state — without making them adopt a whole new harness.

How it ships

LifeOS is distributed as one self-contained skill — the LifeOS/ directory is the entire distribution. Everything ships inside it: the orchestrator (SKILL.md, Workflows/, Tools/), the whole-system payload under install/, and the one-line bootstrap at install/install.sh. Nothing ships outside the skill — no release-root install.sh, no .claude/ clone.

The primary install is AI-native: give INSTALL.md (served at ourlifeos.ai/install) to your AI and say "install this." LifeOS is AI-native, so the install is too — you hand the doc (or its link) to whatever harness you already use, and your AI installs LifeOS on your OS and harness, with permission at each step. It's the same document a human can read and follow. INSTALL.md opens with a capability gate, drives the install Tools (which run under bun on any OS, not a shell), wires integration per-harness (honest about what each gets), then runs Setup → Interview.

A terminal shortcut stays for Claude Code on macOS/Linux:

curl -fsSL https://ourlifeos.ai/install.sh | bash

Both are served from the skill's own single sources of truth — INSTALL.md at the skill root, install/install.sh for the shell path (which hands off to the agentic /LifeOS setup). Two versions coexist and mean different things: the frontmatter version: is this skill's own component line (bumped by BumpSkillVersions like every other skill), while the distribution version — what a user means by "LifeOS 7.x" — is the GitHub release tag and the LIFEOS_RELEASES/<version>/ parent dir. Never read the component line as the release number. The payload (skills, hooks, system prompt, Algorithm, docs, runtime tools) rides along under install/ and is placed during setup, with permission.

Workflow Routing

TriggerTarget
setup, /LifeOS setup, "install LifeOS", "integrate into my harness"Workflows/Setup.md
interview, "onboard me", "run the interview", TELOS captureWorkflows/Interview.md
doctor, "check my install", "what's broken", "what capabilities are live"run bun <configRoot>/LIFEOS/TOOLS/Doctor.ts (see INSTALL.md)
update, "update LifeOS", after a version bumpWorkflows/Update.md
uninstall, "remove LifeOS"Workflows/Uninstall.md

doctor is the one tool-backed route — it needs no workflow because Doctor.ts is self-describing: it prints the four capability states (live / broken / declined / stale) and the exact fix command for anything broken. Relay its table, offer the fix it names, and honor decline — a declined capability is a legitimate way to run LifeOS, never a defect to nag about.

Default flow (/LifeOS setup): Setup phase (system integration) → transitions into Interview phase (life onboarding). One continuous experience, two clearly-marked phases — setup is logistics, interview is meaning. Setup ALWAYS runs first; hooks must be wired before the interview seeds anything.

The two phases

Setup (logistics, first). Detect OS + harness → scan for conflicts and surface them → install prerequisites → overlay the system templates → scaffold the USER tree + link it → trust-gated hook install (show the exact change, back up settings.json, wait for yes) → activate the identity imports → verify with two evidence classes. Adapts to OS (macOS/Linux/Windows) and harness (Claude Code / Hermes / Cursor / OpenClaw).

Interview (meaning, second). Name the DA → principal identity → TELOS current state → TELOS ideal state → pull in external sources the user provides (existing notes, configs, exports) to enrich USER context → seed Pulse. By the end, the config tree is populated and Pulse shows real data, not empty scaffolding.

Hard rules

  • Setup before Interview, always. Hooks/integration land before any onboarding write.
  • Additive, never clobbering. install.sh touches only the LifeOS skill dir; setup writes are existsSync-guarded. Never overwrite or rm a populated dir or a foreign file.
  • Permission before mutation. Hook install shows the exact change (file count + settings entries) and backs up settings.json first. Nothing changes without an explicit yes.
  • Config root keeps its canonical name. The user tree lives under the config dir and is linked into the harness tree; "LifeOS" is the brand, the resolved config path does not rename (renaming it breaks the identity @-imports).
  • Dev-tree refusal. The hook install refuses to run inside the LifeOS source repo (detected via dev-tree markers — the private maintenance skill present, or a recognized source-repo git remote). Never mutate the author's live system.

Gotchas

  • The frontmatter version: is the COMPONENT line, not the release. Claude Code ignores it; BumpSkillVersions maintains it like every other skill. The DISTRIBUTION version is the tag + LIFEOS_RELEASES/<version>/ + the install.sh fetch.
  • install.sh is non-destructive by design. It installs only the LifeOS skill and backs up only a prior LifeOS skill — never the user's other skills, hooks, or config. The whole point is "bolt on, don't take over."
  • Hooks are installed imperatively, with permission. A bare skill cannot auto-wire hooks; the setup workflow writes them into the user's harness explicitly, after showing what changes.
  • Config is .toml, never .yaml. LifeosConfig.ts reads TOML; the legacy .yaml template was retired 2026-06-19.
  • Cross-platform is solved at setup time, not statically. The setup conversation detects the OS + harness and tailors hook commands and paths — don't assume macOS.

Examples

  • "install LifeOS" → install.sh drops the skill, then /LifeOS setup runs: detect env, surface conflicts, wire hooks with permission, scaffold the USER tree, then roll into the interview.
  • "run the lifeos interview" → Interview workflow: capture TELOS + current/ideal state, pull in the user's sources, seed Pulse.
  • "lifeos doctor" → run Doctor.ts, relay the capability table, offer the fix command for anything broken.
  • "update LifeOS" → Update workflow: idempotent re-overlay after a version bump, non-destructive.

Frequently asked questions about LifeOS

Similar skills