⛰️ LifeOS — The universal AI Harness designed to move you from Current to Ideal state in both life and work.
This report summarizes scanner evidence for danielmiessler/Personal_AI_Infrastructure, a TypeScript project with 19,391 GitHub stars. SynthScan examined 316,509 lines of code across 1733 source files, recording 1510 pattern matches distributed across 18 syntactic categories. The legacy adjusted pattern signal is 9.4 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1066 finding(s).
Are imports declared and package/API names verified? 14 finding(s).
Are wrappers, guards, and repeated structures necessary? 514 finding(s).
Which changes need focused human review? 1510 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1510 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | LifeOS/Tools/InstallEngine.ts | 328 | // ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/Tools/InstallEngine.ts | 332 | // ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/Tools/DeployComponents.ts | 88 | // ── helpers ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/Tools/DeployComponents.ts | 149 | // ── component deployers ────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/Tools/DeployComponents.ts | 390 | // ── main ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 2 | # ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 42 | # ═══════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 45 | # ─── Release resolution — always the latest published release ───── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 105 | # ─── Colors / helpers ──────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 133 | # ─── Step 1: Prereqs ───────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 192 | # ─── Step 2: Detect harness (no clobber) ───────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 207 | # ─── Step 3: Fetch the LifeOS release ──────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 327 | # ─── Step 4: Place the skill (additive) ────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 452 | # ─── Step 6: Hand off to the agentic setup ─────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 13 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 15 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 40 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 42 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 69 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 71 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 87 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 89 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 107 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 109 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 125 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 127 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 145 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 147 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 172 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 174 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 192 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 194 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 212 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/USER/FINANCES/schema.yaml | 214 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | LifeOS/install/hooks/MemoryTurnStart.hook.ts | 41 | // ── Hot-layer injection gate (2026-07-11, context-window cleanup #1) ───────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/MemoryTurnStart.hook.ts | 41 | // ── Hot-layer injection gate (2026-07-11, context-window cleanup #1) ───────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/WritingGate.hook.ts | 54 | // ── Publication-content signals ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/VerificationGate.hook.ts | 64 | // ── Claim units ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/VerificationGate.hook.ts | 145 | // ── T5: publicity claims (2026-07-31) ──────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/VerificationGate.hook.ts | 211 | // ── TF: contradicted completion ────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/VerificationGate.hook.ts | 282 | // ── State + telemetry ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ISASync.hook.ts | 179 | // ─────────── HTML Mirror trigger 1 (v6.5.0 ISA HTML Mirror) ─────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ISASync.hook.ts | 197 | // ─────────── HTML Mirror trigger 2 — session state tracking ─────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SpendAuditor.hook.ts | 85 | // ── Transcript extraction (pure; exported for tests) ───────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SpendAuditor.hook.ts | 174 | // ── The audit payload (shared with RunCalibration — imported from here) ─────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SpendAuditor.hook.ts | 200 | // ── Eligibility ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SpendAuditor.hook.ts | 239 | // ── Detached audit pass (may take ~90s; all try/caught; always exit 0) ──────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SpendAuditor.hook.ts | 363 | // ── Hot path (Stop event; deterministic, <20ms, always exit 0) ──────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ReminderRouter.hook.ts | 46 | // ── Precision triggers ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ReminderRouter.hook.ts | 79 | // ── Tiny relative-date parser ─────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ReminderRouter.hook.ts | 126 | // ── Session-scoped idempotency ────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ReminderRouter.hook.ts | 155 | // ── Issue creation ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ReminderRouter.hook.ts | 203 | // ── Main ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/ISACloseGate.hook.ts | 91 | // ── State + telemetry (same shape as VerificationGate) ─────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/SatisfactionCapture.hook.ts | 387 | // ══════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/hooks/SatisfactionCapture.hook.ts | 389 | // ══════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/hooks/PromptProcessing.hook.ts | 108 | // ══════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/hooks/PromptProcessing.hook.ts | 110 | // ══════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/hooks/PromptProcessing.hook.ts | 144 | // ══════════════════════════════════════════════════ | COMMENT |
| MEDIUM | LifeOS/install/hooks/PromptProcessing.hook.ts | 146 | // ══════════════════════════════════════════════════ | COMMENT |
| 339 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 715 | // Step 1: Parse transcript for modified files | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 733 | // Step 2: Build filesystem inventory | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 741 | // Step 3: Determine which docs to check | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 746 | // Step 4: Run all pattern checks | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 809 | // Step 5: Apply safe deterministic updates | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 833 | // Step 6: Inference-powered semantic analysis — NOT on teardown. | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 857 | // Step 7: Summary | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 871 | // Step 10: Voice notification — ONLY when actual documentation edits were applied | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 63 | ### Step 1: Understand Requirements | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 88 | ### Step 2: Build Deterministic CLI | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 130 | ### Step 3: Wrap with Prompting | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 457 | # Step 1: Build CLI | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 462 | # Step 2: Update prompting to use CLI | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 513 | ### Step 1: Requirements | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 525 | ### Step 2: CLI Design | COMMENT |
| LOW | …all/LIFEOS/DOCUMENTATION/Tools/CliFirstArchitecture.md | 563 | ### Step 3: Prompting Integration | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 913 | ### Step 1: Choose Hook Event | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 916 | ### Step 2: Create Hook Script | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 955 | ### Step 3: Make Executable | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 961 | ### Step 4: Add to settings.json | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 979 | ### Step 5: Test | COMMENT |
| LOW | LifeOS/install/LIFEOS/DOCUMENTATION/Hooks/HookSystem.md | 985 | ### Step 6: Restart Claude Code | COMMENT |
| LOW | LifeOS/install/LIFEOS/TOOLS/PangramScore.ts | 108 | // Step 1: submit the task. | COMMENT |
| LOW | LifeOS/install/LIFEOS/TOOLS/PangramScore.ts | 124 | // Step 2: poll until terminal stage (STAGE_SUCCESS | STAGE_FAILED). | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/lifeos.ts | 596 | // Step 1: Update Bun | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/lifeos.ts | 605 | // Step 2: Update Claude Code | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 24 | # Step 1: Build | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 29 | # Step 2: Unload old menu bar plist if present | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 37 | # Step 3: Remove old Monitor app | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 46 | # Step 4: Unload current plist if it exists (for reinstall) | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 56 | # Step 5: Deploy app bundle | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 63 | # Step 6: Install and load launchd plist | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 53 | // Step 1: remove entire-line markers (banner, phase header, bare mode label). | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 58 | // Step 2: strip prefix-only markers, preserving the content that follows. | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 62 | // Step 3: collapse runs of ≥2 blank lines into a single blank line, then | COMMENT |
| LOW⚡ | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 185 | // Step 1: Create timestamped backup | COMMENT |
| LOW | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 208 | // Step 2: Update the target file. TELOS templates end with a `---` + | COMMENT |
| LOW | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 245 | // Step 3: Update updates.md with change log | COMMENT |
| LOW | …nstall/skills/Telos/Workflows/CreateNarrativePoints.md | 237 | ### Step 1: Gather TELOS Context | COMMENT |
| LOW | …nstall/skills/Telos/Workflows/CreateNarrativePoints.md | 248 | ### Step 2: Identify the Emotional Core | COMMENT |
| LOW | …nstall/skills/Telos/Workflows/CreateNarrativePoints.md | 258 | ### Step 3: Draft Each Section | COMMENT |
| LOW | …nstall/skills/Telos/Workflows/CreateNarrativePoints.md | 270 | ### Step 4: Validate the Arc | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/WriteReport.md | 139 | ### Step 1: Verify Artifacts Exist | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/WriteReport.md | 150 | ### Step 2: Copy Report Template | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/WriteReport.md | 160 | ### Step 3: Generate report-data.ts from Artifacts | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/WriteReport.md | 217 | ### Step 4: Start Dev Server | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/Update.md | 112 | ## Step 1: Parse the Request | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/Update.md | 119 | ## Step 2: Prepare the Update | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/Update.md | 134 | ## Step 3: Execute the Update | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/Update.md | 146 | ## Step 4: Confirm and Engage | COMMENT |
| LOW | LifeOS/install/skills/Telos/Workflows/Update.md | 154 | ## Step 5: Handle Errors Gracefully | COMMENT |
| LOW⚡ | …eOS/install/skills/Research/UrlVerificationProtocol.md | 33 | # Step 1: Check HTTP status | COMMENT |
| LOW⚡ | …eOS/install/skills/Research/UrlVerificationProtocol.md | 36 | # Step 2: If 200, verify content with WebFetch | COMMENT |
| LOW⚡ | …eOS/install/skills/Research/UrlVerificationProtocol.md | 39 | # Step 3: Only include if BOTH checks pass | COMMENT |
| LOW | LifeOS/install/skills/Research/Workflows/Retrieve.md | 258 | // Step 1: Get Actor info and input schema | COMMENT |
| LOW | LifeOS/install/skills/Research/Workflows/Retrieve.md | 264 | // Step 2: Run Actor with proper input | COMMENT |
| LOW | …eOS/install/skills/Research/Workflows/QuickResearch.md | 14 | ### Step 0: Source Routing Check (MANDATORY) | COMMENT |
| LOW | …eOS/install/skills/Research/Workflows/QuickResearch.md | 23 | ### Step 1: Launch Single Perplexity Agent | COMMENT |
| LOW | …eOS/install/skills/Research/Workflows/QuickResearch.md | 42 | ### Step 2: Return Results | COMMENT |
| LOW⚡ | …/install/skills/Research/Workflows/StandardResearch.md | 23 | ### Step 0: Source Routing Check (MANDATORY) | COMMENT |
| 572 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | LifeOS/Tools/InstallEngine.ts | 123 | * Signal strength (#1448): config dir + harness binary on PATH beats config dir | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 6 | # Unlike a whole-harness install, this does NOT clobber your setup. | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 7 | # It drops the LifeOS skill into your existing harness, then hands off | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 11 | # wires hooks — adapting to YOUR OS and harness as it goes. | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 15 | # 2. Detects your harness + any existing LifeOS install (no clobber) | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 192 | # ─── Step 2: Detect harness (no clobber) ───────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/hooks/TimeContext.hook.ts | 7 | * Ported from public PR #1511 (credit @anikinsasha). Why: the harness | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 474 | # Get harness name and version from JSON input (set by pai-core extension). | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 475 | # Defaults to "CC" (Claude Code) when not running under Pi or another harness. | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 479 | # Not running under a known harness — treat as Claude Code direct | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 483 | # Get Claude Code version. The harness already hands us the live value in the | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1774 | # LEVEL reflects the harness's LIVE reasoning effort, straight from the | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1777 | # harness reports it as `xhigh`, so we detect it via output_style and promote to | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 292 | # DA name comes from the DA_NAME env var (harness-exported), default Assistant | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 508 | # per-dispatch model is what the harness inherits. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1982 | # DEFAULT MODEL is the session's DEFAULT main-loop model — the harness-reported | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2143 | # it, or riding the default all session? ModelMix.ts reads the harness | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2299 | # Background/mailbox agents: live harness transcripts (mtime <2min), disjoint | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2400 | # CLAUDE.md — auto-loaded by the harness at session start. Display-only so the | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2421 | # harness default. The FILES list still shows each file's share of the context | COMMENT |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 121 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Mission")}`, name: "Mission", category: "foundational", leverage: 10, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 125 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Goals")}`, name: "Goals", category: "foundational", leverage: 10, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 129 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Problems")}`, name: "Problems", category: "foundational", leverage: 9, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 132 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Strategies")}`, name: "Strategies", category: "foundational", leverage | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 135 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Challenges")}`, name: "Challenges", category: "foundational", leverage | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 138 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Narratives")}`, name: "Narratives", category: "foundational", leverage | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 141 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Beliefs")}`, name: "Beliefs", category: "foundational", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 144 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Models")}`, name: "Models", category: "foundational", leverage: 4, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 147 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Frames")}`, name: "Frames", category: "foundational", leverage: 4, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 150 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Traumas")}`, name: "Traumas", category: "foundational", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 154 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Wrong (Things I've been wrong about)")}`, name: "Wrong (Things I've be | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 158 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Wisdom")}`, name: "Wisdom", category: "foundational", leverage: 4, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 161 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Predictions")}`, name: "Predictions", category: "foundational", levera | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 165 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Ideas")}`, name: "Ideas", category: "foundational", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 169 | { phase: 1, path: `${TELOS_PATH}#${sectionSlug("Sparks")}`, name: "Sparks", category: "foundational", leverage: 6, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 174 | { phase: 2, path: `${TELOS_PATH}#${sectionSlug("Ideal State")}`, name: "Ideal State", category: "ideal_state", leverag | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 181 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("2036 — A Day in the Life with a Digital Assistant")}`, name: "2036 — A | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 185 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Books")}`, name: "Books", category: "preference", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 188 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Authors")}`, name: "Authors", category: "preference", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 191 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Bands")}`, name: "Bands", category: "preference", leverage: 4, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 195 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Movies")}`, name: "Movies", category: "preference", leverage: 3, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 199 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Restaurants")}`, name: "Restaurants", category: "preference", leverage | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 204 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Food")}`, name: "Food", category: "preference", leverage: 4, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 209 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Meetups")}`, name: "Meetups", category: "preference", leverage: 3, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 213 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Civic")}`, name: "Civic", category: "preference", leverage: 2, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 217 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Learning Interests")}`, name: "Learning Interests", category: "prefere | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 222 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Team")}`, name: "Team", category: "preference", leverage: 5, | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 226 | { phase: 3, path: `${TELOS_PATH}#${sectionSlug("Context Filter")}`, name: "Context Filter", category: "preference", le | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 235 | { phase: 4, path: `${TELOS_PATH}#${sectionSlug("Current State")}`, name: "Current State", category: "current_state", l | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 238 | { phase: 4, path: `${TELOS_PATH}#${sectionSlug("Status — Current Work & Recent Accomplishments")}`, name: "Status — Cu | CODE |
| MEDIUM | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 371 | // Priority: phase (dominant) + leverage + incompleteness. Phase 1 always beats Phase 2. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/TOOLS/InterviewScan.ts | 437 | // Priority: phase (dominant) + leverage + incompleteness. Phase 1 always beats Phase 2. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/PULSE/PULSE.toml | 118 | # Override the harness location with the BUNKER_DIR env var. | COMMENT |
| MEDIUM | …IFEOS/PULSE/Observability/src/app/telos/_v7/summary.ts | 8 | // - PINCH POINTS: challenges blocking ≥3 goals (highest-leverage unblock) | COMMENT |
| MEDIUM | …IFEOS/PULSE/Observability/src/app/telos/_v7/summary.ts | 239 | // 2. Highest-leverage pinch unblock (if not already covered). | COMMENT |
| MEDIUM | LifeOS/install/skills/Evals/Types/index.ts | 66 | // Model-based (flexible, nuanced) | COMMENT |
| MEDIUM | LifeOS/install/skills/LifeOS/Tools/InstallEngine.ts | 123 | * Signal strength (#1448): config dir + harness binary on PATH beats config dir | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/LifeOS/install/install.sh | 6 | # Unlike a whole-harness install, this does NOT clobber your setup. | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/LifeOS/install/install.sh | 7 | # It drops the LifeOS skill into your existing harness, then hands off | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/LifeOS/install/install.sh | 11 | # wires hooks — adapting to YOUR OS and harness as it goes. | COMMENT |
| 4 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/Tools/InstallHooks.ts | 101 | console.log(JSON.stringify({ ...report, dryRun: true, note: "no changes written; re-run with --apply after permissio | COMMENT |
| LOW | LifeOS/Tools/DeployComponents.ts | 41 | COMMENT | |
| LOW | LifeOS/install/install.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | LifeOS/install/install.sh | 21 | # Local/offline install (no network): | COMMENT |
| LOW | LifeOS/install/install.sh | 41 | # across machines at the same point in time, not against an old note. | COMMENT |
| LOW | LifeOS/install/install.sh | 381 | # constitution. Repoint stale aliases in place — SAME alias name, so the user's | COMMENT |
| LOW | LifeOS/install/USER/CONFIG/LIFEOS_CONFIG.toml | 1 | # LIFEOS_CONFIG.toml — user-owned LifeOS configuration | COMMENT |
| LOW | LifeOS/install/USER/FINANCES/vendors.yaml | 1 | # > 💰 SAMPLE TEMPLATE — Replace with your own data via /interview or by editing this file. Real Pulse Finance dashboards | COMMENT |
| LOW | LifeOS/install/USER/FINANCES/obligations.yaml | 1 | # > 💰 SAMPLE TEMPLATE — Replace with your own data via /interview or by editing this file. Real Pulse Finance dashboards | COMMENT |
| LOW | LifeOS/install/hooks/WritingGate.hook.ts | 201 | DELIVER_LABEL.test(codeStripped) || BLOG_FRONTMATTER.test(fenceStripped); | COMMENT |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 61 | const OBS_PATH = join(LIFEOS, "MEMORY", "OBSERVABILITY", "verification-gate.jsonl"); | COMMENT |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 141 | const T3_VISUAL = /\b(logo|image|icon|favicon|thumbnail|hero|banner|button|layout|header|footer|nav(bar)?|wordmark|graph | COMMENT |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 381 | // Swallowed-status hole: final event printed hard-failure text but exited 0, | COMMENT |
| LOW | LifeOS/install/hooks/SatisfactionCapture.hook.ts | 161 | if (!match) return null; | COMMENT |
| LOW | LifeOS/install/hooks/AlgorithmNudge.hook.ts | 701 | // ALWAYS-ON: design-class work → elect the top rung BEFORE building. | COMMENT |
| LOW | LifeOS/install/hooks/AlgorithmNudge.hook.ts | 721 | } | COMMENT |
| LOW | LifeOS/install/hooks/AlgorithmNudge.hook.ts | 841 | } else { | COMMENT |
| LOW | LifeOS/install/hooks/StopGates.hook.ts | 41 | // its unified-format successor WITH TEETH (2026-07-11): deterministic | COMMENT |
| LOW | LifeOS/install/hooks/EventLogger.hook.ts | 221 | // call bumps the session's row (30s debounce inside). The old rule bumped | COMMENT |
| LOW | LifeOS/install/hooks/ContextReduction.hook.sh | 1 | #!/bin/bash | COMMENT |
| LOW | LifeOS/install/hooks/lib/safety-classifier.ts | 281 | // stdbuf [opts], plus absolute interpreter paths in standard bin dirs. | COMMENT |
| LOW | LifeOS/install/hooks/lib/safety-classifier.ts | 441 | if (READ_ONLY_TOOLS.includes(tc.toolName)) { | COMMENT |
| LOW | LifeOS/install/hooks/lib/safety-classifier.ts | 461 | // of the executed single-quoted arg. The inner content IS the | COMMENT |
| LOW | LifeOS/install/hooks/lib/safety-classifier.ts | 541 | // Loopback HTTP is not an exfiltration channel — the data never leaves | COMMENT |
| LOW | LifeOS/install/hooks/lib/system-file-guard-core.ts | 21 | const DEFAULT_DENY_LIST_PATH = join(CLAUDE_ROOT, "LIFEOS/USER/SECURITY/DENY_LIST.txt"); | COMMENT |
| LOW | LifeOS/install/hooks/lib/containment-zones.ts | 1 | // containment-zones.ts — release-pipeline zone inventory. | COMMENT |
| LOW | LifeOS/install/hooks/lib/containment-zones.ts | 161 | // 2026-07-20 — the public install flow embeds the public install URL | COMMENT |
| LOW | LifeOS/install/hooks/lib/containment-zones.ts | 181 | // embed pattern literals as functional or doctrine content: | COMMENT |
| LOW | LifeOS/install/hooks/lib/tab-setter.ts | 281 | // reset set-tab-title overrides, so the template falls back to window title. | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 1 | // isa-utils.ts -- Shared ISA functions for hooks | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 161 | // | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 281 | .map((line): CriterionEntry | null => { | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 581 | */ | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 801 | had_legacy_bodyhash: !existing.bodyHash, | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 921 | // Intent snippet — UI fallback when no criteria render on the current phase. | COMMENT |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 961 | ...(fm.frozen ? { frozen: true } : {}), | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1 | #!/bin/bash | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 21 | LIFEOS_DIR="${LIFEOS_DIR:-$HOME/.claude/LIFEOS}" | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 61 | CLAUDE_HOME="$HOME/.claude" | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 161 | "$(eval echo ~"$(id -un 2>/dev/null)")/.claude/LIFEOS/ALGORITHM/LATEST"; do | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 181 | # │ Terminal width │ n/a │ Written once, read as fallback │ | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 381 | # ── Startup context estimate (fresh calculation, no cross-session caching) ─ | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 661 | # PARALLEL PREFETCH - Launch expensive operations needed by current width mode | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 681 | # under a second, so anything older is orphaned. This is the only layer that | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 721 | is_git_repo=true | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 981 | # fetches per TTL window. mkdir is an atomic, portable mutex — macOS has | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1001 | # refreshInterval, and killing one mid-`security` can strand the | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1141 | # API-key billing: responses have landed yet no rate_limits object ever | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1401 | COMMENT | |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1521 | COMMENT | |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1761 | printf "%b%s${RESET} %b%s%s${RESET}" "$_dc" "${_labels[$_i]}" "$_tc" "$_val" "$_suffix" | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1941 | [ ${#_mem_line} -gt 68 ] && _mem_line="${_mem_line:0:67}…" | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 1981 | # still parse above for other consumers. | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2001 | # source of truth) — a lineup flip re-labels the roster automatically. | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2141 | # running right now"; it cannot answer the question actually being asked of | COMMENT |
| LOW | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2221 | # both matching *gemini* on resolved models). Same two-state shape as GROK — | COMMENT |
| LOW | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 1 | # tab_refit_watcher.py — keep the LEFT-edge tab bar hugging the widest title. | COMMENT |
| LOW | …/install/LIFEOS/DOCUMENTATION/Terminal/kitty/TabBar.ts | 1 | #!/usr/bin/env bun | COMMENT |
| LOW | …/install/LIFEOS/DOCUMENTATION/Terminal/kitty/TabBar.ts | 21 | const WIDTH_STEP = 6; | COMMENT |
| LOW | LifeOS/install/LIFEOS/TOOLS/ISAReconcile.ts | 1 | #!/usr/bin/env bun | COMMENT |
| 105 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | LifeOS/Tools/DeployCore.ts | 31 | // - USER shipped separately as a scaffold (ScaffoldUser) + symlinked (LinkUser) | COMMENT |
| MEDIUM | LifeOS/Tools/InstallEngine.ts | 642 | // Branch (c): fresh install — scaffold the data home (if empty) + symlink. | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 8 | # to the agentic `/LifeOS setup`, which (with your permission) does the | COMMENT |
| MEDIUM⚡ | LifeOS/install/install.sh | 19 | # 6. Hands off to `/LifeOS setup` (the agentic onboarding) | COMMENT |
| MEDIUM | LifeOS/install/install.sh | 452 | # ─── Step 6: Hand off to the agentic setup ─────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/CLAUDE.template.md | 7 | # Identity @-imports below are activated by the agentic `/LifeOS setup` (via `skills/LifeOS/Tools/ActivateImports.ts`) o | COMMENT |
| MEDIUM | LifeOS/install/USER/CONFIG/LIFEOS_CONFIG.toml | 9 | # release with real values; this is the clean scaffold. It is yours; edit freely. | COMMENT |
| MEDIUM | LifeOS/install/hooks/ContextReduction.hook.sh | 9 | # scaffolding. rtk's measured value here is git + gh output compression, which the | COMMENT |
| MEDIUM | LifeOS/install/hooks/lib/egress-class-core.ts | 48 | // Customer-work anchor covers the SHIPPED scaffold names, not just this | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2367 | # Each entry annotated with its on-disk size as a percentage of the context window. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2373 | # Color the percentage value by its size relative to context window. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2424 | # Format each entry with one-decimal percentage of context window, colored by size. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2443 | # The %(above) is SIZE — this file's share of the context window, colored by that. | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/LIFEOS_StatusLine.sh | 2454 | # Skills percentage of context window — same denominator as other FILES entries | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/DOCUMENTATION/ISA/ISAFormat.md | 24 | > **v2.14.0 (Algorithm v8.5.0) — the fog section + two probe conventions.** The body grows to **fifteen** sections: `## | CODE |
| MEDIUM | LifeOS/install/LIFEOS/DOCUMENTATION/ISA/ISAFormat.md | 39 | **v2.7 (Algorithm v6.2.0+, still current at v6.3.0):** the body grew from six sections to **twelve in fixed order**: Pro | CODE |
| MEDIUM | LifeOS/install/LIFEOS/DOCUMENTATION/ISA/ISAFormat.md | 320 | | 7 | `## Dependencies` | **NEW v2.13.0 (v6.25.0)** — cross-ISA needs, one machine-readable line each: `requires: <slug> | CODE |
| MEDIUM | LifeOS/install/LIFEOS/DOCUMENTATION/ISA/ISAHierarchy.md | 15 | **Dependencies (`## Dependencies`).** Each ISA states what it needs from siblings/ancestors as machine-readable lines — | CODE |
| MEDIUM | …feOS/install/LIFEOS/DOCUMENTATION/ISA/ISAHtmlMirror.md | 123 | │ ├── template.html # branded scaffold with placeholders | CODE |
| MEDIUM | …eOS/install/LIFEOS/DOCUMENTATION/Skills/SkillSystem.md | 211 | version: 1.0.0 # per-skill semver — new skills scaffold at 1.0.0 | CODE |
| MEDIUM | LifeOS/install/LIFEOS/TOOLS/WorkSweep.ts | 117 | // abandoned scaffold and never got an issue (2026-07-30 phase-lane sweep). | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/TOOLS/WorkSweep.ts | 122 | // not a placeholder native row with only the scaffold). | COMMENT |
| MEDIUM | LifeOS/install/LIFEOS/PULSE/PULSE.toml | 266 | # disabled monitoring-spine scaffolding) moved to LIFEOS/USER/CONFIG/PULSE.user.toml. | COMMENT |
| MEDIUM | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 4440 | // The shipped TELOS scaffold seeds every section with `(sample)` placeholder | COMMENT |
| MEDIUM | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 4446 | // \b not a literal ")": the scaffold also writes "(sample — …)" variants (e.g. | COMMENT |
| MEDIUM | …IFEOS/PULSE/Observability/src/app/telos/_v7/styles.css | 173 | --infrastructure:#9CA3AF; /* steel — instrument, scaffold */ | CODE |
| MEDIUM | LifeOS/install/LIFEOS/ALGORITHM/changelog.md | 75 | **Additions (cross-ISA scale — what takes us from medium apps to Tolkien/enterprise).** (3) **ISA hierarchy** — a `## De | CODE |
| MEDIUM | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 50 | // 'Updates.md'; the docs and scaffold use 'updates.md'), so case-sensitive | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 176 | // instead of hard-failing — the scaffold ships only a subset of VALID_FILES, | COMMENT |
| MEDIUM | …eOS/install/skills/Research/UrlVerificationProtocol.md | 52 | ## Parallel Verification (for multi-agent modes) | COMMENT |
| MEDIUM | LifeOS/install/skills/Research/Workflows/Retrieve.md | 196 | ### RAG Web Browser Actor | COMMENT |
| MEDIUM | LifeOS/install/skills/Evals/Tools/EvalRunner.ts | 146 | // Without this, the full agentic system prompt makes it narrate/simulate tool | COMMENT |
| MEDIUM | LifeOS/install/skills/ISA/SKILL.md | 146 | - **Fog is not a claim.** When the work has in-scope questions you cannot yet state precisely, they go in `## Not yet sp | CODE |
| MEDIUM | …feOS/install/skills/ISA/Workflows/CheckCompleteness.md | 97 | - **Coverage (v7.0.0 — replaces the deleted numeric count floors; fog-aware since v2.14.0)** — every subsystem named in | CODE |
| MEDIUM | LifeOS/install/skills/CreateSkill/SKILL.md | 326 | ### Structure Workflows (scaffolding and conventions) | COMMENT |
| MEDIUM | LifeOS/install/skills/LifeOS/Tools/DeployCore.ts | 31 | // - USER shipped separately as a scaffold (ScaffoldUser) + symlinked (LinkUser) | COMMENT |
| MEDIUM | LifeOS/install/skills/LifeOS/Tools/InstallEngine.ts | 642 | // Branch (c): fresh install — scaffold the data home (if empty) + symlink. | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/LifeOS/install/install.sh | 8 | # to the agentic `/LifeOS setup`, which (with your permission) does the | COMMENT |
| MEDIUM⚡ | LifeOS/install/skills/LifeOS/install/install.sh | 19 | # 6. Hands off to `/LifeOS setup` (the agentic onboarding) | COMMENT |
| MEDIUM | LifeOS/install/skills/LifeOS/install/install.sh | 452 | # ─── Step 6: Hand off to the agentic setup ─────────────────────── | COMMENT |
| MEDIUM | LifeOS/install/skills/LifeOS/install/CLAUDE.template.md | 7 | # Identity @-imports below are activated by the agentic `/LifeOS setup` (via `skills/LifeOS/Tools/ActivateImports.ts`) o | COMMENT |
| MEDIUM | …S/install/skills/ThreatModel/Workflows/RiskRegister.md | 20 | $T init # scaffold data dir + empty register | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/Tools/InstallEngine.ts | 274 | export function detectExistingUserContent(paiUserDir: string): ExistingUserContent { | CODE |
| LOW | LifeOS/Tools/InstallEngine.ts | 493 | export function checkSurvivingPlaceholders(rootDir: string): { | CODE |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 228 | function completionClaimOverFailingOutput(message: string, resultText: string): string | null { | CODE |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 248 | export function contradictedCompletionUnit(message: string, evs: { isToolError: boolean; resultText: string }[]): string | CODE |
| LOW | LifeOS/install/hooks/VerificationGate.hook.ts | 263 | export function suppressedContradictionUnit(message: string, evs: { isToolError: boolean; resultText: string }[]): strin | CODE |
| LOW | LifeOS/install/hooks/PromptProcessing.hook.ts | 74 | function appendPromptProcessingTelemetry(entry: Record<string, unknown>): void { | CODE |
| LOW | LifeOS/install/hooks/PromptProcessing.hook.ts | 185 | function followupTitleFromSessionName(sessionId: string): string | null { | CODE |
| LOW | LifeOS/install/hooks/PromptProcessing.hook.ts | 614 | function isValidInferredSessionName(name: string): boolean { | CODE |
| LOW | LifeOS/install/hooks/lib/safety-classifier.ts | 365 | export function extractCommandSubstitutions(cmd: string): string[] { | CODE |
| LOW | LifeOS/install/hooks/lib/identity.ts | 163 | function mapFrontmatterPersonality(traits: any, baseVoice: string | undefined): VoicePersonality | undefined { | CODE |
| LOW | LifeOS/install/hooks/lib/notifications.ts | 25 | export function getSessionDurationMinutes(): number { | CODE |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 1089 | export function bumpLastToolActivityBySlug(slug: string, sessionUUID?: string): boolean { | CODE |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 1138 | export function bumpLastToolActivityByUUID(sessionUUID: string): boolean { | CODE |
| LOW | LifeOS/install/hooks/lib/isa-utils.ts | 1167 | export function updateSessionNameInWorkJson(sessionUUID: string, sessionName: string): void { | CODE |
| LOW | LifeOS/install/hooks/handlers/RebuildKnowledgeSchema.ts | 39 | export async function handleRebuildKnowledgeSchema(): Promise<void> { | CODE |
| LOW | LifeOS/install/hooks/handlers/SystemIntegrity.ts | 73 | function spawnIntegrityMaintenance( | CODE |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 663 | function updateLastUpdatedTimestamp(docFile: string): string | null { | CODE |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 708 | export async function handleDocCrossRefIntegrity( | CODE |
| LOW | LifeOS/install/hooks/handlers/TabState.ts | 78 | function extractFromResponseContent(responseText: string): string | null { | CODE |
| LOW | LifeOS/install/hooks/handlers/KnowledgeConformance.ts | 54 | export async function handleKnowledgeConformance(): Promise<void> { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/Banner.ts | 514 | function createNavyUltraCompactBanner(stats: SystemStats, width: number): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/IntegrityMaintenance.ts | 522 | function generateExpectedImprovement(changes: FileChange[]): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ReferenceCheck.ts | 130 | function isArchivedAlgorithmVersion(relPath: string): boolean { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ReferenceCheck.ts | 141 | function getLatestAlgorithmVersion(): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/LifeosConfig.ts | 148 | function validateAndNormalize(raw: unknown, path: string): LifeosConfig { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ArchDecisionHarvest.ts | 339 | function renderArchitectureDecision(decision: ISADecision, sequence: number): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ArchDecisionHarvest.ts | 360 | function findArchitectureDecisionInsertionPoint(content: string): number { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ArchDecisionHarvest.ts | 562 | function writeDocWithoutArchitectureDecisions(docPath: string): void { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryWriter.ts | 184 | function validateAndDedup(entries: string[]): ValidationOutcome { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryWriter.ts | 311 | function updateFrontmatterTimestamp(frontmatter: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryWriter.ts | 322 | function updateFrontmatterUpdatedBy(frontmatter: string, by: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/HarvestExecutor.ts | 551 | async function handleCreateKnowledgeIdea( | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/HarvestExecutor.ts | 642 | async function handleCreateLearningQueue( | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MigrateContextFreshness.ts | 82 | function insertFreshnessIntoExistingBlock(content: string): { content: string; action: string } { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MergeSettings.ts | 72 | function hasInvalidMergeAnnotation(value: any): boolean { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MergeSettings.ts | 266 | export function permissionRuleRejectionReason(rule: string): string | null { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/LearningPatternSynthesis.ts | 506 | function buildHypothesisFromCluster( | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/LearningPatternSynthesis.ts | 552 | function buildObservabilityCandidate( | CODE |
| LOW | …S/install/LIFEOS/TOOLS/ArchitectureSummaryGenerator.ts | 81 | function detectSystemPromptVersion(): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryReviewer.ts | 134 | export function transcriptCaptureEnvelope(transcriptPath: string, ts: string, content: string): CaptureEnvelope { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryReviewer.ts | 335 | export function readCurrentMemorySnapshot(): CurrentMemorySnapshot { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/TranscriptParser.ts | 101 | export function parseLastAssistantMessage(transcriptContent: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/TranscriptParser.ts | 133 | export function collectCurrentResponseText(transcriptContent: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/TranscriptParser.ts | 281 | export function extractStructuredSections(text: string): StructuredResponse { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/lifeos.ts | 82 | export function inMainCheckoutWithWorktrees(): boolean { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/RecurrenceLedger.ts | 226 | export function collectObservabilityClusters(windowDays: number): ObservabilityCluster[] { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/WisdomFrameUpdater.ts | 73 | function incrementObservationCount(content: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemorySystem.ts | 564 | function parseRelatedFromFrontmatter(content: string): RelatedLink[] { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemorySystem.ts | 676 | export function sanitizeTypedItemForPersistence(item: TypedItem): SanitizedItemResult { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/MemoryTypes.ts | 225 | export function normalizeProposalTargetFile(targetFile: string): string { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/ActivityParser.ts | 512 | function generateExpectedImprovement(activity: ParsedActivity): string { | CODE |
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/TokenXray/TokenXray.ts | 230 | function loadLatestApiCostSnapshot(): ApiCostSnapshot | null { | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/lib/ForeignDataCheck.ts | 195 | export function looksLikePersonalTranscript(absPath: string): boolean { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/Tools/ReleaseAudit.ts | 91 | function auditShippedPulseTemplate(rel: string, content: string): void { | CODE |
| LOW⚡ | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 1423 | async function handleSecurityPatternsMutation(_req: Request): Promise<Response> { | CODE |
| LOW⚡ | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 1430 | async function handleSecurityRulesMutation(_req: Request): Promise<Response> { | CODE |
| LOW⚡ | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 1439 | function handleSecurityHooksDetail(): Response { | CODE |
| LOW⚡ | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 4527 | export async function handleObservabilityRequest(req: Request): Promise<Response | null> { | CODE |
| LOW | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 578 | function buildAlgorithmStatePayload(): { algorithms: any[]; active: boolean; pulseStrip: any[] } { | CODE |
| LOW | …OS/install/LIFEOS/PULSE/Observability/observability.ts | 828 | function ensureAlgorithmStreamPoller(): void { | CODE |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 715 | // Step 1: Parse transcript for modified files | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 733 | // Step 2: Build filesystem inventory | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 741 | // Step 3: Determine which docs to check | COMMENT |
| LOW⚡ | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 746 | // Step 4: Run all pattern checks | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 809 | // Step 5: Apply safe deterministic updates | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 833 | // Step 6: Inference-powered semantic analysis — NOT on teardown. | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 857 | // Step 7: Summary | COMMENT |
| LOW | LifeOS/install/hooks/handlers/DocCrossRefIntegrity.ts | 871 | // Step 10: Voice notification — ONLY when actual documentation edits were applied | COMMENT |
| LOW | LifeOS/install/LIFEOS/TOOLS/PangramScore.ts | 108 | // Step 1: submit the task. | COMMENT |
| LOW | LifeOS/install/LIFEOS/TOOLS/PangramScore.ts | 124 | // Step 2: poll until terminal stage (STAGE_SUCCESS | STAGE_FAILED). | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/lifeos.ts | 596 | // Step 1: Update Bun | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/lifeos.ts | 605 | // Step 2: Update Claude Code | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 24 | # Step 1: Build | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 29 | # Step 2: Unload old menu bar plist if present | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 37 | # Step 3: Remove old Monitor app | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 46 | # Step 4: Unload current plist if it exists (for reinstall) | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 56 | # Step 5: Deploy app bundle | COMMENT |
| LOW⚡ | LifeOS/install/LIFEOS/PULSE/MenuBar/install.sh | 63 | # Step 6: Install and load launchd plist | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 53 | // Step 1: remove entire-line markers (banner, phase header, bare mode label). | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 58 | // Step 2: strip prefix-only markers, preserving the content that follows. | COMMENT |
| LOW⚡ | …eOS/install/LIFEOS/PULSE/lib/strip-mode-scaffolding.ts | 62 | // Step 3: collapse runs of ≥2 blank lines into a single blank line, then | COMMENT |
| LOW⚡ | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 185 | // Step 1: Create timestamped backup | COMMENT |
| LOW | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 208 | // Step 2: Update the target file. TELOS templates end with a `---` + | COMMENT |
| LOW | LifeOS/install/skills/Telos/Tools/UpdateTelos.ts | 245 | // Step 3: Update updates.md with change log | COMMENT |
| LOW⚡ | LifeOS/install/skills/Art/Tools/ComposeThumbnail.ts | 294 | // Step 1: Resize background to exact dimensions | COMMENT |
| LOW⚡ | LifeOS/install/skills/Art/Tools/ComposeThumbnail.ts | 304 | // Step 2: Crop headshot to FACE ONLY (remove shoulders/body) | COMMENT |
| LOW⚡ | LifeOS/install/skills/Art/Tools/ComposeThumbnail.ts | 308 | // Step 3: Composite headshot based on position | COMMENT |
| LOW | LifeOS/install/skills/Art/Tools/ComposeThumbnail.ts | 349 | // Step 4: Add text with stroke outline | COMMENT |
| LOW | LifeOS/install/skills/Art/Tools/ComposeThumbnail.ts | 493 | // Step 5: Add colored border | COMMENT |
| LOW | LifeOS/install/skills/AudioEditor/Tools/Polish.ts | 102 | // Step 1: Upload the file | COMMENT |
| LOW | LifeOS/install/skills/AudioEditor/Tools/Polish.ts | 127 | // Step 2: Start processing | COMMENT |
| LOW | LifeOS/install/skills/AudioEditor/Tools/Polish.ts | 157 | // Step 3: Poll for completion | COMMENT |
| LOW | …eOS/install/skills/Apify/examples/instagram-scraper.ts | 20 | // Step 1: Search for Instagram scraper actors | COMMENT |
| LOW | …eOS/install/skills/Apify/examples/instagram-scraper.ts | 35 | // Step 2: Call the actor (execute scraping) | COMMENT |
| LOW | …eOS/install/skills/Apify/examples/instagram-scraper.ts | 65 | // // Step 3: Wait for completion | COMMENT |
| LOW | …eOS/install/skills/Apify/examples/instagram-scraper.ts | 77 | // // Step 4: Get dataset and filter results IN CODE | COMMENT |
| LOW | …eOS/install/skills/Apify/examples/instagram-scraper.ts | 95 | // // Step 5: Show token savings | COMMENT |
| LOW | LifeOS/install/skills/Apify/skills/get-user-tweets.ts | 51 | // Step 2: Wait for completion | COMMENT |
| LOW | LifeOS/install/skills/Apify/skills/get-user-tweets.ts | 65 | // Step 3: Get results | COMMENT |
| LOW | LifeOS/install/skills/Apify/skills/get-user-tweets.ts | 78 | // Step 4: Show the tweets | COMMENT |
| LOW | LifeOS/install/skills/Apify/skills/get-user-tweets.ts | 95 | // Step 5: Show token savings | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …install/LIFEOS/DOCUMENTATION/Terminal/kitty/tab_bar.py | 32 | except Exception: | CODE |
| LOW | …install/LIFEOS/DOCUMENTATION/Terminal/kitty/tab_bar.py | 85 | except Exception: | CODE |
| LOW | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 39 | except Exception: | CODE |
| LOW | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 50 | except Exception: | CODE |
| LOW | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 71 | except Exception: | CODE |
| MEDIUM | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 34 | def _left_bar_active(): | CODE |
| MEDIUM | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 43 | def _widest(boss): | CODE |
| LOW⚡ | …OS/DOCUMENTATION/Terminal/kitty/cairn_clear_watcher.py | 21 | except Exception: | CODE |
| LOW⚡ | …OS/DOCUMENTATION/Terminal/kitty/cairn_clear_watcher.py | 31 | except Exception: | CODE |
| LOW⚡ | …OS/DOCUMENTATION/Terminal/kitty/cairn_clear_watcher.py | 35 | except Exception: | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 100 | except Exception as e: | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 183 | print(f"Error: Path does not exist: {input_path}") | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 189 | print("Error: Path is a directory. Use --batch flag to process all files.") | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 196 | print(f"Error: No supported audio/video files found") | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 204 | print(f"Error: Unsupported file format: {input_path.suffix}") | CODE |
| MEDIUM⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 210 | print(f"Error: Path is neither a file nor directory: {input_path}") | CODE |
| LOW | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 224 | except Exception as e: | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/__init__.py | 41 | except Exception as exc: # noqa: BLE001 — never break a turn over annotation | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/__init__.py | 50 | except Exception as exc: # noqa: BLE001 — a crashing hook fails OPEN in Hermes | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 62 | except Exception as exc: # noqa: BLE001 — must never propagate | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 86 | except Exception: # noqa: BLE001 | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 88 | except Exception: # noqa: BLE001 | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 212 | except Exception: # noqa: BLE001 — auditing must never break enforcement | CODE |
| LOW | …/Fabric/Patterns/show_fabric_options_markmap/system.md | 302 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/LIFEOS/PULSE/modules/usage.ts | 178 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/doctor.ts | 171 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/upgrades.ts | 118 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/projects.ts | 301 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/atlas.ts | 141 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/synapse.ts | 337 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/syslog.ts | 220 | export async function handleRequest( | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/assets.ts | 301 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/conduit.ts | 125 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/content.ts | 207 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/work.ts | 384 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/hypotheses.ts | 342 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/algorithm-tab.ts | 621 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/hermes.ts | 419 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/tab-freshness.ts | 332 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/evals.ts | 71 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/telos.ts | 127 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/ledger.ts | 137 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | …eOS/install/LIFEOS/PULSE/modules/local-intelligence.ts | 212 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/books.ts | 86 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/bunker.ts | 401 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/memory.ts | 253 | export async function handleRequest(req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/example-module.ts | 58 | export async function handleRequest( | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/user-index.ts | 615 | export async function handleRequest(path: string, _body: Record<string, unknown>): Promise<Response> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/menubar.ts | 392 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| LOW | LifeOS/install/LIFEOS/PULSE/modules/threatmodel.ts | 74 | export async function handleRequest(_req: Request, pathname: string): Promise<Response | null> { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …install/LIFEOS/DOCUMENTATION/Terminal/kitty/tab_bar.py | 32 | except Exception: | CODE |
| HIGH | …install/LIFEOS/DOCUMENTATION/Terminal/kitty/tab_bar.py | 85 | except Exception: | CODE |
| HIGH | …FEOS/DOCUMENTATION/Terminal/kitty/tab_refit_watcher.py | 71 | except Exception: | CODE |
| HIGH | …OS/DOCUMENTATION/Terminal/kitty/cairn_clear_watcher.py | 35 | except Exception: | CODE |
| HIGH | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 86 | except Exception: # noqa: BLE001 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …tall/LIFEOS/DOCUMENTATION/Writing/AIWritingPatterns.md | 291 | **Structure is the #1 detection signal.** AI detection tools weight structural regularity higher than vocabulary. Consis | CODE |
| HIGH | LifeOS/install/LIFEOS/TOOLS/IntegrityMaintenance.ts | 931 | // Use AI-generated title if it's better than the heuristic-based one | COMMENT |
| HIGH | LifeOS/install/LIFEOS/PULSE/pulse.ts | 353 | // files, AI-generated workflow summary for the /algorithm tab. | COMMENT |
| HIGH | LifeOS/install/skills/WriteStory/AntiCliche.md | 3 | The WriteStory skill's freshness enforcement system. Cliche prose is the #1 failure mode of AI-generated fiction. This d | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/LIFEOS/TOOLS/ContextAudit.ts | 282 | kind: "placeholder", | CODE |
| LOW | LifeOS/install/skills/Telos/Workflows/WriteReport.md | 479 | - `clientName`: The customer name (e.g., "Acme Corp", "Initech") | CODE |
| LOW | LifeOS/install/skills/ISA/Examples/e4-brand-identity.md | 93 | - [ ] ISC-32: Anti: the App Store screenshots use placeholder text like "Lorem ipsum" or "Your headline here" anywhere v | CODE |
| LOW | LifeOS/install/skills/PrivateInvestigator/SKILL.md | 115 | filetype:pdf resume "Jane Doe" "San Francisco" | CODE |
| LOW | LifeOS/install/skills/Science/Examples.md | 55 | expect(isValidEmail('user@example.com')).toBe(true); | CODE |
| LOW | …eOS/install/skills/Interceptor/Workflows/RecordFlow.md | 58 | interceptor act e12 "user@example.com" --context "$INTERCEPTOR_TEST_CONTEXT_ID" # Type into a field | CODE |
| LOW | …eOS/install/skills/Interceptor/Workflows/ReplayFlow.md | 67 | interceptor act "textbox:Email" "user@example.com" --context "$INTERCEPTOR_TEST_CONTEXT_ID" | CODE |
| LOW | …eOS/install/skills/Interceptor/Workflows/ReplayFlow.md | 119 | {"type": "type", "ref": "textbox:Email", "value": "user@example.com"}, | CODE |
| LOW | …kills/Webdesign/References/FrontendDesignPhilosophy.md | 59 | - **Production-grade** — runs, validates, ships, no placeholder lorem ipsum unless that *is* the design joke | CODE |
| LOW | …eOS/install/skills/Webdesign/Workflows/DirectDesign.md | 90 | - **Real working code**, not pseudocode. No placeholder `lorem ipsum` unless that *is* the design joke. | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 24 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/test_guard.py | 12 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/__init__.py | 12 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 28 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 104 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 292 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 330 | CODE | |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 373 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/skills/Interceptor/Tools/Capture.sh | 17 | # Usage: | COMMENT |
| LOW | LifeOS/install/skills/Interceptor/Tools/CleanupTabs.sh | 12 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | LifeOS/install/LIFEOS/TOOLS/extract-transcript.py | 180 | # Check if path exists | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/__init__.py | 20 | logger = logging.getLogger(__name__) | CODE |
| LOW | LifeOS/install/LIFEOS/HERMES/plugin/guard.py | 38 | logger = logging.getLogger(__name__) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | LifeOS/install/skills/Daemon/Tools/DaemonAggregator.ts | 542 | "# This file contains personal information for the daemon profile", | CODE |