Beautiful, Modern & Opinionated Linux
This report summarizes scanner evidence for basecamp/omarchy, a Shell project with 45,998 GitHub stars. SynthScan examined 394,792 lines of code across 3612 source files, recording 292 pattern matches distributed across 12 syntactic categories. The legacy adjusted pattern signal is 1.0 (Low 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.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 190 finding(s).
Are imports declared and package/API names verified? 55 finding(s).
Are wrappers, guards, and repeated structures necessary? 110 finding(s).
Which changes need focused human review? 292 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 292 distinct pattern matches across 12 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 |
|---|---|---|---|---|
| LOW | test/shell.d/input-acceptance-checks.py | 18 | def test_notifications_follow_process_ownership_across_restarts(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 85 | def test_vconsole_variants_quotes_and_japanese_without_preference(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 95 | def test_rerun_preserves_custom_multilingual_profile(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 103 | def test_stock_profile_is_repaired_but_custom_single_keyboard_is_not(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 112 | def test_existing_shortcuts_and_addon_options_are_preserved(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 123 | def test_ctrl_space_is_removed_from_every_trigger_list(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 131 | def test_generated_stock_shortcuts_are_repaired(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 139 | def test_inherited_hotkeys_keep_fcitx_defaults_except_the_ctrl_space_toggle(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 146 | def test_korean_right_alt_preference_reaches_fcitx_with_its_variant(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 155 | def test_lao_preference_keeps_a_latin_fcitx_keyboard(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 159 | def test_korean_preference_yields_to_a_later_keyboard_change(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 166 | def test_seed_in_a_live_desktop_is_a_harmless_retry(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 174 | def test_failed_seed_rolls_back_so_it_can_be_retried(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 182 | def test_readiness_checks_the_dbus_array_payload_and_group(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 187 | def test_migration_without_a_bus_keeps_written_activation_and_defaults(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 193 | def test_live_migration_without_a_bus_does_not_restart_or_rewrite_profile(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 202 | def test_migration_does_not_add_an_engine_the_old_daemon_cannot_load(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 212 | def test_custom_keyboard_overrides_are_not_stock(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 216 | def test_atomic_updates_keep_symlinks_and_modes(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 227 | def test_input_preferences_are_data_and_invalid_values_fail(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 232 | def test_font_fallback_does_not_replace_existing_preference(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 241 | def test_hong_kong_cangjie_reaches_the_hong_kong_glyphs(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 247 | def test_a_chosen_cjk_variant_replaces_the_seeded_one(self): | CODE |
| LOW⚡ | test/shell.d/input-method-checks.py | 257 | def test_font_command_sets_seeds_and_clears_the_variant(self): | CODE |
| LOW | test/shell.d/input-method-checks.py | 20 | def test_pinyin_defaults_suppress_cloud_prompt(self): | CODE |
| LOW | test/shell.d/input-method-checks.py | 26 | def test_pinyin_prompt_suppression_preserves_existing_preferences(self): | CODE |
| LOW | test/shell.d/input-method-checks.py | 55 | def test_every_installer_engine_is_seeded_and_inactive(self): | CODE |
| LOW | test/shell.d/input-method-checks.py | 72 | def test_positional_engines_stay_on_qwerty_under_other_latin_layouts(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 44 | def test_readding_input_keeps_its_original_override(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 50 | def test_positional_engines_added_under_dvorak_keep_qwerty_positions(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 54 | def test_a_new_leading_layout_redecides_only_omarchys_engine_overrides(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 62 | def test_input_deselection_keeps_keyboard_and_selected_overrides(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 67 | def test_input_changes_keep_the_switching_order(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 72 | def test_failed_input_save_leaves_fonts_alone(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 80 | def test_an_engine_installed_after_fcitx_started_loads_on_selection(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 89 | def test_an_uninstalled_engine_names_its_package_without_restarting(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 97 | def test_command_line_addition_appends_once(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 105 | def test_a_cjk_language_adds_its_engine_only_to_a_keyboard_only_group(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 116 | def test_a_cjk_language_without_fcitx_still_seeds_its_glyph_forms(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 123 | def test_failed_font_write_restores_the_input_group(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 130 | def test_cancellation_does_not_change_input_settings(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 135 | def test_failed_input_save_restores_the_original_group(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 143 | def test_picker_preselects_current_entries_and_returns_empty_selection(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 153 | def test_apply_rejects_unknown_values(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 157 | def test_immediate_selection_removes_an_input_and_accepts_keyboard_only(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 164 | def test_keyboard_checks_reflect_normalized_selection(self): | CODE |
| LOW⚡ | test/shell.d/typing-setup-checks.py | 169 | def test_keyboard_override_failure_preserves_symlink_and_restores_settings(self): | CODE |
| LOW | test/shell.d/typing-setup-checks.py | 19 | def test_variants_and_installer_binding_safety(self): | CODE |
| LOW | test/shell.d/typing-setup-checks.py | 26 | def test_keyboard_catalog_uses_installer_choices(self): | CODE |
| LOW | test/shell.d/typing-setup-checks.py | 187 | def test_keyboard_save_aligns_fcitx_and_preserves_language_overrides(self): | CODE |
| LOW | test/shell.d/hermes-desktop-install-test.sh | 26 | def _write_desktop_build_stamp(project_root, *, source_mode): | CODE |
| LOW | test/shell.d/agent-usage-codex-limits-test.sh | 168 | def fetch_across_login_change(home_dir=None, primary=True): | CODE |
| LOW | shell/plugins/panels/audio/Model.js | 184 | function streamRepresentsMprisPlayer(streamLabel, playerLabel) { | CODE |
| LOW | shell/plugins/panels/audio/Model.js | 231 | function unmatchedMprisStreamLabel(label, players, streams) { | CODE |
| LOW | shell/plugins/panels/bluetooth/Model.js | 66 | function bluetoothSinkMatchesDevice(node, device) { | CODE |
| LOW | shell/plugins/panels/weather/Model.js | 180 | function openMeteoCurrentCondition(dailyForecastReport) { | CODE |
| LOW | shell/plugins/panels/weather/Model.js | 211 | function weatherResponseCompletesSave(hasConfiguredCoordinates, source) { | CODE |
| LOW | shell/plugins/agents/collectors.py | 1720 | def claude_code_local_command(line: dict[str, Any]) -> str | None: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1792 | def read_claude_code_transcript(path: Path, entry: dict[str, Any] | None) -> dict[str, Any]: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2008 | def _claude_code_read_transcripts(files: list[Path], previous: dict[str, Any]) -> tuple[dict[str, Any], list[str], bool] | CODE |
| 3 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/shell.d/factory-reset-limine-test.sh | 371 | # Prints the verdict, so a broken harness cannot pass for "not stale". | COMMENT |
| MEDIUM | test/shell.d/agent-usage-agy-harness-test.sh | 3 | # Antigravity signed in through another harness, with agy itself absent: the | COMMENT |
| MEDIUM | test/shell.d/agent-usage-agy-harness-test.sh | 4 | # record still carries the plan and limits, asked with that harness' token, | COMMENT |
| MEDIUM | test/shell.d/agent-usage-agy-harness-test.sh | 107 | # A lapsed token is renewed the next time its harness runs, so the limits are | COMMENT |
| MEDIUM | test/shell.d/install-language-test.sh | 37 | # world stubbed, so it is seen to elevate and notify nothing. | COMMENT |
| MEDIUM | test/shell.d/security-fido2-test.sh | 61 | # this harness. | COMMENT |
| MEDIUM | test/shell.d/agent-usage-local-scanner-test.sh | 325 | # A harness's route config can move its rows onto this machine without its | COMMENT |
| MEDIUM | test/shell.d/agent-usage-local-scanner-test.sh | 326 | # store changing, so the cached scan is kept only while every harness still | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 117 | # and a hand-declared gateway; Kimchi harness sessions on its gateway, | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 140 | # None means nobody may count it; "-" means the harness never records it. | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 369 | # Kimchi's harness sessions, in pi's format: its own gateway routes are | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 867 | # ------------------------------------------------------- harness provider ids | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 887 | # (harness, provider, owner) | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 980 | # ----------------------------------------------------- harness stores' routes | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 984 | # the harness's own collector when its service billed it, by `local` on a | COMMENT |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 1226 | # A local.json naming each harness's own id for a plan leaves every row to | STRING |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 1914 | # own harness, opencode's `kimchi` provider, and the Claude Code and Codex | STRING |
| MEDIUM | test/shell.d/agent-usage-kimchi-test.sh | 5 | # own), and the pi-format sessions under its harness. The unused-machine | COMMENT |
| MEDIUM | test/shell.d/agent-usage-kimchi-test.sh | 293 | # Tokens come from assistant messages in the harness's pi session files: | COMMENT |
| MEDIUM | test/shell.d/agent-usage-kimchi-test.sh | 336 | # KIMCHI_CODING_AGENT_DIR moves the harness, as it does for the CLI. | COMMENT |
| MEDIUM | test/shell.d/agent-usage-kimchi-test.sh | 352 | # provider named kimchi, as pi 1.4.0 and omp 18.12.6 write them), harness | COMMENT |
| MEDIUM | test/shell.d/agent-usage-accounts-test.sh | 164 | # ------------------------------------------------------------------ harness | COMMENT |
| MEDIUM | test/shell.d/agent-usage-agy-limits-test.sh | 6 | # other harnesses are in agy-harness; local stats in agy-scanner. The | COMMENT |
| MEDIUM | test/shell.d/sudo-docker-test.sh | 5 | # session can reach the socket, which is what decides if a command must elevate. | COMMENT |
| MEDIUM | test/acceptance.d/shell-surfaces-test.sh | 24 | # Search and select an emoji. The host harness separately proves the shortcut | COMMENT |
| MEDIUM | shell/plugins/agents/collectors.py | 1449 | # The hosts a harness is pointed at in place of its own service, by the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | install/hardware/fix-yt6801-ethernet-adapter.sh | 1 | # Fresh installs use the kernel's upstream dwmac-motorcomm driver and do not | COMMENT |
| LOW | install/hardware/bluetooth.sh | 1 | systemctl enable bluetooth.service | COMMENT |
| LOW | install/hardware/n1x.sh | 1 | # NVIDIA N1x laptop (GB10-class SoC, MediaTek CPU-side peripherals; first seen | COMMENT |
| LOW | install/hardware/n1x.sh | 21 | # see install/hardware/n1x.sh. | COMMENT |
| LOW | install/hardware/n1x.sh | 41 | # firmware hands over each core with its CPPC floor raised to its ceiling for a | COMMENT |
| LOW | install/hardware/n1x.sh | 101 | if (( ${#n1x_pkgbase_files[@]} != 1 )); then | COMMENT |
| LOW | install/hardware/speaker-tuning.sh | 1 | # Install the LV2 plugins that shipped speaker tunings need. | COMMENT |
| LOW | install/hardware/fix-synaptic-touchpad.sh | 1 | # Enable Synaptics InterTouch for confirmed touchpads if not already loaded | COMMENT |
| LOW | install/hardware/apple/fix-brcmfmac-supplicant.sh | 1 | # Apple Macs ship Broadcom Wi-Fi driven by brcmfmac, whose firmware runs the WPA | COMMENT |
| LOW | install/hardware/intel/fix-wifi7-eht.sh | 1 | # Temporary fix for Dell XPS 14/16 on Panther Lake | COMMENT |
| LOW | install/hardware/asus/fix-asus-proart-p14-speakers.sh | 1 | # Speaker amplifier tuning for the ASUS ProArt P14 H7407BA (NVIDIA N1x). | COMMENT |
| LOW | install/hardware/asus/fix-z13-touchpad.sh | 1 | # Fix disable-while-typing on ASUS ROG Flow Z13 detachable keyboard. | COMMENT |
| LOW | install/hardware/asus/fix-asus-zenbook-a16-speakers.sh | 1 | # Speakers and microphones for the ASUS Zenbook A16 UX3607OA (Snapdragon X2 | COMMENT |
| LOW | install/hardware/asus/fix-asus-ptl-display-backlight.sh | 1 | # Display backlight fix for ASUS Panther Lake / Xe3 iGPU laptops. | COMMENT |
| LOW | install/config/docker.sh | 1 | # The Docker daemon runs as root and its socket is root-owned, so membership in | COMMENT |
| LOW | install/provisioning/luks-rekey.sh | 1 | # Resumable re-key of the root LUKS volume from the staged install key to the | COMMENT |
| LOW | install/provisioning/setup-form.sh | 1 | # The setup form: every question Omarchy asks a human to describe their machine | COMMENT |
| LOW | install/provisioning/setup-form.sh | 21 | # the variables these prompts write: keyboard, keyboard_label, | COMMENT |
| LOW | install/provisioning/setup-form.sh | 221 | COMMENT | |
| LOW | install/user/chromium.sh | 1 | # Chromium ships in the base packages, so it never goes through | COMMENT |
| LOW | install/user/first-run/enable-user-units.sh | 1 | #!/bin/bash | COMMENT |
| LOW | install/user/first-run/audio-tuning.sh | 1 | #!/bin/bash | COMMENT |
| LOW | install/helpers/image-target.sh | 1 | # Image builds and the hardware setup they defer to the machine's first boot. | COMMENT |
| LOW | install/helpers/image-target.sh | 21 | # from it would share one: where install finalization would make the keyring | COMMENT |
| LOW | test/shell.d/qml-text-format-scan.py | 321 | rel = path.relative_to(root) | COMMENT |
| LOW | test/shell.d/qml-text-format-scan.py | 341 | found.append(f'{rel}:{b["start"] + 1}: root Text element declares no textFormat') | COMMENT |
| LOW | test/shell.d/unowned-system-paths-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/shell-idle-spawn-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/agent-usage-fireworks-scanner-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/privileged-heredoc-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/privileged-heredoc-test.sh | 21 | # | COMMENT |
| LOW | test/shell.d/privileged-heredoc-test.sh | 41 | # Path roots the installing user can replace outright -- by editing the | COMMENT |
| LOW | test/shell.d/privileged-heredoc-test.sh | 61 | COMMENT | |
| LOW | test/shell.d/privileged-heredoc-test.sh | 301 | # Whole name only. A prefix match would read ${OMARCHY_INSTALL_USER:-}, which | COMMENT |
| LOW | test/shell.d/privileged-heredoc-test.sh | 341 | # When the token itself is not a path and the shape came only from the | COMMENT |
| LOW | test/shell.d/menu-guard-budget-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/agent-usage-partition-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/agent-usage-partition-test.sh | 101 | # another root: its lines carry no id, so only dropping the nested root | COMMENT |
| LOW | test/shell.d/qml-text-format-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/agent-usage-helpers.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/agent-usage-helpers.sh | 181 | fi | COMMENT |
| LOW | test/shell.d/realtime-repair-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | test/shell.d/openclaw-cli-test.sh | 101 | # installer does that itself for a gateway it finds loaded. As upstream does | COMMENT |
| LOW | test/acceptance.d/security-test.sh | 1 | #!/bin/bash | COMMENT |
| LOW | shell/Commons/AudioNodesModel.js | 21 | // A platform's audio hints, which its own package ships in the platform root | COMMENT |
| LOW | shell/plugins/panels/clock/Model.js | 1 | // Pure date and format math for the clock widget and its calendar panel. | COMMENT |
| LOW | shell/plugins/agents/collectors.py | 1521 | text = str(model or "").lower() | COMMENT |
| LOW | shell/plugins/agents/collectors.py | 1601 | return None | COMMENT |
| LOW | shell/plugins/agents/collectors.py | 1621 | # that answered each prompt. Version 11 stops counting a built-in local | COMMENT |
| LOW | shell/plugins/agents/collectors.py | 2261 | # ------------------------------------------------------- Codex rollouts | COMMENT |
| LOW | shell/plugins/agents/collectors.py | 2961 | COMMENT | |
| LOW | shell/plugins/agents/collectors.py | 3181 | # ------------------------------------------------------- MiniMax Code | COMMENT |
| LOW | shell/plugins/menu/MenuModel.js | 441 | ] | COMMENT |
| LOW | shell/plugins/menu/MenuModel.js | 461 | // | COMMENT |
| LOW | shell/plugins/menu/MenuModel.js | 521 | COMMENT | |
| LOW | shell/plugins/menu/MenuModel.js | 581 | // opens on the last evaluation's answers, so however long this takes is how | COMMENT |
| LOW | shell/plugins/bar/BarModel.js | 321 | // widget moved to another section can be handed over rather than built again. | COMMENT |
| LOW | shell/plugins/bar/widgets/KeyboardLayoutModel.js | 1 | // Label math for the keyboard layout widget, kept Qt-free so it can be unit | COMMENT |
| LOW | shell/plugins/bar/widgets/KeyboardLayoutModel.js | 41 | // which reads as ENG/POR but at least says something. | COMMENT |
| LOW | shell/plugins/bar/widgets/KeyboardLayoutModel.js | 81 | // the seat hands it ends up describing a button. Leave them out and what remains | COMMENT |
| 8 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/shell.d/remove-security-sshd-firewall-test.sh | 66 | printf 'ssh-ed25519 fake-key test@example\n' >"$home/.ssh/authorized_keys" | CODE |
| LOW | manual/51-unattended-installs.md | 21 | The name and email for git commits aren't part of the install. Set them once the machine is up, over SSH for example, wi | CODE |
| LOW | manual/sl/51-unattended-installs.md | 21 | Ime in e-pošta za potrditve git nista del namestitve. Nastavite ju, ko je naprava zagnana, na primer prek SSH, z `omarch | CODE |
| LOW | manual/sk/51-unattended-installs.md | 21 | Meno a e-mail pre commity v gite nie sú súčasťou inštalácie. Nastavte ich, keď stroj beží, napríklad cez SSH, pomocou `o | CODE |
| LOW | manual/ur/51-unattended-installs.md | 21 | git commits کے لیے نام اور ای میل انسٹال کا حصہ نہیں ہیں۔ مشین تیار ہو جانے کے بعد انہیں ایک بار سیٹ کر دیں، مثلاً SSH ک | CODE |
| LOW | manual/sw/51-unattended-installs.md | 21 | Jina na barua pepe kwa ajili ya ahadi za git si sehemu ya usakinishaji. Viweke mara tu mashine inapokuwa imewashwa, kwa | CODE |
| LOW | manual/uz/51-unattended-installs.md | 21 | Git commit lari uchun ism va email o'rnatishning bir qismi emas. Mashina ishga tushgandan so'ng ularni o'rnating, masala | CODE |
| LOW | manual/pl/51-unattended-installs.md | 21 | Nazwa i adres e-mail do commitów w git nie są częścią instalacji. Ustaw je, gdy maszyna już działa, na przykład przez SS | CODE |
| LOW | manual/vi/51-unattended-installs.md | 21 | Tên và email cho các commit git không phải là một phần của quá trình cài đặt. Hãy đặt chúng sau khi máy đã hoạt động, ch | CODE |
| LOW | manual/sv/51-unattended-installs.md | 21 | Namnet och e-postadressen för git-commits ingår inte i installationen. Ställ in dem när maskinen är igång, till exempel | CODE |
| LOW | manual/ga/51-unattended-installs.md | 21 | Ní cuid den tsuiteáil iad an t-ainm agus an ríomhphost le haghaidh gealltanais git. Socraigh iad a luaithe a bheidh an m | CODE |
| LOW | manual/he/51-unattended-installs.md | 21 | השם והאימייל עבור commits ב-git אינם חלק מההתקנה. הגדירו אותם לאחר שהמכונה עולה, באמצעות SSH למשל, בעזרת `omarchy setup | CODE |
| LOW | manual/ms/51-unattended-installs.md | 21 | Nama dan e-mel untuk commit git bukan sebahagian daripada pemasangan. Tetapkannya sebaik sahaja mesin beroperasi, melalu | CODE |
| LOW | manual/da/51-unattended-installs.md | 21 | Navn og e-mail til git-commits er ikke en del af installationen. Sæt dem, når maskinen er oppe at køre, over SSH for eks | CODE |
| LOW | manual/no/51-unattended-installs.md | 21 | Navnet og e-postadressen for git-commits er ikke en del av installasjonen. Angi dem når maskinen er oppe, over SSH for e | CODE |
| LOW | manual/ja/51-unattended-installs.md | 21 | git コミット用の名前とメールアドレスはインストールの一部ではない。マシンが起動したら、たとえば SSH 経由で `omarchy setup git --name "Jane Doe" --email jane@example.com` | CODE |
| LOW | manual/el/51-unattended-installs.md | 21 | Το όνομα και το email για τα git commits δεν αποτελούν μέρος της εγκατάστασης. Όρισέ τα μόλις το μηχάνημα είναι έτοιμο, | CODE |
| LOW | manual/lv/51-unattended-installs.md | 21 | Vārds un e-pasts git komitiem nav instalēšanas daļa. Iestatiet tos, kad ierīce ir darbspējīga, piemēram, caur SSH, ar `o | CODE |
| LOW | manual/it/51-unattended-installs.md | 21 | Il nome e l'email per i commit git non fanno parte dell'installazione. Impostali una volta che la macchina è attiva, via | CODE |
| LOW | manual/ca/51-unattended-installs.md | 21 | El nom i el correu electrònic per als commits de git no formen part de la instal·lació. Configura'ls un cop la màquina e | CODE |
| LOW | manual/is/51-unattended-installs.md | 21 | Nafnið og netfangið fyrir git-commit eru ekki hluti af uppsetningunni. Stilltu þau þegar vélin er komin í gang, til dæmi | CODE |
| LOW | manual/cs/51-unattended-installs.md | 21 | Jméno a e-mail pro commity v gitu součástí instalace nejsou. Nastavte je, jakmile stroj běží, například přes SSH pomocí | CODE |
| LOW | manual/es-MX/51-unattended-installs.md | 21 | El nombre y el correo para los commits de git no forman parte de la instalación. Configúralos una vez que la máquina est | CODE |
| LOW | manual/ru/51-unattended-installs.md | 21 | Имя и email для коммитов git не входят в установку. Задайте их, когда машина заработает, например по SSH, командой `omar | CODE |
| LOW | manual/ro/51-unattended-installs.md | 21 | Numele și adresa de e-mail pentru commit-urile git nu fac parte din instalare. Setează-le după ce mașina este pornită, p | CODE |
| LOW | manual/zh-CN/51-unattended-installs.md | 21 | 用于 git 提交的姓名和电子邮件不属于安装的一部分。等机器启动后,再通过例如 SSH,用 `omarchy setup git --name "Jane Doe" --email jane@example.com` 设置它们。 | CODE |
| LOW | manual/pt/51-unattended-installs.md | 21 | O nome e o e-mail para os commits do git não fazem parte da instalação. Defina-os quando a máquina estiver a funcionar, | CODE |
| LOW | manual/uk/51-unattended-installs.md | 21 | Ім'я та email для комітів git не входять до встановлення. Задайте їх, коли машина запрацює, наприклад через SSH, за допо | CODE |
| LOW | manual/sr/51-unattended-installs.md | 21 | Име и имејл за git уписе нису део инсталације. Подесите их када машина проради, преко SSH-а на пример, помоћу `omarchy s | CODE |
| LOW | manual/si/51-unattended-installs.md | 21 | git commit සඳහා නම සහ email එක ස්ථාපනයේ කොටසක් නොවේ. උදාහරණයක් ලෙස SSH හරහා, යන්ත්රය ක්රියාත්මක වූ පසු `omarchy setup | CODE |
| LOW | manual/zh-TW/51-unattended-installs.md | 21 | git 提交所用的姓名與電子郵件並不屬於安裝的一部分。等機器啟動後再設定即可,例如透過 SSH 使用 `omarchy setup git --name "Jane Doe" --email jane@example.com`。 | CODE |
| LOW | manual/ar/51-unattended-installs.md | 21 | لا يُعد الاسم والبريد الإلكتروني الخاصان بعمليات git جزءًا من التثبيت. عيّنهما بعد أن يصبح الجهاز جاهزًا للعمل، عبر SSH | CODE |
| LOW | manual/hr/51-unattended-installs.md | 21 | Ime i e-pošta za git commitove nisu dio instalacije. Postavite ih nakon što se računalo pokrene, primjerice putem SSH-a, | CODE |
| LOW | manual/pt-BR/51-unattended-installs.md | 21 | O nome e o e-mail para os commits do git não fazem parte da instalação. Configure-os quando a máquina estiver no ar, por | CODE |
| LOW | manual/hu/51-unattended-installs.md | 21 | A git-commitetekhez használt név és e-mail-cím nem része a telepítésnek. Állítsd be őket, amint a gép felállt, például S | CODE |
| LOW | manual/nl/51-unattended-installs.md | 21 | De naam en het e-mailadres voor git-commits maken geen deel uit van de installatie. Stel ze in zodra de machine draait, | CODE |
| LOW | manual/bg/51-unattended-installs.md | 21 | Името и имейлът за git комити не са част от инсталацията. Задайте ги, след като машината заработи, например през SSH, с | CODE |
| LOW | manual/bn/51-unattended-installs.md | 21 | git কমিটের জন্য নাম এবং ইমেইল ইনস্টলের অংশ নয়। মেশিন চালু হয়ে গেলে সেগুলো সেট করুন, যেমন SSH দিয়ে, `omarchy setup git | CODE |
| LOW | manual/fil/51-unattended-installs.md | 21 | Ang pangalan at email para sa mga git commit ay hindi bahagi ng install. Itakda ang mga ito kapag tumatakbo na ang machi | CODE |
| LOW | manual/hi/51-unattended-installs.md | 21 | git कमिट के लिए नाम और ईमेल इंस्टॉल का हिस्सा नहीं हैं। मशीन चालू हो जाने के बाद उन्हें सेट करें, उदाहरण के लिए SSH के ज | CODE |
| LOW | manual/de/51-unattended-installs.md | 21 | Name und E-Mail für Git-Commits sind nicht Teil der Installation. Lege sie fest, sobald die Maschine läuft, zum Beispiel | CODE |
| LOW | manual/ko/51-unattended-installs.md | 21 | git 커밋용 이름과 이메일은 설치에 포함되지 않는다. 컴퓨터가 부팅된 뒤, 예를 들어 SSH를 통해 `omarchy setup git --name "Jane Doe" --email jane@example.com`으 | CODE |
| LOW | manual/fi/51-unattended-installs.md | 21 | Git-committeihin käytettävät nimi ja sähköposti eivät kuulu asennukseen. Aseta ne, kun kone on käynnissä, esimerkiksi SS | CODE |
| LOW | manual/id/51-unattended-installs.md | 21 | Nama dan email untuk commit git bukan bagian dari instalasi. Tetapkan setelah mesin hidup, lewat SSH misalnya, dengan `o | CODE |
| LOW | manual/fr/51-unattended-installs.md | 21 | Le nom et l'adresse e-mail pour les commits git ne font pas partie de l'installation. Définissez-les une fois la machine | CODE |
| LOW | manual/et/51-unattended-installs.md | 21 | Giti commit'ide nimi ja e-posti aadress ei ole paigalduse osa. Määra need, kui masin on üleval, näiteks SSH kaudu käsuga | CODE |
| LOW | manual/fa/51-unattended-installs.md | 21 | نام و ایمیل برای کامیتهای git بخشی از نصب نیستند. وقتی ماشین بالا آمد، آنها را تنظیم کنید، مثلاً از طریق SSH، با `omar | CODE |
| LOW | manual/lt/51-unattended-installs.md | 21 | Vardas ir el. paštas git įrašams nėra diegimo dalis. Nustatykite juos, kai kompiuteris jau veiks, pavyzdžiui, per SSH, k | CODE |
| LOW | manual/ta/51-unattended-installs.md | 21 | git கமிட்களுக்கான பெயரும் மின்னஞ்சலும் நிறுவலின் பகுதி அல்ல. கணினி இயங்கத் தொடங்கியதும் அவற்றை அமையுங்கள், உதாரணமாக SSH | CODE |
| LOW | manual/th/51-unattended-installs.md | 21 | ชื่อและอีเมลสำหรับ git commits ไม่ได้เป็นส่วนหนึ่งของการติดตั้ง ตั้งค่าเหล่านั้นเมื่อเครื่องพร้อมใช้งานแล้ว เช่น ผ่าน SS | CODE |
| LOW | manual/tr/51-unattended-installs.md | 21 | Git commit'leri için ad ve e-posta kurulumun parçası değildir. Bunları makine açıldıktan sonra, örneğin SSH üzerinden, ` | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/shell.d/platform-setup-test.sh | 43 | # ── system setup ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/platform-setup-test.sh | 76 | # ── user setup ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/platform-setup-test.sh | 99 | # ── first run ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/pacman-templates-test.sh | 25 | # ── the templates ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/pacman-templates-test.sh | 100 | # ── install finalization ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/pacman-templates-test.sh | 147 | # ── refresh through the command, with every privileged step a stand-in ─────── | COMMENT |
| MEDIUM | test/shell.d/platform-app-hooks-test.sh | 59 | # ── browsers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/platform-app-hooks-test.sh | 92 | # ── Steam ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/platform-app-hooks-test.sh | 118 | # ── 32-bit drivers ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/shell.d/lifecycle-dispatch-test.sh | 230 | # ── setup and app-install operations ───────────────────────────────────────── | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | shell/plugins/agents/collectors.py | 1497 | except ValueError: | CODE |
| HIGH | shell/plugins/agents/collectors.py | 655 | except OSError: | CODE |
| HIGH | shell/plugins/agents/collectors.py | 1086 | except OSError: | CODE |
| HIGH | default/input-methods/configure.py | 277 | except (OSError, ValueError, KeyError, IndexError, subprocess.CalledProcessError): | CODE |
| HIGH | scripts/i18n-sync.py | 429 | except ValueError: | CODE |
| HIGH | scripts/i18n-sync.py | 435 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/shell.d/input-indicator-test.sh | 237 | except Exception as error: | CODE |
| MEDIUM | test/shell.d/input-indicator-test.sh | 234 | def run(): | CODE |
| LOW | test/shell.d/i18n-startup-test.sh | 229 | except Exception as error: | CODE |
| LOW | test/shell.d/agent-usage-shared-test.sh | 135 | except Exception as error: | CODE |
| LOW | test/shell.d/agent-usage-minimax-test.sh | 128 | except Exception as failure: | CODE |
| LOW | test/shell.d/agent-usage-kimi-regression-test.sh | 204 | except Exception as error: | CODE |
| MEDIUM | test/shell.d/agent-usage-kimi-regression-test.sh | 201 | def refresh(): | CODE |
| LOW | shell/plugins/agents/collectors.py | 258 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 590 | except Exception as exc: | CODE |
| LOW | shell/plugins/agents/collectors.py | 604 | except Exception as exc: | CODE |
| LOW | shell/plugins/agents/collectors.py | 847 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 896 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1024 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1048 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1237 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1371 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1389 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1412 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1424 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 1869 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2019 | except Exception as exc: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2100 | except Exception as exc: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2317 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2424 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 2495 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3078 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3088 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3318 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3497 | except Exception as exc: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3582 | except Exception: | CODE |
| LOW | shell/plugins/agents/collectors.py | 3762 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/shell.d/qml-text-format-scan.py | 86 | CODE | |
| LOW | test/shell.d/qml-text-format-scan.py | 259 | CODE | |
| LOW | test/shell.d/agent_usage_fixtures.py | 660 | CODE | |
| LOW | shell/plugins/panels/dropbox/status.py | 46 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 812 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 916 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 1191 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 1792 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 2049 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 2185 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 2394 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 2428 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 3009 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 3292 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 1013 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 1225 | CODE | |
| LOW | default/input-methods/configure.py | 90 | CODE | |
| LOW | default/input-methods/configure.py | 293 | CODE | |
| LOW | default/input-methods/configure.py | 338 | CODE | |
| LOW | scripts/i18n-sync.py | 178 | CODE | |
| LOW | scripts/i18n-sync.py | 259 | CODE | |
| LOW | scripts/i18n-sync.py | 316 | CODE | |
| LOW | scripts/i18n-sync.py | 366 | CODE | |
| LOW | scripts/i18n-sync.py | 440 | CODE | |
| LOW | scripts/i18n-sync.py | 660 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 2044 | # model's context window twice under new ids, one response served once. A | STRING |
| MEDIUM | test/shell.d/agent-usage-partition-test.sh | 2110 | # omp: one response past the declared context window, written twice. | STRING |
| MEDIUM | shell/plugins/agents/collectors.py | 779 | # omp writes a reply that overflowed the model's context window twice, | COMMENT |
| MEDIUM | shell/plugins/agents/collectors.py | 1653 | # carry the context window as a suffix the replies don't. | COMMENT |
| MEDIUM | default/agents/skills/omarchy/SKILL.md | 16 | Manage [Omarchy](https://omarchy.org/) Linux systems - a beautiful, fun, agentic Arch Linux distribution with Hyprland. | CODE |
| MEDIUM | docs/file-layout.md | 368 | ## Root-side install orchestration | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/shell.d/hermes-cli-test.sh | 35 | # environment and `ls -g` lists it as requested when a test says it was built, | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/shell.d/agent_usage_fixtures.py | 17 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 18 | CODE | |
| LOW | shell/plugins/agents/collectors.py | 41 | CODE | |
| LOW | default/nautilus-python/extensions/localsend.py | 1 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | install/hardware/intel/thermald.sh | 5 | # Check if Sandy Bridge or newer (model >= 42). Sandy Bridge: model 42 (mobile), 45 (desktop) | COMMENT |