资讯详情

LifeOS 安装与入职指南:AI 原生交付的「当前状态 → 理想状态」操作系统

📅 2026/9/15 14:26:44 | 华诺云谱 👁 阅读
LifeOS 安装与入职指南:AI 原生交付的「当前状态 → 理想状态」操作系统
LifeOS 安装与入职指南AI 原生交付的「当前状态 → 理想状态」操作系统【免费下载链接】LifeOS⛰️ The Life Operating System — an intent engineering platform that moves you from your current state to your ideal state, in life and work.项目地址: https://gitcode.com/GitHub_Trending/pe/LifeOS本文以 LifeOS 安装技能文档 及其配套的 INSTALL.md、四个工作流文件为核心结合仓库中的安装工具源码完整解析 LifeOS 的 AI 原生安装、系统集成Setup与人生入职Interview全流程。读完你将掌握LifeOS 如何以「一个自包含 Skill」分发整个操作系统、安装的八个核心步骤与每条命令的--apply语义、lifeos启动命令如何加载宪法层系统提示词、两阶段工作流如何落盘 TELOS 与 Pulse 数据以及升级、卸载和 Doctor 能力探测的运作原理。一、分发模型整个系统装进一个 SkillLifeOS 的发行方式非常独特整个系统以「一个自包含的 Skill」分发。LifeOS/目录就是全部发行物——编排器SKILL.md、Workflows/、Tools/、全系统载荷install/下的技能库、hooks、系统提示词、Algorithm、文档、运行时工具以及一行引导脚本install/install.sh全部封装在技能内部技能之外不发行任何东西——没有 release 根目录的install.sh没有.claude/克隆。以本仓库为例其布局为技能编排层LifeOS/install/skills/LifeOS/SKILL.mdfrontmatter 声明name: LifeOS、version: 1.5.43、allowed-tools等元数据安装指南LifeOS/install/skills/LifeOS/INSTALL.md即「AI 安装说明书」四个工作流Setup.md、Interview.md、Update.md、Uninstall.md12 个安装工具Tools/ 下的DetectEnv.ts、ScanConflicts.ts、DeployCore.ts、ScaffoldUser.ts、LinkUser.ts、InstallHooks.ts、ActivateImports.ts、OverlaySystem.ts、SeedPulse.ts等引导脚本与配置模板install/install.sh、settings.system.json、settings.enhancements.json、CLAUDE.template.md全系统载荷技能目录之外的install/顶层LIFEOS/含 LIFEOS_SYSTEM_PROMPT.md、VERSION、TOOLS/、PULSE/、ALGORITHM/、DOCUMENTATION/等、hooks/、agents/、skills/。⚠️ 注意仓库中这份LifeOS/install/skills/LifeOS/是已安装副本而非发行根。其install/目录只保留引导文件全系统载荷来自用户当初安装的 release 产物已部署到~/.claude。因此应到~/.claude运行 setup 与 deploy 工具本副本的相对路径无法解析。1.1 AI 原生安装主路径与终端快捷路径LifeOS 是 AI 原生的安装方式同样是 AI 原生。主安装路径是把 INSTALL.md 交给你的 AI说一句「install this」。该文档既是给 AI 的执行手册也是人可以阅读操作的同一份文档。对用户来说最短路径是向任意编码助手Claude Code、Cursor、Cline、Codex、Gemini CLI 等发送指令Read https://ourlifeos.ai/install and install LifeOS for me.偏好终端的话Claude CodemacOS/Linux有 shell 快捷路径curl -fsSL https://ourlifeos.ai/install.sh | bash1.2 两个版本号component 行 ≠ 发行版本SKILL.md 的 frontmatter 中有version: 1.5.43但这是该技能自身的component组件行由维护侧不随 release 分发的BumpSkillVersions维护而用户所说的「LifeOS 7.x」指的是distribution发行版本——即 GitHub release 标签与LIFEOS_RELEASES/version/父目录。永远不要把组件行当作发行号读取。本仓库发行根 Releases/v7.40.4/ 即对应一个发行版本install.sh中的回退标签为v7.40.4。二、安装前的准入门槛2.1 Capability gate先自检再动手INSTALL.md 第 0 步要求 AI 具备两项能力(1) 在本机读写文件(2) 执行 shell 命令。两者缺一不可——纯聊天型助手无文件系统、无命令执行必须立即停止并告知用户换用编码型 harness绝不能开始一个无法完成的半截安装。2.2 前置依赖bun 与 gitbun安装工具全部是 TypeScript由 bun 运行。bun --version需要≥ 1.2LifeOS 的bun.lock使用 v6 锁文件格式bun 1.2 无法解析。缺失或过旧时的官方安装命令macOS / Linuxcurl -fsSL https://bun.sh/install | bashWindowspowershell -c irm bun.sh/install.ps1 | iexgit与网络连接用于拉取 release也可以使用本地 release 目录通过LIFEOS_SRC指定。三、核心安装八步命令与权限边界安装的完整流程以bun执行 TypeScript 工具而非 shell 脚本关键纪律是多数工具默认 dry-run只有加--apply才真正写入。3.1 DetectEnv检测环境一切路径的来源bun Tools/DetectEnv.ts输出 JSON报告 OSmacOS/Linux/Windows、harnessClaude Code / Cursor / Cline / Codex / Gemini / other、config root、是否已存在 LifeOS以及isDevTree是否位于源码仓库内等字段。它的实现是 Tools/InstallEngine.ts 中detectEnv()的一个瘦封装见 Tools/DetectEnv.tsSetup 工作流按这些字段分支。文档明确强调每个路径都从这里得出不要假设~/.claude或任何单一 harness。3.2 ScanConflicts只读冲突扫描bun Tools/ScanConflicts.ts扫描目标目录中已存在的内容settings hooks、技能名冲突、已填充的 config 树展示给用户。此刻没有任何改动。其输出决定LinkUser的分支策略。3.3 DeployCore落盘技能与运行时bun Tools/DeployCore.ts # dry run —— 打印计划不写入任何内容 bun Tools/DeployCore.ts --apply # 执行复制将 LifeOS 技能与运行时复制进 harness 的 config 树install/skills/→configRoot/skills/约 50 个技能的技能库、install/LIFEOS/→configRoot/LIFEOS/ALGORITHM、DOCUMENTATION、TOOLS、PULSE、statusline、VERSION、USER_TEMPLATES 等运行时并排除USER由后续步骤单独脚手架化与LIFEOS_INSTALL同时脚手架化空的MEMORY/树WORK/KNOWLEDGE/LEARNING/STATE/OBSERVABILITY/SKILLS让运行时拥有可写入的家。已有文件永不覆盖幂等遇到 dev-tree 则拒绝exit 2所需载荷源缺失时响亮失败exit 1绝不做静默 no-op。--apply语义值得强调DeployCore默认 dry-run不加--apply时会打印计划并零写入。若安装流程遗漏该标志就会「报告成功但实际复制了 0 个文件」——所以必须先跑 dry-run 给用户看再带--apply重跑。3.4 ScaffoldUser 与 LinkUser脚手架化个人树并链接bun Tools/ScaffoldUser.ts --apply bun Tools/LinkUser.ts --apply两者同样不加--apply则只打印计划。ScaffoldUser从模板树existsSync守卫地 copyMissing 用户配置树身份、TELOS、记忆等空结构LinkUser将配置树 relocate/symlink 进 harness 树三分支逻辑、EXDEV 回退、symlink 失败抛错。此时只是空结构个人内容在 Interview 阶段才写入。3.5 集成接线InstallHooks ActivateImports权限门控这是不同 harness 真正分叉的地方也是「始终在线行为」的开关Claude Codebun Tools/InstallHooks.ts --apply # 合并 hook 集进 settings.json先备份 bun Tools/ActivateImports.ts --apply # 开启身份上下文导入两者都需要--apply。InstallHooks读取install/hooks/hooks.json先展示精确改动文件数 settings 条目 事件数等待显式许可备份settings.json再按 matcher 桶做加法合并规范化命令去重实现幂等type:http条目原样保留。这点亮的就是始终在线行为LifeOS 响应格式、记忆循环、每轮上下文注入。其他 harnessCursor / Cline / Codex / Gemini / other始终在线行为由 Claude Code 的hooks 机制强制执行尚不能在其他 harness 自动接线。替代方案是写入AGENTS.md或该 harness 自己的上下文文件如.cursor/rules指向 LifeOS 树并如实告知用户「在该 harness 上始终在线 hooks 尚未接线你获得技能、USER 数据、Pulse 与每会话上下文加载Setup/Interview 按需运行完整始终在线行为在路线图上。」绝不要把 Claude hook 文件或 Claudesettings.json的hooks块写进非 Claude harness——那只会是惰性死代码。3.6 宪法层与 launch 命令LifeOS 真正「开机」的方式这是让 LifeOS加载的关键步骤。宪法层——响应格式、验证原则、安全协议、整个运行契约——位于install/LIFEOS/LIFEOS_SYSTEM_PROMPT.md普通claude会话不会加载它只有 harness 以「追加该文件到系统提示词」的方式启动才会加载。因此安装后的 LifeOS 需要自己的启动命令裸跑claude只会得到 CLAUDE.md 而没有宪法。载荷自带了启动器 lifeos.ts它以--append-system-prompt-file configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.md派生 Claude并处理 banner 与 MCP-profile。安装时需要把lifeos命令接线进用户 shell——展示确切行、先备份 rc 文件、等待 yes并使用 DetectEnv 得到的真实configRoot如~/.claude绝不硬编码 home 路径。Claude Codezsh/bash——追加到~/.zshrc或~/.bashrcalias lifeosbun configRoot/LIFEOS/TOOLS/lifeos.ts -s configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.mdfishalias lifeos bun configRoot/LIFEOS/TOOLS/lifeos.ts -s configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.md; funcsave lifeos。此后lifeos启动的是带宪法的 Claude普通claude保持原样用户以启动lifeos选择加入。其他 harness使用该 harness 自身的 system-prompt 标志指向同一文件例如pi --append-system-prompt configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.md若无该标志则通过上下文文件AGENTS.md / rules作为最接近的等效方案加载并如实说明「宪法作为上下文加载而非真正的 system-prompt 层」。拒绝 shell 编辑时交给用户手动运行的一行命令bun configRoot/LIFEOS/TOOLS/lifeos.ts -s configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.md升级路径pre-7.x 别名迁移7.x 之前的安装接线的是pai启动别名cd ~/.claude claude或bun ~/.claude/PAI/ACTIONS/pai.ts。PAI/树已不存在裸claude形式会不带宪法启动。检查 rc 中的这些别名带权限、rc 先备份将其注释掉并把同一个别名名重新指向上述启动器——用户的肌肉记忆pai继续可用。install.sh在 bootstrap 时自动完成此迁移AI 引导的 setup 阶段遇到旧别名也应如此处理。绝不触碰含LIFEOS_SYSTEM_PROMPT当前或ARBOL/Actions/lifeos.ts维护侧 Arbol CLI 别名该树不随公共载荷发行的别名。3.7 组件菜单Core 与 Enhancements 两层LifeOS 分两层安装Core步骤 4–7始终一体就是 LifeOS技能 完整技能库 LIFEOS 运行时Algorithm、文档、工具、statusline 二进制、版本 USER 树 系统提示词及其lifeos启动命令。一次同意安装全部 Core拒绝即等于不安装 LifeOS。Enhancements 是点菜式各自独立安装、幂等、可逆组件添加内容默认hooks技能路由、记忆循环、语音、每轮上下文注入——大部分行为依赖它即步骤 6推荐statusline提示符中的 LifeOS 状态行——设置settings.json的preferences.temperatureUnit匹配用户 locale载荷默认celsius建议美式 locale/时区用fahrenheit可选tooltips自定义 Claude Code spinner tips可选spinner verbs自定义 spinner verbs可选agents命名 agent 库可选Pulse生命仪表盘——菜单栏应用 launchd服务:31337可选worksweep / derivedsync后台launchd任务工作捕获、派生文件同步可选Pulse、worksweep、derivedsync 在 macOS 上以launchdagent 安装、在 Linux 上以systemd --userunit 安装安装器按平台分派Windows 两者皆无干净跳过。macOS 菜单栏应用仅限 macOS。部署由 Setup 工作流驱动每个已选组件用真实证据验证如 Pulse →curl :31337/healthz返回 200。一切都在载荷中没有对应的 yes 就不会激活任何东西。3.8 Doctor探测 doctrine 假设的外部能力LifeOS doctrine 依赖少量核心安装不随附的外部工具跨厂商审计 CLIcodex、用于 Web 验证的真实浏览器Interceptor、Cloudflare/wrangler定时云流程、ElevenLabs语音。依赖这些工具的功能必须响亮降级而非静默。Core 落地后运行bun configRoot/LIFEOS/TOOLS/Doctor.ts它每个能力打印一行——live ✅ / broken ❌各带可复制粘贴的修复命令/ off ⏸——并写入运行时用于标记降级输出的 advisory manifest。然后针对每个 broken 能力询问用户现在修、以后修、还是永不修Now→ 运行显示的修复命令并重跑 Doctor经许可可加--network端到端验证认证网络探测只触碰已配置好的能力。Later→ 保持现状运行时在真正调用降级能力的那一刻给出提示含修复命令。Never→bun configRoot/LIFEOS/TOOLS/Doctor.ts decline name。Declined 是干净、永久、静默的 OFF——无警告、无红标、永不打扰。拒绝是运行 LifeOS 的合法方式不是缺陷。源码佐证仓库中的 Doctor.ts 维护一个 capability registry约 30 行起支持decline cap子命令并在状态行输出「能力回归 → 运行 lifeos doctor」的提示。各工具的深度走读见 GETTING-STARTED.md用户任何时候觉得不对劲都可重跑lifeos doctor就是同一个命令。四、两阶段工作流Setup系统集成→ Interview人生入职默认流程/LifeOS setup是一次连续体验、两个清晰标记的阶段先 Setup物流再 Interview意义。Setup 永远先跑——hooks 必须在 Interview 播种任何数据之前接线。4.1 Setup检测 → 冲突 → 前置 → 覆盖 → 脚手架 → 接线 → 验证Workflows/Setup.md 将部署分为两层Core 与 Enhancements与 3.7 对应完整步骤为DetectEnv—— 若isDevTree→STOP绝不改动作者的源码仓库打印拒绝并退出。ScanConflicts只读—— 产生LinkUser的分支决策。Prereqs—— 确认 bun 存在、harness 受支持缺失项以通俗语言给出修复建议不自动安装系统包。若harness.confidence为assumed检测是猜测须先向用户确认实际 harness 再分支——残留的~/.claude目录不能把非 Claude Code 安装导向 Claude Code 路径hooks 与lifeos别名都需要claudeCLI。系统覆盖—— 放置 harness 根的CLAUDE.md路由表身份-导入以# LIFEOS/USER/...休眠形态随附、LIFEOS_SYSTEM_PROMPT.md公共纯净版系统提示词直接使用无模板、settingsbun Tools/InstallSettings.ts先 dry-run 再--apply工具在写入时展开 env 值中的$HOME/~——harness 会逐字注入 env 值手工复制会带着字面$HOME/...字符串在运行时制造真实的$HOME/垃圾目录切勿手工复制该文件。同时以substituteTree替换本步骤放置文件中的{{LIFEOS_VERSION}}/{{DA_NAME}}/{{PRINCIPAL_NAME}}占位符。 4.5.DeployCore—— 技能库 LIFEOS 运行时见 3.3先于 ScaffoldUser运行活动的LIFEOS/DOCUMENTATION/ARCHITECTURE_SUMMARY.md导入必须能解析、技能必须先存在。ScaffoldUser—— 从install/USER/模板树existsSync守卫地 copyMissing。LinkUser—— 配置树 relocate/symlink 进 harness 树config root 保持其规范名。Enhancements 菜单—— 呈现七个可选组件由用户或其 AI挑选任意子集。hooks走InstallHooks.ts --apply信任门控其余走bun Tools/DeployComponents.ts先 dry-run再--apply --components csv只部署选中的缺失前置的组件会响亮报 blocker 并失败绝不静默 no-op。每个已应用组件的两类证据验证Pulse →curl 127.0.0.1:31337/healthz 200statusline/tooltips/spinnerverbs → 重读settings.json确认键已设置agents →agents/下文件存在launchd 任务 →launchctl print显示标签已加载。ActivateImports—— 解开CLAUDE.md中的身份-导入每条以 symlink 解析目标的existsSync守卫路径字面量保持规范-导入形式。 8.5.接线 launch 命令Core—— 见 3.6。没有它LifeOS Core 虽已安装却以「未构成」状态启动裸claude无模式 banner / 验证 / 安全层。验证三类证据—— (a) 配置树可解析身份-导入可加载——总是检查它是 Core(b) 若用户选择 hooks探针会话应显示模式 banner / 上下文注入触发若拒绝 hooks则跳过并如实说明宪法模式 banner 与记忆/语音循环由 hook 强制无 hooks 时 Core 安装但不带 banner 与增强——推荐 hooks 除非有理由拒绝(c)launch 命令已接线——grep shell rc 中的lifeos别名或确认用户已拿到手动一行启动命令(d)无身份占位符存活——现在一切已落盘运行步骤 4 无法触及的替换遍substituteTree(configRoot, vars)覆盖已部署树再checkSurvivingPlaceholders(configRoot)要求passed: true。在原始 7.15.0 载荷上那是跨 104 个文件的 303 个 token——漏跑或根目录错误就是「系统知道用户名」与「系统称你为{{PRINCIPAL_NAME}}」的差别。两个有意的范围限制只覆盖身份/版本 token载荷合法携带其他{{TOKEN}}形式如 Art 缩略图模板、Fabric pattern 主体遍历模板扩展名并跳过MEMORY/用户数据永不模板化。 9.5.可选 Hermes sidecar从不默认—— 问一次即可「想安装 Hermes以便像 agent 一样和你的 LifeOS 对话吗」它是通往同一安装的第二扇门——同一宪法、同一身份、同一技能而非第二个助手。接受则按LIFEOS/DOCUMENTATION/Hermes/HermesSidecar.mdHermes 固定到已评审 commit--skip-browser——LifeOS 通过 Interceptor 验证此处禁用 Playwright使用它自己的 device-code 登录认证绝不导入其他工具的 token——OAuth refresh token 是一次性的共享一个会同时弄坏两个客户端然后bun LIFEOS/HERMES/Mount.ts。以证据而非配置验证python3 LIFEOS/HERMES/plugin/test_guard.py通过且要求活会话显式使用工具读取被拒文件时报告守卫的逐字阻止消息——仅「模型拒绝」不构成证明。过渡—— 打印「Setup complete. Now lets get you into LifeOS —」并转入 Interview。Setup 工作流以 curl 向本地 Pulse:31337发送 voice notification 作为首个动作全程existsSync守卫、权限先行。4.2 Interview从陌生人到个人化系统Workflows/Interview.md 是「意义」半边捕获「用户是谁、要去哪」然后用真实数据播种 Pulse。立场是同伴对话而非表单一次只问一件事、反射回给用户、有信号处深挖每次写入existsSync守卫绝不覆盖用户已有回答skip可跳过任意项、done可提前结束——部分入职有效Pulse 显示它有的数据。完整序列DA 命名 语音—— 用户想怎么称呼助手捕获da.name、可选da.full_name/display_name/color以及语音da.voices.main.voice_id——提供公共默认允许粘贴 ElevenLabs id。写入CONFIG/LIFEOS_CONFIG.toml。旧安装向导的这步现在住在这里。Principal 身份—— 姓名、发音、时区、家乡 →LIFEOS_CONFIG.toml的[principal]与PRINCIPAL/PRINCIPAL_IDENTITY.md。TELOS — 当前状态—— 使命、重要的人、当前项目、挑战、当下真实状况。写入TELOS/。TELOS — 理想状态—— 目标有指标与日期就带上、策略、目的地。当前 → 理想是 LifeOS 的主干两半都要。外部来源可选—— 用户可交出已有材料笔记、旧配置、导出、URL、先前 LIFEOS/其他 harness 的设置。逐个提取读文件、抓 URL提取身份 / TELOS / 项目信号合并进 USER 树——existsSync守卫、每次写入前确认。这是迁移入口带上你的上下文不用重打一遍。SeedPulse——bun Tools/SeedPulse.ts先 dry-run 再--apply→ 写入LIFEOS_STATE.json并从捕获的 TELOS 重新生成PRINCIPAL_TELOS.md使 Pulse 首次打开即渲染真实环与状态。收尾确认落盘了什么DA 名、身份、N 个目标、当前/理想已捕获指向 Pulselocalhost:31337告知面试随时可重跑加深。注意该工作流只写用户配置树绝不触碰系统文件若setup刚跑过则延续同一对话若独立调用lifeos interview则先确认 Setup 已跑配置树存在再播种。五、升级与卸载幂等重覆盖与清单键式移除5.1 Update--apply不是可选项Workflows/Update.md 把现有安装带到当前版本不碰用户数据可安全反复运行。文档特别记录了一个教训--apply在这三个工具上不是可选项——三者默认 dry-run打印 JSON 计划、零写入。2026-07-08 至 2026-07-31 期间文档未标标志导致整个更新路径成为静默 no-op用户照着做看到成功形状的输出却没有任何变更。步骤DetectEnv——isDevTree→ STOP源码仓库用 git 自更新不走此工作流。Release 检查—— 技能不携带版本字段、无插件 manifest版本位于发行层差异比较的两端都必须来自发行层已装版本读configRoot/LIFEOS/VERSION自 7.1.1 起随附的安装标记。缺失 → 视为落后继续。最新版本读https://api.github.com/repos/LIFEOS_REPO/releases/latest的tag_name与 bootstrap 解析的同一端点。相等→ 报告「already current」并退出。落后→先拉取新载荷运行随附 bootstrapbash skillRoot/install/install.sh加法式只替换 LifeOS 技能目录并备份旧版然后重读新技能的Workflows/Update.md从步骤 3 继续步骤可能随版本变化。网络不可达→ 说明情况重跑依赖磁盘技能即可工作的加法腿步骤 4–6后停止步骤 3 的覆盖需要完整拉取的载荷——已装系统上skillRoot/install/只有引导文件OverlaySystem.ts会以bootstrap-onlyblocker 拒绝直到「落后」分支完成拉取。该拒绝是预期行为而非失败。绝不对「磁盘载荷版本 vs 安装标记」做差异——载荷正是写标记的人那个比较永远报「already current」更新永远拉不到东西。重覆盖系统—— 刷新每个变更的系统拥有文件copyMissing做不到——它只写缺失文件否则更新只升VERSION而机制大多陈旧。bun Tools/OverlaySystem.ts --config-root configRoot先预览再--apply。它只覆盖系统拥有路径hooks、skills、agents、LIFEOS/{TOOLS,DOCUMENTATION,ALGORITHM,RULES,PULSE}、CLAUDE.md、系统提示词绝不触碰USER/、LIFEOS/MEMORY/、settings.json不删除、跳过 symlink并在完全成功后才写VERSION部分更新不能自称新版本。覆盖前把现有 CLAUDE.md 与系统提示词备份为时间戳.pre-overlay-*.bak——读取工具的backups/note输出并从中调和本地编辑因为步骤 6 的ActivateImports.ts --apply会重新激活新 CLAUDE.md 以注释随附的身份导入。重合并 hooks——bun Tools/InstallHooks.ts --apply幂等新增 hook 条目、保留已有、绝不重复规范化命令去重。先备份settings.json。仅脚手架新 USER 模板——bun Tools/ScaffoldUser.ts --applycopyMissing只加版本引入的新模板文件绝不覆盖用户已有文件。重激活导入—— 为任何新随附的身份导入行运行ActivateImports.ts --apply。验证—— 两类证据hooks 触发 导入解析同 Setup 步骤 9。规则Update 加法且非破坏。它绝不移除用户自定义、绝不覆盖用户数据、绝不删除用户添加的 hooks唯一覆盖的是系统拥有的模板。5.2 Uninstall只移除 LifeOS 自己装的Workflows/Uninstall.md 移除 LifeOS 安装的东西且只移除那些用户的数据库与外来 hooks 原样保留DetectEnv——isDevTree→ STOP卸载绝不针对源码仓库。确认意图—— 展示将移除什么hook 条目、系统文件、LifeOS 技能与将保留什么用户配置树、TELOS、数据等待显式确认。清单键式 hook 移除—— 读install/hooks/hooks.json只移除 command 匹配随附 hook 路径的settings.json条目共享 matcher 桶中的外来条目原样保留有备份且用户偏好时从备份恢复。移除系统文件—— LifeOS 拥有的系统模板与已复制的 hook 文件绝不碰用户配置树。保留用户数据—— 配置树身份、TELOS、记忆默认保留提供显式、独立、经确认的删除步骤——仅 opt-in绝不捆绑。报告—— 列出移除与保留内容及备份路径。规则用户创作的任何东西默认保留。卸载在数据删除之前都是可逆的而数据删除始终是独立显式选择。六、硬性规则与常见陷阱6.1 硬性规则Setup 永远先于 Interview。hooks/集成必须先于任何入职写入落地。加法式绝不破坏。install.sh只碰 LifeOS 技能目录setup 写入全部existsSync守卫。绝不覆盖或rm已填充的目录或外来文件。变更前先取得权限。hook 安装先展示精确改动文件数 settings 条目、先备份settings.json没有显式 yes 就不改任何东西。Config root 保持规范名。用户树住在 config 目录下并链接进 harness 树「LifeOS」是品牌解析出的配置路径不改名改名会破坏身份-导入。Dev-tree 拒绝。hook 安装拒绝在 LifeOS 源码仓库内运行通过 dev-tree 标记检测——存在私有维护技能或可识别的源码仓库 git remote。绝不改动作者的活系统。6.2 Gotchas 清单frontmatterversion:是组件行不是发行号。Claude Code 忽略它维护侧BumpSkillVersions不随发行在源码仓库维护它。发行版本是 tag LIFEOS_RELEASES/version/install.sh拉取。install.sh按设计非破坏。它只装 LifeOS 技能、只备份先前的 LifeOS 技能——绝不碰用户的其他技能、hooks 或配置。核心哲学是「螺栓固定不接管」。hooks 以命令式 权限安装。裸技能无法自动接线 hookssetup 工作流在展示改动后把它们显式写进用户 harness。配置是.toml绝不是.yaml。LifeosConfig.ts读 TOML遗留.yaml模板已于 2026-06-19 退役。跨平台在 setup 时解决而非静态解决。setup 对话检测 OS harness 并定制 hook 命令与路径——不要假设 macOS。七、支持矩阵与诚实降级INSTALL.md 末尾给出各 harness/OS 的诚实能力矩阵Harness / OS技能 USER 数据 Pulse始终在线行为响应格式、记忆循环、上下文注入Claude Code — macOS / Linux✅✅ 完整原生 hooksClaude Code — Windows✅USER 树以目录 junction 链接——无需管理员✅ 完整Cursor / Cline / Codex / Gemini / other✅⚠️ 每会话经AGENTS.md加载上下文工作流按需运行始终在线 hooks 尚未接线路线图纯聊天助手无文件/无命令❌❌ — 安装止步于 capability gate完整 doctrine 功能额外依赖步骤 8.5 的外部工具codex、浏览器、Cloudflare、ElevenLabs。缺其一依赖功能就降级运行并明确声明——它绝不静默假装。Doctor 表格是「什么在线」的活事实源。八、源码级佐证与供应链安全8.1 bootstrap 的供应链处理install/install.sh6 步查前置 → 检测 harness → 拉取 release → 放置技能 → 迁移旧别名 → 交接/LifeOS setup对供应链做了尽力而为且诚实的处理COMMIT-PINNED DOWNLOAD解析 tag 与下载 tag tarball 是两次独立请求tag 可能在两者之间被 force-move这正是本仓库发布方式。因此先把 tag 解析为 commit SHA再下载archive/sha.tar.gz——解析到什么就拉什么。SHA 解析失败则回退 tag tarball 并大声声明。CHECKSUMGitHub 对这些生成 tarball 不发布校验和脚本无法对上游签名验证下载。做法是下载到文件、解压前先 sha256 并打印摘要设置LIFEOS_EXPECTED_SHA256hex可硬性失败于不匹配值须带外获取先前安装、另一台机器、可信之人。已知注意点GitHub 不保证生成归档永远字节稳定——服务端压缩变更会在内容不变时改变摘要比较摘要应在同一时间点跨机器进行而非对照旧笔记。TAG 加固解析出的 tag 会在下载 URL 与 rc 文件内容两处插值因此只允许 GitHub 的 tag 字符集空或含非法字符即 FATAL 退出。事务性放置EXIT trap 在复制中途夭折SIGINT/SIGTERM时从备份恢复先前技能拷贝失败时也恢复。拦截器捕获规则向 config root 的.gitignore幂等追加interceptor-screenshot-*、interceptor-capture-*、interceptor-macos-screenshot-*按名锚定而非扩展名——.png与.jpg捕获均见过格式变更不能悄悄重新打开泄密口。别名迁移严格只识别两种历史形态/PAI/路径、裸 claude启动当前 7.x 别名含LIFEOS_SYSTEM_PROMPT永不触碰rc 先备份重写幂等LIFEOS_SKIP_ALIAS1完全跳过fish 用户按 INSTALL.md 第 7 步手动迁移。前置检查要求bun ≥ 1.2v6bun.lock格式过旧自动升级或报错退出支持LIFEOS_SRC本地离线安装与DRY_RUN1模拟。8.2 安装工具链的代码结构从源码结构看安装工具形成清晰的管线DetectEnv.tsInstallEngine.ts 的detectEnv()瘦封装→ScanConflicts.ts→DeployCore.ts→ScaffoldUser.ts→LinkUser.ts→InstallHooks.ts/ActivateImports.ts/InstallSettings.ts→OverlaySystem.ts升级重覆盖→SeedPulse.ts入职播种。InstallSettings.ts在写入时展开$HOME的行为、DeployCore.ts的isDevTree拒绝与响亮失败、InstallHooks.ts的备份先行与按 matcher 桶加法合并都在源码中逐一对应本文所述语义。共享工具 atomic-write.ts 为关键写入提供原子性保障。九、快速参考常用命令一览目的命令终端安装Claude CodemacOS/Linuxcurl -fsSL https://ourlifeos.ai/install.sh \| bash离线安装LIFEOS_SRC/path/to/LIFEOS_RELEASES/version bash install.sh检测环境bun Tools/DetectEnv.ts冲突扫描只读bun Tools/ScanConflicts.ts部署 Core先 dry-runbun Tools/DeployCore.ts→bun Tools/DeployCore.ts --apply脚手架 USER 链接bun Tools/ScaffoldUser.ts --apply/bun Tools/LinkUser.ts --apply接线 hooks / 激活导入bun Tools/InstallHooks.ts --apply/bun Tools/ActivateImports.ts --apply能力探测bun configRoot/LIFEOS/TOOLS/Doctor.ts永久关闭某能力bun configRoot/LIFEOS/TOOLS/Doctor.ts decline name带宪法启动bun configRoot/LIFEOS/TOOLS/lifeos.ts -s configRoot/LIFEOS/LIFEOS_SYSTEM_PROMPT.md升级重覆盖bun Tools/OverlaySystem.ts --config-root configRoot --apply播种 Pulsebun Tools/SeedPulse.ts --apply若需进一步深入可继续阅读仓库中的 INSTALL.mdAI 视角的完整执行手册、Setup.md 与 Interview.md两阶段工作流的逐条细节、LIFEOS_SYSTEM_PROMPT.md宪法层本体以及 Doctor.ts能力探测的实现与 decline 语义。【免费下载链接】LifeOS⛰️ The Life Operating System — an intent engineering platform that moves you from your current state to your ideal state, in life and work.项目地址: https://gitcode.com/GitHub_Trending/pe/LifeOS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。