Skip to content

Conversation

@NoamEfergan
Copy link
Contributor

@NoamEfergan NoamEfergan commented Dec 9, 2025

Raycast Extension: Lazygit Keybindings Search

Add a Raycast extension to search Lazygit keybindings by action or shortcut.

Highlights

  • Fetches official docs (all locales) at runtime with optional caching/TTL
  • Locale dropdown preference (default en)
  • Search by action or shortcut; detail view shows context/category/info
  • Actions: copy shortcut, open upstream doc, force refres

@raycastbot raycastbot added the new extension Label for PRs with new extensions label Dec 9, 2025
@raycastbot
Copy link
Collaborator

Congratulations on your new Raycast extension! 🚀

You can expect an initial review within five business days.

Once the PR is approved and merged, the extension will be available on our Store.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Dec 9, 2025

Greptile Overview

Greptile Summary

This PR adds a new Raycast extension for searching Lazygit keybindings by action or shortcut, with multi-language support and caching.

Key Changes:

  • New extension with runtime fetching of official Lazygit documentation
  • Multi-locale support (9 languages) with dropdown preference
  • Configurable caching system (memory + disk) with TTL support
  • Clean React implementation with proper loading states and error handling
  • Search functionality by action, shortcut, category, or info

Required Changes:

  • Missing CHANGELOG.md file - new extensions must include a changelog with initial version entry formatted as ## [0.0.1] - {PR_MERGE_DATE}
  • Missing metadata folder with screenshots - required for new extensions with view commands (see Raycast Documentation)
  • eslint.config.mjs uses non-standard format - should follow the recommended template

Observations:

  • Code quality is excellent with proper TypeScript typing and error handling
  • Good use of Raycast APIs (Cache, showToast, etc.)
  • Well-structured with clean separation of concerns

Confidence Score: 3/5

  • This PR is well-implemented but missing required documentation files (CHANGELOG.md and metadata folder)
  • Score reflects high code quality and proper implementation, but deducted points for missing required files: CHANGELOG.md is mandatory for all extensions, and metadata folder with screenshots is required for new extensions with view commands per repository guidelines
  • Pay attention to package.json and eslint.config.mjs - need to add CHANGELOG.md and metadata folder, and update eslint config format

Important Files Changed

File Analysis

Filename Score Overview
extensions/lazygit-keybindings/package.json 4/5 Adds new extension manifest with proper structure; missing CHANGELOG.md and metadata folder with screenshots
extensions/lazygit-keybindings/src/index.tsx 5/5 Well-structured React component with proper error handling, loading states, and clean implementation
extensions/lazygit-keybindings/src/keybindings.ts 5/5 Robust caching implementation with memory and disk cache, proper TTL handling
extensions/lazygit-keybindings/eslint.config.mjs 3/5 Uses non-standard eslint config format; should use recommended template

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional Comments (1)

  1. extensions/lazygit-keybindings/eslint.config.mjs, line 1-3 (link)

    style: eslint config should use the recommended template format:

12 files reviewed, 1 comment

Edit Code Review Agent Settings | Greptile

@NoamEfergan NoamEfergan force-pushed the add-lazygit-keybindings branch from 9b2a71c to fc1f453 Compare December 9, 2025 19:21
@pernielsentikaer pernielsentikaer self-assigned this Dec 17, 2025
Copy link
Collaborator

@pernielsentikaer pernielsentikaer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, approved 🔥

@raycastbot raycastbot merged commit 848a68d into raycast:main Dec 17, 2025
3 checks passed
@github-actions
Copy link
Contributor

Published to the Raycast Store:
https://raycast.com/noamefergan/lazygit-keybindings

@raycastbot
Copy link
Collaborator

🎉 🎉 🎉

Such a great contribution deserves a reward, but unfortunately we couldn't find your Raycast account based on your GitHub username (@NoamEfergan).

Please link your GitHub account to your Raycast account to receive your credits and soon be able to exchange them for some swag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new extension Label for PRs with new extensions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants