jac-coder 0.1.0__tar.gz → 0.1.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.
Files changed (237) hide show
  1. {jac_coder-0.1.0 → jac_coder-0.1.2}/PKG-INFO +3 -2
  2. jac_coder-0.1.2/jac_coder/__init__.py +2 -0
  3. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/__init__.jir +0 -0
  4. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/api.jir +0 -0
  5. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/config.jir +0 -0
  6. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/context.jir +0 -0
  7. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/cost_tracker.jir +0 -0
  8. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/events.jir +0 -0
  9. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/mcp_manager.jir +0 -0
  10. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/memory.jir +0 -0
  11. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/nodes.jir +0 -0
  12. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/permission.jir +0 -0
  13. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/prompt.jir +0 -0
  14. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/serve_entry.jir +0 -0
  15. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/server.jir +0 -0
  16. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/__init__.jir +0 -0
  17. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/checked.jir +0 -0
  18. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/delegation.jir +0 -0
  19. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/filesystem.jir +0 -0
  20. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/git.jir +0 -0
  21. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/guarded.jir +0 -0
  22. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/jac_analyzer.jir +0 -0
  23. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/jac_docs.jir +0 -0
  24. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/jac_tools.jir +0 -0
  25. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/mcp.jir +0 -0
  26. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/preview.jir +0 -0
  27. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/question.jir +0 -0
  28. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/scaffold.jir +0 -0
  29. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/search.jir +0 -0
  30. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/shell.jir +0 -0
  31. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/task.jir +0 -0
  32. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/think.jir +0 -0
  33. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/todo.jir +0 -0
  34. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/validate.jir +0 -0
  35. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/tool/web.jir +0 -0
  36. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/util/__init__.jir +0 -0
  37. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/util/colors.jir +0 -0
  38. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/util/sandbox.jir +0 -0
  39. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/util/tool_output.jir +0 -0
  40. jac_coder-0.1.2/jac_coder/_precompiled/cpython-312/walkers.jir +0 -0
  41. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/__init__.jir +0 -0
  42. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/api.jir +0 -0
  43. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/config.jir +0 -0
  44. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/context.jir +0 -0
  45. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/cost_tracker.jir +0 -0
  46. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/events.jir +0 -0
  47. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/mcp_manager.jir +0 -0
  48. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/memory.jir +0 -0
  49. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/nodes.jir +0 -0
  50. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/permission.jir +0 -0
  51. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/prompt.jir +0 -0
  52. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/serve_entry.jir +0 -0
  53. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/server.jir +0 -0
  54. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/__init__.jir +0 -0
  55. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/checked.jir +0 -0
  56. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/delegation.jir +0 -0
  57. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/filesystem.jir +0 -0
  58. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/git.jir +0 -0
  59. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/guarded.jir +0 -0
  60. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/jac_analyzer.jir +0 -0
  61. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/jac_docs.jir +0 -0
  62. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/jac_tools.jir +0 -0
  63. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/mcp.jir +0 -0
  64. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/preview.jir +0 -0
  65. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/question.jir +0 -0
  66. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/scaffold.jir +0 -0
  67. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/search.jir +0 -0
  68. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/shell.jir +0 -0
  69. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/task.jir +0 -0
  70. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/think.jir +0 -0
  71. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/todo.jir +0 -0
  72. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/validate.jir +0 -0
  73. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/tool/web.jir +0 -0
  74. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/util/__init__.jir +0 -0
  75. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/util/colors.jir +0 -0
  76. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/util/sandbox.jir +0 -0
  77. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/util/tool_output.jir +0 -0
  78. jac_coder-0.1.2/jac_coder/_precompiled/cpython-313/walkers.jir +0 -0
  79. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/__init__.jir +0 -0
  80. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/api.jir +0 -0
  81. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/config.jir +0 -0
  82. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/context.jir +0 -0
  83. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/cost_tracker.jir +0 -0
  84. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/events.jir +0 -0
  85. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/mcp_manager.jir +0 -0
  86. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/memory.jir +0 -0
  87. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/nodes.jir +0 -0
  88. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/permission.jir +0 -0
  89. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/prompt.jir +0 -0
  90. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/serve_entry.jir +0 -0
  91. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/server.jir +0 -0
  92. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/__init__.jir +0 -0
  93. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/checked.jir +0 -0
  94. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/delegation.jir +0 -0
  95. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/filesystem.jir +0 -0
  96. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/git.jir +0 -0
  97. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/guarded.jir +0 -0
  98. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/jac_analyzer.jir +0 -0
  99. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/jac_docs.jir +0 -0
  100. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/jac_tools.jir +0 -0
  101. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/mcp.jir +0 -0
  102. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/preview.jir +0 -0
  103. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/question.jir +0 -0
  104. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/scaffold.jir +0 -0
  105. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/search.jir +0 -0
  106. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/shell.jir +0 -0
  107. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/task.jir +0 -0
  108. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/think.jir +0 -0
  109. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/todo.jir +0 -0
  110. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/validate.jir +0 -0
  111. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/tool/web.jir +0 -0
  112. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/util/__init__.jir +0 -0
  113. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/util/colors.jir +0 -0
  114. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/util/sandbox.jir +0 -0
  115. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/util/tool_output.jir +0 -0
  116. jac_coder-0.1.2/jac_coder/_precompiled/cpython-314/walkers.jir +0 -0
  117. jac_coder-0.1.2/jac_coder/_precompiled/manifest.json +213 -0
  118. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/api.jac +23 -6
  119. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/config.jac +11 -7
  120. jac_coder-0.1.2/jac_coder/context.jac +28 -0
  121. jac_coder-0.1.2/jac_coder/cost_tracker.jac +41 -0
  122. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/examples/blog_app.md +66 -67
  123. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/examples/core_patterns.md +10 -17
  124. jac_coder-0.1.2/jac_coder/data/examples/todo_app.md +834 -0
  125. jac_coder-0.1.2/jac_coder/data/reference/backend.md +237 -0
  126. jac_coder-0.1.2/jac_coder/data/reference/frontend.md +398 -0
  127. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/reference/osp.md +18 -25
  128. jac_coder-0.1.2/jac_coder/data/reference/pitfalls.md +268 -0
  129. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/reference/syntax.md +55 -1
  130. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/rules/core_jac.md +2 -2
  131. jac_coder-0.1.2/jac_coder/data/rules/fullstack.md +580 -0
  132. jac_coder-0.1.2/jac_coder/data/rules/workflow.md +182 -0
  133. jac_coder-0.1.2/jac_coder/events.jac +260 -0
  134. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/api.impl.jac +177 -46
  135. jac_coder-0.1.2/jac_coder/impl/context.impl.jac +166 -0
  136. jac_coder-0.1.2/jac_coder/impl/cost_tracker.impl.jac +91 -0
  137. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/mcp_manager.impl.jac +77 -20
  138. jac_coder-0.1.2/jac_coder/impl/nodes.impl.jac +223 -0
  139. jac_coder-0.1.2/jac_coder/impl/prompt.impl.jac +130 -0
  140. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/walkers.impl.jac +134 -30
  141. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/mcp_manager.jac +12 -2
  142. jac_coder-0.1.2/jac_coder/memory.jac +21 -0
  143. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/nodes.jac +34 -66
  144. jac_coder-0.1.2/jac_coder/prompt.jac +145 -0
  145. jac_coder-0.1.2/jac_coder/serve_entry.jac +25 -0
  146. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/server.jac +107 -12
  147. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/__init__.jac +1 -1
  148. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/checked.jac +8 -0
  149. jac_coder-0.1.2/jac_coder/tool/guarded.jac +50 -0
  150. jac_coder-0.1.2/jac_coder/tool/impl/checked.impl.jac +306 -0
  151. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/filesystem.impl.jac +51 -32
  152. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/git.impl.jac +1 -1
  153. jac_coder-0.1.2/jac_coder/tool/impl/guarded.impl.jac +169 -0
  154. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/jac_docs.impl.jac +57 -3
  155. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/jac_tools.impl.jac +2 -2
  156. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/mcp.impl.jac +1 -2
  157. jac_coder-0.1.2/jac_coder/tool/impl/preview.impl.jac +626 -0
  158. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/question.impl.jac +6 -0
  159. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/scaffold.impl.jac +16 -13
  160. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/search.impl.jac +1 -1
  161. jac_coder-0.1.2/jac_coder/tool/impl/shell.impl.jac +152 -0
  162. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/validate.impl.jac +18 -0
  163. jac_coder-0.1.2/jac_coder/tool/jac_docs.jac +14 -0
  164. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/mcp.jac +2 -0
  165. jac_coder-0.1.2/jac_coder/tool/preview.jac +45 -0
  166. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/scaffold.jac +2 -0
  167. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/shell.jac +1 -0
  168. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/colors.jac +8 -8
  169. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/impl/sandbox.impl.jac +9 -8
  170. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/impl/tool_output.impl.jac +1 -0
  171. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/sandbox.jac +2 -0
  172. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/tool_output.jac +0 -2
  173. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/walkers.jac +3 -4
  174. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder.egg-info/PKG-INFO +3 -2
  175. jac_coder-0.1.2/jac_coder.egg-info/SOURCES.txt +214 -0
  176. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder.egg-info/requires.txt +1 -0
  177. {jac_coder-0.1.0 → jac_coder-0.1.2}/pyproject.toml +5 -2
  178. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_context.py +1 -1
  179. jac_coder-0.1.0/jac_coder/context.jac +0 -17
  180. jac_coder-0.1.0/jac_coder/data/examples/todo_app.md +0 -321
  181. jac_coder-0.1.0/jac_coder/data/reference/backend.md +0 -215
  182. jac_coder-0.1.0/jac_coder/data/reference/frontend.md +0 -271
  183. jac_coder-0.1.0/jac_coder/data/reference/pitfalls.md +0 -141
  184. jac_coder-0.1.0/jac_coder/data/rules/fullstack.md +0 -362
  185. jac_coder-0.1.0/jac_coder/data/rules/workflow.md +0 -88
  186. jac_coder-0.1.0/jac_coder/events.jac +0 -110
  187. jac_coder-0.1.0/jac_coder/impl/context.impl.jac +0 -117
  188. jac_coder-0.1.0/jac_coder/impl/nodes.impl.jac +0 -259
  189. jac_coder-0.1.0/jac_coder/memory.jac +0 -15
  190. jac_coder-0.1.0/jac_coder/serve_entry.jac +0 -30
  191. jac_coder-0.1.0/jac_coder/tool/guarded.jac +0 -23
  192. jac_coder-0.1.0/jac_coder/tool/impl/checked.impl.jac +0 -38
  193. jac_coder-0.1.0/jac_coder/tool/impl/guarded.impl.jac +0 -72
  194. jac_coder-0.1.0/jac_coder/tool/impl/preview.impl.jac +0 -233
  195. jac_coder-0.1.0/jac_coder/tool/impl/shell.impl.jac +0 -89
  196. jac_coder-0.1.0/jac_coder/tool/jac_docs.jac +0 -9
  197. jac_coder-0.1.0/jac_coder/tool/preview.jac +0 -31
  198. jac_coder-0.1.0/jac_coder/tool/vision.jac +0 -17
  199. jac_coder-0.1.0/jac_coder.egg-info/SOURCES.txt +0 -95
  200. {jac_coder-0.1.0 → jac_coder-0.1.2}/README.md +0 -0
  201. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/__init__.jac +0 -0
  202. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/cli_entry.py +0 -0
  203. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/examples/ai_agent.md +0 -0
  204. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/data/reference/ai.md +0 -0
  205. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/config.impl.jac +0 -0
  206. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/memory.impl.jac +0 -0
  207. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/impl/permission.impl.jac +0 -0
  208. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/permission.jac +0 -0
  209. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/delegation.jac +0 -0
  210. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/filesystem.jac +0 -0
  211. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/git.jac +0 -0
  212. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/delegation.impl.jac +0 -0
  213. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/jac_analyzer.impl.jac +0 -0
  214. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/task.impl.jac +0 -0
  215. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/think.impl.jac +0 -0
  216. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/todo.impl.jac +0 -0
  217. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/impl/web.impl.jac +0 -0
  218. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/jac_analyzer.jac +0 -0
  219. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/jac_tools.jac +0 -0
  220. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/question.jac +0 -0
  221. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/search.jac +0 -0
  222. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/task.jac +0 -0
  223. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/think.jac +0 -0
  224. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/todo.jac +0 -0
  225. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/validate.jac +0 -0
  226. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/tool/web.jac +0 -0
  227. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder/util/__init__.jac +0 -0
  228. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder.egg-info/dependency_links.txt +0 -0
  229. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder.egg-info/entry_points.txt +0 -0
  230. {jac_coder-0.1.0 → jac_coder-0.1.2}/jac_coder.egg-info/top_level.txt +0 -0
  231. {jac_coder-0.1.0 → jac_coder-0.1.2}/setup.cfg +0 -0
  232. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_events.py +0 -0
  233. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_graph.py +0 -0
  234. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_interact.py +0 -0
  235. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_memory.py +0 -0
  236. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_selfcorrect.py +0 -0
  237. {jac_coder-0.1.0 → jac_coder-0.1.2}/tests/test_tools.py +0 -0
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jac-coder
3
- Version: 0.1.0
3
+ Version: 0.1.2
4
4
  Summary: AI coding agent backend for Jac, powered by jac-byllm
5
- Requires-Python: >=3.11
5
+ Requires-Python: >=3.12
6
6
  Requires-Dist: python-dotenv>=1.0.0
7
7
  Requires-Dist: jaclang
8
8
  Requires-Dist: byllm
9
9
  Requires-Dist: mcp>=1.0.0
10
+ Requires-Dist: jac-mcp
@@ -0,0 +1,2 @@
1
+ # Registers JacMetaImporter so .jac submodules (e.g. serve_entry.jac) are importable.
2
+ import jaclang # noqa: F401
@@ -0,0 +1,213 @@
1
+ {
2
+ "entries": {
3
+ "__init__.jac": {
4
+ "source_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
5
+ },
6
+ "api.jac": {
7
+ "impl_hashes": {
8
+ "impl/api.impl.jac": "82eb1a5e35d88d6e4add1cac65621a4c27da065766595bf575b8dd511dc94bfb"
9
+ },
10
+ "source_hash": "5b6bfc998fd351bc4e14fe3bd033a055e362d7b8d494f5b169ba58744325fea1"
11
+ },
12
+ "config.jac": {
13
+ "impl_hashes": {
14
+ "impl/config.impl.jac": "2765b4930f5bc7ff4453d4203c072f1dccb131b53fd76c64ad2c7f769b891663"
15
+ },
16
+ "source_hash": "34b8eaa9fc8ff4e29c48c95b0be017102931c9860d92b422ba65debf8bc5a96d"
17
+ },
18
+ "context.jac": {
19
+ "impl_hashes": {
20
+ "impl/context.impl.jac": "aa293967797f0021fbff986dfc6cfbd7e14732d31f036eabc428e34be8755d39"
21
+ },
22
+ "source_hash": "b4602e99adfc979830b189346050d205dcce45ba4a58f43bd3e5e0dc52dc84bd"
23
+ },
24
+ "cost_tracker.jac": {
25
+ "impl_hashes": {
26
+ "impl/cost_tracker.impl.jac": "c7679953be4b6a4e4697575f3fd8e2b9467c294ca341c7584a253cd6ad447889"
27
+ },
28
+ "source_hash": "41f2358725b03d093102da10138b9334e04e36d600b1fff1e13566b434c70179"
29
+ },
30
+ "events.jac": {
31
+ "source_hash": "203c8103933aa41ed896f03048a991506cfa25508f98948827e3a6dc790698ea"
32
+ },
33
+ "mcp_manager.jac": {
34
+ "impl_hashes": {
35
+ "impl/mcp_manager.impl.jac": "cde9c033e3669ca442c60fd8eb4c8d2e171adc3b34449754fbbac9d88db63955"
36
+ },
37
+ "source_hash": "2560b0daf7584221efc727a2a51c1c0fb74b445b13f0772736fb38f58477ec85"
38
+ },
39
+ "memory.jac": {
40
+ "impl_hashes": {
41
+ "impl/memory.impl.jac": "ded668bcd69919d282419792b0d82b44e5a7d575efc30718d869eba98cd0b4b3"
42
+ },
43
+ "source_hash": "76813a0e8a400604f8fdd65215d3b3dd258b9ca153b12115e2cd86727c4dbffa"
44
+ },
45
+ "nodes.jac": {
46
+ "impl_hashes": {
47
+ "impl/nodes.impl.jac": "9f3f7de4269015c03e6c7031eafa8c94c7ce316883ca2da1a6e0a09a2f4fad19"
48
+ },
49
+ "source_hash": "eae8bd478013a0d330ce40b2c321cfa53fe9e664bbc8ae6d03d6010c61f339ac"
50
+ },
51
+ "permission.jac": {
52
+ "impl_hashes": {
53
+ "impl/permission.impl.jac": "27c6f3ecdb786d9f1c2173d43b959939e0d97c517ae71ba5d10053ecc9352aac"
54
+ },
55
+ "source_hash": "a8f1987b8784bf90217b2f477789c9e890e443e7a790c0c8ca59abbdae6b297a"
56
+ },
57
+ "prompt.jac": {
58
+ "impl_hashes": {
59
+ "impl/prompt.impl.jac": "d6526fa37a6ee3670c1596a8955d2c6ccab2a9f848b29f47315bc63de1edc3d9"
60
+ },
61
+ "source_hash": "eb1a243e4c50b68fe78118e864b04ec4d9577f378fef7b190f8b38366fca71b9"
62
+ },
63
+ "serve_entry.jac": {
64
+ "source_hash": "f7240fed09f9b9e608205565e961e1ef992f7abd03bd29a584f04435e678015d"
65
+ },
66
+ "server.jac": {
67
+ "source_hash": "44d30960821497c7180253379224e9f59add650d7fd41f3451756c185d22cf01"
68
+ },
69
+ "tool/__init__.jac": {
70
+ "source_hash": "f2a1a8c163b1019ab1d195c59a0f34be2d9d87ef680cd6dc1a0ba6f10bb98169"
71
+ },
72
+ "tool/checked.jac": {
73
+ "impl_hashes": {
74
+ "tool/impl/checked.impl.jac": "a5fde7c0054ba5c943dd4ee7b348a1e67b6f78ab8e0ed9e86534d1077d9b3d23"
75
+ },
76
+ "source_hash": "0935422d489373ef3f40cd966aa0ca8c6d6c0d4e680beb69488aa846c8bbb0fc"
77
+ },
78
+ "tool/delegation.jac": {
79
+ "impl_hashes": {
80
+ "tool/impl/delegation.impl.jac": "3f0a4cc5e29c152194d954a02e5d98b55c0bac67894771341e0fb92f637d42b4"
81
+ },
82
+ "source_hash": "11877091a7f4dac2d05ceec4d7464119e284a111ef30db7928af43ce3b879562"
83
+ },
84
+ "tool/filesystem.jac": {
85
+ "impl_hashes": {
86
+ "tool/impl/filesystem.impl.jac": "dc025751892b21f9697d9ae41ae40911c3c185b7725596aa2ccda21310fef2b2"
87
+ },
88
+ "source_hash": "63f7728e5839225859470c6717ec5053fb7e0543c8d260b50365fbfa10f9fa65"
89
+ },
90
+ "tool/git.jac": {
91
+ "impl_hashes": {
92
+ "tool/impl/git.impl.jac": "ef5d16b474801b7f8683c32c2cdacae99a63136f21b42e822456642d3c1b8f53"
93
+ },
94
+ "source_hash": "a9be72e0a0059366b0a836128e3e66eeea6c54b5843c9d1a85d705d7ffdc6687"
95
+ },
96
+ "tool/guarded.jac": {
97
+ "impl_hashes": {
98
+ "tool/impl/guarded.impl.jac": "375140d967f4677ddcfb34c06f50ebc2d2e16d9008bdfe228f48cfa78bda1bc6"
99
+ },
100
+ "source_hash": "8b474c5386dbd2791de484c397fedc5947a9e77c3274c30725b509ff82d5021b"
101
+ },
102
+ "tool/jac_analyzer.jac": {
103
+ "impl_hashes": {
104
+ "tool/impl/jac_analyzer.impl.jac": "745f9d8265824fd1bbcf07406be6199d79738d3d95a57ee0265b03e6a39d8e2e"
105
+ },
106
+ "source_hash": "b61cdc9bb11e4651afd4609baa78a36cb63a8c6a1f643da9cb755cca54aff949"
107
+ },
108
+ "tool/jac_docs.jac": {
109
+ "impl_hashes": {
110
+ "tool/impl/jac_docs.impl.jac": "ad9709ed2325b6478aff89225fdcf7d72aeef385bc62013f5bcab33e5008bad4"
111
+ },
112
+ "source_hash": "9ef1e16658a4662dfbd8e9b88f28985de89383eea346b05437e460e60c92eced"
113
+ },
114
+ "tool/jac_tools.jac": {
115
+ "impl_hashes": {
116
+ "tool/impl/jac_tools.impl.jac": "4813ce9efa88925a9a855ab70e8ace9078051991f9b47e89cf5e93f1c4f94c03"
117
+ },
118
+ "source_hash": "eb5b09c1a678e9156eb51808720c3260a62e9fbb7abbb748f8432ce842b752ca"
119
+ },
120
+ "tool/mcp.jac": {
121
+ "impl_hashes": {
122
+ "tool/impl/mcp.impl.jac": "9e7bc8d8779b1290097db66a5e8eb7d90fe13605f74ceee4ac41c9c0b41148f7"
123
+ },
124
+ "source_hash": "f2e6fe082ba17df153e6891321d33d90c1b1524154fbfe28594bbe17fb56f8dc"
125
+ },
126
+ "tool/preview.jac": {
127
+ "impl_hashes": {
128
+ "tool/impl/preview.impl.jac": "cefef2831ce76d253bf061241a3dceb3c2267297c6e0f9ed9887c436360fe488"
129
+ },
130
+ "source_hash": "847c5f74b765f4734cc76675bb78e0fc3dbfdadde7a3e632f2f7a1f95c28e9f8"
131
+ },
132
+ "tool/question.jac": {
133
+ "impl_hashes": {
134
+ "tool/impl/question.impl.jac": "af45c4bf1c106e8709f81e40923d5086faea5f8a69cc31c3ceb03cd46b499fb4"
135
+ },
136
+ "source_hash": "56b32f9cf6eb5b375ca2b4467c088212d3f25e844b0dab12e8f29ecc141eb4a8"
137
+ },
138
+ "tool/scaffold.jac": {
139
+ "impl_hashes": {
140
+ "tool/impl/scaffold.impl.jac": "b4dcc0b46e7d844d5cbf6aa5a2109fa2f265b184332052d5cbc4b768710e7988"
141
+ },
142
+ "source_hash": "ebb6d09098f1941aa4baf9f54541bef6a0e430b32549feda0d4021448e4a12d8"
143
+ },
144
+ "tool/search.jac": {
145
+ "impl_hashes": {
146
+ "tool/impl/search.impl.jac": "a8b65ed048a5b7e1d8807fe83298b384be2ca52eeed565b8ff61fbc452370329"
147
+ },
148
+ "source_hash": "2a2ce73a2b75c0f522de8acf78cffa5cff61dcb930cfdc71c05f3491daedf051"
149
+ },
150
+ "tool/shell.jac": {
151
+ "impl_hashes": {
152
+ "tool/impl/shell.impl.jac": "2b6f9565419a75ae6035bc8227a6ee8edc0f6e5e7577f82ae66466d3fa538901"
153
+ },
154
+ "source_hash": "dc8ea0c2e2becfe7a0ee299481eab6a6916388556af4fcb71e304523f1737496"
155
+ },
156
+ "tool/task.jac": {
157
+ "impl_hashes": {
158
+ "tool/impl/task.impl.jac": "4ed1994470f51bf6edbe01c8328690ed1d7a50399b169aae166a2655bce1ae1d"
159
+ },
160
+ "source_hash": "a1d59ec65ac10c2d90292eedf469a82fdbf249144eb51b6fd0693f88ca61c9db"
161
+ },
162
+ "tool/think.jac": {
163
+ "impl_hashes": {
164
+ "tool/impl/think.impl.jac": "569975d0b1afe70563168b4e30b8103962b9cde903ba471d0e4d6f416ea3bd11"
165
+ },
166
+ "source_hash": "2042c175ff9cc741c4adddc40d0541bfee9a769372a5b041e56ce3f25d7320cd"
167
+ },
168
+ "tool/todo.jac": {
169
+ "impl_hashes": {
170
+ "tool/impl/todo.impl.jac": "bda063686d592788b82396ef41bee8f3517f9f1caf9eb60b40884f698e6ba94f"
171
+ },
172
+ "source_hash": "9543c28bb10ef6d3e72f226b40ad8f0125e9a342a73372a95b6a48df6ae09af8"
173
+ },
174
+ "tool/validate.jac": {
175
+ "impl_hashes": {
176
+ "tool/impl/validate.impl.jac": "95b850ea186558a1242a50037c982eaf5ca5392c849d313b069b8cfa6d618b68"
177
+ },
178
+ "source_hash": "41174ac55f60e3e6b645cf78e051a3c540579d929e8bf28c3421c1db64a8142b"
179
+ },
180
+ "tool/web.jac": {
181
+ "impl_hashes": {
182
+ "tool/impl/web.impl.jac": "a799e391df5c294f698f22f0ea4a6b363a45dd25f88d29b53b7cd127f94cbf2b"
183
+ },
184
+ "source_hash": "57eff0f2b567c98bb862862257869e48b2cd1a920e9e57c4d6db34c6b657146e"
185
+ },
186
+ "util/__init__.jac": {
187
+ "source_hash": "005c45548d1453f61206a2d93657b3391cab875c5d8b55675896a82cda3b0d01"
188
+ },
189
+ "util/colors.jac": {
190
+ "source_hash": "776b56fc3b5f4e50cef8b8d13c21064f1ced2d41436a8fb5dad976a07b73caf9"
191
+ },
192
+ "util/sandbox.jac": {
193
+ "impl_hashes": {
194
+ "util/impl/sandbox.impl.jac": "fb16ea9bbe1e4e86da7b2a00b51a725fc216a6d857ee0703b55dfd4e36d4e2f3"
195
+ },
196
+ "source_hash": "5e91edb957269455faa57e3fc6e5e79987806c7eccd7e720dd3e247374831cc0"
197
+ },
198
+ "util/tool_output.jac": {
199
+ "impl_hashes": {
200
+ "util/impl/tool_output.impl.jac": "56471bf4cf3fd9d2637c7b35f1f4b49612c64646dbf671920148b9a5ac601c9e"
201
+ },
202
+ "source_hash": "478e5c0493a2a5edcaaef4da8c783b5de643c330f9612ae7c629b42ef30f4ff9"
203
+ },
204
+ "walkers.jac": {
205
+ "impl_hashes": {
206
+ "impl/walkers.impl.jac": "ff916cdd17f946b7b495716974622217e6685c10b67fd3699a9df00d48861ffa"
207
+ },
208
+ "source_hash": "777ddfca29fdebc6bcb16140db0111ae0355179b22b40585d92761206db37d25"
209
+ }
210
+ },
211
+ "filename_sentinel": "__PKG_ROOT__",
212
+ "version": 1
213
+ }
@@ -11,12 +11,14 @@ import from jac_coder.config {
11
11
  }
12
12
  import from jac_coder.util.tool_output { tool_end }
13
13
  import from jac_coder.permission { permission_engine }
14
- import from jac_coder.util.sandbox { set_sandbox_root }
14
+ import from jac_coder.util.sandbox { set_sandbox_root, set_browser_exec }
15
15
  import from jac_coder.context { build_context, ContextConfig }
16
16
  import from jac_coder.walkers { new_session, ensure_main_agent, _consume_llm_stream }
17
17
  import from jac_coder.mcp_manager {
18
18
  mcp_add_server,
19
- mcp_remove_server,
19
+ mcp_disconnect_server,
20
+ mcp_reconnect_server,
21
+ mcp_delete_server,
20
22
  mcp_list_servers,
21
23
  mcp_get_tools,
22
24
  mcp_register_builtin
@@ -27,13 +29,17 @@ import from jac_coder.memory {
27
29
  update_memory_from_session
28
30
  }
29
31
  import from jac_coder.nodes { Session, MainAgent }
32
+ import from jac_coder.cost_tracker { get_summary as _ct_get_summary, is_cost_tracking_enabled as _ct_enabled }
33
+ import from jac_coder.tool.guarded { _set_chat_session, _clear_chat_session, _chat_contexts }
30
34
  import from jac_coder.events {
31
35
  register_event_callback,
32
36
  clear_event_callbacks,
33
37
  reset_steps,
34
38
  start_turn,
35
39
  emit_turn_summary,
36
- emit_event
40
+ emit_event,
41
+ is_abort_requested,
42
+ clear_abort
37
43
  }
38
44
 
39
45
 
@@ -55,7 +61,9 @@ def chat(
55
61
  directory: str = "",
56
62
  on_event: Any = None,
57
63
  mode: str = "full",
58
- agent_context: str = ""
64
+ agent_context: str = "",
65
+ images: list = [],
66
+ edit_mode: str = "auto"
59
67
  ) -> dict;
60
68
 
61
69
  def list_sessions() -> list;
@@ -75,8 +83,17 @@ def api_get_model() -> dict;
75
83
  """Add or update an MCP server."""
76
84
  def api_mcp_add(name: str, config: dict) -> dict;
77
85
 
78
- """Remove an MCP server."""
79
- def api_mcp_remove(name: str) -> dict;
86
+ """Disconnect an MCP server (keeps config, stays in list)."""
87
+ def api_mcp_disconnect(name: str) -> dict;
88
+
89
+ """Reconnect a previously-disconnected MCP server."""
90
+ def api_mcp_reconnect(name: str) -> dict;
91
+
92
+ """Permanently delete a user-added MCP server."""
93
+ def api_mcp_delete(name: str) -> dict;
80
94
 
81
95
  """List all configured MCP servers."""
82
96
  def api_mcp_list() -> list;
97
+
98
+ """Append an abort note to a session's chat_history (called synchronously from stop handler)."""
99
+ def abort_session(session_id: str) -> None;