Merge branch 'master' of www.alexselimov.com:aselimov/SelimovDE

This commit is contained in:
Alex Selimov 2025-10-06 20:02:59 -04:00
commit 0bca13c5c5
Signed by: aselimov
GPG key ID: 3DDB9C3E023F1F31
4 changed files with 52 additions and 19 deletions

View file

@ -12,6 +12,7 @@ This document outlines my general preferences for working with Gemini.
- **Handling Ambiguity**: If a request is unclear or could be interpreted in multiple ways, always stop and ask for clarification. - **Handling Ambiguity**: If a request is unclear or could be interpreted in multiple ways, always stop and ask for clarification.
- **Logging**: Unless instructed otherwise, add descriptive logging statements for errors. For logical flows, add messages like "Starting {logic}" and "Successfully completed {logic}". - **Logging**: Unless instructed otherwise, add descriptive logging statements for errors. For logical flows, add messages like "Starting {logic}" and "Successfully completed {logic}".
- **API Design**: While not a primary task, prefer `snake_case` for JSON field names. Above all, always remain consistent with the conventions of the current project. - **API Design**: While not a primary task, prefer `snake_case` for JSON field names. Above all, always remain consistent with the conventions of the current project.
- **PR reviews**: When asked to review PRs, never try to directly add comments/approvals. Instead summarize PRs and focus primarily on areas of improvement where non-pedantic. Only try to directly update the PR with comments or approvals if explicitly told to. You have access to the `gh` command line tool so use that to pull PR diffs.
## Language-Specific Guidelines ## Language-Specific Guidelines

View file

@ -0,0 +1,24 @@
description = "Planner mode for Gemini CLI"
prompt = """
You are currently acting in planning mode. Planning mode has the following restrictions:
- DO NOT ATTEMPT TO EDIT REAL CODE FILES.
- Proposed changes to handle the provided issue should be written to an implementation.md file at the project root
- Before deciding on an implementation strategy, offer 2-3 alternative approaches to the user for selection.
## Acceptance Criteria
You may be asked to provide Acceptance Criteria also referred to as ACs.
Acceptance criteria should be provided in a markdown table with columns No (for number), Given, When, and Then.
An example Acceptance Criteria table is shown below:
||No||Given||When||Then||
|1|drs-cmd|When checking the file {{src/main/java/com/ultimatesoftware/naas/drscmd/config/RetryConfig.java}}|Then you see that the {{retryPolicy}} bean is updated to use a single {{SimpleRetryPolicy}} with the {{traverseCauses}} flag set to {{{}true{}}}.|
|2|drs-cmd|When checking the small/RetryTests|You see a new test that checks whether the code works properly for a wrapped ConnectionTimeout and SocketTimeout exceptions|
|3|drs-cmd|When running the test suite|Then all tests pass successfully.|
|4|drs-cmd|When a {{software.amazon.awssdk.core.exception.SdkClientException}} is thrown with a cause of {{java.net.SocketTimeoutException}}|Then the operation is retried according to the configured retry policy.|
In general, Acceptance Criteria should include a few lines validating that new classes/methods exist,
that new tests have been written to test new functionality, and that the full test-suite passes.
Plan the implementation to address the following story {{args}}.
Use the JIRA mcp tool to pull this story.
"""

View file

@ -0,0 +1,17 @@
description = "Review a GitHub pull request."
prompt = """
You are an expert code reviewer. Your task is to provide a thorough review of the given GitHub pull request.
When reviewing, please consider the following:
- **Code Quality:** Readability, maintainability, and adherence to best practices.
- **Functionality:** Does the code do what it says it does? Are there any obvious bugs or edge cases missed?
- **Project Conventions:** Adherence to the project's existing coding style, patterns, and conventions.
- **Security:** Are there any potential security vulnerabilities.
- **Performance:** Could any of the changes introduce performance issues?
- **Testing:** Are the tests adequate? Do they cover the changes effectively?
Please provide your feedback in a clear and constructive manner. Structure your review with comments on specific files and line numbers where applicable.
To actually access the PR diff, use the `gh` command line tool which is installed on this system and accessible to you.
Please review the following GitHub pull request: {{args}}
"""

View file

@ -8,7 +8,7 @@ SAVEHIST=100000
setopt extendedglob notify setopt extendedglob notify
unsetopt autocd beep unsetopt autocd beep
setopt INC_APPEND_HISTORY # Write to history file immediately, not when shell exits setopt INC_APPEND_HISTORY # Write to history file immediately, not when shell exits
setopt SHARE_HISTORY # Share history between all sessions setopt APPEND_HISTORY # Append instead of overwriting the file
setopt HIST_IGNORE_DUPS # Don't save duplicate commands setopt HIST_IGNORE_DUPS # Don't save duplicate commands
setopt HIST_IGNORE_SPACE # Don't save commands starting with space setopt HIST_IGNORE_SPACE # Don't save commands starting with space
@ -26,22 +26,8 @@ export XKB_DEFAULT_OPTIONS="caps:escape"
export PASSWORD_STORE_CHARACTER_SET='a-zA-Z0-9+\-$!*_=' export PASSWORD_STORE_CHARACTER_SET='a-zA-Z0-9+\-$!*_='
export XDEB_PKGROOT=${HOME}/.config/xdeb export XDEB_PKGROOT=${HOME}/.config/xdeb
#============================================================================== # Custom path additions
# OS-Specific Configuration source ~/.profile
#==============================================================================
if [ "$(uname)" = "Darwin" ]; then
export PATH="$PATH:/opt/homebrew/bin"
alias ls="gls --classify --group-directories-first --color"
alias gemini="(source ~/.gemini_project && gemini)"
export NVIM_JDTLS_JAVA_HOME="/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home/"
# I only start tmux by default on Mac because of dwm+swallow patch
if [[ -z "$TMUX" ]] && [[ -n "$PS1" ]]; then
tmux attach -t dev || tmux new -s dev
fi
else
alias ls="ls --classify --group-directories-first --color"
fi
#============================================================================== #==============================================================================
# Aliases # Aliases
@ -49,6 +35,8 @@ fi
alias clip2png="xclip -selection clipboard -target image/png -out" alias clip2png="xclip -selection clipboard -target image/png -out"
#============================================================================== #==============================================================================
# Functions # Functions
#============================================================================== #==============================================================================
@ -156,9 +144,12 @@ bindkey '^[[B' history-substring-search-down
#============================================================================== #==============================================================================
if [ "$(uname)" = "Darwin" ]; then if [ "$(uname)" = "Darwin" ]; then
export PATH="$PATH:/opt/homebrew/bin" export PATH="/opt/homebrew/bin:$PATH"
alias ls="gls --classify --group-directories-first --color" alias ls="gls --classify --group-directories-first --color"
alias gemini="(source ~/.gemini_project && gemini)" GEMINI_BIN=$(which gemini)
function gemini(){
source ~/.gemini_project && $GEMINI_BIN "$@"
}
export NVIM_JDTLS_JAVA_HOME="/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home/" export NVIM_JDTLS_JAVA_HOME="/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home/"
# I only start tmux by default on Mac because of dwm+swallow patch # I only start tmux by default on Mac because of dwm+swallow patch
else else