Migrates the current redis package from NAT repo to this repo#2
Conversation
There was a problem hiding this comment.
Pull request overview
Migrates the “direct Redis” NAT components (memory + object store) into this repository alongside the existing Redis Agent Memory integration, wiring them into NAT via a new nat_redis entry point and documenting the additional configuration surfaces.
Changes:
- Adds
nat.plugins.redispackage implementing_type: redis_memory(RediSearch + RedisJSON vector memory) and_type: redis(plain Redis-backed object store). - Registers the new components via the
nat.componentsentry pointnat_redisand updates packaging metadata/dependencies. - Adds unit/integration tests plus documentation updates describing when to use each Redis integration mode.
Reviewed changes
Copilot reviewed 13 out of 14 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/test_redis_editor.py | Unit tests for the new direct-Redis RedisEditor memory implementation. |
| tests/integration/test_redis_object_store.py | Integration test validating RedisObjectStore roundtrip behavior. |
| src/nvidia_nat_redis/init.py | Updates package docstring to reflect multiple Redis integration surfaces. |
| src/nat/plugins/redis/init.py | Introduces the direct-Redis plugin package namespace. |
| src/nat/plugins/redis/register.py | Entry-point import hook to register the direct-Redis components. |
| src/nat/plugins/redis/schema.py | RediSearch/RedisJSON schema + index creation helper for vector memory. |
| src/nat/plugins/redis/redis_editor.py | Implements the MemoryEditor backed by RedisJSON + vector search. |
| src/nat/plugins/redis/memory.py | Registers _type: redis_memory and constructs Redis client + index. |
| src/nat/plugins/redis/redis_object_store.py | Implements the Redis-backed ObjectStore. |
| src/nat/plugins/redis/object_store.py | Registers _type: redis and yields a RedisObjectStore. |
| README.md | Documents both Redis Agent Memory and the newly added direct-Redis plugins. |
| docs/configuration.md | Adds configuration docs for _type: redis_memory and _type: redis. |
| pyproject.toml | Adds dependencies, entry point (nat_redis), and package inclusion for nat.plugins.*. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| from .redis_object_store import RedisObjectStore | ||
|
|
||
| async with RedisObjectStore(**config.model_dump(exclude={"type"})) as store: |
|
Delaying Copilot's change suggestions and maintaining parity with the current NAT Redis package for now. |
tylerhutcherson
left a comment
There was a problem hiding this comment.
@justin-cechmanek looks great. One main comment on the README and 1-2 naming things. The comment on optimizing scans can wait for now -- to your point.
No description provided.