🐦 Twitter Post Details

Viewing enriched Twitter post

@IBuzovskyi

HERMES AGENT NOW READS THE WEB UP TO 60X FASTER AND 49X CHEAPER. CLEAN CONTENT STRAIGHT TO THE AGENT. LARGE PAGES PAGED ON DEMAND. @NousResearch scraping backends used to return raw content that got processed redundantly before reaching the agent. that pipeline is gone. now: backends pass clean content directly. large pages save locally and page on demand. same quality. fraction of the time and cost. HOW WEB_EXTRACT HANDLES LARGE PAGES: size-driven processing. no wasted tokens. under 5,000 chars: → returned as-is. no LLM call. full markdown reaches the agent. 5,000 to 500,000 chars: → single-pass summary via auxiliary model. capped at ~5,000 chars of output. keeps quotes, code blocks, key facts. 500,000 to 2,000,000 chars: → chunked into 100K-char pieces. each chunk summarized in parallel. final synthesis: ~5,000 chars. over 2,000,000 chars: → refused with a hint to use web_crawl with focused extraction instructions. the summary is a content compressor, not a paraphraser. if summarization fails, Hermes falls back to the first ~5,000 chars of raw content. no useless error messages. ROUTE EXTRACTION TO A CHEAP MODEL: by default, web_extract uses your main model. on Opus that means every long page burns premium tokens on summarization. set in Desktop app, Dashboard, or config.yaml: auxiliary: web_extract: provider: openrouter model: google/gemini-3-flash-preview timeout: 360 extraction summaries on Gemini Flash. reasoning stays on your premium model. this alone cuts web research costs significantly. 8 BACKEND PROVIDERS: Firecrawl (default): search + extract + crawl. 500 free credits/month. SearXNG: free, self-hosted, search-only. no API key. Brave Search: 2,000 free queries/month. search-only. DDGS (DuckDuckGo): free, no key needed. search-only. Tavily: search + extract + crawl. 1,000 free searches/month. Exa: search + extract. 1,000 free searches/month. Parallel: search + extract. paid. xAI (Grok): search-only. LLM-generated results via Grok. search-only providers pair with Firecrawl/Tavily/Exa for extract capability. PER-CAPABILITY SPLIT: use different providers for search vs extract: SearXNG (free) for search. Firecrawl for extract. free searches. paid extraction only when needed. configure via hermes tools or config.yaml. FREE SELF-HOSTED SEARCH (SEARXNG): zero API costs. zero rate limits. privacy-respecting metasearch across 70+ engines. docker compose up -d set SEARXNG_URL in .env. enable JSON format in settings.yml. Hermes connects automatically. pair with Firecrawl for extract and you have search for free with paid extraction only on demand. NOUS PORTAL SUBSCRIBERS: web search and extract included through the Tool Gateway via managed Firecrawl. no API key needed. no separate billing. hermes setup --portal enables everything. WHEN YOU NEED RAW CONTENT: if the LLM summary drops important fields (structured data, tables, specific formatting): use browser_navigate + browser_snapshot instead. returns the live accessibility tree without auxiliary-model rewriting. full Hermes architecture deep-dive in the article šŸ‘‡

šŸ“Š Media Metadata

{
  "media": [
    {
      "url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2072066402710618322/media_0.mp4",
      "media_url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2072066402710618322/media_0.mp4",
      "type": "video",
      "filename": "media_0.mp4"
    }
  ],
  "processed_at": "2026-07-01T01:04:11.782889",
  "pipeline_version": "2.0"
}

šŸ”§ Raw API Response

{
  "type": "tweet",
  "id": "2072066402710618322",
  "url": "https://x.com/IBuzovskyi/status/2072066402710618322",
  "twitterUrl": "https://twitter.com/IBuzovskyi/status/2072066402710618322",
  "text": "HERMES AGENT NOW READS THE WEB\nUP TO 60X FASTER AND 49X CHEAPER.\nCLEAN CONTENT STRAIGHT TO THE AGENT.\nLARGE PAGES PAGED ON DEMAND.\n\n@NousResearch \n\nscraping backends used to return raw content\nthat got processed redundantly before\nreaching the agent. that pipeline is gone.\n\nnow: backends pass clean content directly.\nlarge pages save locally and page on demand.\nsame quality. fraction of the time and cost.\n\nHOW WEB_EXTRACT HANDLES LARGE PAGES:\n\nsize-driven processing. no wasted tokens.\n\nunder 5,000 chars:\n→ returned as-is. no LLM call.\n  full markdown reaches the agent.\n\n5,000 to 500,000 chars:\n→ single-pass summary via auxiliary model.\n  capped at ~5,000 chars of output.\n  keeps quotes, code blocks, key facts.\n\n500,000 to 2,000,000 chars:\n→ chunked into 100K-char pieces.\n  each chunk summarized in parallel.\n  final synthesis: ~5,000 chars.\n\nover 2,000,000 chars:\n→ refused with a hint to use web_crawl\n  with focused extraction instructions.\n\nthe summary is a content compressor, not a paraphraser.\nif summarization fails, Hermes falls back\nto the first ~5,000 chars of raw content.\nno useless error messages.\n\nROUTE EXTRACTION TO A CHEAP MODEL:\n\nby default, web_extract uses your main model.\non Opus that means every long page\nburns premium tokens on summarization.\n\nset in Desktop app, Dashboard, or config.yaml:\n\nauxiliary:\n  web_extract:\n    provider: openrouter\n    model: google/gemini-3-flash-preview\n    timeout: 360\n\nextraction summaries on Gemini Flash.\nreasoning stays on your premium model.\nthis alone cuts web research costs significantly.\n\n8 BACKEND PROVIDERS:\n\nFirecrawl (default): search + extract + crawl. 500 free credits/month.\nSearXNG: free, self-hosted, search-only. no API key.\nBrave Search: 2,000 free queries/month. search-only.\nDDGS (DuckDuckGo): free, no key needed. search-only.\nTavily: search + extract + crawl. 1,000 free searches/month.\nExa: search + extract. 1,000 free searches/month.\nParallel: search + extract. paid.\nxAI (Grok): search-only. LLM-generated results via Grok.\n\nsearch-only providers pair with Firecrawl/Tavily/Exa\nfor extract capability.\n\nPER-CAPABILITY SPLIT:\n\nuse different providers for search vs extract:\n\nSearXNG (free) for search.\nFirecrawl for extract.\n\nfree searches. paid extraction only when needed.\nconfigure via hermes tools or config.yaml.\n\nFREE SELF-HOSTED SEARCH (SEARXNG):\n\nzero API costs. zero rate limits.\nprivacy-respecting metasearch across 70+ engines.\n\ndocker compose up -d\n\nset SEARXNG_URL in .env.\nenable JSON format in settings.yml.\nHermes connects automatically.\n\npair with Firecrawl for extract\nand you have search for free\nwith paid extraction only on demand.\n\nNOUS PORTAL SUBSCRIBERS:\n\nweb search and extract included\nthrough the Tool Gateway via managed Firecrawl.\nno API key needed. no separate billing.\nhermes setup --portal enables everything.\n\nWHEN YOU NEED RAW CONTENT:\n\nif the LLM summary drops important fields\n(structured data, tables, specific formatting):\n\nuse browser_navigate + browser_snapshot instead.\nreturns the live accessibility tree\nwithout auxiliary-model rewriting.\n\nfull Hermes architecture deep-dive in the article šŸ‘‡",
  "source": "Twitter for iPhone",
  "retweetCount": 2,
  "replyCount": 2,
  "likeCount": 47,
  "quoteCount": 0,
  "viewCount": 4331,
  "createdAt": "Tue Jun 30 21:15:02 +0000 2026",
  "lang": "en",
  "bookmarkCount": 42,
  "isReply": false,
  "inReplyToId": null,
  "conversationId": "2072066402710618322",
  "displayTextRange": [
    0,
    279
  ],
  "inReplyToUserId": null,
  "inReplyToUsername": null,
  "author": {
    "type": "user",
    "userName": "IBuzovskyi",
    "url": "https://x.com/IBuzovskyi",
    "twitterUrl": "https://twitter.com/IBuzovskyi",
    "id": "1387382307229769732",
    "name": "YanXbt",
    "isVerified": false,
    "isBlueVerified": true,
    "verifiedType": null,
    "profilePicture": "https://pbs.twimg.com/profile_images/2055755733002506240/uFECjFhT_normal.jpg",
    "coverPicture": "https://pbs.twimg.com/profile_banners/1387382307229769732/1779712969",
    "description": "",
    "location": "San Francisco, CA",
    "followers": 2813,
    "following": 1088,
    "status": "",
    "canDm": true,
    "canMediaTag": true,
    "createdAt": "Wed Apr 28 12:25:00 +0000 2021",
    "entities": {
      "description": {
        "urls": []
      },
      "url": {}
    },
    "fastFollowersCount": 0,
    "favouritesCount": 3528,
    "hasCustomTimelines": true,
    "isTranslator": false,
    "mediaCount": 708,
    "statusesCount": 2905,
    "withheldInCountries": [],
    "affiliatesHighlightedLabel": {},
    "possiblySensitive": false,
    "pinnedTweetIds": [
      "2071601107944571249"
    ],
    "profile_bio": {
      "description": "Content creator | AI Systems builder | Zero-headcount believer\nTeaching how to build with HERMES AGENT",
      "entities": {
        "description": {},
        "url": {
          "urls": [
            {
              "display_url": "substack.com/@yanxbt",
              "expanded_url": "https://substack.com/@yanxbt",
              "indices": [
                0,
                23
              ],
              "url": "https://t.co/ZyqLGGM9Ku"
            }
          ]
        }
      }
    },
    "isAutomated": false,
    "automatedBy": null
  },
  "extendedEntities": {
    "media": [
      {
        "additional_media_info": {
          "monetizable": false
        },
        "allow_download_status": {
          "allow_download": true
        },
        "display_url": "pic.twitter.com/MnmlVyUwmQ",
        "expanded_url": "https://twitter.com/IBuzovskyi/status/2072066402710618322/video/1",
        "ext_master_playlist_only": [],
        "ext_media_availability": {
          "status": "Available"
        },
        "ext_playlists": [],
        "id_str": "2072065936043986945",
        "indices": [
          280,
          303
        ],
        "media_key": "13_2072065936043986945",
        "media_results": {
          "id": "QXBpTWVkaWFSZXN1bHRzOgwABAoAARzBdP2VFtABAAA=",
          "result": {
            "__typename": "ApiMedia",
            "id": "QXBpTWVkaWE6DAAECgABHMF0/ZUW0AEAAA==",
            "media_key": "13_2072065936043986945"
          }
        },
        "media_url_https": "https://pbs.twimg.com/amplify_video_thumb/2072065936043986945/img/XXs5bm4FvGFheM4K.jpg",
        "original_info": {
          "focus_rects": [],
          "height": 2160,
          "width": 2160
        },
        "sizes": {
          "large": {
            "h": 2048,
            "w": 2048
          }
        },
        "type": "video",
        "url": "https://t.co/MnmlVyUwmQ",
        "video_info": {
          "aspect_ratio": [
            1,
            1
          ],
          "duration_millis": 13003,
          "variants": [
            {
              "content_type": "application/x-mpegURL",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/pl/kjaVMJFHhqG8oXct.m3u8?tag=28&v=cfc"
            },
            {
              "bitrate": 432000,
              "content_type": "video/mp4",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/vid/avc1/320x320/fDb_Whf4q2MtoXv7.mp4?tag=28"
            },
            {
              "bitrate": 832000,
              "content_type": "video/mp4",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/vid/avc1/540x540/HgoBAu_Yb61IAZR_.mp4?tag=28"
            },
            {
              "bitrate": 1280000,
              "content_type": "video/mp4",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/vid/avc1/720x720/7ES5TPn3XZ5ETgWI.mp4?tag=28"
            },
            {
              "bitrate": 8768000,
              "content_type": "video/mp4",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/vid/avc1/1080x1080/lBIx4BeZBb1aIEpQ.mp4?tag=28"
            },
            {
              "bitrate": 25128000,
              "content_type": "video/mp4",
              "url": "https://video.twimg.com/amplify_video/2072065936043986945/vid/avc1/2160x2160/BzibPkb8r2VNlqDX.mp4?tag=28"
            }
          ]
        }
      }
    ]
  },
  "card": null,
  "place": {},
  "entities": {
    "hashtags": [],
    "symbols": [],
    "timestamps": [],
    "urls": [],
    "user_mentions": [
      {
        "id_str": "1318419526132862976",
        "indices": [
          132,
          145
        ],
        "name": "Nous Research",
        "screen_name": "NousResearch"
      }
    ]
  },
  "quoted_tweet": {
    "type": "tweet",
    "id": "2068629714776756339",
    "url": "https://x.com/IBuzovskyi/status/2068629714776756339",
    "twitterUrl": "https://twitter.com/IBuzovskyi/status/2068629714776756339",
    "text": "https://t.co/VxyyeQCimO",
    "source": "Twitter for iPhone",
    "retweetCount": 61,
    "replyCount": 14,
    "likeCount": 487,
    "quoteCount": 5,
    "viewCount": 365140,
    "createdAt": "Sun Jun 21 09:38:51 +0000 2026",
    "lang": "zxx",
    "bookmarkCount": 1228,
    "isReply": false,
    "inReplyToId": null,
    "conversationId": "2068629714776756339",
    "displayTextRange": [
      0,
      23
    ],
    "inReplyToUserId": null,
    "inReplyToUsername": null,
    "author": {
      "type": "user",
      "userName": "IBuzovskyi",
      "url": "https://x.com/IBuzovskyi",
      "twitterUrl": "https://twitter.com/IBuzovskyi",
      "id": "1387382307229769732",
      "name": "YanXbt",
      "isVerified": false,
      "isBlueVerified": true,
      "verifiedType": null,
      "profilePicture": "https://pbs.twimg.com/profile_images/2055755733002506240/uFECjFhT_normal.jpg",
      "coverPicture": "https://pbs.twimg.com/profile_banners/1387382307229769732/1779712969",
      "description": "",
      "location": "San Francisco, CA",
      "followers": 2813,
      "following": 1088,
      "status": "",
      "canDm": true,
      "canMediaTag": true,
      "createdAt": "Wed Apr 28 12:25:00 +0000 2021",
      "entities": {
        "description": {
          "urls": []
        },
        "url": {}
      },
      "fastFollowersCount": 0,
      "favouritesCount": 3528,
      "hasCustomTimelines": true,
      "isTranslator": false,
      "mediaCount": 708,
      "statusesCount": 2905,
      "withheldInCountries": [],
      "affiliatesHighlightedLabel": {},
      "possiblySensitive": false,
      "pinnedTweetIds": [
        "2071601107944571249"
      ],
      "profile_bio": {
        "description": "Content creator | AI Systems builder | Zero-headcount believer\nTeaching how to build with HERMES AGENT",
        "entities": {
          "description": {},
          "url": {
            "urls": [
              {
                "display_url": "substack.com/@yanxbt",
                "expanded_url": "https://substack.com/@yanxbt",
                "indices": [
                  0,
                  23
                ],
                "url": "https://t.co/ZyqLGGM9Ku"
              }
            ]
          }
        }
      },
      "isAutomated": false,
      "automatedBy": null
    },
    "extendedEntities": {},
    "card": null,
    "place": {},
    "entities": {
      "urls": [
        {
          "display_url": "x.com/i/article/2068…",
          "expanded_url": "http://x.com/i/article/2068585191522566144",
          "indices": [
            0,
            23
          ],
          "url": "https://t.co/VxyyeQCimO"
        }
      ]
    },
    "quoted_tweet": null,
    "retweeted_tweet": null,
    "isLimitedReply": false,
    "communityInfo": null,
    "article": {
      "title": "15 LEVELS OF HERMES AGENT. FROM CHATBOT TO 24/7 AUTONOMOUS SYSTEM.",
      "preview_text": "Most people install Hermes Agent and use it as a chatbot. They type a prompt, get a response, close the tab. That covers maybe 10% of what the agent can do.\nThis article maps every level of Hermes",
      "cover_media_img_url": "https://pbs.twimg.com/media/HLU_q3TXUAAmoT2.jpg"
    }
  },
  "retweeted_tweet": null,
  "isLimitedReply": false,
  "communityInfo": null,
  "article": null
}