httpcat-cli 0.3.0 → 0.3.1-rc.2

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 (760) hide show
  1. package/.github/workflows/ci.yml +3 -0
  2. package/.github/workflows/rc-publish.yml +6 -0
  3. package/.github/workflows/release.yml +107 -0
  4. package/.github/workflows/sync-version.yml +40 -2
  5. package/README.md +128 -1685
  6. package/additions.txt +3 -0
  7. package/brand-assets/png/expressions/compact-160-dark.png +0 -0
  8. package/brand-assets/png/expressions/compact-160-light.png +0 -0
  9. package/brand-assets/png/expressions/compact-320-dark.png +0 -0
  10. package/brand-assets/png/expressions/compact-320-light.png +0 -0
  11. package/brand-assets/png/expressions/default-160-dark.png +0 -0
  12. package/brand-assets/png/expressions/default-160-light.png +0 -0
  13. package/brand-assets/png/expressions/default-320-dark.png +0 -0
  14. package/brand-assets/png/expressions/default-320-light.png +0 -0
  15. package/brand-assets/png/expressions/minimal-160-dark.png +0 -0
  16. package/brand-assets/png/expressions/minimal-160-light.png +0 -0
  17. package/brand-assets/png/expressions/minimal-320-dark.png +0 -0
  18. package/brand-assets/png/expressions/minimal-320-light.png +0 -0
  19. package/brand-assets/png/expressions/pointy-160-dark.png +0 -0
  20. package/brand-assets/png/expressions/pointy-160-light.png +0 -0
  21. package/brand-assets/png/expressions/pointy-320-dark.png +0 -0
  22. package/brand-assets/png/expressions/pointy-320-light.png +0 -0
  23. package/brand-assets/png/expressions/simplified-160-dark.png +0 -0
  24. package/brand-assets/png/expressions/simplified-160-light.png +0 -0
  25. package/brand-assets/png/expressions/simplified-320-dark.png +0 -0
  26. package/brand-assets/png/expressions/simplified-320-light.png +0 -0
  27. package/brand-assets/png/expressions/winking-160-dark.png +0 -0
  28. package/brand-assets/png/expressions/winking-160-light.png +0 -0
  29. package/brand-assets/png/expressions/winking-320-dark.png +0 -0
  30. package/brand-assets/png/expressions/winking-320-light.png +0 -0
  31. package/brand-assets/png/favicon/apple-touch-180-dark.png +0 -0
  32. package/brand-assets/png/favicon/apple-touch-180-light.png +0 -0
  33. package/brand-assets/png/favicon/favicon-16-dark.png +0 -0
  34. package/brand-assets/png/favicon/favicon-16-light.png +0 -0
  35. package/brand-assets/png/favicon/favicon-180-dark.png +0 -0
  36. package/brand-assets/png/favicon/favicon-180-light.png +0 -0
  37. package/brand-assets/png/favicon/favicon-32-dark.png +0 -0
  38. package/brand-assets/png/favicon/favicon-32-light.png +0 -0
  39. package/brand-assets/png/favicon/favicon-48-dark.png +0 -0
  40. package/brand-assets/png/favicon/favicon-48-light.png +0 -0
  41. package/brand-assets/png/favicon/v6-minimal-32-dark.png +0 -0
  42. package/brand-assets/png/favicon/v6-minimal-32-light.png +0 -0
  43. package/brand-assets/png/mark/v11-pointy-400-dark.png +0 -0
  44. package/brand-assets/png/mark/v11-pointy-400-light.png +0 -0
  45. package/brand-assets/png/mark/v12-ears-only-160-dark.png +0 -0
  46. package/brand-assets/png/mark/v12-ears-only-160-light.png +0 -0
  47. package/brand-assets/png/mark/v12-ears-only-320-dark.png +0 -0
  48. package/brand-assets/png/mark/v12-ears-only-320-light.png +0 -0
  49. package/brand-assets/png/mark/v12-ears-only-400-dark.png +0 -0
  50. package/brand-assets/png/mark/v12-ears-only-400-light.png +0 -0
  51. package/brand-assets/png/mark/v12-ears-only-80-dark.png +0 -0
  52. package/brand-assets/png/mark/v12-ears-only-80-light.png +0 -0
  53. package/brand-assets/png/mark/v5-ears-400-dark.png +0 -0
  54. package/brand-assets/png/mark/v5-ears-400-light.png +0 -0
  55. package/brand-assets/png/mark/v8-minimal-400-dark.png +0 -0
  56. package/brand-assets/png/mark/v8-minimal-400-light.png +0 -0
  57. package/brand-assets/png/og-1200x630-v2-dark.png +0 -0
  58. package/brand-assets/png/og-feral-a.png +0 -0
  59. package/brand-assets/png/og-feral-b.png +0 -0
  60. package/brand-assets/png/og-feral-c.png +0 -0
  61. package/brand-assets/png/og-feral-d.png +0 -0
  62. package/brand-assets/png/og-v2-variation-a.png +0 -0
  63. package/brand-assets/png/og-v2-variation-b.png +0 -0
  64. package/brand-assets/png/og-v2-variation-c.png +0 -0
  65. package/brand-assets/png/social/banner-cat-ticker-1500x500-dark.png +0 -0
  66. package/brand-assets/png/social/banner-cat-ticker-1500x500-light.png +0 -0
  67. package/brand-assets/png/social/og-v11-pointy-1200x630-dark.png +0 -0
  68. package/brand-assets/png/social/og-v11-pointy-1200x630-light.png +0 -0
  69. package/brand-assets/png/social/og-v12-ears-1200x630-dark.png +0 -0
  70. package/brand-assets/png/social/og-v12-ears-1200x630-light.png +0 -0
  71. package/brand-assets/png/social/og-v12-ears-1280x320-dark.png +0 -0
  72. package/brand-assets/png/social/og-v12-ticker-1200x630-dark.png +0 -0
  73. package/brand-assets/png/social/og-v12-ticker-1200x630-light.png +0 -0
  74. package/brand-assets/png/social/pfp-ears-400-dark.png +0 -0
  75. package/brand-assets/png/social/pfp-ears-400-light.png +0 -0
  76. package/brand-assets/png/social/twitter-banner-v11-1500x500-dark.png +0 -0
  77. package/brand-assets/png/social/twitter-pfp-400-dark.png +0 -0
  78. package/brand-assets/png/social/twitter-pfp-400-light.png +0 -0
  79. package/brand-assets/png/social/twitter-pfp-v11-400-dark.png +0 -0
  80. package/brand-assets/png/v12-ears-only-1000-dark.png +0 -0
  81. package/brand-assets/svg/Archive/402cat-banner-1200x400-dark.svg +13 -0
  82. package/brand-assets/svg/Archive/402cat-banner-1200x400-light.svg +13 -0
  83. package/brand-assets/svg/Archive/402cat-default-160-dark.svg +12 -0
  84. package/brand-assets/svg/Archive/402cat-default-160-light.svg +12 -0
  85. package/brand-assets/svg/Archive/402cat-excited-160-dark.svg +12 -0
  86. package/brand-assets/svg/Archive/402cat-excited-160-light.svg +12 -0
  87. package/brand-assets/svg/Archive/402cat-facilitator-160-dark.svg +12 -0
  88. package/brand-assets/svg/Archive/402cat-facilitator-160-light.svg +12 -0
  89. package/brand-assets/svg/Archive/402cat-facilitator-320-dark.svg +12 -0
  90. package/brand-assets/svg/Archive/402cat-facilitator-320-light.svg +12 -0
  91. package/brand-assets/svg/Archive/402cat-facilitator-80-dark.svg +12 -0
  92. package/brand-assets/svg/Archive/402cat-facilitator-80-light.svg +12 -0
  93. package/brand-assets/svg/Archive/402cat-favicon-16-dark.svg +10 -0
  94. package/brand-assets/svg/Archive/402cat-favicon-16-light.svg +10 -0
  95. package/brand-assets/svg/Archive/402cat-favicon-32-dark.svg +10 -0
  96. package/brand-assets/svg/Archive/402cat-favicon-32-light.svg +10 -0
  97. package/brand-assets/svg/Archive/402cat-og-1200x630-dark.svg +14 -0
  98. package/brand-assets/svg/Archive/402cat-og-1200x630-light.svg +14 -0
  99. package/brand-assets/svg/Archive/402cat-server-40-dark.svg +11 -0
  100. package/brand-assets/svg/Archive/402cat-server-40-light.svg +11 -0
  101. package/brand-assets/svg/Archive/402cat-server-80-dark.svg +11 -0
  102. package/brand-assets/svg/Archive/402cat-server-80-light.svg +11 -0
  103. package/brand-assets/svg/Archive/402cat-sleeping-160-dark.svg +13 -0
  104. package/brand-assets/svg/Archive/402cat-sleeping-160-light.svg +13 -0
  105. package/brand-assets/svg/Archive/402cat-twitter-pfp-dark.svg +12 -0
  106. package/brand-assets/svg/Archive/402cat-twitter-pfp-light.svg +12 -0
  107. package/brand-assets/svg/Archive/mark/neko1-kawaii-80-dark.svg +8 -0
  108. package/brand-assets/svg/Archive/mark/neko1-kawaii-80-light.svg +8 -0
  109. package/brand-assets/svg/Archive/mark/neko1-right-80-dark.svg +8 -0
  110. package/brand-assets/svg/Archive/mark/neko1-right-80-light.svg +8 -0
  111. package/brand-assets/svg/Archive/mark/neko10-pointy-80-dark.svg +8 -0
  112. package/brand-assets/svg/Archive/mark/neko10-pointy-80-light.svg +8 -0
  113. package/brand-assets/svg/Archive/mark/neko2-clean-80-dark.svg +8 -0
  114. package/brand-assets/svg/Archive/mark/neko2-clean-80-light.svg +8 -0
  115. package/brand-assets/svg/Archive/mark/neko2-left-80-dark.svg +8 -0
  116. package/brand-assets/svg/Archive/mark/neko2-left-80-light.svg +8 -0
  117. package/brand-assets/svg/Archive/mark/neko3-both-80-dark.svg +8 -0
  118. package/brand-assets/svg/Archive/mark/neko3-both-80-light.svg +8 -0
  119. package/brand-assets/svg/Archive/mark/neko3-money-80-dark.svg +8 -0
  120. package/brand-assets/svg/Archive/mark/neko3-money-80-light.svg +8 -0
  121. package/brand-assets/svg/Archive/mark/neko4-beckon-80-dark.svg +8 -0
  122. package/brand-assets/svg/Archive/mark/neko4-beckon-80-light.svg +8 -0
  123. package/brand-assets/svg/Archive/mark/neko4-coin-80-dark.svg +8 -0
  124. package/brand-assets/svg/Archive/mark/neko4-coin-80-light.svg +8 -0
  125. package/brand-assets/svg/Archive/mark/neko5-compact-80-dark.svg +8 -0
  126. package/brand-assets/svg/Archive/mark/neko5-compact-80-light.svg +8 -0
  127. package/brand-assets/svg/Archive/mark/neko5-mini-80-dark.svg +8 -0
  128. package/brand-assets/svg/Archive/mark/neko5-mini-80-light.svg +8 -0
  129. package/brand-assets/svg/Archive/mark/neko6-coin-80-dark.svg +8 -0
  130. package/brand-assets/svg/Archive/mark/neko6-coin-80-light.svg +8 -0
  131. package/brand-assets/svg/Archive/mark/neko6-money-80-dark.svg +8 -0
  132. package/brand-assets/svg/Archive/mark/neko6-money-80-light.svg +8 -0
  133. package/brand-assets/svg/Archive/mark/neko7-lucky-80-dark.svg +8 -0
  134. package/brand-assets/svg/Archive/mark/neko7-lucky-80-light.svg +8 -0
  135. package/brand-assets/svg/Archive/mark/neko7-simple-80-dark.svg +8 -0
  136. package/brand-assets/svg/Archive/mark/neko7-simple-80-light.svg +8 -0
  137. package/brand-assets/svg/Archive/mark/neko8-classic-80-dark.svg +8 -0
  138. package/brand-assets/svg/Archive/mark/neko8-classic-80-light.svg +8 -0
  139. package/brand-assets/svg/Archive/mark/neko8-mini-80-dark.svg +8 -0
  140. package/brand-assets/svg/Archive/mark/neko8-mini-80-light.svg +8 -0
  141. package/brand-assets/svg/Archive/mark/neko9-box-80-dark.svg +8 -0
  142. package/brand-assets/svg/Archive/mark/neko9-box-80-light.svg +8 -0
  143. package/brand-assets/svg/Archive/mark/v1-simplified-80-dark.svg +8 -0
  144. package/brand-assets/svg/Archive/mark/v1-simplified-80-light.svg +8 -0
  145. package/brand-assets/svg/Archive/mark/v10-bracket-80-dark.svg +8 -0
  146. package/brand-assets/svg/Archive/mark/v10-bracket-80-light.svg +8 -0
  147. package/brand-assets/svg/Archive/mark/v11b-pointy-wink-80-dark.svg +8 -0
  148. package/brand-assets/svg/Archive/mark/v11b-pointy-wink-80-light.svg +8 -0
  149. package/brand-assets/svg/Archive/mark/v12-face-80-dark.svg +7 -0
  150. package/brand-assets/svg/Archive/mark/v12-face-80-light.svg +7 -0
  151. package/brand-assets/svg/Archive/mark/v2-full-80-dark.svg +9 -0
  152. package/brand-assets/svg/Archive/mark/v2-full-80-light.svg +9 -0
  153. package/brand-assets/svg/Archive/mark/v3-compact-80-dark.svg +8 -0
  154. package/brand-assets/svg/Archive/mark/v3-compact-80-light.svg +8 -0
  155. package/brand-assets/svg/Archive/mark/v4-default-80-dark.svg +9 -0
  156. package/brand-assets/svg/Archive/mark/v4-default-80-light.svg +9 -0
  157. package/brand-assets/svg/Archive/mark/v6-ears-bold-80-dark.svg +7 -0
  158. package/brand-assets/svg/Archive/mark/v6-ears-bold-80-light.svg +7 -0
  159. package/brand-assets/svg/Archive/mark/v7-ears-wide-80-dark.svg +7 -0
  160. package/brand-assets/svg/Archive/mark/v7-ears-wide-80-light.svg +7 -0
  161. package/brand-assets/svg/Archive/mark/v9-box-80-dark.svg +8 -0
  162. package/brand-assets/svg/Archive/mark/v9-box-80-light.svg +8 -0
  163. package/brand-assets/svg/Archive.zip +0 -0
  164. package/brand-assets/svg/expressions/box-cat-160-dark.svg +8 -0
  165. package/brand-assets/svg/expressions/box-cat-160-light.svg +8 -0
  166. package/brand-assets/svg/expressions/bracket-160-dark.svg +8 -0
  167. package/brand-assets/svg/expressions/bracket-160-light.svg +8 -0
  168. package/brand-assets/svg/expressions/compact-160-dark.svg +8 -0
  169. package/brand-assets/svg/expressions/compact-160-light.svg +8 -0
  170. package/brand-assets/svg/expressions/default-160-dark.svg +9 -0
  171. package/brand-assets/svg/expressions/default-160-light.svg +9 -0
  172. package/brand-assets/svg/expressions/ears-bold-160-dark.svg +7 -0
  173. package/brand-assets/svg/expressions/ears-bold-160-light.svg +7 -0
  174. package/brand-assets/svg/expressions/ears-only-160-dark.svg +7 -0
  175. package/brand-assets/svg/expressions/ears-only-160-light.svg +7 -0
  176. package/brand-assets/svg/expressions/ears-wide-160-dark.svg +7 -0
  177. package/brand-assets/svg/expressions/ears-wide-160-light.svg +7 -0
  178. package/brand-assets/svg/expressions/excited-160-dark.svg +9 -0
  179. package/brand-assets/svg/expressions/excited-160-light.svg +9 -0
  180. package/brand-assets/svg/expressions/face-only-160-dark.svg +7 -0
  181. package/brand-assets/svg/expressions/face-only-160-light.svg +7 -0
  182. package/brand-assets/svg/expressions/minimal-160-dark.svg +8 -0
  183. package/brand-assets/svg/expressions/minimal-160-light.svg +8 -0
  184. package/brand-assets/svg/expressions/pointy-160-dark.svg +8 -0
  185. package/brand-assets/svg/expressions/pointy-160-light.svg +8 -0
  186. package/brand-assets/svg/expressions/simplified-160-dark.svg +8 -0
  187. package/brand-assets/svg/expressions/simplified-160-light.svg +8 -0
  188. package/brand-assets/svg/expressions/sleeping-160-dark.svg +10 -0
  189. package/brand-assets/svg/expressions/sleeping-160-light.svg +10 -0
  190. package/brand-assets/svg/expressions/winking-160-dark.svg +9 -0
  191. package/brand-assets/svg/expressions/winking-160-light.svg +9 -0
  192. package/brand-assets/svg/expressions-paths/compact-160-dark.svg +42 -0
  193. package/brand-assets/svg/expressions-paths/compact-160-light.svg +42 -0
  194. package/brand-assets/svg/expressions-paths/default-160-dark.svg +47 -0
  195. package/brand-assets/svg/expressions-paths/default-160-light.svg +47 -0
  196. package/brand-assets/svg/expressions-paths/minimal-160-dark.svg +42 -0
  197. package/brand-assets/svg/expressions-paths/minimal-160-light.svg +42 -0
  198. package/brand-assets/svg/expressions-paths/pointy-160-dark.svg +42 -0
  199. package/brand-assets/svg/expressions-paths/pointy-160-light.svg +42 -0
  200. package/brand-assets/svg/expressions-paths/simplified-160-dark.svg +42 -0
  201. package/brand-assets/svg/expressions-paths/simplified-160-light.svg +42 -0
  202. package/brand-assets/svg/expressions-paths/winking-160-dark.svg +47 -0
  203. package/brand-assets/svg/expressions-paths/winking-160-light.svg +47 -0
  204. package/brand-assets/svg/favicon/apple-touch-180-dark.svg +8 -0
  205. package/brand-assets/svg/favicon/apple-touch-180-light.svg +8 -0
  206. package/brand-assets/svg/favicon/favicon-16-dark.svg +8 -0
  207. package/brand-assets/svg/favicon/favicon-16-light.svg +8 -0
  208. package/brand-assets/svg/favicon/favicon-32-dark.svg +11 -0
  209. package/brand-assets/svg/favicon/favicon-32-light.svg +11 -0
  210. package/brand-assets/svg/favicon/favicon-48-dark.svg +8 -0
  211. package/brand-assets/svg/favicon/favicon-48-light.svg +8 -0
  212. package/brand-assets/svg/favicon/v11-pointy-path-16-dark.svg +18 -0
  213. package/brand-assets/svg/favicon/v11-pointy-path-32-dark.svg +19 -0
  214. package/brand-assets/svg/favicon/v4-ears-32-dark.svg +7 -0
  215. package/brand-assets/svg/favicon/v4-ears-32-light.svg +7 -0
  216. package/brand-assets/svg/favicon/v5-pointy-32-dark.svg +8 -0
  217. package/brand-assets/svg/favicon/v5-pointy-32-light.svg +8 -0
  218. package/brand-assets/svg/favicon/v6-minimal-32-dark.svg +8 -0
  219. package/brand-assets/svg/favicon/v6-minimal-32-light.svg +8 -0
  220. package/brand-assets/svg/favicon/v7-ears-only-32-dark.svg +5 -0
  221. package/brand-assets/svg/favicon/v7-ears-only-32-light.svg +5 -0
  222. package/brand-assets/svg/favicon-paths/v12-ears-only-16-dark.svg +4 -0
  223. package/brand-assets/svg/favicon-paths/v12-ears-only-16-light.svg +4 -0
  224. package/brand-assets/svg/favicon-paths/v12-ears-only-48-dark.svg +4 -0
  225. package/brand-assets/svg/favicon-paths/v12-ears-only-48-light.svg +4 -0
  226. package/brand-assets/svg/favicon-paths/v12-ears-only-96-dark.svg +4 -0
  227. package/brand-assets/svg/favicon-paths/v12-ears-only-96-light.svg +4 -0
  228. package/brand-assets/svg/favicon-paths/v6-minimal-32-dark.svg +42 -0
  229. package/brand-assets/svg/favicon-paths/v6-minimal-32-light.svg +42 -0
  230. package/brand-assets/svg/favicon-paths/v7-ears-only-32-dark.svg +34 -0
  231. package/brand-assets/svg/favicon-paths/v7-ears-only-32-light.svg +34 -0
  232. package/brand-assets/svg/mark/facilitator-160-dark.svg +11 -0
  233. package/brand-assets/svg/mark/facilitator-160-light.svg +11 -0
  234. package/brand-assets/svg/mark/facilitator-320-dark.svg +12 -0
  235. package/brand-assets/svg/mark/facilitator-320-light.svg +12 -0
  236. package/brand-assets/svg/mark/facilitator-40-dark.svg +11 -0
  237. package/brand-assets/svg/mark/facilitator-40-light.svg +11 -0
  238. package/brand-assets/svg/mark/facilitator-44-dark.svg +8 -0
  239. package/brand-assets/svg/mark/facilitator-44-light.svg +8 -0
  240. package/brand-assets/svg/mark/facilitator-72-dark.svg +8 -0
  241. package/brand-assets/svg/mark/facilitator-72-light.svg +8 -0
  242. package/brand-assets/svg/mark/facilitator-80-dark.svg +11 -0
  243. package/brand-assets/svg/mark/facilitator-80-light.svg +11 -0
  244. package/brand-assets/svg/mark/facilitator-ears-44-dark.svg +7 -0
  245. package/brand-assets/svg/mark/facilitator-ears-44-light.svg +7 -0
  246. package/brand-assets/svg/mark/facilitator-ears-72-dark.svg +7 -0
  247. package/brand-assets/svg/mark/facilitator-ears-72-light.svg +7 -0
  248. package/brand-assets/svg/mark/facilitator-pointy-44-dark.svg +8 -0
  249. package/brand-assets/svg/mark/facilitator-pointy-44-light.svg +8 -0
  250. package/brand-assets/svg/mark/facilitator-pointy-72-dark.svg +8 -0
  251. package/brand-assets/svg/mark/facilitator-pointy-72-light.svg +8 -0
  252. package/brand-assets/svg/mark/v11-pointy-80-dark.svg +8 -0
  253. package/brand-assets/svg/mark/v11-pointy-80-light.svg +8 -0
  254. package/brand-assets/svg/mark/v11-pointy-path-160-dark.svg +13 -0
  255. package/brand-assets/svg/mark/v11-pointy-path-180-dark.svg +13 -0
  256. package/brand-assets/svg/mark/v11-pointy-path-320-dark.svg +13 -0
  257. package/brand-assets/svg/mark/v11-pointy-path-40-dark.svg +13 -0
  258. package/brand-assets/svg/mark/v11-pointy-path-80-dark.svg +26 -0
  259. package/brand-assets/svg/mark/v11-pointy-path-80-light.svg +26 -0
  260. package/brand-assets/svg/mark/v11-pointy-path-transparent.svg +25 -0
  261. package/brand-assets/svg/mark/v12-ears-only-1000-dark.svg +7 -0
  262. package/brand-assets/svg/mark/v12-ears-only-80-dark.svg +7 -0
  263. package/brand-assets/svg/mark/v12-ears-only-80-light.svg +7 -0
  264. package/brand-assets/svg/mark/v5-ears-80-dark.svg +7 -0
  265. package/brand-assets/svg/mark/v5-ears-80-light.svg +7 -0
  266. package/brand-assets/svg/mark/v8-minimal-80-dark.svg +8 -0
  267. package/brand-assets/svg/mark/v8-minimal-80-light.svg +8 -0
  268. package/brand-assets/svg/mark-paths/facilitator-80-dark.svg +46 -0
  269. package/brand-assets/svg/mark-paths/v12-ears-only-160-dark.svg +4 -0
  270. package/brand-assets/svg/mark-paths/v12-ears-only-160-light.svg +4 -0
  271. package/brand-assets/svg/mark-paths/v12-ears-only-180-dark.svg +4 -0
  272. package/brand-assets/svg/mark-paths/v12-ears-only-180-light.svg +4 -0
  273. package/brand-assets/svg/mark-paths/v12-ears-only-320-dark.svg +4 -0
  274. package/brand-assets/svg/mark-paths/v12-ears-only-320-light.svg +4 -0
  275. package/brand-assets/svg/mark-paths/v12-ears-only-40-dark.svg +4 -0
  276. package/brand-assets/svg/mark-paths/v12-ears-only-40-light.svg +4 -0
  277. package/brand-assets/svg/mark-paths/v12-ears-only-80-dark.svg +37 -0
  278. package/brand-assets/svg/mark-paths/v12-ears-only-80-light.svg +37 -0
  279. package/brand-assets/svg/mark-paths/v12-ears-only-transparent.svg +4 -0
  280. package/brand-assets/svg/server/icon-40-dark.svg +8 -0
  281. package/brand-assets/svg/server/icon-40-light.svg +8 -0
  282. package/brand-assets/svg/server/icon-80-dark.svg +8 -0
  283. package/brand-assets/svg/server/icon-80-light.svg +8 -0
  284. package/brand-assets/svg/social/banner-1200x400-dark.svg +14 -0
  285. package/brand-assets/svg/social/banner-1200x400-light.svg +14 -0
  286. package/brand-assets/svg/social/banner-cat-ticker-1500x500-dark.svg +7 -0
  287. package/brand-assets/svg/social/banner-cat-ticker-1500x500-light.svg +7 -0
  288. package/brand-assets/svg/social/banner-cat1-left-dark.svg +10 -0
  289. package/brand-assets/svg/social/banner-cat1-left-light.svg +10 -0
  290. package/brand-assets/svg/social/banner-cat2-right-dark.svg +10 -0
  291. package/brand-assets/svg/social/banner-cat2-right-light.svg +10 -0
  292. package/brand-assets/svg/social/banner-cat3-stacked-dark.svg +9 -0
  293. package/brand-assets/svg/social/banner-cat3-stacked-light.svg +9 -0
  294. package/brand-assets/svg/social/banner-cat4-wordmark-dark.svg +8 -0
  295. package/brand-assets/svg/social/banner-cat4-wordmark-light.svg +8 -0
  296. package/brand-assets/svg/social/banner-cc1-left-dark.svg +10 -0
  297. package/brand-assets/svg/social/banner-cc1-left-light.svg +10 -0
  298. package/brand-assets/svg/social/banner-cc2-right-dark.svg +10 -0
  299. package/brand-assets/svg/social/banner-cc2-right-light.svg +10 -0
  300. package/brand-assets/svg/social/banner-cc3-stacked-dark.svg +9 -0
  301. package/brand-assets/svg/social/banner-cc3-stacked-light.svg +9 -0
  302. package/brand-assets/svg/social/banner-cc4-centered-dark.svg +9 -0
  303. package/brand-assets/svg/social/banner-cc4-centered-light.svg +9 -0
  304. package/brand-assets/svg/social/banner-cc5-right-big-dark.svg +9 -0
  305. package/brand-assets/svg/social/banner-cc5-right-big-light.svg +9 -0
  306. package/brand-assets/svg/social/banner-cc6-ears-right-dark.svg +8 -0
  307. package/brand-assets/svg/social/banner-cc6-ears-right-light.svg +8 -0
  308. package/brand-assets/svg/social/banner-cc7-wordmark-dark.svg +8 -0
  309. package/brand-assets/svg/social/banner-cc7-wordmark-light.svg +8 -0
  310. package/brand-assets/svg/social/banner-cc8-minimal-dark.svg +9 -0
  311. package/brand-assets/svg/social/banner-cc8-minimal-light.svg +9 -0
  312. package/brand-assets/svg/social/banner-cc9-dramatic-dark.svg +9 -0
  313. package/brand-assets/svg/social/banner-cc9-dramatic-light.svg +9 -0
  314. package/brand-assets/svg/social/banner-ccat1-left-dark.svg +10 -0
  315. package/brand-assets/svg/social/banner-ccat1-left-light.svg +10 -0
  316. package/brand-assets/svg/social/banner-ccat2-right-dark.svg +10 -0
  317. package/brand-assets/svg/social/banner-ccat2-right-light.svg +10 -0
  318. package/brand-assets/svg/social/banner-ccat3-stacked-dark.svg +9 -0
  319. package/brand-assets/svg/social/banner-ccat3-stacked-light.svg +9 -0
  320. package/brand-assets/svg/social/banner-ccat4-wordmark-dark.svg +8 -0
  321. package/brand-assets/svg/social/banner-ccat4-wordmark-light.svg +8 -0
  322. package/brand-assets/svg/social/banner-sn1-snuggle-dark.svg +10 -0
  323. package/brand-assets/svg/social/banner-sn1-snuggle-light.svg +10 -0
  324. package/brand-assets/svg/social/banner-sn2-snuggle-big-dark.svg +9 -0
  325. package/brand-assets/svg/social/banner-sn2-snuggle-big-light.svg +9 -0
  326. package/brand-assets/svg/social/banner-sn3-snuggle-centered-dark.svg +10 -0
  327. package/brand-assets/svg/social/banner-sn3-snuggle-centered-light.svg +10 -0
  328. package/brand-assets/svg/social/banner-sn4-snuggle-simple-dark.svg +9 -0
  329. package/brand-assets/svg/social/banner-sn4-snuggle-simple-light.svg +9 -0
  330. package/brand-assets/svg/social/banner-sn5-snuggle-compact-dark.svg +9 -0
  331. package/brand-assets/svg/social/banner-sn5-snuggle-compact-light.svg +9 -0
  332. package/brand-assets/svg/social/banner-v1-left-dark.svg +10 -0
  333. package/brand-assets/svg/social/banner-v1-left-light.svg +10 -0
  334. package/brand-assets/svg/social/banner-v10-dramatic-dark.svg +9 -0
  335. package/brand-assets/svg/social/banner-v10-dramatic-light.svg +9 -0
  336. package/brand-assets/svg/social/banner-v11-bold-right-dark.svg +8 -0
  337. package/brand-assets/svg/social/banner-v11-bold-right-light.svg +8 -0
  338. package/brand-assets/svg/social/banner-v12-pointy-right-dark.svg +9 -0
  339. package/brand-assets/svg/social/banner-v12-pointy-right-light.svg +9 -0
  340. package/brand-assets/svg/social/banner-v13-ears-twitter-dark.svg +8 -0
  341. package/brand-assets/svg/social/banner-v13-ears-twitter-light.svg +8 -0
  342. package/brand-assets/svg/social/banner-v14-bold-twitter-dark.svg +8 -0
  343. package/brand-assets/svg/social/banner-v14-bold-twitter-light.svg +8 -0
  344. package/brand-assets/svg/social/banner-v15-pointy-twitter-dark.svg +9 -0
  345. package/brand-assets/svg/social/banner-v15-pointy-twitter-light.svg +9 -0
  346. package/brand-assets/svg/social/banner-v16-pointy-wink-twitter-dark.svg +9 -0
  347. package/brand-assets/svg/social/banner-v16-pointy-wink-twitter-light.svg +9 -0
  348. package/brand-assets/svg/social/banner-v17-bold-twitter-big-dark.svg +8 -0
  349. package/brand-assets/svg/social/banner-v17-bold-twitter-big-light.svg +8 -0
  350. package/brand-assets/svg/social/banner-v2-right-dark.svg +10 -0
  351. package/brand-assets/svg/social/banner-v2-right-light.svg +10 -0
  352. package/brand-assets/svg/social/banner-v3-stacked-dark.svg +9 -0
  353. package/brand-assets/svg/social/banner-v3-stacked-light.svg +9 -0
  354. package/brand-assets/svg/social/banner-v4-minimal-dark.svg +9 -0
  355. package/brand-assets/svg/social/banner-v4-minimal-light.svg +9 -0
  356. package/brand-assets/svg/social/banner-v5-right-far-dark.svg +10 -0
  357. package/brand-assets/svg/social/banner-v5-right-far-light.svg +10 -0
  358. package/brand-assets/svg/social/banner-v6-right-big-dark.svg +9 -0
  359. package/brand-assets/svg/social/banner-v6-right-big-light.svg +9 -0
  360. package/brand-assets/svg/social/banner-v7-centered-dark.svg +9 -0
  361. package/brand-assets/svg/social/banner-v7-centered-light.svg +9 -0
  362. package/brand-assets/svg/social/banner-v8-wordmark-dark.svg +8 -0
  363. package/brand-assets/svg/social/banner-v8-wordmark-light.svg +8 -0
  364. package/brand-assets/svg/social/banner-v9-ears-right-dark.svg +8 -0
  365. package/brand-assets/svg/social/banner-v9-ears-right-light.svg +8 -0
  366. package/brand-assets/svg/social/og-1200x630-dark.svg +16 -0
  367. package/brand-assets/svg/social/og-1200x630-light.svg +16 -0
  368. package/brand-assets/svg/social/og-1200x630-v2-dark.svg +73 -0
  369. package/brand-assets/svg/social/og-box-centered-dark.svg +10 -0
  370. package/brand-assets/svg/social/og-box-centered-light.svg +10 -0
  371. package/brand-assets/svg/social/og-cat1-centered-dark.svg +10 -0
  372. package/brand-assets/svg/social/og-cat1-centered-light.svg +10 -0
  373. package/brand-assets/svg/social/og-cat2-hero-dark.svg +11 -0
  374. package/brand-assets/svg/social/og-cat2-hero-light.svg +11 -0
  375. package/brand-assets/svg/social/og-cat3-minimal-dark.svg +10 -0
  376. package/brand-assets/svg/social/og-cat3-minimal-light.svg +10 -0
  377. package/brand-assets/svg/social/og-cc1-centered-dark.svg +11 -0
  378. package/brand-assets/svg/social/og-cc1-centered-light.svg +11 -0
  379. package/brand-assets/svg/social/og-cc2-hero-dark.svg +10 -0
  380. package/brand-assets/svg/social/og-cc2-hero-light.svg +10 -0
  381. package/brand-assets/svg/social/og-cc3-minimal-dark.svg +10 -0
  382. package/brand-assets/svg/social/og-cc3-minimal-light.svg +10 -0
  383. package/brand-assets/svg/social/og-cc4-split-dark.svg +11 -0
  384. package/brand-assets/svg/social/og-cc4-split-light.svg +11 -0
  385. package/brand-assets/svg/social/og-feral-a.svg +68 -0
  386. package/brand-assets/svg/social/og-feral-b.svg +80 -0
  387. package/brand-assets/svg/social/og-feral-c.svg +73 -0
  388. package/brand-assets/svg/social/og-feral-d.svg +63 -0
  389. package/brand-assets/svg/social/og-minimal-centered-dark.svg +10 -0
  390. package/brand-assets/svg/social/og-minimal-centered-light.svg +10 -0
  391. package/brand-assets/svg/social/og-neko1-kawaii-dark.svg +10 -0
  392. package/brand-assets/svg/social/og-neko1-kawaii-light.svg +10 -0
  393. package/brand-assets/svg/social/og-neko2-money-dark.svg +10 -0
  394. package/brand-assets/svg/social/og-neko2-money-light.svg +10 -0
  395. package/brand-assets/svg/social/og-neko3-lucky-dark.svg +10 -0
  396. package/brand-assets/svg/social/og-neko3-lucky-light.svg +10 -0
  397. package/brand-assets/svg/social/og-neko4-clean-dark.svg +10 -0
  398. package/brand-assets/svg/social/og-neko4-clean-light.svg +10 -0
  399. package/brand-assets/svg/social/og-pointy-hero-dark.svg +10 -0
  400. package/brand-assets/svg/social/og-pointy-hero-light.svg +10 -0
  401. package/brand-assets/svg/social/og-v1-centered-dark.svg +11 -0
  402. package/brand-assets/svg/social/og-v1-centered-light.svg +11 -0
  403. package/brand-assets/svg/social/og-v11-pointy-1200x630-dark.svg +38 -0
  404. package/brand-assets/svg/social/og-v11-pointy-1200x630-light.svg +38 -0
  405. package/brand-assets/svg/social/og-v12-ears-1200x630-dark.svg +5 -0
  406. package/brand-assets/svg/social/og-v12-ears-1200x630-light.svg +5 -0
  407. package/brand-assets/svg/social/og-v12-ticker-1200x630-dark.svg +6 -0
  408. package/brand-assets/svg/social/og-v12-ticker-1200x630-light.svg +6 -0
  409. package/brand-assets/svg/social/og-v2-split-dark.svg +11 -0
  410. package/brand-assets/svg/social/og-v2-split-light.svg +11 -0
  411. package/brand-assets/svg/social/og-v2-variation-a.svg +74 -0
  412. package/brand-assets/svg/social/og-v2-variation-b.svg +63 -0
  413. package/brand-assets/svg/social/og-v2-variation-c.svg +71 -0
  414. package/brand-assets/svg/social/og-v3-hero-dark.svg +11 -0
  415. package/brand-assets/svg/social/og-v3-hero-light.svg +11 -0
  416. package/brand-assets/svg/social/og-v4-minimal-dark.svg +10 -0
  417. package/brand-assets/svg/social/og-v4-minimal-light.svg +10 -0
  418. package/brand-assets/svg/social/pfp-ears-400-dark.svg +5 -0
  419. package/brand-assets/svg/social/pfp-ears-400-light.svg +5 -0
  420. package/brand-assets/svg/social/pfp-v5-pointy-dark.svg +8 -0
  421. package/brand-assets/svg/social/pfp-v5-pointy-light.svg +8 -0
  422. package/brand-assets/svg/social/twitter-banner-v11-1500x500-dark.svg +35 -0
  423. package/brand-assets/svg/social/twitter-pfp-400-dark.svg +12 -0
  424. package/brand-assets/svg/social/twitter-pfp-400-light.svg +12 -0
  425. package/brand-assets/svg/social/twitter-pfp-v11-400-dark.svg +20 -0
  426. package/brand-assets/svg/social-paths/banner-cat-ticker-1500x500-dark.svg +44 -0
  427. package/brand-assets/svg/social-paths/banner-cat-ticker-1500x500-light.svg +44 -0
  428. package/brand-assets/svg/social-paths/og-v12-ears-1200x630-dark.svg +34 -0
  429. package/brand-assets/svg/social-paths/og-v12-ears-1200x630-light.svg +34 -0
  430. package/brand-assets/svg/social-paths/og-v12-ticker-1200x630-dark.svg +39 -0
  431. package/brand-assets/svg/social-paths/og-v12-ticker-1200x630-light.svg +39 -0
  432. package/brand-assets/svg/social-paths/pfp-ears-400-dark.svg +35 -0
  433. package/brand-assets/svg/social-paths/pfp-ears-400-light.svg +35 -0
  434. package/brand-assets/svg/social-paths/twitter-pfp-400-dark.svg +51 -0
  435. package/brand-assets/svg/social-paths/twitter-pfp-400-light.svg +51 -0
  436. package/brand-assets/svg/web/apple-touch-icon-180.svg +4 -0
  437. package/brand-assets/svg/web/favicon-32-dark.svg +4 -0
  438. package/brand-assets/svg/web/favicon-32-light.svg +4 -0
  439. package/brand-assets/svg/web/mark-80-alert.svg +4 -0
  440. package/brand-assets/svg/web/mark-80-dark.svg +4 -0
  441. package/brand-assets/svg/web/mark-80-light.svg +4 -0
  442. package/brand-assets/svg/web/mark-80-success.svg +4 -0
  443. package/brand-assets/svg/web/mark-80-wink.svg +4 -0
  444. package/brand-assets/svg/web/og-image-1200x630.svg +13 -0
  445. package/bun.lock +260 -25
  446. package/dist/agent/autonomous-trader.d.ts.map +1 -0
  447. package/dist/agent/autonomous-trader.js +362 -0
  448. package/dist/agent/autonomous-trader.js.map +1 -0
  449. package/dist/agent/ax-agent.d.ts.map +1 -1
  450. package/dist/agent/ax-agent.js +356 -18
  451. package/dist/agent/ax-agent.js.map +1 -1
  452. package/dist/agent/event-client.d.ts.map +1 -0
  453. package/dist/agent/event-client.js +82 -0
  454. package/dist/agent/event-client.js.map +1 -0
  455. package/dist/agent/log-stream.d.ts.map +1 -0
  456. package/dist/agent/log-stream.js +95 -0
  457. package/dist/agent/log-stream.js.map +1 -0
  458. package/dist/agent/memory/conversation-session.d.ts.map +1 -0
  459. package/dist/agent/memory/conversation-session.js +232 -0
  460. package/dist/agent/memory/conversation-session.js.map +1 -0
  461. package/dist/agent/memory/conversation-store.d.ts.map +1 -0
  462. package/dist/agent/memory/conversation-store.js +214 -0
  463. package/dist/agent/memory/conversation-store.js.map +1 -0
  464. package/dist/agent/memory/database-schema.d.ts.map +1 -0
  465. package/dist/agent/memory/database-schema.js +355 -0
  466. package/dist/agent/memory/database-schema.js.map +1 -0
  467. package/dist/agent/memory/decision-tracker.d.ts.map +1 -0
  468. package/dist/agent/memory/decision-tracker.js +274 -0
  469. package/dist/agent/memory/decision-tracker.js.map +1 -0
  470. package/dist/agent/memory/memory-manager.d.ts.map +1 -0
  471. package/dist/agent/memory/memory-manager.js +187 -0
  472. package/dist/agent/memory/memory-manager.js.map +1 -0
  473. package/dist/agent/memory/types.d.ts.map +1 -0
  474. package/dist/agent/memory/types.js +5 -0
  475. package/dist/agent/memory/types.js.map +1 -0
  476. package/dist/agent/message-formatter.d.ts.map +1 -0
  477. package/dist/agent/message-formatter.js +76 -0
  478. package/dist/agent/message-formatter.js.map +1 -0
  479. package/dist/agent/position-db.d.ts.map +1 -0
  480. package/dist/agent/position-db.js +154 -0
  481. package/dist/agent/position-db.js.map +1 -0
  482. package/dist/agent/simple-chat-ui-static.d.ts.map +1 -0
  483. package/dist/agent/simple-chat-ui-static.js +129 -0
  484. package/dist/agent/simple-chat-ui-static.js.map +1 -0
  485. package/dist/agent/simple-chat-ui.d.ts.map +1 -0
  486. package/dist/agent/simple-chat-ui.js +90 -0
  487. package/dist/agent/simple-chat-ui.js.map +1 -0
  488. package/dist/agent/tools.d.ts.map +1 -1
  489. package/dist/agent/tools.js +297 -4
  490. package/dist/agent/tools.js.map +1 -1
  491. package/dist/agent/ui.d.ts.map +1 -0
  492. package/dist/agent/ui.js +84 -0
  493. package/dist/agent/ui.js.map +1 -0
  494. package/dist/agent/unified-runtime.d.ts.map +1 -0
  495. package/dist/agent/unified-runtime.js +397 -0
  496. package/dist/agent/unified-runtime.js.map +1 -0
  497. package/dist/client.d.ts.map +1 -1
  498. package/dist/client.js +274 -21
  499. package/dist/client.js.map +1 -1
  500. package/dist/commands/account.d.ts.map +1 -1
  501. package/dist/commands/account.js +187 -33
  502. package/dist/commands/account.js.map +1 -1
  503. package/dist/commands/agent.d.ts.map +1 -0
  504. package/dist/commands/agent.js +125 -0
  505. package/dist/commands/agent.js.map +1 -0
  506. package/dist/commands/approve.d.ts.map +1 -0
  507. package/dist/commands/approve.js +505 -0
  508. package/dist/commands/approve.js.map +1 -0
  509. package/dist/commands/automation.d.ts.map +1 -0
  510. package/dist/commands/automation.js +346 -0
  511. package/dist/commands/automation.js.map +1 -0
  512. package/dist/commands/balances.d.ts.map +1 -1
  513. package/dist/commands/balances.js +226 -73
  514. package/dist/commands/balances.js.map +1 -1
  515. package/dist/commands/buy.d.ts.map +1 -1
  516. package/dist/commands/buy.js +149 -146
  517. package/dist/commands/buy.js.map +1 -1
  518. package/dist/commands/call.d.ts.map +1 -0
  519. package/dist/commands/call.js +51 -0
  520. package/dist/commands/call.js.map +1 -0
  521. package/dist/commands/cex.d.ts.map +1 -0
  522. package/dist/commands/cex.js +958 -0
  523. package/dist/commands/cex.js.map +1 -0
  524. package/dist/commands/chat.d.ts.map +1 -1
  525. package/dist/commands/chat.js +169 -411
  526. package/dist/commands/chat.js.map +1 -1
  527. package/dist/commands/claim.d.ts.map +1 -1
  528. package/dist/commands/claim.js +313 -29
  529. package/dist/commands/claim.js.map +1 -1
  530. package/dist/commands/create.d.ts.map +1 -1
  531. package/dist/commands/create.js +151 -43
  532. package/dist/commands/create.js.map +1 -1
  533. package/dist/commands/gasless-swap.d.ts.map +1 -0
  534. package/dist/commands/gasless-swap.js +232 -0
  535. package/dist/commands/gasless-swap.js.map +1 -0
  536. package/dist/commands/health.d.ts.map +1 -1
  537. package/dist/commands/health.js +63 -7
  538. package/dist/commands/health.js.map +1 -1
  539. package/dist/commands/info.d.ts.map +1 -1
  540. package/dist/commands/info.js +131 -47
  541. package/dist/commands/info.js.map +1 -1
  542. package/dist/commands/launchpad.d.ts.map +1 -0
  543. package/dist/commands/launchpad.js +708 -0
  544. package/dist/commands/launchpad.js.map +1 -0
  545. package/dist/commands/list.d.ts.map +1 -1
  546. package/dist/commands/list.js +57 -23
  547. package/dist/commands/list.js.map +1 -1
  548. package/dist/commands/market.d.ts.map +1 -0
  549. package/dist/commands/market.js +960 -0
  550. package/dist/commands/market.js.map +1 -0
  551. package/dist/commands/mcp-install.d.ts.map +1 -0
  552. package/dist/commands/mcp-install.js +387 -0
  553. package/dist/commands/mcp-install.js.map +1 -0
  554. package/dist/commands/opps.d.ts.map +1 -0
  555. package/dist/commands/opps.js +409 -0
  556. package/dist/commands/opps.js.map +1 -0
  557. package/dist/commands/perps.d.ts.map +1 -0
  558. package/dist/commands/perps.js +248 -0
  559. package/dist/commands/perps.js.map +1 -0
  560. package/dist/commands/portfolio.d.ts.map +1 -0
  561. package/dist/commands/portfolio.js +679 -0
  562. package/dist/commands/portfolio.js.map +1 -0
  563. package/dist/commands/positions.d.ts.map +1 -1
  564. package/dist/commands/positions.js +76 -47
  565. package/dist/commands/positions.js.map +1 -1
  566. package/dist/commands/predict.d.ts.map +1 -0
  567. package/dist/commands/predict.js +280 -0
  568. package/dist/commands/predict.js.map +1 -0
  569. package/dist/commands/predictions.d.ts.map +1 -0
  570. package/dist/commands/predictions.js +486 -0
  571. package/dist/commands/predictions.js.map +1 -0
  572. package/dist/commands/risk.d.ts.map +1 -0
  573. package/dist/commands/risk.js +225 -0
  574. package/dist/commands/risk.js.map +1 -0
  575. package/dist/commands/security.d.ts.map +1 -0
  576. package/dist/commands/security.js +244 -0
  577. package/dist/commands/security.js.map +1 -0
  578. package/dist/commands/sell.d.ts.map +1 -1
  579. package/dist/commands/sell.js +67 -34
  580. package/dist/commands/sell.js.map +1 -1
  581. package/dist/commands/send.d.ts.map +1 -0
  582. package/dist/commands/send.js +733 -0
  583. package/dist/commands/send.js.map +1 -0
  584. package/dist/commands/sign.d.ts.map +1 -0
  585. package/dist/commands/sign.js +1048 -0
  586. package/dist/commands/sign.js.map +1 -0
  587. package/dist/commands/swap.d.ts.map +1 -0
  588. package/dist/commands/swap.js +744 -0
  589. package/dist/commands/swap.js.map +1 -0
  590. package/dist/commands/system.d.ts.map +1 -0
  591. package/dist/commands/system.js +417 -0
  592. package/dist/commands/system.js.map +1 -0
  593. package/dist/commands/tools/index.d.ts.map +1 -0
  594. package/dist/commands/tools/index.js +2040 -0
  595. package/dist/commands/tools/index.js.map +1 -0
  596. package/dist/commands/trade.d.ts.map +1 -0
  597. package/dist/commands/trade.js +237 -0
  598. package/dist/commands/trade.js.map +1 -0
  599. package/dist/commands/transactions.d.ts.map +1 -1
  600. package/dist/commands/transactions.js +29 -17
  601. package/dist/commands/transactions.js.map +1 -1
  602. package/dist/commands/update.d.ts.map +1 -0
  603. package/dist/commands/update.js +429 -0
  604. package/dist/commands/update.js.map +1 -0
  605. package/dist/config.d.ts.map +1 -1
  606. package/dist/config.js +351 -40
  607. package/dist/config.js.map +1 -1
  608. package/dist/index.js +4525 -924
  609. package/dist/index.js.map +1 -1
  610. package/dist/interactive/art.d.ts.map +1 -1
  611. package/dist/interactive/art.js +33 -1
  612. package/dist/interactive/art.js.map +1 -1
  613. package/dist/interactive/shell.d.ts.map +1 -1
  614. package/dist/interactive/shell.js +467 -2652
  615. package/dist/interactive/shell.js.map +1 -1
  616. package/dist/mcp/context.d.ts.map +1 -0
  617. package/dist/mcp/context.js +211 -0
  618. package/dist/mcp/context.js.map +1 -0
  619. package/dist/mcp/onboarding.d.ts.map +1 -0
  620. package/dist/mcp/onboarding.js +266 -0
  621. package/dist/mcp/onboarding.js.map +1 -0
  622. package/dist/mcp/resources.d.ts.map +1 -0
  623. package/dist/mcp/resources.js +222 -0
  624. package/dist/mcp/resources.js.map +1 -0
  625. package/dist/mcp/server.d.ts.map +1 -1
  626. package/dist/mcp/server.js +51 -1
  627. package/dist/mcp/server.js.map +1 -1
  628. package/dist/mcp/tools.d.ts.map +1 -1
  629. package/dist/mcp/tools.js +4119 -169
  630. package/dist/mcp/tools.js.map +1 -1
  631. package/dist/mcp/types.d.ts.map +1 -1
  632. package/dist/types/agent-info.d.ts.map +1 -0
  633. package/dist/types/agent-info.js +11 -0
  634. package/dist/types/agent-info.js.map +1 -0
  635. package/dist/ui/components/ScrollableList.d.ts.map +1 -0
  636. package/dist/ui/components/ScrollableList.js +72 -0
  637. package/dist/ui/components/ScrollableList.js.map +1 -0
  638. package/dist/ui/components/ThemeProvider.d.ts.map +1 -0
  639. package/dist/ui/components/ThemeProvider.js +87 -0
  640. package/dist/ui/components/ThemeProvider.js.map +1 -0
  641. package/dist/ui/components/ThemedBox.d.ts.map +1 -0
  642. package/dist/ui/components/ThemedBox.js +24 -0
  643. package/dist/ui/components/ThemedBox.js.map +1 -0
  644. package/dist/ui/components/agent/ChatHeader.d.ts.map +1 -0
  645. package/dist/ui/components/agent/ChatHeader.js +39 -0
  646. package/dist/ui/components/agent/ChatHeader.js.map +1 -0
  647. package/dist/ui/components/agent/Header.d.ts.map +1 -0
  648. package/dist/ui/components/agent/Header.js +14 -0
  649. package/dist/ui/components/agent/Header.js.map +1 -0
  650. package/dist/ui/components/agent/Input.d.ts.map +1 -0
  651. package/dist/ui/components/agent/Input.js +23 -0
  652. package/dist/ui/components/agent/Input.js.map +1 -0
  653. package/dist/ui/components/agent/Output.d.ts.map +1 -0
  654. package/dist/ui/components/agent/Output.js +23 -0
  655. package/dist/ui/components/agent/Output.js.map +1 -0
  656. package/dist/ui/components/chat/TokenChatUI.d.ts.map +1 -0
  657. package/dist/ui/components/chat/TokenChatUI.js +133 -0
  658. package/dist/ui/components/chat/TokenChatUI.js.map +1 -0
  659. package/dist/ui/components/shell/ShellHeader.d.ts.map +1 -0
  660. package/dist/ui/components/shell/ShellHeader.js +31 -0
  661. package/dist/ui/components/shell/ShellHeader.js.map +1 -0
  662. package/dist/ui/components/shell/ShellInput.d.ts.map +1 -0
  663. package/dist/ui/components/shell/ShellInput.js +151 -0
  664. package/dist/ui/components/shell/ShellInput.js.map +1 -0
  665. package/dist/ui/components/shell/ShellOutput.d.ts.map +1 -0
  666. package/dist/ui/components/shell/ShellOutput.js +8 -0
  667. package/dist/ui/components/shell/ShellOutput.js.map +1 -0
  668. package/dist/ui/hooks/useChatWebSocket.d.ts.map +1 -0
  669. package/dist/ui/hooks/useChatWebSocket.js +76 -0
  670. package/dist/ui/hooks/useChatWebSocket.js.map +1 -0
  671. package/dist/ui/hooks/useCommandHistory.d.ts.map +1 -0
  672. package/dist/ui/hooks/useCommandHistory.js +70 -0
  673. package/dist/ui/hooks/useCommandHistory.js.map +1 -0
  674. package/dist/ui/hooks/useDebounce.d.ts.map +1 -0
  675. package/dist/ui/hooks/useDebounce.js +17 -0
  676. package/dist/ui/hooks/useDebounce.js.map +1 -0
  677. package/dist/ui/hooks/useLogStream.d.ts.map +1 -0
  678. package/dist/ui/hooks/useLogStream.js +20 -0
  679. package/dist/ui/hooks/useLogStream.js.map +1 -0
  680. package/dist/ui/hooks/useVirtualScroll.d.ts.map +1 -0
  681. package/dist/ui/hooks/useVirtualScroll.js +70 -0
  682. package/dist/ui/hooks/useVirtualScroll.js.map +1 -0
  683. package/dist/utils/admin.d.ts.map +1 -0
  684. package/dist/utils/admin.js +144 -0
  685. package/dist/utils/admin.js.map +1 -0
  686. package/dist/utils/autoSetup.d.ts.map +1 -0
  687. package/dist/utils/autoSetup.js +252 -0
  688. package/dist/utils/autoSetup.js.map +1 -0
  689. package/dist/utils/build-constants.d.ts.map +1 -0
  690. package/dist/utils/build-constants.js +10 -0
  691. package/dist/utils/build-constants.js.map +1 -0
  692. package/dist/utils/constants.d.ts.map +1 -1
  693. package/dist/utils/errors.d.ts.map +1 -1
  694. package/dist/utils/errors.js +10 -1
  695. package/dist/utils/errors.js.map +1 -1
  696. package/dist/utils/formatting.d.ts.map +1 -1
  697. package/dist/utils/formatting.js +46 -9
  698. package/dist/utils/formatting.js.map +1 -1
  699. package/dist/utils/llm-cli-config.d.ts.map +1 -0
  700. package/dist/utils/llm-cli-config.js +963 -0
  701. package/dist/utils/llm-cli-config.js.map +1 -0
  702. package/dist/utils/llm-cli-detector.d.ts.map +1 -0
  703. package/dist/utils/llm-cli-detector.js +202 -0
  704. package/dist/utils/llm-cli-detector.js.map +1 -0
  705. package/dist/utils/loading.d.ts.map +1 -1
  706. package/dist/utils/loading.js +25 -3
  707. package/dist/utils/loading.js.map +1 -1
  708. package/dist/utils/maintenance.d.ts.map +1 -0
  709. package/dist/utils/maintenance.js +17 -0
  710. package/dist/utils/maintenance.js.map +1 -0
  711. package/dist/utils/mcp-config.d.ts.map +1 -0
  712. package/dist/utils/mcp-config.js +77 -0
  713. package/dist/utils/mcp-config.js.map +1 -0
  714. package/dist/utils/privateKeyPrompt.d.ts.map +1 -1
  715. package/dist/utils/privateKeyPrompt.js +308 -129
  716. package/dist/utils/privateKeyPrompt.js.map +1 -1
  717. package/dist/utils/process-cleanup.d.ts.map +1 -0
  718. package/dist/utils/process-cleanup.js +136 -0
  719. package/dist/utils/process-cleanup.js.map +1 -0
  720. package/dist/utils/retry.d.ts.map +1 -0
  721. package/dist/utils/retry.js +56 -0
  722. package/dist/utils/retry.js.map +1 -0
  723. package/dist/utils/rpc-helpers.d.ts.map +1 -0
  724. package/dist/utils/rpc-helpers.js +70 -0
  725. package/dist/utils/rpc-helpers.js.map +1 -0
  726. package/dist/utils/rpc-transport.d.ts.map +1 -0
  727. package/dist/utils/rpc-transport.js +87 -0
  728. package/dist/utils/rpc-transport.js.map +1 -0
  729. package/dist/utils/shell-setup.d.ts.map +1 -0
  730. package/dist/utils/shell-setup.js +531 -0
  731. package/dist/utils/shell-setup.js.map +1 -0
  732. package/dist/utils/status.d.ts.map +1 -1
  733. package/dist/utils/status.js +34 -5
  734. package/dist/utils/status.js.map +1 -1
  735. package/dist/utils/token-resolver.d.ts.map +1 -1
  736. package/dist/utils/token-resolver.js +51 -8
  737. package/dist/utils/token-resolver.js.map +1 -1
  738. package/dist/utils/x402-caller.d.ts.map +1 -0
  739. package/dist/utils/x402-caller.js +17 -0
  740. package/dist/utils/x402-caller.js.map +1 -0
  741. package/docs/README.md +28 -0
  742. package/docs/agent/README.md +18 -0
  743. package/docs/api/README.md +41 -0
  744. package/docs/cli/README.md +42 -0
  745. package/docs/guides/README.md +26 -0
  746. package/docs/implementation/README.md +18 -0
  747. package/docs/planning/README.md +19 -0
  748. package/docs/testing/README.md +15 -0
  749. package/docs/ux/README.md +16 -0
  750. package/issues.txt +2 -0
  751. package/package.json +24 -9
  752. package/scripts/cat-spin.sh +417 -0
  753. package/scripts/deprecate-rc-versions.js +58 -0
  754. package/scripts/inject-build-constants.js +43 -0
  755. package/scripts/monitor-foobar.js +117 -0
  756. package/swap.logs +61 -0
  757. package/swapping.txt +108 -0
  758. package/test.txt +12 -0
  759. package/tests/fixtures/test-data.json +16 -0
  760. package/Screenshot 2025-12-21 at 8.56.02/342/200/257PM.png +0 -0
@@ -0,0 +1,531 @@
1
+ /**
2
+ * Shell Setup Utilities
3
+ *
4
+ * Functions to install shell autocompletion and create aliases for httpcat CLI.
5
+ * Supports bash and zsh shells with automatic detection.
6
+ */
7
+ import fs from "fs";
8
+ import path from "path";
9
+ import os from "os";
10
+ import { execSync } from "child_process";
11
+ import chalk from "chalk";
12
+ /**
13
+ * Detect the current shell from environment variables
14
+ *
15
+ * @returns Detected shell type or "unknown" if detection fails
16
+ */
17
+ export function detectShell() {
18
+ const shell = process.env.SHELL || "";
19
+ if (shell.includes("zsh")) {
20
+ return "zsh";
21
+ }
22
+ else if (shell.includes("bash")) {
23
+ return "bash";
24
+ }
25
+ return "unknown";
26
+ }
27
+ /**
28
+ * Find the httpcat binary location
29
+ *
30
+ * @returns Full path to httpcat binary or null if not found
31
+ */
32
+ export function findHttpcatBinary() {
33
+ try {
34
+ // Try to find httpcat in PATH
35
+ const result = execSync("which httpcat", { encoding: "utf-8" }).trim();
36
+ if (result && fs.existsSync(result)) {
37
+ // Resolve symlinks to get actual binary location
38
+ try {
39
+ const resolved = fs.realpathSync(result);
40
+ return resolved;
41
+ }
42
+ catch {
43
+ return result;
44
+ }
45
+ }
46
+ }
47
+ catch {
48
+ // Command not found
49
+ }
50
+ // Fallback: check common npm/yarn global locations
51
+ const homeDir = os.homedir();
52
+ const commonPaths = [
53
+ path.join(homeDir, ".npm-global", "bin", "httpcat"),
54
+ path.join(homeDir, ".yarn", "bin", "httpcat"),
55
+ path.join(homeDir, ".local", "bin", "httpcat"),
56
+ "/usr/local/bin/httpcat",
57
+ "/opt/homebrew/bin/httpcat",
58
+ ];
59
+ for (const binPath of commonPaths) {
60
+ if (fs.existsSync(binPath)) {
61
+ try {
62
+ return fs.realpathSync(binPath);
63
+ }
64
+ catch {
65
+ return binPath;
66
+ }
67
+ }
68
+ }
69
+ return null;
70
+ }
71
+ /**
72
+ * Generate bash completion script
73
+ *
74
+ * @param program - Commander.js program instance (optional)
75
+ * @returns Bash completion script content
76
+ */
77
+ export function generateBashCompletion(program) {
78
+ // Get commands from program if available, otherwise use fallback list
79
+ let commands = [];
80
+ let subcommandMap = {};
81
+ if (program && program.commands) {
82
+ // Get all visible (non-hidden) commands
83
+ commands = program.commands
84
+ .filter((cmd) => !cmd._hidden)
85
+ .map((cmd) => cmd.name())
86
+ .filter((name) => name && name !== "help"); // Exclude help command
87
+ // Get subcommands for each command
88
+ for (const cmd of program.commands) {
89
+ if (cmd._hidden)
90
+ continue;
91
+ const cmdName = cmd.name();
92
+ if (!cmdName || cmdName === "help")
93
+ continue;
94
+ if (cmd.commands && cmd.commands.length > 0) {
95
+ const subcommands = cmd.commands
96
+ .filter((subcmd) => !subcmd._hidden)
97
+ .map((subcmd) => subcmd.name())
98
+ .filter((name) => name && name !== "help");
99
+ if (subcommands.length > 0) {
100
+ subcommandMap[cmdName] = subcommands;
101
+ }
102
+ }
103
+ }
104
+ }
105
+ else {
106
+ // Fallback list if program not provided
107
+ commands = [
108
+ "config", "launchpad", "trade", "system", "chat",
109
+ "mcp", "use", "portfolio", "agent", "tools"
110
+ ];
111
+ // Fallback subcommands
112
+ subcommandMap = {
113
+ launchpad: ["create", "buy", "sell", "list", "info", "positions", "fees"],
114
+ trade: ["swap", "gasless-submit", "gasless-submit-our", "gasless-quote", "gasless-status"],
115
+ portfolio: ["balances", "summary", "pnl", "transactions", "positions"],
116
+ system: ["health", "status", "limits", "sources"],
117
+ config: ["setup", "reset", "env", "account", "completion"],
118
+ mcp: ["install", "start"],
119
+ agent: ["cat", "context"],
120
+ tools: ["address", "abi", "tx", "signature", "multicall", "nonce", "gas", "key", "rpc", "call"],
121
+ };
122
+ }
123
+ const commandsStr = commands.join(" ");
124
+ // Build subcommand case statements
125
+ let subcommandCases = "";
126
+ for (const [cmd, subs] of Object.entries(subcommandMap)) {
127
+ if (subs && subs.length > 0) {
128
+ const subsStr = subs.join(" ");
129
+ subcommandCases += ` "${cmd}")\n opts="${subsStr}"\n COMPREPLY=( $(compgen -W "\${opts}" -- "\${cur}") )\n ;;\n`;
130
+ }
131
+ }
132
+ return `# httpcat bash completion
133
+ _httpcat_completion() {
134
+ local cur prev opts
135
+ COMPREPLY=()
136
+ cur="\${COMP_WORDS[COMP_CWORD]}"
137
+ prev="\${COMP_WORDS[COMP_CWORD-1]}"
138
+
139
+ # Top-level command completion
140
+ if [ "\${COMP_CWORD}" -eq 1 ]; then
141
+ opts="${commandsStr}"
142
+ COMPREPLY=( $(compgen -W "\${opts}" -- "\${cur}") )
143
+ # Subcommand completion
144
+ elif [ "\${COMP_CWORD}" -eq 2 ]; then
145
+ case "\${prev}" in
146
+ ${subcommandCases} esac
147
+ fi
148
+
149
+ return 0
150
+ }
151
+
152
+ complete -F _httpcat_completion httpcat
153
+ `;
154
+ }
155
+ /**
156
+ * Generate zsh completion script
157
+ *
158
+ * @param program - Commander.js program instance (optional)
159
+ * @returns Zsh completion script content
160
+ */
161
+ export function generateZshCompletion(program) {
162
+ // Get commands from program if available
163
+ let commands = [];
164
+ let subcommandMap = {};
165
+ if (program && program.commands) {
166
+ // Get all visible (non-hidden) commands with their descriptions
167
+ commands = program.commands
168
+ .filter((cmd) => !cmd._hidden)
169
+ .map((cmd) => {
170
+ const name = cmd.name();
171
+ const desc = cmd.description() || "";
172
+ return [name, desc];
173
+ })
174
+ .filter(([name]) => name && name !== "help"); // Exclude help command
175
+ // Get subcommands for each command
176
+ for (const cmd of program.commands) {
177
+ if (cmd._hidden)
178
+ continue;
179
+ const cmdName = cmd.name();
180
+ if (!cmdName || cmdName === "help")
181
+ continue;
182
+ if (cmd.commands && cmd.commands.length > 0) {
183
+ const subcommands = cmd.commands
184
+ .filter((subcmd) => !subcmd._hidden)
185
+ .map((subcmd) => {
186
+ const subName = subcmd.name();
187
+ const subDesc = subcmd.description() || "";
188
+ return [subName, subDesc];
189
+ })
190
+ .filter(([name]) => name && name !== "help");
191
+ if (subcommands.length > 0) {
192
+ subcommandMap[cmdName] = subcommands;
193
+ }
194
+ }
195
+ }
196
+ }
197
+ else {
198
+ // Fallback list if program not provided
199
+ commands = [
200
+ ["config", "Configure httpcat (settings, environments, accounts)"],
201
+ ["launchpad", "402.cat Launchpad operations (bonding curve tokens)"],
202
+ ["trade", "Trading operations (swaps)"],
203
+ ["system", "System operations and health checks"],
204
+ ["chat", "Start streaming chat"],
205
+ ["mcp", "MCP (Model Context Protocol) server and installation"],
206
+ ["use", "Switch account or environment"],
207
+ ["portfolio", "Portfolio & history management"],
208
+ ["agent", "AI agent operations"],
209
+ ["tools", "EVM development & interaction tools"],
210
+ ];
211
+ // Fallback subcommands
212
+ subcommandMap = {
213
+ launchpad: [
214
+ ["create", "Create a new launchpad token"],
215
+ ["buy", "Buy tokens from bonding curve"],
216
+ ["sell", "Sell tokens to bonding curve"],
217
+ ["list", "List all launchpad tokens"],
218
+ ["info", "Get token information"],
219
+ ["positions", "Get token positions"],
220
+ ["fees", "Fee management for graduated tokens"],
221
+ ],
222
+ trade: [
223
+ ["swap", "Swap any token to any token"],
224
+ ["gasless-submit", "Submit a signed 0x gasless swap"],
225
+ ["gasless-submit-our", "Submit gasless swap via executor"],
226
+ ["gasless-quote", "Get gasless swap quotes"],
227
+ ["gasless-status", "Check gasless swap status"],
228
+ ],
229
+ portfolio: [
230
+ ["balances", "View token balances"],
231
+ ["summary", "Portfolio summary"],
232
+ ["pnl", "Profit and loss"],
233
+ ["transactions", "Transaction history"],
234
+ ["positions", "Token positions"],
235
+ ],
236
+ system: [
237
+ ["health", "System health check"],
238
+ ["status", "System status"],
239
+ ["limits", "Rate limits"],
240
+ ["sources", "Data sources"],
241
+ ],
242
+ config: [
243
+ ["setup", "Run interactive setup wizard"],
244
+ ["reset", "Reset configuration"],
245
+ ["env", "Manage environments"],
246
+ ["account", "Manage accounts"],
247
+ ["completion", "Generate shell completion script"],
248
+ ],
249
+ mcp: [
250
+ ["install", "Install or update httpcat MCP server for LLM CLI tools"],
251
+ ["start", "Start MCP (Model Context Protocol) server"],
252
+ ],
253
+ agent: [
254
+ ["cat", "Start interactive AI agent mode"],
255
+ ["context", "Agent context"],
256
+ ],
257
+ tools: [
258
+ ["address", "Address utilities"],
259
+ ["abi", "ABI encoding/decoding"],
260
+ ["tx", "Transaction utilities"],
261
+ ["signature", "Function signature utilities"],
262
+ ["multicall", "Multicall utilities"],
263
+ ["nonce", "Nonce utilities"],
264
+ ["gas", "Gas estimation"],
265
+ ["key", "Key management"],
266
+ ["rpc", "JSON-RPC proxy"],
267
+ ["call", "Call x402 endpoint"],
268
+ ],
269
+ };
270
+ }
271
+ // Format commands for zsh completion
272
+ const commandsStr = commands
273
+ .map(([name, desc]) => `'${name}:${desc}'`)
274
+ .join("\n ");
275
+ // Build subcommand functions
276
+ let subcommandFunctions = "";
277
+ for (const [cmd, subs] of Object.entries(subcommandMap)) {
278
+ if (subs && subs.length > 0) {
279
+ const subsStr = subs
280
+ .map(([name, desc]) => `'${name}:${desc}'`)
281
+ .join("\n ");
282
+ subcommandFunctions += `_httpcat_${cmd}() {
283
+ local -a subcommands
284
+ subcommands=(
285
+ ${subsStr}
286
+ )
287
+ _describe 'subcommand' subcommands
288
+ }
289
+
290
+ `;
291
+ }
292
+ }
293
+ // Build case statement for subcommands
294
+ let subcommandCases = "";
295
+ for (const cmd of Object.keys(subcommandMap)) {
296
+ subcommandCases += ` "${cmd}")\n _httpcat_${cmd}\n ;;\n`;
297
+ }
298
+ return `#compdef httpcat
299
+
300
+ _httpcat() {
301
+ local -a commands
302
+ local curcontext="\${curcontext}" state line
303
+ local -A opt_args
304
+
305
+ commands=(
306
+ ${commandsStr}
307
+ )
308
+
309
+ _describe 'command' commands
310
+
311
+ case $words[2] in
312
+ ${subcommandCases} esac
313
+ }
314
+
315
+ ${subcommandFunctions}_httpcat "$@"
316
+ `;
317
+ }
318
+ /**
319
+ * Install bash completion script
320
+ *
321
+ * @param completionScript - The completion script content
322
+ * @returns true if installation succeeded, false otherwise
323
+ */
324
+ export function installBashCompletion(completionScript) {
325
+ try {
326
+ const homeDir = os.homedir();
327
+ const bashCompletionDir = path.join(homeDir, ".bash_completion.d");
328
+ const completionFile = path.join(bashCompletionDir, "httpcat");
329
+ const bashrcPath = path.join(homeDir, ".bashrc");
330
+ // Create completion directory if it doesn't exist
331
+ if (!fs.existsSync(bashCompletionDir)) {
332
+ fs.mkdirSync(bashCompletionDir, { recursive: true });
333
+ }
334
+ // Write completion script
335
+ fs.writeFileSync(completionFile, completionScript, { mode: 0o644 });
336
+ // Ensure .bashrc sources the completion directory
337
+ if (fs.existsSync(bashrcPath)) {
338
+ const bashrcContent = fs.readFileSync(bashrcPath, "utf-8");
339
+ const sourceLine = `[ -d ~/.bash_completion.d ] && for f in ~/.bash_completion.d/*; do source "$f"; done`;
340
+ // Check if sourcing line already exists (with variations)
341
+ const hasSourceLine = bashrcContent.includes(".bash_completion.d") ||
342
+ bashrcContent.includes("bash_completion.d");
343
+ if (!hasSourceLine) {
344
+ fs.appendFileSync(bashrcPath, `\n# httpcat completion\n${sourceLine}\n`);
345
+ }
346
+ }
347
+ else {
348
+ // Create .bashrc if it doesn't exist
349
+ const sourceLine = `[ -d ~/.bash_completion.d ] && for f in ~/.bash_completion.d/*; do source "$f"; done`;
350
+ fs.writeFileSync(bashrcPath, `# httpcat completion\n${sourceLine}\n`);
351
+ }
352
+ return true;
353
+ }
354
+ catch (error) {
355
+ console.error(chalk.red(`Failed to install bash completion: ${error}`));
356
+ return false;
357
+ }
358
+ }
359
+ /**
360
+ * Install zsh completion script
361
+ *
362
+ * @param completionScript - The completion script content
363
+ * @returns true if installation succeeded, false otherwise
364
+ */
365
+ export function installZshCompletion(completionScript) {
366
+ try {
367
+ const homeDir = os.homedir();
368
+ const zshCompletionsDir = path.join(homeDir, ".zsh", "completions");
369
+ const completionFile = path.join(zshCompletionsDir, "_httpcat");
370
+ const zshrcPath = path.join(homeDir, ".zshrc");
371
+ // Create completions directory if it doesn't exist
372
+ if (!fs.existsSync(zshCompletionsDir)) {
373
+ fs.mkdirSync(zshCompletionsDir, { recursive: true });
374
+ }
375
+ // Write completion script
376
+ fs.writeFileSync(completionFile, completionScript, { mode: 0o644 });
377
+ // Ensure .zshrc adds completions to fpath
378
+ const fpathLine = `fpath=(~/.zsh/completions $fpath)`;
379
+ const autoloadLine = `autoload -Uz compinit && compinit`;
380
+ if (fs.existsSync(zshrcPath)) {
381
+ const zshrcContent = fs.readFileSync(zshrcPath, "utf-8");
382
+ let updated = false;
383
+ let newContent = zshrcContent;
384
+ // Add fpath if not present
385
+ if (!zshrcContent.includes("~/.zsh/completions") && !zshrcContent.includes("$HOME/.zsh/completions")) {
386
+ newContent += `\n# httpcat completion\n${fpathLine}\n`;
387
+ updated = true;
388
+ }
389
+ // Add compinit if not present
390
+ if (!zshrcContent.includes("compinit")) {
391
+ newContent += `${updated ? "" : "\n# httpcat completion\n"}${autoloadLine}\n`;
392
+ updated = true;
393
+ }
394
+ if (updated) {
395
+ fs.writeFileSync(zshrcPath, newContent);
396
+ }
397
+ }
398
+ else {
399
+ // Create .zshrc if it doesn't exist
400
+ fs.writeFileSync(zshrcPath, `# httpcat completion\n${fpathLine}\n${autoloadLine}\n`);
401
+ }
402
+ return true;
403
+ }
404
+ catch (error) {
405
+ console.error(chalk.red(`Failed to install zsh completion: ${error}`));
406
+ return false;
407
+ }
408
+ }
409
+ /**
410
+ * Create "hc" alias as a symlink
411
+ *
412
+ * @returns true if symlink creation succeeded or already exists correctly, false otherwise
413
+ */
414
+ export function createHcSymlink() {
415
+ try {
416
+ const httpcatPath = findHttpcatBinary();
417
+ if (!httpcatPath) {
418
+ return false;
419
+ }
420
+ const binDir = path.dirname(httpcatPath);
421
+ const hcPath = path.join(binDir, "hc");
422
+ // Check if hc already exists
423
+ if (fs.existsSync(hcPath)) {
424
+ // Check if it's already a symlink to httpcat
425
+ try {
426
+ const target = fs.readlinkSync(hcPath);
427
+ const resolvedTarget = path.resolve(binDir, target);
428
+ if (target === "httpcat" || resolvedTarget === httpcatPath) {
429
+ return true; // Already correctly linked
430
+ }
431
+ // Existing symlink points to wrong target - remove it
432
+ fs.unlinkSync(hcPath);
433
+ }
434
+ catch {
435
+ // Not a symlink or can't read it - try to remove it
436
+ try {
437
+ fs.unlinkSync(hcPath);
438
+ }
439
+ catch {
440
+ // Can't remove existing file - might be a directory or permission issue
441
+ // Fall back to shell alias instead
442
+ return false;
443
+ }
444
+ }
445
+ }
446
+ // Create symlink
447
+ fs.symlinkSync("httpcat", hcPath);
448
+ return true;
449
+ }
450
+ catch (error) {
451
+ // Silently fail - will fall back to shell alias
452
+ // Don't log error here since fallback will handle it
453
+ return false;
454
+ }
455
+ }
456
+ /**
457
+ * Create "hc" alias in shell rc file
458
+ *
459
+ * @param shellType - The shell type (bash or zsh)
460
+ * @returns true if alias creation succeeded, false otherwise
461
+ */
462
+ export function createHcAlias(shellType) {
463
+ if (shellType === "unknown") {
464
+ return false;
465
+ }
466
+ try {
467
+ const homeDir = os.homedir();
468
+ const rcFile = shellType === "zsh"
469
+ ? path.join(homeDir, ".zshrc")
470
+ : path.join(homeDir, ".bashrc");
471
+ const aliasLine = `alias hc='httpcat'`;
472
+ // Check if alias already exists
473
+ if (fs.existsSync(rcFile)) {
474
+ const content = fs.readFileSync(rcFile, "utf-8");
475
+ if (content.includes("alias hc=")) {
476
+ return true; // Already exists
477
+ }
478
+ }
479
+ // Append alias to rc file
480
+ const newContent = fs.existsSync(rcFile)
481
+ ? fs.readFileSync(rcFile, "utf-8") + `\n# httpcat alias\n${aliasLine}\n`
482
+ : `# httpcat alias\n${aliasLine}\n`;
483
+ fs.writeFileSync(rcFile, newContent);
484
+ return true;
485
+ }
486
+ catch (error) {
487
+ console.error(chalk.red(`Failed to create hc alias: ${error}`));
488
+ return false;
489
+ }
490
+ }
491
+ /**
492
+ * Install shell completion for the detected shell
493
+ *
494
+ * @param program - Commander.js program instance (optional)
495
+ * @returns true if installation succeeded, false otherwise
496
+ */
497
+ export function installShellCompletion(program) {
498
+ const shell = detectShell();
499
+ if (shell === "unknown") {
500
+ console.log(chalk.yellow("⚠️ Could not detect shell type. Skipping completion installation."));
501
+ return false;
502
+ }
503
+ let completionScript;
504
+ if (shell === "zsh") {
505
+ completionScript = generateZshCompletion(program);
506
+ return installZshCompletion(completionScript);
507
+ }
508
+ else {
509
+ completionScript = generateBashCompletion(program);
510
+ return installBashCompletion(completionScript);
511
+ }
512
+ }
513
+ /**
514
+ * Create "hc" alias (tries symlink first, falls back to shell alias)
515
+ *
516
+ * @returns Object with success status and method used
517
+ */
518
+ export function installHcAlias() {
519
+ // Try symlink first
520
+ if (createHcSymlink()) {
521
+ return { success: true, method: "symlink" };
522
+ }
523
+ // Fallback to shell alias
524
+ const shell = detectShell();
525
+ const aliasSuccess = createHcAlias(shell);
526
+ return {
527
+ success: aliasSuccess,
528
+ method: aliasSuccess ? "alias" : "none",
529
+ };
530
+ }
531
+ //# sourceMappingURL=shell-setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell-setup.js","sourceRoot":"","sources":["../../src/utils/shell-setup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/utils/status.ts"],"names":[],"mappings":"AA4BA;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAUrD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAMtC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,cAAc,EAAE,MAAM,GACrB,MAAM,CASR"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/utils/status.ts"],"names":[],"mappings":"AA6BA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAoBrD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIxD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAgBtC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAG1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,cAAc,EAAE,MAAM,GACrB,MAAM,CASR"}
@@ -15,6 +15,7 @@ const CAT_RETRY_MESSAGES = [
15
15
  "🐱 Cat is trying again (because why not)...",
16
16
  ];
17
17
  let lastStatusLine = "";
18
+ let statusLineCount = 0;
18
19
  /**
19
20
  * Strip ANSI escape codes from a string to get the actual visual length
20
21
  */
@@ -25,25 +26,53 @@ function stripAnsiCodes(str) {
25
26
  /**
26
27
  * Write status message on the same line (overwrites previous)
27
28
  * Useful for retry messages that shouldn't spam the console
29
+ * Resets the status line count to 1 (start of a new status sequence)
28
30
  */
29
31
  export function writeStatusLine(message) {
30
- // Clear the previous line if it exists using ANSI escape sequence
31
- if (lastStatusLine) {
32
+ // If we have multiple status lines, we need to clear them all first
33
+ if (statusLineCount > 1) {
34
+ // Move up to the first line and clear all
35
+ for (let i = 1; i < statusLineCount; i++) {
36
+ process.stdout.write("\x1b[1A\r\x1b[K");
37
+ }
38
+ statusLineCount = 0;
39
+ }
40
+ // Clear the current line if it exists
41
+ if (lastStatusLine || statusLineCount > 0) {
32
42
  // Use \r to go to beginning of line and \x1b[K to clear to end of line
33
43
  process.stdout.write("\r\x1b[K");
34
44
  }
35
45
  // Write new message (no newline)
36
46
  process.stdout.write(message);
37
47
  lastStatusLine = message;
48
+ statusLineCount = 1;
38
49
  }
39
50
  /**
40
- * Clear the status line
51
+ * Write status message on a new line (adds to status lines)
52
+ * Useful for multi-line status messages that need to be cleared together
53
+ */
54
+ export function writeStatusLineNew(message) {
55
+ // Move to a new line and write the message
56
+ process.stdout.write("\n" + message);
57
+ statusLineCount++;
58
+ }
59
+ /**
60
+ * Clear all status lines
41
61
  */
42
62
  export function clearStatusLine() {
43
- if (lastStatusLine) {
44
- // Use \r to go to beginning of line and \x1b[K to clear to end of line
63
+ if (statusLineCount > 0) {
64
+ // First, clear the current line (where the cursor is)
45
65
  process.stdout.write("\r\x1b[K");
66
+ // Then move up and clear the remaining status lines
67
+ // We need to move up (statusLineCount - 1) times since we already cleared the current line
68
+ for (let i = 1; i < statusLineCount; i++) {
69
+ // Move cursor up one line: \x1b[1A
70
+ // Move to beginning of line: \r
71
+ // Clear to end of line: \x1b[K
72
+ process.stdout.write("\x1b[1A\r\x1b[K");
73
+ }
46
74
  lastStatusLine = "";
75
+ statusLineCount = 0;
47
76
  }
48
77
  }
49
78
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/utils/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;GAEG;AACH,MAAM,kBAAkB,GAAG;IACzB,4CAA4C;IAC5C,oCAAoC;IACpC,iEAAiE;IACjE,0CAA0C;IAC1C,8CAA8C;IAC9C,oDAAoD;IACpD,0CAA0C;IAC1C,2CAA2C;IAC3C,yDAAyD;IACzD,6CAA6C;CAC9C,CAAC;AAEF,IAAI,cAAc,GAAW,EAAE,CAAC;AAEhC;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,4CAA4C;IAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,kEAAkE;IAClE,IAAI,cAAc,EAAE,CAAC;QACnB,uEAAuE;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,iCAAiC;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,cAAc,GAAG,OAAO,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,cAAc,EAAE,CAAC;QACnB,uEAAuE;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACjC,cAAc,GAAG,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACxD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAe,EACf,UAAyB,EACzB,cAAsB;IAEtB,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,WAAW,GACf,UAAU,KAAK,IAAI;QACjB,CAAC,CAAC,aAAa,OAAO,IAAI,UAAU,GAAG;QACvC,CAAC,CAAC,aAAa,OAAO,GAAG,CAAC;IAC9B,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,cAAc,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAEvF,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC;AAC9D,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/utils/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B;;GAEG;AACH,MAAM,kBAAkB,GAAG;IACzB,4CAA4C;IAC5C,oCAAoC;IACpC,iEAAiE;IACjE,0CAA0C;IAC1C,8CAA8C;IAC9C,oDAAoD;IACpD,0CAA0C;IAC1C,2CAA2C;IAC3C,yDAAyD;IACzD,6CAA6C;CAC9C,CAAC;AAEF,IAAI,cAAc,GAAW,EAAE,CAAC;AAChC,IAAI,eAAe,GAAW,CAAC,CAAC;AAEhC;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,4CAA4C;IAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,oEAAoE;IACpE,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACxB,0CAA0C;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QACD,eAAe,GAAG,CAAC,CAAC;IACtB,CAAC;IAED,sCAAsC;IACtC,IAAI,cAAc,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QAC1C,uEAAuE;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,iCAAiC;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,cAAc,GAAG,OAAO,CAAC;IACzB,eAAe,GAAG,CAAC,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,2CAA2C;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;IACrC,eAAe,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACxB,sDAAsD;QACtD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAEjC,oDAAoD;QACpD,2FAA2F;QAC3F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,mCAAmC;YACnC,gCAAgC;YAChC,+BAA+B;YAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QACD,cAAc,GAAG,EAAE,CAAC;QACpB,eAAe,GAAG,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACxD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAe,EACf,UAAyB,EACzB,cAAsB;IAEtB,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,WAAW,GACf,UAAU,KAAK,IAAI;QACjB,CAAC,CAAC,aAAa,OAAO,IAAI,UAAU,GAAG;QACvC,CAAC,CAAC,aAAa,OAAO,GAAG,CAAC;IAC9B,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,cAAc,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAEvF,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC;AAC9D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"token-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/token-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAK7C;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EACrB,MAAM,UAAQ,GACb,OAAO,CAAC,MAAM,CAAC,CAkKjB"}
1
+ {"version":3,"file":"token-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/token-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA0B7C;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,aAAa,EACrB,MAAM,UAAQ,GACb,OAAO,CAAC,MAAM,CAAC,CA+LjB"}