AnnualReports
Aggregate several hundred cybersecurity annual reports from CrowdStrike, Mandiant, IBM, Verizon, Microsoft, CISA, OWASP, Wiz,…
View, edit, or clear the LifeOS User Model (PRINCIPAL_IDENTITY.md) — persistent identity context loaded at session startup. Three intents: View, Edit (identity, goals, constraints, preferences), Clear (reset). Read by Algorithm OBSERVE and skills for personalization. USE WHEN
Claude Code
$ npx -y skills add danielmiessler/lifeos --skill Profile --agent claude-code
Codex
$ npx skills add danielmiessler/lifeos --skill Profile -a codex -y
Cursor
$ npx skills add danielmiessler/lifeos --skill Profile -a cursor -y
Gemini CLI
$ npx skills add danielmiessler/lifeos --skill Profile -a gemini-cli -y
GitHub Copilot
$ npx skills add danielmiessler/lifeos --skill Profile -a github-copilot -y
OpenCode
$ npx skills add danielmiessler/lifeos --skill Profile -a opencode -y
Windsurf
$ npx skills add danielmiessler/lifeos --skill Profile -a windsurf -y
metadata:
short-description: "View, edit, or reset the persistent principal identity and preferences loaded at startup. Excludes harness configuration changes."
name: Profile
evals:
manual:
reason: "whether an edit matches what the principal asked is a judgment about their intent, which no fixture holds"
falsifier: "the reviewed identity file omits the requested change, contains an unapproved change, or a clear operation leaves retained profile data"
version: 1.1.1
description: "View, edit, or clear the LifeOS User Model (PRINCIPAL_IDENTITY.md) — persistent identity context loaded at session startup. Three intents: View, Edit (identity, goals, constraints, preferences), Clear (reset). Read by Algorithm OBSERVE and skills for personalization. USE WHEN profile, show profile, view profile, who am I, my profile, edit profile, update profile, clear profile, user model, PRINCIPAL_IDENTITY. NOT FOR settings.json or CLAUDE.md edits (use update-config)."Views, edits, or resets the LifeOS User Model — the `PRINCIPAL_IDENTITY.md` file that holds persistent identity context and loads at the start of every session through the CLAUDE.md @-import. Three operations: View shows the current model, Edit updates its sections, and Clear resets it to a blank template (it never deletes the file). The Algorithm reads it when writing ISCs and choosing capabilities, and other skills read it for personalization, so this skill keeps that context visible and current in one place.
| Intent | Trigger | File | |--------|---------|------| | **View** | "profile", "show profile", "view profile", "who am I", "my profile" | `Intents/View.md` | | **Edit** | "edit profile", "update profile", "change profile" | `Intents/Edit.md` | | **Clear** | "clear profile", "delete profile", "reset profile" | `Intents/Clear.md` |
| File | Read when | |------|-----------| | `Setup.md` | first-time setup, a worked example of the identity file on made-up values, and the read-only proof commands |
The User Model lives at `~/.claude/LIFEOS/USER/PRINCIPAL/PRINCIPAL_IDENTITY.md` (in a standard install `LIFEOS/USER` is a symlink to `~/.config/LIFEOS/USER`, which may be its own private git repo) as markdown with the `lifeos-freshness-v1` frontmatter (`LIFEOS/DOCUMENTATION/Freshness/FreshnessSystem.md`):
last_updated: ISO-8601 # every write, any author last_updated_by: <author> convention: lifeos-freshness-v1 last_reviewed: ISO-8601 # principal review only; drives the staleness grade (90-day window for this file) last_reviewed_by: <principal>
The Interview skill's ContextCheckin intent is the only flow that bumps `last_reviewed`; this skill's intents read the file on demand when it is viewed or edited.
The same frontmatter also holds the header facts that code reads, so a change to one of these is a change to the YAML key, never to prose:
| Key | Reader | |-----|--------| | `core` (`name`, `pronunciation`, `timezone`) | `getPrincipal()` in `hooks/lib/identity.ts`, as the fallback only: `LIFEOS/USER/CONFIG/LIFEOS_CONFIG.toml` `[principal]` wins for name, pronunciation and timezone | | `voice_clone` | the model, through the header-mirror block (no code reader) | | `preferences` | `getPrincipalPreferences()` in `hooks/lib/identity.ts` | | `tech_stack` | `getTechStack()` in `hooks/lib/identity.ts`, its only source |
`LIFEOS/TOOLS/HeaderMirror.ts` copies these keys into a generated block in the body, because @-import strips frontmatter; `DerivedSync.ts` runs it on every hand edit.
The blank template (`Intents/Edit.md` § Output format) starts the file with four sections: Quick Reference, Worldview, Work Patterns & Communication, and Preferences. Users add their own sections over time, and the memory curation loop may keep an auto-append Memory-System Proposals queue at the bottom. Edit changes the sections that exist in the user's file; it does not impose the template's schema on it. First-time setup, a worked example and a read-only proof: [`Setup.md`](Setup.md).
**Example 1: View the profile**
User: "show my profile" → Invokes View intent → Reads PRINCIPAL_IDENTITY.md and presents the current user model
**Example 2: Edit a section**
User: "update my profile — add that I prefer metric units" → Invokes Edit intent → Updates the Preferences section, bumps `last_updated` and `last_updated_by` (never `last_reviewed`)
**Example 3: Reset**
User: "clear my profile" → Invokes Clear intent → Confirms intent, backs the file up to ~/Downloads, then resets PRINCIPAL_IDENTITY.md to the blank template (the file stays; `last_reviewed` is removed so the freshness grade drops until the principal reviews it)
⛰️ LifeOS — The universal AI Harness designed to move you from Current to Ideal state in both life and work.
Aggregate several hundred cybersecurity annual reports from CrowdStrike, Mandiant, IBM, Verizon, Microsoft, CISA, OWASP, Wiz,…
3-pass scope oscillation that holds a question constant while shifting zoom — narrow/tactical, wide/strategic, then synthesis —…
Curated aphorism collection with CRUD: content-based matching, themed search, thinker research, and usage tracking to avoid…
Search and retrieve arXiv academic papers by topic, category, or paper ID — with AlphaXiv-enriched AI-generated overviews. Uses…
Static visual content in 20+ formats (diagrams, infographics, comics, icons, wallpaper) via Nano Banana Pro by default, Nano…
Directs visual quality across images, films, slides, and site captures through a direction council, two vendors' vision judgments…
Set up and use 1Password CLI for sign-in, desktop integration, and reading or injecting secrets.
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid…
Design and build AI agents for any domain. Use when users: (1) ask to "create an agent", "build an assistant", or "design an AI…