npcsh 1.1.17__py3-none-any.whl → 1.1.19__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 (197) hide show
  1. npcsh/_state.py +122 -91
  2. npcsh/alicanto.py +2 -2
  3. npcsh/benchmark/__init__.py +8 -2
  4. npcsh/benchmark/npcsh_agent.py +87 -22
  5. npcsh/benchmark/runner.py +85 -43
  6. npcsh/benchmark/templates/install-npcsh.sh.j2 +35 -0
  7. npcsh/build.py +2 -4
  8. npcsh/completion.py +2 -6
  9. npcsh/config.py +2 -3
  10. npcsh/conversation_viewer.py +389 -0
  11. npcsh/corca.py +0 -1
  12. npcsh/diff_viewer.py +452 -0
  13. npcsh/execution.py +0 -1
  14. npcsh/guac.py +0 -1
  15. npcsh/mcp_helpers.py +2 -3
  16. npcsh/mcp_server.py +5 -10
  17. npcsh/npc.py +10 -11
  18. npcsh/npc_team/jinxs/bin/benchmark.jinx +1 -1
  19. npcsh/npc_team/jinxs/bin/config_tui.jinx +299 -0
  20. npcsh/npc_team/jinxs/bin/memories.jinx +316 -0
  21. npcsh/npc_team/jinxs/bin/setup.jinx +240 -0
  22. npcsh/npc_team/jinxs/bin/sync.jinx +143 -150
  23. npcsh/npc_team/jinxs/bin/team_tui.jinx +327 -0
  24. npcsh/npc_team/jinxs/incognide/add_tab.jinx +1 -1
  25. npcsh/npc_team/jinxs/incognide/close_pane.jinx +1 -1
  26. npcsh/npc_team/jinxs/incognide/close_tab.jinx +1 -1
  27. npcsh/npc_team/jinxs/incognide/confirm.jinx +1 -1
  28. npcsh/npc_team/jinxs/incognide/focus_pane.jinx +1 -1
  29. npcsh/npc_team/jinxs/incognide/list_panes.jinx +1 -1
  30. npcsh/npc_team/jinxs/incognide/navigate.jinx +1 -1
  31. npcsh/npc_team/jinxs/incognide/notify.jinx +1 -1
  32. npcsh/npc_team/jinxs/incognide/open_pane.jinx +1 -1
  33. npcsh/npc_team/jinxs/incognide/read_pane.jinx +1 -1
  34. npcsh/npc_team/jinxs/incognide/run_terminal.jinx +1 -1
  35. npcsh/npc_team/jinxs/incognide/send_message.jinx +1 -1
  36. npcsh/npc_team/jinxs/incognide/split_pane.jinx +1 -1
  37. npcsh/npc_team/jinxs/incognide/switch_npc.jinx +1 -1
  38. npcsh/npc_team/jinxs/incognide/switch_tab.jinx +1 -1
  39. npcsh/npc_team/jinxs/incognide/write_file.jinx +1 -1
  40. npcsh/npc_team/jinxs/incognide/zen_mode.jinx +1 -1
  41. npcsh/npc_team/jinxs/lib/core/search/db_search.jinx +321 -17
  42. npcsh/npc_team/jinxs/lib/core/search/file_search.jinx +312 -67
  43. npcsh/npc_team/jinxs/lib/core/search/kg_search.jinx +366 -44
  44. npcsh/npc_team/jinxs/lib/core/search/mem_review.jinx +73 -0
  45. npcsh/npc_team/jinxs/lib/core/search/mem_search.jinx +328 -20
  46. npcsh/npc_team/jinxs/lib/core/search/web_search.jinx +242 -10
  47. npcsh/npc_team/jinxs/lib/core/sleep.jinx +22 -11
  48. npcsh/npc_team/jinxs/lib/core/sql.jinx +10 -6
  49. npcsh/npc_team/jinxs/lib/research/paper_search.jinx +387 -76
  50. npcsh/npc_team/jinxs/lib/research/semantic_scholar.jinx +372 -55
  51. npcsh/npc_team/jinxs/lib/utils/jinxs.jinx +299 -144
  52. npcsh/npc_team/jinxs/modes/alicanto.jinx +356 -0
  53. npcsh/npc_team/jinxs/modes/arxiv.jinx +720 -0
  54. npcsh/npc_team/jinxs/modes/corca.jinx +430 -0
  55. npcsh/npc_team/jinxs/modes/guac.jinx +542 -0
  56. npcsh/npc_team/jinxs/modes/plonk.jinx +379 -0
  57. npcsh/npc_team/jinxs/modes/pti.jinx +357 -0
  58. npcsh/npc_team/jinxs/modes/reattach.jinx +291 -0
  59. npcsh/npc_team/jinxs/modes/spool.jinx +350 -0
  60. npcsh/npc_team/jinxs/modes/wander.jinx +455 -0
  61. npcsh/npc_team/jinxs/{bin → modes}/yap.jinx +13 -7
  62. npcsh/npcsh.py +7 -4
  63. npcsh/plonk.py +0 -1
  64. npcsh/pti.py +0 -1
  65. npcsh/routes.py +1 -3
  66. npcsh/spool.py +0 -1
  67. npcsh/ui.py +0 -1
  68. npcsh/wander.py +0 -1
  69. npcsh/yap.py +0 -1
  70. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/add_tab.jinx +1 -1
  71. npcsh-1.1.19.data/data/npcsh/npc_team/alicanto.jinx +356 -0
  72. npcsh-1.1.19.data/data/npcsh/npc_team/arxiv.jinx +720 -0
  73. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/benchmark.jinx +1 -1
  74. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/close_pane.jinx +1 -1
  75. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/close_tab.jinx +1 -1
  76. npcsh-1.1.19.data/data/npcsh/npc_team/config_tui.jinx +299 -0
  77. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/confirm.jinx +1 -1
  78. npcsh-1.1.19.data/data/npcsh/npc_team/corca.jinx +430 -0
  79. npcsh-1.1.19.data/data/npcsh/npc_team/db_search.jinx +348 -0
  80. npcsh-1.1.19.data/data/npcsh/npc_team/file_search.jinx +339 -0
  81. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/focus_pane.jinx +1 -1
  82. npcsh-1.1.19.data/data/npcsh/npc_team/guac.jinx +542 -0
  83. npcsh-1.1.19.data/data/npcsh/npc_team/jinxs.jinx +331 -0
  84. npcsh-1.1.19.data/data/npcsh/npc_team/kg_search.jinx +418 -0
  85. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/list_panes.jinx +1 -1
  86. npcsh-1.1.19.data/data/npcsh/npc_team/mem_review.jinx +73 -0
  87. npcsh-1.1.19.data/data/npcsh/npc_team/mem_search.jinx +388 -0
  88. npcsh-1.1.19.data/data/npcsh/npc_team/memories.jinx +316 -0
  89. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/navigate.jinx +1 -1
  90. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/notify.jinx +1 -1
  91. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/open_pane.jinx +1 -1
  92. npcsh-1.1.19.data/data/npcsh/npc_team/paper_search.jinx +412 -0
  93. npcsh-1.1.19.data/data/npcsh/npc_team/plonk.jinx +379 -0
  94. npcsh-1.1.19.data/data/npcsh/npc_team/pti.jinx +357 -0
  95. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/read_pane.jinx +1 -1
  96. npcsh-1.1.19.data/data/npcsh/npc_team/reattach.jinx +291 -0
  97. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/run_terminal.jinx +1 -1
  98. npcsh-1.1.19.data/data/npcsh/npc_team/semantic_scholar.jinx +386 -0
  99. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/send_message.jinx +1 -1
  100. npcsh-1.1.19.data/data/npcsh/npc_team/setup.jinx +240 -0
  101. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/sleep.jinx +22 -11
  102. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/split_pane.jinx +1 -1
  103. npcsh-1.1.19.data/data/npcsh/npc_team/spool.jinx +350 -0
  104. npcsh-1.1.19.data/data/npcsh/npc_team/sql.jinx +20 -0
  105. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/switch_npc.jinx +1 -1
  106. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/switch_tab.jinx +1 -1
  107. npcsh-1.1.19.data/data/npcsh/npc_team/sync.jinx +223 -0
  108. npcsh-1.1.19.data/data/npcsh/npc_team/team_tui.jinx +327 -0
  109. npcsh-1.1.19.data/data/npcsh/npc_team/wander.jinx +455 -0
  110. npcsh-1.1.19.data/data/npcsh/npc_team/web_search.jinx +283 -0
  111. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/write_file.jinx +1 -1
  112. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/yap.jinx +13 -7
  113. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/zen_mode.jinx +1 -1
  114. {npcsh-1.1.17.dist-info → npcsh-1.1.19.dist-info}/METADATA +110 -14
  115. npcsh-1.1.19.dist-info/RECORD +244 -0
  116. {npcsh-1.1.17.dist-info → npcsh-1.1.19.dist-info}/WHEEL +1 -1
  117. {npcsh-1.1.17.dist-info → npcsh-1.1.19.dist-info}/entry_points.txt +4 -3
  118. npcsh/npc_team/jinxs/bin/spool.jinx +0 -161
  119. npcsh/npc_team/jinxs/bin/wander.jinx +0 -242
  120. npcsh/npc_team/jinxs/lib/research/arxiv.jinx +0 -76
  121. npcsh-1.1.17.data/data/npcsh/npc_team/arxiv.jinx +0 -76
  122. npcsh-1.1.17.data/data/npcsh/npc_team/db_search.jinx +0 -44
  123. npcsh-1.1.17.data/data/npcsh/npc_team/file_search.jinx +0 -94
  124. npcsh-1.1.17.data/data/npcsh/npc_team/jinxs.jinx +0 -176
  125. npcsh-1.1.17.data/data/npcsh/npc_team/kg_search.jinx +0 -96
  126. npcsh-1.1.17.data/data/npcsh/npc_team/mem_search.jinx +0 -80
  127. npcsh-1.1.17.data/data/npcsh/npc_team/paper_search.jinx +0 -101
  128. npcsh-1.1.17.data/data/npcsh/npc_team/semantic_scholar.jinx +0 -69
  129. npcsh-1.1.17.data/data/npcsh/npc_team/spool.jinx +0 -161
  130. npcsh-1.1.17.data/data/npcsh/npc_team/sql.jinx +0 -16
  131. npcsh-1.1.17.data/data/npcsh/npc_team/sync.jinx +0 -230
  132. npcsh-1.1.17.data/data/npcsh/npc_team/wander.jinx +0 -242
  133. npcsh-1.1.17.data/data/npcsh/npc_team/web_search.jinx +0 -51
  134. npcsh-1.1.17.dist-info/RECORD +0 -219
  135. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/alicanto.npc +0 -0
  136. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/alicanto.png +0 -0
  137. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/browser_action.jinx +0 -0
  138. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/browser_screenshot.jinx +0 -0
  139. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/build.jinx +0 -0
  140. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/chat.jinx +0 -0
  141. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/click.jinx +0 -0
  142. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/close_browser.jinx +0 -0
  143. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/cmd.jinx +0 -0
  144. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/compile.jinx +0 -0
  145. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/compress.jinx +0 -0
  146. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/convene.jinx +0 -0
  147. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/corca.npc +0 -0
  148. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/corca.png +0 -0
  149. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/corca_example.png +0 -0
  150. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/delegate.jinx +0 -0
  151. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/edit_file.jinx +0 -0
  152. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/frederic.npc +0 -0
  153. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/frederic4.png +0 -0
  154. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/guac.npc +0 -0
  155. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/guac.png +0 -0
  156. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/help.jinx +0 -0
  157. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/incognide.jinx +0 -0
  158. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/init.jinx +0 -0
  159. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/kadiefa.npc +0 -0
  160. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/kadiefa.png +0 -0
  161. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/key_press.jinx +0 -0
  162. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/launch_app.jinx +0 -0
  163. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/load_file.jinx +0 -0
  164. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/npcsh.ctx +0 -0
  165. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/npcsh_sibiji.png +0 -0
  166. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/nql.jinx +0 -0
  167. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/open_browser.jinx +0 -0
  168. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/ots.jinx +0 -0
  169. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/paste.jinx +0 -0
  170. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/plonk.npc +0 -0
  171. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/plonk.png +0 -0
  172. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/plonkjr.npc +0 -0
  173. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/plonkjr.png +0 -0
  174. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/python.jinx +0 -0
  175. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/roll.jinx +0 -0
  176. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/sample.jinx +0 -0
  177. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/screenshot.jinx +0 -0
  178. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/search.jinx +0 -0
  179. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/serve.jinx +0 -0
  180. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/set.jinx +0 -0
  181. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/sh.jinx +0 -0
  182. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/shh.jinx +0 -0
  183. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/sibiji.npc +0 -0
  184. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/sibiji.png +0 -0
  185. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/spool.png +0 -0
  186. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/switch.jinx +0 -0
  187. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/switches.jinx +0 -0
  188. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/teamviz.jinx +0 -0
  189. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/trigger.jinx +0 -0
  190. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/type_text.jinx +0 -0
  191. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/usage.jinx +0 -0
  192. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/verbose.jinx +0 -0
  193. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/vixynt.jinx +0 -0
  194. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/wait.jinx +0 -0
  195. {npcsh-1.1.17.data → npcsh-1.1.19.data}/data/npcsh/npc_team/yap.png +0 -0
  196. {npcsh-1.1.17.dist-info → npcsh-1.1.19.dist-info}/licenses/LICENSE +0 -0
  197. {npcsh-1.1.17.dist-info → npcsh-1.1.19.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,244 @@
1
+ npcsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ npcsh/_state.py,sha256=IX87Vmjn6n8vqGbcUg4O-GnNHhfRcnB9M-LgVdp6LlI,151675
3
+ npcsh/alicanto.py,sha256=xIm2Om1QlTcckvh5NQqrs-2HrEXF378dQcoOD7FRjhk,2392
4
+ npcsh/build.py,sha256=xYYyy3GD0iLWGpZ3rqrephYjYW1Bt39xZyKqXrWSzSo,7663
5
+ npcsh/completion.py,sha256=IOjt7MHnIQgeVub6eJ0q3kooRfYtvRjgUXQHtH8Shjw,5573
6
+ npcsh/config.py,sha256=3OQ11mwR-ZAOIest9ZjyLM6ICgpUQDLZpOhOqdOHrrk,5552
7
+ npcsh/conversation_viewer.py,sha256=ynP0S1WP6tzM8K-ZRGHAQ94z7dMBFkvNbczSUO2fB0g,12850
8
+ npcsh/corca.py,sha256=jlrK7QnO08dxPqJR8uto9ebceLIPFV3f3QjOhnPFxkc,1558
9
+ npcsh/diff_viewer.py,sha256=jw_1xHoGrjFCmBzB7qP9zAIIanVgG-b7mxVzLQLE-HI,15959
10
+ npcsh/execution.py,sha256=Rd9Qt365CI_9S9-IvRBGEYImlMsM7hb1CkTVs-445fs,5259
11
+ npcsh/guac.py,sha256=d4n16mCqKkJ5JrQM0CxBgTtbUY8rac7qsMtjXvUh12k,1332
12
+ npcsh/mcp_helpers.py,sha256=2whJgdwIYhAFzgvskya2_uJkUyqVWC3rLHwYfVolHzg,11164
13
+ npcsh/mcp_server.py,sha256=9gVZ9rqUaOgGkbHlcU567JgrwKqnnDucDVtB1KufgbY,8434
14
+ npcsh/npc.py,sha256=NPfkEyRv6fOtlPI1WHfQr5Ofetc2hRcKl82i_CKqcKM,11641
15
+ npcsh/npcsh.py,sha256=OECs5OBFPjVUAxek5pPfNB0zBfqhJpJwI0IR0e8Gklw,18463
16
+ npcsh/parsing.py,sha256=eGATFUkDvHu5pVbh0RswhWEmGjcIsLaDwgxTtPbC9sk,2943
17
+ npcsh/plonk.py,sha256=MUGunZcSq_7LWBzkrJp3SoEYt75szsoXtZfirsQw3EM,1715
18
+ npcsh/pti.py,sha256=8IyU-kCRwYoBxB9877lqLpy87-DEoWMg2CjiJTj9Hhg,1773
19
+ npcsh/routes.py,sha256=yBxwSoDcfk67y1lAPZ-FGt28JnI9gDY9OyijRYgWnk8,4904
20
+ npcsh/spool.py,sha256=b-AAZdk_fDk7vA-08wc-LO0FJt-yigcUU3ZUXF41V4E,1498
21
+ npcsh/ui.py,sha256=owFTZ7KRvWzyMaEYLfwJVv08hNmg9Yqj5RKNTVIcLeM,7281
22
+ npcsh/wander.py,sha256=zslcHfH-mAmBlSgc1JVNOlss0Ig85hzNkpmBW9W8JYM,2278
23
+ npcsh/yap.py,sha256=QhIr0MyHjznbqfJl9CK93EccN4E7jnlp1QpRzkYc7_c,1583
24
+ npcsh/benchmark/__init__.py,sha256=ljV4XCxPBXYNewcqiGx3oExMm2H_sgCwinDgc4xQOZE,898
25
+ npcsh/benchmark/npcsh_agent.py,sha256=xNr-u_mkLRkVVYgIM2dnaDXiohMWe5rjfeK0GMOULTg,12279
26
+ npcsh/benchmark/runner.py,sha256=dIbPds2V3xTItvTHIGvi8D4cqYNi7uhyvBhjxYWGJsY,20234
27
+ npcsh/benchmark/templates/install-npcsh.sh.j2,sha256=pkhszKhK9AMO6_KYBE-G2vzj4UISzPGy1vFnyILlCdI,977
28
+ npcsh/npc_team/alicanto.npc,sha256=MjCeCKhC4OqKO0Rxa5U_SLEui7Lh8M2hXabcVfqEDhc,1455
29
+ npcsh/npc_team/alicanto.png,sha256=A7xeMbcoKGjlkELxJEVifCEZLVWbOKZarTN5ZFJG-FM,3519858
30
+ npcsh/npc_team/corca.npc,sha256=Iu9bRD_OFVYQVyn0PLB_Kp91qzcHiHyo7VwmkXz2S-0,1667
31
+ npcsh/npc_team/corca.png,sha256=0lF70hKu6tY-37YmIPVF2cuaPzvnQ4-UtQOzuAbKEf4,1666776
32
+ npcsh/npc_team/corca_example.png,sha256=p0lVTuwaps4-F-3k4wgp9d897YPyn6FGZugtXMUQjj8,28777
33
+ npcsh/npc_team/frederic.npc,sha256=1-TcFRWm5RsSnLoeZG_SN4JUU0Ynu6CzV-h6Wfasjto,1945
34
+ npcsh/npc_team/frederic4.png,sha256=ll8uoV0npnPp5HVJWv7h0xDSeuq4pqsk_gYGBHLS0VY,1590744
35
+ npcsh/npc_team/guac.npc,sha256=bOMEMXxvL4B-xdGqtq7hWf_gZpdMlo4OqER7c9iBsiM,797
36
+ npcsh/npc_team/guac.png,sha256=MCE7eJuEJwLJEzc9FS7lL62Mm-38jQRHkxXogPfOTuw,211470
37
+ npcsh/npc_team/kadiefa.npc,sha256=tg9YZ3dTlXS8CIEb544G5UYvGndPhgdlQoLWRV5j-JY,1758
38
+ npcsh/npc_team/kadiefa.png,sha256=3CAwL8crKIwJko6o75Z6OYYEEM9Rk--yGzCJg7zoszg,3062528
39
+ npcsh/npc_team/npcsh.ctx,sha256=-jKYaPm2YbZHAGgWAXhyPIwhiNe1H1ZRFg1Zc7tHSxk,1049
40
+ npcsh/npc_team/npcsh_sibiji.png,sha256=9fUqgYMsSHmaH-kBTBQ7N5UCS5-eLZF94Log0O3mtFg,4544
41
+ npcsh/npc_team/plonk.npc,sha256=z2fd5U0qaymiqHvkunQxCGQ1N2Mx6DMeErcltrJWrqw,1341
42
+ npcsh/npc_team/plonk.png,sha256=IU5ey-Dl4HEKlwnf75RSWNSHpF8rVqGmdbsa0deL4rQ,2727773
43
+ npcsh/npc_team/plonkjr.npc,sha256=umvWEigYLJBzzqSpF70lbf75612q8LxxGeYHT1Oq21Q,1568
44
+ npcsh/npc_team/plonkjr.png,sha256=MqLEGwsyECUeODZIti0HQQrMMVxA6XERpW01R06NbpY,2606710
45
+ npcsh/npc_team/sibiji.npc,sha256=iYv7KXULbyWLPWhFwM7sNbMT4RNHWMvl10bdzmJdRO4,1624
46
+ npcsh/npc_team/sibiji.png,sha256=1dlZb7J3E62FcVo9CVOzLb8nu1bIUV7cr97nsFocHCM,35615
47
+ npcsh/npc_team/spool.png,sha256=LWTLkwDxXBfLuSUCX32_lo5yAmLYGsA67Xpsz-7MmWU,2876725
48
+ npcsh/npc_team/yap.png,sha256=_l7UbWnXJdsy4Mx-x5l9DT0R6ize3HTnkwQQnOFlI18,1548649
49
+ npcsh/npc_team/jinxs/bin/benchmark.jinx,sha256=W4sMNdjmv1ZZSu1ynsm7GDeTd5mTfhrZ51-TBmZQpYg,6101
50
+ npcsh/npc_team/jinxs/bin/config_tui.jinx,sha256=UPEiP1liW5BrsVuA-df_tPWtXMsEDxXsjXwUsT0zTpA,11361
51
+ npcsh/npc_team/jinxs/bin/memories.jinx,sha256=cW9xtkb8frsQRt6s_11V0X-qllNTkZqV7jeyzCIXkjo,11138
52
+ npcsh/npc_team/jinxs/bin/nql.jinx,sha256=Ekk0fnFf1USjWbtfFX0i9TE5v9ST4vhyhBTswl4AftU,5562
53
+ npcsh/npc_team/jinxs/bin/roll.jinx,sha256=Yp9Hg6_aMfQ1366-kKJ2gLjxXyAauoolRXtJva3KUOg,2172
54
+ npcsh/npc_team/jinxs/bin/sample.jinx,sha256=0q-Iw7KZEp6fkqjGSy_9onvtqhxmtjDG_v55uA4J7K0,1948
55
+ npcsh/npc_team/jinxs/bin/setup.jinx,sha256=5k8AUaM8_ZyHfYzWW9U2XEwgqrv-EHE34bzCPfaNuGY,10583
56
+ npcsh/npc_team/jinxs/bin/sync.jinx,sha256=7rWEuqeM21eR8WbhKx-lDt2guJgmVJwk4BaBK9SsLIY,8466
57
+ npcsh/npc_team/jinxs/bin/team_tui.jinx,sha256=svmql4lmGMZa55VrmO9rdyRudFHs_RR9B3UOIgJHpMQ,11521
58
+ npcsh/npc_team/jinxs/bin/vixynt.jinx,sha256=Zv56WANlzXcuT1PcaftkGcKnHr94PaA80WvN25O8pS8,4284
59
+ npcsh/npc_team/jinxs/incognide/add_tab.jinx,sha256=knJ7uIUVwpPPWZ2Sy4MYf14rwqBnQ-wUk56rZPLDCbk,233
60
+ npcsh/npc_team/jinxs/incognide/close_pane.jinx,sha256=9L72Eb_sJd9AC1c47hq7ogjk8OagOem5yg5hrzrlXVs,271
61
+ npcsh/npc_team/jinxs/incognide/close_tab.jinx,sha256=h5G8xXWnka59LDV-Go2Xk-KVITojnQ4ghup1gUvOnVA,234
62
+ npcsh/npc_team/jinxs/incognide/confirm.jinx,sha256=1xPmu0ocnmysdJcv6PftYe7kwx9h3uyA6ntS5rbgFPk,257
63
+ npcsh/npc_team/jinxs/incognide/focus_pane.jinx,sha256=wGSCQe_yquRPm3i9VQ3QbIKglIa5Fnh94RKdAn5ggZA,229
64
+ npcsh/npc_team/jinxs/incognide/incognide.jinx,sha256=0lSYUS7dVmfi4hGS0SiBg5LlAuNHE8qlrgU7QFNAmtQ,2231
65
+ npcsh/npc_team/jinxs/incognide/list_panes.jinx,sha256=AGE9eZ4ftzkFV3_M053AXsL742e3B5ApZ1JXzFz0j9s,262
66
+ npcsh/npc_team/jinxs/incognide/navigate.jinx,sha256=Cz5lSrn3I9yHx2VuV9c038yDLIPlw2WVBt1LxmtUdB0,240
67
+ npcsh/npc_team/jinxs/incognide/notify.jinx,sha256=ZJB37upTsSOLLiVUJQanVQ6ee0jZd4SY7lkufL-zSPQ,236
68
+ npcsh/npc_team/jinxs/incognide/open_pane.jinx,sha256=-rL9VKtSqzPu_lLPLMGTlRwNHqqLH5wN8jfj989fip0,471
69
+ npcsh/npc_team/jinxs/incognide/read_pane.jinx,sha256=80M-ecIDDkgiIuI9lvfp4_ECSFu7Xa3zYDex1HGzRSs,326
70
+ npcsh/npc_team/jinxs/incognide/run_terminal.jinx,sha256=YjkUWtGvfE0ATrPeX-IQ8dVPpN5ChBD29Iq09XVyVfM,243
71
+ npcsh/npc_team/jinxs/incognide/send_message.jinx,sha256=8TYBJxrgBLA2xuIXgXw1qH3X9nYQzFJwpi6CJOk6uFY,236
72
+ npcsh/npc_team/jinxs/incognide/split_pane.jinx,sha256=-taNskdEb3hQEUGFdrrVw_tyAL-g5fHwqhCBfH50RW4,290
73
+ npcsh/npc_team/jinxs/incognide/switch_npc.jinx,sha256=8pQvKa_nZD6DXy7uV9NAi0ff9xWbA0HMFdsEIVyHjZQ,241
74
+ npcsh/npc_team/jinxs/incognide/switch_tab.jinx,sha256=ZUdJdbqs0oSwOuDFiBPAxqN58-VX53gXNINsRjVL50U,239
75
+ npcsh/npc_team/jinxs/incognide/write_file.jinx,sha256=RauswZGoAbSyz44YgWqzHR_jJBLsndstRQ7hLploCeU,285
76
+ npcsh/npc_team/jinxs/incognide/zen_mode.jinx,sha256=_iR9c2yvDIrhd98f5d_8_fNJJi_k9AePejQ_sAZrwTI,228
77
+ npcsh/npc_team/jinxs/lib/browser/browser_action.jinx,sha256=OtYK2rnpmjYPk2vZcD5J761XsXVuK6crV7NNGcMQzIg,9201
78
+ npcsh/npc_team/jinxs/lib/browser/browser_screenshot.jinx,sha256=rch0IHithrcFb-bLuMcnMAxsn65PKJVZEOhLyAgJc8k,1166
79
+ npcsh/npc_team/jinxs/lib/browser/close_browser.jinx,sha256=D0-sIQCTt3TEnUpr6SIWuhQOkJ6eyzhJnvYtYqbg1UM,322
80
+ npcsh/npc_team/jinxs/lib/browser/open_browser.jinx,sha256=AJ4ZysHzdNIghSpu2cTcbRvio1KwV4yzjnyAvAragr4,1656
81
+ npcsh/npc_team/jinxs/lib/computer_use/click.jinx,sha256=uNJ66ZjIQ-0XflzuK3yGqNd7ApommWPIVL2pURhaRjY,585
82
+ npcsh/npc_team/jinxs/lib/computer_use/key_press.jinx,sha256=PQWf0BsYDddwF3_bgdRJpH_pjUWlWtABDyiK_v26Dj0,832
83
+ npcsh/npc_team/jinxs/lib/computer_use/launch_app.jinx,sha256=G3KRSKgBbCPiF9WwrkPtNFK7Pb2xu0TFCY98YmMGD50,1187
84
+ npcsh/npc_team/jinxs/lib/computer_use/screenshot.jinx,sha256=jVU1u-MH_rW6haAHLO3FrikNgeEKAQpUY962pPM8epc,657
85
+ npcsh/npc_team/jinxs/lib/computer_use/trigger.jinx,sha256=VVCnkpYMicq85YA_XQewLvWBl3ctsfObRCwQH9wLCfc,2341
86
+ npcsh/npc_team/jinxs/lib/computer_use/type_text.jinx,sha256=JDCkm2bCV3gk08hrfu5pGYynpNoMLPZWGyfjz7fQhUo,720
87
+ npcsh/npc_team/jinxs/lib/computer_use/wait.jinx,sha256=Jx-HdmMD7p5vdsNG3FXiZyRpKoFRHsmylxH6TMNznac,494
88
+ npcsh/npc_team/jinxs/lib/core/chat.jinx,sha256=QXIh4OIbLKsZISNa0URFkczUFpzkKB2YDNfWPD1Stk4,1397
89
+ npcsh/npc_team/jinxs/lib/core/cmd.jinx,sha256=sdmhXlduW2CCer4gUb3xnGN3j85y8GcOA6uLknir6lQ,1398
90
+ npcsh/npc_team/jinxs/lib/core/compress.jinx,sha256=zFYcGyDb4KBhpE5E2EPZZ3c01pgKI5-CnlQOl7lxfn8,6563
91
+ npcsh/npc_team/jinxs/lib/core/edit_file.jinx,sha256=L31cjWFIlTU4PWOAoZTV1SaCT6qkuY_JIOsR9i5fa1U,3707
92
+ npcsh/npc_team/jinxs/lib/core/load_file.jinx,sha256=Dq2982ZJkbSrM75O8YgLeGRnHdWl0AfEIYkj9RkNMLg,1271
93
+ npcsh/npc_team/jinxs/lib/core/ots.jinx,sha256=1boaqSw1kb_Y5WJ28c22a3CiHkANzPIW9tTF9STs_Fg,2375
94
+ npcsh/npc_team/jinxs/lib/core/paste.jinx,sha256=bycgMzeYFHl3-TN4YYDyasbNe22hEgFGMOmYoMWFgWI,4957
95
+ npcsh/npc_team/jinxs/lib/core/python.jinx,sha256=lFJubdPVlGxSuUKCxsxjYG4_dnX2ATn8U9ChYKRmL5Q,389
96
+ npcsh/npc_team/jinxs/lib/core/search.jinx,sha256=ZdW4wK_jyCKAQv7h-WRe1tEtgHxr3AHqPdZ60jfRs_A,1236
97
+ npcsh/npc_team/jinxs/lib/core/sh.jinx,sha256=RzpvJ0f3tmmrl7W8mxKBaOFtjmKuEXQjhKYYF_EaeyQ,844
98
+ npcsh/npc_team/jinxs/lib/core/sleep.jinx,sha256=dcEDGe6v53XzVoya2s7ru3ewJE2iKZ38DJLfnYfODT8,5440
99
+ npcsh/npc_team/jinxs/lib/core/sql.jinx,sha256=7cAaLqr0A8vWn7QIVDzvqArwB0XmWOI6JPUVcfeGcWk,689
100
+ npcsh/npc_team/jinxs/lib/core/search/db_search.jinx,sha256=cf79Kpl9y_fNLeM4gDzwhdy0xuup_4eH0Q556UCNfbA,17480
101
+ npcsh/npc_team/jinxs/lib/core/search/file_search.jinx,sha256=nwxch-VD48-Y8tm_8xirxVVBsV7-bKeYDQFxL2m5dlQ,16421
102
+ npcsh/npc_team/jinxs/lib/core/search/kg_search.jinx,sha256=iHFVJUl32BjtOnpQz2OfxS6doh10AjMp0aBm73GmlPs,21118
103
+ npcsh/npc_team/jinxs/lib/core/search/mem_review.jinx,sha256=glxH4xySb6YEEdqlgqBTQPXiVJ2iN9LKrb2ZczM7P-0,2478
104
+ npcsh/npc_team/jinxs/lib/core/search/mem_search.jinx,sha256=tJ5AvpD7X_nKy0_x_8si6_8ASs6fFcCvbnpN9ZDhCQc,19983
105
+ npcsh/npc_team/jinxs/lib/core/search/web_search.jinx,sha256=YZmiPHqpxcUCYmMI7UPBhjf1WBoz_DUk5b7F0qF-FMk,13438
106
+ npcsh/npc_team/jinxs/lib/orchestration/convene.jinx,sha256=W4-eRFHXpJe7Bt-8uC79wWygj4KUv15DNnGMJA1gJXA,8828
107
+ npcsh/npc_team/jinxs/lib/orchestration/delegate.jinx,sha256=wsFBQfhcAT2o-hg05U_HGhHcJyDWjpdlRJc0g3iE40I,8017
108
+ npcsh/npc_team/jinxs/lib/research/paper_search.jinx,sha256=Y2jHwYyEBYWG9G0bwQ01fntaJs5l91iAqfYCpKNgjrA,20609
109
+ npcsh/npc_team/jinxs/lib/research/semantic_scholar.jinx,sha256=ExX-TZ5CPzt_Qb0TVs8JE7vgrYU2YiazOSwiPHnCZCQ,21547
110
+ npcsh/npc_team/jinxs/lib/utils/build.jinx,sha256=TOsNjTEGlg5aSoYX_hmzywj3W6hlGPUOq7okmCzzaRg,2555
111
+ npcsh/npc_team/jinxs/lib/utils/compile.jinx,sha256=LbkZE8ewBUngbI_mchMJylIwY9uCoFCe9KWs4HfMFpU,2393
112
+ npcsh/npc_team/jinxs/lib/utils/help.jinx,sha256=BESlgpCj02ZnLSMGpQJ8YpWMi_Z6eTo8wDet7K0M4I4,2089
113
+ npcsh/npc_team/jinxs/lib/utils/init.jinx,sha256=UPCtj_XKCC51MzuMAAKlWRwhCKfbB9T96P-8fvhquIQ,1315
114
+ npcsh/npc_team/jinxs/lib/utils/jinxs.jinx,sha256=zVPWBA5nsdOeM9cYpbKZ1eAYk1y8vYT3g-Ek53RGIRs,15841
115
+ npcsh/npc_team/jinxs/lib/utils/serve.jinx,sha256=EXp58rquPHZcJthrScc-NACrrQu2RzVHzPnfZAR_kcE,762
116
+ npcsh/npc_team/jinxs/lib/utils/set.jinx,sha256=FFY6JNVGkrKpHomXLuAiCv7mbwUGIyWh8zE_XMICHJY,1299
117
+ npcsh/npc_team/jinxs/lib/utils/shh.jinx,sha256=yD-_va97JHT1MAhUvoL8w86Li9cbwi8XbswVcTRxd4U,464
118
+ npcsh/npc_team/jinxs/lib/utils/switch.jinx,sha256=qsYMF_SWT12Z1KvWRT36kgUaUP_UOjpzA4v82IUIqF8,2022
119
+ npcsh/npc_team/jinxs/lib/utils/switches.jinx,sha256=UquqT6Kzn4FTquYJPr0hyoEcuZ6Ke9VMO5pT0bOeXEw,2177
120
+ npcsh/npc_team/jinxs/lib/utils/teamviz.jinx,sha256=WsWvIXbzJzm8S_7h0cgDqlRJIQ6NRzmAtVxmA6JskMc,7646
121
+ npcsh/npc_team/jinxs/lib/utils/usage.jinx,sha256=40zhs19l7-16KAXHzOa8hjv7hA32ORe0F7das0TTLXY,1052
122
+ npcsh/npc_team/jinxs/lib/utils/verbose.jinx,sha256=mFGLy2Azx1JXGhDOwVwd5EwJB9fxPQpk9BrP8kJ3RzE,473
123
+ npcsh/npc_team/jinxs/modes/alicanto.jinx,sha256=YBFN0WIz4ZIco45tsBy8bYcCpiv9Kt-6MGaFARcIX0A,14312
124
+ npcsh/npc_team/jinxs/modes/arxiv.jinx,sha256=lfk3OzWNe1hwEnObS4JFCaTkeWjTa5nDkYN_YYHw0Vk,38142
125
+ npcsh/npc_team/jinxs/modes/corca.jinx,sha256=TK4n1d_WUGHioZ3GgSUta1L3_XsoX35wdsmzoI5dheE,18099
126
+ npcsh/npc_team/jinxs/modes/guac.jinx,sha256=OeMS9i6VVIOZk0VzHo8bUpUCo96d8btRbJIH4cqDaWY,23606
127
+ npcsh/npc_team/jinxs/modes/plonk.jinx,sha256=8Jxe_ccqh5gIGFY5tHA1RoRW8hHlVePuQH3ln1NjDUw,16066
128
+ npcsh/npc_team/jinxs/modes/pti.jinx,sha256=6FPu61WdCL5lJ4QsHjR7m9fzDbWkx2WYDcK55gW7N5E,14646
129
+ npcsh/npc_team/jinxs/modes/reattach.jinx,sha256=kTe2gYdhFeObbDcbCy20siS4aVCwvhBmk1k2Z4Xf9M8,13993
130
+ npcsh/npc_team/jinxs/modes/spool.jinx,sha256=yqzD40jWmhbE33loJt6c_Qj0aWUw1tooeFC7TqAq8wY,14953
131
+ npcsh/npc_team/jinxs/modes/wander.jinx,sha256=1H1ef1qMYgL3VAcGlbILqmem-4cTsLYRO1feut3XriY,17889
132
+ npcsh/npc_team/jinxs/modes/yap.jinx,sha256=IyfyblJ1jKVYTAsX7w4oRFY8eTj2hHpjnFUft_3eTOo,9881
133
+ npcsh-1.1.19.data/data/npcsh/npc_team/add_tab.jinx,sha256=knJ7uIUVwpPPWZ2Sy4MYf14rwqBnQ-wUk56rZPLDCbk,233
134
+ npcsh-1.1.19.data/data/npcsh/npc_team/alicanto.jinx,sha256=YBFN0WIz4ZIco45tsBy8bYcCpiv9Kt-6MGaFARcIX0A,14312
135
+ npcsh-1.1.19.data/data/npcsh/npc_team/alicanto.npc,sha256=MjCeCKhC4OqKO0Rxa5U_SLEui7Lh8M2hXabcVfqEDhc,1455
136
+ npcsh-1.1.19.data/data/npcsh/npc_team/alicanto.png,sha256=A7xeMbcoKGjlkELxJEVifCEZLVWbOKZarTN5ZFJG-FM,3519858
137
+ npcsh-1.1.19.data/data/npcsh/npc_team/arxiv.jinx,sha256=lfk3OzWNe1hwEnObS4JFCaTkeWjTa5nDkYN_YYHw0Vk,38142
138
+ npcsh-1.1.19.data/data/npcsh/npc_team/benchmark.jinx,sha256=W4sMNdjmv1ZZSu1ynsm7GDeTd5mTfhrZ51-TBmZQpYg,6101
139
+ npcsh-1.1.19.data/data/npcsh/npc_team/browser_action.jinx,sha256=OtYK2rnpmjYPk2vZcD5J761XsXVuK6crV7NNGcMQzIg,9201
140
+ npcsh-1.1.19.data/data/npcsh/npc_team/browser_screenshot.jinx,sha256=rch0IHithrcFb-bLuMcnMAxsn65PKJVZEOhLyAgJc8k,1166
141
+ npcsh-1.1.19.data/data/npcsh/npc_team/build.jinx,sha256=TOsNjTEGlg5aSoYX_hmzywj3W6hlGPUOq7okmCzzaRg,2555
142
+ npcsh-1.1.19.data/data/npcsh/npc_team/chat.jinx,sha256=QXIh4OIbLKsZISNa0URFkczUFpzkKB2YDNfWPD1Stk4,1397
143
+ npcsh-1.1.19.data/data/npcsh/npc_team/click.jinx,sha256=uNJ66ZjIQ-0XflzuK3yGqNd7ApommWPIVL2pURhaRjY,585
144
+ npcsh-1.1.19.data/data/npcsh/npc_team/close_browser.jinx,sha256=D0-sIQCTt3TEnUpr6SIWuhQOkJ6eyzhJnvYtYqbg1UM,322
145
+ npcsh-1.1.19.data/data/npcsh/npc_team/close_pane.jinx,sha256=9L72Eb_sJd9AC1c47hq7ogjk8OagOem5yg5hrzrlXVs,271
146
+ npcsh-1.1.19.data/data/npcsh/npc_team/close_tab.jinx,sha256=h5G8xXWnka59LDV-Go2Xk-KVITojnQ4ghup1gUvOnVA,234
147
+ npcsh-1.1.19.data/data/npcsh/npc_team/cmd.jinx,sha256=sdmhXlduW2CCer4gUb3xnGN3j85y8GcOA6uLknir6lQ,1398
148
+ npcsh-1.1.19.data/data/npcsh/npc_team/compile.jinx,sha256=LbkZE8ewBUngbI_mchMJylIwY9uCoFCe9KWs4HfMFpU,2393
149
+ npcsh-1.1.19.data/data/npcsh/npc_team/compress.jinx,sha256=zFYcGyDb4KBhpE5E2EPZZ3c01pgKI5-CnlQOl7lxfn8,6563
150
+ npcsh-1.1.19.data/data/npcsh/npc_team/config_tui.jinx,sha256=UPEiP1liW5BrsVuA-df_tPWtXMsEDxXsjXwUsT0zTpA,11361
151
+ npcsh-1.1.19.data/data/npcsh/npc_team/confirm.jinx,sha256=1xPmu0ocnmysdJcv6PftYe7kwx9h3uyA6ntS5rbgFPk,257
152
+ npcsh-1.1.19.data/data/npcsh/npc_team/convene.jinx,sha256=W4-eRFHXpJe7Bt-8uC79wWygj4KUv15DNnGMJA1gJXA,8828
153
+ npcsh-1.1.19.data/data/npcsh/npc_team/corca.jinx,sha256=TK4n1d_WUGHioZ3GgSUta1L3_XsoX35wdsmzoI5dheE,18099
154
+ npcsh-1.1.19.data/data/npcsh/npc_team/corca.npc,sha256=Iu9bRD_OFVYQVyn0PLB_Kp91qzcHiHyo7VwmkXz2S-0,1667
155
+ npcsh-1.1.19.data/data/npcsh/npc_team/corca.png,sha256=0lF70hKu6tY-37YmIPVF2cuaPzvnQ4-UtQOzuAbKEf4,1666776
156
+ npcsh-1.1.19.data/data/npcsh/npc_team/corca_example.png,sha256=p0lVTuwaps4-F-3k4wgp9d897YPyn6FGZugtXMUQjj8,28777
157
+ npcsh-1.1.19.data/data/npcsh/npc_team/db_search.jinx,sha256=cf79Kpl9y_fNLeM4gDzwhdy0xuup_4eH0Q556UCNfbA,17480
158
+ npcsh-1.1.19.data/data/npcsh/npc_team/delegate.jinx,sha256=wsFBQfhcAT2o-hg05U_HGhHcJyDWjpdlRJc0g3iE40I,8017
159
+ npcsh-1.1.19.data/data/npcsh/npc_team/edit_file.jinx,sha256=L31cjWFIlTU4PWOAoZTV1SaCT6qkuY_JIOsR9i5fa1U,3707
160
+ npcsh-1.1.19.data/data/npcsh/npc_team/file_search.jinx,sha256=nwxch-VD48-Y8tm_8xirxVVBsV7-bKeYDQFxL2m5dlQ,16421
161
+ npcsh-1.1.19.data/data/npcsh/npc_team/focus_pane.jinx,sha256=wGSCQe_yquRPm3i9VQ3QbIKglIa5Fnh94RKdAn5ggZA,229
162
+ npcsh-1.1.19.data/data/npcsh/npc_team/frederic.npc,sha256=1-TcFRWm5RsSnLoeZG_SN4JUU0Ynu6CzV-h6Wfasjto,1945
163
+ npcsh-1.1.19.data/data/npcsh/npc_team/frederic4.png,sha256=ll8uoV0npnPp5HVJWv7h0xDSeuq4pqsk_gYGBHLS0VY,1590744
164
+ npcsh-1.1.19.data/data/npcsh/npc_team/guac.jinx,sha256=OeMS9i6VVIOZk0VzHo8bUpUCo96d8btRbJIH4cqDaWY,23606
165
+ npcsh-1.1.19.data/data/npcsh/npc_team/guac.npc,sha256=bOMEMXxvL4B-xdGqtq7hWf_gZpdMlo4OqER7c9iBsiM,797
166
+ npcsh-1.1.19.data/data/npcsh/npc_team/guac.png,sha256=MCE7eJuEJwLJEzc9FS7lL62Mm-38jQRHkxXogPfOTuw,211470
167
+ npcsh-1.1.19.data/data/npcsh/npc_team/help.jinx,sha256=BESlgpCj02ZnLSMGpQJ8YpWMi_Z6eTo8wDet7K0M4I4,2089
168
+ npcsh-1.1.19.data/data/npcsh/npc_team/incognide.jinx,sha256=0lSYUS7dVmfi4hGS0SiBg5LlAuNHE8qlrgU7QFNAmtQ,2231
169
+ npcsh-1.1.19.data/data/npcsh/npc_team/init.jinx,sha256=UPCtj_XKCC51MzuMAAKlWRwhCKfbB9T96P-8fvhquIQ,1315
170
+ npcsh-1.1.19.data/data/npcsh/npc_team/jinxs.jinx,sha256=zVPWBA5nsdOeM9cYpbKZ1eAYk1y8vYT3g-Ek53RGIRs,15841
171
+ npcsh-1.1.19.data/data/npcsh/npc_team/kadiefa.npc,sha256=tg9YZ3dTlXS8CIEb544G5UYvGndPhgdlQoLWRV5j-JY,1758
172
+ npcsh-1.1.19.data/data/npcsh/npc_team/kadiefa.png,sha256=3CAwL8crKIwJko6o75Z6OYYEEM9Rk--yGzCJg7zoszg,3062528
173
+ npcsh-1.1.19.data/data/npcsh/npc_team/key_press.jinx,sha256=PQWf0BsYDddwF3_bgdRJpH_pjUWlWtABDyiK_v26Dj0,832
174
+ npcsh-1.1.19.data/data/npcsh/npc_team/kg_search.jinx,sha256=iHFVJUl32BjtOnpQz2OfxS6doh10AjMp0aBm73GmlPs,21118
175
+ npcsh-1.1.19.data/data/npcsh/npc_team/launch_app.jinx,sha256=G3KRSKgBbCPiF9WwrkPtNFK7Pb2xu0TFCY98YmMGD50,1187
176
+ npcsh-1.1.19.data/data/npcsh/npc_team/list_panes.jinx,sha256=AGE9eZ4ftzkFV3_M053AXsL742e3B5ApZ1JXzFz0j9s,262
177
+ npcsh-1.1.19.data/data/npcsh/npc_team/load_file.jinx,sha256=Dq2982ZJkbSrM75O8YgLeGRnHdWl0AfEIYkj9RkNMLg,1271
178
+ npcsh-1.1.19.data/data/npcsh/npc_team/mem_review.jinx,sha256=glxH4xySb6YEEdqlgqBTQPXiVJ2iN9LKrb2ZczM7P-0,2478
179
+ npcsh-1.1.19.data/data/npcsh/npc_team/mem_search.jinx,sha256=tJ5AvpD7X_nKy0_x_8si6_8ASs6fFcCvbnpN9ZDhCQc,19983
180
+ npcsh-1.1.19.data/data/npcsh/npc_team/memories.jinx,sha256=cW9xtkb8frsQRt6s_11V0X-qllNTkZqV7jeyzCIXkjo,11138
181
+ npcsh-1.1.19.data/data/npcsh/npc_team/navigate.jinx,sha256=Cz5lSrn3I9yHx2VuV9c038yDLIPlw2WVBt1LxmtUdB0,240
182
+ npcsh-1.1.19.data/data/npcsh/npc_team/notify.jinx,sha256=ZJB37upTsSOLLiVUJQanVQ6ee0jZd4SY7lkufL-zSPQ,236
183
+ npcsh-1.1.19.data/data/npcsh/npc_team/npcsh.ctx,sha256=-jKYaPm2YbZHAGgWAXhyPIwhiNe1H1ZRFg1Zc7tHSxk,1049
184
+ npcsh-1.1.19.data/data/npcsh/npc_team/npcsh_sibiji.png,sha256=9fUqgYMsSHmaH-kBTBQ7N5UCS5-eLZF94Log0O3mtFg,4544
185
+ npcsh-1.1.19.data/data/npcsh/npc_team/nql.jinx,sha256=Ekk0fnFf1USjWbtfFX0i9TE5v9ST4vhyhBTswl4AftU,5562
186
+ npcsh-1.1.19.data/data/npcsh/npc_team/open_browser.jinx,sha256=AJ4ZysHzdNIghSpu2cTcbRvio1KwV4yzjnyAvAragr4,1656
187
+ npcsh-1.1.19.data/data/npcsh/npc_team/open_pane.jinx,sha256=-rL9VKtSqzPu_lLPLMGTlRwNHqqLH5wN8jfj989fip0,471
188
+ npcsh-1.1.19.data/data/npcsh/npc_team/ots.jinx,sha256=1boaqSw1kb_Y5WJ28c22a3CiHkANzPIW9tTF9STs_Fg,2375
189
+ npcsh-1.1.19.data/data/npcsh/npc_team/paper_search.jinx,sha256=Y2jHwYyEBYWG9G0bwQ01fntaJs5l91iAqfYCpKNgjrA,20609
190
+ npcsh-1.1.19.data/data/npcsh/npc_team/paste.jinx,sha256=bycgMzeYFHl3-TN4YYDyasbNe22hEgFGMOmYoMWFgWI,4957
191
+ npcsh-1.1.19.data/data/npcsh/npc_team/plonk.jinx,sha256=8Jxe_ccqh5gIGFY5tHA1RoRW8hHlVePuQH3ln1NjDUw,16066
192
+ npcsh-1.1.19.data/data/npcsh/npc_team/plonk.npc,sha256=z2fd5U0qaymiqHvkunQxCGQ1N2Mx6DMeErcltrJWrqw,1341
193
+ npcsh-1.1.19.data/data/npcsh/npc_team/plonk.png,sha256=IU5ey-Dl4HEKlwnf75RSWNSHpF8rVqGmdbsa0deL4rQ,2727773
194
+ npcsh-1.1.19.data/data/npcsh/npc_team/plonkjr.npc,sha256=umvWEigYLJBzzqSpF70lbf75612q8LxxGeYHT1Oq21Q,1568
195
+ npcsh-1.1.19.data/data/npcsh/npc_team/plonkjr.png,sha256=MqLEGwsyECUeODZIti0HQQrMMVxA6XERpW01R06NbpY,2606710
196
+ npcsh-1.1.19.data/data/npcsh/npc_team/pti.jinx,sha256=6FPu61WdCL5lJ4QsHjR7m9fzDbWkx2WYDcK55gW7N5E,14646
197
+ npcsh-1.1.19.data/data/npcsh/npc_team/python.jinx,sha256=lFJubdPVlGxSuUKCxsxjYG4_dnX2ATn8U9ChYKRmL5Q,389
198
+ npcsh-1.1.19.data/data/npcsh/npc_team/read_pane.jinx,sha256=80M-ecIDDkgiIuI9lvfp4_ECSFu7Xa3zYDex1HGzRSs,326
199
+ npcsh-1.1.19.data/data/npcsh/npc_team/reattach.jinx,sha256=kTe2gYdhFeObbDcbCy20siS4aVCwvhBmk1k2Z4Xf9M8,13993
200
+ npcsh-1.1.19.data/data/npcsh/npc_team/roll.jinx,sha256=Yp9Hg6_aMfQ1366-kKJ2gLjxXyAauoolRXtJva3KUOg,2172
201
+ npcsh-1.1.19.data/data/npcsh/npc_team/run_terminal.jinx,sha256=YjkUWtGvfE0ATrPeX-IQ8dVPpN5ChBD29Iq09XVyVfM,243
202
+ npcsh-1.1.19.data/data/npcsh/npc_team/sample.jinx,sha256=0q-Iw7KZEp6fkqjGSy_9onvtqhxmtjDG_v55uA4J7K0,1948
203
+ npcsh-1.1.19.data/data/npcsh/npc_team/screenshot.jinx,sha256=jVU1u-MH_rW6haAHLO3FrikNgeEKAQpUY962pPM8epc,657
204
+ npcsh-1.1.19.data/data/npcsh/npc_team/search.jinx,sha256=ZdW4wK_jyCKAQv7h-WRe1tEtgHxr3AHqPdZ60jfRs_A,1236
205
+ npcsh-1.1.19.data/data/npcsh/npc_team/semantic_scholar.jinx,sha256=ExX-TZ5CPzt_Qb0TVs8JE7vgrYU2YiazOSwiPHnCZCQ,21547
206
+ npcsh-1.1.19.data/data/npcsh/npc_team/send_message.jinx,sha256=8TYBJxrgBLA2xuIXgXw1qH3X9nYQzFJwpi6CJOk6uFY,236
207
+ npcsh-1.1.19.data/data/npcsh/npc_team/serve.jinx,sha256=EXp58rquPHZcJthrScc-NACrrQu2RzVHzPnfZAR_kcE,762
208
+ npcsh-1.1.19.data/data/npcsh/npc_team/set.jinx,sha256=FFY6JNVGkrKpHomXLuAiCv7mbwUGIyWh8zE_XMICHJY,1299
209
+ npcsh-1.1.19.data/data/npcsh/npc_team/setup.jinx,sha256=5k8AUaM8_ZyHfYzWW9U2XEwgqrv-EHE34bzCPfaNuGY,10583
210
+ npcsh-1.1.19.data/data/npcsh/npc_team/sh.jinx,sha256=RzpvJ0f3tmmrl7W8mxKBaOFtjmKuEXQjhKYYF_EaeyQ,844
211
+ npcsh-1.1.19.data/data/npcsh/npc_team/shh.jinx,sha256=yD-_va97JHT1MAhUvoL8w86Li9cbwi8XbswVcTRxd4U,464
212
+ npcsh-1.1.19.data/data/npcsh/npc_team/sibiji.npc,sha256=iYv7KXULbyWLPWhFwM7sNbMT4RNHWMvl10bdzmJdRO4,1624
213
+ npcsh-1.1.19.data/data/npcsh/npc_team/sibiji.png,sha256=1dlZb7J3E62FcVo9CVOzLb8nu1bIUV7cr97nsFocHCM,35615
214
+ npcsh-1.1.19.data/data/npcsh/npc_team/sleep.jinx,sha256=dcEDGe6v53XzVoya2s7ru3ewJE2iKZ38DJLfnYfODT8,5440
215
+ npcsh-1.1.19.data/data/npcsh/npc_team/split_pane.jinx,sha256=-taNskdEb3hQEUGFdrrVw_tyAL-g5fHwqhCBfH50RW4,290
216
+ npcsh-1.1.19.data/data/npcsh/npc_team/spool.jinx,sha256=yqzD40jWmhbE33loJt6c_Qj0aWUw1tooeFC7TqAq8wY,14953
217
+ npcsh-1.1.19.data/data/npcsh/npc_team/spool.png,sha256=LWTLkwDxXBfLuSUCX32_lo5yAmLYGsA67Xpsz-7MmWU,2876725
218
+ npcsh-1.1.19.data/data/npcsh/npc_team/sql.jinx,sha256=7cAaLqr0A8vWn7QIVDzvqArwB0XmWOI6JPUVcfeGcWk,689
219
+ npcsh-1.1.19.data/data/npcsh/npc_team/switch.jinx,sha256=qsYMF_SWT12Z1KvWRT36kgUaUP_UOjpzA4v82IUIqF8,2022
220
+ npcsh-1.1.19.data/data/npcsh/npc_team/switch_npc.jinx,sha256=8pQvKa_nZD6DXy7uV9NAi0ff9xWbA0HMFdsEIVyHjZQ,241
221
+ npcsh-1.1.19.data/data/npcsh/npc_team/switch_tab.jinx,sha256=ZUdJdbqs0oSwOuDFiBPAxqN58-VX53gXNINsRjVL50U,239
222
+ npcsh-1.1.19.data/data/npcsh/npc_team/switches.jinx,sha256=UquqT6Kzn4FTquYJPr0hyoEcuZ6Ke9VMO5pT0bOeXEw,2177
223
+ npcsh-1.1.19.data/data/npcsh/npc_team/sync.jinx,sha256=7rWEuqeM21eR8WbhKx-lDt2guJgmVJwk4BaBK9SsLIY,8466
224
+ npcsh-1.1.19.data/data/npcsh/npc_team/team_tui.jinx,sha256=svmql4lmGMZa55VrmO9rdyRudFHs_RR9B3UOIgJHpMQ,11521
225
+ npcsh-1.1.19.data/data/npcsh/npc_team/teamviz.jinx,sha256=WsWvIXbzJzm8S_7h0cgDqlRJIQ6NRzmAtVxmA6JskMc,7646
226
+ npcsh-1.1.19.data/data/npcsh/npc_team/trigger.jinx,sha256=VVCnkpYMicq85YA_XQewLvWBl3ctsfObRCwQH9wLCfc,2341
227
+ npcsh-1.1.19.data/data/npcsh/npc_team/type_text.jinx,sha256=JDCkm2bCV3gk08hrfu5pGYynpNoMLPZWGyfjz7fQhUo,720
228
+ npcsh-1.1.19.data/data/npcsh/npc_team/usage.jinx,sha256=40zhs19l7-16KAXHzOa8hjv7hA32ORe0F7das0TTLXY,1052
229
+ npcsh-1.1.19.data/data/npcsh/npc_team/verbose.jinx,sha256=mFGLy2Azx1JXGhDOwVwd5EwJB9fxPQpk9BrP8kJ3RzE,473
230
+ npcsh-1.1.19.data/data/npcsh/npc_team/vixynt.jinx,sha256=Zv56WANlzXcuT1PcaftkGcKnHr94PaA80WvN25O8pS8,4284
231
+ npcsh-1.1.19.data/data/npcsh/npc_team/wait.jinx,sha256=Jx-HdmMD7p5vdsNG3FXiZyRpKoFRHsmylxH6TMNznac,494
232
+ npcsh-1.1.19.data/data/npcsh/npc_team/wander.jinx,sha256=1H1ef1qMYgL3VAcGlbILqmem-4cTsLYRO1feut3XriY,17889
233
+ npcsh-1.1.19.data/data/npcsh/npc_team/web_search.jinx,sha256=YZmiPHqpxcUCYmMI7UPBhjf1WBoz_DUk5b7F0qF-FMk,13438
234
+ npcsh-1.1.19.data/data/npcsh/npc_team/write_file.jinx,sha256=RauswZGoAbSyz44YgWqzHR_jJBLsndstRQ7hLploCeU,285
235
+ npcsh-1.1.19.data/data/npcsh/npc_team/yap.jinx,sha256=IyfyblJ1jKVYTAsX7w4oRFY8eTj2hHpjnFUft_3eTOo,9881
236
+ npcsh-1.1.19.data/data/npcsh/npc_team/yap.png,sha256=_l7UbWnXJdsy4Mx-x5l9DT0R6ize3HTnkwQQnOFlI18,1548649
237
+ npcsh-1.1.19.data/data/npcsh/npc_team/zen_mode.jinx,sha256=_iR9c2yvDIrhd98f5d_8_fNJJi_k9AePejQ_sAZrwTI,228
238
+ npcsh-1.1.19.dist-info/licenses/LICENSE,sha256=IKBvAECHP-aCiJtE4cHGCE5Yl0tozYz02PomGeWS3y4,1070
239
+ project/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
240
+ npcsh-1.1.19.dist-info/METADATA,sha256=iq2dHPNN7K-YnEoiS5YPAeGLPtpMZ09WarbEP-Fzn60,39573
241
+ npcsh-1.1.19.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
242
+ npcsh-1.1.19.dist-info/entry_points.txt,sha256=-4jZqmpCh9EiS36DrcRXOQ1UvPqOg-HRdunupuw11Ns,609
243
+ npcsh-1.1.19.dist-info/top_level.txt,sha256=sbA6l0H-5EUmtoSA3SJTzrFzT_BmsFtf1FOUq8P8vL0,14
244
+ npcsh-1.1.19.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,10 +1,12 @@
1
1
  [console_scripts]
2
2
  alicanto = npcsh.npcsh:main
3
3
  benchmark = npcsh.npc:jinx_main
4
+ config_tui = npcsh.npc:jinx_main
4
5
  corca = npcsh.npcsh:main
5
6
  frederic = npcsh.npcsh:main
6
7
  guac = npcsh.npcsh:main
7
8
  kadiefa = npcsh.npcsh:main
9
+ memories = npcsh.npc:jinx_main
8
10
  npc = npcsh.npc:main
9
11
  npcsh = npcsh.npcsh:main
10
12
  npcsh-bench = npcsh.benchmark.runner:main
@@ -13,9 +15,8 @@ plonk = npcsh.npcsh:main
13
15
  plonkjr = npcsh.npcsh:main
14
16
  roll = npcsh.npc:jinx_main
15
17
  sample = npcsh.npc:jinx_main
18
+ setup = npcsh.npc:jinx_main
16
19
  sibiji = npcsh.npcsh:main
17
- spool = npcsh.npc:jinx_main
18
20
  sync = npcsh.npc:jinx_main
21
+ team_tui = npcsh.npc:jinx_main
19
22
  vixynt = npcsh.npc:jinx_main
20
- wander = npcsh.npc:jinx_main
21
- yap = npcsh.npc:jinx_main
@@ -1,161 +0,0 @@
1
- jinx_name: spool
2
- description: Interactive chat mode - simple conversational interface with an NPC
3
- inputs:
4
- - model: null
5
- - provider: null
6
- - attachments: null
7
- - stream: true
8
-
9
- steps:
10
- - name: spool_repl
11
- engine: python
12
- code: |
13
- import os
14
- import sys
15
- from termcolor import colored
16
-
17
- from npcpy.llm_funcs import get_llm_response
18
- from npcpy.npc_sysenv import get_system_message, render_markdown
19
- from npcpy.data.load import load_file_contents
20
- from npcpy.data.text import rag_search
21
-
22
- npc = context.get('npc')
23
- team = context.get('team')
24
- messages = context.get('messages', [])
25
- stream = context.get('stream', True)
26
- attachments = context.get('attachments')
27
-
28
- # Use NPC's model/provider or fallback
29
- model = context.get('model') or (npc.model if npc else None)
30
- provider = context.get('provider') or (npc.provider if npc else None)
31
-
32
- # ASCII art
33
- print("""
34
- _____ ____ ____ ____ _
35
- / ___/| _ \ / __ \ / __ \| |
36
- \___ \| |_) | | | | | | | |
37
- ___) | __/| | | | | | | |___
38
- |____/|_| \____/ \____/|_____|
39
- """)
40
-
41
- npc_name = npc.name if npc else "chat"
42
- print(f"Entering spool mode (NPC: {npc_name}). Type '/sq' to exit.")
43
-
44
- # Load attachments if provided
45
- loaded_chunks = {}
46
- if attachments:
47
- if isinstance(attachments, str):
48
- attachments = [f.strip() for f in attachments.split(',')]
49
- for file_path in attachments:
50
- file_path = os.path.expanduser(file_path)
51
- if os.path.exists(file_path):
52
- try:
53
- chunks = load_file_contents(file_path)
54
- loaded_chunks[file_path] = chunks
55
- print(colored(f"Loaded {len(chunks)} chunks from: {file_path}", "green"))
56
- except Exception as e:
57
- print(colored(f"Error loading {file_path}: {e}", "red"))
58
-
59
- # Ensure system message
60
- if not messages or messages[0].get("role") != "system":
61
- sys_msg = get_system_message(npc) if npc else "You are a helpful assistant."
62
- messages.insert(0, {"role": "system", "content": sys_msg})
63
-
64
- # REPL loop
65
- while True:
66
- try:
67
- prompt_str = f"{npc_name}> "
68
- user_input = input(prompt_str).strip()
69
-
70
- if not user_input:
71
- continue
72
-
73
- if user_input.lower() == "/sq":
74
- print("Exiting spool mode.")
75
- break
76
-
77
- # Handle /ots for screenshots inline
78
- if user_input.startswith("/ots"):
79
- from npcpy.data.image import capture_screenshot
80
- parts = user_input.split()
81
- image_paths = []
82
- if len(parts) > 1:
83
- for p in parts[1:]:
84
- fp = os.path.expanduser(p)
85
- if os.path.exists(fp):
86
- image_paths.append(fp)
87
- else:
88
- ss = capture_screenshot()
89
- if ss and "file_path" in ss:
90
- image_paths.append(ss["file_path"])
91
- print(colored(f"Screenshot: {ss['filename']}", "green"))
92
-
93
- if image_paths:
94
- vision_prompt = input("Prompt for image(s): ").strip() or "Describe these images."
95
- resp = get_llm_response(
96
- vision_prompt,
97
- model=npc.vision_model if hasattr(npc, 'vision_model') else model,
98
- provider=npc.vision_provider if hasattr(npc, 'vision_provider') else provider,
99
- messages=messages,
100
- images=image_paths,
101
- stream=stream,
102
- npc=npc
103
- )
104
- messages = resp.get('messages', messages)
105
- render_markdown(str(resp.get('response', '')))
106
- continue
107
-
108
- # Add RAG context if files loaded
109
- current_prompt = user_input
110
- if loaded_chunks:
111
- context_content = ""
112
- for filename, chunks in loaded_chunks.items():
113
- full_text = "\n".join(chunks)
114
- retrieved = rag_search(user_input, full_text, similarity_threshold=0.3)
115
- if retrieved:
116
- context_content += f"\n\nContext from {filename}:\n{retrieved}\n"
117
- if context_content:
118
- current_prompt += f"\n\n--- Relevant context ---{context_content}"
119
-
120
- # Get response
121
- resp = get_llm_response(
122
- current_prompt,
123
- model=model,
124
- provider=provider,
125
- messages=messages,
126
- stream=stream,
127
- npc=npc
128
- )
129
-
130
- messages = resp.get('messages', messages)
131
- response_text = resp.get('response', '')
132
-
133
- # Handle streaming vs non-streaming
134
- if hasattr(response_text, '__iter__') and not isinstance(response_text, str):
135
- full_response = ""
136
- for chunk in response_text:
137
- if hasattr(chunk, 'choices') and chunk.choices:
138
- delta = chunk.choices[0].delta
139
- if hasattr(delta, 'content') and delta.content:
140
- print(delta.content, end='', flush=True)
141
- full_response += delta.content
142
- print()
143
- else:
144
- render_markdown(str(response_text))
145
-
146
- # Track usage if available
147
- if 'usage' in resp and npc and hasattr(npc, 'shared_context'):
148
- usage = resp['usage']
149
- npc.shared_context['session_input_tokens'] += usage.get('input_tokens', 0)
150
- npc.shared_context['session_output_tokens'] += usage.get('output_tokens', 0)
151
- npc.shared_context['turn_count'] += 1
152
-
153
- except KeyboardInterrupt:
154
- print("\nUse '/sq' to exit or continue.")
155
- continue
156
- except EOFError:
157
- print("\nExiting spool mode.")
158
- break
159
-
160
- context['output'] = "Exited spool mode."
161
- context['messages'] = messages