langgraph-init-cli 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 (177) hide show
  1. langgraph_init_cli-0.1.0/LICENSE +21 -0
  2. langgraph_init_cli-0.1.0/PKG-INFO +383 -0
  3. langgraph_init_cli-0.1.0/README.md +358 -0
  4. langgraph_init_cli-0.1.0/langgraph_cli/__init__.py +5 -0
  5. langgraph_init_cli-0.1.0/langgraph_cli/cli.py +42 -0
  6. langgraph_init_cli-0.1.0/langgraph_cli/generator.py +47 -0
  7. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/README.md +3 -0
  8. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/langgraph.json +6 -0
  9. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/pyproject.toml +20 -0
  10. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/__init__.py +1 -0
  11. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/__pycache__/__init__.cpython-313.pyc +0 -0
  12. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/__init__.py +1 -0
  13. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/__pycache__/__init__.cpython-313.pyc +0 -0
  14. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/__pycache__/main.cpython-313.pyc +0 -0
  15. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__init__.py +1 -0
  16. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/__init__.cpython-313.pyc +0 -0
  17. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/builder.cpython-313.pyc +0 -0
  18. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/constants.cpython-313.pyc +0 -0
  19. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/edges.cpython-313.pyc +0 -0
  20. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/registry.cpython-313.pyc +0 -0
  21. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/__pycache__/state.cpython-313.pyc +0 -0
  22. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/builder.py +18 -0
  23. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/constants.py +20 -0
  24. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/edges.py +14 -0
  25. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/registry.py +8 -0
  26. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/graph/state.py +9 -0
  27. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/main.py +12 -0
  28. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/__init__.py +1 -0
  29. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/__pycache__/__init__.cpython-313.pyc +0 -0
  30. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/__pycache__/intent.cpython-313.pyc +0 -0
  31. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/__pycache__/output.cpython-313.pyc +0 -0
  32. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/__pycache__/processing.cpython-313.pyc +0 -0
  33. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/intent.py +9 -0
  34. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/output.py +10 -0
  35. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/nodes/processing.py +14 -0
  36. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/prompts/__init__.py +1 -0
  37. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/prompts/__pycache__/__init__.cpython-313.pyc +0 -0
  38. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/prompts/__pycache__/registry.cpython-313.pyc +0 -0
  39. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/prompts/registry.py +12 -0
  40. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/services/__init__.py +1 -0
  41. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/services/__pycache__/__init__.cpython-313.pyc +0 -0
  42. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/services/__pycache__/prompt_service.cpython-313.pyc +0 -0
  43. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/services/prompt_service.py +6 -0
  44. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/utils/__init__.py +1 -0
  45. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/utils/__pycache__/__init__.cpython-313.pyc +0 -0
  46. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/utils/__pycache__/logger.cpython-313.pyc +0 -0
  47. langgraph_init_cli-0.1.0/langgraph_cli/templates/advanced/src/app/utils/logger.py +6 -0
  48. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/README.md +3 -0
  49. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/langgraph.json +6 -0
  50. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/pyproject.toml +20 -0
  51. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/__init__.py +1 -0
  52. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/__pycache__/__init__.cpython-313.pyc +0 -0
  53. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/__init__.py +1 -0
  54. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/__pycache__/__init__.cpython-313.pyc +0 -0
  55. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/__pycache__/main.cpython-313.pyc +0 -0
  56. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/__pycache__/nodes.cpython-313.pyc +0 -0
  57. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/__pycache__/state.cpython-313.pyc +0 -0
  58. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/main.py +27 -0
  59. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/nodes.py +22 -0
  60. langgraph_init_cli-0.1.0/langgraph_cli/templates/base/src/app/state.py +7 -0
  61. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/README.md +121 -0
  62. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/langgraph.json +6 -0
  63. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/pyproject.toml +20 -0
  64. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/__init__.py +1 -0
  65. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/__pycache__/__init__.cpython-313.pyc +0 -0
  66. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/__init__.py +1 -0
  67. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/__pycache__/__init__.cpython-313.pyc +0 -0
  68. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/__pycache__/config.cpython-313.pyc +0 -0
  69. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/__pycache__/main.cpython-313.pyc +0 -0
  70. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/__init__.py +1 -0
  71. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/__pycache__/__init__.cpython-313.pyc +0 -0
  72. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/__pycache__/app.cpython-313.pyc +0 -0
  73. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/__pycache__/routes.cpython-313.pyc +0 -0
  74. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/app.py +11 -0
  75. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/api/routes.py +16 -0
  76. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/config.py +37 -0
  77. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/__init__.py +1 -0
  78. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/__pycache__/__init__.cpython-313.pyc +0 -0
  79. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/__pycache__/evaluator.cpython-313.pyc +0 -0
  80. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/__pycache__/scoring.cpython-313.pyc +0 -0
  81. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/evaluator.py +12 -0
  82. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/evaluation/scoring.py +2 -0
  83. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__init__.py +1 -0
  84. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/__init__.cpython-313.pyc +0 -0
  85. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/builder.cpython-313.pyc +0 -0
  86. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/constants.cpython-313.pyc +0 -0
  87. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/edges.cpython-313.pyc +0 -0
  88. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/registry.cpython-313.pyc +0 -0
  89. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/__pycache__/state.cpython-313.pyc +0 -0
  90. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/builder.py +20 -0
  91. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/constants.py +28 -0
  92. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/edges.py +21 -0
  93. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/registry.py +10 -0
  94. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/graph/state.py +15 -0
  95. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/main.py +27 -0
  96. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/__init__.py +1 -0
  97. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/__pycache__/__init__.cpython-313.pyc +0 -0
  98. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/__pycache__/schema.cpython-313.pyc +0 -0
  99. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/__pycache__/workflow.cpython-313.pyc +0 -0
  100. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/schema.py +11 -0
  101. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/models/workflow.py +30 -0
  102. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__init__.py +1 -0
  103. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/__init__.cpython-313.pyc +0 -0
  104. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/error.cpython-313.pyc +0 -0
  105. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/intent.cpython-313.pyc +0 -0
  106. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/output.cpython-313.pyc +0 -0
  107. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/processing.cpython-313.pyc +0 -0
  108. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/__pycache__/validation.cpython-313.pyc +0 -0
  109. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/error.py +7 -0
  110. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/intent.py +21 -0
  111. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/output.py +13 -0
  112. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/processing.py +32 -0
  113. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/nodes/validation.py +22 -0
  114. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/__init__.py +1 -0
  115. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/__pycache__/__init__.cpython-313.pyc +0 -0
  116. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/__pycache__/langsmith.cpython-313.pyc +0 -0
  117. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/__pycache__/metrics.cpython-313.pyc +0 -0
  118. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/langsmith.py +31 -0
  119. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/observability/metrics.py +15 -0
  120. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/__init__.py +1 -0
  121. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/__pycache__/__init__.cpython-313.pyc +0 -0
  122. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/__pycache__/registry.cpython-313.pyc +0 -0
  123. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/registry.py +20 -0
  124. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/versions/extraction/v1.txt +1 -0
  125. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/versions/intent/v1.txt +1 -0
  126. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/versions/intent/v2.txt +1 -0
  127. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/prompts/versions/validation/v1.txt +1 -0
  128. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__init__.py +1 -0
  129. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/__init__.cpython-313.pyc +0 -0
  130. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/evaluation_service.cpython-313.pyc +0 -0
  131. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/llm_service.cpython-313.pyc +0 -0
  132. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/prompt_service.cpython-313.pyc +0 -0
  133. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/tool_service.cpython-313.pyc +0 -0
  134. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/__pycache__/versioning_service.cpython-313.pyc +0 -0
  135. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/evaluation_service.py +19 -0
  136. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/llm_service.py +56 -0
  137. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/prompt_service.py +21 -0
  138. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/tool_service.py +22 -0
  139. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/services/versioning_service.py +12 -0
  140. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/__init__.py +1 -0
  141. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/__pycache__/__init__.cpython-313.pyc +0 -0
  142. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/__pycache__/cache.cpython-313.pyc +0 -0
  143. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/__pycache__/prompt_store.cpython-313.pyc +0 -0
  144. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/__pycache__/workflow_store.cpython-313.pyc +0 -0
  145. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/cache.py +12 -0
  146. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/prompt_store.py +11 -0
  147. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/storage/workflow_store.py +13 -0
  148. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/__init__.py +1 -0
  149. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/__pycache__/__init__.cpython-313.pyc +0 -0
  150. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/__pycache__/base.cpython-313.pyc +0 -0
  151. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/__pycache__/registry.cpython-313.pyc +0 -0
  152. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/api/__pycache__/http_tool.cpython-313.pyc +0 -0
  153. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/api/http_tool.py +12 -0
  154. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/base.py +15 -0
  155. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/db/__pycache__/query_tool.cpython-313.pyc +0 -0
  156. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/db/query_tool.py +12 -0
  157. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/rag/__pycache__/retriever_tool.cpython-313.pyc +0 -0
  158. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/rag/retriever_tool.py +18 -0
  159. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/registry.py +26 -0
  160. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/utils/__pycache__/calculator_tool.cpython-313.pyc +0 -0
  161. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/tools/utils/calculator_tool.py +21 -0
  162. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/__init__.py +1 -0
  163. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/__pycache__/__init__.cpython-313.pyc +0 -0
  164. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/__pycache__/logger.cpython-313.pyc +0 -0
  165. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/__pycache__/parallel.cpython-313.pyc +0 -0
  166. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/__pycache__/tracing.cpython-313.pyc +0 -0
  167. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/logger.py +33 -0
  168. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/parallel.py +9 -0
  169. langgraph_init_cli-0.1.0/langgraph_cli/templates/production/src/app/utils/tracing.py +16 -0
  170. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/PKG-INFO +383 -0
  171. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/SOURCES.txt +175 -0
  172. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/dependency_links.txt +1 -0
  173. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/entry_points.txt +2 -0
  174. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/requires.txt +5 -0
  175. langgraph_init_cli-0.1.0/langgraph_init_cli.egg-info/top_level.txt +1 -0
  176. langgraph_init_cli-0.1.0/pyproject.toml +52 -0
  177. langgraph_init_cli-0.1.0/setup.cfg +4 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Varsha
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.
@@ -0,0 +1,383 @@
1
+ Metadata-Version: 2.4
2
+ Name: langgraph-init-cli
3
+ Version: 0.1.0
4
+ Summary: CLI scaffolder for LangGraph projects
5
+ Author: Varsha
6
+ License-Expression: MIT
7
+ Keywords: langgraph,langchain,cli,scaffolding,agent,python
8
+ Classifier: Development Status :: 4 - Beta
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.10
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Topic :: Software Development :: Code Generators
15
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
16
+ Requires-Python: >=3.10
17
+ Description-Content-Type: text/markdown
18
+ License-File: LICENSE
19
+ Requires-Dist: langgraph>=0.2.0
20
+ Requires-Dist: langchain>=0.3.0
21
+ Requires-Dist: langsmith>=0.1.0
22
+ Requires-Dist: python-dotenv>=1.0.0
23
+ Requires-Dist: typer>=0.12.0
24
+ Dynamic: license-file
25
+
26
+ # langgraph-init
27
+
28
+ `langgraph-init` is a production-oriented scaffolding CLI for LangGraph projects. It generates opinionated project layouts that start simple and scale into a modular agentic architecture with graph orchestration, prompts, tools, evaluation, observability, and LangSmith-ready tracing.
29
+
30
+ ## What It Generates
31
+
32
+ The CLI ships with three templates:
33
+
34
+ ### `base`
35
+
36
+ A minimal LangGraph starter intended for quick experiments.
37
+
38
+ Included:
39
+
40
+ - Small `StateGraph`
41
+ - Simple typed state
42
+ - A few nodes
43
+ - Minimal project structure
44
+ - Runnable `src.app.main:run`
45
+
46
+ ### `advanced`
47
+
48
+ A modular architecture for teams that want graph structure and clean boundaries without full production overhead.
49
+
50
+ Included:
51
+
52
+ - `graph/` package with `builder.py`, `state.py`, `edges.py`, `constants.py`, `registry.py`
53
+ - Node registry and `Names` / `Nodes` / `Tags` pattern
54
+ - `nodes/`, `services/`, `prompts/`, and `utils/`
55
+ - Prompt loading abstraction
56
+ - Conditional edges
57
+
58
+ ### `production`
59
+
60
+ A complete production-grade scaffold with architecture intended to be extended in real systems.
61
+
62
+ Included:
63
+
64
+ - Graph orchestration with `StateGraph`
65
+ - Conditional routing and retry logic
66
+ - `RunnableParallel` example
67
+ - Modular nodes and services
68
+ - Prompt versioning system
69
+ - Tool framework and registry
70
+ - Evaluation and scoring
71
+ - Structured logging
72
+ - LangSmith integration hooks
73
+ - Metrics and tracing utilities
74
+ - Storage layer abstractions
75
+ - Optional API entry surface
76
+
77
+ ## Installation
78
+
79
+ From this repository:
80
+
81
+ ```bash
82
+ pip install -e .
83
+ ```
84
+
85
+ This installs the CLI command:
86
+
87
+ ```bash
88
+ langgraph-init
89
+ ```
90
+
91
+ ## Usage
92
+
93
+ Create a project:
94
+
95
+ ```bash
96
+ langgraph-init my-app --template production
97
+ ```
98
+
99
+ Available templates:
100
+
101
+ - `base`
102
+ - `advanced`
103
+ - `production`
104
+
105
+ After generation:
106
+
107
+ ```bash
108
+ cd my-app
109
+ python -m src.app.main
110
+ ```
111
+
112
+ ## Example Workflow
113
+
114
+ Typical flow for a production scaffold:
115
+
116
+ ```bash
117
+ pip install -e .
118
+ langgraph-init my-app --template production
119
+ cd my-app
120
+ pip install -e .
121
+ python -m src.app.main
122
+ ```
123
+
124
+ ## CLI Design
125
+
126
+ The CLI is intentionally small:
127
+
128
+ - `langgraph_cli/cli.py` exposes the Typer command
129
+ - `langgraph_cli/generator.py` copies template files
130
+ - `{{PROJECT_NAME}}` placeholders are replaced during generation
131
+ - Embedded templates live under `langgraph_cli/templates/`
132
+
133
+ The generator also ignores Python cache artifacts so packaged templates remain clean when the CLI itself is compiled locally.
134
+
135
+ ## Generated Project Conventions
136
+
137
+ The advanced and production templates use a graph abstraction pattern built around three concepts:
138
+
139
+ - `Names`: stable graph node identifiers used when wiring edges
140
+ - `Nodes`: callable node implementations
141
+ - `Tags`: routing labels for conditional edges
142
+
143
+ This pattern keeps graph wiring readable and separates string identifiers from executable node functions.
144
+
145
+ Example:
146
+
147
+ ```python
148
+ class Names:
149
+ INTENT = "intent"
150
+
151
+
152
+ class Nodes:
153
+ INTENT = intent_node
154
+
155
+
156
+ class Tags:
157
+ CONTINUE = "continue"
158
+ ```
159
+
160
+ ## Production Template Architecture
161
+
162
+ The production scaffold generates this high-level layout:
163
+
164
+ ```text
165
+ src/app/
166
+ ├── main.py
167
+ ├── config.py
168
+ ├── graph/
169
+ ├── nodes/
170
+ ├── services/
171
+ ├── tools/
172
+ ├── prompts/
173
+ ├── models/
174
+ ├── storage/
175
+ ├── utils/
176
+ ├── observability/
177
+ ├── evaluation/
178
+ └── api/
179
+ ```
180
+
181
+ ### Graph Layer
182
+
183
+ The graph layer is responsible for:
184
+
185
+ - Declaring typed workflow state
186
+ - Registering nodes
187
+ - Routing execution
188
+ - Handling validation retries
189
+ - Defining the orchestration contract
190
+
191
+ ### Nodes
192
+
193
+ Each node handles one concern:
194
+
195
+ - `intent.py`: classify incoming intent
196
+ - `processing.py`: perform extraction and tool-backed enrichment
197
+ - `validation.py`: score output quality
198
+ - `output.py`: build and persist the final workflow result
199
+ - `error.py`: produce a final failure response
200
+
201
+ ### Services
202
+
203
+ Services hold reusable logic that should not live inside nodes:
204
+
205
+ - `llm_service.py`: deterministic LLM-style orchestration and parallel enrichment
206
+ - `prompt_service.py`: prompt loading and access tracking
207
+ - `evaluation_service.py`: evaluation coordination
208
+ - `versioning_service.py`: prompt version switching
209
+ - `tool_service.py`: tool dispatch
210
+
211
+ ### Tools
212
+
213
+ The production template includes a small but extensible tool framework:
214
+
215
+ - `BaseTool` contract
216
+ - Tool registry
217
+ - Deterministic query tool
218
+ - Deterministic HTTP-style tool
219
+ - Calculator tool
220
+ - Retriever tool
221
+
222
+ ### Prompt Versioning
223
+
224
+ Prompts are stored by task and version:
225
+
226
+ ```text
227
+ prompts/versions/
228
+ ├── intent/v1.txt
229
+ ├── intent/v2.txt
230
+ ├── extraction/v1.txt
231
+ └── validation/v1.txt
232
+ ```
233
+
234
+ The prompt service:
235
+
236
+ - Loads prompts by task/version
237
+ - Falls back to default configured versions
238
+ - Falls back to `v1` if a requested version does not exist
239
+ - Records prompt access through a store abstraction
240
+
241
+ ### Evaluation and Observability
242
+
243
+ The production scaffold includes:
244
+
245
+ - Field coverage evaluation
246
+ - Confidence scoring
247
+ - Structured JSON logging
248
+ - Metrics counters
249
+ - LangSmith environment configuration
250
+ - Trace decorators
251
+
252
+ ## langgraph.json
253
+
254
+ Generated projects include:
255
+
256
+ ```json
257
+ {
258
+ "dependencies": ["."],
259
+ "graphs": {
260
+ "<project-name>": "src.app.main:run"
261
+ }
262
+ }
263
+ ```
264
+
265
+ This keeps the project aligned with the requested `src.app.main:run` entrypoint.
266
+
267
+ ## Extending the Scaffold
268
+
269
+ Recommended next steps after generation:
270
+
271
+ - Replace deterministic LLM stubs with your provider client
272
+ - Add real persistence in `storage/`
273
+ - Replace demo tools with domain tools
274
+ - Expand evaluation metrics
275
+ - Add tests around graph routing and node behavior
276
+ - Introduce environment-specific config loading
277
+
278
+ ## Notes
279
+
280
+ - The generated code is runnable without external services by design
281
+ - LangSmith integration is environment-driven and safe by default when disabled
282
+ - The production template favors clean architecture over tight coupling
283
+
284
+ ## Release Guide
285
+
286
+ This package can be published so others can install it with `pip` or `pipx` without cloning the repository.
287
+
288
+ ### Before You Publish
289
+
290
+ Review these items first:
291
+
292
+ - Update the version in `pyproject.toml`
293
+ - Make sure the package name is the one you want to publish
294
+ - Confirm the dependency list is still minimal and intentional
295
+ - Add repository URLs to `pyproject.toml` later if you want PyPI to link to your source repo
296
+
297
+ Current runtime dependencies are:
298
+
299
+ - `langgraph`
300
+ - `langchain`
301
+ - `langsmith`
302
+ - `python-dotenv`
303
+ - `typer`
304
+
305
+ If you want an extra safety check, inspect the resolved dependency tree before publishing:
306
+
307
+ ```bash
308
+ pip install -e .
309
+ pip show langgraph langchain langsmith python-dotenv typer
310
+ pip list
311
+ ```
312
+
313
+ ### Build the Package
314
+
315
+ Install build tooling:
316
+
317
+ ```bash
318
+ python -m pip install --upgrade build twine
319
+ ```
320
+
321
+ Build distributions:
322
+
323
+ ```bash
324
+ python -m build
325
+ ```
326
+
327
+ This creates files in `dist/`.
328
+
329
+ ### Validate the Distribution
330
+
331
+ Run:
332
+
333
+ ```bash
334
+ python -m twine check dist/*
335
+ ```
336
+
337
+ ### Publish to TestPyPI
338
+
339
+ Test the release safely first:
340
+
341
+ ```bash
342
+ python -m twine upload --repository testpypi dist/*
343
+ ```
344
+
345
+ Then verify install in a clean environment:
346
+
347
+ ```bash
348
+ pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ langgraph-init-cli
349
+ langgraph-init demo-app --template production
350
+ ```
351
+
352
+ ### Publish to PyPI
353
+
354
+ When the TestPyPI release looks good:
355
+
356
+ ```bash
357
+ python -m twine upload dist/*
358
+ ```
359
+
360
+ Users can then install the tool with:
361
+
362
+ ```bash
363
+ pip install langgraph-init-cli
364
+ ```
365
+
366
+ Or, for a cleaner CLI-first experience:
367
+
368
+ ```bash
369
+ pipx install langgraph-init-cli
370
+ ```
371
+
372
+ ### Release Checklist
373
+
374
+ - Bump version in `pyproject.toml`
375
+ - Build with `python -m build`
376
+ - Validate with `python -m twine check dist/*`
377
+ - Upload to TestPyPI
378
+ - Smoke test installation
379
+ - Upload to PyPI
380
+
381
+ ### Versioning Reminder
382
+
383
+ PyPI does not allow re-uploading the same version. Every release must use a new version number.