Repository Analysis

kovidgoyal/kitty

If you live in the terminal, kitty is made for you! Cross-platform, fast, feature-rich, GPU based.

4.9 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of kovidgoyal/kitty, a Python project with 34,649 GitHub stars. SynthScan v2.0 examined 321,750 lines of code across 880 source files, recording 1662 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 4.9 places this repository in the Likely human-written band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

4.9
Adjusted Score
4.9
Raw Score
100%
Time Factor
2026-08-28
Last Push
34.6K
Stars
Python
Language
321.8K
Lines of Code
880
Files
1.7K
Pattern Hits
2026-08-29
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 19MEDIUM 13LOW 1630

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1662 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers595 hits · 522 pts
SeverityFileLineSnippetContext
LOWsetup.py904def get_source_specific_defines(env: Env, src: str) -> Tuple[str, List[str], Optional[List[str]]]:CODE
LOWsetup.py929def get_source_specific_cflags(env: Env, src: str) -> List[str]:CODE
LOWsetup.py1170def wayland_protocol_file_name(base: str, ext: str = 'c') -> str:CODE
LOWsetup.py1447def update_go_generated_files(args: Options, kitty_exe: str) -> None:CODE
LOWsetup.py2036def create_quick_access_bundle(kapp: str, quake_desc: str = 'Quick access to kitty') -> None:STRING
LOWsetup.py2054def create_minimal_macos_bundle(args: Options, launcher_dir: str, relocate: bool = False) -> None:STRING
LOWpublish.py300 def make_request_with_retries(STRING
LOWpublish.py341 def update_nightly_description(self, release_id: int) -> None:STRING
LOWpublish.py401 def print_failed_response_details(self, r: HTTPResponse, msg: str) -> None:STRING
LOWpublish.py415 def existing_assets_for_release(self, release: Dict[str, Any]) -> List[Dict[str, Any]]:STRING
LOWpublish.py528def remove_pycache_only_folders() -> None:STRING
LOWkittens/runner.py53def import_kitten_main_module(config_dir: str, kitten: str) -> dict[str, Any]:CODE
LOWkittens/runner.py221def get_kitten_extra_cli_parsers(kitten: str) -> dict[str, str]:CODE
LOWkittens/panel/main.py44def panel_kitten_options_spec() -> str:CODE
LOWkittens/panel/main.py107def cli_option_to_lsc_configs_map() -> MappingProxyType[str, tuple[str, ...]]:CODE
LOWkittens/panel/main.py127def incrementally_update_layer_shell_config(existing: dict[str, Any], cli_options: Iterable[str]) -> LayerShellConfig:CODE
LOWkittens/panel/main.py152def have_config_files_been_updated(config_files: Iterable[str]) -> bool:CODE
LOWkittens/panel/main.py165def handle_single_instance_command(boss: BossType, sys_args: Sequence[str], environ: Mapping[str, str], notify_on_os_winCODE
LOWkittens/tui/handler.py91 def allow_indiscriminate_remote_control(self, enable: bool = True) -> None:CODE
LOWkittens/tui/handler.py241 def perform_default_key_action(self, key_event: KeyEventType) -> bool:CODE
LOWkittens/tui/handler.py296 def on_file_transfer_response(self, ftc: 'FileTransmissionCommand') -> None:CODE
LOWkittens/tui/loop.py356 def total_pending_bytes_to_write(self) -> int:CODE
LOWkittens/choose_files/main.py240def relative_path_if_possible(path: str, base: str) -> str:STRING
LOWkittens/choose_files/main.py253def format_selection_for_paste(paths: list[str], cwd: str | None, at_prompt: bool) -> str:STRING
LOWkittens/ssh/utils.py121def remove_env_var_from_cmdline(key: str, argv: list[str]) -> None:CODE
LOWkittens/ssh/utils.py134def set_single_env_var_in_cmdline(key: str, val: str, argv: list[str]) -> None:CODE
LOWkittens/ssh/utils.py160def read_data_from_shared_memory(shm_name: str) -> Any:CODE
LOWkittens/ssh/utils.py262def set_server_args_in_cmdline(server_args: list[str], argv: list[str], extra_args: tuple[str, ...] = ('--kitten',), allCODE
LOWkittens/command_palette/main.py129def collect_keyboard_bindings(CODE
LOWkittens/command_palette/main.py161def relocate_mode_entry_bindings(modes: dict[str, dict[str, list[dict[str, str]]]]) -> None:CODE
LOWdocs/conf.py386def write_remote_control_protocol_docs() -> None: # {{{STRING
LOWdocs/notifications.py21def on_notification_activated(nc: NotificationCommand, which: int) -> None:CODE
LOWgen/go_code.py253def generate_kittens_completion() -> None:CODE
LOWgen/go_code.py286def completion_for_launch_wrappers(*names: str) -> None:CODE
LOWgen/go_code.py292def generate_completions_for_kitty() -> None:CODE
LOWgen/go_code.py412def go_code_for_remote_command(name: str, cmd: RemoteCommand, template: str) -> str:CODE
LOWgen/go_code.py515def generate_extra_cli_parser(name: str, spec: str) -> None:CODE
LOWgen/go_code.py535def kittens_needing_cli_parsers() -> Iterator[str]:CODE
LOWgen/go_code.py847def generate_readline_actions() -> str:STRING
LOWgen/go_code.py929def generate_textual_mimetypes() -> str:STRING
LOWgen/wcwidth.py209def parse_flag_emoji_sequence(spec: str) -> None:CODE
LOWgen/wcwidth.py226def parse_emoji_modifier_sequence(spec: str) -> None:CODE
LOWgen/wcwidth.py275def parse_grapheme_segmentation() -> None:CODE
LOWgen/wcwidth.py690def bitfield_declaration_as_c(name: str, fields: dict[str, int], *alternate_fields: dict[str, int]) -> str:STRING
LOWgen/wcwidth.py835def split_into_graphemes_with_table(STRING
LOWgen/wcwidth.py852def test_grapheme_segmentation(split_into_graphemes: Callable[[str], Iterator[str]]) -> None:STRING
LOWgen/key_constants.py374def generate_functional_table() -> None:STRING
LOWgen/key_constants.py416def generate_legacy_text_key_maps() -> None:STRING
LOW.github/workflows/macos_crash_report.py451 def application_specific_information(self) -> Optional[str]:CODE
LOW.github/workflows/macos_crash_report.py517def get_crash_report_from_file(crash_report_file: IO[str]) -> CrashReportBase:CODE
LOWglad/generate.py30def strip_trailing_whitespace(c: str) -> str:CODE
LOWshell-integration/ssh/bootstrap.py243def exec_zsh_with_integration():CODE
LOWshell-integration/ssh/bootstrap.py258def exec_fish_with_integration():CODE
LOWshell-integration/ssh/bootstrap.py267def exec_bash_with_integration():CODE
LOWshell-integration/ssh/bootstrap.py276def exec_with_shell_integration():CODE
LOWkitty/config.py20def option_names_for_completion() -> tuple[str, ...]:CODE
LOWkitty/config.py67def commented_out_default_config() -> str:CODE
LOWkitty/config.py73def prepare_config_file_for_editing() -> str:CODE
LOWkitty/config.py175 def add_effective_config_line(key: str, line: str) -> None:CODE
LOWkitty/window.py1658 def on_color_scheme_preference_change(self, via_escape_code: bool = False) -> None:CODE
535 more matches not shown…
Over-Commented Block368 hits · 342 pts
SeverityFileLineSnippetContext
LOWdev.sh1#!/bin/shCOMMENT
LOWkittens/tui/dircolors.py1#!/usr/bin/env pythonCOMMENT
LOWkittens/tui/dircolors.py41TERM vt100COMMENT
LOWkittens/diff/diff.go21// Diff returns an anchored diff of the two texts old and newCOMMENT
LOWkittens/diff/diff.go181// tgs returns the pairs of indexes of the longest common subsequenceCOMMENT
LOWkittens/hints/hints_generator.go1// License: GPLv3 Copyright: 2026, Kovid Goyal, <kovid at kovidgoyal.net>COMMENT
LOWkittens/hints/hints_generator.go21 n = 2COMMENT
LOWkittens/hints/hints_generator.go61func rune_to_index_map(alphabet string) *map[rune]int {COMMENT
LOWtools/rsync/api.go1// License: GPLv3 Copyright: 2023, Kovid Goyal, <kovid at kovidgoyal.net>COMMENT
LOWtools/utils/file_at_fd.go461COMMENT
LOWtools/utils/file_at_fd_test.go461// base/COMMENT
LOWtools/utils/humanize/times.go21// Time formats a time into a relative string.COMMENT
LOWtools/simdstring/generate.sh1#!/bin/shCOMMENT
LOWtools/simdstring/benchmark.sh1#!/bin/shCOMMENT
LOWtools/simdstring/test.sh1#!/bin/shCOMMENT
LOWtools/fzf/types.go121COMMENT
LOWdocs/conf.py81COMMENT
LOWgen/rowcolumn-diacritics.txt1# This file lists the diacritics used to indicate row/column numbers forCOMMENT
LOW3rdparty/verstable.h261 KEY_TY, and (optionally) VAL_TY, CTX_TY, and header guards, and including the library, e.g.:COMMENT
LOW3rdparty/verstable.h441#define VT_CAT( a, b ) VT_CAT_( a, b )COMMENT
LOW3rdparty/verstable.h601// In summary, instantiating a template also defines wrappers for the template's types and functions with names in theCOMMENT
LOW3rdparty/verstable.h621COMMENT
LOW3rdparty/verstable.h641#define VT_R3_0( ty, fn )COMMENT
LOW3rdparty/verstable.h741 // indicating whether the key in this bucket begins a chain associated with the bucket (Y), andCOMMENT
LOW3rdparty/verstable.h841COMMENT
LOW3rdparty/verstable.h861#elseCOMMENT
LOW3rdparty/verstable.h881_Pragma( "warning( pop )" )COMMENT
LOW3rdparty/verstable.h921 #endifCOMMENT
LOW3rdparty/verstable.h1461 }COMMENT
LOW3rdparty/verstable.h1861#elif VT_TEMPLATE_COUNT_D1 == 2COMMENT
LOW3rdparty/verstable.h1881#define VT_TEMPLATE_COUNT_D2 1COMMENT
LOW3rdparty/verstable.h1901#undef VT_TEMPLATE_COUNT_D2COMMENT
LOW3rdparty/verstable.h1921#elif VT_TEMPLATE_COUNT_D3 == 6COMMENT
LOW3rdparty/verstable.h1941#undef CTX_TYCOMMENT
LOW3rdparty/base64/include/libbase64.h1#ifndef LIBBASE64_HCOMMENT
LOW3rdparty/base64/include/libbase64.h21#endifCOMMENT
LOW3rdparty/base64/lib/env.h1#ifndef BASE64_ENV_HCOMMENT
LOW3rdparty/base64/lib/env.h21#endifCOMMENT
LOW3rdparty/base64/lib/env.h41# define BASE64_HTOBE32(x) (x)COMMENT
LOW3rdparty/base64/lib/env.h61#define BASE64_AEOF 1COMMENT
LOW3rdparty/base64/lib/lib.c1#include <stdint.h>COMMENT
LOW3rdparty/base64/lib/codec_choose.c1#include <stdbool.h>COMMENT
LOW3rdparty/base64/lib/codec_choose.c41 return ((uint64_t)edx << 32) | eax;COMMENT
LOW3rdparty/base64/lib/codec_choose.c61#ifndef bit_SSE41COMMENT
LOW3rdparty/base64/lib/lib_openmp.c1// This code makes some assumptions on the implementation ofCOMMENT
LOW3rdparty/base64/lib/arch/avx2/codec.c1#include <stdint.h>COMMENT
LOW3rdparty/base64/lib/arch/avx2/codec.c21#endifCOMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_reshuffle.c21 5, 6, 4, 5));COMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_reshuffle.c41 // 0000eeee FF000000 DDDDDD00 00000000COMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_reshuffle.c61 // 00000000 00ffffff 000000dd EEEE0000COMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_loop_asm.c1// Apologies in advance for combining the preprocessor with inline assembly,COMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_loop_asm.c41 LOAD("a", 0, -4) \COMMENT
LOW3rdparty/base64/lib/arch/avx2/enc_loop_asm.c101COMMENT
LOW3rdparty/base64/lib/arch/avx2/dec_reshuffle.c1static inline __m256iCOMMENT
LOW3rdparty/base64/lib/arch/sse41/codec.c1#include <stdint.h>COMMENT
LOW3rdparty/base64/lib/arch/sse41/codec.c21#endifCOMMENT
LOW3rdparty/base64/lib/arch/neon32/codec.c1#include <stdint.h>COMMENT
LOW3rdparty/base64/lib/arch/neon32/codec.c41COMMENT
LOW3rdparty/base64/lib/arch/neon32/enc_reshuffle.c1static inline uint8x16x4_tCOMMENT
LOW3rdparty/base64/lib/arch/sse42/codec.c1#include <stdint.h>COMMENT
308 more matches not shown…
Deep Nesting273 hits · 232 pts
SeverityFileLineSnippetContext
LOWbenchmark.py83CODE
LOWsetup.py374CODE
LOWsetup.py424CODE
LOWsetup.py476CODE
LOWsetup.py854CODE
LOWsetup.py929CODE
LOWsetup.py982CODE
LOWsetup.py1003CODE
LOWsetup.py1052CODE
LOWsetup.py1175CODE
LOWsetup.py1573CODE
LOWsetup.py1596CODE
LOWsetup.py2387CODE
LOWsetup.py2462CODE
LOWpublish.py150CODE
LOWpublish.py300CODE
LOWkittens/tui/handler.py257CODE
LOWkittens/tui/dircolors.py293CODE
LOWkittens/tui/operations.py287CODE
LOWkittens/tui/utils.py18CODE
LOWkittens/tui/images.py490CODE
LOWkittens/tui/loop.py260CODE
LOWkittens/tui/loop.py279CODE
LOWkittens/tui/loop.py296CODE
LOWkittens/ssh/utils.py121CODE
LOWkittens/ssh/utils.py262CODE
LOWkittens/ssh/utils.py322CODE
LOWkittens/choose_fonts/backend.py156CODE
LOWkittens/choose_fonts/backend.py211CODE
LOWkittens/hints/main.py296CODE
LOWkittens/hints/main.py352CODE
LOWkittens/command_palette/main.py161CODE
LOWdocs/conf.py244CODE
LOWdocs/conf.py386CODE
LOWdocs/conf.py803CODE
LOWdocs/conf.py391CODE
LOWdocs/conf.py454CODE
LOWdocs/extract-rst-targets.py23CODE
LOWgen/go_code.py103CODE
LOWgen/go_code.py412CODE
LOWgen/go_code.py546CODE
LOWgen/wcwidth.py102CODE
LOWgen/wcwidth.py235CODE
LOWgen/wcwidth.py766CODE
LOWgen/cursors.py61CODE
LOWgen/key_constants.py416CODE
LOWgen/key_constants.py421CODE
LOWgen/__main__.py9CODE
LOW.github/workflows/ci.py52CODE
LOW.github/workflows/ci.py224CODE
LOW.github/workflows/ci.py325CODE
LOW.github/workflows/macos_crash_report.py59CODE
LOW.github/workflows/macos_crash_report.py354CODE
LOW.github/workflows/macos_crash_report.py395CODE
LOW.github/workflows/macos_crash_report.py451CODE
LOWbypy/macos/__main__.py255CODE
LOWbypy/macos/__main__.py365CODE
LOWbypy/linux/__main__.py79CODE
LOWbypy/linux/__main__.py95CODE
LOWshell-integration/ssh/bootstrap.py115CODE
213 more matches not shown…
Excessive Try-Catch Wrapping215 hits · 214 pts
SeverityFileLineSnippetContext
LOWsetup.py418 except Exception:CODE
LOWsetup.py459 except Exception:CODE
LOWsetup.py872 except Exception as e:CODE
LOWsetup.py1006 except Exception:CODE
LOWpublish.py330 except Exception as e:STRING
LOWpublish.py405 except Exception:STRING
LOWkittens/runner.py233 except Exception:CODE
MEDIUMkittens/runner.py229def main() -> None:CODE
LOWkittens/panel/main.py136 except Exception as e:CODE
LOWkittens/tui/images.py25except Exception:CODE
LOWkittens/tui/images.py268 except Exception:CODE
LOWkittens/tui/images.py498 except Exception:CODE
LOWkittens/tui/images.py534 except Exception as e:CODE
LOWkittens/tui/images.py550 except Exception as e:CODE
LOWkittens/tui/loop.py228 except Exception:CODE
LOWkittens/tui/loop.py253 except Exception:CODE
LOWkittens/tui/loop.py292 except Exception:CODE
LOWkittens/tui/loop.py303 except Exception:CODE
LOWkittens/tui/loop.py316 except Exception:CODE
LOWkittens/tui/loop.py449 except Exception:CODE
LOWkittens/ssh/utils.py188 except Exception:CODE
LOWkittens/ssh/utils.py198 except Exception as e:CODE
MEDIUMkittens/ssh/utils.py17def ssh_options() -> dict[str, str]:CODE
LOWkittens/choose_fonts/backend.py41 except Exception:CODE
LOWkittens/hints/main.py374 except Exception:STRING
LOWdocs/conf.py229 except Exception:STRING
LOW.github/workflows/ci.py81 except Exception as err:CODE
LOWbypy/macos/__main__.py218 except Exception as e:CODE
LOWshell-integration/ssh/bootstrap.py315 except Exception as err:CODE
LOWkitty/config.py42 except Exception as err:CODE
LOWkitty/config.py55 except Exception as err:CODE
LOWkitty/config.py63 except Exception as err:CODE
LOWkitty/config.py91 except Exception as err:CODE
LOWkitty/config.py131 except Exception as err:CODE
LOWkitty/os_window_size.py63 except Exception:CODE
LOWkitty/window.py237 except Exception:CODE
LOWkitty/window.py499 except Exception as e:CODE
LOWkitty/window.py562 except Exception:CODE
LOWkitty/window.py959 except Exception:CODE
LOWkitty/window.py1376 except Exception:CODE
LOWkitty/window.py1433 except Exception:CODE
LOWkitty/window.py1445 except Exception:CODE
LOWkitty/window.py1515 except Exception:CODE
LOWkitty/window.py1691 except Exception:CODE
LOWkitty/window.py1713 except Exception:CODE
LOWkitty/window.py1747 except Exception:CODE
LOWkitty/window.py1886 except Exception:CODE
LOWkitty/window.py2053 except Exception:CODE
LOWkitty/update_check.py45 except Exception:CODE
LOWkitty/update_check.py65 except Exception:CODE
LOWkitty/update_check.py111 except Exception as e:CODE
MEDIUMkitty/update_check.py42def get_released_version() -> str:CODE
MEDIUMkitty/update_check.py106def update_check() -> bool:CODE
LOWkitty/tabs.py893 except Exception:CODE
LOWkitty/tabs.py1393 except Exception:CODE
LOWkitty/tabs.py1401 except Exception:CODE
LOWkitty/tabs.py1490 except Exception:CODE
LOWkitty/tabs.py1714 except Exception:CODE
LOWkitty/render_cache.py36 except Exception:CODE
LOWkitty/render_cache.py79 except Exception:CODE
155 more matches not shown…
Cross-Language Confusion16 hits · 84 pts
SeverityFileLineSnippetContext
HIGHsetup.py1691make && make docsCODE
HIGHsetup.py1709make && make docsCODE
HIGHlogo/make.py122 run('ssh', 'ox', 'zsh', '-ilc', '~/bin/update-kitty && python3 ~/kitty-src/logo/make.py remote-macos')CODE
HIGHkitty/options/types.py800 val = options_dict.get(key, null)CODE
HIGHkitty/conf/generate.py226 a(' val = options_dict.get(key, null)')CODE
HIGHkitty/rc/set_spacing.py68 settings+/dict.spacing: An object mapping margins/paddings using canonical form {'margin-top': 50, 'padding-left': nCODE
HIGHkitty_tests/dnd.py892 """URI file request for a non-regular file (e.g. /dev/null) returns EINVAL."""STRING
HIGHkitty_tests/datatypes.py772 hb.push(lb.line(1))CODE
HIGHkitty_tests/datatypes.py773 hb.push(lb.line(2))CODE
HIGHkitty_tests/datatypes.py780 hb.push(lb.line(2))CODE
HIGHkitty_tests/datatypes.py789 hb.push(line)CODE
HIGHkitty_tests/multicell.py403 # Erase characters (aka replace with null)COMMENT
HIGHkitty_tests/base.py244 ans.push(lb.line(i))CODE
HIGHkitty_tests/shell_integration.py272 pty.send_cmd_to_child('mkdir test && ls -a')STRING
HIGHkitty_tests/shell_integration.py275 self.ae(pty.callbacks.titlebuf[-2:], ['mkdir test && ls -a', '~'])STRING
HIGHkitty_tests/shell_integration.py447 cmd = 'mkdir test && ls -a'STRING
Modern Structural Boilerplate89 hits · 82 pts
SeverityFileLineSnippetContext
LOWsetup.py583def set_arches(flags: List[str], *arches: str) -> None:CODE
LOWsetup.py1360def update_if_changed(path: str, text: str) -> None:CODE
LOWsetup.py1447def update_go_generated_files(args: Options, kitty_exe: str) -> None:CODE
LOWpublish.py341 def update_nightly_description(self, release_id: int) -> None:STRING
LOWkittens/runner.py106def set_debug(kitten: str) -> None:CODE
LOWkittens/tui/loop.py71 def set_state_for_loop(self, set_raw: bool = True) -> None:CODE
LOWkittens/ssh/utils.py134def set_single_env_var_in_cmdline(key: str, val: str, argv: list[str]) -> None:CODE
LOWkittens/ssh/utils.py140def set_cwd_in_cmdline(cwd: str, argv: list[str]) -> None:CODE
LOWkittens/ssh/utils.py218def set_env_in_cmdline(env: dict[str, str], argv: list[str], clone: bool = True) -> None:CODE
LOWgen/go_code.py775def update_at_commands() -> None:STRING
LOWgen/go_code.py807def update_completion() -> None:STRING
LOW.github/workflows/ci.py171def set_slangc() -> None:CODE
LOWbypy/site.py10def set_quit() -> None:CODE
LOWbypy/site.py16def set_helper() -> None:CODE
LOWbypy/macos/__main__.py237 def set_id(self, path_to_lib, new_id) -> None:CODE
LOWkitty/window.py1671 def set_color_table_color(self, code: int, bvalue: memoryview | None = None) -> None:CODE
LOWkitty/window.py701 def set_extra(self, extra: str) -> None:CODE
LOWkitty/window.py860 def update_effective_padding(self) -> None:CODE
LOWkitty/window.py1007 def set_visible_in_layout(self, val: bool) -> None:CODE
LOWkitty/window.py1050 def set_geometry(self, new_geometry: WindowGeometry) -> None:CODE
LOWkitty/window.py1155 def update_title_bar(self, is_active: bool = False) -> None:CODE
LOWkitty/window.py1295 def set_title(self, title: str | None) -> None:CODE
LOWkitty/window.py1320 def set_window_title(self, title: str | None = None) -> None:CODE
LOWkitty/window.py1337 def set_user_var(self, key: str, val: str | bytes | None) -> None:CODE
LOWkitty/window.py1617 def set_dynamic_color(self, code: int, value: str | bytes | memoryview = '') -> None:CODE
LOWkitty/window.py2138 def set_logo(self, path: str, position: str = '', alpha: float = -1, png_data: bytes = b'') -> None:CODE
LOWkitty/window.py2793 def set_marker(self, spec: str | Sequence[str]) -> None:CODE
LOWkitty/update_check.py119def update_check_callback(timer_id: int | None) -> None:CODE
LOWkitty/tabs.py239 def update_progress(self) -> None:CODE
LOWkitty/tabs.py270 def set_enabled_layouts(self, val: Iterable[str]) -> None:CODE
LOWkitty/tabs.py304 def _set_current_layout(self, layout_name: str) -> None:CODE
LOWkitty/tabs.py539 def set_title(self, title: str) -> None:CODE
LOWkitty/tabs.py543 def update_window_title_bars(self) -> None:CODE
LOWkitty/tabs.py986 def set_active_window(self, x: Window | int, for_keep_focus: Window | None = None) -> None:CODE
LOWkitty/tabs.py1433 def _set_active_tab(self, idx: int, store_in_history: bool = True) -> None:CODE
LOWkitty/tabs.py1462 def update_tab_bar_data(self) -> None:CODE
LOWkitty/tabs.py1479 def set_active_tab_idx(self, idx: int) -> None:CODE
LOWkitty/tabs.py2041 def _set_drag_target_tab(self, tab_id: int) -> None:CODE
LOWkitty/tabs.py2073 def _set_drag_target_window(self, window_id: int, quadrant: int = 0) -> None:CODE
LOWkitty/tabs.py2238 def update_progress(self) -> None:CODE
LOWkitty/client.py26def set_title(*args: Any) -> None:CODE
LOWkitty/client.py30def set_icon(*args: Any) -> None:CODE
LOWkitty/client.py256def set_dynamic_color(payload: str) -> None:CODE
LOWkitty/tab_bar.py861 def update_blank_rects(self, central: Region, tab_bar: Region, vw: int, vh: int) -> None:CODE
LOWkitty/session.py109 def set_next_title(self, title: str) -> None:CODE
LOWkitty/session.py112 def set_layout(self, val: str) -> None:CODE
LOWkitty/session.py117 def set_layout_state(self, val: str) -> None:CODE
LOWkitty/session.py180 def set_enabled_layouts(self, raw: str) -> None:CODE
LOWkitty/session.py185 def set_cwd(self, val: str, session_base_dir: str) -> None:CODE
LOWkitty/keys.py104 def update_keymap(self, global_shortcuts: dict[str, SingleKey] | None = None) -> None:CODE
LOWkitty/keys.py308 def set_ignore_os_keyboard_processing(self, on: bool) -> None:CODE
LOWkitty/boss.py1672 def set_font_size(self, new_size: float) -> None: # legacyCODE
LOWkitty/boss.py1746 def _set_os_window_background_opacity(self, os_window_id: int, opacity: float) -> None:CODE
LOWkitty/boss.py1761 def set_background_opacity(self, opacity: str) -> None:CODE
LOWkitty/boss.py2135 def update_tab_bar_data(self, os_window_id: int) -> None:CODE
LOWkitty/boss.py2647 def set_tab_title(self, title: str | None = None) -> None:CODE
LOWkitty/boss.py2919 def set_primary_selection(self) -> None:CODE
LOWkitty/boss.py2941 def set_clipboard_buffer(self, buffer_name: str, text: str | None = None) -> None:CODE
LOWkitty/boss.py3476 def set_update_check_process(self, process: Optional['PopenType[bytes]'] = None) -> None:CODE
LOWkitty/boss.py3545 def set_colors(self, *args: str) -> None:CODE
29 more matches not shown…
Unused Imports75 hits · 68 pts
SeverityFileLineSnippetContext
LOWkittens/tui/handler.py33CODE
LOWkittens/tui/utils.py15CODE
LOWkittens/tui/images.py17CODE
LOWkittens/choose_fonts/backend.py34CODE
LOWdocs/conf.py35CODE
LOWkitty/window.py139CODE
LOWkitty/window.py141CODE
LOWkitty/render_cache.py6CODE
LOWkitty/constants.py14CODE
LOWkitty/session.py22CODE
LOWkitty/session.py27CODE
LOWkitty/file_transmission.py17CODE
LOWkitty/file_transmission.py23CODE
LOWkitty/keys.py30CODE
LOWkitty/boss.py159CODE
LOWkitty/boss.py185CODE
LOWkitty/boss.py186CODE
LOWkitty/types.py10CODE
LOWkitty/remote_control.py39CODE
LOWkitty/marks.py6CODE
LOWkitty/cli.py9CODE
LOWkitty/utils.py13CODE
LOWkitty/utils.py13CODE
LOWkitty/utils.py51CODE
LOWkitty/utils.py51CODE
LOWkitty/utils.py54CODE
LOWkitty/utils.py56CODE
LOWkitty/child.py21CODE
LOWkitty/notifications.py12CODE
LOWkitty/notifications.py13CODE
LOWkitty/open_actions.py11CODE
LOWkitty/options/parse.py5CODE
LOWkitty/conf/types.py11CODE
LOWkitty/rc/set_os_window_title.py11CODE
LOWkitty/rc/get_colors.py13CODE
LOWkitty/rc/new_window.py9CODE
LOWkitty/rc/run.py26CODE
LOWkitty/rc/set_font_size.py9CODE
LOWkitty/rc/detach_window.py9CODE
LOWkitty/rc/send_key.py20CODE
LOWkitty/rc/remove_marker.py10CODE
LOWkitty/rc/get_text.py10CODE
LOWkitty/rc/set_window_logo.py28CODE
LOWkitty/rc/set_tab_color.py12CODE
LOWkitty/rc/kitten.py9CODE
LOWkitty/rc/last_used_layout.py10CODE
LOWkitty/rc/close_tab.py10CODE
LOWkitty/rc/scroll_window.py10CODE
LOWkitty/rc/create_marker.py11CODE
LOWkitty/rc/disable_ligatures.py10CODE
LOWkitty/rc/resize_os_window.py20CODE
LOWkitty/rc/goto_layout.py10CODE
LOWkitty/rc/detach_tab.py9CODE
LOWkitty/rc/resize_window.py9CODE
LOWkitty/rc/focus_tab.py10CODE
LOWkitty/rc/set_background_image.py28CODE
LOWkitty/rc/ls.py13CODE
LOWkitty/rc/set_user_vars.py9CODE
LOWkitty/rc/action.py21CODE
LOWkitty/rc/select_window.py11CODE
15 more matches not shown…
AI Structural Patterns20 hits · 16 pts
SeverityFileLineSnippetContext
LOWsetup.py595CODE
LOWsetup.py138CODE
LOWpublish.py300CODE
LOWkittens/tui/operations.py203CODE
LOWgen/go_code.py669CODE
LOWbypy/macos/__main__.py196CODE
LOWkitty/tabs.py160CODE
LOWkitty/tabs.py719CODE
LOWkitty/tabs.py815CODE
LOWkitty/boss.py484CODE
LOWkitty/boss.py3088CODE
LOWkitty/cli.py687CODE
LOWkitty/child.py331CODE
LOWkitty/conf/types.py724CODE
LOWkitty/rc/send_key.py62CODE
LOWkitty_tests/graphics.py125CODE
LOWkitty_tests/keys.py68CODE
LOWkitty_tests/notifications.py15CODE
LOWkitty_tests/base.py307CODE
LOWkitty_tests/base.py365CODE
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHkitty/rc/scroll_window.py0\ --no-response type=bool-set default=false don't wait for a response indicating the success of the action. note that usSTRING
HIGHkitty/rc/focus_tab.py0\ --no-response type=bool-set default=false don't wait for a response indicating the success of the action. note that usSTRING
HIGHkitty/rc/signal_child.py0\ --no-response type=bool-set default=false don't wait for a response indicating the success of the action. note that usSTRING
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMkitty/shaders/slang.py973 # Create the specializationsCOMMENT
MEDIUMkitty_tests/dnd.py3248 # Create a directory entry (X=2 means directory handle=2)COMMENT
AI Slop Vocabulary2 hits · 4 pts
SeverityFileLineSnippetContext
LOWkitty/utils.py1022 # platform.mac_ver does not work thanks to Apple's stupid "hardening", so just use sw_versCOMMENT
MEDIUMglfw/cocoa_init.m965 // avoid killing helpers from other processes. This is obviously not robustCOMMENT
Decorative Section Separators1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMkittens/command_palette/main.go238// sectionHeader returns a separator line like " ── label ─────────".COMMENT
Structural Annotation Overuse2 hits · 3 pts
SeverityFileLineSnippetContext
LOWkitty/utils.py336 # WARNING: This only works on X11 on other platforms extra_callback will be calledCOMMENT
LOWglfw/glx_context.c340 // NOTE: This function must not call any X11 functions, as it is calledCOMMENT
Redundant / Tautological Comments1 hit · 1 pts
SeverityFileLineSnippetContext
LOWkitty_tests/dnd.py2262 # Read file from directoryCOMMENT