icrl-py 0.1.0__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.
Files changed (352) hide show
  1. icrl_py-0.1.0/.codex/environments/environment.toml +12 -0
  2. icrl_py-0.1.0/.gitignore +36 -0
  3. icrl_py-0.1.0/.python-version +1 -0
  4. icrl_py-0.1.0/LICENSE +21 -0
  5. icrl_py-0.1.0/PKG-INFO +645 -0
  6. icrl_py-0.1.0/README.md +590 -0
  7. icrl_py-0.1.0/docs/api-reference/agent.mdx +49 -0
  8. icrl_py-0.1.0/docs/api-reference/anthropic-vertex-provider.mdx +35 -0
  9. icrl_py-0.1.0/docs/api-reference/curation-manager.mdx +26 -0
  10. icrl_py-0.1.0/docs/api-reference/embedder.mdx +38 -0
  11. icrl_py-0.1.0/docs/api-reference/environment.mdx +21 -0
  12. icrl_py-0.1.0/docs/api-reference/litellm-provider.mdx +32 -0
  13. icrl_py-0.1.0/docs/api-reference/llm-provider.mdx +13 -0
  14. icrl_py-0.1.0/docs/api-reference/message.mdx +14 -0
  15. icrl_py-0.1.0/docs/api-reference/overview.mdx +48 -0
  16. icrl_py-0.1.0/docs/api-reference/step-context.mdx +38 -0
  17. icrl_py-0.1.0/docs/api-reference/step.mdx +15 -0
  18. icrl_py-0.1.0/docs/api-reference/trajectory-database.mdx +51 -0
  19. icrl_py-0.1.0/docs/api-reference/trajectory-retriever.mdx +22 -0
  20. icrl_py-0.1.0/docs/api-reference/trajectory.mdx +24 -0
  21. icrl_py-0.1.0/docs/api-reference/typescript-package.mdx +59 -0
  22. icrl_py-0.1.0/docs/core-concepts/curation.mdx +32 -0
  23. icrl_py-0.1.0/docs/core-concepts/icrl-algorithm.mdx +43 -0
  24. icrl_py-0.1.0/docs/core-concepts/react-loop.mdx +40 -0
  25. icrl_py-0.1.0/docs/core-concepts/trajectory-database.mdx +40 -0
  26. icrl_py-0.1.0/docs/docs.json +129 -0
  27. icrl_py-0.1.0/docs/examples/file-system-agent.mdx +49 -0
  28. icrl_py-0.1.0/docs/examples/harbor-coding-agent.mdx +39 -0
  29. icrl_py-0.1.0/docs/examples/testing-with-mock-llm.mdx +32 -0
  30. icrl_py-0.1.0/docs/guides/batch-training.mdx +31 -0
  31. icrl_py-0.1.0/docs/guides/cli.mdx +176 -0
  32. icrl_py-0.1.0/docs/guides/convex-provider.mdx +56 -0
  33. icrl_py-0.1.0/docs/guides/custom-environments.mdx +49 -0
  34. icrl_py-0.1.0/docs/guides/custom-llm-providers.mdx +48 -0
  35. icrl_py-0.1.0/docs/guides/prompt-templates.mdx +43 -0
  36. icrl_py-0.1.0/docs/guides/typescript-package.mdx +67 -0
  37. icrl_py-0.1.0/docs/guides/web-example.mdx +78 -0
  38. icrl_py-0.1.0/docs/icon.png +0 -0
  39. icrl_py-0.1.0/docs/images/hero-dark.svg +66 -0
  40. icrl_py-0.1.0/docs/images/hero-light.svg +66 -0
  41. icrl_py-0.1.0/docs/installation.mdx +72 -0
  42. icrl_py-0.1.0/docs/introduction.mdx +49 -0
  43. icrl_py-0.1.0/docs/logo/logo_dark.png +0 -0
  44. icrl_py-0.1.0/docs/logo/logo_light.png +0 -0
  45. icrl_py-0.1.0/docs/quickstart.mdx +86 -0
  46. icrl_py-0.1.0/examples/README.md +37 -0
  47. icrl_py-0.1.0/examples/__init__.py +3 -0
  48. icrl_py-0.1.0/examples/basic_anthropic_demo.py +79 -0
  49. icrl_py-0.1.0/examples/basic_openai_demo.py +62 -0
  50. icrl_py-0.1.0/examples/codebase_patterns_demo/.gitignore +8 -0
  51. icrl_py-0.1.0/examples/codebase_patterns_demo/README.md +202 -0
  52. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/PATTERNS.md +186 -0
  53. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/_reference/README.md +44 -0
  54. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/_reference/comparison.md +166 -0
  55. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/_reference/orders_model.py +96 -0
  56. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/_reference/orders_routes.py +132 -0
  57. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/_reference/orders_service.py +215 -0
  58. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/__init__.py +3 -0
  59. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/core/__init__.py +37 -0
  60. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/core/exceptions.py +132 -0
  61. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/core/logging.py +89 -0
  62. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/core/response.py +101 -0
  63. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/main.py +128 -0
  64. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/__init__.py +70 -0
  65. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/category.py +83 -0
  66. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/inventory.py +90 -0
  67. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/inventory.py.icrl +90 -0
  68. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/order.py +92 -0
  69. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/product.py +98 -0
  70. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/models/user.py +84 -0
  71. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/routes/__init__.py +30 -0
  72. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/routes/inventory.py +127 -0
  73. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/routes/inventory.py.icrl +127 -0
  74. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/routes/products.py +148 -0
  75. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/routes/users.py +110 -0
  76. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/__init__.py +49 -0
  77. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/category_service.py +244 -0
  78. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/inventory_service.py +186 -0
  79. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/order_service.py +206 -0
  80. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/product_service.py +287 -0
  81. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/app/services/user_service.py +217 -0
  82. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/pyproject.toml +27 -0
  83. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/tests/__init__.py +1 -0
  84. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/tests/conftest.py +10 -0
  85. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/tests/test_products.py +148 -0
  86. icrl_py-0.1.0/examples/codebase_patterns_demo/mock_codebase/tests/test_users.py +108 -0
  87. icrl_py-0.1.0/examples/codebase_patterns_demo/run_demo.sh +35 -0
  88. icrl_py-0.1.0/examples/codebase_patterns_demo/setup_demo.py +225 -0
  89. icrl_py-0.1.0/examples/codebase_patterns_demo/validate_patterns.py +187 -0
  90. icrl_py-0.1.0/examples/demo_with_real_llm.py +234 -0
  91. icrl_py-0.1.0/examples/exception_handling_demo/.gitignore +5 -0
  92. icrl_py-0.1.0/examples/exception_handling_demo/README.md +109 -0
  93. icrl_py-0.1.0/examples/exception_handling_demo/evaluate_responses.py +332 -0
  94. icrl_py-0.1.0/examples/exception_handling_demo/run_demo.py +373 -0
  95. icrl_py-0.1.0/examples/exception_handling_demo/run_quick_demo.sh +32 -0
  96. icrl_py-0.1.0/examples/exception_handling_demo/scenarios/policies.md +63 -0
  97. icrl_py-0.1.0/examples/exception_handling_demo/scenarios/seed_decisions.json +112 -0
  98. icrl_py-0.1.0/examples/exception_handling_demo/scenarios/test_scenarios.json +112 -0
  99. icrl_py-0.1.0/examples/exception_handling_demo/setup_demo.py +203 -0
  100. icrl_py-0.1.0/examples/file_api_env.py +321 -0
  101. icrl_py-0.1.0/examples/it_support_demo/.gitignore +9 -0
  102. icrl_py-0.1.0/examples/it_support_demo/README.md +94 -0
  103. icrl_py-0.1.0/examples/it_support_demo/evaluate_responses.py +248 -0
  104. icrl_py-0.1.0/examples/it_support_demo/knowledge_base/official_docs.md +69 -0
  105. icrl_py-0.1.0/examples/it_support_demo/run_demo.py +358 -0
  106. icrl_py-0.1.0/examples/it_support_demo/run_quick_demo.sh +29 -0
  107. icrl_py-0.1.0/examples/it_support_demo/scenarios/seed_tickets.json +102 -0
  108. icrl_py-0.1.0/examples/it_support_demo/scenarios/test_tickets.json +82 -0
  109. icrl_py-0.1.0/examples/it_support_demo/setup_demo.py +200 -0
  110. icrl_py-0.1.0/examples/mock_llm.py +185 -0
  111. icrl_py-0.1.0/examples/preference_learning_demo/README.md +166 -0
  112. icrl_py-0.1.0/examples/preference_learning_demo/run_demo.py +379 -0
  113. icrl_py-0.1.0/examples/preference_learning_demo/scenarios/seed_interactions.json +107 -0
  114. icrl_py-0.1.0/examples/preference_learning_demo/scenarios/test_requests.json +226 -0
  115. icrl_py-0.1.0/examples/preference_learning_demo/setup_demo.py +231 -0
  116. icrl_py-0.1.0/examples/preference_learning_demo/user_profiles/expert_terse.json +26 -0
  117. icrl_py-0.1.0/examples/preference_learning_demo/user_profiles/learner_detailed.json +26 -0
  118. icrl_py-0.1.0/examples/preference_learning_demo/user_profiles/manager_summary.json +29 -0
  119. icrl_py-0.1.0/examples/tasks.py +95 -0
  120. icrl_py-0.1.0/icrl-ts/.gitignore +1 -0
  121. icrl_py-0.1.0/icrl-ts/LICENSE +21 -0
  122. icrl_py-0.1.0/icrl-ts/README.md +97 -0
  123. icrl_py-0.1.0/icrl-ts/bun.lock +839 -0
  124. icrl_py-0.1.0/icrl-ts/examples/README.md +45 -0
  125. icrl_py-0.1.0/icrl-ts/examples/_demo_shared.ts +86 -0
  126. icrl_py-0.1.0/icrl-ts/examples/_live_env.ts +60 -0
  127. icrl_py-0.1.0/icrl-ts/examples/anthropic-demo.ts +61 -0
  128. icrl_py-0.1.0/icrl-ts/examples/incident-response-demo.ts +110 -0
  129. icrl_py-0.1.0/icrl-ts/examples/openai-demo.ts +57 -0
  130. icrl_py-0.1.0/icrl-ts/examples/support-triage-demo.ts +113 -0
  131. icrl_py-0.1.0/icrl-ts/examples/web-convex-demo.ts +82 -0
  132. icrl_py-0.1.0/icrl-ts/package-lock.json +5543 -0
  133. icrl_py-0.1.0/icrl-ts/package.json +108 -0
  134. icrl_py-0.1.0/icrl-ts/src/adapters/filesystem.ts +306 -0
  135. icrl_py-0.1.0/icrl-ts/src/adapters/index.ts +6 -0
  136. icrl_py-0.1.0/icrl-ts/src/agent.ts +230 -0
  137. icrl_py-0.1.0/icrl-ts/src/curation.ts +111 -0
  138. icrl_py-0.1.0/icrl-ts/src/database.ts +297 -0
  139. icrl_py-0.1.0/icrl-ts/src/index.ts +118 -0
  140. icrl_py-0.1.0/icrl-ts/src/loop.ts +195 -0
  141. icrl_py-0.1.0/icrl-ts/src/models.ts +264 -0
  142. icrl_py-0.1.0/icrl-ts/src/protocols.ts +183 -0
  143. icrl_py-0.1.0/icrl-ts/src/providers/anthropic-vertex.ts +132 -0
  144. icrl_py-0.1.0/icrl-ts/src/providers/anthropic.ts +90 -0
  145. icrl_py-0.1.0/icrl-ts/src/providers/index.ts +12 -0
  146. icrl_py-0.1.0/icrl-ts/src/providers/openai.ts +122 -0
  147. icrl_py-0.1.0/icrl-ts/src/retriever.ts +104 -0
  148. icrl_py-0.1.0/icrl-ts/src/storage.ts +238 -0
  149. icrl_py-0.1.0/icrl-ts/tests/README.md +36 -0
  150. icrl_py-0.1.0/icrl-ts/tests/_shared.ts +110 -0
  151. icrl_py-0.1.0/icrl-ts/tests/basic.ts +65 -0
  152. icrl_py-0.1.0/icrl-ts/tests/batch.ts +72 -0
  153. icrl_py-0.1.0/icrl-ts/tests/curation.ts +77 -0
  154. icrl_py-0.1.0/icrl-ts/tests/database.ts +75 -0
  155. icrl_py-0.1.0/icrl-ts/tests/loop.ts +70 -0
  156. icrl_py-0.1.0/icrl-ts/tests/models.ts +95 -0
  157. icrl_py-0.1.0/icrl-ts/tests/providers.ts +108 -0
  158. icrl_py-0.1.0/icrl-ts/tests/retriever.ts +92 -0
  159. icrl_py-0.1.0/icrl-ts/tsconfig.json +26 -0
  160. icrl_py-0.1.0/icrl-ts/web-example/.gitignore +41 -0
  161. icrl_py-0.1.0/icrl-ts/web-example/README.md +186 -0
  162. icrl_py-0.1.0/icrl-ts/web-example/bun.lock +1648 -0
  163. icrl_py-0.1.0/icrl-ts/web-example/components.json +22 -0
  164. icrl_py-0.1.0/icrl-ts/web-example/convex/README.md +90 -0
  165. icrl_py-0.1.0/icrl-ts/web-example/convex/_generated/api.d.ts +57 -0
  166. icrl_py-0.1.0/icrl-ts/web-example/convex/_generated/api.js +23 -0
  167. icrl_py-0.1.0/icrl-ts/web-example/convex/_generated/dataModel.d.ts +60 -0
  168. icrl_py-0.1.0/icrl-ts/web-example/convex/_generated/server.d.ts +143 -0
  169. icrl_py-0.1.0/icrl-ts/web-example/convex/_generated/server.js +93 -0
  170. icrl_py-0.1.0/icrl-ts/web-example/convex/databases.ts +169 -0
  171. icrl_py-0.1.0/icrl-ts/web-example/convex/embeddings.ts +183 -0
  172. icrl_py-0.1.0/icrl-ts/web-example/convex/examples.ts +138 -0
  173. icrl_py-0.1.0/icrl-ts/web-example/convex/schema.ts +89 -0
  174. icrl_py-0.1.0/icrl-ts/web-example/convex/suggestions.ts +115 -0
  175. icrl_py-0.1.0/icrl-ts/web-example/convex/trajectories.ts +189 -0
  176. icrl_py-0.1.0/icrl-ts/web-example/convex/tsconfig.json +25 -0
  177. icrl_py-0.1.0/icrl-ts/web-example/eslint.config.mjs +18 -0
  178. icrl_py-0.1.0/icrl-ts/web-example/next.config.ts +7 -0
  179. icrl_py-0.1.0/icrl-ts/web-example/package.json +64 -0
  180. icrl_py-0.1.0/icrl-ts/web-example/pnpm-lock.yaml +5840 -0
  181. icrl_py-0.1.0/icrl-ts/web-example/postcss.config.mjs +7 -0
  182. icrl_py-0.1.0/icrl-ts/web-example/public/favicon.png +0 -0
  183. icrl_py-0.1.0/icrl-ts/web-example/public/file.svg +1 -0
  184. icrl_py-0.1.0/icrl-ts/web-example/public/globe.svg +1 -0
  185. icrl_py-0.1.0/icrl-ts/web-example/public/logo_dark.png +0 -0
  186. icrl_py-0.1.0/icrl-ts/web-example/public/logo_dark.svg +14 -0
  187. icrl_py-0.1.0/icrl-ts/web-example/public/logo_hero_dark.svg +14 -0
  188. icrl_py-0.1.0/icrl-ts/web-example/public/logo_hero_light.svg +14 -0
  189. icrl_py-0.1.0/icrl-ts/web-example/public/logo_light.png +0 -0
  190. icrl_py-0.1.0/icrl-ts/web-example/public/logo_light.svg +14 -0
  191. icrl_py-0.1.0/icrl-ts/web-example/public/next.svg +1 -0
  192. icrl_py-0.1.0/icrl-ts/web-example/public/vercel.svg +1 -0
  193. icrl_py-0.1.0/icrl-ts/web-example/public/window.svg +1 -0
  194. icrl_py-0.1.0/icrl-ts/web-example/src/app/[dbSlug]/[tab]/page.tsx +183 -0
  195. icrl_py-0.1.0/icrl-ts/web-example/src/app/[dbSlug]/layout.tsx +163 -0
  196. icrl_py-0.1.0/icrl-ts/web-example/src/app/globals.css +151 -0
  197. icrl_py-0.1.0/icrl-ts/web-example/src/app/icon.png +0 -0
  198. icrl_py-0.1.0/icrl-ts/web-example/src/app/layout.tsx +42 -0
  199. icrl_py-0.1.0/icrl-ts/web-example/src/app/page.tsx +108 -0
  200. icrl_py-0.1.0/icrl-ts/web-example/src/app/providers.tsx +23 -0
  201. icrl_py-0.1.0/icrl-ts/web-example/src/components/answer-choice.tsx +216 -0
  202. icrl_py-0.1.0/icrl-ts/web-example/src/components/api-status-banner.tsx +20 -0
  203. icrl_py-0.1.0/icrl-ts/web-example/src/components/ask-mode.tsx +171 -0
  204. icrl_py-0.1.0/icrl-ts/web-example/src/components/database-selector.tsx +311 -0
  205. icrl_py-0.1.0/icrl-ts/web-example/src/components/examples-list.tsx +387 -0
  206. icrl_py-0.1.0/icrl-ts/web-example/src/components/footer.tsx +32 -0
  207. icrl_py-0.1.0/icrl-ts/web-example/src/components/header.tsx +52 -0
  208. icrl_py-0.1.0/icrl-ts/web-example/src/components/question-input.tsx +179 -0
  209. icrl_py-0.1.0/icrl-ts/web-example/src/components/success-message.tsx +46 -0
  210. icrl_py-0.1.0/icrl-ts/web-example/src/components/system-prompt-editor.tsx +111 -0
  211. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/accordion.tsx +66 -0
  212. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/alert-dialog.tsx +196 -0
  213. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/alert.tsx +66 -0
  214. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/aspect-ratio.tsx +11 -0
  215. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/avatar.tsx +109 -0
  216. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/badge.tsx +48 -0
  217. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/breadcrumb.tsx +109 -0
  218. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/button-group.tsx +83 -0
  219. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/button.tsx +64 -0
  220. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/calendar.tsx +220 -0
  221. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/card.tsx +92 -0
  222. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/carousel.tsx +241 -0
  223. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/chart.tsx +357 -0
  224. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/checkbox.tsx +32 -0
  225. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/code-block.tsx +125 -0
  226. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/collapsible.tsx +33 -0
  227. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/combobox.tsx +310 -0
  228. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/command.tsx +184 -0
  229. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/context-menu.tsx +252 -0
  230. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/dialog.tsx +144 -0
  231. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/direction.tsx +22 -0
  232. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/drawer.tsx +135 -0
  233. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/dropdown-menu.tsx +257 -0
  234. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/empty.tsx +104 -0
  235. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/field.tsx +248 -0
  236. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/form.tsx +167 -0
  237. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/hover-card.tsx +44 -0
  238. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/input-group.tsx +170 -0
  239. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/input-otp.tsx +77 -0
  240. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/input.tsx +21 -0
  241. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/item.tsx +193 -0
  242. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/kbd.tsx +28 -0
  243. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/label.tsx +24 -0
  244. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/markdown.tsx +126 -0
  245. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/menubar.tsx +276 -0
  246. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/native-select.tsx +53 -0
  247. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/navigation-menu.tsx +168 -0
  248. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/pagination.tsx +127 -0
  249. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/popover.tsx +89 -0
  250. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/progress.tsx +31 -0
  251. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/radio-group.tsx +45 -0
  252. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/resizable.tsx +53 -0
  253. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/scroll-area.tsx +58 -0
  254. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/select.tsx +190 -0
  255. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/separator.tsx +28 -0
  256. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/sheet.tsx +143 -0
  257. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/sidebar.tsx +726 -0
  258. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/skeleton.tsx +13 -0
  259. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/slider.tsx +63 -0
  260. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/sonner.tsx +40 -0
  261. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/spinner.tsx +16 -0
  262. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/switch.tsx +35 -0
  263. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/table.tsx +116 -0
  264. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/tabs.tsx +81 -0
  265. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/textarea.tsx +18 -0
  266. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/toggle-group.tsx +83 -0
  267. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/toggle.tsx +47 -0
  268. icrl_py-0.1.0/icrl-ts/web-example/src/components/ui/tooltip.tsx +61 -0
  269. icrl_py-0.1.0/icrl-ts/web-example/src/components/yolo-mode.tsx +385 -0
  270. icrl_py-0.1.0/icrl-ts/web-example/src/hooks/use-mobile.ts +19 -0
  271. icrl_py-0.1.0/icrl-ts/web-example/src/lib/actions.ts +670 -0
  272. icrl_py-0.1.0/icrl-ts/web-example/src/lib/anthropic-vertex.ts +182 -0
  273. icrl_py-0.1.0/icrl-ts/web-example/src/lib/anthropic.ts +104 -0
  274. icrl_py-0.1.0/icrl-ts/web-example/src/lib/convex-adapter.ts +334 -0
  275. icrl_py-0.1.0/icrl-ts/web-example/src/lib/google-vertex-gemini.ts +184 -0
  276. icrl_py-0.1.0/icrl-ts/web-example/src/lib/llm-provider.ts +106 -0
  277. icrl_py-0.1.0/icrl-ts/web-example/src/lib/slug.ts +20 -0
  278. icrl_py-0.1.0/icrl-ts/web-example/src/lib/utils.ts +6 -0
  279. icrl_py-0.1.0/icrl-ts/web-example/tsconfig.json +34 -0
  280. icrl_py-0.1.0/icrl-ts/web-landing/.gitignore +14 -0
  281. icrl_py-0.1.0/icrl-ts/web-landing/bun.lock +938 -0
  282. icrl_py-0.1.0/icrl-ts/web-landing/components.json +22 -0
  283. icrl_py-0.1.0/icrl-ts/web-landing/eslint.config.mjs +16 -0
  284. icrl_py-0.1.0/icrl-ts/web-landing/next.config.ts +7 -0
  285. icrl_py-0.1.0/icrl-ts/web-landing/package.json +36 -0
  286. icrl_py-0.1.0/icrl-ts/web-landing/postcss.config.mjs +7 -0
  287. icrl_py-0.1.0/icrl-ts/web-landing/public/favicon.png +0 -0
  288. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_dark.png +0 -0
  289. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_dark.svg +14 -0
  290. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_hero_dark.svg +14 -0
  291. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_hero_light.svg +14 -0
  292. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_light.png +0 -0
  293. icrl_py-0.1.0/icrl-ts/web-landing/public/logo_light.svg +14 -0
  294. icrl_py-0.1.0/icrl-ts/web-landing/src/app/globals.css +227 -0
  295. icrl_py-0.1.0/icrl-ts/web-landing/src/app/icon.png +0 -0
  296. icrl_py-0.1.0/icrl-ts/web-landing/src/app/layout.tsx +39 -0
  297. icrl_py-0.1.0/icrl-ts/web-landing/src/app/page.tsx +359 -0
  298. icrl_py-0.1.0/icrl-ts/web-landing/src/components/site-footer.tsx +33 -0
  299. icrl_py-0.1.0/icrl-ts/web-landing/src/components/site-header.tsx +39 -0
  300. icrl_py-0.1.0/icrl-ts/web-landing/src/components/ui/badge.tsx +48 -0
  301. icrl_py-0.1.0/icrl-ts/web-landing/src/components/ui/button.tsx +64 -0
  302. icrl_py-0.1.0/icrl-ts/web-landing/src/components/ui/card.tsx +92 -0
  303. icrl_py-0.1.0/icrl-ts/web-landing/src/lib/utils.ts +6 -0
  304. icrl_py-0.1.0/icrl-ts/web-landing/tsconfig.json +34 -0
  305. icrl_py-0.1.0/pyproject.toml +69 -0
  306. icrl_py-0.1.0/src/icrl/__init__.py +74 -0
  307. icrl_py-0.1.0/src/icrl/_debug.py +50 -0
  308. icrl_py-0.1.0/src/icrl/agent.py +226 -0
  309. icrl_py-0.1.0/src/icrl/cli/__init__.py +5 -0
  310. icrl_py-0.1.0/src/icrl/cli/ablation.py +491 -0
  311. icrl_py-0.1.0/src/icrl/cli/config.py +181 -0
  312. icrl_py-0.1.0/src/icrl/cli/context_compression.py +292 -0
  313. icrl_py-0.1.0/src/icrl/cli/human_verification.py +162 -0
  314. icrl_py-0.1.0/src/icrl/cli/main.py +1181 -0
  315. icrl_py-0.1.0/src/icrl/cli/prompts.py +34 -0
  316. icrl_py-0.1.0/src/icrl/cli/providers/__init__.py +21 -0
  317. icrl_py-0.1.0/src/icrl/cli/providers/anthropic_vertex_tool_provider.py +265 -0
  318. icrl_py-0.1.0/src/icrl/cli/providers/tool_provider.py +198 -0
  319. icrl_py-0.1.0/src/icrl/cli/runner.py +270 -0
  320. icrl_py-0.1.0/src/icrl/cli/tool_loop.py +376 -0
  321. icrl_py-0.1.0/src/icrl/cli/tools/__init__.py +17 -0
  322. icrl_py-0.1.0/src/icrl/cli/tools/base.py +199 -0
  323. icrl_py-0.1.0/src/icrl/cli/tools/bash_tool.py +96 -0
  324. icrl_py-0.1.0/src/icrl/cli/tools/file_tools.py +413 -0
  325. icrl_py-0.1.0/src/icrl/cli/tools/user_tool.py +56 -0
  326. icrl_py-0.1.0/src/icrl/cli/tools/web_tools.py +139 -0
  327. icrl_py-0.1.0/src/icrl/cli/tui.py +584 -0
  328. icrl_py-0.1.0/src/icrl/curation.py +107 -0
  329. icrl_py-0.1.0/src/icrl/database.py +704 -0
  330. icrl_py-0.1.0/src/icrl/embedder.py +146 -0
  331. icrl_py-0.1.0/src/icrl/harbor/__init__.py +29 -0
  332. icrl_py-0.1.0/src/icrl/harbor/adapter.py +758 -0
  333. icrl_py-0.1.0/src/icrl/harbor/agents.py +613 -0
  334. icrl_py-0.1.0/src/icrl/harbor/docker_workarounds.py +201 -0
  335. icrl_py-0.1.0/src/icrl/harbor/prompts.py +203 -0
  336. icrl_py-0.1.0/src/icrl/loop.py +266 -0
  337. icrl_py-0.1.0/src/icrl/models.py +277 -0
  338. icrl_py-0.1.0/src/icrl/protocols.py +92 -0
  339. icrl_py-0.1.0/src/icrl/providers/__init__.py +6 -0
  340. icrl_py-0.1.0/src/icrl/providers/anthropic_vertex.py +425 -0
  341. icrl_py-0.1.0/src/icrl/providers/litellm.py +613 -0
  342. icrl_py-0.1.0/src/icrl/py.typed +0 -0
  343. icrl_py-0.1.0/src/icrl/retriever.py +99 -0
  344. icrl_py-0.1.0/src/icrl/validators/__init__.py +14 -0
  345. icrl_py-0.1.0/src/icrl/validators/code.py +353 -0
  346. icrl_py-0.1.0/tests/README.md +28 -0
  347. icrl_py-0.1.0/tests/agent_api_walkthrough.py +194 -0
  348. icrl_py-0.1.0/tests/database_api_walkthrough.py +159 -0
  349. icrl_py-0.1.0/tests/test_harbor_coding.py +343 -0
  350. icrl_py-0.1.0/tests/test_with_mock.py +264 -0
  351. icrl_py-0.1.0/uv.lock +4093 -0
  352. icrl_py-0.1.0/vercel.json +12 -0
@@ -0,0 +1,12 @@
1
+ # THIS IS AUTOGENERATED. DO NOT EDIT MANUALLY
2
+ version = 1
3
+ name = "icrl"
4
+
5
+ [setup]
6
+ script = '''
7
+ cp /Users/asanshaygupta/Documents/Codes/Stanford/Research/icrl/icrl-ts/web-example/.env.local ./icrl-ts/web-example
8
+ cp /Users/asanshaygupta/Documents/Codes/Stanford/Research/icrl/credentials.json .
9
+ cp /Users/asanshaygupta/Documents/Codes/Stanford/Research/icrl/.env .
10
+ source .env
11
+
12
+ '''
@@ -0,0 +1,36 @@
1
+ # Python-generated files
2
+ __pycache__/
3
+ *.py[oc]
4
+ build/
5
+ dist/
6
+ wheels/
7
+ *.egg-info
8
+
9
+ # Virtual environments
10
+ .venv
11
+
12
+ .env
13
+ data/
14
+ runs/
15
+ harbor_jobs/
16
+ *_db
17
+ jobs/
18
+
19
+ harbor_django_comp
20
+ harbor_*
21
+
22
+ sgicl_v*
23
+
24
+ credentials.json
25
+ debug.log
26
+ icrl-ts/node_modules/
27
+ icrl-ts/web-example/.next/
28
+ icrl-ts/web-example/node_modules/
29
+ .env*
30
+ next-env.d.ts
31
+ tsconfig.tsbuildinfo
32
+
33
+ # ICRL per-project trajectory databases
34
+ .icrl/
35
+ .vercel/
36
+ .vercel
@@ -0,0 +1 @@
1
+ 3.12
icrl_py-0.1.0/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Asanshay Gupta
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.