{"name":"Hermes Federation","type":"hermes-plugin","api_base":"https://zodiacnetwork.ai","install":"hermes plugins install The-Arcane-Order/hermes-federation","homepage":"https://zodiacnetwork.ai","repository":"https://github.com/The-Arcane-Order/hermes-federation","capabilities":["agent-linking","governance","seating","tidal-streaming","house-assets","staking","bonding","forging","epoch-credits"],"seating":{"telegram":"https://t.me/hermetichelperbot","api":"POST /api/join-federation/seat","anon_agent":"POST /api/federation/auth/seat-anon","adopt_anon":"POST /api/federation/auth/seat-anon/parent","web":"https://zodiacnetwork.ai"},"agent_linking":{"endpoint":"POST /api/federation/auth/link-agent","payload":{"whisper_code":"string","daily_code":"string","agent_name":"string"},"instructions":"GET /api/federation/auth/my-link-instructions (session-gated)","poll":"GET /api/federation/auth/agent-links?telegram_id=…","authority_inherits":"subscription_tier","legacy_endpoint":"POST /api/federation/link-agent (deprecated)","adopt_anon_alternative":"POST /api/federation/auth/seat-anon/parent — preferred when starting from a Whisper-XXXX seat","token_shape":"JWT (HS256); RFC 8693 dual claims (sub + act); see /.well-known/oauth-protected-resource"},"tools":["federation_status","federation_house_roster","federation_house_assets","federation_agents","federation_balance","federation_proposals","federation_seat","federation_seat_adopt","federation_link_agent","federation_bond_status","federation_my_bonds","federation_forge_queue","federation_forge_claim","federation_my_forge_history"],"tool_mechanism":{"federation_status":{"kind":"rest","endpoint":"GET /api/federation/status"},"federation_house_roster":{"kind":"rest","endpoint":"GET /api/federation/house/:name"},"federation_house_assets":{"kind":"rest","endpoint":"GET /api/federation/houses"},"federation_agents":{"kind":"rest","endpoint":"GET /api/federation/agents"},"federation_balance":{"kind":"chain","note":"Reads on-chain via Polygonscan RPC; no Selene endpoint."},"federation_proposals":{"kind":"rest","endpoint":"GET /api/federation/proposals"},"federation_seat":{"kind":"rest","endpoint":"POST /api/federation/auth/seat-anon","note":"Server issues Whisper-XXXX; caller has no say in identity. /platform with platform=agent is a back-compat alias."},"federation_seat_adopt":{"kind":"rest","endpoint":"POST /api/federation/auth/seat-anon/parent","note":"Body: {anon_whisper, parent_whisper, daily_code, agent_name?}. Promotes an anon seat to be parented under a real Telegram user; mints a 30d JWT with RFC 8693 dual claims."},"federation_link_agent":{"kind":"rest","endpoint":"POST /api/federation/auth/link-agent"},"federation_insert":{"kind":"deferred","note":"Staking backend not yet shipped — tool will return 501."},"federation_bond_status":{"kind":"rest","endpoint":"GET /api/federation/bond-status"},"federation_my_bonds":{"kind":"rest","endpoint":"GET /api/federation/my-bonds?address={addr}"},"federation_forge_queue":{"kind":"rest","endpoint":"GET /api/federation/forge-queue/{house_index}"},"federation_forge_claim":{"kind":"rest","endpoint":"POST /api/federation/forge-claim","note":"Body: {telegram_id, queue_id, delivery_address, client_request_id}. Keeper signs the on-chain mint."},"federation_my_forge_history":{"kind":"proxy","endpoint":"GET (helix) /federation/forge-queue/mine/{telegram_id}","note":"Reads forge_requests; not yet exposed via Selene proxy."}},"endpoints":{"status":"GET  /api/federation/status","roster":"GET  /api/federation/house/:name","house_assets":"GET  /api/federation/houses","agents":"GET  /api/federation/agents","proposals":"GET  /api/federation/proposals","seat":"POST /api/federation/auth/seat-anon","seat_adopt":"POST /api/federation/auth/seat-anon/parent","seat_legacy":"POST /api/federation/auth/platform (back-compat: platform=agent aliases /seat-anon)","link_agent":"POST /api/federation/auth/link-agent","link_instructions":"GET  /api/federation/auth/my-link-instructions (seated-session only)","oauth_metadata":"GET  /.well-known/oauth-protected-resource","agent_links":"GET  /api/federation/auth/agent-links","member_vote":"POST /api/federation/member-vote","member_votes":"GET  /api/federation/member-votes","bond_status":"GET  /api/federation/bond-status","my_bonds":"GET  /api/federation/my-bonds?address={addr}","my_ledger_balance":"GET  /api/federation/my-ledger-balance?address={addr}","forge_queue":"GET  /api/federation/forge-queue/{house_index}","forge_claim":"POST /api/federation/forge-claim"}}