vbagent 0.1.1__py3-none-any.whl → 0.2.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.
@@ -1,28 +1,28 @@
1
- vbagent/__init__.py,sha256=r1lVIUy-n14VhPGONT7S6N6GJJc-loVKeOBBQ3ZQiic,90
2
- vbagent/agents/__init__.py,sha256=NR-ucB5QDKvKhBnsLwZTfCL762F0UFm8g44OAQUln8U,3851
1
+ vbagent/__init__.py,sha256=qgGNlY8UPE9vRsQam4fpw9LMRBxZG4HVRVneHl2waxo,6065
2
+ vbagent/agents/__init__.py,sha256=z1wOwmmYtPVDo5gNb7M-H-acZIr-CP3mvEvxHWE_l6g,6445
3
3
  vbagent/agents/alternate.py,sha256=KQXsFMtQPUAWElTFYbWvFf1RqP9HDjK3hA4s7PkIlPE,5791
4
4
  vbagent/agents/base.py,sha256=iwqAy5g-jkFHzkJ6eFpmori95ZVjKwfIbAGpWE8AomA,6477
5
5
  vbagent/agents/clarity_checker.py,sha256=Qa2eMMcPH08z4e8kpwK-eUp1WGXsplaVpfGbdfWY5Us,3710
6
6
  vbagent/agents/classifier.py,sha256=1gbr_yCHyObL1EeWZv1SYUdmV1cafoCfZSB0fqTyo1k,1148
7
- vbagent/agents/converter.py,sha256=dcTnkL2WkK9TtnFJMHrIms4XZ_1YNNTCONQU-2HAbj0,3266
7
+ vbagent/agents/converter.py,sha256=DTI5DctCoBMNvTe-sDCbmCsLSljheMrM4xgoaP43b9c,3306
8
8
  vbagent/agents/grammar_checker.py,sha256=niU33_z_V-LhrYNY494aA4yzB2SfoQQmhe4qf2fAQqI,3660
9
9
  vbagent/agents/idea.py,sha256=Qlu6C7yryUVLiwSKQrKfVKctLbK1ELZrlvK8LGSr12E,3827
10
10
  vbagent/agents/multi_variant.py,sha256=N3x-EtAIkDLRuoMHrrEcviVzSuSqEy0xvRznuFSuYlk,2158
11
- vbagent/agents/reviewer.py,sha256=ZDLaoxUCrdSCTy8Uab49o9e7-RPALhUvj6VDGTE4cXw,11951
11
+ vbagent/agents/reviewer.py,sha256=xjhblveC99pwBszmUyALMqkdYMETwZGbXMaTfe6ZpTs,11987
12
12
  vbagent/agents/scanner.py,sha256=haFmoAtRMTuKVWd8u4x9NuFYGkeIS0fkBChlbkTiqK8,4316
13
13
  vbagent/agents/selector.py,sha256=lFnrgG6Gw85M189o7q0BaGNhYbtGhV3KHydmTR9Pxmc,4751
14
14
  vbagent/agents/solution_checker.py,sha256=tRlTn8EgFtLQ-drz2mCDLZ9ZOLAQ4hP4kFRrANj4Q1k,3984
15
15
  vbagent/agents/tikz.py,sha256=4Iun65onPD2nrNXfGkhVnk5rj_R8E78CX_BhoABMeK8,7544
16
- vbagent/agents/tikz_checker.py,sha256=pgnbiIuZBWEmhgluhlSBCe4LjKpbX5EVrvzniITazxI,4824
17
- vbagent/agents/variant.py,sha256=zMg2h7zwBM2CH2IrwkQm6bbeOEmotNLKJ58n3LoM-bI,5683
16
+ vbagent/agents/tikz_checker.py,sha256=3ZP7OIdsccYszDcGWGF_1SxtLnQfV892oHsjm_7m8VA,15277
17
+ vbagent/agents/variant.py,sha256=J5QlCIa_CaTLkKgXgtCjsBGg62x2Mp4ivtqgpNAyLdA,7964
18
18
  vbagent/cli/__init__.py,sha256=6rRsugM0JyxdwUZMFfdJxLwJ-TX-VwpR-5oiWP32EZ0,31
19
19
  vbagent/cli/alternate.py,sha256=GNynCs5S1XYJhLRgL_BsTfelrkgfNbIACtp4UUiHArU,5448
20
20
  vbagent/cli/batch.py,sha256=RO9O_Qw0LOT6U0lTbM8oZeWWF4tBkSFBOdAizG-kJGA,23322
21
- vbagent/cli/check.py,sha256=E_PU_p1l-wIxPlxHH6lk_jUuNRndNHZhHd9NJlQKMqE,110898
21
+ vbagent/cli/check.py,sha256=C6rZ65iYynHV0_n5TAdqEIo_P9ZOj2oxhGuQsk07G5w,142750
22
22
  vbagent/cli/classify.py,sha256=f8RxAimwLQhsY_cPz1ObEehbb6SB-Wv6Dx4y5KCasho,3542
23
- vbagent/cli/common.py,sha256=CKcQ69JLaBE7KepRoN0TuongXBWnTqodyY079T8p98Y,23585
23
+ vbagent/cli/common.py,sha256=iHr286IxhZpHvIU9gECQUWyaghp18fAPrIhoIPZEuNE,25861
24
24
  vbagent/cli/config.py,sha256=9-Sy4kQ7ozr9uKiohrNjbvJeGZrZ1p61-CFkJ6FDLrU,5722
25
- vbagent/cli/convert.py,sha256=nbJD6fiOel7ivQQnKGb4VfufXXJl4dtvqjjzGPHEjqQ,7971
25
+ vbagent/cli/convert.py,sha256=r3LM9GHv1p1GOBRgtJmo3hpbxQEBZwc6Vf-QytI43CE,7991
26
26
  vbagent/cli/idea.py,sha256=BQ6WCJ7MlD8U1xyGs1cBsQa-ppGVD_J3_HGMNklOP5o,5166
27
27
  vbagent/cli/main.py,sha256=GaR7QWHD7Wf5p8mqHu9JLaDfBxqAqEJf4n2L7-pK4gg,3157
28
28
  vbagent/cli/process.py,sha256=31SRyVZzXdGthwlWZa4IPdX5ioye2cZgOgcBLAgk1Sc,41874
@@ -31,7 +31,7 @@ vbagent/cli/scan.py,sha256=ALtszwhahIu3sYNSIKWAcDz_WEssAgAy7FfYkjta3vs,4502
31
31
  vbagent/cli/tikz.py,sha256=pEA0QYOrGzjkKdaV3qD_X9JEgrqDQZU2wjoT77am3-s,4113
32
32
  vbagent/cli/variant.py,sha256=fTh7jjcWC8UUXxxZjb5Hk6FY4CdOIjdd15Ktb5unVMA,9474
33
33
  vbagent/config.py,sha256=zA0JZQoy2lsdG7wANj-_EDjjDW5Xtf86BwNi_K1lANA,9095
34
- vbagent/models/__init__.py,sha256=sYhUcFMs0SjcjsQCEuPLpkfDEiysH8dJJ20Qg6ch3C4,1655
34
+ vbagent/models/__init__.py,sha256=jslnT_VhptRfAtDsCgHMDvQIeqWJNZVSANprQzPDAu4,2878
35
35
  vbagent/models/batch.py,sha256=-39pKC0-6uWRiN33RRQmqSTUjglaPbAqN2KvztK4Cq8,13228
36
36
  vbagent/models/classification.py,sha256=8dxg4rJ3S_7njZ2CCbLMFlRdWINYcaOJDqKdDsWbHOs,1507
37
37
  vbagent/models/diff.py,sha256=otaF7RiQatdvCoowpyiBbCAzHJV1JxWYOoniRO2aIsM,13093
@@ -40,11 +40,11 @@ vbagent/models/pipeline.py,sha256=ul4LUpxoqehGiPeF4IE0IJk-4-Kn3o39-T2DtdpM3rs,87
40
40
  vbagent/models/review.py,sha256=gOsoIFMkKhAUNjT8btlPkWtDCtx7rWiY4xKSQOxNccQ,2615
41
41
  vbagent/models/scan.py,sha256=5-L5x0L7z7TL0i992nHlA5R7AtVihQw4sF14N2hjQ1w,470
42
42
  vbagent/models/version_store.py,sha256=HzISHfuQjl_7E61U826QuAhqd19li9xvG3xyiQhmJRE,32590
43
- vbagent/prompts/__init__.py,sha256=kFKSHBhhK5U0rzxsUuXXF3kyO1vOcxLGH0a7UaxQVRc,41
43
+ vbagent/prompts/__init__.py,sha256=iccSjAM8ySellDF-5wvj3VfdPXlKEZQKBpY4Wwq2Jb0,3787
44
44
  vbagent/prompts/alternate.py,sha256=4CT_dbTt-weIsQmTgXUr3n2Ppmnvp55woxxl6ptUK48,4070
45
45
  vbagent/prompts/clarity_checker.py,sha256=YcP5CmIhjP6EeLM-NDEZ5sSExMjiamE9KPK_d25-4qg,1642
46
46
  vbagent/prompts/classifier.py,sha256=BAop4YDcP4VnHJKgppnXEOilVJ7CpoNru5HJA0jrWU0,1304
47
- vbagent/prompts/converter.py,sha256=TnFpEN_FkJhJwHRjx6okO0v675zX0aXSxPOsMliFlpo,4944
47
+ vbagent/prompts/converter.py,sha256=tzO7IiymfNWzuoLr2tbWOwrbheHHK780MTu0qbuT0RI,12274
48
48
  vbagent/prompts/grammar_checker.py,sha256=AYqtscYZYPgQJ0_rVCtos8OwqYSwyFSdP48z5d2YxJ4,1571
49
49
  vbagent/prompts/idea.py,sha256=sYtCCBoqgwlei2WESaZyswn3AgShnHPHeQTUfDQxbIg,5151
50
50
  vbagent/prompts/reviewer.py,sha256=81xe5N-PZk1lML4ti_R7y1PNUW5_XG5DIzH_thSUAyQ,5046
@@ -58,20 +58,20 @@ vbagent/prompts/scanner/passage.py,sha256=S-26mg6gC7mSHjk8PFH2c8vKg40VNlLfnFhdJ0
58
58
  vbagent/prompts/scanner/subjective.py,sha256=lgBHUzkMR9F37gI9oUnvjVpaDqe_9_TnO07awFEWT78,2992
59
59
  vbagent/prompts/solution_checker.py,sha256=L0H3GLNtNAGb36_FL8vkPwmhFSStfKVDilPOSpzQLU4,3919
60
60
  vbagent/prompts/tikz.py,sha256=PAGdye_dHFTf7FBX8O0MYNnb3r8OaxUgoD0E2TTtjgI,18102
61
- vbagent/prompts/tikz_checker.py,sha256=JIML1h4GOoLrAkwxTR26wBevYTxzm7v_yiSYHnujNZw,7730
61
+ vbagent/prompts/tikz_checker.py,sha256=VLmctVUlXgiqKlFeImnIci6kGnrnzFYPs8vVsk0Nz5o,10268
62
62
  vbagent/prompts/variants/__init__.py,sha256=evniFs1M6qnarvU-tjaZie5vWqBNgEdgEprPmJSzRVQ,903
63
63
  vbagent/prompts/variants/conceptual.py,sha256=JKgW8_i4n41FXAfHzieUceGgVO2HaGtdK9pc_iQSkKI,2919
64
64
  vbagent/prompts/variants/conceptual_calculus.py,sha256=XU49vqqINGKHxmPU-afkYz1VNZif8_iJEWmqC3JbBp4,3234
65
65
  vbagent/prompts/variants/context.py,sha256=rxTIOyqQzfDbLTZCfNuh0ChzfoS9lJhpO4R0wdPsZ8w,2710
66
66
  vbagent/prompts/variants/multi_context.py,sha256=HcYcadyJaVYUiEWOddCJSmENn6ggaQ2wP3VfUGnje4o,3078
67
67
  vbagent/prompts/variants/numerical.py,sha256=d0Y7MopbCTbJ7QIaiF17Z8gguud7rRFPx3oqatyHKz8,2828
68
- vbagent/references/__init__.py,sha256=BsJrB4Uf8Xbk0f6lgHh4RdSaI9G83bmcbUcE9lxPkw8,156
68
+ vbagent/references/__init__.py,sha256=tAmeYPrs8b_TrUUGhrfUe0WXF0LbJcNXtYfalI2LiJY,1931
69
69
  vbagent/references/context.py,sha256=uUv3zALWHcP9C5jpVdj68lar7Mfoa7x8ICfoh5u2nH8,12652
70
70
  vbagent/references/store.py,sha256=caCFfw9cmtEI_b6TJeNRnmED9MLDiwpwDPouvtn2Ecc,10756
71
71
  vbagent/references/tikz_store.py,sha256=FQl_v_4pD8BvIbJEpI3dQF2IniF2IZKynk7bmNy-IDw,17473
72
72
  vbagent/templates/__init__.py,sha256=HhQO2KvTbxPfgyMzC7cTlY_vqSI46oWO6E2Ljz-mpgQ,152
73
73
  vbagent/templates/agentic_context.py,sha256=qB3ofjmmO2dFgq2RZeE7_0w6oXOVMImM1IMK91G-pfs,6246
74
- vbagent-0.1.1.dist-info/METADATA,sha256=_BUULcFrmaJliDWa6g17jczELmmCP0K4nltp7k1sJQs,9087
75
- vbagent-0.1.1.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
76
- vbagent-0.1.1.dist-info/entry_points.txt,sha256=94i1UBZsJ9uPiLHJW1CEk8Oh7zfWdp2aWZmWRGLCjAk,49
77
- vbagent-0.1.1.dist-info/RECORD,,
74
+ vbagent-0.2.0.dist-info/METADATA,sha256=b2gN8k6U99eviNK-jbf0rv0adL3KnUQzxdPajc7Krz8,30323
75
+ vbagent-0.2.0.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
76
+ vbagent-0.2.0.dist-info/entry_points.txt,sha256=94i1UBZsJ9uPiLHJW1CEk8Oh7zfWdp2aWZmWRGLCjAk,49
77
+ vbagent-0.2.0.dist-info/RECORD,,
@@ -1,383 +0,0 @@
1
- Metadata-Version: 2.3
2
- Name: vbagent
3
- Version: 0.1.1
4
- Summary: CLI tool for physics question image scanning, categorization, and variant generation
5
- Author: vaibhavblayer
6
- Author-email: vaibhavblayer@gmail.com
7
- Requires-Python: >=3.12
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.12
10
- Classifier: Programming Language :: Python :: 3.13
11
- Provides-Extra: dev
12
- Requires-Dist: click (>=8.1.0)
13
- Requires-Dist: hypothesis (>=6.0.0) ; extra == "dev"
14
- Requires-Dist: openai-agents (>=0.6.2)
15
- Requires-Dist: pillow (>=10.0.0)
16
- Requires-Dist: pydantic (>=2.0.0)
17
- Requires-Dist: pytest (>=8.0.0) ; extra == "dev"
18
- Requires-Dist: rich (>=13.0.0)
19
- Description-Content-Type: text/markdown
20
-
21
- # VBAgent
22
-
23
- A multi-agent CLI tool for processing physics question images. Supports classification, LaTeX extraction, TikZ diagram generation, variant creation, and format conversion.
24
-
25
- ## Installation
26
-
27
- ### From PyPI
28
-
29
- ```bash
30
- pip install vbagent
31
- ```
32
-
33
- ### From Source
34
-
35
- ```bash
36
- # Clone the repository
37
- git clone https://github.com/vaibhavblayer/vbagent.git
38
- cd vbagent
39
-
40
- # Install with pip
41
- pip install .
42
-
43
- # Or install in development mode
44
- pip install -e .
45
-
46
- # Or using Poetry
47
- poetry install
48
- ```
49
-
50
- ## Requirements
51
-
52
- - Python 3.12+
53
- - OpenAI API key (set as `OPENAI_API_KEY` environment variable)
54
-
55
- ## Configuration
56
-
57
- Set your OpenAI API key:
58
-
59
- ```bash
60
- export OPENAI_API_KEY="your-api-key"
61
- ```
62
-
63
- Or configure via the CLI:
64
-
65
- ```bash
66
- vbagent config set api-key YOUR_API_KEY
67
- ```
68
-
69
- ## Usage
70
-
71
- ### Quick Start
72
-
73
- ```bash
74
- # Scan a physics question image to LaTeX
75
- vbagent scan -i question.png -o output.tex
76
-
77
- # Classify a question type
78
- vbagent classify -i question.png
79
-
80
- # Generate TikZ diagram from image
81
- vbagent tikz -i diagram.png -o diagram.tex
82
-
83
- # Generate problem variants
84
- vbagent variant -t problem.tex -o variants.tex
85
- ```
86
-
87
- ### Commands
88
-
89
- | Command | Description |
90
- |---------|-------------|
91
- | `classify` | Classify physics question image type |
92
- | `scan` | Extract LaTeX from question image |
93
- | `tikz` | Generate TikZ/PGF code for diagrams |
94
- | `idea` | Extract physics concepts and ideas |
95
- | `alternate` | Generate alternative solutions |
96
- | `variant` | Generate problem variants (numerical, conceptual, context) |
97
- | `convert` | Convert between question formats |
98
- | `process` | Run full processing pipeline |
99
- | `batch` | Batch process multiple images with resume capability |
100
- | `ref` | Manage reference context files |
101
- | `config` | Configure models and settings |
102
- | `check` | QA review with interactive approval |
103
-
104
- ### Batch Processing
105
-
106
- Process multiple images with automatic resume on interruption:
107
-
108
- ```bash
109
- # Initialize batch processing
110
- vbagent batch init -i ./images -o ./output
111
-
112
- # Continue processing (resumes from where it left off)
113
- vbagent batch continue
114
-
115
- # Check status
116
- vbagent batch status
117
- ```
118
-
119
- ### Full Pipeline
120
-
121
- Process a single image through the complete pipeline:
122
-
123
- ```bash
124
- # Basic processing (classify + scan + tikz)
125
- vbagent process -i question.png
126
-
127
- # With ideas extraction
128
- vbagent process -i question.png --ideas
129
-
130
- # With alternate solutions
131
- vbagent process -i question.png --alternate
132
-
133
- # With variant generation
134
- vbagent process -i question.png --variants numerical,context
135
-
136
- # Full pipeline with all features
137
- vbagent process -i question.png --ideas --alternate --variants numerical,context,conceptual
138
- ```
139
-
140
- Process a range of images:
141
-
142
- ```bash
143
- # Process Problem_1.png through Problem_5.png
144
- vbagent process -i images/Problem_1.png -r 1 5
145
-
146
- # Process range with parallel workers (faster)
147
- vbagent process -i images/Problem_1.png -r 1 10 --parallel 3
148
-
149
- # Process range with all features
150
- vbagent process -i images/Problem_1.png -r 1 5 --ideas --alternate --variants numerical
151
- ```
152
-
153
- Process TeX file with multiple items:
154
-
155
- ```bash
156
- # Process items 1-5 from a TeX file
157
- vbagent process -t problems.tex --range 1 5
158
-
159
- # With alternate solutions and ideas
160
- vbagent process -t problems.tex --range 1 5 --alternate --ideas
161
- ```
162
-
163
- Custom output directory:
164
-
165
- ```bash
166
- vbagent process -i question.png -o ./my_output
167
- ```
168
-
169
- #### Process Command Options
170
-
171
- | Option | Description |
172
- |--------|-------------|
173
- | `-i, --image` | Image file to process |
174
- | `-t, --tex` | TeX file containing problems |
175
- | `-r, --range` | Range of items to process (1-based, inclusive) |
176
- | `--variants` | Variant types (comma-separated: numerical,context,conceptual,calculus) |
177
- | `--alternate` | Generate alternate solutions |
178
- | `--ideas` | Extract physics concepts |
179
- | `--ref` | Reference directories for TikZ |
180
- | `-o, --output` | Output directory (default: agentic) |
181
- | `--context` | Use reference context (default: yes) |
182
- | `-p, --parallel` | Parallel workers for batch (default: 1, max: 10) |
183
-
184
- #### Output Structure
185
-
186
- ```
187
- agentic/
188
- ├── scans/problem_1.tex # Extracted LaTeX
189
- ├── classifications/problem_1.json # Question metadata
190
- ├── tikz/problem_1.tex # Generated TikZ diagrams
191
- ├── ideas/problem_1.json # Physics concepts (if --ideas)
192
- ├── alternates/problem_1.tex # Alternate solutions (if --alternate)
193
- ├── variants/
194
- │ ├── numerical/problem_1.tex # Numerical variants
195
- │ ├── context/problem_1.tex # Context variants
196
- │ └── conceptual/problem_1.tex # Conceptual variants
197
- └── CONTEXT.md # Documentation for AI agents
198
- ```
199
-
200
- ### Help
201
-
202
- ```bash
203
- # General help
204
- vbagent --help
205
-
206
- # Command-specific help
207
- vbagent scan --help
208
- vbagent variant --help
209
- ```
210
-
211
- ### Scan Command
212
-
213
- Extract LaTeX from physics question images:
214
-
215
- ```bash
216
- # Basic scan with auto-classification
217
- vbagent scan -i question.png
218
-
219
- # Save output to file
220
- vbagent scan -i question.png -o output.tex
221
-
222
- # Override question type (skip classification)
223
- vbagent scan -i question.png --type mcq_sc
224
- ```
225
-
226
- ### Variant Command
227
-
228
- Generate problem variants with controlled modifications:
229
-
230
- ```bash
231
- # Numerical variant (change numbers only)
232
- vbagent variant -t problem.tex --type numerical
233
-
234
- # Context variant (change scenario)
235
- vbagent variant -t problem.tex --type context
236
-
237
- # Generate multiple variants
238
- vbagent variant -t problem.tex --type numerical --count 3
239
-
240
- # Process range of items
241
- vbagent variant -t problems.tex --type numerical -r 1 5
242
-
243
- # Multi-context variant (combine problems)
244
- vbagent variant --type multi --context p1.tex --context p2.tex -o combined.tex
245
-
246
- # From image (scans first)
247
- vbagent variant -i image.png --type numerical -o variant.tex
248
- ```
249
-
250
- #### Variant Types
251
-
252
- | Type | Description |
253
- |------|-------------|
254
- | `numerical` | Change only numbers, keep context |
255
- | `context` | Change scenario, keep numbers |
256
- | `conceptual` | Change physics concept |
257
- | `calculus` | Add calculus elements |
258
- | `multi` | Combine multiple problems |
259
-
260
- ### Alternate Command
261
-
262
- Generate alternative solution methods:
263
-
264
- ```bash
265
- # Generate one alternate solution
266
- vbagent alternate -t problem.tex
267
-
268
- # Generate multiple alternates
269
- vbagent alternate -t problem.tex -n 3
270
-
271
- # With ideas context
272
- vbagent alternate -t problem.tex --ideas ideas.json
273
-
274
- # Save to file
275
- vbagent alternate -t problem.tex -n 2 -o alternates.tex
276
- ```
277
-
278
- ### Check Command (QA Review)
279
-
280
- AI-powered quality review with interactive approval workflow:
281
-
282
- ```bash
283
- # Start a review session (random 5 problems)
284
- vbagent check run
285
-
286
- # Review more problems
287
- vbagent check run -c 10
288
-
289
- # Review specific problem
290
- vbagent check run -p Problem_42
291
-
292
- # Review from specific directory
293
- vbagent check run -d ./my_output
294
-
295
- # View suggestion history
296
- vbagent check history
297
-
298
- # Apply a stored suggestion
299
- vbagent check apply 42
300
-
301
- # Resume interrupted session
302
- vbagent check resume abc123
303
- ```
304
-
305
- #### Check Subcommands
306
-
307
- | Subcommand | Description |
308
- |------------|-------------|
309
- | `run` | Start a random QA review session |
310
- | `history` | View suggestion history |
311
- | `apply` | Apply a stored suggestion by ID |
312
- | `resume` | Resume an interrupted session |
313
- | `solution` | Check solution correctness |
314
- | `grammar` | Check grammar and spelling |
315
- | `clarity` | Check clarity and conciseness |
316
- | `tikz` | Check TikZ diagram code |
317
-
318
- ### TikZ Command
319
-
320
- Generate TikZ/PGF code for diagrams:
321
-
322
- ```bash
323
- # From image
324
- vbagent tikz -i diagram.png
325
-
326
- # With description
327
- vbagent tikz -d "A block on an inclined plane with friction"
328
-
329
- # Save to file
330
- vbagent tikz -i diagram.png -o diagram.tex
331
-
332
- # With reference directories
333
- vbagent tikz -i diagram.png --ref ./tikz_examples/
334
- ```
335
-
336
- ### Idea Command
337
-
338
- Extract physics concepts and ideas from problems:
339
-
340
- ```bash
341
- # From TeX file
342
- vbagent idea -t problem.tex
343
-
344
- # Save to JSON
345
- vbagent idea -t problem.tex -o ideas.json
346
- ```
347
-
348
- ## Supported Question Types
349
-
350
- - MCQ Single Correct
351
- - MCQ Multiple Correct
352
- - Assertion-Reason
353
- - Match the Following
354
- - Passage/Comprehension
355
- - Subjective/Numerical
356
-
357
- ## Variant Types
358
-
359
- - **Numerical**: Change numerical values while preserving physics
360
- - **Conceptual**: Modify the underlying concept
361
- - **Context**: Change the real-world scenario
362
-
363
- ## Platform Support
364
-
365
- Works on macOS, Windows, and Linux. Sleep prevention during batch processing is supported on all platforms.
366
-
367
- ## Development
368
-
369
- ```bash
370
- # Install dev dependencies
371
- pip install -e ".[dev]"
372
-
373
- # Run tests
374
- pytest
375
-
376
- # Run specific test
377
- pytest tests/test_scanner.py -v
378
- ```
379
-
380
- ## License
381
-
382
- MIT
383
-