rlmgrep 0.1.5__tar.gz → 0.1.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/PKG-INFO +7 -19
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/README.md +6 -18
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/pyproject.toml +1 -1
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/__init__.py +1 -1
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/cli.py +13 -1
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/PKG-INFO +7 -19
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/__main__.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/config.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/file_map.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/ingest.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/interpreter.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/render.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep/rlm.py +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/SOURCES.txt +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/dependency_links.txt +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/entry_points.txt +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/requires.txt +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/rlmgrep.egg-info/top_level.txt +0 -0
- {rlmgrep-0.1.5 → rlmgrep-0.1.6}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rlmgrep
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.6
|
|
4
4
|
Summary: Grep-shaped CLI search powered by DSPy RLM
|
|
5
5
|
Author: rlmgrep
|
|
6
6
|
License: MIT
|
|
@@ -61,7 +61,6 @@ rlmgrep [options] "query" [paths...]
|
|
|
61
61
|
|
|
62
62
|
Common options:
|
|
63
63
|
|
|
64
|
-
- `-n` show line numbers (default)
|
|
65
64
|
- `-C N` context lines before/after (grep-style)
|
|
66
65
|
- `-A N` context lines after
|
|
67
66
|
- `-B N` context lines before
|
|
@@ -81,19 +80,19 @@ Examples:
|
|
|
81
80
|
|
|
82
81
|
```sh
|
|
83
82
|
# Natural-language query over a repo
|
|
84
|
-
rlmgrep -n -C 2 "
|
|
83
|
+
rlmgrep -n -C 2 "Where is retry/backoff configured and what are the defaults?" .
|
|
85
84
|
|
|
86
85
|
# Restrict to Python files
|
|
87
|
-
rlmgrep "
|
|
86
|
+
rlmgrep "Where do we parse JWTs and enforce expiration?" --type py .
|
|
88
87
|
|
|
89
88
|
# Glob filters (repeatable or comma-separated)
|
|
90
|
-
rlmgrep "error
|
|
89
|
+
rlmgrep "How do we map external API errors into internal error codes?" -g "**/*.py" -g "**/*.ts" .
|
|
91
90
|
|
|
92
|
-
#
|
|
93
|
-
cat README.md | rlmgrep "
|
|
91
|
+
# Single-file semantic question (when you already have the file)
|
|
92
|
+
cat README.md | rlmgrep --answer "What is this tool for and how is it used?"
|
|
94
93
|
|
|
95
94
|
# Use rg/grep to find candidate files, then rlmgrep over that list
|
|
96
|
-
rg -l "token" . | rlmgrep --stdin
|
|
95
|
+
rg -l "token" . | rlmgrep --files-from-stdin --answer "What does this token control and where is it validated?"
|
|
97
96
|
```
|
|
98
97
|
|
|
99
98
|
## Input selection
|
|
@@ -118,7 +117,6 @@ rg -l "token" . | rlmgrep --stdin-files --answer "what does this token control?"
|
|
|
118
117
|
- `1` = no matches
|
|
119
118
|
- `2` = usage/config/error
|
|
120
119
|
|
|
121
|
-
Agent tip: use `-n` and no context for parse-friendly output, then key off exit codes.
|
|
122
120
|
|
|
123
121
|
## Regex-style queries (best effort)
|
|
124
122
|
|
|
@@ -182,18 +180,8 @@ If more than one provider key is set and the model does not make the provider ob
|
|
|
182
180
|
- Converted image/audio text is cached in sidecar files named `<original>.<ext>.md` next to the original file and reused on subsequent runs.
|
|
183
181
|
- Use `-a/--text` to force binary files to be read as text (UTF-8 with replacement).
|
|
184
182
|
|
|
185
|
-
## Agent usage notes
|
|
186
|
-
|
|
187
|
-
- Prefer narrow corpora (globs/types) to reduce token usage.
|
|
188
|
-
- Use `--max-llm-calls` to cap costs; combine with small `--max-iterations` for safety.
|
|
189
|
-
- For reproducible parsing, use `-n` and avoid context (`-C/-A/-B`).
|
|
190
|
-
|
|
191
183
|
## Development
|
|
192
184
|
|
|
193
185
|
- Install locally: `pip install -e .` or `uv tool install .`
|
|
194
186
|
- Run: `rlmgrep "query" .`
|
|
195
187
|
- No test suite is configured yet.
|
|
196
|
-
|
|
197
|
-
## Security
|
|
198
|
-
|
|
199
|
-
Do not commit API keys. Use environment variables or `~/.rlmgrep/config.toml`.
|
|
@@ -49,7 +49,6 @@ rlmgrep [options] "query" [paths...]
|
|
|
49
49
|
|
|
50
50
|
Common options:
|
|
51
51
|
|
|
52
|
-
- `-n` show line numbers (default)
|
|
53
52
|
- `-C N` context lines before/after (grep-style)
|
|
54
53
|
- `-A N` context lines after
|
|
55
54
|
- `-B N` context lines before
|
|
@@ -69,19 +68,19 @@ Examples:
|
|
|
69
68
|
|
|
70
69
|
```sh
|
|
71
70
|
# Natural-language query over a repo
|
|
72
|
-
rlmgrep -n -C 2 "
|
|
71
|
+
rlmgrep -n -C 2 "Where is retry/backoff configured and what are the defaults?" .
|
|
73
72
|
|
|
74
73
|
# Restrict to Python files
|
|
75
|
-
rlmgrep "
|
|
74
|
+
rlmgrep "Where do we parse JWTs and enforce expiration?" --type py .
|
|
76
75
|
|
|
77
76
|
# Glob filters (repeatable or comma-separated)
|
|
78
|
-
rlmgrep "error
|
|
77
|
+
rlmgrep "How do we map external API errors into internal error codes?" -g "**/*.py" -g "**/*.ts" .
|
|
79
78
|
|
|
80
|
-
#
|
|
81
|
-
cat README.md | rlmgrep "
|
|
79
|
+
# Single-file semantic question (when you already have the file)
|
|
80
|
+
cat README.md | rlmgrep --answer "What is this tool for and how is it used?"
|
|
82
81
|
|
|
83
82
|
# Use rg/grep to find candidate files, then rlmgrep over that list
|
|
84
|
-
rg -l "token" . | rlmgrep --stdin
|
|
83
|
+
rg -l "token" . | rlmgrep --files-from-stdin --answer "What does this token control and where is it validated?"
|
|
85
84
|
```
|
|
86
85
|
|
|
87
86
|
## Input selection
|
|
@@ -106,7 +105,6 @@ rg -l "token" . | rlmgrep --stdin-files --answer "what does this token control?"
|
|
|
106
105
|
- `1` = no matches
|
|
107
106
|
- `2` = usage/config/error
|
|
108
107
|
|
|
109
|
-
Agent tip: use `-n` and no context for parse-friendly output, then key off exit codes.
|
|
110
108
|
|
|
111
109
|
## Regex-style queries (best effort)
|
|
112
110
|
|
|
@@ -170,18 +168,8 @@ If more than one provider key is set and the model does not make the provider ob
|
|
|
170
168
|
- Converted image/audio text is cached in sidecar files named `<original>.<ext>.md` next to the original file and reused on subsequent runs.
|
|
171
169
|
- Use `-a/--text` to force binary files to be read as text (UTF-8 with replacement).
|
|
172
170
|
|
|
173
|
-
## Agent usage notes
|
|
174
|
-
|
|
175
|
-
- Prefer narrow corpora (globs/types) to reduce token usage.
|
|
176
|
-
- Use `--max-llm-calls` to cap costs; combine with small `--max-iterations` for safety.
|
|
177
|
-
- For reproducible parsing, use `-n` and avoid context (`-C/-A/-B`).
|
|
178
|
-
|
|
179
171
|
## Development
|
|
180
172
|
|
|
181
173
|
- Install locally: `pip install -e .` or `uv tool install .`
|
|
182
174
|
- Run: `rlmgrep "query" .`
|
|
183
175
|
- No test suite is configured yet.
|
|
184
|
-
|
|
185
|
-
## Security
|
|
186
|
-
|
|
187
|
-
Do not commit API keys. Use environment variables or `~/.rlmgrep/config.toml`.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
__all__ = ["__version__"]
|
|
2
|
-
__version__ = "0.1.
|
|
2
|
+
__version__ = "0.1.6"
|
|
@@ -84,10 +84,22 @@ def _parse_args(argv: list[str]) -> argparse.Namespace:
|
|
|
84
84
|
parser.add_argument("-a", "--text", dest="binary_as_text", action="store_true", help="Search binary files as text")
|
|
85
85
|
parser.add_argument("--answer", action="store_true", help="Print a narrative answer before grep output")
|
|
86
86
|
parser.add_argument("-y", "--yes", action="store_true", help="Skip file count confirmation")
|
|
87
|
+
parser.add_argument(
|
|
88
|
+
"--files-from-stdin",
|
|
89
|
+
action="store_true",
|
|
90
|
+
help="Treat stdin as newline-delimited file paths (e.g., rg -l)",
|
|
91
|
+
)
|
|
92
|
+
parser.add_argument(
|
|
93
|
+
"--files-from-rg",
|
|
94
|
+
dest="stdin_files",
|
|
95
|
+
action="store_true",
|
|
96
|
+
help="Alias for --files-from-stdin",
|
|
97
|
+
)
|
|
87
98
|
parser.add_argument(
|
|
88
99
|
"--stdin-files",
|
|
100
|
+
dest="stdin_files",
|
|
89
101
|
action="store_true",
|
|
90
|
-
help="
|
|
102
|
+
help="Deprecated: use --files-from-stdin",
|
|
91
103
|
)
|
|
92
104
|
|
|
93
105
|
parser.add_argument("-g", "--glob", dest="globs", action="append", default=[], help="Include files matching glob (may repeat)")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rlmgrep
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.6
|
|
4
4
|
Summary: Grep-shaped CLI search powered by DSPy RLM
|
|
5
5
|
Author: rlmgrep
|
|
6
6
|
License: MIT
|
|
@@ -61,7 +61,6 @@ rlmgrep [options] "query" [paths...]
|
|
|
61
61
|
|
|
62
62
|
Common options:
|
|
63
63
|
|
|
64
|
-
- `-n` show line numbers (default)
|
|
65
64
|
- `-C N` context lines before/after (grep-style)
|
|
66
65
|
- `-A N` context lines after
|
|
67
66
|
- `-B N` context lines before
|
|
@@ -81,19 +80,19 @@ Examples:
|
|
|
81
80
|
|
|
82
81
|
```sh
|
|
83
82
|
# Natural-language query over a repo
|
|
84
|
-
rlmgrep -n -C 2 "
|
|
83
|
+
rlmgrep -n -C 2 "Where is retry/backoff configured and what are the defaults?" .
|
|
85
84
|
|
|
86
85
|
# Restrict to Python files
|
|
87
|
-
rlmgrep "
|
|
86
|
+
rlmgrep "Where do we parse JWTs and enforce expiration?" --type py .
|
|
88
87
|
|
|
89
88
|
# Glob filters (repeatable or comma-separated)
|
|
90
|
-
rlmgrep "error
|
|
89
|
+
rlmgrep "How do we map external API errors into internal error codes?" -g "**/*.py" -g "**/*.ts" .
|
|
91
90
|
|
|
92
|
-
#
|
|
93
|
-
cat README.md | rlmgrep "
|
|
91
|
+
# Single-file semantic question (when you already have the file)
|
|
92
|
+
cat README.md | rlmgrep --answer "What is this tool for and how is it used?"
|
|
94
93
|
|
|
95
94
|
# Use rg/grep to find candidate files, then rlmgrep over that list
|
|
96
|
-
rg -l "token" . | rlmgrep --stdin
|
|
95
|
+
rg -l "token" . | rlmgrep --files-from-stdin --answer "What does this token control and where is it validated?"
|
|
97
96
|
```
|
|
98
97
|
|
|
99
98
|
## Input selection
|
|
@@ -118,7 +117,6 @@ rg -l "token" . | rlmgrep --stdin-files --answer "what does this token control?"
|
|
|
118
117
|
- `1` = no matches
|
|
119
118
|
- `2` = usage/config/error
|
|
120
119
|
|
|
121
|
-
Agent tip: use `-n` and no context for parse-friendly output, then key off exit codes.
|
|
122
120
|
|
|
123
121
|
## Regex-style queries (best effort)
|
|
124
122
|
|
|
@@ -182,18 +180,8 @@ If more than one provider key is set and the model does not make the provider ob
|
|
|
182
180
|
- Converted image/audio text is cached in sidecar files named `<original>.<ext>.md` next to the original file and reused on subsequent runs.
|
|
183
181
|
- Use `-a/--text` to force binary files to be read as text (UTF-8 with replacement).
|
|
184
182
|
|
|
185
|
-
## Agent usage notes
|
|
186
|
-
|
|
187
|
-
- Prefer narrow corpora (globs/types) to reduce token usage.
|
|
188
|
-
- Use `--max-llm-calls` to cap costs; combine with small `--max-iterations` for safety.
|
|
189
|
-
- For reproducible parsing, use `-n` and avoid context (`-C/-A/-B`).
|
|
190
|
-
|
|
191
183
|
## Development
|
|
192
184
|
|
|
193
185
|
- Install locally: `pip install -e .` or `uv tool install .`
|
|
194
186
|
- Run: `rlmgrep "query" .`
|
|
195
187
|
- No test suite is configured yet.
|
|
196
|
-
|
|
197
|
-
## Security
|
|
198
|
-
|
|
199
|
-
Do not commit API keys. Use environment variables or `~/.rlmgrep/config.toml`.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|