Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Added custom Claude command + XNACK command support#4030

Merged
petyaslavova merged 14 commits into
masterfrom
vv-xnack-support
Apr 20, 2026
Merged

Added custom Claude command + XNACK command support#4030
petyaslavova merged 14 commits into
masterfrom
vv-xnack-support

Conversation

@vladvildanov

@vladvildanov vladvildanov commented Apr 9, 2026

Copy link
Copy Markdown
Collaborator

Description of change

This PR contains:

  1. New custom Claude command that enrich agent with necessary context and provides a clear guideline on how to add a support for given Redis command. Also it contains a command specification template to be used to provide custom command specification.
  2. Support for XNACK command fully added using new Claude command.
  3. Update to CONTRIBUTING.md about AI agent contributions.

Execute new command via CLI interface:

Augment CLI

auggie command add-new-command $path_to_specification

Claude CLI

claude /add-new-command $path_to_specification

Pull Request check-list

Please make sure to review and check all of these items:

  • Do tests and lints pass with this change?
  • Do the CI tests pass with this change (enable it first in your forked repo and wait for the github action build to finish)?
  • Is the new or changed code fully tested?
  • Is a documentation update included (if this change modifies existing APIs, or introduces new ones)?
  • Is there an example added to the examples folder (if applicable)?

NOTE: these things are not required to open a PR and can be done
afterwards / while the PR is open.


Note

Medium Risk
Introduces a new public client API method that constructs a low-level Redis command; incorrect argument encoding/order could cause runtime errors, though coverage is mitigated by added integration tests.

Overview
Adds first-class client support for Redis Streams XNACK, including sync/async overloads, argument validation (mode, required IDs, non-negative retrycount), and support for RETRYCOUNT/FORCE options.

Expands integration test coverage (sync + asyncio, Redis >= 8.7.2) for XNACK modes and edge cases, and adds contributor tooling/docs: a Claude “add-new-command” skill plus a command specification template and a Redis command implementation guide; CONTRIBUTING.md and the spelling wordlist are updated accordingly.

Reviewed by Cursor Bugbot for commit 3ffd26b. Bugbot is set up for automated code reviews on this repo. Configure here.

@vladvildanov vladvildanov marked this pull request as draft April 9, 2026 12:06
@vladvildanov vladvildanov requested a review from Copilot April 9, 2026 12:09
@jit-ci

jit-ci Bot commented Apr 9, 2026

Copy link
Copy Markdown

🛡️ Jit Security Scan Results

CRITICAL HIGH MEDIUM

✅ No security findings were detected in this PR


Security scan by Jit

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit fee6e93. Configure here.

Comment thread redis/commands/core.py

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds contributor tooling/docs for AI-assisted command additions and implements Redis Streams XNACK support in the core client API, along with new sync/async integration tests gated on Redis >= 8.8.0.

Changes:

  • Add xnack() to redis/commands/core.py (sync + asyncio typing overloads) with argument validation and command assembly.
  • Add integration tests for XNACK behavior and error handling (sync + asyncio).
  • Add contributor documentation and Claude skill/template files for adding new Redis command support.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
redis/commands/core.py Adds xnack() command implementation and typing overloads.
tests/test_commands.py Adds sync integration tests for XNACK (Redis >= 8.8.0).
tests/test_asyncio/test_commands.py Adds asyncio integration tests for XNACK (Redis >= 8.8.0).
specs/redis_commands_guide.md New guide describing command API/spec workflow and repo structure.
CONTRIBUTING.md Documents AI-driven contribution workflow and available CLI commands.
.claude/commands/add-new-command.md New Claude “skill” instructions to add command support from a spec.
.claude/command-specification-template.md New template for authoring command specifications.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread redis/commands/core.py
Comment thread CONTRIBUTING.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread .claude/commands/add-new-command.md Outdated
Comment thread .claude/command-specification-template.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread specs/redis_commands_guide.md Outdated
Comment thread tests/test_asyncio/test_commands.py Outdated
@vladvildanov vladvildanov marked this pull request as ready for review April 20, 2026 07:33

@petyaslavova petyaslavova left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

LGTM.

@petyaslavova petyaslavova merged commit bd2589c into master Apr 20, 2026
279 of 280 checks passed
@petyaslavova petyaslavova deleted the vv-xnack-support branch April 20, 2026 16:18
@petyaslavova petyaslavova added the feature New feature label Apr 24, 2026
petyaslavova added a commit that referenced this pull request May 26, 2026
* Added custom Claude command + XNACK command support

* Updated command description

* Update CONTRIBUTING.md

Co-authored-by: Copilot <[email protected]>

* Update specs/redis_commands_guide.md

Co-authored-by: Copilot <[email protected]>

* Update specs/redis_commands_guide.md

Co-authored-by: Copilot <[email protected]>

* Update specs/redis_commands_guide.md

Co-authored-by: Copilot <[email protected]>

* Update .claude/commands/add-new-command.md

Co-authored-by: Copilot <[email protected]>

* Update .claude/command-specification-template.md

Co-authored-by: Copilot <[email protected]>

* Fixed grammar and version constraints

* Updated spellcheck

* Updated 8.8 test image

---------

Co-authored-by: Copilot <[email protected]>
Co-authored-by: petyaslavova <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants