ralphx 0.2.2__py3-none-any.whl → 0.3.5__py3-none-any.whl
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.
- ralphx/__init__.py +1 -1
- ralphx/api/main.py +9 -1
- ralphx/api/routes/auth.py +730 -65
- ralphx/api/routes/config.py +3 -56
- ralphx/api/routes/export_import.py +795 -0
- ralphx/api/routes/loops.py +4 -4
- ralphx/api/routes/planning.py +19 -5
- ralphx/api/routes/projects.py +84 -2
- ralphx/api/routes/templates.py +115 -2
- ralphx/api/routes/workflows.py +22 -22
- ralphx/cli.py +21 -6
- ralphx/core/auth.py +346 -171
- ralphx/core/database.py +615 -167
- ralphx/core/executor.py +0 -3
- ralphx/core/loop.py +15 -2
- ralphx/core/loop_templates.py +69 -3
- ralphx/core/planning_service.py +109 -21
- ralphx/core/preview.py +9 -25
- ralphx/core/project_db.py +175 -75
- ralphx/core/project_export.py +469 -0
- ralphx/core/project_import.py +670 -0
- ralphx/core/sample_project.py +430 -0
- ralphx/core/templates.py +46 -9
- ralphx/core/workflow_executor.py +35 -5
- ralphx/core/workflow_export.py +606 -0
- ralphx/core/workflow_import.py +1149 -0
- ralphx/examples/sample_project/DESIGN.md +345 -0
- ralphx/examples/sample_project/README.md +37 -0
- ralphx/examples/sample_project/guardrails.md +57 -0
- ralphx/examples/sample_project/stories.jsonl +10 -0
- ralphx/mcp/__init__.py +6 -2
- ralphx/mcp/registry.py +3 -3
- ralphx/mcp/server.py +99 -29
- ralphx/mcp/tools/__init__.py +4 -0
- ralphx/mcp/tools/help.py +204 -0
- ralphx/mcp/tools/workflows.py +114 -32
- ralphx/mcp_server.py +6 -2
- ralphx/static/assets/index-0ovNnfOq.css +1 -0
- ralphx/static/assets/index-CY9s08ZB.js +251 -0
- ralphx/static/assets/index-CY9s08ZB.js.map +1 -0
- ralphx/static/index.html +14 -0
- {ralphx-0.2.2.dist-info → ralphx-0.3.5.dist-info}/METADATA +34 -12
- {ralphx-0.2.2.dist-info → ralphx-0.3.5.dist-info}/RECORD +45 -30
- {ralphx-0.2.2.dist-info → ralphx-0.3.5.dist-info}/WHEEL +0 -0
- {ralphx-0.2.2.dist-info → ralphx-0.3.5.dist-info}/entry_points.txt +0 -0
ralphx/static/index.html
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>RalphX Dashboard</title>
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-CY9s08ZB.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/assets/index-0ovNnfOq.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ralphx
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.5
|
|
4
4
|
Summary: Autonomous AI loop orchestration for Claude Code - define workflows in YAML, run autonomously, monitor in real-time
|
|
5
5
|
Project-URL: Homepage, https://github.com/jackneil/ralphx
|
|
6
6
|
Project-URL: Repository, https://github.com/jackneil/ralphx
|
|
@@ -34,8 +34,6 @@ Requires-Dist: httpx>=0.24; extra == 'dev'
|
|
|
34
34
|
Requires-Dist: pytest-asyncio>=0.21; extra == 'dev'
|
|
35
35
|
Requires-Dist: pytest>=7.0; extra == 'dev'
|
|
36
36
|
Requires-Dist: ruff>=0.1; extra == 'dev'
|
|
37
|
-
Provides-Extra: mcp
|
|
38
|
-
Requires-Dist: mcp>=0.1; extra == 'mcp'
|
|
39
37
|
Description-Content-Type: text/markdown
|
|
40
38
|
|
|
41
39
|
# RalphX
|
|
@@ -106,7 +104,7 @@ for product development. I'm not technical so please handle everything:
|
|
|
106
104
|
1. Check if I have conda/miniconda installed. If not, install miniconda for my OS.
|
|
107
105
|
2. Create a Python 3.11 environment called "ralphx" and activate it
|
|
108
106
|
3. Install RalphX from PyPI: pip install ralphx
|
|
109
|
-
4. Add RalphX as an MCP server
|
|
107
|
+
4. Add RalphX as an MCP server using the full path to the ralphx binary in the conda env (use the right command for my OS to find it)
|
|
110
108
|
5. Start the RalphX dashboard: ralphx serve
|
|
111
109
|
6. Ask me if I want a desktop shortcut to launch the dashboard. If yes, create
|
|
112
110
|
a shortcut for my OS that uses the full path to the Python executable in the
|
|
@@ -130,10 +128,26 @@ Open `http://localhost:16768` to monitor progress.
|
|
|
130
128
|
|
|
131
129
|
---
|
|
132
130
|
|
|
133
|
-
**Already technical?** Here's the
|
|
131
|
+
**Already technical?** Here's the quick setup:
|
|
134
132
|
|
|
135
133
|
```bash
|
|
136
|
-
|
|
134
|
+
# Create and activate a Python 3.11+ environment:
|
|
135
|
+
conda create -n ralphx python=3.11 -y && conda activate ralphx
|
|
136
|
+
|
|
137
|
+
# Install RalphX:
|
|
138
|
+
pip install ralphx
|
|
139
|
+
|
|
140
|
+
# Add MCP server with full path to ralphx binary:
|
|
141
|
+
|
|
142
|
+
# Linux/Mac:
|
|
143
|
+
claude mcp add ralphx -e PYTHONDONTWRITEBYTECODE=1 -- "$(which ralphx)" mcp
|
|
144
|
+
|
|
145
|
+
# Mac (zsh) - if "which ralphx" fails, first run: conda init zsh && source ~/.zshrc
|
|
146
|
+
|
|
147
|
+
# Windows - first find your path, then use it:
|
|
148
|
+
# CMD: where.exe ralphx
|
|
149
|
+
# PowerShell: (Get-Command ralphx).Source
|
|
150
|
+
claude mcp add ralphx -e PYTHONDONTWRITEBYTECODE=1 -- C:\Users\YOU\miniconda3\envs\ralphx\Scripts\ralphx.exe mcp
|
|
137
151
|
```
|
|
138
152
|
|
|
139
153
|
---
|
|
@@ -226,16 +240,23 @@ Ask Claude: *"Set up a new-product workflow starting from my idea for a task man
|
|
|
226
240
|
For those who prefer to do it themselves:
|
|
227
241
|
|
|
228
242
|
```bash
|
|
229
|
-
#
|
|
230
|
-
#
|
|
231
|
-
|
|
232
|
-
# Create environment and install
|
|
243
|
+
# Create a virtual environment (use conda, venv, or your preferred tool)
|
|
244
|
+
# Example with conda:
|
|
233
245
|
conda create -n ralphx python=3.11 -y
|
|
234
246
|
conda activate ralphx
|
|
247
|
+
|
|
248
|
+
# Or with venv:
|
|
249
|
+
# python3 -m venv ~/.venvs/ralphx && source ~/.venvs/ralphx/bin/activate
|
|
250
|
+
|
|
251
|
+
# Install RalphX
|
|
235
252
|
pip install ralphx
|
|
236
253
|
|
|
237
|
-
# Set up MCP so Claude can control RalphX
|
|
238
|
-
|
|
254
|
+
# Set up MCP so Claude can control RalphX (uses full path so it works outside the env)
|
|
255
|
+
# Linux/Mac:
|
|
256
|
+
claude mcp add ralphx -e PYTHONDONTWRITEBYTECODE=1 -- "$(which ralphx)" mcp
|
|
257
|
+
# Mac (zsh): if "which" fails, run: conda init zsh && source ~/.zshrc
|
|
258
|
+
# Windows: find path with "where.exe ralphx" (CMD) or "(Get-Command ralphx).Source" (PowerShell)
|
|
259
|
+
# then: claude mcp add ralphx -e PYTHONDONTWRITEBYTECODE=1 -- C:\Users\YOU\...\ralphx.exe mcp
|
|
239
260
|
|
|
240
261
|
# Start the dashboard
|
|
241
262
|
ralphx serve
|
|
@@ -296,6 +317,7 @@ Claude gets full access to RalphX:
|
|
|
296
317
|
- [SDLC Workflows](design/SDLC_WORKFLOWS.md) - All workflow templates explained
|
|
297
318
|
- [Design Overview](design/DESIGN.md) - Architecture deep dive
|
|
298
319
|
- [Loop Schema](design/LOOP_SCHEMA.md) - Configuration reference
|
|
320
|
+
- [Backup & Import Guide](docs/BACKUP_AND_IMPORT.md) - Export workflows, import items
|
|
299
321
|
|
|
300
322
|
---
|
|
301
323
|
|
|
@@ -1,62 +1,69 @@
|
|
|
1
|
-
ralphx/__init__.py,sha256=
|
|
2
|
-
ralphx/cli.py,sha256=
|
|
3
|
-
ralphx/mcp_server.py,sha256=
|
|
1
|
+
ralphx/__init__.py,sha256=e30Wxptgdwpx0R-hwf81DOLqPxxJ2UDvZuGp2myAd6I,159
|
|
2
|
+
ralphx/cli.py,sha256=G9AEJUZoOjyjcxRG5AJppj130dw9qLGVUMqdvijUa4Q,46204
|
|
3
|
+
ralphx/mcp_server.py,sha256=yaLz0VS1vg1Dm9yotEP9ugPsM0frxVXrgWg6R186ISc,676
|
|
4
4
|
ralphx/adapters/__init__.py,sha256=oHYD7fJUfZ832-9lR0MJLqiBqKQKY3KRKs4uuIWkGQ0,332
|
|
5
5
|
ralphx/adapters/base.py,sha256=KMSSpa0anknTmkVBGeeISTchP9bNasZOqjYpRyHRh2s,5204
|
|
6
6
|
ralphx/adapters/claude_cli.py,sha256=vXaKiXcLZ63trGWVMxLGMZnt5X3oSOEMPdpAn4qvEdw,22556
|
|
7
7
|
ralphx/api/__init__.py,sha256=eGkbq2sHbLKErsTA_Czm7EziHgdkl7y0Rc_IxYC1riM,39
|
|
8
|
-
ralphx/api/main.py,sha256=
|
|
8
|
+
ralphx/api/main.py,sha256=pxUt2wr2u-EoKMh9bLjQWzkl9ilSA3ODVWH8nNcIxrg,12089
|
|
9
9
|
ralphx/api/routes/__init__.py,sha256=GYDWlO5eeQbScMB-X1JD_vKmxQQ94bO0eJ9T3gNjP54,139
|
|
10
|
-
ralphx/api/routes/auth.py,sha256=
|
|
11
|
-
ralphx/api/routes/config.py,sha256=
|
|
10
|
+
ralphx/api/routes/auth.py,sha256=r0LEHNveP1fwM3jQ4aKR7cqIKKfjC710Hi_clpc7qN4,29977
|
|
11
|
+
ralphx/api/routes/config.py,sha256=hXOvFzSUJhU90mKSObGW5HzZzOj8hD7BuDxdZc0JCKk,19871
|
|
12
|
+
ralphx/api/routes/export_import.py,sha256=hRgDBrSD5b6pzPi6Pk7FwNFSor5XLgqWHq2-ZDSAtWI,24468
|
|
12
13
|
ralphx/api/routes/files.py,sha256=YE05Bi8LJQUz3-RHVhmdmQ2tHxpgtEJ1_1z18cd_Aso,8579
|
|
13
14
|
ralphx/api/routes/filesystem.py,sha256=2Y8FLPYRDijJQDqwAxmMfkvmMQ6Ki0A6rF6-YCRJoMk,1445
|
|
14
15
|
ralphx/api/routes/imports.py,sha256=gpmvBOZyL_JNmJKkFx1zOyYps5kkOZ7069UED_Zw5Tc,14760
|
|
15
16
|
ralphx/api/routes/items.py,sha256=_7RTJ7bHgpjzOXYL7hj8DtETzHj3kxsCUnvE0WNG_hI,18871
|
|
16
17
|
ralphx/api/routes/logs.py,sha256=8Bk5z0tsuD5XNdMs4QChb1i_JXUqo025361n8O35hmc,12323
|
|
17
|
-
ralphx/api/routes/loops.py,sha256=
|
|
18
|
-
ralphx/api/routes/planning.py,sha256=
|
|
19
|
-
ralphx/api/routes/projects.py,sha256=
|
|
18
|
+
ralphx/api/routes/loops.py,sha256=1RVeWojX0i25snbrEpm8uuLMCnZdQx7Zfmso85TjSGc,94822
|
|
19
|
+
ralphx/api/routes/planning.py,sha256=8bSU-38zFbRbN_a3BsaPaJ601-uXFMrNudfxXf7tW_o,20956
|
|
20
|
+
ralphx/api/routes/projects.py,sha256=uyoaRHmxNiqKL25uHFJN4vvdQCWwJ1Lzv3LlNCQDjT0,10375
|
|
20
21
|
ralphx/api/routes/resources.py,sha256=-D2Ej2ybEPQnSK1wH1TJgaOlFwF_KRnDbObpgfnh3WQ,10804
|
|
21
22
|
ralphx/api/routes/runs.py,sha256=aQ0axIlIiYqAqTcNEXjHuwvIrOWi1XN5iIa3CVJOqT8,2382
|
|
22
23
|
ralphx/api/routes/stream.py,sha256=RwZprHc407uTmkT-FLIbkhDGfksb5RAzSXW6mVxeJjQ,18764
|
|
23
|
-
ralphx/api/routes/templates.py,sha256=
|
|
24
|
-
ralphx/api/routes/workflows.py,sha256=
|
|
24
|
+
ralphx/api/routes/templates.py,sha256=KuvD_B4x0Oprfn7YzzW08y816BKoUxPmMpdkPG3TpGA,15223
|
|
25
|
+
ralphx/api/routes/workflows.py,sha256=tVulAZv5pak2Np8u4M2CMzFO_g_MOWa536aaCAHdG-A,75963
|
|
25
26
|
ralphx/core/__init__.py,sha256=dLTjDYusnlvYywpAovhBxbXwDctCcQHA6kmO-A3hp8o,69
|
|
26
|
-
ralphx/core/auth.py,sha256=
|
|
27
|
+
ralphx/core/auth.py,sha256=jUd9jmro5AMT46x-srCN6vSLU8yu-VQ0MIiXG0j3K3g,40707
|
|
27
28
|
ralphx/core/checkpoint.py,sha256=9gFKQpou9n0WDSKC8aJBTBS85wpuh7QtZCFH1sSvJFY,14292
|
|
28
|
-
ralphx/core/database.py,sha256=
|
|
29
|
+
ralphx/core/database.py,sha256=_4sfaNO9UgDUFB45oDsrkNaJkzLR-5o0HluOuAilzXg,84892
|
|
29
30
|
ralphx/core/dependencies.py,sha256=CEtKWXcnQr7CckdvxmRJIPNE4LjWBVoGoNqPqJWr298,11960
|
|
30
31
|
ralphx/core/display.py,sha256=R1Nf03n7LzMrp9S3Ppt5mJyH-7T3GBE097d1d7MbaQo,9385
|
|
31
32
|
ralphx/core/doctor.py,sha256=f7X9ed7aax7UWdhleKis1Tek4HybQoW17kjtDwWdXs8,22843
|
|
32
|
-
ralphx/core/executor.py,sha256=
|
|
33
|
+
ralphx/core/executor.py,sha256=zKP72m5buOZkzTs9lXPs1qZyyOs9BLmhgtcFK-5vQNY,95911
|
|
33
34
|
ralphx/core/global_db.py,sha256=I3PrdIiS7yVKy_ETpggsCJT6xGb74JUhMVdA5Ywlydo,12915
|
|
34
35
|
ralphx/core/guardrails.py,sha256=sPwaBqVhJ3RccHkKbTOuhIlvoOsGdjEUN0DO2KNX4VE,30126
|
|
35
36
|
ralphx/core/import_manager.py,sha256=Vsst_zdw5IewAx-7YxHoO7cJsCHdo3-lgID3xm0JIJM,19949
|
|
36
37
|
ralphx/core/input_templates.py,sha256=6E3MB_Pc9s97hrW6-Tx6nAFXfYUQ4jPHdukf5xeHN1Y,11099
|
|
37
38
|
ralphx/core/logger.py,sha256=5-jzTs-FM-qDqhAwi7DMMG_2ScpoYftmVppl6nWfGmg,8657
|
|
38
|
-
ralphx/core/loop.py,sha256=
|
|
39
|
-
ralphx/core/loop_templates.py,sha256=
|
|
39
|
+
ralphx/core/loop.py,sha256=8xbe8nSkurkZd-dypuf9aBIw4P13r1nGUIMWaMlQb_8,11216
|
|
40
|
+
ralphx/core/loop_templates.py,sha256=GV9iCdbH-7aPNOO9J17Cz3um7wD-61X0mJydQVrneHI,23721
|
|
40
41
|
ralphx/core/oauth.py,sha256=YfoKgS4kTIY6xtiRavQMeZvmoSAqG99dpsGW2BCtPbU,8653
|
|
41
42
|
ralphx/core/permission_templates.py,sha256=vsOQlBizN2c0iVhT17djV-7EonZsJ_MTb8lx1nbnjtY,11787
|
|
42
43
|
ralphx/core/permissions.py,sha256=L8msaFdEDGRN2QoYR0G3d9tPCqMrshAHdf5WFsFsgZ0,10271
|
|
43
|
-
ralphx/core/planning_service.py,sha256=
|
|
44
|
-
ralphx/core/preview.py,sha256
|
|
44
|
+
ralphx/core/planning_service.py,sha256=zNnUjmVHdgMgpCF8nmQxvpUQJBtBYuBeuwkzyutrsXc,15737
|
|
45
|
+
ralphx/core/preview.py,sha256=W6vHC8XPVX6NcYtBkJRU6eCehAQrrwUFyi3jzEkNlW8,16740
|
|
45
46
|
ralphx/core/project.py,sha256=lPfqzQDySOpoB61sxb3-UvamCctUntTu6bvf12STdoY,13564
|
|
46
|
-
ralphx/core/project_db.py,sha256=
|
|
47
|
+
ralphx/core/project_db.py,sha256=ULcXj56trYFPK0SzeRYXnS4O3YJFfAvcTAeCPlxdT5o,190314
|
|
48
|
+
ralphx/core/project_export.py,sha256=METPK9-jbQafA8q_ywdRLwXE998-0i_Gd2jeWKNoP1M,17787
|
|
49
|
+
ralphx/core/project_import.py,sha256=BLQeN12aCrLYeR27ezYndxepQJAFwzII_yHv_AaaT0o,25556
|
|
47
50
|
ralphx/core/resources.py,sha256=OJdRkwwTTMoXINl6rIsNki_68mxsOgIu17UPHrey3So,17816
|
|
51
|
+
ralphx/core/sample_project.py,sha256=cCo7JDBC-ymOS0U0FTQfi1TF9jYdSfSWovcWJPJFI20,14176
|
|
48
52
|
ralphx/core/schemas.py,sha256=4tC519c-wsFZrW3ATpETNqRAm9sGOpKUSftRXTOLWiE,4200
|
|
49
53
|
ralphx/core/session.py,sha256=pd6ieA44KoloYPELtPuKa7UHK_VUDTY1ss4GKWUzH3M,16986
|
|
50
|
-
ralphx/core/templates.py,sha256=
|
|
51
|
-
ralphx/core/workflow_executor.py,sha256=
|
|
54
|
+
ralphx/core/templates.py,sha256=0tW-3-rTqFxW-SW8kxmKFLvpBwN_GMKIk0FKAgnFREA,9190
|
|
55
|
+
ralphx/core/workflow_executor.py,sha256=jok8xRls6GaVMHel2YWtISv2kbNWnJi7d6WkMe21UWI,23526
|
|
56
|
+
ralphx/core/workflow_export.py,sha256=pFaHhgDugXSgEsFb94evLFirSiQhAkBMJYZEp-YvQkY,22513
|
|
57
|
+
ralphx/core/workflow_import.py,sha256=hb6SDXbiFv-qhCb-rC9zMACPMle0F8865FV5bGYIi38,45343
|
|
52
58
|
ralphx/core/workspace.py,sha256=0Z6mzypzZ7PSEhHY6_FnlXAVnfre1A-Rt9h_yIw1sgw,12988
|
|
53
|
-
ralphx/mcp/__init__.py,sha256=
|
|
59
|
+
ralphx/mcp/__init__.py,sha256=p33Zu-o35PSLt33YRK4AyTrrhQHBc0bej4c-_jtUjk0,597
|
|
54
60
|
ralphx/mcp/base.py,sha256=Uyowy6SX47jQLvWGOxWNavuTp8Nxk2JyWe9Uwjtx3tA,10534
|
|
55
|
-
ralphx/mcp/registry.py,sha256=
|
|
56
|
-
ralphx/mcp/server.py,sha256=
|
|
57
|
-
ralphx/mcp/tools/__init__.py,sha256=
|
|
61
|
+
ralphx/mcp/registry.py,sha256=DeqtdH__sSGIoDhxi2K1G0F62UYsBGWXeuI1nIswUBs,2041
|
|
62
|
+
ralphx/mcp/server.py,sha256=KyAUG4ZJdmGwLuS7XFnl-IvnFQcTThr5DPr6H5aeCGw,9127
|
|
63
|
+
ralphx/mcp/tools/__init__.py,sha256=ux8G39HrsVZ2bEPHl8KEk6jvkpsYetvqDU_YbQyyXGY,1655
|
|
58
64
|
ralphx/mcp/tools/diagnostics.py,sha256=EmidhFgNvT4Ep4vqmnled83S7EhOMd_AE-Ub3aQBYMM,15643
|
|
59
65
|
ralphx/mcp/tools/guardrails.py,sha256=KnSufMXqaW2UCmOBQRK9rve0ynFIaT7XPVbB7owhjhc,13215
|
|
66
|
+
ralphx/mcp/tools/help.py,sha256=Tj-ysEv6kXGBd9_-FsWWjMCSl2by30QGUdgTl7fm8g8,8150
|
|
60
67
|
ralphx/mcp/tools/imports.py,sha256=vxnMtib-bCUfqH_AFk7MvhtJDTu0KJ8Ku-3Z394OqCY,21116
|
|
61
68
|
ralphx/mcp/tools/items.py,sha256=6sznvXRWAFDZwPU4jRuduqxWmKPLkFvzqQdm9UvoxfE,14194
|
|
62
69
|
ralphx/mcp/tools/loops.py,sha256=S-hClTNVEsh4jBQE2YneIW7yEr3Nn6qRqQwuJ0Jckoc,13375
|
|
@@ -64,7 +71,7 @@ ralphx/mcp/tools/monitoring.py,sha256=HaY2qCITS_3QORozc1yd-yASPH8iAuhaaclNGEMFhe
|
|
|
64
71
|
ralphx/mcp/tools/permissions.py,sha256=jlmvXMnP-AiDgBjQj1nPu1THZ_SG_F4bROTSTgz_paw,10356
|
|
65
72
|
ralphx/mcp/tools/projects.py,sha256=rf5KaPViH42UN77hDK9xACtGIHzVlszno0b5MqcZikg,7979
|
|
66
73
|
ralphx/mcp/tools/resources.py,sha256=Nqsu6xbs5m9wJ6EzioWjnDaCeTASh4IhNnnUsYnJw3c,13814
|
|
67
|
-
ralphx/mcp/tools/workflows.py,sha256=
|
|
74
|
+
ralphx/mcp/tools/workflows.py,sha256=Uev7UsjfCDBBXElG3pE2GnQj8T4kmREaxuTY2_FcjAQ,36770
|
|
68
75
|
ralphx/models/__init__.py,sha256=Mizcjyz30Ae8S3Vz44uNplWhpk0RmS976cc_Ne8SUqc,1080
|
|
69
76
|
ralphx/models/guardrail.py,sha256=li9J0u2I5F0elJO3mgssw5z4RnElqPqtoQXn8WYzx0k,5317
|
|
70
77
|
ralphx/models/loop.py,sha256=p-x0eHZNjVv8L3tRgQDMUzxsGCQkcbeAwbbAalfpzSI,17466
|
|
@@ -77,7 +84,15 @@ ralphx/templates/guardrails/default.md,sha256=AFfKcjA6xX3qAURcseiHwVlgCBajifxEvE
|
|
|
77
84
|
ralphx/templates/loop_templates/consumer.md,sha256=sE3MNzlddu800NaDW_GAyDzE1ux_iKvfcYyJt6BhlNE,953
|
|
78
85
|
ralphx/templates/loop_templates/generator.md,sha256=gcZ6TmKj54pqm0NSwlPFHxbLvdT33dT4zY5OjONQAiQ,867
|
|
79
86
|
ralphx/templates/loop_templates/hybrid.md,sha256=FFig_IoWOzSe6xkllc87huuUlambLTpCRYRvMU6VSLY,1013
|
|
80
|
-
ralphx
|
|
81
|
-
ralphx
|
|
82
|
-
ralphx
|
|
83
|
-
ralphx
|
|
87
|
+
ralphx/examples/sample_project/DESIGN.md,sha256=XbiCkeEnQG4asEhpFG2it_ZHx3Ra8byDTPdgqehTbRo,8370
|
|
88
|
+
ralphx/examples/sample_project/README.md,sha256=9nIOQBRKb3z6k3rWhhuLqH9sHXSmQACVJP3kw5cymI4,1263
|
|
89
|
+
ralphx/examples/sample_project/guardrails.md,sha256=fvNQRtuy8NmR-qB-STJLINhG6VwJQzHzvQ-NDKOX5Xs,1717
|
|
90
|
+
ralphx/examples/sample_project/stories.jsonl,sha256=BMv3kp1__wrlcBQsNdTscO3KWSkogGT34j1YgwkVFTs,5505
|
|
91
|
+
ralphx/static/index.html,sha256=Mp21_A9gLALyVKSbrr1lDVM9NMYsAClSMRwuWTp4Zn8,463
|
|
92
|
+
ralphx/static/assets/index-0ovNnfOq.css,sha256=PTgWEP9CFCJQAJTdxUphaCFUddlNwTGddPhQCyTfvN0,57554
|
|
93
|
+
ralphx/static/assets/index-CY9s08ZB.js,sha256=rnJWY7xDP6L0uF5ng1W9t-owyI7yBAAGuD6NMEyvksU,839933
|
|
94
|
+
ralphx/static/assets/index-CY9s08ZB.js.map,sha256=ed0UBwRipT29OTB_m0F5rCbmgz0HcUzdg6KlBHt4XG4,2616332
|
|
95
|
+
ralphx-0.3.5.dist-info/METADATA,sha256=vXEP3m0VDmZVl2Iw7x9XhgS4_Bu4CSFaVGCTuyqT178,12859
|
|
96
|
+
ralphx-0.3.5.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
97
|
+
ralphx-0.3.5.dist-info/entry_points.txt,sha256=93WPStHoKHFKfNIPsa99ROexUW4P1MoIdRj_lwY9-ms,43
|
|
98
|
+
ralphx-0.3.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|