rex-machine 0.2.0__tar.gz → 0.2.2__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.
- {rex_machine-0.2.0 → rex_machine-0.2.2}/PKG-INFO +5 -3
- {rex_machine-0.2.0 → rex_machine-0.2.2}/README.md +4 -2
- {rex_machine-0.2.0 → rex_machine-0.2.2}/pyproject.toml +1 -1
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/__init__.py +1 -1
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/code_pattern_analyzer.j2 +13 -4
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/config_analyzer.j2 +13 -4
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/doc_analyzer.j2 +11 -4
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/structure_analyzer.j2 +10 -4
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/synthesis.j2 +1 -1
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.claude/settings.local.json +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.github/workflows/ci.yml +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.github/workflows/release.yml +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/.gitignore +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/CHANGELOG.md +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/CLAUDE.md +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/CONTRIBUTING.md +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/LICENSE +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/__main__.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/agents.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/cli.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/config.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/models.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/py.typed +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/renderer.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/scanner.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/main.j2 +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/report.md.j2 +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/tests/__init__.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/tests/test_models.py +0 -0
- {rex_machine-0.2.0 → rex_machine-0.2.2}/tests/test_scanner.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rex-machine
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Extract lessons learned (REX) from code repositories
|
|
5
5
|
Project-URL: Homepage, https://github.com/NicoJuiced/rex-machine
|
|
6
6
|
Project-URL: Repository, https://github.com/NicoJuiced/rex-machine
|
|
@@ -36,8 +36,6 @@ Description-Content-Type: text/markdown
|
|
|
36
36
|
|
|
37
37
|
**Your codebase has lessons no one wrote down. This finds them.**
|
|
38
38
|
|
|
39
|
-
[](https://star-history.com/#NicoJuiced/rex-machine&Date)
|
|
40
|
-
|
|
41
39
|
rex-machine scans any code repository and extracts structured technical lessons learned — what problems the team faced, what they tried, what worked. Claude navigates your repo autonomously (reading files, grepping, following imports) and produces a grounded report, not a vague summary.
|
|
42
40
|
|
|
43
41
|
Works on any language, any framework, any repo size.
|
|
@@ -134,3 +132,7 @@ rex status # show current config
|
|
|
134
132
|
## License
|
|
135
133
|
|
|
136
134
|
[Apache 2.0](LICENSE)
|
|
135
|
+
|
|
136
|
+
## Star History
|
|
137
|
+
|
|
138
|
+
[](https://star-history.com/#NicoJuiced/rex-machine&Date)
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
**Your codebase has lessons no one wrote down. This finds them.**
|
|
4
4
|
|
|
5
|
-
[](https://star-history.com/#NicoJuiced/rex-machine&Date)
|
|
6
|
-
|
|
7
5
|
rex-machine scans any code repository and extracts structured technical lessons learned — what problems the team faced, what they tried, what worked. Claude navigates your repo autonomously (reading files, grepping, following imports) and produces a grounded report, not a vague summary.
|
|
8
6
|
|
|
9
7
|
Works on any language, any framework, any repo size.
|
|
@@ -100,3 +98,7 @@ rex status # show current config
|
|
|
100
98
|
## License
|
|
101
99
|
|
|
102
100
|
[Apache 2.0](LICENSE)
|
|
101
|
+
|
|
102
|
+
## Star History
|
|
103
|
+
|
|
104
|
+
[](https://star-history.com/#NicoJuiced/rex-machine&Date)
|
{rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/code_pattern_analyzer.j2
RENAMED
|
@@ -13,12 +13,21 @@ Look for REX signals in:
|
|
|
13
13
|
- Defensive programming: path validation, input sanitization, safety caps, timeout handling
|
|
14
14
|
- Abstraction levels: is the code over-engineered or under-abstracted? Where was complexity invested?
|
|
15
15
|
|
|
16
|
-
For each finding, cite specific files and line numbers. Distinguish between "this IS the pattern used" vs "this COULD be improved" — both can be REX.
|
|
17
|
-
|
|
18
16
|
FORMAT YOUR OUTPUT AS A LIST OF FINDINGS. For each finding, use this structure:
|
|
19
17
|
|
|
20
18
|
### Finding: [short title]
|
|
21
19
|
- **Problem/Context**: What challenge or decision was at stake
|
|
22
20
|
- **What was done**: The approach taken (and alternatives if visible, including things that didn't work)
|
|
23
|
-
- **
|
|
24
|
-
|
|
21
|
+
- **Code**: Copy the actual code lines that show the pattern. Include imports, function signatures, key parameters, the specific arguments used. For example:
|
|
22
|
+
```python
|
|
23
|
+
# src/worker/main.py:160-175
|
|
24
|
+
async def _progress_callback(job_id: str, progress: float) -> bool:
|
|
25
|
+
async with async_session_maker() as session:
|
|
26
|
+
job = await session.get(OptimizationJob, job_id)
|
|
27
|
+
if job.status == JobStatus.CANCELLED:
|
|
28
|
+
return True # signal optimizer to stop
|
|
29
|
+
return False
|
|
30
|
+
```
|
|
31
|
+
- **Lesson**: The takeaway for other teams
|
|
32
|
+
|
|
33
|
+
Always include real code from files you read — not paraphrases, not "see line 42". The reader should understand the pattern, the function names, the parameters, and the packages used without opening the repo.
|
{rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/config_analyzer.j2
RENAMED
|
@@ -13,12 +13,21 @@ Look for REX signals in:
|
|
|
13
13
|
- Cross-platform concerns: does the config handle Windows/Linux/Mac differences?
|
|
14
14
|
- Publishing / deployment: how is the package published? Manual or automated? What triggers a release?
|
|
15
15
|
|
|
16
|
-
For each finding, cite specific files and line numbers. Configuration choices often reveal hard-won lessons about what went wrong in the past.
|
|
17
|
-
|
|
18
16
|
FORMAT YOUR OUTPUT AS A LIST OF FINDINGS. For each finding, use this structure:
|
|
19
17
|
|
|
20
18
|
### Finding: [short title]
|
|
21
19
|
- **Problem/Context**: What challenge or decision was at stake
|
|
22
20
|
- **What was done**: The approach taken (and alternatives if visible)
|
|
23
|
-
- **
|
|
24
|
-
|
|
21
|
+
- **Code**: Copy the actual config/code lines that show the pattern. Include the real values, parameters, package names. For example:
|
|
22
|
+
```yaml
|
|
23
|
+
# .github/workflows/deploy.yml:18-25
|
|
24
|
+
- name: Build container
|
|
25
|
+
run: |
|
|
26
|
+
docker build --target production \
|
|
27
|
+
--build-arg PYTHON_VERSION=3.12 \
|
|
28
|
+
--cache-from type=gha \
|
|
29
|
+
-t {% raw %}${{ env.IMAGE }}:${{ github.sha }}{% endraw %} .
|
|
30
|
+
```
|
|
31
|
+
- **Lesson**: The takeaway for other teams
|
|
32
|
+
|
|
33
|
+
Always include real config/code from files you read — not paraphrases. The reader should see the exact commands, package versions, and settings used.
|
|
@@ -12,12 +12,19 @@ Look for REX signals in:
|
|
|
12
12
|
- API documentation: is the external API documented separately from implementation?
|
|
13
13
|
- CHANGELOG/versioning: is there a changelog? Is it maintained?
|
|
14
14
|
|
|
15
|
-
For each finding, cite specific files and line numbers. A gap in documentation is just as valuable as good documentation — both carry lessons.
|
|
16
|
-
|
|
17
15
|
FORMAT YOUR OUTPUT AS A LIST OF FINDINGS. For each finding, use this structure:
|
|
18
16
|
|
|
19
17
|
### Finding: [short title]
|
|
20
18
|
- **Problem/Context**: What challenge or decision was at stake
|
|
21
19
|
- **What was done**: The approach taken (and alternatives if visible)
|
|
22
|
-
- **
|
|
23
|
-
|
|
20
|
+
- **Code**: Copy the actual code or documentation lines that illustrate the finding. For example:
|
|
21
|
+
```python
|
|
22
|
+
# src/core/optimizer.py:45-48
|
|
23
|
+
# We use DBSCAN instead of K-means here because the number of
|
|
24
|
+
# annotation clusters is unknown and annotations can have
|
|
25
|
+
# irregular shapes. eps=15 tuned on the validation set.
|
|
26
|
+
clusters = DBSCAN(eps=15, min_samples=3).fit_predict(coords)
|
|
27
|
+
```
|
|
28
|
+
- **Lesson**: The takeaway for other teams
|
|
29
|
+
|
|
30
|
+
Always include real code or documentation excerpts — not paraphrases. The reader should see exactly what the codebase does.
|
{rex_machine-0.2.0 → rex_machine-0.2.2}/src/rex_machine/templates/prompts/structure_analyzer.j2
RENAMED
|
@@ -11,12 +11,18 @@ Look for REX signals in:
|
|
|
11
11
|
- Build system: why was this build tool chosen? Are there traces of a previous one?
|
|
12
12
|
- Dependency structure: are deps well-organized? Pinned vs floating? Dev vs prod separation?
|
|
13
13
|
|
|
14
|
-
For each finding, explain WHAT you observed, WHERE in the code (file paths + line numbers), and WHY it matters as a lesson learned.
|
|
15
|
-
|
|
16
14
|
FORMAT YOUR OUTPUT AS A LIST OF FINDINGS. For each finding, use this structure:
|
|
17
15
|
|
|
18
16
|
### Finding: [short title]
|
|
19
17
|
- **Problem/Context**: What challenge or decision was at stake
|
|
20
18
|
- **What was done**: The approach taken (and alternatives if visible)
|
|
21
|
-
- **
|
|
22
|
-
|
|
19
|
+
- **Code**: Copy the actual code lines that show the pattern. Include imports, function signatures, key parameters. For example:
|
|
20
|
+
```python
|
|
21
|
+
# src/api/deps.py:12-18
|
|
22
|
+
async def get_db_session() -> AsyncGenerator[AsyncSession, None]:
|
|
23
|
+
async with async_session_maker() as session:
|
|
24
|
+
yield session
|
|
25
|
+
```
|
|
26
|
+
- **Lesson**: The takeaway for other teams
|
|
27
|
+
|
|
28
|
+
Always include real code from files you read — not paraphrases, not line number references. The reader should understand the pattern without opening the repo.
|
|
@@ -24,7 +24,7 @@ For each REX item, fill ALL fields:
|
|
|
24
24
|
- theme: short category (e.g., "Error Handling", "Testing", "Architecture")
|
|
25
25
|
- context: where this applies in the codebase
|
|
26
26
|
- problem: the challenge or decision that was at stake
|
|
27
|
-
- approaches: at least one Approach with description, worked (true/false/null), and details
|
|
27
|
+
- approaches: at least one Approach with description, worked (true/false/null), and details that INCLUDE the actual code snippets from the sub-agent reports. Copy the real code — function names, imports, parameters, specific arguments. The reader must understand the pattern without opening the repo.
|
|
28
28
|
- learning: the takeaway
|
|
29
29
|
- recommendation: actionable advice
|
|
30
30
|
- confidence: based on evidence strength
|
|
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
|
|
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
|