diagram-to-iac 0.7.0__py3-none-any.whl → 0.9.0__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.
Files changed (78) hide show
  1. diagram_to_iac/__init__.py +10 -0
  2. diagram_to_iac/actions/__init__.py +7 -0
  3. diagram_to_iac/actions/git_entry.py +174 -0
  4. diagram_to_iac/actions/supervisor_entry.py +116 -0
  5. diagram_to_iac/actions/terraform_agent_entry.py +207 -0
  6. diagram_to_iac/agents/__init__.py +26 -0
  7. diagram_to_iac/agents/demonstrator_langgraph/__init__.py +10 -0
  8. diagram_to_iac/agents/demonstrator_langgraph/agent.py +826 -0
  9. diagram_to_iac/agents/git_langgraph/__init__.py +10 -0
  10. diagram_to_iac/agents/git_langgraph/agent.py +1018 -0
  11. diagram_to_iac/agents/git_langgraph/pr.py +146 -0
  12. diagram_to_iac/agents/hello_langgraph/__init__.py +9 -0
  13. diagram_to_iac/agents/hello_langgraph/agent.py +621 -0
  14. diagram_to_iac/agents/policy_agent/__init__.py +15 -0
  15. diagram_to_iac/agents/policy_agent/agent.py +507 -0
  16. diagram_to_iac/agents/policy_agent/integration_example.py +191 -0
  17. diagram_to_iac/agents/policy_agent/tools/__init__.py +14 -0
  18. diagram_to_iac/agents/policy_agent/tools/tfsec_tool.py +259 -0
  19. diagram_to_iac/agents/shell_langgraph/__init__.py +21 -0
  20. diagram_to_iac/agents/shell_langgraph/agent.py +122 -0
  21. diagram_to_iac/agents/shell_langgraph/detector.py +50 -0
  22. diagram_to_iac/agents/supervisor_langgraph/__init__.py +17 -0
  23. diagram_to_iac/agents/supervisor_langgraph/agent.py +1947 -0
  24. diagram_to_iac/agents/supervisor_langgraph/demonstrator.py +22 -0
  25. diagram_to_iac/agents/supervisor_langgraph/guards.py +23 -0
  26. diagram_to_iac/agents/supervisor_langgraph/pat_loop.py +49 -0
  27. diagram_to_iac/agents/supervisor_langgraph/router.py +9 -0
  28. diagram_to_iac/agents/terraform_langgraph/__init__.py +15 -0
  29. diagram_to_iac/agents/terraform_langgraph/agent.py +1216 -0
  30. diagram_to_iac/agents/terraform_langgraph/parser.py +76 -0
  31. diagram_to_iac/core/__init__.py +7 -0
  32. diagram_to_iac/core/agent_base.py +19 -0
  33. diagram_to_iac/core/enhanced_memory.py +302 -0
  34. diagram_to_iac/core/errors.py +4 -0
  35. diagram_to_iac/core/issue_tracker.py +49 -0
  36. diagram_to_iac/core/memory.py +132 -0
  37. diagram_to_iac/r2d.py +345 -13
  38. diagram_to_iac/services/__init__.py +10 -0
  39. diagram_to_iac/services/observability.py +59 -0
  40. diagram_to_iac/services/step_summary.py +77 -0
  41. diagram_to_iac/tools/__init__.py +11 -0
  42. diagram_to_iac/tools/api_utils.py +108 -26
  43. diagram_to_iac/tools/git/__init__.py +45 -0
  44. diagram_to_iac/tools/git/git.py +956 -0
  45. diagram_to_iac/tools/hello/__init__.py +30 -0
  46. diagram_to_iac/tools/hello/cal_utils.py +31 -0
  47. diagram_to_iac/tools/hello/text_utils.py +97 -0
  48. diagram_to_iac/tools/llm_utils/__init__.py +20 -0
  49. diagram_to_iac/tools/llm_utils/anthropic_driver.py +87 -0
  50. diagram_to_iac/tools/llm_utils/base_driver.py +90 -0
  51. diagram_to_iac/tools/llm_utils/gemini_driver.py +89 -0
  52. diagram_to_iac/tools/llm_utils/openai_driver.py +93 -0
  53. diagram_to_iac/tools/llm_utils/router.py +303 -0
  54. diagram_to_iac/tools/sec_utils.py +4 -2
  55. diagram_to_iac/tools/shell/__init__.py +17 -0
  56. diagram_to_iac/tools/shell/shell.py +415 -0
  57. diagram_to_iac/tools/text_utils.py +277 -0
  58. diagram_to_iac/tools/tf/terraform.py +851 -0
  59. diagram_to_iac-0.9.0.dist-info/METADATA +256 -0
  60. diagram_to_iac-0.9.0.dist-info/RECORD +64 -0
  61. {diagram_to_iac-0.7.0.dist-info → diagram_to_iac-0.9.0.dist-info}/WHEEL +1 -1
  62. diagram_to_iac-0.9.0.dist-info/entry_points.txt +6 -0
  63. diagram_to_iac/agents/codegen_agent.py +0 -0
  64. diagram_to_iac/agents/consensus_agent.py +0 -0
  65. diagram_to_iac/agents/deployment_agent.py +0 -0
  66. diagram_to_iac/agents/github_agent.py +0 -0
  67. diagram_to_iac/agents/interpretation_agent.py +0 -0
  68. diagram_to_iac/agents/question_agent.py +0 -0
  69. diagram_to_iac/agents/supervisor.py +0 -0
  70. diagram_to_iac/agents/vision_agent.py +0 -0
  71. diagram_to_iac/core/config.py +0 -0
  72. diagram_to_iac/tools/cv_utils.py +0 -0
  73. diagram_to_iac/tools/gh_utils.py +0 -0
  74. diagram_to_iac/tools/tf_utils.py +0 -0
  75. diagram_to_iac-0.7.0.dist-info/METADATA +0 -16
  76. diagram_to_iac-0.7.0.dist-info/RECORD +0 -32
  77. diagram_to_iac-0.7.0.dist-info/entry_points.txt +0 -2
  78. {diagram_to_iac-0.7.0.dist-info → diagram_to_iac-0.9.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,256 @@
1
+ Metadata-Version: 2.4
2
+ Name: diagram-to-iac
3
+ Version: 0.9.0
4
+ Summary: Convert architecture diagrams into IaC modules
5
+ Author-email: vindpro <admin@vindpro.com>
6
+ Description-Content-Type: text/markdown
7
+ Requires-Dist: anthropic==0.54.0
8
+ Requires-Dist: google_api_python_client==2.172.0
9
+ Requires-Dist: langchain_anthropic==0.3.15
10
+ Requires-Dist: langchain-core<1.0.0,>=0.3.62
11
+ Requires-Dist: langchain_google_genai==2.1.5
12
+ Requires-Dist: langchain_openai==0.3.24
13
+ Requires-Dist: langgraph==0.4.8
14
+ Requires-Dist: openai==1.88.0
15
+ Requires-Dist: protobuf>=5.27.0
16
+ Requires-Dist: pydantic==2.11.7
17
+ Requires-Dist: PyYAML==6.0.2
18
+ Requires-Dist: Requests==2.32.4
19
+ Requires-Dist: GitPython<4.0,>=3.1
20
+ Requires-Dist: pytest-mock<4.0.0,>=3.10.0
21
+
22
+ # diagram-to-iac
23
+
24
+ > **"One container, many minds—zero manual toil."**
25
+
26
+ An automated DevOps-in-a-Box system that intelligently handles complete Repo-to-Deployment (R2D) workflows. The project combines AI-powered infrastructure analysis with GitHub automation for self-healing deployments.
27
+
28
+ ## 🚀 DevOps-in-a-Box: R2D Action
29
+
30
+ The **R2D (Repo-to-Deployment) Action** is a self-healing, Terraform-first DevOps automation solution that lives inside a single GitHub Action. When you supply any repository URL, our SupervisorAgent marshals specialized agents to handle the complete deployment workflow.
31
+
32
+ ### Quick Start with GitHub Actions
33
+
34
+ ```yaml
35
+ name: Deploy Infrastructure
36
+ on:
37
+ push:
38
+ branches: [main]
39
+
40
+ jobs:
41
+ deploy:
42
+ runs-on: ubuntu-latest
43
+ steps:
44
+ - name: Deploy with R2D
45
+ uses: amartyamandal/diagram-to-iac/.github/actions/r2d@v1
46
+ with:
47
+ repo: ${{ github.server_url }}/${{ github.repository }}
48
+ env:
49
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
50
+ TF_CLOUD_TOKEN: ${{ secrets.TF_CLOUD_TOKEN }}
51
+ ```
52
+
53
+ ### Key Features
54
+
55
+ - **🤖 Self-Healing**: Automatically creates GitHub Issues for errors and suggests fixes
56
+ - **🔒 Security-First**: Non-root container execution with workspace isolation
57
+ - **🌍 Multi-Cloud**: Supports Terraform, PowerShell, Bash, and Ansible deployments
58
+ - **📊 Observable**: Rich logging, step summaries, and artifact collection
59
+ - **🔄 Resumable**: Thread-based conversation tracking for workflow continuation
60
+ - **🧪 Testable**: Comprehensive dry-run mode for safe testing
61
+
62
+ ### The Cast: Specialized Agents
63
+
64
+ | Agent | Capability | Never Does |
65
+ |-------|------------|------------|
66
+ | **SupervisorAgent** | Orchestrates workflow, manages checkpoints | Edit code directly |
67
+ | **GitAgent** | Clone, branch, PR creation, assign @github-copilot | Guess network credentials |
68
+ | **ShellAgent** | Safe command execution, stack detection | Execute non-allowlisted binaries |
69
+ | **TerraformAgent** | Init/plan/apply, error classification | Apply with critical security issues |
70
+ | **PolicyAgent** | tfsec + OPA security gates | Ignore critical findings |
71
+
72
+ ## 📦 Installation
73
+
74
+ Create a virtual environment with Python 3.11+ and install the project in editable mode. Development dependencies (linting, testing, etc.) are provided through the `dev` extra:
75
+
76
+ ```bash
77
+ pip install -e .[dev]
78
+ ```
79
+
80
+ ## 🖥️ Running the CLI
81
+
82
+ The project exposes several entry points via `pyproject.toml`:
83
+
84
+ ### Main R2D CLI
85
+ ```bash
86
+ # Run complete R2D workflow
87
+ diagram-to-iac https://github.com/user/repo
88
+ r2d-agent https://github.com/user/repo --dry-run
89
+
90
+ # Get help
91
+ diagram-to-iac --help
92
+ ```
93
+
94
+ ### Individual Agent CLIs
95
+ ```bash
96
+ # SupervisorAgent (orchestration)
97
+ supervisor-agent --repo-url https://github.com/user/repo
98
+
99
+ # GitAgent (repository operations)
100
+ git-agent --repo-url https://github.com/user/repo
101
+
102
+ # TerraformAgent (infrastructure deployment)
103
+ terraform-agent --query "terraform plan"
104
+ ```
105
+
106
+ ### Interactive Mode
107
+
108
+ Running without arguments enters interactive mode:
109
+
110
+ ```bash
111
+ $ supervisor-agent --dry-run
112
+ ╔══════════════════════════════════════════════════════════════════════════════╗
113
+ ║ 🤖 DevOps-in-a-Box: SupervisorAgent ║
114
+ ║ "One container, many minds—zero manual toil." ║
115
+ ╚══════════════════════════════════════════════════════════════════════════════╝
116
+
117
+ Repository URL: https://github.com/octocat/Hello-World.git
118
+ 🚀 R2D SupervisorAgent - Workflow Orchestration
119
+ 📅 Default branch name: r2d-<timestamp>
120
+ 📝 Press Enter to use default, or type a custom branch name:
121
+ ```
122
+
123
+ The agent will continue with the complete workflow (clone → detect → deploy → issue creation). The `--dry-run` flag simulates actions without making changes.
124
+
125
+ ## Running Tests
126
+
127
+ All tests use `pytest` and are located under the `tests` directory. After installing the development dependencies, run:
128
+
129
+ ```bash
130
+ pytest
131
+ ```
132
+
133
+ ## 📊 Logs and Observability
134
+
135
+ DevOps-in-a-Box provides comprehensive observability for all R2D workflows:
136
+
137
+ ### Structured Logging
138
+ Each run creates a JSONL log file under the `logs/` directory (e.g. `logs/run-<timestamp>.jsonl`).
139
+ Every significant event is logged as structured JSON for easy parsing and analysis:
140
+
141
+ ```bash
142
+ # Follow live logs
143
+ tail -f logs/run-*.jsonl
144
+
145
+ # Parse with jq for specific events
146
+ cat logs/run-*.jsonl | jq '. | select(.event_type == "terraform_apply")'
147
+ ```
148
+
149
+ ### Step Summary Dashboard
150
+ After each workflow, a Markdown dashboard is generated at `step-summary.md` with:
151
+ - 📈 Terraform resource changes and cost estimates
152
+ - 🔒 Security findings from tfsec/OPA scans
153
+ - 🏗️ Infrastructure modules and dependencies
154
+ - ⚡ Performance metrics and execution times
155
+
156
+ ### GitHub Integration
157
+ - **Issues**: Automatically created for errors with detailed context
158
+ - **Pull Requests**: Auto-drafted fixes assigned to @github-copilot
159
+ - **Workflow Summaries**: Rich GitHub Actions step summaries
160
+ - **Artifacts**: Logs, plans, and reports uploaded for download
161
+
162
+ ### CI/CD Artifacts
163
+ In GitHub Actions, the following artifacts are automatically collected:
164
+ - `logs/` - Structured JSONL logs
165
+ - `*.tfplan` - Terraform plan files
166
+ - `step-summary.md` - Workflow dashboard
167
+ - `r2d-artifacts/` - Complete workflow artifacts
168
+
169
+ ## 🔧 GitHub Actions Usage
170
+
171
+ Add the R2D action to your workflow for automated infrastructure deployment:
172
+
173
+ ### Basic Setup
174
+
175
+ ```yaml
176
+ name: Deploy Infrastructure
177
+ on:
178
+ push:
179
+ branches: [main]
180
+
181
+ jobs:
182
+ deploy:
183
+ runs-on: ubuntu-latest
184
+ steps:
185
+ - name: Deploy with R2D
186
+ uses: amartyamandal/diagram-to-iac/.github/actions/r2d@v1
187
+ with:
188
+ repo: ${{ github.server_url }}/${{ github.repository }}
189
+ env:
190
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
191
+ TF_CLOUD_TOKEN: ${{ secrets.TF_CLOUD_TOKEN }}
192
+ ```
193
+
194
+ ### Advanced Configuration
195
+
196
+ ```yaml
197
+ - name: Deploy with Custom Settings
198
+ uses: amartyamandal/diagram-to-iac/.github/actions/r2d@v1
199
+ with:
200
+ repo: 'https://github.com/my-org/infrastructure'
201
+ package_version: 'v2.1.0'
202
+ dry_run: 'false'
203
+ branch_name: 'deploy-prod'
204
+ thread_id: 'prod-deployment-001'
205
+ env:
206
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
207
+ TF_CLOUD_TOKEN: ${{ secrets.TF_CLOUD_TOKEN }}
208
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
209
+ ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
210
+ ```
211
+
212
+ ### Required Secrets
213
+
214
+ Configure these in your repository settings:
215
+
216
+ | Secret | Description | Required |
217
+ |--------|-------------|----------|
218
+ | `GITHUB_TOKEN` | GitHub API access (auto-provided) | ✅ Yes |
219
+ | `TF_CLOUD_TOKEN` | Terraform Cloud API token | ✅ Yes |
220
+ | `OPENAI_API_KEY` | OpenAI API key | ❌ Optional |
221
+ | `ANTHROPIC_API_KEY` | Claude API key | ❌ Optional |
222
+ | `GOOGLE_API_KEY` | Gemini API key | ❌ Optional |
223
+
224
+ ### Example Workflows
225
+
226
+ See [`.github/actions/r2d/examples/`](.github/actions/r2d/examples/) for complete workflow examples:
227
+
228
+ - **Basic Deployment**: Simple push-to-deploy workflow
229
+ - **Multi-Environment**: Deploy to dev/staging/prod with approvals
230
+ - **PR Validation**: Validate infrastructure changes in pull requests
231
+ - **Drift Detection**: Scheduled infrastructure drift monitoring
232
+ - **External Repository**: Deploy from external repositories
233
+
234
+
235
+ After each workflow run, a Markdown dashboard is generated at `step-summary.md`
236
+ showing a high level overview of Terraform modules, resource changes and tfsec
237
+ findings. The dashboard is derived from the JSONL logs and can be viewed
238
+ directly in the repository or uploaded as a build artifact.
239
+
240
+
241
+
242
+ This repository provides a container action that runs the `SupervisorAgent` on the current repository. Add the action to a workflow as shown below:
243
+
244
+ ```yaml
245
+ jobs:
246
+ supervisor:
247
+ runs-on: ubuntu-latest
248
+ steps:
249
+ - uses: actions/checkout@v4
250
+ - name: Run Supervisor Agent
251
+ uses: ./.github/actions/supervisor
252
+ env:
253
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
254
+ ```
255
+
256
+ The action reads `GITHUB_REPOSITORY` and `GITHUB_TOKEN` automatically to clone the repository and execute the agent.
@@ -0,0 +1,64 @@
1
+ diagram_to_iac/__init__.py,sha256=LnGvfFSFGIYc7cx-AkxfGPBU-H7wleyXLOL23s5C_XY,244
2
+ diagram_to_iac/cli.py,sha256=uumG1frF42eCkdLIZxyxQB1x6lDwtG-qKL4vcHnLLXY,400
3
+ diagram_to_iac/r2d.py,sha256=v4f9TegjEnITYPmnEZyBUgZ44s0x_Sct9993h6V0a8k,13021
4
+ diagram_to_iac/actions/__init__.py,sha256=P1CjjY4FYUA0Tcx8FQNLYYSI9fhv8yKd_TmRGtmhW50,229
5
+ diagram_to_iac/actions/git_entry.py,sha256=mhY6gYquUPVvyvnTC2S90z_uXEe1asqWLoi1989aB_Q,5403
6
+ diagram_to_iac/actions/supervisor_entry.py,sha256=vWhFn-4M0jQnrUQUSCb0I_YNxzGsKiBV0QNzkIkQfNE,3586
7
+ diagram_to_iac/actions/terraform_agent_entry.py,sha256=gKkX4fIRdBDZpwPQO_v2t1SSO0SQuzaxQ0StKegGK8U,6852
8
+ diagram_to_iac/agents/__init__.py,sha256=GHInKSPq56ZPYSKsyti6_wk82dhn2hOqfxNHkZZOj_0,735
9
+ diagram_to_iac/agents/demonstrator_langgraph/__init__.py,sha256=nghMYMEEarfkR0V6AH1fDCV-mXBLnmFP2sO4OPxJ4cI,371
10
+ diagram_to_iac/agents/demonstrator_langgraph/agent.py,sha256=TXjhk1NR4XeEqhDpYmu1V8DaAviNOlLQLRA8AeWcueE,34846
11
+ diagram_to_iac/agents/git_langgraph/__init__.py,sha256=x6nCnOu-Vcl-qVqW1swhdaE_sQqUSvEUUtWk4eePBUo,295
12
+ diagram_to_iac/agents/git_langgraph/agent.py,sha256=sS7Ut6hawqeftu7fOzi76lTmNLoxvAUk6Rx0D-r3nDQ,45090
13
+ diagram_to_iac/agents/git_langgraph/pr.py,sha256=qXopN5XAF1DIac5vbH-QasihkuAiWmC9JY8pLYlm-sQ,8601
14
+ diagram_to_iac/agents/hello_langgraph/__init__.py,sha256=lviuDAPJezmpaXR-H7JxfIT9wvg1xO2t6JLyeKSSx0Y,266
15
+ diagram_to_iac/agents/hello_langgraph/agent.py,sha256=CYfohi-370M3ZW4GLaQmFiDXMgthI2NH_JKOjXAzU24,30736
16
+ diagram_to_iac/agents/policy_agent/__init__.py,sha256=E6QEyIpSHh0PMRNnM0dXuYtz2HZdCJaY5W7UbEwPZBA,380
17
+ diagram_to_iac/agents/policy_agent/agent.py,sha256=HJ_VBWNTR_QBcspNfeHQPGKbROGjSracd8BGNGckfSs,20821
18
+ diagram_to_iac/agents/policy_agent/integration_example.py,sha256=LtOGshT0VL6yuu5p8UtJ5xqKNweRsLqeyCZK18dnwBA,6703
19
+ diagram_to_iac/agents/policy_agent/tools/__init__.py,sha256=C9ez49BmMiaAlYs_QrtC0ypMLm1S-Sf9RCRI40-KuCA,282
20
+ diagram_to_iac/agents/policy_agent/tools/tfsec_tool.py,sha256=YYCRhwVLegeCzJrbah3BYhpKwYPh7PtDxB3kYW8qt10,10116
21
+ diagram_to_iac/agents/shell_langgraph/__init__.py,sha256=teAx1L87McCj9_24NUdET3OC2K60_qbO6K9swunIYaE,601
22
+ diagram_to_iac/agents/shell_langgraph/agent.py,sha256=dZWzjVQ9oX_BtNHQ1Zrzy2oQpuY1e5BS51-SGcWpoSw,4341
23
+ diagram_to_iac/agents/shell_langgraph/detector.py,sha256=wLw0uDP_V2m1z6SRk7QNCzoUMYCfXwu3DNg8EWue9yk,1493
24
+ diagram_to_iac/agents/supervisor_langgraph/__init__.py,sha256=iLN60d20cqoXOLyuLvJkiwrzapE84em222Tnyndq2dc,385
25
+ diagram_to_iac/agents/supervisor_langgraph/agent.py,sha256=gdvCDWWtaCkgPyxGn47PqjLDf03qHkuxrTj6uqnN2TA,82432
26
+ diagram_to_iac/agents/supervisor_langgraph/demonstrator.py,sha256=OT-bElEyLZBedzcc5DtZnp1yhjYVjx4jRzt52f5SoSU,803
27
+ diagram_to_iac/agents/supervisor_langgraph/guards.py,sha256=XzBgjXnwbOgLkGm7AqXX4tQdGBerq_6pKvduKPqIwF0,720
28
+ diagram_to_iac/agents/supervisor_langgraph/pat_loop.py,sha256=feY8ZPGQxqkUuHOMSdpilGDUjOvaky8xImLuVe98hrw,1566
29
+ diagram_to_iac/agents/supervisor_langgraph/router.py,sha256=7hZXXEmtvG__w7UAaOhoPaHdubUv-oMKbQdMTMXk-qY,276
30
+ diagram_to_iac/agents/terraform_langgraph/__init__.py,sha256=N4_cTgk1wNZMS9WU5xZMEm6Dt5GiJ2b0iLx-QUhJd10,390
31
+ diagram_to_iac/agents/terraform_langgraph/agent.py,sha256=2B43GoapfUxGegJuI6AgGwqJ-j1iGsV1q2rekVAIs9k,48013
32
+ diagram_to_iac/agents/terraform_langgraph/parser.py,sha256=J56CPlpIEIPuDHeAOL3sz4TiIgqLi7raPlX7jwFrAms,2039
33
+ diagram_to_iac/core/__init__.py,sha256=VjXPYLIS2SAPIDniBkeA2EDK0VHJvdaKIC8dzVneaTM,140
34
+ diagram_to_iac/core/agent_base.py,sha256=DjZjcfzDpEhfIOki00XwQ-4lPli3OBcQ_7RNKsT7JSI,505
35
+ diagram_to_iac/core/enhanced_memory.py,sha256=Ga5wtI45zEcbwL_F1YqJaXBRpWK0iJPa69j4-V-ebvM,10951
36
+ diagram_to_iac/core/errors.py,sha256=gZwZocnIcBlS4YccIBdjG8XztRCtMe4Cu6KWxLzebDM,115
37
+ diagram_to_iac/core/issue_tracker.py,sha256=0eo289hn94yCoFCkLaYiDOIJBjk33i2dk6eLeYe_9YE,1659
38
+ diagram_to_iac/core/memory.py,sha256=zcuLrpXpQkB5R6gf0OSwBajvzEz2hc8NHEUv8F7qgHs,4309
39
+ diagram_to_iac/services/__init__.py,sha256=I5R8g7vYX4tCldRf1Jf9vEhm5mylc-MfFicqLnY6a3E,238
40
+ diagram_to_iac/services/observability.py,sha256=yxbnjMc4TO1SM8RZZMHf2E8uVOLpxFhiTjsTkymDi6Y,1856
41
+ diagram_to_iac/services/step_summary.py,sha256=g3MuMZ51IDubI0oWcF7qMvseNgDS6D90AsKK_1s5xDQ,2808
42
+ diagram_to_iac/tools/__init__.py,sha256=F2pcKhoPP5KDeQIGcqKXD1J30KFKc9qxMw1jxzrs9qY,434
43
+ diagram_to_iac/tools/api_utils.py,sha256=Iy08IyWdHH49DlCmJqgGfO4QLKT540pSgbJoN_YyfMY,7452
44
+ diagram_to_iac/tools/sec_utils.py,sha256=l8lSqEE6TS44s4JGy0urpWbZ18dfCB4dRgDC21BisU8,1934
45
+ diagram_to_iac/tools/text_utils.py,sha256=cnwOXWndd1QAlZC4zOO9jtF3_j4xozDLUTfzfJE9wWQ,9959
46
+ diagram_to_iac/tools/git/__init__.py,sha256=1V3_Kg_KzQ6er60N-1hqQeigkV8c4AvYq-R60_xmQ4o,1316
47
+ diagram_to_iac/tools/git/git.py,sha256=n5fULnOXtB-bX-TASZrYEZ19sowSgu2SZDW4ZziXz1M,43658
48
+ diagram_to_iac/tools/hello/__init__.py,sha256=f6GpkiQxvuGaRMm34yQilGACxUI4c5edJQTDjZtskjQ,891
49
+ diagram_to_iac/tools/hello/cal_utils.py,sha256=B-0iOJHNL1IgYPlWUdrAwEf1r9LUKBAnGyx1xQz05ZE,1507
50
+ diagram_to_iac/tools/hello/text_utils.py,sha256=ZaVQYw6GVqaq9EDTQfG3gTAudeN8CuFUUb7IETZhUCA,3952
51
+ diagram_to_iac/tools/llm_utils/__init__.py,sha256=IQ6cQprJtV4j5s_RVnt94rCGXfuvZ0PiTH6Y0gK242o,440
52
+ diagram_to_iac/tools/llm_utils/anthropic_driver.py,sha256=tb8HVGB6Ng9ZwImRJtSy2X0965ZE3Vm5g8HbMfcLyBY,3674
53
+ diagram_to_iac/tools/llm_utils/base_driver.py,sha256=sDUxk6_iNn3WU_HyRz2hW3YGTn8_7aucqEUnGTj2PeU,2503
54
+ diagram_to_iac/tools/llm_utils/gemini_driver.py,sha256=VO1mJ3o10oSFo5hTBs6h8TJsXyAuah4FRr6Ua-9aNYc,3794
55
+ diagram_to_iac/tools/llm_utils/openai_driver.py,sha256=ZqzXEYEutwqRw3qWx-GH85Mj2afxK4NlhCOMq_MabqQ,3962
56
+ diagram_to_iac/tools/llm_utils/router.py,sha256=WHGanstQjUlo2SmDFKGAL6xtIb3xXWlgZ5CIzHWN8I8,12906
57
+ diagram_to_iac/tools/shell/__init__.py,sha256=6UZjBcnbPabA6Qy7t4j-dCi3S2sE6sB2bTE9PIL98bA,292
58
+ diagram_to_iac/tools/shell/shell.py,sha256=SvgFHNPcwToq51jtDshnlvssFSwzex42Q_jY6I0L5M8,17771
59
+ diagram_to_iac/tools/tf/terraform.py,sha256=JFZTBy4jqwGK-bwRvdA9UxGChEhQSHXjo5DapxogF1w,36042
60
+ diagram_to_iac-0.9.0.dist-info/METADATA,sha256=3GFmSBjGWaO4xlM9ixhBjKxJSKMMM2kv49cY2TWgTxU,9061
61
+ diagram_to_iac-0.9.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
62
+ diagram_to_iac-0.9.0.dist-info/entry_points.txt,sha256=DfGCnmgWWGHtQpqU8VqcUWs5k_be-bfO67z1vOuTitA,277
63
+ diagram_to_iac-0.9.0.dist-info/top_level.txt,sha256=k1cV0YODiCUU46qlmbQaquMcbMXhNm05NZLxsinDUBA,15
64
+ diagram_to_iac-0.9.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -0,0 +1,6 @@
1
+ [console_scripts]
2
+ diagram-to-iac = diagram_to_iac.cli:main
3
+ git-agent = diagram_to_iac.actions.git_entry:main
4
+ r2d-agent = diagram_to_iac.r2d:main
5
+ supervisor-agent = diagram_to_iac.actions.supervisor_entry:main
6
+ terraform-agent = diagram_to_iac.actions.terraform_agent_entry:main
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
@@ -1,16 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: diagram-to-iac
3
- Version: 0.7.0
4
- Summary: Convert architecture diagrams into IaC modules
5
- Author-email: vindpro <admin@vindpro.com>
6
- Description-Content-Type: text/markdown
7
- Requires-Dist: anthropic==0.51.0
8
- Requires-Dist: google_api_python_client==2.169.0
9
- Requires-Dist: openai==1.79.0
10
- Requires-Dist: protobuf<5.0.0dev,>=3.19.5
11
- Requires-Dist: PyYAML==6.0.2
12
- Requires-Dist: Requests==2.32.3
13
- Requires-Dist: google-generativeai==0.3.1
14
-
15
- # diagram-to-iac
16
- an automated system that intelligently translates visual cloud infrastructure diagrams (specifically Azure) into deployable Infrastructure as Code (IaC), leveraging AI for analysis and GitHub for collaborative refinement.
@@ -1,32 +0,0 @@
1
- diagram_to_iac/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- diagram_to_iac/cli.py,sha256=uumG1frF42eCkdLIZxyxQB1x6lDwtG-qKL4vcHnLLXY,400
3
- diagram_to_iac/r2d.py,sha256=Ds2-uthEkKjahLOYAjE5Bv5jePd_PN3-cQt_mzuoyQQ,400
4
- diagram_to_iac/agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
- diagram_to_iac/agents/codegen_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
- diagram_to_iac/agents/consensus_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- diagram_to_iac/agents/deployment_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- diagram_to_iac/agents/github_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- diagram_to_iac/agents/interpretation_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- diagram_to_iac/agents/question_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- diagram_to_iac/agents/supervisor.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- diagram_to_iac/agents/vision_agent.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
- diagram_to_iac/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- diagram_to_iac/core/agent_base.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- diagram_to_iac/core/config.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- diagram_to_iac/core/memory.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- diagram_to_iac/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
- diagram_to_iac/tools/api_utils.py,sha256=Guq0lJZIc-ds46-2Id80lIOFdbN4vh_dEAM9ONSgS6M,4171
19
- diagram_to_iac/tools/cv_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- diagram_to_iac/tools/gh_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- diagram_to_iac/tools/sec_utils.py,sha256=Yujm-a0kWQIqw2EtbxXRFgqfCme7O8h57e5MxAdUYh4,1847
22
- diagram_to_iac/tools/tf_utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- diagram_to_iac/tools/llm_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
- diagram_to_iac/tools/llm_utils/anthropic_driver.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
- diagram_to_iac/tools/llm_utils/gemini_driver.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
- diagram_to_iac/tools/llm_utils/openai_driver.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- diagram_to_iac/tools/llm_utils/router.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
- diagram_to_iac-0.7.0.dist-info/METADATA,sha256=t5cuBDqCTnzXZWdm1EQIIkX4QKs-0QddVjWj7vG3Bko,693
29
- diagram_to_iac-0.7.0.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
30
- diagram_to_iac-0.7.0.dist-info/entry_points.txt,sha256=E_krzrW2-_KGXGPWFW9derAqSIQ7WYSd2pwrb7ap4j8,59
31
- diagram_to_iac-0.7.0.dist-info/top_level.txt,sha256=k1cV0YODiCUU46qlmbQaquMcbMXhNm05NZLxsinDUBA,15
32
- diagram_to_iac-0.7.0.dist-info/RECORD,,
@@ -1,2 +0,0 @@
1
- [console_scripts]
2
- diagram-to-iac = diagram_to_iac.cli:main