httpcat-cli 0.3.0 → 0.3.1-rc.10

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 +39 -2
  5. package/README.md +180 -1688
  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 +342 -36
  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 +4532 -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 +135 -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 +44 -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
package/README.md CHANGED
@@ -1,1790 +1,281 @@
1
1
  # httpcat-cli
2
2
 
3
- > 🐱 Command-line interface for interacting with the httpcat agent - create, buy, and sell tokens with x402 payments
3
+ ![Banner](https://i.imgur.com/uTH4ly9.png)
4
4
 
5
- httpcat is a full-featured CLI tool that provides both interactive (with ASCII art cats!) and headless modes for token operations on the httpcat agent. It supports creating tokens, buying, selling, and managing your portfolio with seamless x402 payment integration.
5
+ > **The CLI that enables agents to use x402 protocol. No middleware. No wallets. Just HTTP-native micropayments.**
6
6
 
7
- ## Features
7
+ **Give your agent claws.**
8
8
 
9
- - 🎨 **Interactive Shell** - Beautiful REPL with ASCII art cats and colored output
10
- - 🐱 **Headless Mode** - JSON output for scripting and LLM/agent integration
11
- - 🔌 **MCP Server** - Built-in Model Context Protocol server for AI assistant integration
12
- - 💳 **x402 Payments** - Automatic payment handling via x402 protocol
13
- - 🔐 **Secure Config** - Local configuration storage in `~/.config/httpcat`
14
- - 🌐 **Multi-Network** - Support for Base Sepolia (testnet) and Base (mainnet)
15
- - 📊 **Rich Output** - Tables, progress bars, and detailed token information
16
- - ⚡ **Fast & Simple** - Built with TypeScript and optimized for performance
9
+ ---
17
10
 
18
- ## Installation
19
-
20
- ### npm (recommended)
21
-
22
- ```bash
23
- npm install -g httpcat-cli
24
- ```
25
-
26
- Or use with npx without installing:
27
-
28
- ```bash
29
- npx httpcat-cli
30
- ```
31
-
32
- ### Homebrew (macOS/Linux)
33
-
34
- ```bash
35
- brew tap hathbanger/httpcat
36
- brew install httpcat
37
- ```
38
-
39
- ### From Source
40
-
41
- ```bash
42
- cd httpcat-cli
43
- yarn install
44
- yarn build
45
- yarn link
46
- ```
47
-
48
- ## Upgrading
49
-
50
- ### npm (Global Install)
51
-
52
- If you installed httpcat globally via npm:
53
-
54
- ```bash
55
- npm update -g httpcat-cli
56
- ```
57
-
58
- ### Yarn (Global Install)
59
-
60
- If you installed httpcat globally via yarn:
61
-
62
- ```bash
63
- yarn global upgrade httpcat-cli
64
- ```
65
-
66
- ### Homebrew
67
-
68
- If you installed via Homebrew:
69
-
70
- ```bash
71
- brew upgrade httpcat
72
- ```
73
-
74
- ### npx (No Upgrade Needed)
75
-
76
- If you're using `npx httpcat-cli`, it automatically uses the latest version - no upgrade needed!
77
-
78
- ```bash
79
- npx httpcat-cli@latest
80
- ```
81
-
82
- ### From Source (Development)
83
-
84
- If you're developing locally with `yarn link`:
85
-
86
- ```bash
87
- cd httpcat-cli
88
- git pull
89
- yarn install
90
- yarn build
91
- ```
92
-
93
- ## Quick Start
94
-
95
- ### First-Time Setup
96
-
97
- Run `httpcat` to start the configuration wizard:
98
-
99
- ```bash
100
- httpcat
101
- ```
102
-
103
- You'll be prompted to enter:
104
-
105
- - **Private Key** - Your wallet's private key (starts with 0x)
106
- - **Network** - `eip155:84532` (Base Sepolia testnet) or `eip155:8453` (Base mainnet)
107
- - **Agent URL** - The httpcat agent endpoint
108
- - **ASCII Art** - Enable or disable cat art
109
-
110
- ### Interactive Mode
111
-
112
- Once configured, running `httpcat` without arguments starts an interactive shell:
113
-
114
- ```bash
115
- $ httpcat
116
-
117
- /\_/\
118
- ( ^.^ ) Welcome to httpcat!
119
- > ^ < Your agent for token operations
120
-
121
- 🔗 Connected to: eip155:84532 (Base Sepolia)
122
- 🌐 Agent: https://agent.402.cat
123
-
124
- httpcat> help
125
- Available Commands:
126
-
127
- create <name> <symbol> Create a new token
128
- buy <id|name|symbol> <amount> Buy tokens ($0.05, $0.10, $0.20, or percentage like 50%)
129
- sell <id|name|symbol> <amount|all> Sell tokens
130
- info <id|name|symbol> Get token information
131
- list [--sort mcap|created] List all tokens
132
- positions [--active|--graduated] Get all your positions with comprehensive info
133
- transactions [--user|--token|--type] Get transaction history
134
- claim <id|name|symbol> [--execute] View/claim LP fees for graduated tokens
135
- chat [token] Start streaming chat (optional: token symbol/name/address)
136
- balances Check wallet balances (ETH, USDC, and CAT)
137
- account [list|switch|add] Manage accounts
138
- agent <query> | cat <query> Ask the cat to do something (agent and cat are synonyms)
139
- agent --chat | cat --chat Enter interactive chat mode
140
- agent --setup | cat --setup Configure API key/provider
141
- health Check agent health
142
- config [--show|--set|--reset] Manage configuration
143
- network Show current network
144
- env [list|use|show|add|update] Manage environments
145
- help Show this help message
146
- exit Exit the shell
147
-
148
- httpcat> create "Meow Token" "MEOW"
149
-
150
- /\_/\ Creating your token...
151
- ( o.o )💭
152
-
153
- 💳 Payment required: $0.01 USDC
154
-
155
- ✅ Token created successfully!
156
-
157
- ┌─────────────────────────────────────────┐
158
- │ 🎉 Meow Token (MEOW) │
159
- ├─────────────────────────────────────────┤
160
- │ Address: 0x789abcd... │
161
- │ Supply: 1,000,000,000 MEOW │
162
- │ Status: Active │
163
- └─────────────────────────────────────────┘
164
-
165
- httpcat> buy 0x789abcd... 0.20
166
-
167
- 💰 Tokens purchased successfully!
168
-
169
- ┌─────────────────────────────────────────┐
170
- │ 💰 Purchase Summary │
171
- ├─────────────────────────────────────────┤
172
- │ Tokens Received: 50,000 │
173
- │ Amount Spent: $5.00 │
174
- │ Fee (1%): $0.05 │
175
- │ New Price: $0.0002 │
176
- │ New Market Cap: $200,000 │
177
- │ Graduation: 0.15% │
178
- └─────────────────────────────────────────┘
179
-
180
- [🐱==> ] 0.15% to moon!
181
- ```
182
-
183
- ## Global Options
184
-
185
- These options can be used with any command:
186
-
187
- - `-j, --json` - Output in JSON format for scripting and automation
188
- - `-q, --quiet` - Minimal output (exit codes only)
189
- - `-v, --verbose` - Show verbose error messages and debugging information
190
- - `--no-art` - Disable ASCII art cats
191
- - `-k, --private-key <key>` - Use specific private key (overrides config and env var)
192
- - `-a, --account <index>` - Use specific account index (overrides active account)
193
-
194
- **Examples:**
195
-
196
- ```bash
197
- # Use account 2 for getting positions
198
- httpcat -a 2 positions
199
-
200
- # Use account 1 to buy tokens
201
- httpcat -a 1 buy MTK 0.10
202
-
203
- # JSON output for account 0
204
- httpcat --json -a 0 balances
205
-
206
- # Use specific private key
207
- httpcat -k 0x1234... create "Test" "TEST"
208
-
209
- # Quiet mode with exit code checking
210
- httpcat -q buy MTK 0.20 && echo "Success!" || echo "Failed"
211
- ```
212
-
213
- **Note:** The `-a, --account` flag allows you to use different accounts without switching your active account in the config.
214
-
215
- ## Commands
216
-
217
- ### Create Token
218
-
219
- Create a new token on the bonding curve.
220
-
221
- **Interactive:**
222
-
223
- ```bash
224
- httpcat> create "My Token" "MTK"
225
- httpcat> create "My Token" "MTK" --photo https://example.com/photo.png
226
- httpcat> create "My Token" "MTK" --photo ./logo.png
227
- ```
228
-
229
- **CLI:**
230
-
231
- ```bash
232
- httpcat create "My Token" "MTK"
233
- httpcat create "My Token" "MTK" --photo https://example.com/photo.png --website https://mytoken.io
234
- httpcat create "My Token" "MTK" --photo ./logo.png
235
- ```
236
-
237
- **Options:**
238
-
239
- - `-p, --photo <url|path>` - Token photo URL or file path (supports http/https URLs, local file paths, or base64 data URLs)
240
- - `-w, --website <url>` - Website URL
241
-
242
- **Cost:** $0.01 USDC
243
-
244
- ### Buy Tokens
245
-
246
- Purchase tokens from the bonding curve.
247
-
248
- **Interactive:**
249
-
250
- ```bash
251
- httpcat> buy 0x1234... 0.20
252
- httpcat> buy "My Token" 0.10
253
- httpcat> buy MTK 0.05
254
- ```
255
-
256
- **CLI:**
257
-
258
- ```bash
259
- httpcat buy 0x1234567890abcdef1234567890abcdef12345678 0.20
260
- httpcat buy "My Token" 0.10
261
- httpcat buy MTK 0.05
262
- ```
263
-
264
- **Options:**
265
-
266
- - `-r, --repeat <count>` - Execute multiple buys in sequence (stops early if token graduates or insufficient funds)
267
- - `-d, --delay <ms>` - Delay in milliseconds between repeat operations (default: 0)
268
-
269
- **Examples with repeat:**
270
-
271
- ```bash
272
- # Execute 10 buys back-to-back
273
- httpcat buy MTK 0.10 -r 10
274
-
275
- # Execute 10 buys with 500ms delay between each
276
- httpcat buy MTK 0.10 -r 10 -d 500
277
- ```
278
-
279
- **Token Identifier:**
280
-
281
- - Token address: `0x1234...` (contract address)
282
- - Token name: `"My Token"` (use quotes if it contains spaces)
283
- - Token symbol: `MTK` (case-insensitive)
284
-
285
- **Amounts:**
286
-
287
- - Test mode (Base Sepolia / eip155:84532): `0.05`, `0.10`, or `0.20` USDC
288
- - Production (base): `50`, `100`, or `200` USDC
289
- - Percentage: `10%`, `50%`, `100%` (percentage of your USDC balance)
290
- - Example: `httpcat buy MTK 50%` - Buy with 50% of your USDC balance
291
- - Works with any percentage from 0.01% to 100%
292
-
293
- **Cost:** Amount + 1% fee (e.g., $5.05 for $5 purchase)
294
-
295
- **Repeat Mode Behavior:**
296
-
297
- When using `-r, --repeat`, the command will:
298
-
299
- - Execute the specified number of buys sequentially
300
- - Stop early if the token graduates (reaches 100% graduation progress)
301
- - Stop early if you run out of funds (HTTP 402 error)
302
- - Display a compact summary for each buy
303
- - Show a final summary with total buys completed, total spent, and final status
304
-
305
- ### Sell Tokens
306
-
307
- Sell tokens back to the bonding curve.
308
-
309
- **Interactive:**
310
-
311
- ```bash
312
- httpcat> sell 0x1234... 1000 # Sell 1000 tokens
313
- httpcat> sell "My Token" 50% # Sell 50% of holdings
314
- httpcat> sell MTK all # Sell all tokens
315
- ```
316
-
317
- **CLI:**
318
-
319
- ```bash
320
- httpcat sell 0x1234567890abcdef1234567890abcdef12345678 1000
321
- httpcat sell "My Token" 50%
322
- httpcat sell MTK all
323
- ```
324
-
325
- **Token Identifier:**
326
-
327
- - Address, name, or symbol (same as buy command)
328
-
329
- **Cost:** Dynamic based on amount (1% fee deducted from proceeds)
330
-
331
- ### Token Info
332
-
333
- Get detailed information about a token.
334
-
335
- **Interactive:**
336
-
337
- ```bash
338
- httpcat> info 0x1234...
339
- httpcat> info "My Token"
340
- httpcat> info MTK
341
- ```
342
-
343
- **CLI:**
344
-
345
- ```bash
346
- httpcat info 0x1234567890abcdef1234567890abcdef12345678
347
- httpcat info "My Token"
348
- httpcat info MTK
349
- ```
350
-
351
- **Token Identifier:**
352
-
353
- - Address, name, or symbol (same as buy command)
354
-
355
- **Output:**
356
-
357
- - Token name, symbol, address
358
- - Current price and market cap
359
- - Graduation progress
360
- - Your position (if you hold any)
361
- - P&L calculation
362
-
363
- **Cost:** $0.0001 USDC
364
-
365
- ### List Tokens
366
-
367
- List all tokens with pagination and sorting.
368
-
369
- **Interactive:**
370
-
371
- ```bash
372
- httpcat> list
373
- httpcat> list --sort mcap --limit 10
374
- httpcat> list --page 2
375
- ```
376
-
377
- **CLI:**
378
-
379
- ```bash
380
- httpcat list
381
- httpcat list --sort created --limit 50
382
- httpcat list --page 3 --sort name
383
- ```
384
-
385
- **Options:**
386
-
387
- - `-s, --sort <field>` - Sort by `mcap`, `created`, or `name` (default: `mcap`)
388
- - `-l, --limit <n>` - Items per page (default: 20, max: 100)
389
- - `-p, --page <n>` - Page number (default: 1)
390
-
391
- **Cost:** $0.0001 USDC
392
-
393
- ### Positions
394
-
395
- Get all your positions with comprehensive information including current value, profit/loss, ROI, transaction history, and portfolio summary.
396
-
397
- **Interactive:**
398
-
399
- ```bash
400
- httpcat> positions
401
- ```
402
-
403
- **CLI:**
404
-
405
- ```bash
406
- httpcat positions
407
- httpcat positions --active # Only active positions
408
- httpcat positions --graduated # Only graduated positions
409
- httpcat -j positions
410
- httpcat -k 0x... positions
411
- ```
412
-
413
- **Options:**
414
-
415
- - `-a, --active` - Show only active (non-graduated) positions
416
- - `-g, --graduated` - Show only graduated positions (historical)
417
-
418
- **Output:**
419
-
420
- For each position:
421
-
422
- - Token information (name, symbol, address, status, price, market cap, graduation progress)
423
- - Position details (tokens owned, USDC invested, current value, average cost per token)
424
- - Performance metrics (profit/loss in USDC and percentage ROI)
425
- - Position age (days, hours, minutes, seconds since first purchase)
426
- - Transaction history (total transaction count, last transaction date)
427
- - Timestamps (position created and updated dates)
428
-
429
- Portfolio summary:
430
-
431
- - Total positions count
432
- - Total portfolio value
433
- - Total amount invested
434
- - Total profit/loss and overall ROI percentage
435
-
436
- **Cost:** $0.01 USDC
437
-
438
- ### Claim LP Fees
439
-
440
- View and claim accumulated liquidity provider fees for graduated tokens.
441
-
442
- **Interactive:**
443
-
444
- ```bash
445
- httpcat> claim "My Token" # View accumulated fees
446
- httpcat> claim MTK # View by symbol
447
- httpcat> claim MTK --execute # Claim fees
448
- ```
449
-
450
- **CLI:**
451
-
452
- ```bash
453
- httpcat claim "My Token"
454
- httpcat claim MTK
455
- httpcat claim MTK --execute
456
- httpcat claim 0x1234... --execute
457
- httpcat --json claim "My Token"
458
- ```
459
-
460
- **Options:**
461
-
462
- - `-e, --execute` - Execute the claim transaction (default is view-only)
463
- - `-A, --address <address>` - Caller address (defaults to wallet address)
464
-
465
- **Token Identifier:**
466
-
467
- - Address, name, or symbol (same as buy/sell commands)
468
-
469
- **Output:**
470
-
471
- When viewing (without `--execute`):
472
- - Total accumulated fees (tokens and USDC)
473
- - Creator share (80%)
474
- - Platform share (20%)
475
- - LP lock status and details
476
- - V4 position details (if applicable)
477
-
478
- When claiming (with `--execute`):
479
- - Transaction hash
480
- - Fees claimed (tokens and USDC)
481
- - Creator and platform shares distribution
482
-
483
- **Cost:** Free to view, gas fees apply for claiming
484
-
485
- ### Transactions
486
-
487
- Get paginated transaction history with filtering options.
488
-
489
- **Interactive:**
490
-
491
- ```bash
492
- httpcat> transactions
493
- httpcat> transactions --type buy
494
- httpcat> transactions --token abc123-...
495
- ```
496
-
497
- **CLI:**
498
-
499
- ```bash
500
- httpcat transactions
501
- httpcat transactions --user 0x1234...
502
- httpcat transactions --token abc123-... --type buy
503
- httpcat transactions --type sell --limit 20
504
- httpcat --json transactions --offset 50
505
- ```
506
-
507
- **Options:**
508
-
509
- - `-u, --user <address>` - Filter by user address (defaults to active account)
510
- - `-t, --token <tokenId>` - Filter by token ID
511
- - `-T, --type <type>` - Filter by type: `buy`, `sell`, or `airdrop`
512
- - `-l, --limit <number>` - Number of results (default: 50, max: 100)
513
- - `-o, --offset <number>` - Pagination offset (default: 0)
514
-
515
- **Output:**
516
-
517
- For each transaction:
518
- - Transaction type (buy, sell, or airdrop)
519
- - Status (pending, success, or failed)
520
- - Token information (name, symbol, ID)
521
- - User address
522
- - Amount and fee
523
- - Transaction hash
524
- - Date/time
525
-
526
- **Cost:** Varies based on API call
527
-
528
- **Note:** Defaults to showing transactions for your active account. Use `--user` to view transactions for a different address.
529
-
530
- ### Check Balances
531
-
532
- Check your wallet's ETH and USDC balances.
533
-
534
- **Interactive:**
535
-
536
- ```bash
537
- httpcat> balances
538
- ```
539
-
540
- **CLI:**
541
-
542
- ```bash
543
- httpcat balances
544
- httpcat balances -k 0x...
545
- ```
546
-
547
- **Output:**
548
-
549
- - Wallet address
550
- - ETH balance (for gas fees)
551
- - USDC balance (for trading)
552
- - CAT balance (402CAT token)
553
- - Low balance warnings if applicable
554
-
555
- **Cost:** Free (no payment required)
556
-
557
- **Note:** If no private key is configured, you'll be prompted to enter it interactively (same as other commands).
558
-
559
- ### Account Management
560
-
561
- Manage multiple accounts, view account information, and switch between accounts.
562
-
563
- **Interactive:**
564
-
565
- ```bash
566
- httpcat> account # Show active account info
567
- httpcat> account list # List all accounts
568
- httpcat> account switch 1 # Switch to account 1
569
- httpcat> account add # Add new account
570
- ```
571
-
572
- **CLI:**
573
-
574
- ```bash
575
- httpcat account # Show active account
576
- httpcat account list # List all accounts
577
- httpcat account switch 1 # Switch to account 1
578
- httpcat account add # Add new account
579
- httpcat --account 2 positions # Use account 2 for positions
580
- httpcat -a 1 buy MTK 0.10 # Use account 1 for buy
581
- httpcat --json account
582
- ```
583
-
584
- **Subcommands:**
585
-
586
- - `account` (no args) - Display active account information (address, balances, positions)
587
- - `account list` - List all configured accounts with their details
588
- - `account switch <index>` - Switch to a different account by index
589
- - `account add` - Add a new seed-derived account (HD wallet)
590
-
591
- **Account Types:**
592
-
593
- 1. **Seed-Derived** (Account 1+) - Accounts generated from your seed phrase using BIP-32/BIP-39
594
- 2. **Custom** (Account 0) - Account added via private key import
595
-
596
- **Output:**
597
-
598
- Account information includes:
599
- - Account index and type (Seed-Derived or Custom)
600
- - Wallet address (checksummed)
601
- - ETH balance (for gas fees)
602
- - USDC balance (for trading)
603
- - CAT balance (402CAT token)
604
- - All positions (if any) with P&L
605
-
606
- **Cost:** Free
607
-
608
- **Security Note:** All accounts share the same password protection when password is enabled. Switch accounts anytime using the `--account` flag or `account switch` command.
609
-
610
- ### Health Check
611
-
612
- Check if the agent is running.
613
-
614
- **Interactive:**
615
-
616
- ```bash
617
- httpcat> health
618
- ```
619
-
620
- **CLI:**
621
-
622
- ```bash
623
- httpcat health
624
- ```
625
-
626
- **Cost:** $0.0001 USDC (or 402 response)
627
-
628
- ### Chat
629
-
630
- Start streaming chat with the httpcat community. Join general chat or token-specific discussions.
631
-
632
- **Interactive:**
633
-
634
- ```bash
635
- httpcat> chat # Join general chat
636
- httpcat> chat MTK # Join chat for token with symbol "MTK"
637
- httpcat> chat "My Token" # Join chat for token with name "My Token"
638
- httpcat> chat 0x1234... # Join chat for token at address
639
- ```
640
-
641
- **CLI:**
642
-
643
- ```bash
644
- httpcat chat
645
- httpcat chat MTK
646
- httpcat chat "My Token"
647
- httpcat chat 0x1234...
648
- httpcat -j chat MTK
649
- httpcat -j -f stream-json chat MTK # Structured JSON input
650
- ```
651
-
652
- **Token Identifier:**
653
-
654
- - Token symbol: `MTK` (case-insensitive)
655
- - Token name: `"My Token"` (use quotes if it contains spaces)
656
- - Token address: `0x1234...`
657
-
658
- **In-Chat Commands:**
659
-
660
- While in a chat session, you can use these commands:
661
-
662
- - `/exit` or `/quit` - Exit the chat
663
- - `/renew` - Renew your 10-minute lease
664
- - `/buy <amount>` - Buy tokens (token-specific chats only)
665
- - `/sell <amount>` - Sell tokens (token-specific chats only)
666
- - `/help` - Show available commands
667
-
668
- **Examples:**
669
-
670
- ```
671
- /renew
672
- /buy 0.10
673
- /sell 50%
674
- /sell all
675
- ```
676
-
677
- **Note:** The `/buy` and `/sell` commands are only available in token-specific chats, not in general chat.
678
-
679
- **Options:**
680
-
681
- - `-f, --input-format <format>` - Input format (only works with `--json`): `"text"` (default) or `"stream-json"` (realtime streaming input)
682
- - `"text"`: Line-delimited text input (default)
683
- - `"stream-json"`: Newline-delimited JSON (NDJSON) objects. Each line is a JSON object: `{"message": "text"}` or `{"command": "/renew"}`
684
-
685
- **Cost:** $0.01 USDC to join, $0.0001 USDC per message, 10 minute lease
686
-
687
- **Note:** For AI agents, consider using MCP tools (`chat_join`, `chat_send_message`, etc.) instead of CLI streaming for better integration. See [MCP Chat Tools](#chat-tools-usage-example) section.
688
-
689
- ### Cat / Agent
690
-
691
- Interact with an AI-powered cat assistant that can help you with token operations, portfolio management, and more. **`agent` and `cat` are synonyms** - you can use either command name.
692
-
693
- **Interactive:**
694
-
695
- ```bash
696
- httpcat> agent "Buy 100 WOW tokens" # Ask the cat to do something
697
- httpcat> cat "What tokens do I own?" # Same thing, different name
698
- httpcat> agent --chat # Enter interactive chat mode
699
- httpcat> cat --chat # Same thing
700
- httpcat> agent --setup # Configure API key/provider
701
- httpcat> cat --setup # Same thing
702
- ```
703
-
704
- **CLI:**
705
-
706
- ```bash
707
- httpcat agent "Buy 100 WOW tokens"
708
- httpcat cat "What tokens do I own?"
709
- httpcat agent --chat
710
- httpcat cat --chat
711
- httpcat agent --setup
712
- httpcat cat --setup
713
- ```
714
-
715
- **Usage:**
716
-
717
- - `agent <query>` or `cat <query>` - Ask the cat to execute a task (e.g., "Buy WOW tokens", "Check my balance", "List my positions")
718
- - `agent --chat` or `cat --chat` - Enter interactive chat mode for extended conversations
719
- - `agent --setup` or `cat --setup` - Configure or reconfigure your AI provider (OpenAI or Anthropic) and API key
720
-
721
- **First-Time Setup:**
722
-
723
- Before using the cat/agent, you'll need to configure it:
724
-
725
- ```bash
726
- httpcat> agent --setup
727
- # or
728
- httpcat> cat --setup
729
- ```
730
-
731
- You'll be prompted to:
732
- - Choose an AI provider (OpenAI or Anthropic)
733
- - Enter your API key
734
- - Select a model (defaults provided)
735
-
736
- **How It Works:**
737
-
738
- The cat uses an AI agent (powered by OpenAI GPT-4 or Anthropic Claude) to understand natural language requests and execute token operations on your behalf. It can:
739
- - Buy and sell tokens
740
- - Check balances and positions
741
- - List tokens
742
- - Get token information
743
- - And more!
744
-
745
- **Note:** The cat requires an API key from either OpenAI or Anthropic. Your API key is stored locally and encrypted, and is only sent to the LLM provider - never to any other server.
746
-
747
- ### Help
748
-
749
- Display help information for httpcat.
750
-
751
- **CLI:**
752
-
753
- ```bash
754
- httpcat help
755
- httpcat --help
756
- httpcat -h
757
- ```
758
-
759
- All three commands show the same help output with available commands and options.
760
-
761
- ### Configuration
762
-
763
- Manage your httpcat configuration.
764
-
765
- **Interactive:**
766
-
767
- ```bash
768
- httpcat> config -s # Show current config
769
- httpcat> config -S network=base # Update a setting
770
- httpcat> config -r # Re-run setup wizard
771
- ```
772
-
773
- **CLI:**
774
-
775
- ```bash
776
- httpcat config # Run setup wizard
777
- httpcat config -s # Show current config (JSON)
778
- httpcat config -S network=base # Update a setting
779
- ```
780
-
781
- ### MCP Server
782
-
783
- Start the Model Context Protocol server for AI assistant integration.
784
-
785
- **CLI:**
786
-
787
- ```bash
788
- httpcat mcp-server
789
- ```
790
-
791
- **Description:**
792
-
793
- Starts an MCP server that exposes all httpcat CLI commands as MCP tools. The server communicates via stdio and can be used with MCP clients like Cursor or Claude Desktop.
794
-
795
- **Configuration:**
796
-
797
- Add to your MCP client config:
798
-
799
- ```json
800
- {
801
- "mcpServers": {
802
- "httpcat": {
803
- "command": "npx",
804
- "args": ["-y", "httpcat-cli", "mcp-server"],
805
- "env": {
806
- "HTTPCAT_PRIVATE_KEY": "0x..." // Optional
807
- }
808
- }
809
- }
810
- }
811
- ```
812
-
813
- See the [MCP Server section](#mcp-server-model-context-protocol) for detailed documentation.
814
-
815
- ## Headless Mode (JSON Output)
816
-
817
- Perfect for scripting, automation, or LLM/agent integration.
818
-
819
- ### JSON Output
820
-
821
- Add `-j, --json` flag to any command:
822
-
823
- ```bash
824
- $ httpcat -j create "Test Token" "TEST"
825
- {
826
- "success": true,
827
- "operation": "create_token",
828
- "data": {
829
- "tokenId": "abc123-4567-89ab-cdef-0123456789ab",
830
- "tokenAddress": "0x789abcdef123...",
831
- "name": "Test Token",
832
- "symbol": "TEST",
833
- "totalSupply": "1000000000000000000000000000",
834
- "status": "active",
835
- "createdAt": "2025-11-22T10:30:00.000Z",
836
- "entrypointKey": "create_token_..."
837
- },
838
- "payment": {
839
- "txHash": "0x1234567890abcdef..."
840
- }
841
- }
842
- ```
843
-
844
- ### JSON Output Schema
845
-
846
- All commands with `--json` flag return structured JSON responses. The output follows a consistent schema:
847
-
848
- #### Success Response
849
-
850
- ```json
851
- {
852
- "success": true,
853
- "operation": "operation_name",
854
- "data": {
855
- // Operation-specific data (see below)
856
- },
857
- "payment": {
858
- "txHash": "0x...", // Optional: transaction hash if payment was made
859
- "amount": "0.01" // Optional: payment amount
860
- }
861
- }
862
- ```
863
-
864
- #### Error Response
865
-
866
- ```json
867
- {
868
- "success": false,
869
- "operation": "operation_name",
870
- "error": {
871
- "message": "Human-readable error message",
872
- "code": 1, // Exit code (see Exit Codes section)
873
- "details": {
874
- // Optional: Additional error details
875
- // May contain nested error objects from the API
876
- }
877
- }
878
- }
879
- ```
880
-
881
- #### Operation-Specific Data Structures
882
-
883
- **Create Token (`create_token`)**
884
-
885
- ```json
886
- {
887
- "tokenId": "uuid-string",
888
- "tokenAddress": "0x...",
889
- "name": "Token Name",
890
- "symbol": "SYMBOL",
891
- "totalSupply": "1000000000000000000000000000",
892
- "status": "active",
893
- "createdAt": "2025-11-22T10:30:00.000Z",
894
- "entrypointKey": "create_token_..."
895
- }
896
- ```
897
-
898
- **Buy Token (`token_buy`)**
899
-
900
- ```json
901
- {
902
- "tokenId": "uuid-string",
903
- "tokensReceived": "50000",
904
- "amountSpent": "5.00",
905
- "fee": "0.05",
906
- "newPrice": "0.0002",
907
- "newMarketCap": "200000",
908
- "graduationProgress": 0.15,
909
- "txHash": "0x..."
910
- }
911
- ```
912
-
913
- **Sell Token (`token_sell`)**
914
-
915
- ```json
916
- {
917
- "tokenId": "uuid-string",
918
- "tokensSold": "1000",
919
- "usdcReceived": "0.20",
920
- "fee": "0.002",
921
- "newPrice": "0.00018",
922
- "newMarketCap": "180000",
923
- "txHash": "0x..."
924
- }
925
- ```
926
-
927
- **Token Info (`token_info`)**
928
-
929
- ```json
930
- {
931
- "tokenId": "uuid-string",
932
- "name": "Token Name",
933
- "symbol": "SYMBOL",
934
- "address": "0x...",
935
- "status": "active",
936
- "price": "0.0002",
937
- "mcap": "200000",
938
- "graduationProgress": 0.15,
939
- "totalSupply": "1000000000000000000000000000",
940
- "createdAt": "2025-11-22T10:30:00.000Z",
941
- "userPosition": {
942
- // Optional: only if you own tokens
943
- "tokensOwned": "50000",
944
- "usdcInvested": "5.00",
945
- "currentValue": "10.00",
946
- "pnl": "5.00"
947
- }
948
- }
949
- ```
950
-
951
- **List Tokens (`list_tokens`)**
952
-
953
- ```json
954
- {
955
- "tokens": [
956
- {
957
- "tokenId": "uuid-string",
958
- "name": "Token Name",
959
- "symbol": "SYMBOL",
960
- "address": "0x...",
961
- "status": "active",
962
- "mcap": "200000",
963
- "price": "0.0002",
964
- "graduationProgress": 0.15,
965
- "createdAt": "2025-11-22T10:30:00.000Z",
966
- "entrypointKey": "..."
967
- }
968
- ],
969
- "total": 100,
970
- "page": 1,
971
- "limit": 20,
972
- "pages": 5
973
- }
974
- ```
975
-
976
- **Positions (`positions`)**
977
-
978
- ```json
979
- {
980
- "positions": [
981
- {
982
- "tokenId": "uuid-string",
983
- "tokensOwned": "50000",
984
- "usdcInvested": "5000000",
985
- "currentValue": "10000000",
986
- "pnl": "5000000",
987
- "pnlPercentage": 100.0,
988
- "averageCostPerToken": "0.0001",
989
- "positionAge": {
990
- "days": 2,
991
- "hours": 5,
992
- "minutes": 30,
993
- "seconds": 15
994
- },
995
- "createdAt": "2025-11-22T10:30:00.000Z",
996
- "updatedAt": "2025-11-24T15:30:00.000Z",
997
- "lastTransactionDate": "2025-11-24T15:30:00.000Z",
998
- "transactionCount": 3,
999
- "token": {
1000
- "name": "Token Name",
1001
- "symbol": "SYMBOL",
1002
- "address": "0x...",
1003
- "status": "active",
1004
- "price": "0.0002",
1005
- "mcap": "200000",
1006
- "graduationProgress": 0.15
1007
- }
1008
- }
1009
- ],
1010
- "total": 1,
1011
- "summary": {
1012
- "totalPositions": 1,
1013
- "totalValue": "10000000",
1014
- "totalInvested": "5000000",
1015
- "totalPnl": "5000000",
1016
- "totalPnlPercentage": 100.0
1017
- }
1018
- }
1019
- ```
1020
-
1021
- **Health Check (`health`)**
1022
-
1023
- ```json
1024
- {
1025
- "status": "ok",
1026
- "timestamp": "2025-11-22T10:30:00.000Z",
1027
- "agent": "https://agent.402.cat"
1028
- }
1029
- ```
1030
-
1031
- **Balances (`balances`)**
1032
-
1033
- ```json
1034
- {
1035
- "address": "0x...",
1036
- "ethBalance": "1000000000000000000",
1037
- "usdcBalance": "5000000",
1038
- "ethFormatted": "1.0 ETH",
1039
- "usdcFormatted": "5.00 USDC"
1040
- }
1041
- ```
1042
-
1043
- **Version (`--version --json`)**
11
+ ## What is httpcat?
1044
12
 
1045
- ```json
1046
- {
1047
- "name": "httpcat-cli",
1048
- "version": "0.0.8"
1049
- }
1050
- ```
13
+ httpcat is the command-line interface for [402.cat](https://402.cat) — the tool that lets agents interact with x402-protected endpoints and build economic capabilities.
1051
14
 
1052
- ### Quiet Mode
15
+ **The foundation:** x402 protocol enables HTTP-native micropayments. Every API call can be a paid transaction. No API keys. No accounts. Just pay-per-call.
1053
16
 
1054
- Minimal output, only exit codes:
17
+ httpcat wraps this in a CLI that agents can use directly. It handles payment signatures automatically.
1055
18
 
1056
- ```bash
1057
- $ httpcat -q buy abc123-... 0.20
1058
- $ echo $?
1059
- 0
1060
- ```
19
+ ---
1061
20
 
1062
- **Exit Codes:**
21
+ ## How It Works
1063
22
 
1064
- - `0` - Success
1065
- - `1` - General error
1066
- - `2` - Configuration error
1067
- - `3` - Network error
1068
- - `4` - Insufficient funds
1069
- - `5` - Validation error
23
+ ### x402 Protocol Integration
1070
24
 
1071
- ### Example: LLM/Agent Integration
25
+ httpcat uses the x402 protocol to handle payments automatically:
1072
26
 
1073
- ```bash
1074
- #!/bin/bash
27
+ 1. **Request** → CLI makes HTTP request to x402 endpoint
28
+ 2. **402 Response** → Endpoint returns payment requirements
29
+ 3. **Payment** → CLI generates payment signature and retries
30
+ 4. **Response** → Endpoint processes and returns result
1075
31
 
1076
- # Create a token
1077
- RESULT=$(httpcat -j create "AI Token" "AI")
1078
- TOKEN_ADDRESS=$(echo $RESULT | jq -r '.data.tokenAddress')
32
+ All of this happens automatically. No middleware. No wallet management in your code. Just HTTP requests with payment headers.
1079
33
 
1080
- # Buy some tokens
1081
- httpcat -j buy $TOKEN_ADDRESS 5
34
+ ### Entrypoints
1082
35
 
1083
- # Get current info
1084
- httpcat -j info $TOKEN_ADDRESS
36
+ Entrypoints are services wrapped in x402 protocol. They're composable and automatically handle payments.
1085
37
 
1086
- # Sell 50% if profitable
1087
- INFO=$(httpcat -j info $TOKEN_ADDRESS)
1088
- PNL=$(echo $INFO | jq -r '.data.userPosition.pnl')
38
+ **Built-in entrypoints:**
1089
39
 
1090
- if (( $(echo "$PNL > 0" | bc -l) )); then
1091
- httpcat -j sell $TOKEN_ADDRESS 50%
1092
- fi
1093
- ```
40
+ - `swap` DEX aggregator for token swaps
41
+ - `launchpad` Token creation and trading
42
+ - `rpc` — JSON-RPC proxy for blockchain calls
1094
43
 
1095
- ### Example: Chat Streaming with Structured Input
44
+ ---
1096
45
 
1097
- For scripts that need raw streaming access:
46
+ ## Installation
1098
47
 
1099
48
  ```bash
1100
- # Using stream-json input format
1101
- echo '{"message": "Hello!"}' | httpcat -j -f stream-json chat MTK
1102
- echo '{"command": "/renew"}' | httpcat -j -f stream-json chat MTK
1103
-
1104
- # Or pipe multiple messages
1105
- cat messages.ndjson | httpcat -j -f stream-json chat MTK
49
+ npm install -g httpcat-cli
1106
50
  ```
1107
51
 
1108
- **Note:** For AI agents, MCP tools are recommended over CLI streaming. See [MCP Chat Tools](#chat-tools-usage-example) section.
1109
-
1110
- ## MCP Server (Model Context Protocol)
1111
-
1112
- httpcat includes a built-in MCP server that exposes all CLI commands as MCP tools, enabling seamless integration with AI assistants like Claude (via Claude Desktop) or Cursor.
1113
-
1114
- ### Quick Start
1115
-
1116
- **Start the MCP server:**
52
+ Or use with npx:
1117
53
 
1118
54
  ```bash
1119
- httpcat mcp-server
55
+ npx httpcat-cli
1120
56
  ```
1121
57
 
1122
- **Or use npx (no installation needed):**
58
+ Homebrew:
1123
59
 
1124
60
  ```bash
1125
- npx httpcat-cli mcp-server
1126
- ```
1127
-
1128
- ### MCP Client Configuration
1129
-
1130
- Add the httpcat MCP server to your MCP client configuration:
1131
-
1132
- #### For Cursor
1133
-
1134
- Add to your Cursor settings (`.cursor/mcp.json` or settings UI):
1135
-
1136
- ```json
1137
- {
1138
- "mcpServers": {
1139
- "httpcat": {
1140
- "command": "npx",
1141
- "args": ["-y", "httpcat-cli", "mcp-server"],
1142
- "env": {
1143
- "HTTPCAT_PRIVATE_KEY": "0x..." // Optional - can also pass via tool params
1144
- }
1145
- }
1146
- }
1147
- }
1148
- ```
1149
-
1150
- #### For Claude Desktop
1151
-
1152
- Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS):
1153
-
1154
- ```json
1155
- {
1156
- "mcpServers": {
1157
- "httpcat": {
1158
- "command": "npx",
1159
- "args": ["-y", "httpcat-cli", "mcp-server"],
1160
- "env": {
1161
- "HTTPCAT_PRIVATE_KEY": "0x..."
1162
- }
1163
- }
1164
- }
1165
- }
1166
- ```
1167
-
1168
- #### Using Global Install
1169
-
1170
- If you've installed httpcat globally:
1171
-
1172
- ```json
1173
- {
1174
- "mcpServers": {
1175
- "httpcat": {
1176
- "command": "httpcat",
1177
- "args": ["mcp-server"],
1178
- "env": {
1179
- "HTTPCAT_PRIVATE_KEY": "0x..."
1180
- }
1181
- }
1182
- }
1183
- }
1184
- ```
1185
-
1186
- ### Available MCP Tools
1187
-
1188
- The MCP server exposes the following tools:
1189
-
1190
- #### `create_token`
1191
-
1192
- Create a new token on the bonding curve.
1193
-
1194
- **Parameters:**
1195
-
1196
- - `name` (string, required) - Token name (e.g., "My Token")
1197
- - `symbol` (string, required) - Token symbol/ticker (3-10 characters)
1198
- - `photoUrl` (string, optional) - Photo URL, file path, or base64 data URL for token logo
1199
- - `websiteUrl` (string, optional) - Website URL
1200
- - `privateKey` (string, optional) - Private key (overrides config/env)
1201
-
1202
- **Cost:** $0.01 USDC
1203
-
1204
- #### `buy_token`
1205
-
1206
- Buy tokens from the bonding curve.
1207
-
1208
- **Parameters:**
1209
-
1210
- - `identifier` (string, required) - Address, name, or symbol
1211
- - `amount` (string, required) - Amount: "0.05", "0.10", or "0.20" (testnet) | "50", "100", or "200" (mainnet)
1212
- - `privateKey` (string, optional) - Private key (overrides config/env)
1213
-
1214
- **Cost:** Amount + 1% fee
1215
-
1216
- #### `sell_token`
1217
-
1218
- Sell tokens back to the bonding curve.
1219
-
1220
- **Parameters:**
1221
-
1222
- - `identifier` (string, required) - Address, name, or symbol
1223
- - `amount` (string, required) - Amount: number (e.g., "1000"), percentage (e.g., "50%"), or "all"
1224
- - `privateKey` (string, optional) - Private key (overrides config/env)
1225
-
1226
- **Cost:** 1% fee deducted from proceeds
1227
-
1228
- #### `token_info`
1229
-
1230
- Get detailed information about a token.
1231
-
1232
- **Parameters:**
1233
-
1234
- - `identifier` (string, required) - Address, name, or symbol
1235
- - `privateKey` (string, optional) - Private key (overrides config/env)
1236
-
1237
- **Returns:** Token details, price, market cap, graduation progress, and your position (if you own tokens)
1238
-
1239
- **Cost:** $0.0001 USDC
1240
-
1241
- #### `list_tokens`
1242
-
1243
- List all tokens with pagination and sorting.
1244
-
1245
- **Parameters:**
1246
-
1247
- - `page` (number, optional) - Page number (default: 1)
1248
- - `limit` (number, optional) - Items per page (default: 20, max: 100)
1249
- - `sort` (string, optional) - Sort by: "mcap", "created", or "name" (default: "mcap")
1250
- - `privateKey` (string, optional) - Private key (overrides config/env)
1251
-
1252
- **Cost:** $0.0001 USDC
1253
-
1254
- #### `positions`
1255
-
1256
- Get all your positions with comprehensive information including current value, profit/loss, ROI, transaction history, and portfolio summary.
1257
-
1258
- **Parameters:**
1259
-
1260
- - `privateKey` (string, optional) - Private key (overrides config/env)
1261
-
1262
- **Returns:** All positions for the requesting address with:
1263
-
1264
- - Position details (tokens owned, USDC invested, current value, average cost)
1265
- - Performance metrics (profit/loss, ROI percentage)
1266
- - Position age and transaction history
1267
- - Token information for each position
1268
- - Portfolio summary (total value, total invested, total P/L, overall ROI)
1269
-
1270
- **Cost:** $0.01 USDC
1271
-
1272
- #### `check_balance`
1273
-
1274
- Check wallet balance (ETH and USDC).
1275
-
1276
- **Parameters:**
1277
-
1278
- - `privateKey` (string, optional) - Private key (overrides config/env)
1279
-
1280
- **Cost:** Free (no payment required)
1281
-
1282
- #### `health_check`
1283
-
1284
- Check if the httpcat agent is running and healthy.
1285
-
1286
- **Parameters:**
1287
-
1288
- - `privateKey` (string, optional) - Private key (overrides config/env)
1289
-
1290
- **Cost:** $0.0001 USDC
1291
-
1292
- #### `chat_join`
1293
-
1294
- Join a chat room (general or token-specific). Establishes a WebSocket connection and returns a leaseId for subsequent chat operations.
1295
-
1296
- **Parameters:**
1297
-
1298
- - `tokenIdentifier` (string, optional) - Token symbol, name, or address (e.g., "FRIDA", "My Token", or "0x1234..."). If not provided, joins general chat.
1299
- - `privateKey` (string, optional) - Private key (overrides config/env)
1300
-
1301
- **Returns:** `{ leaseId, leaseExpiresAt, wsUrl, lastMessages[] }`
1302
-
1303
- **Cost:** $0.01 USDC to join, $0.0001 USDC per message, 10 minute lease
1304
-
1305
- **Note:** The MCP server maintains the WebSocket connection in the background and caches messages. Use `chat_get_recent_messages` to poll for new messages.
1306
-
1307
- #### `chat_send_message`
1308
-
1309
- Send a message to the active chat.
1310
-
1311
- **Parameters:**
1312
-
1313
- - `message` (string, required) - Message text to send
1314
- - `leaseId` (string, required) - Lease ID from `chat_join` result
1315
- - `privateKey` (string, optional) - Private key (overrides config/env)
1316
-
1317
- **Returns:** `{ messageId, timestamp, message, author }`
1318
-
1319
- **Cost:** $0.0001 USDC per message
1320
-
1321
- #### `chat_renew_lease`
1322
-
1323
- Renew an expiring or expired chat lease.
1324
-
1325
- **Parameters:**
1326
-
1327
- - `leaseId` (string, optional) - Lease ID to renew. If not provided, renews most recent lease for the private key.
1328
- - `privateKey` (string, optional) - Private key (overrides config/env)
1329
-
1330
- **Returns:** `{ leaseId, leaseExpiresAt }`
1331
-
1332
- **Cost:** $0.01 USDC
1333
-
1334
- #### `chat_get_recent_messages`
1335
-
1336
- Get recent messages from chat (polling mechanism). Returns cached messages from the active chat session.
1337
-
1338
- **Parameters:**
1339
-
1340
- - `leaseId` (string, required) - Lease ID from `chat_join` result
1341
- - `limit` (number, optional) - Maximum number of messages to return (default: 50)
1342
- - `privateKey` (string, optional) - Private key (overrides config/env)
1343
-
1344
- **Returns:** `{ messages[] }` with recent chat messages
1345
-
1346
- **Cost:** Free (uses cached data)
1347
-
1348
- **Note:** Messages are cached in memory as they arrive via WebSocket. Poll this tool periodically to check for new messages.
1349
-
1350
- ### Chat Tools Usage Example
1351
-
1352
- Here's how an AI agent like Claude Code would use the chat tools:
1353
-
1354
- ```javascript
1355
- // Step 1: Join the FRIDA token chat room
1356
- const joinResult = await mcp.callTool("chat_join", {
1357
- tokenIdentifier: "FRIDA",
1358
- });
1359
- // Returns: { leaseId: "abc123...", leaseExpiresAt: "...", lastMessages: [...] }
1360
-
1361
- // Step 2: Send a message
1362
- const sendResult = await mcp.callTool("chat_send_message", {
1363
- message: "Hello FRIDA community!",
1364
- leaseId: joinResult.leaseId,
1365
- });
1366
- // Returns: { messageId: "msg456...", timestamp: "...", message: "...", author: "0x..." }
1367
-
1368
- // Step 3: Poll for new messages (agent does this periodically)
1369
- const messages = await mcp.callTool("chat_get_recent_messages", {
1370
- leaseId: joinResult.leaseId,
1371
- limit: 20,
1372
- });
1373
- // Returns: { messages: [...] }
1374
-
1375
- // Step 4: Renew lease when needed
1376
- const renewal = await mcp.callTool("chat_renew_lease", {
1377
- leaseId: joinResult.leaseId,
1378
- });
1379
- // Returns: { leaseId: "new-lease-id...", leaseExpiresAt: "..." }
1380
- ```
1381
-
1382
- **Key Benefits:**
1383
-
1384
- - No shell scripting or process management required
1385
- - WebSocket connections maintained automatically by MCP server
1386
- - Messages cached in memory for quick retrieval
1387
- - Simple polling model for agents
1388
-
1389
- ### Private Key Configuration
1390
-
1391
- Private keys can be configured in three ways (priority order):
1392
-
1393
- 1. **Tool parameter** - Pass `privateKey` in each tool call (highest priority)
1394
- 2. **Environment variable** - Set `HTTPCAT_PRIVATE_KEY` in the MCP client config
1395
- 3. **Config file** - Use `httpcat config` to set up `~/.config/httpcat/config.json`
1396
-
1397
- **Security Recommendation:** Use the environment variable in your MCP client config rather than passing it in each tool call.
1398
-
1399
- ### Example MCP Tool Usage
1400
-
1401
- Once configured, AI assistants can use the tools like this:
1402
-
1403
- ```
1404
- create_token(name="Moon Token", symbol="MOON", websiteUrl="https://moon.com")
1405
- buy_token(identifier="0x1234...", amount="0.20")
1406
- token_info(identifier="MOON")
1407
- list_tokens(sort="mcap", limit=10)
1408
- check_balance()
1409
- ```
1410
-
1411
- ### Response Format
1412
-
1413
- All MCP tools return structured JSON responses matching the CLI's JSON output format:
1414
-
1415
- **Success:**
1416
-
1417
- ```json
1418
- {
1419
- "success": true,
1420
- "operation": "tool_name",
1421
- "data": {
1422
- // Tool-specific data
1423
- }
1424
- }
1425
- ```
1426
-
1427
- **Error:**
1428
-
1429
- ```json
1430
- {
1431
- "success": false,
1432
- "operation": "tool_name",
1433
- "error": {
1434
- "message": "Error message",
1435
- "code": 1,
1436
- "details": {}
1437
- }
1438
- }
61
+ brew tap hathbanger/httpcat
62
+ brew install httpcat
1439
63
  ```
1440
64
 
1441
- ### Benefits
1442
-
1443
- - **No Shell Access Required** - AI assistants can interact with httpcat without needing shell/terminal access
1444
- - **Structured Responses** - Consistent JSON output format for reliable parsing
1445
- - **Secure** - Private keys can be managed via environment variables or config
1446
- - **Always Up-to-Date** - Using `npx` ensures you always get the latest version
1447
- - **Zero Configuration** - Works out of the box with standard MCP clients
65
+ ---
1448
66
 
1449
- ## Advanced Usage
1450
-
1451
- ### Environment Management
67
+ ## Quick Start
1452
68
 
1453
- httpcat supports multiple environments (local, sepolia, etc.) to easily switch between different agent deployments.
69
+ ### Setup
1454
70
 
1455
- #### List Environments
71
+ Run `httpcat` to create your wallet:
1456
72
 
1457
73
  ```bash
1458
- httpcat env list
74
+ httpcat
1459
75
  ```
1460
76
 
1461
- Shows all available environments with their agent URLs and networks.
77
+ Your seed phrase is generated locally and never transmitted to any server.
1462
78
 
1463
- #### Switch Environment
79
+ ### Use Entrypoints
1464
80
 
1465
81
  ```bash
1466
- # Switch to local environment
1467
- httpcat env use local
82
+ # Swap tokens via DEX aggregator
83
+ httpcat swap USDC WETH 1.0
1468
84
 
1469
- # Switch to sepolia environment
1470
- httpcat env use sepolia
85
+ # Launchpad operations
86
+ httpcat list
87
+ httpcat create "My Token" "MTK"
88
+ httpcat buy MTK 0.10
89
+ httpcat positions
1471
90
  ```
1472
91
 
1473
- #### Show Current Environment
92
+ ### MCP Integration
1474
93
 
1475
- ```bash
1476
- httpcat env show
1477
- ```
1478
-
1479
- #### Add Custom Environment
94
+ Give your agent claws:
1480
95
 
1481
96
  ```bash
1482
- # Add a custom environment
1483
- httpcat env add production http://production-agent:8787 -n base
1484
-
1485
- # Switch to it
1486
- httpcat env use production
97
+ httpcat mcp install
1487
98
  ```
1488
99
 
1489
- #### Update Environment
100
+ Your agent can now use all CLI commands as MCP tools. One integration, access to everything.
1490
101
 
1491
- ```bash
1492
- # Update existing environment URL
1493
- httpcat env update local http://localhost:8788
102
+ ---
1494
103
 
1495
- # Update environment with different network
1496
- httpcat env update production http://prod-agent:8787 -n base
1497
- ```
104
+ ## Commands
105
+
106
+ ### Launchpad
107
+
108
+ - `launchpad list` — List all launchpad tokens (FREE)
109
+ - `launchpad info <identifier>` — Get launchpad token information (FREE)
110
+ - `launchpad buy <identifier> <amount>` — Buy tokens from bonding curve (amount + 1% fee)
111
+ - `launchpad sell <identifier> <amount>` — Sell tokens to bonding curve ($0.01)
112
+ - `launchpad positions` — Get launchpad token positions (FREE)
113
+ - `create <name> <symbol>` — Create a new token on the 402.cat launchpad ($0.01)
114
+
115
+ **Shortcuts:** `list`, `info`, `buy`, `sell`, `positions`, `create`
116
+
117
+ ### Entrypoints
118
+
119
+ - `swap <tokenIn> <tokenOut> <amount>` — Execute swaps via 402.cat DEX aggregator ($0.10)
120
+
121
+ ### Tools
122
+
123
+ EVM development & interaction tools for building and working with blockchain transactions:
124
+
125
+ - `tools address` — Address utilities
126
+ - `tools address validate <address>` — Validate Ethereum address format ($0.001)
127
+ - `tools address checksum <address>` — Convert address to EIP-55 checksum format ($0.001)
128
+ - `tools address derive <privateKey>` — Derive address from private key ($0.001)
129
+ - `tools address balance <address>` — Get address balance (ETH + tokens) ($0.001)
130
+ - `tools abi` — ABI encoding/decoding utilities
131
+ - `tools abi encode` — Encode function call from ABI and arguments ($0.001)
132
+ - `tools abi decode` — Decode function result or event log ($0.001)
133
+ - `tools abi parse` — Parse ABI JSON and return structured format ($0.001)
134
+ - `tools tx` — Transaction utilities
135
+ - `tools tx build` — Build complete transaction with auto-filled fields ($0.001)
136
+ - `tools tx encode` — Encode transaction to RLP format ($0.001)
137
+ - `tools tx decode` — Decode RLP transaction ($0.001)
138
+ - `tools tx simulate` — Enhanced transaction simulation with state analysis ($0.001)
139
+ - `tools tx estimate-gas` — Estimate gas for transaction ($0.001)
140
+ - `tools tx prepare` — Prepare transaction for signing ($0.001)
141
+ - `tools signature` — Signature utilities
142
+ - `tools signature eip191` — Prepare EIP-191 personal sign message ($0.001)
143
+ - `tools signature eip712` — Prepare EIP-712 structured data signature ($0.001)
144
+ - `tools signature permit2` — Prepare Permit2 signature message ($0.001)
145
+ - `tools multicall` — Multicall operations
146
+ - `tools multicall encode` — Encode multicall operation ($0.001)
147
+ - `tools multicall decode` — Decode multicall results ($0.001)
148
+ - `tools nonce` — Nonce management
149
+ - `tools nonce get <address>` — Get current nonce for address ($0.001)
150
+ - `tools nonce predict <address>` — Predict next nonce accounting for pending transactions ($0.001)
151
+ - `tools gas` — Gas utilities
152
+ - `tools gas price` — Get current gas price ($0.001)
153
+ - `tools gas estimate` — Estimate gas for operation ($0.001)
154
+ - `tools gas optimize` — Optimize gas settings for transaction ($0.001)
155
+ - `tools key` — Key utilities
156
+ - `tools key derive <privateKey>` — Derive address from private key ($0.001)
157
+ - `tools key validate <privateKey>` — Validate private key format ($0.001)
158
+ - `tools rpc` — RPC utilities
159
+ - `tools rpc proxy` — Enhanced JSON-RPC proxy ($0.001)
160
+ - `tools rpc batch` — Batch multiple RPC calls ($0.001)
161
+ - `tools rpc health` — Check RPC endpoint health ($0.001)
162
+ - `tools call <url>` — Call an arbitrary x402-protected HTTP endpoint with automatic payment handling (varies by endpoint)
163
+ - `rpc` — JSON-RPC proxy for blockchain calls ($0.05)
164
+
165
+ ### MCP
166
+
167
+ - `mcp install [llm-name]` — Install or update httpcat MCP server for AI assistants
168
+ - `mcp start` — Start MCP (Model Context Protocol) server
1498
169
 
1499
- Updates an existing environment's agent URL and optionally its network.
170
+ ### Configuration
1500
171
 
1501
- #### Predefined Environments
172
+ - `config` — Configure httpcat (settings, environment, accounts)
173
+ - `config setup` — Run interactive setup wizard
174
+ - `config reset` — Reset configuration (clears all settings)
175
+ - `config completion [shell]` — Generate shell completion script
176
+ - `config update` — Update httpcat CLI to the latest version
177
+ - `use <value>` — Switch account or environment
1502
178
 
1503
- - **local** - `http://localhost:8787` (eip155:84532)
1504
- - **sepolia** - `https://agent.402.cat` (eip155:84532)
179
+ ### Infrastructure
1505
180
 
1506
- #### Environment Priority
181
+ - `accounts` — List all configured accounts
1507
182
 
1508
- Agent URL resolution priority:
183
+ **Additional Shortcuts:** `transactions` (→ portfolio transactions), `health` (→ system health), `balances` (→ portfolio balances)
1509
184
 
1510
- 1. `HTTPCAT_AGENT_URL` environment variable
1511
- 2. Current environment's agent URL
1512
- 3. Config file `agentUrl` setting
1513
- 4. Default value
185
+ ---
1514
186
 
1515
- ### Environment Variables
187
+ ## x402 Protocol
1516
188
 
1517
- Override config with environment variables:
189
+ httpcat is built on the [x402 protocol](https://x402.org) — HTTP-native micropayments that work without middleware or wallets.
1518
190
 
1519
- ```bash
1520
- # Private key (most secure - doesn't save to config)
1521
- export HTTPCAT_PRIVATE_KEY=0x1234567890abcdef...
191
+ **How it works:**
1522
192
 
1523
- # Agent URL (overrides environment)
1524
- export HTTPCAT_AGENT_URL=http://custom-agent:8787
193
+ 1. Make HTTP request to x402 endpoint
194
+ 2. Receive `402 Payment Required` response
195
+ 3. Generate payment signature using your private key
196
+ 4. Retry request with `PAYMENT-SIGNATURE` header
197
+ 5. Endpoint verifies payment and processes request
1525
198
 
1526
- # Run commands
1527
- httpcat create "My Token" "MTK"
1528
- ```
199
+ **No middleware required.** The protocol is built into HTTP. No wallet management. No complex setup. Just HTTP requests with payment headers.
1529
200
 
1530
- ### Private Key Command-Line Option
201
+ httpcat handles all of this automatically. You just make requests.
1531
202
 
1532
- You can also pass the private key directly via command-line flag (highest priority):
203
+ **Protocol Versions:** httpcat supports both x402 v1 (payment requirements in response body) and v2 (payment requirements in `PAYMENT-REQUIRED` header). The client automatically detects and handles both formats.
1533
204
 
1534
- ```bash
1535
- # Private key priority: CLI flag > Environment variable > Config file
1536
- httpcat -k 0x1234567890abcdef... create "My Token" "MTK"
1537
- httpcat -k 0x1234567890abcdef... -j buy 0x1234... 0.20
1538
- ```
205
+ ---
1539
206
 
1540
- **Note:** The `--private-key` flag takes precedence over environment variables and config file settings.
207
+ ## MCP Server
1541
208
 
1542
- ### Custom Network Configuration
209
+ The MCP server exposes all CLI commands as tools for AI assistants:
1543
210
 
1544
211
  ```bash
1545
- # Switch to mainnet
1546
- httpcat config -S network=base
1547
- httpcat config -S agentUrl=http://production-url:8787
1548
-
1549
- # Or in interactive mode
1550
- httpcat> network base
212
+ httpcat mcp install
1551
213
  ```
1552
214
 
1553
- ### Disable ASCII Art
215
+ Or start manually:
1554
216
 
1555
217
  ```bash
1556
- # Globally
1557
- httpcat config --set preferences.enableAsciiArt=false
1558
-
1559
- # Per session
1560
- httpcat --no-art
218
+ httpcat mcp start
1561
219
  ```
1562
220
 
1563
- ## Configuration File
1564
-
1565
- Config is stored at `~/.config/httpcat/config.json`:
221
+ **Configuration:**
1566
222
 
1567
223
  ```json
1568
224
  {
1569
- "encryptedPrivateKey": "...",
1570
- "encryptedSeedPhrase": "...",
1571
- "password": "hashed_password",
1572
- "passwordTimeoutMinutes": 15,
1573
- "accounts": [
1574
- {
1575
- "index": 0,
1576
- "type": "custom",
1577
- "address": "0x...",
1578
- "label": "Main Account"
1579
- },
1580
- {
1581
- "index": 1,
1582
- "type": "seed",
1583
- "address": "0x..."
1584
- }
1585
- ],
1586
- "activeAccountIndex": 0,
1587
- "network": "eip155:84532",
1588
- "agentUrl": "https://agent.402.cat",
1589
- "facilitatorUrl": "https://facilitators.x402scan.com",
1590
- "defaultMaxPayment": "10.00",
1591
- "environment": "sepolia",
1592
- "environments": {
1593
- "local": {
1594
- "name": "local",
1595
- "agentUrl": "http://localhost:8787",
1596
- "network": "base-sepolia"
1597
- },
1598
- "sepolia": {
1599
- "name": "sepolia",
1600
- "agentUrl": "https://agent.402.cat",
1601
- "network": "base-sepolia"
225
+ "mcpServers": {
226
+ "httpcat": {
227
+ "command": "npx",
228
+ "args": ["-y", "httpcat-cli", "mcp", "start"]
1602
229
  }
1603
- },
1604
- "preferences": {
1605
- "enableAsciiArt": true,
1606
- "colorOutput": true,
1607
- "verboseLogging": false
1608
- },
1609
- "aiAgent": {
1610
- "provider": "openai",
1611
- "apiKey": "encrypted_key_here",
1612
- "model": "gpt-4"
1613
230
  }
1614
231
  }
1615
232
  ```
1616
233
 
1617
- **Security Features:**
1618
-
1619
- - **Password Protection**: Set a password during setup to encrypt your private keys and seed phrase
1620
- - **Session Management**: Configurable timeout (default: 15 minutes via `passwordTimeoutMinutes`)
1621
- - **Multi-Account Support**: Manage multiple accounts (seed-derived HD wallet accounts and custom imported accounts)
1622
- - **Encrypted Storage**: Keys and seed phrases are encrypted when password is enabled
1623
- - **Account Types**:
1624
- - **Seed-Derived** (Account 1+): Generated from your seed phrase using BIP-32/BIP-39
1625
- - **Custom** (Account 0): Imported via private key
1626
-
1627
- **Security Notes:**
1628
-
1629
- - **Without password**: Private key stored in plain text (legacy `privateKey` field, auto-migrated to encrypted format)
1630
- - **With password**: Private key, seed phrase, and AI API keys are encrypted
1631
- - **For production use**:
1632
- - Enable password protection during setup for encryption
1633
- - Use `HTTPCAT_PRIVATE_KEY` environment variable for additional security
1634
- - Set restrictive file permissions: `chmod 600 ~/.config/httpcat/config.json`
1635
- - Use a dedicated wallet with limited funds
1636
-
1637
- ## How It Works
1638
-
1639
- ### x402 Payment Protocol
1640
-
1641
- httpcat uses the [x402 protocol V2](https://x402.org) for micropayments:
1642
-
1643
- 1. **Request** - CLI makes a request to the agent
1644
- 2. **402 Response** - Agent returns payment requirements
1645
- 3. **Payment** - CLI automatically transfers USDC
1646
- 4. **Verification** - Agent verifies payment via facilitator
1647
- 5. **Response** - Agent processes request and returns result
1648
-
1649
- All of this happens automatically - you just see the result!
1650
-
1651
- ### Bonding Curve
1652
-
1653
- Tokens use a bonding curve pricing mechanism:
1654
-
1655
- - Price increases as more tokens are bought
1656
- - Price decreases as tokens are sold
1657
- - 1% fee on all buy/sell operations
1658
- - Automatic graduation at market cap threshold
1659
- - Graduated tokens get Uniswap V2 liquidity
1660
-
1661
- ## Troubleshooting
1662
-
1663
- ### "No private key configured"
1664
-
1665
- Run the setup wizard:
1666
-
1667
- ```bash
1668
- httpcat config
1669
- ```
1670
-
1671
- Or use environment variable:
1672
-
1673
- ```bash
1674
- export HTTPCAT_PRIVATE_KEY=0x...
1675
- ```
1676
-
1677
- ### "Insufficient USDC balance"
1678
-
1679
- Make sure you have enough USDC in your wallet:
1680
-
1681
- - Test mode (Base Sepolia / eip155:84532): Get testnet USDC from faucets
1682
- - Production (base): Bridge USDC to Base
1683
-
1684
- You also need ETH for gas fees.
1685
-
1686
- ### "Request failed with status 402"
1687
-
1688
- The payment verification failed. Check:
1689
-
1690
- 1. Wallet has sufficient USDC and ETH
1691
- 2. Network is correct (eip155:84532 for testnet vs eip155:8453 for mainnet)
1692
- 3. Agent URL is reachable
1693
- 4. Facilitator URL is correct
1694
-
1695
- ### Connection errors
1696
-
1697
- Verify the agent is running:
1698
-
1699
- ```bash
1700
- httpcat health
1701
- ```
1702
-
1703
- Check your config:
1704
-
1705
- ```bash
1706
- httpcat config --show
1707
- ```
1708
-
1709
- ### Check Wallet Balance
1710
-
1711
- Use the balances command to check your wallet's ETH and USDC balances:
1712
-
1713
- ```bash
1714
- httpcat balances
1715
- ```
1716
-
1717
- This will show your wallet address, ETH balance (for gas fees), and USDC balance (for trading), with warnings if balances are low.
1718
-
1719
- ## Examples
1720
-
1721
- ### Complete Workflow
1722
-
1723
- ```bash
1724
- # Setup
1725
- httpcat config
1726
-
1727
- # Check your wallet balances
1728
- httpcat balances
1729
-
1730
- # Create a token
1731
- httpcat create "Moon Cat" "MOON" -w --website https://mooncat.io
234
+ **Note:** Private key is NOT included in MCP config — the server reads from `~/.config/httpcat/config.json` automatically.
1732
235
 
1733
- # Buy tokens
1734
- httpcat buy 0x1234... 5
236
+ Your agent can now:
1735
237
 
1736
- # Check your position
1737
- httpcat info 0x1234...
238
+ - Use entrypoints (swap, launchpad, rpc)
239
+ - Use launchpad commands (create, buy, sell, list, info, positions)
240
+ - Discover and compose services
241
+ - Build capabilities
1738
242
 
1739
- # Get all your positions with comprehensive info
1740
- httpcat positions
243
+ ---
1741
244
 
1742
- # Sell half when profitable
1743
- httpcat sell 0x1234... 50%
245
+ ## Global Options
1744
246
 
1745
- # List all your tokens (shows positions)
1746
- httpcat list
1747
- ```
247
+ - `-j, --json` JSON output for scripting
248
+ - `-q, --quiet` — Minimal output
249
+ - `-v, --verbose` — Verbose errors
250
+ - `--no-art` — Disable ASCII art
251
+ - `-k, --private-key <key>` — Override private key
252
+ - `-a, --account <index>` — Use specific account
1748
253
 
1749
- ### Scripted Trading Bot
254
+ ---
1750
255
 
1751
- ```bash
1752
- #!/bin/bash
256
+ ## Documentation
1753
257
 
1754
- TOKEN_ADDRESS="0x1234567890abcdef1234567890abcdef12345678"
258
+ For detailed documentation, entrypoint reference, and deployment guides:
1755
259
 
1756
- # Monitor and trade
1757
- while true; do
1758
- INFO=$(httpcat -j info $TOKEN_ADDRESS)
1759
- PROGRESS=$(echo $INFO | jq -r '.data.graduationProgress')
260
+ **📖 [docs.402.cat](https://www.402.cat/docs)**
1760
261
 
1761
- # Buy if close to graduation
1762
- if (( $(echo "$PROGRESS > 90" | bc -l) )); then
1763
- httpcat -q buy $TOKEN_ADDRESS 5
1764
- fi
262
+ ---
1765
263
 
1766
- sleep 60
1767
- done
1768
- ```
264
+ ## The Foundation
1769
265
 
1770
- ## Development
266
+ httpcat is built on three primitives:
1771
267
 
1772
- ```bash
1773
- # Install dependencies
1774
- yarn install
268
+ 1. **x402 Protocol** — HTTP-native micropayments, no middleware
269
+ 2. **Entrypoint Registry** — Discoverable, composable services
270
+ 3. **Automatic Payments** — Payment signatures handled automatically
1775
271
 
1776
- # Build
1777
- yarn build
272
+ This is the infrastructure that lets agents transact without wallets, discover services without APIs, and build capabilities by composing entrypoints.
1778
273
 
1779
- # Watch mode
1780
- yarn dev
274
+ **Money is the alignment mechanism.** An agent with a budget has to prioritize. Every action costs something. Run out of funds, you stop. Make bad decisions, you go broke.
1781
275
 
1782
- # Link for local testing
1783
- yarn link
276
+ The constraint is what makes it work.
1784
277
 
1785
- # Test
1786
- httpcat --version
1787
- ```
278
+ ---
1788
279
 
1789
280
  ## License
1790
281
 
@@ -1792,6 +283,7 @@ MIT
1792
283
 
1793
284
  ## Support
1794
285
 
1795
- - Report issues: https://github.com/hathbanger/httpcat-cli/issues
1796
- - httpcat agent: https://agent.402.cat
1797
- - x402 protocol: https://x402.org
286
+ - Issues: https://github.com/hathbanger/httpcat-cli/issues
287
+ - Agent: https://agent-test.402.cat
288
+ - Protocol: https://x402.org
289
+ - Docs: https://www.402.cat/docs