← Files egoARCHIVED FILE

skills/ego-browser/learnings/x-com/tools/search-users.js

800 Bytes · Oct 2, 2026 · 00:34 UTC

↓ Download file

export async function searchUsers(ctx, args = {}) {
  const query = args.query || "";
  if (!query) throw new Error("search query is required");

  await ctx.openOrReuseTab(`https://x.com/search?f=user&q=${encodeURIComponent(query)}`, { wait: true });
  await ctx.waitForLoad();

  const users = await ctx.js(String.raw`(() => {
    const results = [...document.querySelectorAll('[data-testid="cellInnerDiv"]')]
    return results.map(el => ({
      name: el.querySelector('[data-testid="User-Name"] span')?.innerText?.trim() || '',
      handle: el.querySelector('[data-testid="User-Name"] a')?.innerText?.trim() || '',
      followers: el.querySelector('[data-testid="Follow"]')?.previousElementSibling?.innerText?.trim() || '',
    })).filter(u => u.name || u.handle)
  })()`);

  return users;
}

SHA-256: b780616e32761f80e9524375c144b053e920109d49e550281950d0a7fcbd0f74