docagent-cli 0.0.35__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (300) hide show
  1. docagent_cli/__init__.py +36 -0
  2. docagent_cli/__main__.py +6 -0
  3. docagent_cli/_ask_user_types.py +90 -0
  4. docagent_cli/_cli_context.py +27 -0
  5. docagent_cli/_debug.py +52 -0
  6. docagent_cli/_env_vars.py +56 -0
  7. docagent_cli/_server_config.py +352 -0
  8. docagent_cli/_session_stats.py +114 -0
  9. docagent_cli/_testing_models.py +144 -0
  10. docagent_cli/_version.py +17 -0
  11. docagent_cli/agent.py +1193 -0
  12. docagent_cli/app.py +4979 -0
  13. docagent_cli/app.tcss +283 -0
  14. docagent_cli/ask_user.py +301 -0
  15. docagent_cli/built_in_skills/__init__.py +5 -0
  16. docagent_cli/built_in_skills/doc-coauthoring/SKILL.md +375 -0
  17. docagent_cli/built_in_skills/docx/LICENSE.txt +30 -0
  18. docagent_cli/built_in_skills/docx/SKILL.md +590 -0
  19. docagent_cli/built_in_skills/docx/scripts/__init__.py +1 -0
  20. docagent_cli/built_in_skills/docx/scripts/accept_changes.py +135 -0
  21. docagent_cli/built_in_skills/docx/scripts/comment.py +318 -0
  22. docagent_cli/built_in_skills/docx/scripts/office/helpers/__init__.py +0 -0
  23. docagent_cli/built_in_skills/docx/scripts/office/helpers/merge_runs.py +199 -0
  24. docagent_cli/built_in_skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
  25. docagent_cli/built_in_skills/docx/scripts/office/pack.py +159 -0
  26. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  27. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  28. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  29. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  30. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  31. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  32. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  33. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  34. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  35. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  36. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  37. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  38. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  39. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  40. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  41. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  42. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  43. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  44. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  45. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  46. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  47. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  48. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  49. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  50. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  51. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  52. docagent_cli/built_in_skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  53. docagent_cli/built_in_skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  54. docagent_cli/built_in_skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  55. docagent_cli/built_in_skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  56. docagent_cli/built_in_skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  57. docagent_cli/built_in_skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
  58. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  59. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  60. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  61. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  62. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  63. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  64. docagent_cli/built_in_skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  65. docagent_cli/built_in_skills/docx/scripts/office/soffice.py +183 -0
  66. docagent_cli/built_in_skills/docx/scripts/office/unpack.py +132 -0
  67. docagent_cli/built_in_skills/docx/scripts/office/validate.py +111 -0
  68. docagent_cli/built_in_skills/docx/scripts/office/validators/__init__.py +15 -0
  69. docagent_cli/built_in_skills/docx/scripts/office/validators/base.py +847 -0
  70. docagent_cli/built_in_skills/docx/scripts/office/validators/docx.py +446 -0
  71. docagent_cli/built_in_skills/docx/scripts/office/validators/pptx.py +275 -0
  72. docagent_cli/built_in_skills/docx/scripts/office/validators/redlining.py +247 -0
  73. docagent_cli/built_in_skills/docx/scripts/templates/comments.xml +3 -0
  74. docagent_cli/built_in_skills/docx/scripts/templates/commentsExtended.xml +3 -0
  75. docagent_cli/built_in_skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  76. docagent_cli/built_in_skills/docx/scripts/templates/commentsIds.xml +3 -0
  77. docagent_cli/built_in_skills/docx/scripts/templates/people.xml +3 -0
  78. docagent_cli/built_in_skills/pdf/LICENSE.txt +30 -0
  79. docagent_cli/built_in_skills/pdf/SKILL.md +314 -0
  80. docagent_cli/built_in_skills/pdf/forms.md +294 -0
  81. docagent_cli/built_in_skills/pdf/reference.md +612 -0
  82. docagent_cli/built_in_skills/pdf/scripts/check_bounding_boxes.py +65 -0
  83. docagent_cli/built_in_skills/pdf/scripts/check_fillable_fields.py +11 -0
  84. docagent_cli/built_in_skills/pdf/scripts/convert_pdf_to_images.py +33 -0
  85. docagent_cli/built_in_skills/pdf/scripts/create_validation_image.py +37 -0
  86. docagent_cli/built_in_skills/pdf/scripts/extract_form_field_info.py +122 -0
  87. docagent_cli/built_in_skills/pdf/scripts/extract_form_structure.py +115 -0
  88. docagent_cli/built_in_skills/pdf/scripts/fill_fillable_fields.py +98 -0
  89. docagent_cli/built_in_skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
  90. docagent_cli/built_in_skills/pptx/LICENSE.txt +30 -0
  91. docagent_cli/built_in_skills/pptx/SKILL.md +232 -0
  92. docagent_cli/built_in_skills/pptx/editing.md +205 -0
  93. docagent_cli/built_in_skills/pptx/pptxgenjs.md +420 -0
  94. docagent_cli/built_in_skills/pptx/scripts/__init__.py +0 -0
  95. docagent_cli/built_in_skills/pptx/scripts/add_slide.py +195 -0
  96. docagent_cli/built_in_skills/pptx/scripts/clean.py +286 -0
  97. docagent_cli/built_in_skills/pptx/scripts/office/helpers/__init__.py +0 -0
  98. docagent_cli/built_in_skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
  99. docagent_cli/built_in_skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
  100. docagent_cli/built_in_skills/pptx/scripts/office/pack.py +159 -0
  101. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  102. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  103. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  104. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  105. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  106. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  107. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  108. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  109. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  110. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  111. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  112. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  113. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  114. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  115. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  116. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  117. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  118. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  119. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  120. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  121. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  122. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  123. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  124. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  125. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  126. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  127. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  128. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  129. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  130. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  131. docagent_cli/built_in_skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  132. docagent_cli/built_in_skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
  133. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  134. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  135. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  136. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  137. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  138. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  139. docagent_cli/built_in_skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  140. docagent_cli/built_in_skills/pptx/scripts/office/soffice.py +183 -0
  141. docagent_cli/built_in_skills/pptx/scripts/office/unpack.py +132 -0
  142. docagent_cli/built_in_skills/pptx/scripts/office/validate.py +111 -0
  143. docagent_cli/built_in_skills/pptx/scripts/office/validators/__init__.py +15 -0
  144. docagent_cli/built_in_skills/pptx/scripts/office/validators/base.py +847 -0
  145. docagent_cli/built_in_skills/pptx/scripts/office/validators/docx.py +446 -0
  146. docagent_cli/built_in_skills/pptx/scripts/office/validators/pptx.py +275 -0
  147. docagent_cli/built_in_skills/pptx/scripts/office/validators/redlining.py +247 -0
  148. docagent_cli/built_in_skills/pptx/scripts/thumbnail.py +289 -0
  149. docagent_cli/built_in_skills/remember/SKILL.md +118 -0
  150. docagent_cli/built_in_skills/skill-creator/LICENSE.txt +202 -0
  151. docagent_cli/built_in_skills/skill-creator/SKILL.md +485 -0
  152. docagent_cli/built_in_skills/skill-creator/agents/analyzer.md +274 -0
  153. docagent_cli/built_in_skills/skill-creator/agents/comparator.md +202 -0
  154. docagent_cli/built_in_skills/skill-creator/agents/grader.md +223 -0
  155. docagent_cli/built_in_skills/skill-creator/assets/eval_review.html +146 -0
  156. docagent_cli/built_in_skills/skill-creator/eval-viewer/generate_review.py +471 -0
  157. docagent_cli/built_in_skills/skill-creator/eval-viewer/viewer.html +1325 -0
  158. docagent_cli/built_in_skills/skill-creator/references/schemas.md +430 -0
  159. docagent_cli/built_in_skills/skill-creator/scripts/__init__.py +0 -0
  160. docagent_cli/built_in_skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  161. docagent_cli/built_in_skills/skill-creator/scripts/generate_report.py +326 -0
  162. docagent_cli/built_in_skills/skill-creator/scripts/improve_description.py +247 -0
  163. docagent_cli/built_in_skills/skill-creator/scripts/package_skill.py +136 -0
  164. docagent_cli/built_in_skills/skill-creator/scripts/quick_validate.py +103 -0
  165. docagent_cli/built_in_skills/skill-creator/scripts/run_eval.py +310 -0
  166. docagent_cli/built_in_skills/skill-creator/scripts/run_loop.py +328 -0
  167. docagent_cli/built_in_skills/skill-creator/scripts/utils.py +47 -0
  168. docagent_cli/built_in_skills/theme-factory/LICENSE.txt +202 -0
  169. docagent_cli/built_in_skills/theme-factory/SKILL.md +59 -0
  170. docagent_cli/built_in_skills/theme-factory/theme-showcase.pdf +0 -0
  171. docagent_cli/built_in_skills/theme-factory/themes/arctic-frost.md +19 -0
  172. docagent_cli/built_in_skills/theme-factory/themes/botanical-garden.md +19 -0
  173. docagent_cli/built_in_skills/theme-factory/themes/desert-rose.md +19 -0
  174. docagent_cli/built_in_skills/theme-factory/themes/forest-canopy.md +19 -0
  175. docagent_cli/built_in_skills/theme-factory/themes/golden-hour.md +19 -0
  176. docagent_cli/built_in_skills/theme-factory/themes/midnight-galaxy.md +19 -0
  177. docagent_cli/built_in_skills/theme-factory/themes/modern-minimalist.md +19 -0
  178. docagent_cli/built_in_skills/theme-factory/themes/ocean-depths.md +19 -0
  179. docagent_cli/built_in_skills/theme-factory/themes/sunset-boulevard.md +19 -0
  180. docagent_cli/built_in_skills/theme-factory/themes/tech-innovation.md +19 -0
  181. docagent_cli/built_in_skills/xlsx/LICENSE.txt +30 -0
  182. docagent_cli/built_in_skills/xlsx/SKILL.md +292 -0
  183. docagent_cli/built_in_skills/xlsx/scripts/office/helpers/__init__.py +0 -0
  184. docagent_cli/built_in_skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
  185. docagent_cli/built_in_skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
  186. docagent_cli/built_in_skills/xlsx/scripts/office/pack.py +159 -0
  187. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  188. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  189. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  190. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  191. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  192. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  193. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  194. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  195. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  196. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  197. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  198. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  199. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  200. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  201. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  202. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  203. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  204. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  205. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  206. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  207. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  208. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  209. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  210. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  211. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  212. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  213. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  214. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  215. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  216. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  217. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  218. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
  219. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
  220. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
  221. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
  222. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
  223. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
  224. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  225. docagent_cli/built_in_skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
  226. docagent_cli/built_in_skills/xlsx/scripts/office/soffice.py +183 -0
  227. docagent_cli/built_in_skills/xlsx/scripts/office/unpack.py +132 -0
  228. docagent_cli/built_in_skills/xlsx/scripts/office/validate.py +111 -0
  229. docagent_cli/built_in_skills/xlsx/scripts/office/validators/__init__.py +15 -0
  230. docagent_cli/built_in_skills/xlsx/scripts/office/validators/base.py +847 -0
  231. docagent_cli/built_in_skills/xlsx/scripts/office/validators/docx.py +446 -0
  232. docagent_cli/built_in_skills/xlsx/scripts/office/validators/pptx.py +275 -0
  233. docagent_cli/built_in_skills/xlsx/scripts/office/validators/redlining.py +247 -0
  234. docagent_cli/built_in_skills/xlsx/scripts/recalc.py +184 -0
  235. docagent_cli/clipboard.py +128 -0
  236. docagent_cli/command_registry.py +284 -0
  237. docagent_cli/config.py +2418 -0
  238. docagent_cli/configurable_model.py +162 -0
  239. docagent_cli/default_agent_prompt.md +12 -0
  240. docagent_cli/editor.py +142 -0
  241. docagent_cli/file_ops.py +473 -0
  242. docagent_cli/formatting.py +28 -0
  243. docagent_cli/hooks.py +206 -0
  244. docagent_cli/input.py +787 -0
  245. docagent_cli/integrations/__init__.py +1 -0
  246. docagent_cli/integrations/sandbox_factory.py +873 -0
  247. docagent_cli/integrations/sandbox_provider.py +71 -0
  248. docagent_cli/local_context.py +718 -0
  249. docagent_cli/main.py +1641 -0
  250. docagent_cli/mcp_tools.py +707 -0
  251. docagent_cli/mcp_trust.py +168 -0
  252. docagent_cli/media_utils.py +478 -0
  253. docagent_cli/model_config.py +1620 -0
  254. docagent_cli/non_interactive.py +948 -0
  255. docagent_cli/offload.py +371 -0
  256. docagent_cli/output.py +69 -0
  257. docagent_cli/project_utils.py +188 -0
  258. docagent_cli/py.typed +0 -0
  259. docagent_cli/remote_client.py +515 -0
  260. docagent_cli/server.py +520 -0
  261. docagent_cli/server_graph.py +196 -0
  262. docagent_cli/server_manager.py +365 -0
  263. docagent_cli/sessions.py +1262 -0
  264. docagent_cli/skills/__init__.py +18 -0
  265. docagent_cli/skills/commands.py +1090 -0
  266. docagent_cli/skills/load.py +192 -0
  267. docagent_cli/subagents.py +173 -0
  268. docagent_cli/system_prompt.md +247 -0
  269. docagent_cli/textual_adapter.py +1352 -0
  270. docagent_cli/theme.py +842 -0
  271. docagent_cli/token_state.py +31 -0
  272. docagent_cli/tool_display.py +298 -0
  273. docagent_cli/tools.py +236 -0
  274. docagent_cli/ui.py +420 -0
  275. docagent_cli/unicode_security.py +516 -0
  276. docagent_cli/update_check.py +454 -0
  277. docagent_cli/widgets/__init__.py +9 -0
  278. docagent_cli/widgets/_links.py +63 -0
  279. docagent_cli/widgets/approval.py +442 -0
  280. docagent_cli/widgets/ask_user.py +398 -0
  281. docagent_cli/widgets/autocomplete.py +691 -0
  282. docagent_cli/widgets/chat_input.py +1827 -0
  283. docagent_cli/widgets/diff.py +248 -0
  284. docagent_cli/widgets/history.py +188 -0
  285. docagent_cli/widgets/loading.py +177 -0
  286. docagent_cli/widgets/mcp_viewer.py +362 -0
  287. docagent_cli/widgets/message_store.py +675 -0
  288. docagent_cli/widgets/messages.py +1751 -0
  289. docagent_cli/widgets/model_selector.py +964 -0
  290. docagent_cli/widgets/status.py +372 -0
  291. docagent_cli/widgets/theme_selector.py +164 -0
  292. docagent_cli/widgets/thread_selector.py +1905 -0
  293. docagent_cli/widgets/tool_renderers.py +148 -0
  294. docagent_cli/widgets/tool_widgets.py +274 -0
  295. docagent_cli/widgets/welcome.py +339 -0
  296. docagent_cli-0.0.35.data/data/docagent_cli/default_agent_prompt.md +12 -0
  297. docagent_cli-0.0.35.dist-info/METADATA +200 -0
  298. docagent_cli-0.0.35.dist-info/RECORD +300 -0
  299. docagent_cli-0.0.35.dist-info/WHEEL +4 -0
  300. docagent_cli-0.0.35.dist-info/entry_points.txt +3 -0
@@ -0,0 +1,339 @@
1
+ """Welcome banner widget for docagent-cli."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import asyncio
6
+ import random
7
+ from typing import TYPE_CHECKING, Any
8
+
9
+ from textual.color import Color as TColor
10
+ from textual.content import Content
11
+ from textual.style import Style as TStyle
12
+ from textual.widgets import Static
13
+
14
+ if TYPE_CHECKING:
15
+ from textual.events import Click
16
+
17
+ from docagent_cli import theme
18
+ from docagent_cli._version import __version__
19
+ from docagent_cli.config import (
20
+ _get_editable_install_path,
21
+ _is_editable_install,
22
+ fetch_langsmith_project_url,
23
+ get_banner,
24
+ get_glyphs,
25
+ get_langsmith_project_name,
26
+ )
27
+ from docagent_cli.widgets._links import open_style_link
28
+
29
+ _TIPS: list[str] = [
30
+ "Use @ to reference files and / for commands",
31
+ "Try /threads to resume a previous conversation",
32
+ "Use /offload when your conversation gets long",
33
+ "Use /mcp to see your loaded tools and servers",
34
+ "Use /remember to save learnings from this conversation",
35
+ "Use /model to switch models mid-conversation",
36
+ "Press ctrl+x to compose prompts in your external editor",
37
+ "Press ctrl+u to delete to the start of the line in the chat input",
38
+ "Use /skill:<name> to invoke a skill directly",
39
+ "Type /update to check for and install updates",
40
+ "Use /theme to customize the CLI colors and style",
41
+ "Use /skill-creator to build reusable agent skills",
42
+ "Use /auto-update to toggle automatic CLI updates",
43
+ ]
44
+ """Rotating tips shown in the welcome footer.
45
+
46
+ One is picked per session.
47
+ """
48
+
49
+
50
+ class WelcomeBanner(Static):
51
+ """Welcome banner displayed at startup."""
52
+
53
+ # Disable Textual's auto_links to prevent a flicker cycle: Style.__add__
54
+ # calls .copy() for linked styles, generating a fresh random _link_id on
55
+ # each render. This means highlight_link_id never stabilizes, causing an
56
+ # infinite hover-refresh loop.
57
+ auto_links = False
58
+
59
+ DEFAULT_CSS = """
60
+ WelcomeBanner {
61
+ height: auto;
62
+ padding: 1;
63
+ margin-bottom: 1;
64
+ }
65
+ """
66
+
67
+ def __init__(
68
+ self,
69
+ thread_id: str | None = None,
70
+ mcp_tool_count: int = 0,
71
+ *,
72
+ connecting: bool = False,
73
+ resuming: bool = False,
74
+ local_server: bool = False,
75
+ **kwargs: Any,
76
+ ) -> None:
77
+ """Initialize the welcome banner.
78
+
79
+ Args:
80
+ thread_id: Optional thread ID to display in the banner.
81
+ mcp_tool_count: Number of MCP tools loaded at startup.
82
+ connecting: When `True`, show a "Connecting..." footer instead of
83
+ the normal ready prompt. Call `set_connected` to transition.
84
+ resuming: When `True`, the connecting footer says "Resuming..."
85
+ instead of any `'Connecting...'` variant.
86
+ local_server: When `True`, the connecting footer qualifies the
87
+ server as "local" (i.e. a server process managed by the
88
+ CLI).
89
+
90
+ Ignored when `resuming` is `True`.
91
+ **kwargs: Additional arguments passed to parent.
92
+ """
93
+ # Avoid collision with Widget._thread_id (Textual internal int)
94
+ self._cli_thread_id: str | None = thread_id
95
+ self._mcp_tool_count = mcp_tool_count
96
+ self._connecting = connecting
97
+ self._resuming = resuming
98
+ self._local_server = local_server
99
+ self._failed = False
100
+ self._failure_error: str = ""
101
+ self._project_name: str | None = get_langsmith_project_name()
102
+ self._project_url: str | None = None
103
+ self._tip: str = random.choice(_TIPS) # noqa: S311
104
+
105
+ super().__init__(self._build_banner(), **kwargs)
106
+
107
+ def on_mount(self) -> None:
108
+ """Kick off background fetch for LangSmith project URL."""
109
+ self.watch(self.app, "theme", self._on_theme_change, init=False)
110
+ if self._project_name:
111
+ self.run_worker(self._fetch_and_update, exclusive=True)
112
+
113
+ def _on_theme_change(self) -> None:
114
+ """Re-render the banner when the app theme changes."""
115
+ self.update(self._build_banner(self._project_url))
116
+
117
+ async def _fetch_and_update(self) -> None:
118
+ """Fetch the LangSmith URL in a thread and update the banner."""
119
+ if not self._project_name:
120
+ return
121
+ try:
122
+ project_url = await asyncio.wait_for(
123
+ asyncio.to_thread(fetch_langsmith_project_url, self._project_name),
124
+ timeout=2.0,
125
+ )
126
+ except (TimeoutError, OSError):
127
+ project_url = None
128
+ if project_url:
129
+ self._project_url = project_url
130
+ self.update(self._build_banner(project_url))
131
+
132
+ def update_thread_id(self, thread_id: str) -> None:
133
+ """Update the displayed thread ID and re-render the banner.
134
+
135
+ Args:
136
+ thread_id: The new thread ID to display.
137
+ """
138
+ self._cli_thread_id = thread_id
139
+ self.update(self._build_banner(self._project_url))
140
+
141
+ def set_connected(self, mcp_tool_count: int = 0) -> None:
142
+ """Transition from "connecting" to "ready" state.
143
+
144
+ Args:
145
+ mcp_tool_count: Number of MCP tools loaded during connection.
146
+ """
147
+ self._connecting = False
148
+ self._failed = False
149
+ self._mcp_tool_count = mcp_tool_count
150
+ self.update(self._build_banner(self._project_url))
151
+
152
+ def set_failed(self, error: str) -> None:
153
+ """Transition from "connecting" to a persistent failure state.
154
+
155
+ Args:
156
+ error: Error message describing the server startup failure.
157
+ """
158
+ self._connecting = False
159
+ self._failed = True
160
+ self._failure_error = error
161
+ self.update(self._build_banner(self._project_url))
162
+
163
+ def on_click(self, event: Click) -> None: # noqa: PLR6301 # Textual event handler
164
+ """Open style-embedded hyperlinks on single click."""
165
+ open_style_link(event)
166
+
167
+ def _build_banner(self, project_url: str | None = None) -> Content:
168
+ """Build the banner content.
169
+
170
+ When a `project_url` is provided and a thread ID is set, the thread ID
171
+ is rendered as a clickable hyperlink to the LangSmith thread view.
172
+
173
+ Args:
174
+ project_url: LangSmith project URL used for linking the project
175
+ name and thread ID. When `None`, text is rendered without links.
176
+
177
+ Returns:
178
+ Content object containing the formatted banner.
179
+ """
180
+ parts: list[str | tuple[str, str | TStyle] | Content] = []
181
+ colors = theme.get_theme_colors(self)
182
+ ansi = self.app.theme == "textual-ansi"
183
+
184
+ banner = get_banner()
185
+ primary_style: str | TStyle = (
186
+ "bold"
187
+ if ansi
188
+ else TStyle(foreground=TColor.parse(colors.primary), bold=True)
189
+ )
190
+
191
+ if not ansi and _is_editable_install():
192
+ # Highlight local-install version tag with tool accent; art stays primary.
193
+ dev_style = TStyle(foreground=TColor.parse(colors.tool), bold=True)
194
+ version_tag = f"v{__version__} (local)"
195
+ idx = banner.rfind(version_tag)
196
+ if idx >= 0:
197
+ parts.extend(
198
+ [
199
+ (banner[:idx], primary_style),
200
+ (version_tag, dev_style),
201
+ (banner[idx + len(version_tag) :] + "\n", primary_style),
202
+ ]
203
+ )
204
+ else:
205
+ parts.append((banner + "\n", primary_style))
206
+ else:
207
+ parts.append((banner + "\n", primary_style))
208
+
209
+ # For ANSI theme, use "bold" (terminal foreground) instead of hex
210
+ accent: str | TStyle = "bold" if ansi else colors.primary
211
+ success_color: str = "bold green" if ansi else colors.success
212
+
213
+ editable_path = _get_editable_install_path()
214
+ if editable_path:
215
+ parts.extend([("Installed from: ", "dim"), (editable_path, "dim"), "\n"])
216
+
217
+ if self._project_name:
218
+ parts.extend(
219
+ [
220
+ (f"{get_glyphs().checkmark} ", success_color),
221
+ "LangSmith tracing: ",
222
+ ]
223
+ )
224
+ if project_url:
225
+ link_style: str | TStyle
226
+ if ansi:
227
+ url = f"{project_url}?utm_source=docagent-cli"
228
+ link_style = TStyle(bold=True, link=url)
229
+ else:
230
+ link_style = TStyle(
231
+ foreground=TColor.parse(colors.primary),
232
+ link=f"{project_url}?utm_source=docagent-cli",
233
+ )
234
+ parts.append((f"'{self._project_name}'", link_style))
235
+ else:
236
+ parts.append((f"'{self._project_name}'", accent))
237
+ parts.append("\n")
238
+
239
+ if self._cli_thread_id:
240
+ if project_url:
241
+ thread_url = (
242
+ f"{project_url.rstrip('/')}/t/{self._cli_thread_id}"
243
+ "?utm_source=docagent-cli"
244
+ )
245
+ parts.extend(
246
+ [
247
+ ("Thread: ", "dim"),
248
+ (self._cli_thread_id, TStyle(dim=True, link=thread_url)),
249
+ ("\n", "dim"),
250
+ ]
251
+ )
252
+ else:
253
+ parts.append((f"Thread: {self._cli_thread_id}\n", "dim"))
254
+
255
+ if self._mcp_tool_count > 0:
256
+ parts.append((f"{get_glyphs().checkmark} ", success_color))
257
+ label = "MCP tool" if self._mcp_tool_count == 1 else "MCP tools"
258
+ parts.append(f"Loaded {self._mcp_tool_count} {label}\n")
259
+
260
+ if self._failed:
261
+ parts.append(build_failure_footer(self._failure_error))
262
+ elif self._connecting:
263
+ parts.append(
264
+ build_connecting_footer(
265
+ resuming=self._resuming,
266
+ local_server=self._local_server,
267
+ )
268
+ )
269
+ else:
270
+ ready_color = "bold" if ansi else colors.primary
271
+ parts.append(build_welcome_footer(primary_color=ready_color, tip=self._tip))
272
+ return Content.assemble(*parts)
273
+
274
+
275
+ def build_failure_footer(error: str) -> Content:
276
+ """Build a footer shown when the server failed to start.
277
+
278
+ Args:
279
+ error: Error message describing the failure.
280
+
281
+ Returns:
282
+ Content with a persistent failure message.
283
+ """
284
+ colors = theme.get_theme_colors()
285
+ return Content.assemble(
286
+ ("\nServer failed to start: ", f"bold {colors.error}"),
287
+ (error, colors.error),
288
+ ("\n", colors.error),
289
+ )
290
+
291
+
292
+ def build_connecting_footer(
293
+ *, resuming: bool = False, local_server: bool = False
294
+ ) -> Content:
295
+ """Build a footer shown while waiting for the server to connect.
296
+
297
+ Args:
298
+ resuming: Show `'Resuming...'` instead of any `'Connecting...'` variant.
299
+ local_server: Qualify the server as "local" in the connecting message.
300
+
301
+ Ignored when `resuming` is `True`.
302
+
303
+ Returns:
304
+ Content with a connecting status message.
305
+ """
306
+ if resuming:
307
+ text = "\nResuming...\n"
308
+ elif local_server:
309
+ text = "\nConnecting to local server...\n"
310
+ else:
311
+ text = "\nConnecting to server...\n"
312
+ return Content.styled(text, "dim")
313
+
314
+
315
+ def build_welcome_footer(
316
+ *, primary_color: str = theme.PRIMARY, tip: str | None = None
317
+ ) -> Content:
318
+ """Build the footer shown at the bottom of the welcome banner.
319
+
320
+ Includes a tip to help users discover features.
321
+
322
+ Args:
323
+ primary_color: Color string for the ready prompt.
324
+
325
+ Defaults to the module-level ANSI `PRIMARY` constant; widget callers
326
+ should pass the active theme's hex value.
327
+ tip: Tip text to display. When `None`, a random tip is selected.
328
+
329
+ Pass an explicit value to keep the tip stable across re-renders.
330
+
331
+ Returns:
332
+ Content with the ready prompt and a tip.
333
+ """
334
+ if tip is None:
335
+ tip = random.choice(_TIPS) # noqa: S311
336
+ return Content.assemble(
337
+ ("\nReady to code! What would you like to build?\n", primary_color),
338
+ (f"Tip: {tip}", "dim italic"),
339
+ )
@@ -0,0 +1,12 @@
1
+ # Project Notes
2
+
3
+ This file is for tracking project-specific context as you work.
4
+ You can update this file to remember decisions, patterns, and context about this project.
5
+
6
+ ## Architecture Notes
7
+
8
+ (Add notes about project structure, key files, patterns as you discover them)
9
+
10
+ ## Decisions
11
+
12
+ (Track important decisions and their rationale)
@@ -0,0 +1,200 @@
1
+ Metadata-Version: 2.4
2
+ Name: docagent-cli
3
+ Version: 0.0.35
4
+ Summary: Terminal interface for Deep Agents - interactive AI agent with file operations, shell access, and sub-agent capabilities.
5
+ Project-URL: Homepage, https://docs.langchain.com/oss/python/docagent/overview
6
+ Project-URL: Documentation, https://reference.langchain.com/python/docagent/
7
+ Project-URL: Repository, https://github.com/langchain-ai/docagent
8
+ Project-URL: Issues, https://github.com/langchain-ai/docagent/issues
9
+ Project-URL: Changelog, https://github.com/langchain-ai/docagent/blob/main/libs/cli/CHANGELOG.md
10
+ Project-URL: Twitter, https://x.com/LangChain
11
+ Project-URL: Slack, https://www.langchain.com/join-community
12
+ Project-URL: Reddit, https://www.reddit.com/r/LangChain/
13
+ License: MIT
14
+ Keywords: agents,ai,cli,deep-agent,langchain,langgraph,llm,terminal
15
+ Classifier: Development Status :: 4 - Beta
16
+ Classifier: Environment :: Console
17
+ Classifier: Intended Audience :: Developers
18
+ Classifier: License :: OSI Approved :: MIT License
19
+ Classifier: Programming Language :: Python :: 3
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Programming Language :: Python :: 3.12
22
+ Classifier: Programming Language :: Python :: 3.13
23
+ Classifier: Programming Language :: Python :: 3.14
24
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
25
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
26
+ Classifier: Topic :: Terminals
27
+ Requires-Python: <4.0,>=3.11
28
+ Requires-Dist: aiosqlite<1.0.0,>=0.19.0
29
+ Requires-Dist: deepagents-acp>=0.0.4
30
+ Requires-Dist: deepagents==0.4.11
31
+ Requires-Dist: httpx<1.0.0,>=0.28.1
32
+ Requires-Dist: langchain-anthropic<2.0.0,>=1.4.0
33
+ Requires-Dist: langchain-google-genai<5.0.0,>=4.2.1
34
+ Requires-Dist: langchain-mcp-adapters<1.0.0,>=0.2.0
35
+ Requires-Dist: langchain-openai<2.0.0,>=1.1.8
36
+ Requires-Dist: langchain<2.0.0,>=1.2.13
37
+ Requires-Dist: langgraph-checkpoint-sqlite<4.0.0,>=3.0.0
38
+ Requires-Dist: langgraph-cli[inmem]<1.0.0,>=0.4.15
39
+ Requires-Dist: langgraph-sdk<1.0.0,>=0.3.11
40
+ Requires-Dist: langgraph<2.0.0,>=1.1.2
41
+ Requires-Dist: langsmith[sandbox]>=0.7.7
42
+ Requires-Dist: markdownify<2.0.0,>=0.13.0
43
+ Requires-Dist: packaging>=23.0
44
+ Requires-Dist: pillow<13.0.0,>=10.0.0
45
+ Requires-Dist: prompt-toolkit<4.0.0,>=3.0.52
46
+ Requires-Dist: pyperclip<2.0.0,>=1.11.0
47
+ Requires-Dist: python-dotenv<2.0.0,>=1.0.0
48
+ Requires-Dist: pyyaml>=6.0.0
49
+ Requires-Dist: requests<3.0.0,>=2.0.0
50
+ Requires-Dist: rich<15.0.0,>=14.0.0
51
+ Requires-Dist: tavily-python<1.0.0,>=0.7.21
52
+ Requires-Dist: textual-autocomplete<5.0.0,>=3.0.0
53
+ Requires-Dist: textual-speedups<1.0.0,>=0.2.1
54
+ Requires-Dist: textual<9.0.0,>=8.0.0
55
+ Requires-Dist: tomli-w<2.0.0,>=1.0.0
56
+ Requires-Dist: uuid-utils<1.0.0,>=0.10.0
57
+ Provides-Extra: agentcore
58
+ Requires-Dist: langchain-agentcore-codeinterpreter>=0.0.1; extra == 'agentcore'
59
+ Provides-Extra: all-providers
60
+ Requires-Dist: langchain-anthropic<2.0.0,>=1.4.0; extra == 'all-providers'
61
+ Requires-Dist: langchain-aws<2.0.0,>=1.0.0; extra == 'all-providers'
62
+ Requires-Dist: langchain-baseten<1.0.0,>=0.1.9; extra == 'all-providers'
63
+ Requires-Dist: langchain-cohere<1.0.0,>=0.5.0; extra == 'all-providers'
64
+ Requires-Dist: langchain-deepseek<2.0.0,>=1.0.0; extra == 'all-providers'
65
+ Requires-Dist: langchain-fireworks<2.0.0,>=1.0.0; extra == 'all-providers'
66
+ Requires-Dist: langchain-google-genai<5.0.0,>=4.2.1; extra == 'all-providers'
67
+ Requires-Dist: langchain-google-vertexai<4.0.0,>=3.0.0; extra == 'all-providers'
68
+ Requires-Dist: langchain-groq<2.0.0,>=1.0.0; extra == 'all-providers'
69
+ Requires-Dist: langchain-huggingface<2.0.0,>=1.0.0; extra == 'all-providers'
70
+ Requires-Dist: langchain-ibm<2.0.0,>=1.0.0; extra == 'all-providers'
71
+ Requires-Dist: langchain-litellm<2.0.0,>=0.6.1; extra == 'all-providers'
72
+ Requires-Dist: langchain-mistralai<2.0.0,>=1.0.0; extra == 'all-providers'
73
+ Requires-Dist: langchain-nvidia-ai-endpoints<2.0.0,>=1.0.0; extra == 'all-providers'
74
+ Requires-Dist: langchain-ollama<2.0.0,>=1.0.0; extra == 'all-providers'
75
+ Requires-Dist: langchain-openai<2.0.0,>=1.1.8; extra == 'all-providers'
76
+ Requires-Dist: langchain-openrouter<2.0.0,>=0.2.0; extra == 'all-providers'
77
+ Requires-Dist: langchain-perplexity<2.0.0,>=1.0.0; extra == 'all-providers'
78
+ Requires-Dist: langchain-xai<2.0.0,>=1.0.0; extra == 'all-providers'
79
+ Provides-Extra: all-sandboxes
80
+ Requires-Dist: langchain-agentcore-codeinterpreter>=0.0.1; extra == 'all-sandboxes'
81
+ Requires-Dist: langchain-daytona>=0.0.4; extra == 'all-sandboxes'
82
+ Requires-Dist: langchain-modal>=0.0.2; extra == 'all-sandboxes'
83
+ Requires-Dist: langchain-runloop>=0.0.3; extra == 'all-sandboxes'
84
+ Provides-Extra: anthropic
85
+ Requires-Dist: langchain-anthropic<2.0.0,>=1.4.0; extra == 'anthropic'
86
+ Provides-Extra: baseten
87
+ Requires-Dist: langchain-baseten<1.0.0,>=0.1.9; extra == 'baseten'
88
+ Provides-Extra: bedrock
89
+ Requires-Dist: langchain-aws<2.0.0,>=1.0.0; extra == 'bedrock'
90
+ Provides-Extra: cohere
91
+ Requires-Dist: langchain-cohere<1.0.0,>=0.5.0; extra == 'cohere'
92
+ Provides-Extra: daytona
93
+ Requires-Dist: langchain-daytona>=0.0.4; extra == 'daytona'
94
+ Provides-Extra: deepseek
95
+ Requires-Dist: langchain-deepseek<2.0.0,>=1.0.0; extra == 'deepseek'
96
+ Provides-Extra: fireworks
97
+ Requires-Dist: langchain-fireworks<2.0.0,>=1.0.0; extra == 'fireworks'
98
+ Provides-Extra: google-genai
99
+ Requires-Dist: langchain-google-genai<5.0.0,>=4.2.1; extra == 'google-genai'
100
+ Provides-Extra: groq
101
+ Requires-Dist: langchain-groq<2.0.0,>=1.0.0; extra == 'groq'
102
+ Provides-Extra: huggingface
103
+ Requires-Dist: langchain-huggingface<2.0.0,>=1.0.0; extra == 'huggingface'
104
+ Provides-Extra: ibm
105
+ Requires-Dist: langchain-ibm<2.0.0,>=1.0.0; extra == 'ibm'
106
+ Provides-Extra: litellm
107
+ Requires-Dist: langchain-litellm<2.0.0,>=0.6.1; extra == 'litellm'
108
+ Provides-Extra: mistralai
109
+ Requires-Dist: langchain-mistralai<2.0.0,>=1.0.0; extra == 'mistralai'
110
+ Provides-Extra: modal
111
+ Requires-Dist: langchain-modal>=0.0.2; extra == 'modal'
112
+ Provides-Extra: nvidia
113
+ Requires-Dist: langchain-nvidia-ai-endpoints<2.0.0,>=1.0.0; extra == 'nvidia'
114
+ Provides-Extra: ollama
115
+ Requires-Dist: langchain-ollama<2.0.0,>=1.0.0; extra == 'ollama'
116
+ Provides-Extra: openai
117
+ Requires-Dist: langchain-openai<2.0.0,>=1.1.8; extra == 'openai'
118
+ Provides-Extra: openrouter
119
+ Requires-Dist: langchain-openrouter<2.0.0,>=0.2.0; extra == 'openrouter'
120
+ Provides-Extra: perplexity
121
+ Requires-Dist: langchain-perplexity<2.0.0,>=1.0.0; extra == 'perplexity'
122
+ Provides-Extra: runloop
123
+ Requires-Dist: langchain-runloop>=0.0.3; extra == 'runloop'
124
+ Provides-Extra: vertexai
125
+ Requires-Dist: langchain-google-vertexai<4.0.0,>=3.0.0; extra == 'vertexai'
126
+ Provides-Extra: xai
127
+ Requires-Dist: langchain-xai<2.0.0,>=1.0.0; extra == 'xai'
128
+ Description-Content-Type: text/markdown
129
+
130
+ # 🧠🤖 Deep Agents CLI
131
+
132
+ [![PyPI - Version](https://img.shields.io/pypi/v/docagent-cli?label=%20)](https://pypi.org/project/docagent-cli/#history)
133
+ [![PyPI - License](https://img.shields.io/pypi/l/docagent-cli)](https://opensource.org/licenses/MIT)
134
+ [![PyPI - Downloads](https://img.shields.io/pepy/dt/docagent-cli)](https://pypistats.org/packages/docagent-cli)
135
+ [![Twitter](https://img.shields.io/twitter/url/https/twitter.com/langchain.svg?style=social&label=Follow%20%40LangChain)](https://x.com/langchain)
136
+
137
+ <p align="center">
138
+ <img src="https://raw.githubusercontent.com/langchain-ai/docagent/main/libs/cli/images/cli.png" alt="Deep Agents CLI" width="600"/>
139
+ </p>
140
+
141
+ ## Quick Install
142
+
143
+ ```bash
144
+ curl -LsSf https://raw.githubusercontent.com/langchain-ai/docagent/main/libs/cli/scripts/install.sh | bash
145
+ ```
146
+
147
+ ```bash
148
+ # With model provider extras
149
+ # OpenAI, Anthropic, and Gemini are included by default
150
+ DEEPAGENTS_EXTRAS="nvidia,ollama" curl -LsSf https://raw.githubusercontent.com/langchain-ai/docagent/main/libs/cli/scripts/install.sh | bash
151
+ ```
152
+
153
+ Or install directly with `uv`:
154
+
155
+ ```bash
156
+ # Install with chosen model providers
157
+ uv tool install 'docagent-cli[nvidia,ollama]'
158
+ ```
159
+
160
+ Run the CLI:
161
+
162
+ ```bash
163
+ docagent
164
+ ```
165
+
166
+ ## 🤔 What is this?
167
+
168
+ The fastest way to start using Deep Agents. `docagent-cli` is a pre-built coding agent in your terminal — similar to Claude Code or Cursor — powered by any LLM that supports tool calling. One install command and you're up and running, no code required.
169
+
170
+ **What the CLI adds on top of the SDK:**
171
+
172
+ - **Interactive TUI** — rich terminal interface with streaming responses
173
+ - **Conversation resume** — pick up where you left off across sessions
174
+ - **Web search** — ground responses in live information
175
+ - **Remote sandboxes** — run code in isolated environments (LangSmith, AgentCore, Daytona, Modal, Runloop, & more)
176
+ - **Persistent memory** — agent remembers context across conversations
177
+ - **Custom skills** — extend the agent with your own slash commands
178
+ - **Headless mode** — run non-interactively for scripting and CI
179
+ - **Human-in-the-loop** — approve or reject tool calls before execution
180
+
181
+ ## 📖 Resources
182
+
183
+ - **[CLI Documentation](https://docs.langchain.com/oss/python/docagent/cli/overview)**
184
+ - **[Changelog](https://github.com/langchain-ai/docagent/blob/main/libs/cli/CHANGELOG.md)**
185
+ - **[Source code](https://github.com/langchain-ai/docagent/tree/main/libs/cli)**
186
+ - **[Deep Agents SDK](https://github.com/langchain-ai/docagent)** — underlying agent harness
187
+
188
+ ## 📕 Releases & Versioning
189
+
190
+ See our [Releases](https://docs.langchain.com/oss/python/release-policy) and [Versioning](https://docs.langchain.com/oss/python/versioning) policies.
191
+
192
+ ## 💁 Contributing
193
+
194
+ As an open-source project in a rapidly developing field, we are extremely open to contributions, whether it be in the form of a new feature, improved infrastructure, or better documentation.
195
+
196
+ For detailed information on how to contribute, see the [Contributing Guide](https://docs.langchain.com/oss/python/contributing/overview).
197
+
198
+ ## 🤝 Acknowledgements
199
+
200
+ This project was primarily inspired by Claude Code, and initially was largely an attempt to see what made Claude Code general purpose, and make it even more so.