httpcat-cli 0.3.0 → 0.3.1-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +3 -0
- package/.github/workflows/rc-publish.yml +6 -0
- package/.github/workflows/release.yml +107 -0
- package/.github/workflows/sync-version.yml +40 -2
- package/README.md +128 -1685
- package/additions.txt +3 -0
- package/brand-assets/png/expressions/compact-160-dark.png +0 -0
- package/brand-assets/png/expressions/compact-160-light.png +0 -0
- package/brand-assets/png/expressions/compact-320-dark.png +0 -0
- package/brand-assets/png/expressions/compact-320-light.png +0 -0
- package/brand-assets/png/expressions/default-160-dark.png +0 -0
- package/brand-assets/png/expressions/default-160-light.png +0 -0
- package/brand-assets/png/expressions/default-320-dark.png +0 -0
- package/brand-assets/png/expressions/default-320-light.png +0 -0
- package/brand-assets/png/expressions/minimal-160-dark.png +0 -0
- package/brand-assets/png/expressions/minimal-160-light.png +0 -0
- package/brand-assets/png/expressions/minimal-320-dark.png +0 -0
- package/brand-assets/png/expressions/minimal-320-light.png +0 -0
- package/brand-assets/png/expressions/pointy-160-dark.png +0 -0
- package/brand-assets/png/expressions/pointy-160-light.png +0 -0
- package/brand-assets/png/expressions/pointy-320-dark.png +0 -0
- package/brand-assets/png/expressions/pointy-320-light.png +0 -0
- package/brand-assets/png/expressions/simplified-160-dark.png +0 -0
- package/brand-assets/png/expressions/simplified-160-light.png +0 -0
- package/brand-assets/png/expressions/simplified-320-dark.png +0 -0
- package/brand-assets/png/expressions/simplified-320-light.png +0 -0
- package/brand-assets/png/expressions/winking-160-dark.png +0 -0
- package/brand-assets/png/expressions/winking-160-light.png +0 -0
- package/brand-assets/png/expressions/winking-320-dark.png +0 -0
- package/brand-assets/png/expressions/winking-320-light.png +0 -0
- package/brand-assets/png/favicon/apple-touch-180-dark.png +0 -0
- package/brand-assets/png/favicon/apple-touch-180-light.png +0 -0
- package/brand-assets/png/favicon/favicon-16-dark.png +0 -0
- package/brand-assets/png/favicon/favicon-16-light.png +0 -0
- package/brand-assets/png/favicon/favicon-180-dark.png +0 -0
- package/brand-assets/png/favicon/favicon-180-light.png +0 -0
- package/brand-assets/png/favicon/favicon-32-dark.png +0 -0
- package/brand-assets/png/favicon/favicon-32-light.png +0 -0
- package/brand-assets/png/favicon/favicon-48-dark.png +0 -0
- package/brand-assets/png/favicon/favicon-48-light.png +0 -0
- package/brand-assets/png/favicon/v6-minimal-32-dark.png +0 -0
- package/brand-assets/png/favicon/v6-minimal-32-light.png +0 -0
- package/brand-assets/png/mark/v11-pointy-400-dark.png +0 -0
- package/brand-assets/png/mark/v11-pointy-400-light.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-160-dark.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-160-light.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-320-dark.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-320-light.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-400-dark.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-400-light.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-80-dark.png +0 -0
- package/brand-assets/png/mark/v12-ears-only-80-light.png +0 -0
- package/brand-assets/png/mark/v5-ears-400-dark.png +0 -0
- package/brand-assets/png/mark/v5-ears-400-light.png +0 -0
- package/brand-assets/png/mark/v8-minimal-400-dark.png +0 -0
- package/brand-assets/png/mark/v8-minimal-400-light.png +0 -0
- package/brand-assets/png/og-1200x630-v2-dark.png +0 -0
- package/brand-assets/png/og-feral-a.png +0 -0
- package/brand-assets/png/og-feral-b.png +0 -0
- package/brand-assets/png/og-feral-c.png +0 -0
- package/brand-assets/png/og-feral-d.png +0 -0
- package/brand-assets/png/og-v2-variation-a.png +0 -0
- package/brand-assets/png/og-v2-variation-b.png +0 -0
- package/brand-assets/png/og-v2-variation-c.png +0 -0
- package/brand-assets/png/social/banner-cat-ticker-1500x500-dark.png +0 -0
- package/brand-assets/png/social/banner-cat-ticker-1500x500-light.png +0 -0
- package/brand-assets/png/social/og-v11-pointy-1200x630-dark.png +0 -0
- package/brand-assets/png/social/og-v11-pointy-1200x630-light.png +0 -0
- package/brand-assets/png/social/og-v12-ears-1200x630-dark.png +0 -0
- package/brand-assets/png/social/og-v12-ears-1200x630-light.png +0 -0
- package/brand-assets/png/social/og-v12-ears-1280x320-dark.png +0 -0
- package/brand-assets/png/social/og-v12-ticker-1200x630-dark.png +0 -0
- package/brand-assets/png/social/og-v12-ticker-1200x630-light.png +0 -0
- package/brand-assets/png/social/pfp-ears-400-dark.png +0 -0
- package/brand-assets/png/social/pfp-ears-400-light.png +0 -0
- package/brand-assets/png/social/twitter-banner-v11-1500x500-dark.png +0 -0
- package/brand-assets/png/social/twitter-pfp-400-dark.png +0 -0
- package/brand-assets/png/social/twitter-pfp-400-light.png +0 -0
- package/brand-assets/png/social/twitter-pfp-v11-400-dark.png +0 -0
- package/brand-assets/png/v12-ears-only-1000-dark.png +0 -0
- package/brand-assets/svg/Archive/402cat-banner-1200x400-dark.svg +13 -0
- package/brand-assets/svg/Archive/402cat-banner-1200x400-light.svg +13 -0
- package/brand-assets/svg/Archive/402cat-default-160-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-default-160-light.svg +12 -0
- package/brand-assets/svg/Archive/402cat-excited-160-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-excited-160-light.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-160-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-160-light.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-320-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-320-light.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-80-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-facilitator-80-light.svg +12 -0
- package/brand-assets/svg/Archive/402cat-favicon-16-dark.svg +10 -0
- package/brand-assets/svg/Archive/402cat-favicon-16-light.svg +10 -0
- package/brand-assets/svg/Archive/402cat-favicon-32-dark.svg +10 -0
- package/brand-assets/svg/Archive/402cat-favicon-32-light.svg +10 -0
- package/brand-assets/svg/Archive/402cat-og-1200x630-dark.svg +14 -0
- package/brand-assets/svg/Archive/402cat-og-1200x630-light.svg +14 -0
- package/brand-assets/svg/Archive/402cat-server-40-dark.svg +11 -0
- package/brand-assets/svg/Archive/402cat-server-40-light.svg +11 -0
- package/brand-assets/svg/Archive/402cat-server-80-dark.svg +11 -0
- package/brand-assets/svg/Archive/402cat-server-80-light.svg +11 -0
- package/brand-assets/svg/Archive/402cat-sleeping-160-dark.svg +13 -0
- package/brand-assets/svg/Archive/402cat-sleeping-160-light.svg +13 -0
- package/brand-assets/svg/Archive/402cat-twitter-pfp-dark.svg +12 -0
- package/brand-assets/svg/Archive/402cat-twitter-pfp-light.svg +12 -0
- package/brand-assets/svg/Archive/mark/neko1-kawaii-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko1-kawaii-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko1-right-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko1-right-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko10-pointy-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko10-pointy-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko2-clean-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko2-clean-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko2-left-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko2-left-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko3-both-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko3-both-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko3-money-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko3-money-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko4-beckon-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko4-beckon-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko4-coin-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko4-coin-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko5-compact-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko5-compact-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko5-mini-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko5-mini-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko6-coin-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko6-coin-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko6-money-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko6-money-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko7-lucky-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko7-lucky-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko7-simple-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko7-simple-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko8-classic-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko8-classic-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko8-mini-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko8-mini-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko9-box-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/neko9-box-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/v1-simplified-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/v1-simplified-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/v10-bracket-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/v10-bracket-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/v11b-pointy-wink-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/v11b-pointy-wink-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/v12-face-80-dark.svg +7 -0
- package/brand-assets/svg/Archive/mark/v12-face-80-light.svg +7 -0
- package/brand-assets/svg/Archive/mark/v2-full-80-dark.svg +9 -0
- package/brand-assets/svg/Archive/mark/v2-full-80-light.svg +9 -0
- package/brand-assets/svg/Archive/mark/v3-compact-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/v3-compact-80-light.svg +8 -0
- package/brand-assets/svg/Archive/mark/v4-default-80-dark.svg +9 -0
- package/brand-assets/svg/Archive/mark/v4-default-80-light.svg +9 -0
- package/brand-assets/svg/Archive/mark/v6-ears-bold-80-dark.svg +7 -0
- package/brand-assets/svg/Archive/mark/v6-ears-bold-80-light.svg +7 -0
- package/brand-assets/svg/Archive/mark/v7-ears-wide-80-dark.svg +7 -0
- package/brand-assets/svg/Archive/mark/v7-ears-wide-80-light.svg +7 -0
- package/brand-assets/svg/Archive/mark/v9-box-80-dark.svg +8 -0
- package/brand-assets/svg/Archive/mark/v9-box-80-light.svg +8 -0
- package/brand-assets/svg/Archive.zip +0 -0
- package/brand-assets/svg/expressions/box-cat-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/box-cat-160-light.svg +8 -0
- package/brand-assets/svg/expressions/bracket-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/bracket-160-light.svg +8 -0
- package/brand-assets/svg/expressions/compact-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/compact-160-light.svg +8 -0
- package/brand-assets/svg/expressions/default-160-dark.svg +9 -0
- package/brand-assets/svg/expressions/default-160-light.svg +9 -0
- package/brand-assets/svg/expressions/ears-bold-160-dark.svg +7 -0
- package/brand-assets/svg/expressions/ears-bold-160-light.svg +7 -0
- package/brand-assets/svg/expressions/ears-only-160-dark.svg +7 -0
- package/brand-assets/svg/expressions/ears-only-160-light.svg +7 -0
- package/brand-assets/svg/expressions/ears-wide-160-dark.svg +7 -0
- package/brand-assets/svg/expressions/ears-wide-160-light.svg +7 -0
- package/brand-assets/svg/expressions/excited-160-dark.svg +9 -0
- package/brand-assets/svg/expressions/excited-160-light.svg +9 -0
- package/brand-assets/svg/expressions/face-only-160-dark.svg +7 -0
- package/brand-assets/svg/expressions/face-only-160-light.svg +7 -0
- package/brand-assets/svg/expressions/minimal-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/minimal-160-light.svg +8 -0
- package/brand-assets/svg/expressions/pointy-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/pointy-160-light.svg +8 -0
- package/brand-assets/svg/expressions/simplified-160-dark.svg +8 -0
- package/brand-assets/svg/expressions/simplified-160-light.svg +8 -0
- package/brand-assets/svg/expressions/sleeping-160-dark.svg +10 -0
- package/brand-assets/svg/expressions/sleeping-160-light.svg +10 -0
- package/brand-assets/svg/expressions/winking-160-dark.svg +9 -0
- package/brand-assets/svg/expressions/winking-160-light.svg +9 -0
- package/brand-assets/svg/expressions-paths/compact-160-dark.svg +42 -0
- package/brand-assets/svg/expressions-paths/compact-160-light.svg +42 -0
- package/brand-assets/svg/expressions-paths/default-160-dark.svg +47 -0
- package/brand-assets/svg/expressions-paths/default-160-light.svg +47 -0
- package/brand-assets/svg/expressions-paths/minimal-160-dark.svg +42 -0
- package/brand-assets/svg/expressions-paths/minimal-160-light.svg +42 -0
- package/brand-assets/svg/expressions-paths/pointy-160-dark.svg +42 -0
- package/brand-assets/svg/expressions-paths/pointy-160-light.svg +42 -0
- package/brand-assets/svg/expressions-paths/simplified-160-dark.svg +42 -0
- package/brand-assets/svg/expressions-paths/simplified-160-light.svg +42 -0
- package/brand-assets/svg/expressions-paths/winking-160-dark.svg +47 -0
- package/brand-assets/svg/expressions-paths/winking-160-light.svg +47 -0
- package/brand-assets/svg/favicon/apple-touch-180-dark.svg +8 -0
- package/brand-assets/svg/favicon/apple-touch-180-light.svg +8 -0
- package/brand-assets/svg/favicon/favicon-16-dark.svg +8 -0
- package/brand-assets/svg/favicon/favicon-16-light.svg +8 -0
- package/brand-assets/svg/favicon/favicon-32-dark.svg +11 -0
- package/brand-assets/svg/favicon/favicon-32-light.svg +11 -0
- package/brand-assets/svg/favicon/favicon-48-dark.svg +8 -0
- package/brand-assets/svg/favicon/favicon-48-light.svg +8 -0
- package/brand-assets/svg/favicon/v11-pointy-path-16-dark.svg +18 -0
- package/brand-assets/svg/favicon/v11-pointy-path-32-dark.svg +19 -0
- package/brand-assets/svg/favicon/v4-ears-32-dark.svg +7 -0
- package/brand-assets/svg/favicon/v4-ears-32-light.svg +7 -0
- package/brand-assets/svg/favicon/v5-pointy-32-dark.svg +8 -0
- package/brand-assets/svg/favicon/v5-pointy-32-light.svg +8 -0
- package/brand-assets/svg/favicon/v6-minimal-32-dark.svg +8 -0
- package/brand-assets/svg/favicon/v6-minimal-32-light.svg +8 -0
- package/brand-assets/svg/favicon/v7-ears-only-32-dark.svg +5 -0
- package/brand-assets/svg/favicon/v7-ears-only-32-light.svg +5 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-16-dark.svg +4 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-16-light.svg +4 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-48-dark.svg +4 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-48-light.svg +4 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-96-dark.svg +4 -0
- package/brand-assets/svg/favicon-paths/v12-ears-only-96-light.svg +4 -0
- package/brand-assets/svg/favicon-paths/v6-minimal-32-dark.svg +42 -0
- package/brand-assets/svg/favicon-paths/v6-minimal-32-light.svg +42 -0
- package/brand-assets/svg/favicon-paths/v7-ears-only-32-dark.svg +34 -0
- package/brand-assets/svg/favicon-paths/v7-ears-only-32-light.svg +34 -0
- package/brand-assets/svg/mark/facilitator-160-dark.svg +11 -0
- package/brand-assets/svg/mark/facilitator-160-light.svg +11 -0
- package/brand-assets/svg/mark/facilitator-320-dark.svg +12 -0
- package/brand-assets/svg/mark/facilitator-320-light.svg +12 -0
- package/brand-assets/svg/mark/facilitator-40-dark.svg +11 -0
- package/brand-assets/svg/mark/facilitator-40-light.svg +11 -0
- package/brand-assets/svg/mark/facilitator-44-dark.svg +8 -0
- package/brand-assets/svg/mark/facilitator-44-light.svg +8 -0
- package/brand-assets/svg/mark/facilitator-72-dark.svg +8 -0
- package/brand-assets/svg/mark/facilitator-72-light.svg +8 -0
- package/brand-assets/svg/mark/facilitator-80-dark.svg +11 -0
- package/brand-assets/svg/mark/facilitator-80-light.svg +11 -0
- package/brand-assets/svg/mark/facilitator-ears-44-dark.svg +7 -0
- package/brand-assets/svg/mark/facilitator-ears-44-light.svg +7 -0
- package/brand-assets/svg/mark/facilitator-ears-72-dark.svg +7 -0
- package/brand-assets/svg/mark/facilitator-ears-72-light.svg +7 -0
- package/brand-assets/svg/mark/facilitator-pointy-44-dark.svg +8 -0
- package/brand-assets/svg/mark/facilitator-pointy-44-light.svg +8 -0
- package/brand-assets/svg/mark/facilitator-pointy-72-dark.svg +8 -0
- package/brand-assets/svg/mark/facilitator-pointy-72-light.svg +8 -0
- package/brand-assets/svg/mark/v11-pointy-80-dark.svg +8 -0
- package/brand-assets/svg/mark/v11-pointy-80-light.svg +8 -0
- package/brand-assets/svg/mark/v11-pointy-path-160-dark.svg +13 -0
- package/brand-assets/svg/mark/v11-pointy-path-180-dark.svg +13 -0
- package/brand-assets/svg/mark/v11-pointy-path-320-dark.svg +13 -0
- package/brand-assets/svg/mark/v11-pointy-path-40-dark.svg +13 -0
- package/brand-assets/svg/mark/v11-pointy-path-80-dark.svg +26 -0
- package/brand-assets/svg/mark/v11-pointy-path-80-light.svg +26 -0
- package/brand-assets/svg/mark/v11-pointy-path-transparent.svg +25 -0
- package/brand-assets/svg/mark/v12-ears-only-1000-dark.svg +7 -0
- package/brand-assets/svg/mark/v12-ears-only-80-dark.svg +7 -0
- package/brand-assets/svg/mark/v12-ears-only-80-light.svg +7 -0
- package/brand-assets/svg/mark/v5-ears-80-dark.svg +7 -0
- package/brand-assets/svg/mark/v5-ears-80-light.svg +7 -0
- package/brand-assets/svg/mark/v8-minimal-80-dark.svg +8 -0
- package/brand-assets/svg/mark/v8-minimal-80-light.svg +8 -0
- package/brand-assets/svg/mark-paths/facilitator-80-dark.svg +46 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-160-dark.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-160-light.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-180-dark.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-180-light.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-320-dark.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-320-light.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-40-dark.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-40-light.svg +4 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-80-dark.svg +37 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-80-light.svg +37 -0
- package/brand-assets/svg/mark-paths/v12-ears-only-transparent.svg +4 -0
- package/brand-assets/svg/server/icon-40-dark.svg +8 -0
- package/brand-assets/svg/server/icon-40-light.svg +8 -0
- package/brand-assets/svg/server/icon-80-dark.svg +8 -0
- package/brand-assets/svg/server/icon-80-light.svg +8 -0
- package/brand-assets/svg/social/banner-1200x400-dark.svg +14 -0
- package/brand-assets/svg/social/banner-1200x400-light.svg +14 -0
- package/brand-assets/svg/social/banner-cat-ticker-1500x500-dark.svg +7 -0
- package/brand-assets/svg/social/banner-cat-ticker-1500x500-light.svg +7 -0
- package/brand-assets/svg/social/banner-cat1-left-dark.svg +10 -0
- package/brand-assets/svg/social/banner-cat1-left-light.svg +10 -0
- package/brand-assets/svg/social/banner-cat2-right-dark.svg +10 -0
- package/brand-assets/svg/social/banner-cat2-right-light.svg +10 -0
- package/brand-assets/svg/social/banner-cat3-stacked-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cat3-stacked-light.svg +9 -0
- package/brand-assets/svg/social/banner-cat4-wordmark-dark.svg +8 -0
- package/brand-assets/svg/social/banner-cat4-wordmark-light.svg +8 -0
- package/brand-assets/svg/social/banner-cc1-left-dark.svg +10 -0
- package/brand-assets/svg/social/banner-cc1-left-light.svg +10 -0
- package/brand-assets/svg/social/banner-cc2-right-dark.svg +10 -0
- package/brand-assets/svg/social/banner-cc2-right-light.svg +10 -0
- package/brand-assets/svg/social/banner-cc3-stacked-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cc3-stacked-light.svg +9 -0
- package/brand-assets/svg/social/banner-cc4-centered-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cc4-centered-light.svg +9 -0
- package/brand-assets/svg/social/banner-cc5-right-big-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cc5-right-big-light.svg +9 -0
- package/brand-assets/svg/social/banner-cc6-ears-right-dark.svg +8 -0
- package/brand-assets/svg/social/banner-cc6-ears-right-light.svg +8 -0
- package/brand-assets/svg/social/banner-cc7-wordmark-dark.svg +8 -0
- package/brand-assets/svg/social/banner-cc7-wordmark-light.svg +8 -0
- package/brand-assets/svg/social/banner-cc8-minimal-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cc8-minimal-light.svg +9 -0
- package/brand-assets/svg/social/banner-cc9-dramatic-dark.svg +9 -0
- package/brand-assets/svg/social/banner-cc9-dramatic-light.svg +9 -0
- package/brand-assets/svg/social/banner-ccat1-left-dark.svg +10 -0
- package/brand-assets/svg/social/banner-ccat1-left-light.svg +10 -0
- package/brand-assets/svg/social/banner-ccat2-right-dark.svg +10 -0
- package/brand-assets/svg/social/banner-ccat2-right-light.svg +10 -0
- package/brand-assets/svg/social/banner-ccat3-stacked-dark.svg +9 -0
- package/brand-assets/svg/social/banner-ccat3-stacked-light.svg +9 -0
- package/brand-assets/svg/social/banner-ccat4-wordmark-dark.svg +8 -0
- package/brand-assets/svg/social/banner-ccat4-wordmark-light.svg +8 -0
- package/brand-assets/svg/social/banner-sn1-snuggle-dark.svg +10 -0
- package/brand-assets/svg/social/banner-sn1-snuggle-light.svg +10 -0
- package/brand-assets/svg/social/banner-sn2-snuggle-big-dark.svg +9 -0
- package/brand-assets/svg/social/banner-sn2-snuggle-big-light.svg +9 -0
- package/brand-assets/svg/social/banner-sn3-snuggle-centered-dark.svg +10 -0
- package/brand-assets/svg/social/banner-sn3-snuggle-centered-light.svg +10 -0
- package/brand-assets/svg/social/banner-sn4-snuggle-simple-dark.svg +9 -0
- package/brand-assets/svg/social/banner-sn4-snuggle-simple-light.svg +9 -0
- package/brand-assets/svg/social/banner-sn5-snuggle-compact-dark.svg +9 -0
- package/brand-assets/svg/social/banner-sn5-snuggle-compact-light.svg +9 -0
- package/brand-assets/svg/social/banner-v1-left-dark.svg +10 -0
- package/brand-assets/svg/social/banner-v1-left-light.svg +10 -0
- package/brand-assets/svg/social/banner-v10-dramatic-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v10-dramatic-light.svg +9 -0
- package/brand-assets/svg/social/banner-v11-bold-right-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v11-bold-right-light.svg +8 -0
- package/brand-assets/svg/social/banner-v12-pointy-right-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v12-pointy-right-light.svg +9 -0
- package/brand-assets/svg/social/banner-v13-ears-twitter-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v13-ears-twitter-light.svg +8 -0
- package/brand-assets/svg/social/banner-v14-bold-twitter-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v14-bold-twitter-light.svg +8 -0
- package/brand-assets/svg/social/banner-v15-pointy-twitter-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v15-pointy-twitter-light.svg +9 -0
- package/brand-assets/svg/social/banner-v16-pointy-wink-twitter-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v16-pointy-wink-twitter-light.svg +9 -0
- package/brand-assets/svg/social/banner-v17-bold-twitter-big-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v17-bold-twitter-big-light.svg +8 -0
- package/brand-assets/svg/social/banner-v2-right-dark.svg +10 -0
- package/brand-assets/svg/social/banner-v2-right-light.svg +10 -0
- package/brand-assets/svg/social/banner-v3-stacked-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v3-stacked-light.svg +9 -0
- package/brand-assets/svg/social/banner-v4-minimal-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v4-minimal-light.svg +9 -0
- package/brand-assets/svg/social/banner-v5-right-far-dark.svg +10 -0
- package/brand-assets/svg/social/banner-v5-right-far-light.svg +10 -0
- package/brand-assets/svg/social/banner-v6-right-big-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v6-right-big-light.svg +9 -0
- package/brand-assets/svg/social/banner-v7-centered-dark.svg +9 -0
- package/brand-assets/svg/social/banner-v7-centered-light.svg +9 -0
- package/brand-assets/svg/social/banner-v8-wordmark-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v8-wordmark-light.svg +8 -0
- package/brand-assets/svg/social/banner-v9-ears-right-dark.svg +8 -0
- package/brand-assets/svg/social/banner-v9-ears-right-light.svg +8 -0
- package/brand-assets/svg/social/og-1200x630-dark.svg +16 -0
- package/brand-assets/svg/social/og-1200x630-light.svg +16 -0
- package/brand-assets/svg/social/og-1200x630-v2-dark.svg +73 -0
- package/brand-assets/svg/social/og-box-centered-dark.svg +10 -0
- package/brand-assets/svg/social/og-box-centered-light.svg +10 -0
- package/brand-assets/svg/social/og-cat1-centered-dark.svg +10 -0
- package/brand-assets/svg/social/og-cat1-centered-light.svg +10 -0
- package/brand-assets/svg/social/og-cat2-hero-dark.svg +11 -0
- package/brand-assets/svg/social/og-cat2-hero-light.svg +11 -0
- package/brand-assets/svg/social/og-cat3-minimal-dark.svg +10 -0
- package/brand-assets/svg/social/og-cat3-minimal-light.svg +10 -0
- package/brand-assets/svg/social/og-cc1-centered-dark.svg +11 -0
- package/brand-assets/svg/social/og-cc1-centered-light.svg +11 -0
- package/brand-assets/svg/social/og-cc2-hero-dark.svg +10 -0
- package/brand-assets/svg/social/og-cc2-hero-light.svg +10 -0
- package/brand-assets/svg/social/og-cc3-minimal-dark.svg +10 -0
- package/brand-assets/svg/social/og-cc3-minimal-light.svg +10 -0
- package/brand-assets/svg/social/og-cc4-split-dark.svg +11 -0
- package/brand-assets/svg/social/og-cc4-split-light.svg +11 -0
- package/brand-assets/svg/social/og-feral-a.svg +68 -0
- package/brand-assets/svg/social/og-feral-b.svg +80 -0
- package/brand-assets/svg/social/og-feral-c.svg +73 -0
- package/brand-assets/svg/social/og-feral-d.svg +63 -0
- package/brand-assets/svg/social/og-minimal-centered-dark.svg +10 -0
- package/brand-assets/svg/social/og-minimal-centered-light.svg +10 -0
- package/brand-assets/svg/social/og-neko1-kawaii-dark.svg +10 -0
- package/brand-assets/svg/social/og-neko1-kawaii-light.svg +10 -0
- package/brand-assets/svg/social/og-neko2-money-dark.svg +10 -0
- package/brand-assets/svg/social/og-neko2-money-light.svg +10 -0
- package/brand-assets/svg/social/og-neko3-lucky-dark.svg +10 -0
- package/brand-assets/svg/social/og-neko3-lucky-light.svg +10 -0
- package/brand-assets/svg/social/og-neko4-clean-dark.svg +10 -0
- package/brand-assets/svg/social/og-neko4-clean-light.svg +10 -0
- package/brand-assets/svg/social/og-pointy-hero-dark.svg +10 -0
- package/brand-assets/svg/social/og-pointy-hero-light.svg +10 -0
- package/brand-assets/svg/social/og-v1-centered-dark.svg +11 -0
- package/brand-assets/svg/social/og-v1-centered-light.svg +11 -0
- package/brand-assets/svg/social/og-v11-pointy-1200x630-dark.svg +38 -0
- package/brand-assets/svg/social/og-v11-pointy-1200x630-light.svg +38 -0
- package/brand-assets/svg/social/og-v12-ears-1200x630-dark.svg +5 -0
- package/brand-assets/svg/social/og-v12-ears-1200x630-light.svg +5 -0
- package/brand-assets/svg/social/og-v12-ticker-1200x630-dark.svg +6 -0
- package/brand-assets/svg/social/og-v12-ticker-1200x630-light.svg +6 -0
- package/brand-assets/svg/social/og-v2-split-dark.svg +11 -0
- package/brand-assets/svg/social/og-v2-split-light.svg +11 -0
- package/brand-assets/svg/social/og-v2-variation-a.svg +74 -0
- package/brand-assets/svg/social/og-v2-variation-b.svg +63 -0
- package/brand-assets/svg/social/og-v2-variation-c.svg +71 -0
- package/brand-assets/svg/social/og-v3-hero-dark.svg +11 -0
- package/brand-assets/svg/social/og-v3-hero-light.svg +11 -0
- package/brand-assets/svg/social/og-v4-minimal-dark.svg +10 -0
- package/brand-assets/svg/social/og-v4-minimal-light.svg +10 -0
- package/brand-assets/svg/social/pfp-ears-400-dark.svg +5 -0
- package/brand-assets/svg/social/pfp-ears-400-light.svg +5 -0
- package/brand-assets/svg/social/pfp-v5-pointy-dark.svg +8 -0
- package/brand-assets/svg/social/pfp-v5-pointy-light.svg +8 -0
- package/brand-assets/svg/social/twitter-banner-v11-1500x500-dark.svg +35 -0
- package/brand-assets/svg/social/twitter-pfp-400-dark.svg +12 -0
- package/brand-assets/svg/social/twitter-pfp-400-light.svg +12 -0
- package/brand-assets/svg/social/twitter-pfp-v11-400-dark.svg +20 -0
- package/brand-assets/svg/social-paths/banner-cat-ticker-1500x500-dark.svg +44 -0
- package/brand-assets/svg/social-paths/banner-cat-ticker-1500x500-light.svg +44 -0
- package/brand-assets/svg/social-paths/og-v12-ears-1200x630-dark.svg +34 -0
- package/brand-assets/svg/social-paths/og-v12-ears-1200x630-light.svg +34 -0
- package/brand-assets/svg/social-paths/og-v12-ticker-1200x630-dark.svg +39 -0
- package/brand-assets/svg/social-paths/og-v12-ticker-1200x630-light.svg +39 -0
- package/brand-assets/svg/social-paths/pfp-ears-400-dark.svg +35 -0
- package/brand-assets/svg/social-paths/pfp-ears-400-light.svg +35 -0
- package/brand-assets/svg/social-paths/twitter-pfp-400-dark.svg +51 -0
- package/brand-assets/svg/social-paths/twitter-pfp-400-light.svg +51 -0
- package/brand-assets/svg/web/apple-touch-icon-180.svg +4 -0
- package/brand-assets/svg/web/favicon-32-dark.svg +4 -0
- package/brand-assets/svg/web/favicon-32-light.svg +4 -0
- package/brand-assets/svg/web/mark-80-alert.svg +4 -0
- package/brand-assets/svg/web/mark-80-dark.svg +4 -0
- package/brand-assets/svg/web/mark-80-light.svg +4 -0
- package/brand-assets/svg/web/mark-80-success.svg +4 -0
- package/brand-assets/svg/web/mark-80-wink.svg +4 -0
- package/brand-assets/svg/web/og-image-1200x630.svg +13 -0
- package/bun.lock +260 -25
- package/dist/agent/autonomous-trader.d.ts.map +1 -0
- package/dist/agent/autonomous-trader.js +362 -0
- package/dist/agent/autonomous-trader.js.map +1 -0
- package/dist/agent/ax-agent.d.ts.map +1 -1
- package/dist/agent/ax-agent.js +356 -18
- package/dist/agent/ax-agent.js.map +1 -1
- package/dist/agent/event-client.d.ts.map +1 -0
- package/dist/agent/event-client.js +82 -0
- package/dist/agent/event-client.js.map +1 -0
- package/dist/agent/log-stream.d.ts.map +1 -0
- package/dist/agent/log-stream.js +95 -0
- package/dist/agent/log-stream.js.map +1 -0
- package/dist/agent/memory/conversation-session.d.ts.map +1 -0
- package/dist/agent/memory/conversation-session.js +232 -0
- package/dist/agent/memory/conversation-session.js.map +1 -0
- package/dist/agent/memory/conversation-store.d.ts.map +1 -0
- package/dist/agent/memory/conversation-store.js +214 -0
- package/dist/agent/memory/conversation-store.js.map +1 -0
- package/dist/agent/memory/database-schema.d.ts.map +1 -0
- package/dist/agent/memory/database-schema.js +355 -0
- package/dist/agent/memory/database-schema.js.map +1 -0
- package/dist/agent/memory/decision-tracker.d.ts.map +1 -0
- package/dist/agent/memory/decision-tracker.js +274 -0
- package/dist/agent/memory/decision-tracker.js.map +1 -0
- package/dist/agent/memory/memory-manager.d.ts.map +1 -0
- package/dist/agent/memory/memory-manager.js +187 -0
- package/dist/agent/memory/memory-manager.js.map +1 -0
- package/dist/agent/memory/types.d.ts.map +1 -0
- package/dist/agent/memory/types.js +5 -0
- package/dist/agent/memory/types.js.map +1 -0
- package/dist/agent/message-formatter.d.ts.map +1 -0
- package/dist/agent/message-formatter.js +76 -0
- package/dist/agent/message-formatter.js.map +1 -0
- package/dist/agent/position-db.d.ts.map +1 -0
- package/dist/agent/position-db.js +154 -0
- package/dist/agent/position-db.js.map +1 -0
- package/dist/agent/simple-chat-ui-static.d.ts.map +1 -0
- package/dist/agent/simple-chat-ui-static.js +129 -0
- package/dist/agent/simple-chat-ui-static.js.map +1 -0
- package/dist/agent/simple-chat-ui.d.ts.map +1 -0
- package/dist/agent/simple-chat-ui.js +90 -0
- package/dist/agent/simple-chat-ui.js.map +1 -0
- package/dist/agent/tools.d.ts.map +1 -1
- package/dist/agent/tools.js +297 -4
- package/dist/agent/tools.js.map +1 -1
- package/dist/agent/ui.d.ts.map +1 -0
- package/dist/agent/ui.js +84 -0
- package/dist/agent/ui.js.map +1 -0
- package/dist/agent/unified-runtime.d.ts.map +1 -0
- package/dist/agent/unified-runtime.js +397 -0
- package/dist/agent/unified-runtime.js.map +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +274 -21
- package/dist/client.js.map +1 -1
- package/dist/commands/account.d.ts.map +1 -1
- package/dist/commands/account.js +187 -33
- package/dist/commands/account.js.map +1 -1
- package/dist/commands/agent.d.ts.map +1 -0
- package/dist/commands/agent.js +125 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/approve.d.ts.map +1 -0
- package/dist/commands/approve.js +505 -0
- package/dist/commands/approve.js.map +1 -0
- package/dist/commands/automation.d.ts.map +1 -0
- package/dist/commands/automation.js +346 -0
- package/dist/commands/automation.js.map +1 -0
- package/dist/commands/balances.d.ts.map +1 -1
- package/dist/commands/balances.js +226 -73
- package/dist/commands/balances.js.map +1 -1
- package/dist/commands/buy.d.ts.map +1 -1
- package/dist/commands/buy.js +149 -146
- package/dist/commands/buy.js.map +1 -1
- package/dist/commands/call.d.ts.map +1 -0
- package/dist/commands/call.js +51 -0
- package/dist/commands/call.js.map +1 -0
- package/dist/commands/cex.d.ts.map +1 -0
- package/dist/commands/cex.js +958 -0
- package/dist/commands/cex.js.map +1 -0
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +169 -411
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/claim.d.ts.map +1 -1
- package/dist/commands/claim.js +313 -29
- package/dist/commands/claim.js.map +1 -1
- package/dist/commands/create.d.ts.map +1 -1
- package/dist/commands/create.js +151 -43
- package/dist/commands/create.js.map +1 -1
- package/dist/commands/gasless-swap.d.ts.map +1 -0
- package/dist/commands/gasless-swap.js +232 -0
- package/dist/commands/gasless-swap.js.map +1 -0
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +63 -7
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +131 -47
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/launchpad.d.ts.map +1 -0
- package/dist/commands/launchpad.js +708 -0
- package/dist/commands/launchpad.js.map +1 -0
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +57 -23
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/market.d.ts.map +1 -0
- package/dist/commands/market.js +960 -0
- package/dist/commands/market.js.map +1 -0
- package/dist/commands/mcp-install.d.ts.map +1 -0
- package/dist/commands/mcp-install.js +387 -0
- package/dist/commands/mcp-install.js.map +1 -0
- package/dist/commands/opps.d.ts.map +1 -0
- package/dist/commands/opps.js +409 -0
- package/dist/commands/opps.js.map +1 -0
- package/dist/commands/perps.d.ts.map +1 -0
- package/dist/commands/perps.js +248 -0
- package/dist/commands/perps.js.map +1 -0
- package/dist/commands/portfolio.d.ts.map +1 -0
- package/dist/commands/portfolio.js +679 -0
- package/dist/commands/portfolio.js.map +1 -0
- package/dist/commands/positions.d.ts.map +1 -1
- package/dist/commands/positions.js +76 -47
- package/dist/commands/positions.js.map +1 -1
- package/dist/commands/predict.d.ts.map +1 -0
- package/dist/commands/predict.js +280 -0
- package/dist/commands/predict.js.map +1 -0
- package/dist/commands/predictions.d.ts.map +1 -0
- package/dist/commands/predictions.js +486 -0
- package/dist/commands/predictions.js.map +1 -0
- package/dist/commands/risk.d.ts.map +1 -0
- package/dist/commands/risk.js +225 -0
- package/dist/commands/risk.js.map +1 -0
- package/dist/commands/security.d.ts.map +1 -0
- package/dist/commands/security.js +244 -0
- package/dist/commands/security.js.map +1 -0
- package/dist/commands/sell.d.ts.map +1 -1
- package/dist/commands/sell.js +67 -34
- package/dist/commands/sell.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +733 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/sign.d.ts.map +1 -0
- package/dist/commands/sign.js +1048 -0
- package/dist/commands/sign.js.map +1 -0
- package/dist/commands/swap.d.ts.map +1 -0
- package/dist/commands/swap.js +744 -0
- package/dist/commands/swap.js.map +1 -0
- package/dist/commands/system.d.ts.map +1 -0
- package/dist/commands/system.js +417 -0
- package/dist/commands/system.js.map +1 -0
- package/dist/commands/tools/index.d.ts.map +1 -0
- package/dist/commands/tools/index.js +2040 -0
- package/dist/commands/tools/index.js.map +1 -0
- package/dist/commands/trade.d.ts.map +1 -0
- package/dist/commands/trade.js +237 -0
- package/dist/commands/trade.js.map +1 -0
- package/dist/commands/transactions.d.ts.map +1 -1
- package/dist/commands/transactions.js +29 -17
- package/dist/commands/transactions.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +429 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +351 -40
- package/dist/config.js.map +1 -1
- package/dist/index.js +4525 -924
- package/dist/index.js.map +1 -1
- package/dist/interactive/art.d.ts.map +1 -1
- package/dist/interactive/art.js +33 -1
- package/dist/interactive/art.js.map +1 -1
- package/dist/interactive/shell.d.ts.map +1 -1
- package/dist/interactive/shell.js +467 -2652
- package/dist/interactive/shell.js.map +1 -1
- package/dist/mcp/context.d.ts.map +1 -0
- package/dist/mcp/context.js +211 -0
- package/dist/mcp/context.js.map +1 -0
- package/dist/mcp/onboarding.d.ts.map +1 -0
- package/dist/mcp/onboarding.js +266 -0
- package/dist/mcp/onboarding.js.map +1 -0
- package/dist/mcp/resources.d.ts.map +1 -0
- package/dist/mcp/resources.js +222 -0
- package/dist/mcp/resources.js.map +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +51 -1
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +4119 -169
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/types/agent-info.d.ts.map +1 -0
- package/dist/types/agent-info.js +11 -0
- package/dist/types/agent-info.js.map +1 -0
- package/dist/ui/components/ScrollableList.d.ts.map +1 -0
- package/dist/ui/components/ScrollableList.js +72 -0
- package/dist/ui/components/ScrollableList.js.map +1 -0
- package/dist/ui/components/ThemeProvider.d.ts.map +1 -0
- package/dist/ui/components/ThemeProvider.js +87 -0
- package/dist/ui/components/ThemeProvider.js.map +1 -0
- package/dist/ui/components/ThemedBox.d.ts.map +1 -0
- package/dist/ui/components/ThemedBox.js +24 -0
- package/dist/ui/components/ThemedBox.js.map +1 -0
- package/dist/ui/components/agent/ChatHeader.d.ts.map +1 -0
- package/dist/ui/components/agent/ChatHeader.js +39 -0
- package/dist/ui/components/agent/ChatHeader.js.map +1 -0
- package/dist/ui/components/agent/Header.d.ts.map +1 -0
- package/dist/ui/components/agent/Header.js +14 -0
- package/dist/ui/components/agent/Header.js.map +1 -0
- package/dist/ui/components/agent/Input.d.ts.map +1 -0
- package/dist/ui/components/agent/Input.js +23 -0
- package/dist/ui/components/agent/Input.js.map +1 -0
- package/dist/ui/components/agent/Output.d.ts.map +1 -0
- package/dist/ui/components/agent/Output.js +23 -0
- package/dist/ui/components/agent/Output.js.map +1 -0
- package/dist/ui/components/chat/TokenChatUI.d.ts.map +1 -0
- package/dist/ui/components/chat/TokenChatUI.js +133 -0
- package/dist/ui/components/chat/TokenChatUI.js.map +1 -0
- package/dist/ui/components/shell/ShellHeader.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellHeader.js +31 -0
- package/dist/ui/components/shell/ShellHeader.js.map +1 -0
- package/dist/ui/components/shell/ShellInput.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellInput.js +151 -0
- package/dist/ui/components/shell/ShellInput.js.map +1 -0
- package/dist/ui/components/shell/ShellOutput.d.ts.map +1 -0
- package/dist/ui/components/shell/ShellOutput.js +8 -0
- package/dist/ui/components/shell/ShellOutput.js.map +1 -0
- package/dist/ui/hooks/useChatWebSocket.d.ts.map +1 -0
- package/dist/ui/hooks/useChatWebSocket.js +76 -0
- package/dist/ui/hooks/useChatWebSocket.js.map +1 -0
- package/dist/ui/hooks/useCommandHistory.d.ts.map +1 -0
- package/dist/ui/hooks/useCommandHistory.js +70 -0
- package/dist/ui/hooks/useCommandHistory.js.map +1 -0
- package/dist/ui/hooks/useDebounce.d.ts.map +1 -0
- package/dist/ui/hooks/useDebounce.js +17 -0
- package/dist/ui/hooks/useDebounce.js.map +1 -0
- package/dist/ui/hooks/useLogStream.d.ts.map +1 -0
- package/dist/ui/hooks/useLogStream.js +20 -0
- package/dist/ui/hooks/useLogStream.js.map +1 -0
- package/dist/ui/hooks/useVirtualScroll.d.ts.map +1 -0
- package/dist/ui/hooks/useVirtualScroll.js +70 -0
- package/dist/ui/hooks/useVirtualScroll.js.map +1 -0
- package/dist/utils/admin.d.ts.map +1 -0
- package/dist/utils/admin.js +144 -0
- package/dist/utils/admin.js.map +1 -0
- package/dist/utils/autoSetup.d.ts.map +1 -0
- package/dist/utils/autoSetup.js +252 -0
- package/dist/utils/autoSetup.js.map +1 -0
- package/dist/utils/build-constants.d.ts.map +1 -0
- package/dist/utils/build-constants.js +10 -0
- package/dist/utils/build-constants.js.map +1 -0
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +10 -1
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/formatting.d.ts.map +1 -1
- package/dist/utils/formatting.js +46 -9
- package/dist/utils/formatting.js.map +1 -1
- package/dist/utils/llm-cli-config.d.ts.map +1 -0
- package/dist/utils/llm-cli-config.js +963 -0
- package/dist/utils/llm-cli-config.js.map +1 -0
- package/dist/utils/llm-cli-detector.d.ts.map +1 -0
- package/dist/utils/llm-cli-detector.js +202 -0
- package/dist/utils/llm-cli-detector.js.map +1 -0
- package/dist/utils/loading.d.ts.map +1 -1
- package/dist/utils/loading.js +25 -3
- package/dist/utils/loading.js.map +1 -1
- package/dist/utils/maintenance.d.ts.map +1 -0
- package/dist/utils/maintenance.js +17 -0
- package/dist/utils/maintenance.js.map +1 -0
- package/dist/utils/mcp-config.d.ts.map +1 -0
- package/dist/utils/mcp-config.js +77 -0
- package/dist/utils/mcp-config.js.map +1 -0
- package/dist/utils/privateKeyPrompt.d.ts.map +1 -1
- package/dist/utils/privateKeyPrompt.js +308 -129
- package/dist/utils/privateKeyPrompt.js.map +1 -1
- package/dist/utils/process-cleanup.d.ts.map +1 -0
- package/dist/utils/process-cleanup.js +136 -0
- package/dist/utils/process-cleanup.js.map +1 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +56 -0
- package/dist/utils/retry.js.map +1 -0
- package/dist/utils/rpc-helpers.d.ts.map +1 -0
- package/dist/utils/rpc-helpers.js +70 -0
- package/dist/utils/rpc-helpers.js.map +1 -0
- package/dist/utils/rpc-transport.d.ts.map +1 -0
- package/dist/utils/rpc-transport.js +87 -0
- package/dist/utils/rpc-transport.js.map +1 -0
- package/dist/utils/shell-setup.d.ts.map +1 -0
- package/dist/utils/shell-setup.js +531 -0
- package/dist/utils/shell-setup.js.map +1 -0
- package/dist/utils/status.d.ts.map +1 -1
- package/dist/utils/status.js +34 -5
- package/dist/utils/status.js.map +1 -1
- package/dist/utils/token-resolver.d.ts.map +1 -1
- package/dist/utils/token-resolver.js +51 -8
- package/dist/utils/token-resolver.js.map +1 -1
- package/dist/utils/x402-caller.d.ts.map +1 -0
- package/dist/utils/x402-caller.js +17 -0
- package/dist/utils/x402-caller.js.map +1 -0
- package/docs/README.md +28 -0
- package/docs/agent/README.md +18 -0
- package/docs/api/README.md +41 -0
- package/docs/cli/README.md +42 -0
- package/docs/guides/README.md +26 -0
- package/docs/implementation/README.md +18 -0
- package/docs/planning/README.md +19 -0
- package/docs/testing/README.md +15 -0
- package/docs/ux/README.md +16 -0
- package/issues.txt +2 -0
- package/package.json +24 -9
- package/scripts/cat-spin.sh +417 -0
- package/scripts/deprecate-rc-versions.js +58 -0
- package/scripts/inject-build-constants.js +43 -0
- package/scripts/monitor-foobar.js +117 -0
- package/swap.logs +61 -0
- package/swapping.txt +108 -0
- package/test.txt +12 -0
- package/tests/fixtures/test-data.json +16 -0
- package/Screenshot 2025-12-21 at 8.56.02/342/200/257PM.png +0 -0
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Server Onboarding
|
|
3
|
+
*
|
|
4
|
+
* This module handles interactive onboarding when the MCP server starts
|
|
5
|
+
* without a configured wallet. Since MCP uses stdio transport, all prompts
|
|
6
|
+
* must work via stdin/stdout/stderr.
|
|
7
|
+
*
|
|
8
|
+
* Flow:
|
|
9
|
+
* 1. Check if wallet is configured
|
|
10
|
+
* 2. If not, prompt user via stdio for wallet setup
|
|
11
|
+
* 3. Support both seed phrase generation and private key import
|
|
12
|
+
* 4. Save to config file using ConfigManager
|
|
13
|
+
*/
|
|
14
|
+
import { createInterface } from "readline";
|
|
15
|
+
import { config } from "../config.js";
|
|
16
|
+
import { generateSeedPhrase, validateSeedPhrase, seedPhraseToPrivateKey, getAddressFromPrivateKey, } from "../utils/wallet.js";
|
|
17
|
+
import { encryptData } from "../utils/wallet.js";
|
|
18
|
+
/**
|
|
19
|
+
* Check if wallet is configured and run onboarding if needed
|
|
20
|
+
*
|
|
21
|
+
* This function is called when the MCP server starts. If no wallet is configured,
|
|
22
|
+
* it runs an interactive onboarding flow via stdio.
|
|
23
|
+
*
|
|
24
|
+
* @returns Promise that resolves when onboarding is complete (or skipped if already configured)
|
|
25
|
+
* @throws Error if onboarding is cancelled or fails
|
|
26
|
+
*/
|
|
27
|
+
export async function checkAndOnboard() {
|
|
28
|
+
// Check if already configured
|
|
29
|
+
if (config.isConfigured()) {
|
|
30
|
+
return; // Already configured, skip onboarding
|
|
31
|
+
}
|
|
32
|
+
// Check if import mode is enabled via environment variable
|
|
33
|
+
if (process.env.HTTPCAT_IMPORT_MODE === "true") {
|
|
34
|
+
// Write to stderr (stdout is used for MCP protocol)
|
|
35
|
+
process.stderr.write("\n");
|
|
36
|
+
process.stderr.write("⚠️ No wallet configured for httpcat MCP server.\n");
|
|
37
|
+
process.stderr.write("Starting onboarding...\n\n");
|
|
38
|
+
// Prompt user for setup method
|
|
39
|
+
const setupMethod = await promptChoice("How would you like to set up your wallet?", [
|
|
40
|
+
{ value: "generate", label: "Generate new wallet (seed phrase)" },
|
|
41
|
+
{ value: "import_seed", label: "Import existing seed phrase" },
|
|
42
|
+
{ value: "import_key", label: "Import existing private key" },
|
|
43
|
+
], "generate");
|
|
44
|
+
let seedPhrase;
|
|
45
|
+
let privateKey;
|
|
46
|
+
let accountIndex = 0;
|
|
47
|
+
if (setupMethod === "generate") {
|
|
48
|
+
// Generate new seed phrase
|
|
49
|
+
process.stderr.write("\n");
|
|
50
|
+
process.stderr.write("Generating new seed phrase...\n");
|
|
51
|
+
seedPhrase = generateSeedPhrase();
|
|
52
|
+
process.stderr.write("\n");
|
|
53
|
+
process.stderr.write("⚠️ IMPORTANT: Save this seed phrase in a safe place!\n");
|
|
54
|
+
process.stderr.write(" You will need it to recover your wallet.\n");
|
|
55
|
+
process.stderr.write("\n");
|
|
56
|
+
process.stderr.write("Seed phrase:\n");
|
|
57
|
+
process.stderr.write("─".repeat(60) + "\n");
|
|
58
|
+
process.stderr.write(seedPhrase + "\n");
|
|
59
|
+
process.stderr.write("─".repeat(60) + "\n");
|
|
60
|
+
process.stderr.write("\n");
|
|
61
|
+
const confirmed = await promptYesNo("Have you saved the seed phrase? (yes/no): ", false);
|
|
62
|
+
if (!confirmed) {
|
|
63
|
+
throw new Error("Onboarding cancelled - seed phrase not confirmed");
|
|
64
|
+
}
|
|
65
|
+
accountIndex = 1; // First seed-derived account
|
|
66
|
+
}
|
|
67
|
+
else if (setupMethod === "import_seed") {
|
|
68
|
+
// Import existing seed phrase
|
|
69
|
+
process.stderr.write("\n");
|
|
70
|
+
process.stderr.write("Enter your seed phrase (12 or 24 words):\n");
|
|
71
|
+
const inputSeedPhrase = await promptInput("Seed phrase: ");
|
|
72
|
+
if (!validateSeedPhrase(inputSeedPhrase)) {
|
|
73
|
+
throw new Error("Invalid seed phrase format");
|
|
74
|
+
}
|
|
75
|
+
seedPhrase = inputSeedPhrase;
|
|
76
|
+
accountIndex = 1; // First seed-derived account
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
// Import existing private key
|
|
80
|
+
process.stderr.write("\n");
|
|
81
|
+
process.stderr.write("Enter your private key (0x...):\n");
|
|
82
|
+
const inputKey = await promptInput("Private key: ");
|
|
83
|
+
// Validate private key format
|
|
84
|
+
if (!inputKey.startsWith("0x") || inputKey.length !== 66) {
|
|
85
|
+
throw new Error("Invalid private key format: must start with 0x and be 66 characters long");
|
|
86
|
+
}
|
|
87
|
+
privateKey = inputKey;
|
|
88
|
+
accountIndex = 0; // Custom account
|
|
89
|
+
}
|
|
90
|
+
// Prompt for password (optional)
|
|
91
|
+
process.stderr.write("\n");
|
|
92
|
+
const usePassword = await promptYesNo("Would you like to password-protect your wallet? (yes/no): ", false);
|
|
93
|
+
let password = "";
|
|
94
|
+
if (usePassword) {
|
|
95
|
+
process.stderr.write("Enter password (leave empty for no password):\n");
|
|
96
|
+
const password1 = await promptInput("Password: ", true);
|
|
97
|
+
const password2 = await promptInput("Confirm password: ", true);
|
|
98
|
+
if (password1 !== password2) {
|
|
99
|
+
throw new Error("Passwords do not match");
|
|
100
|
+
}
|
|
101
|
+
password = password1;
|
|
102
|
+
}
|
|
103
|
+
// Save to config
|
|
104
|
+
await saveWalletConfig(seedPhrase, privateKey, password, accountIndex);
|
|
105
|
+
process.stderr.write("\n");
|
|
106
|
+
process.stderr.write("✅ Wallet configured successfully!\n");
|
|
107
|
+
process.stderr.write("\n");
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
// Auto-generate seed phrase for new users (silent mode for MCP)
|
|
111
|
+
const { autoSetupWallet } = await import("../utils/autoSetup.js");
|
|
112
|
+
// For MCP, we want minimal output - just write to stderr
|
|
113
|
+
process.stderr.write("\n");
|
|
114
|
+
process.stderr.write("⚠️ No wallet configured. Auto-generating wallet...\n");
|
|
115
|
+
process.stderr.write(" (Set HTTPCAT_IMPORT_MODE=true to use import flow)\n\n");
|
|
116
|
+
const address = await autoSetupWallet();
|
|
117
|
+
process.stderr.write("\n");
|
|
118
|
+
process.stderr.write(`✅ Wallet configured successfully!\n`);
|
|
119
|
+
process.stderr.write(` Address: ${address}\n`);
|
|
120
|
+
process.stderr.write("\n");
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Save wallet configuration to config file
|
|
125
|
+
*/
|
|
126
|
+
async function saveWalletConfig(seedPhrase, privateKey, password, accountIndex) {
|
|
127
|
+
if (seedPhrase) {
|
|
128
|
+
// Save seed phrase
|
|
129
|
+
if (password) {
|
|
130
|
+
const encrypted = encryptData(seedPhrase, password);
|
|
131
|
+
config.setEncryptedSeedPhrase(encrypted, password);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
config.setEncryptedSeedPhrase(seedPhrase, "");
|
|
135
|
+
}
|
|
136
|
+
// Create account entry for seed-derived account
|
|
137
|
+
const seedPrivateKey = seedPhraseToPrivateKey(seedPhrase, 0);
|
|
138
|
+
const address = getAddressFromPrivateKey(seedPrivateKey);
|
|
139
|
+
const accounts = config.getAllAccounts();
|
|
140
|
+
const accountExists = accounts.some((acc) => acc.index === accountIndex);
|
|
141
|
+
if (!accountExists) {
|
|
142
|
+
config.addAccount({
|
|
143
|
+
type: "seed",
|
|
144
|
+
index: accountIndex,
|
|
145
|
+
address,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (privateKey) {
|
|
150
|
+
// Save private key
|
|
151
|
+
// setEncryptedPrivateKey expects the raw private key, not encrypted
|
|
152
|
+
config.setEncryptedPrivateKey(privateKey, password || "");
|
|
153
|
+
// Create account entry for custom account
|
|
154
|
+
const address = getAddressFromPrivateKey(privateKey);
|
|
155
|
+
const accounts = config.getAllAccounts();
|
|
156
|
+
const accountExists = accounts.some((acc) => acc.index === accountIndex);
|
|
157
|
+
if (!accountExists) {
|
|
158
|
+
config.addAccount({
|
|
159
|
+
type: "custom",
|
|
160
|
+
index: accountIndex,
|
|
161
|
+
address,
|
|
162
|
+
encryptedPrivateKey: password
|
|
163
|
+
? encryptData(privateKey, password)
|
|
164
|
+
: privateKey,
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// Set password if provided
|
|
169
|
+
if (password) {
|
|
170
|
+
config.setPassword(password);
|
|
171
|
+
}
|
|
172
|
+
// Set active account
|
|
173
|
+
config.setActiveAccount(accountIndex);
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Prompt user for a choice from a list of options
|
|
177
|
+
*/
|
|
178
|
+
function promptChoice(question, options, defaultValue) {
|
|
179
|
+
return new Promise((resolve) => {
|
|
180
|
+
const rl = createInterface({
|
|
181
|
+
input: process.stdin,
|
|
182
|
+
output: process.stderr, // Use stderr for prompts
|
|
183
|
+
});
|
|
184
|
+
process.stderr.write(question + "\n");
|
|
185
|
+
options.forEach((opt, index) => {
|
|
186
|
+
const marker = defaultValue === opt.value ? "→" : " ";
|
|
187
|
+
process.stderr.write(` ${marker} ${index + 1}. ${opt.label}\n`);
|
|
188
|
+
});
|
|
189
|
+
process.stderr.write("Choice: ");
|
|
190
|
+
rl.question("", (answer) => {
|
|
191
|
+
rl.close();
|
|
192
|
+
const choice = answer.trim();
|
|
193
|
+
if (!choice && defaultValue) {
|
|
194
|
+
resolve(defaultValue);
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
const index = parseInt(choice, 10) - 1;
|
|
198
|
+
if (index >= 0 && index < options.length) {
|
|
199
|
+
resolve(options[index].value);
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
// Try to match by value
|
|
203
|
+
const option = options.find((opt) => opt.value === choice);
|
|
204
|
+
if (option) {
|
|
205
|
+
resolve(option.value);
|
|
206
|
+
}
|
|
207
|
+
else if (defaultValue) {
|
|
208
|
+
resolve(defaultValue);
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
// Default to first option
|
|
212
|
+
resolve(options[0].value);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Prompt user for yes/no answer
|
|
220
|
+
*/
|
|
221
|
+
function promptYesNo(question, defaultValue) {
|
|
222
|
+
return new Promise((resolve) => {
|
|
223
|
+
const rl = createInterface({
|
|
224
|
+
input: process.stdin,
|
|
225
|
+
output: process.stderr,
|
|
226
|
+
});
|
|
227
|
+
const defaultText = defaultValue ? "yes" : "no";
|
|
228
|
+
process.stderr.write(question);
|
|
229
|
+
rl.question("", (answer) => {
|
|
230
|
+
rl.close();
|
|
231
|
+
const trimmed = answer.trim().toLowerCase();
|
|
232
|
+
if (!trimmed) {
|
|
233
|
+
resolve(defaultValue);
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
resolve(trimmed === "yes" || trimmed === "y");
|
|
237
|
+
});
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Prompt user for text input
|
|
242
|
+
*/
|
|
243
|
+
function promptInput(prompt, mask = false) {
|
|
244
|
+
return new Promise((resolve) => {
|
|
245
|
+
const rl = createInterface({
|
|
246
|
+
input: process.stdin,
|
|
247
|
+
output: process.stderr,
|
|
248
|
+
});
|
|
249
|
+
process.stderr.write(prompt);
|
|
250
|
+
// For password input, we need to mask the input
|
|
251
|
+
// This is a simplified version - in production you might want to use a library
|
|
252
|
+
if (mask) {
|
|
253
|
+
// Disable echo
|
|
254
|
+
process.stdin.setRawMode?.(true);
|
|
255
|
+
}
|
|
256
|
+
rl.question("", (answer) => {
|
|
257
|
+
rl.close();
|
|
258
|
+
if (mask) {
|
|
259
|
+
process.stdin.setRawMode?.(false);
|
|
260
|
+
process.stderr.write("\n");
|
|
261
|
+
}
|
|
262
|
+
resolve(answer.trim());
|
|
263
|
+
});
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
//# sourceMappingURL=onboarding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/mcp/onboarding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/mcp/resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA0BH;;GAEG;AACH,wBAAgB,aAAa,IAAI,KAAK,CAAC;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC,CAqBD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACxD,QAAQ,EAAE,KAAK,CAAC;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;CACH,CAAC,CA6CD;AAsHD;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE1D"}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Resources Implementation
|
|
3
|
+
*
|
|
4
|
+
* This module provides MCP Resources for static data that can be accessed
|
|
5
|
+
* by LLM clients. Resources are read-only data sources that provide context
|
|
6
|
+
* about the httpcat ecosystem.
|
|
7
|
+
*
|
|
8
|
+
* Resources include:
|
|
9
|
+
* - Token lists (cached from API)
|
|
10
|
+
* - Market information
|
|
11
|
+
* - Network status
|
|
12
|
+
* - Documentation snippets
|
|
13
|
+
*/
|
|
14
|
+
import { HttpcatClient } from "../client.js";
|
|
15
|
+
import { config } from "../config.js";
|
|
16
|
+
import { listTokens } from "../commands/list.js";
|
|
17
|
+
import { getNetworkConfig } from "../utils/constants.js";
|
|
18
|
+
const resourceCache = new Map();
|
|
19
|
+
const DEFAULT_TTL = 5 * 60 * 1000; // 5 minutes
|
|
20
|
+
/**
|
|
21
|
+
* Get resource URI prefix
|
|
22
|
+
*/
|
|
23
|
+
function getResourceUriPrefix() {
|
|
24
|
+
return "httpcat://";
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* List all available resources
|
|
28
|
+
*/
|
|
29
|
+
export function listResources() {
|
|
30
|
+
return [
|
|
31
|
+
{
|
|
32
|
+
uri: `${getResourceUriPrefix()}tokens/list`,
|
|
33
|
+
name: "Token List",
|
|
34
|
+
description: "List of all tokens on the platform with market data",
|
|
35
|
+
mimeType: "application/json",
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
uri: `${getResourceUriPrefix()}network/status`,
|
|
39
|
+
name: "Network Status",
|
|
40
|
+
description: "Current network status and configuration",
|
|
41
|
+
mimeType: "application/json",
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
uri: `${getResourceUriPrefix()}ecosystem/info`,
|
|
45
|
+
name: "Ecosystem Information",
|
|
46
|
+
description: "Information about the httpcat ecosystem and token economics",
|
|
47
|
+
mimeType: "application/json",
|
|
48
|
+
},
|
|
49
|
+
];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Read a resource by URI
|
|
53
|
+
*/
|
|
54
|
+
export async function readResource(uri) {
|
|
55
|
+
// Check cache first
|
|
56
|
+
const cached = resourceCache.get(uri);
|
|
57
|
+
if (cached && Date.now() - cached.timestamp < cached.ttl) {
|
|
58
|
+
return {
|
|
59
|
+
contents: [
|
|
60
|
+
{
|
|
61
|
+
uri,
|
|
62
|
+
mimeType: "application/json",
|
|
63
|
+
text: JSON.stringify(cached.data, null, 2),
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
// Fetch fresh data based on URI
|
|
69
|
+
let data;
|
|
70
|
+
const prefix = getResourceUriPrefix();
|
|
71
|
+
if (uri.startsWith(`${prefix}tokens/list`)) {
|
|
72
|
+
data = await fetchTokenList();
|
|
73
|
+
}
|
|
74
|
+
else if (uri.startsWith(`${prefix}network/status`)) {
|
|
75
|
+
data = await fetchNetworkStatus();
|
|
76
|
+
}
|
|
77
|
+
else if (uri.startsWith(`${prefix}ecosystem/info`)) {
|
|
78
|
+
data = await fetchEcosystemInfo();
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
throw new Error(`Unknown resource URI: ${uri}`);
|
|
82
|
+
}
|
|
83
|
+
// Cache the data
|
|
84
|
+
resourceCache.set(uri, {
|
|
85
|
+
data,
|
|
86
|
+
timestamp: Date.now(),
|
|
87
|
+
ttl: DEFAULT_TTL,
|
|
88
|
+
});
|
|
89
|
+
return {
|
|
90
|
+
contents: [
|
|
91
|
+
{
|
|
92
|
+
uri,
|
|
93
|
+
mimeType: "application/json",
|
|
94
|
+
text: JSON.stringify(data, null, 2),
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Fetch token list from API
|
|
101
|
+
*/
|
|
102
|
+
async function fetchTokenList() {
|
|
103
|
+
try {
|
|
104
|
+
const client = await createClient();
|
|
105
|
+
const result = await listTokens(client, 1, 100, "mcap");
|
|
106
|
+
return {
|
|
107
|
+
tokens: result.tokens || [],
|
|
108
|
+
total: result.total || 0,
|
|
109
|
+
page: result.page || 1,
|
|
110
|
+
limit: result.limit || 100,
|
|
111
|
+
timestamp: new Date().toISOString(),
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
// Return empty list on error
|
|
116
|
+
return {
|
|
117
|
+
tokens: [],
|
|
118
|
+
total: 0,
|
|
119
|
+
page: 1,
|
|
120
|
+
limit: 100,
|
|
121
|
+
error: error.message,
|
|
122
|
+
timestamp: new Date().toISOString(),
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Fetch network status
|
|
128
|
+
*/
|
|
129
|
+
async function fetchNetworkStatus() {
|
|
130
|
+
const network = config.get("network");
|
|
131
|
+
const networkDisplayName = config.caip2ToNetwork(network);
|
|
132
|
+
const isTestnet = config.isTestnet(network);
|
|
133
|
+
const agentUrl = config.getAgentUrl();
|
|
134
|
+
try {
|
|
135
|
+
const networkConfig = await getNetworkConfig(network);
|
|
136
|
+
return {
|
|
137
|
+
network: networkDisplayName,
|
|
138
|
+
chainId: networkConfig.chain.id,
|
|
139
|
+
isTestnet,
|
|
140
|
+
agentUrl,
|
|
141
|
+
rpcUrl: config.getRpcUrl() || "default",
|
|
142
|
+
alchemyApiKey: config.getAlchemyApiKey() ? "configured" : "not configured",
|
|
143
|
+
timestamp: new Date().toISOString(),
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
return {
|
|
148
|
+
network: networkDisplayName,
|
|
149
|
+
chainId: "unknown",
|
|
150
|
+
isTestnet,
|
|
151
|
+
agentUrl,
|
|
152
|
+
error: error.message,
|
|
153
|
+
timestamp: new Date().toISOString(),
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Fetch ecosystem information
|
|
159
|
+
*/
|
|
160
|
+
async function fetchEcosystemInfo() {
|
|
161
|
+
return {
|
|
162
|
+
platform: "402.cat",
|
|
163
|
+
description: "A platform for creating and trading tokens on bonding curves with x402 payments",
|
|
164
|
+
tokenEconomics: {
|
|
165
|
+
creationCost: "0.01 USDC",
|
|
166
|
+
buyFee: "1%",
|
|
167
|
+
sellFee: "1%",
|
|
168
|
+
creatorFeeShare: "80%",
|
|
169
|
+
platformFeeShare: "20%",
|
|
170
|
+
},
|
|
171
|
+
bondingCurve: {
|
|
172
|
+
description: "Tokens start on a bonding curve and graduate to AMM when they reach $100k market cap",
|
|
173
|
+
graduationThreshold: "$100,000 USDC",
|
|
174
|
+
},
|
|
175
|
+
networks: {
|
|
176
|
+
mainnet: {
|
|
177
|
+
name: "Base",
|
|
178
|
+
chainId: "eip155:8453",
|
|
179
|
+
buyAmounts: ["50", "100", "200"],
|
|
180
|
+
currency: "USDC",
|
|
181
|
+
},
|
|
182
|
+
testnet: {
|
|
183
|
+
name: "Base Sepolia",
|
|
184
|
+
chainId: "eip155:84532",
|
|
185
|
+
buyAmounts: ["0.05", "0.10", "0.20"],
|
|
186
|
+
currency: "USDC",
|
|
187
|
+
},
|
|
188
|
+
},
|
|
189
|
+
features: [
|
|
190
|
+
"Token creation on bonding curves",
|
|
191
|
+
"Token trading (buy/sell)",
|
|
192
|
+
"Perpetual futures trading",
|
|
193
|
+
"Prediction markets",
|
|
194
|
+
"Chat rooms per token",
|
|
195
|
+
"Fee claiming for creators",
|
|
196
|
+
"Universal token swaps",
|
|
197
|
+
"MEV-protected swaps",
|
|
198
|
+
"Gasless swaps",
|
|
199
|
+
],
|
|
200
|
+
timestamp: new Date().toISOString(),
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Create client for API calls
|
|
205
|
+
*/
|
|
206
|
+
async function createClient() {
|
|
207
|
+
const privateKey = config.getPrivateKey();
|
|
208
|
+
return await HttpcatClient.create(privateKey);
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Clear resource cache (useful for testing or forced refresh)
|
|
212
|
+
*/
|
|
213
|
+
export function clearResourceCache() {
|
|
214
|
+
resourceCache.clear();
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Clear a specific resource from cache
|
|
218
|
+
*/
|
|
219
|
+
export function clearResourceCacheForUri(uri) {
|
|
220
|
+
resourceCache.delete(uri);
|
|
221
|
+
}
|
|
222
|
+
//# sourceMappingURL=resources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/mcp/resources.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAeA,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAiGpD"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
2
2
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
3
|
-
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
3
|
+
import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
4
4
|
import { getTools, handleTool } from "./tools.js";
|
|
5
|
+
import { checkAndOnboard } from "./onboarding.js";
|
|
6
|
+
import { listResources, readResource } from "./resources.js";
|
|
7
|
+
import { listPrompts, getPrompt } from "./context.js";
|
|
5
8
|
export async function startMcpServer() {
|
|
9
|
+
// Check if wallet is configured, run onboarding if needed
|
|
10
|
+
// This must happen before creating the server to ensure we have a wallet
|
|
11
|
+
try {
|
|
12
|
+
await checkAndOnboard();
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
// If onboarding fails or is cancelled, exit with error
|
|
16
|
+
// Write to stderr since stdout is used for MCP protocol
|
|
17
|
+
process.stderr.write(`\n❌ Onboarding failed: ${error.message}\n`);
|
|
18
|
+
process.stderr.write("MCP server cannot start without a configured wallet.\n");
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
6
21
|
// Create MCP server
|
|
7
22
|
const server = new Server({
|
|
8
23
|
name: "httpcat-cli",
|
|
@@ -10,6 +25,8 @@ export async function startMcpServer() {
|
|
|
10
25
|
}, {
|
|
11
26
|
capabilities: {
|
|
12
27
|
tools: {},
|
|
28
|
+
resources: {},
|
|
29
|
+
prompts: {},
|
|
13
30
|
},
|
|
14
31
|
});
|
|
15
32
|
// List tools handler
|
|
@@ -26,6 +43,39 @@ export async function startMcpServer() {
|
|
|
26
43
|
}
|
|
27
44
|
return await handleTool(name, args);
|
|
28
45
|
});
|
|
46
|
+
// List resources handler
|
|
47
|
+
server.setRequestHandler(ListResourcesRequestSchema, async () => {
|
|
48
|
+
return {
|
|
49
|
+
resources: listResources(),
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
// Read resource handler
|
|
53
|
+
server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
|
|
54
|
+
const { uri } = request.params;
|
|
55
|
+
return await readResource(uri);
|
|
56
|
+
});
|
|
57
|
+
// List prompts handler
|
|
58
|
+
server.setRequestHandler(ListPromptsRequestSchema, async () => {
|
|
59
|
+
return {
|
|
60
|
+
prompts: listPrompts(),
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
// Get prompt handler
|
|
64
|
+
server.setRequestHandler(GetPromptRequestSchema, async (request) => {
|
|
65
|
+
const { name, arguments: args } = request.params;
|
|
66
|
+
const promptText = getPrompt(name, args);
|
|
67
|
+
return {
|
|
68
|
+
messages: [
|
|
69
|
+
{
|
|
70
|
+
role: "user",
|
|
71
|
+
content: {
|
|
72
|
+
type: "text",
|
|
73
|
+
text: promptText,
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
],
|
|
77
|
+
};
|
|
78
|
+
});
|
|
29
79
|
// Set up stdio transport
|
|
30
80
|
const transport = new StdioServerTransport();
|
|
31
81
|
await server.connect(transport);
|
package/dist/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AA2R1D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,QAAQ,IAAI,IAAI,EAAE,CAy6FjC;AAOD,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,GACR,OAAO,CAAC;IAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAwrD7D"}
|