{"version":3,"sources":["../src/tools/mesh.ts"],"names":["tool","z","mesh"],"mappings":";;;;;;AAIO,IAAM,kBAAkBA,QAAA,CAAK;AAAA,EAClC,IAAA,EAAM,mBAAA;AAAA,EACN,WAAA,EAAa,+FAAA;AAAA,EACb,WAAA,EAAaC,MAAE,MAAA,CAAO;AAAA,IACpB,MAAA,EAAQA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,oCAAoC,CAAA;AAAA,IAChE,MAAA,EAAQA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,oBAAoB,CAAA;AAAA,IAChD,UAAA,EAAYA,KAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AAAS,GACjC,CAAA;AAAA,EACD,QAAA,EAAU,OAAO,KAAA,KAAU;AACzB,IAAA,IAAI;AACF,MAAA,MAAM,MAAA,GAAS,MAAMC,sBAAA,CAAK,MAAA,CAAO,KAAA,CAAM,QAAQ,KAAA,CAAM,MAAA,EAAQ,KAAA,CAAM,UAAA,IAAc,GAAK,CAAA;AACtF,MAAA,OAAO,KAAK,SAAA,CAAU,EAAE,MAAA,EAAQ,SAAA,EAAW,QAAQ,CAAA;AAAA,IACrD,SAAS,GAAA,EAAc;AACrB,MAAA,OAAO,IAAA,CAAK,UAAU,EAAE,MAAA,EAAQ,SAAS,KAAA,EAAQ,GAAA,CAAc,SAAS,CAAA;AAAA,IAC1E;AAAA,EACF;AACF,CAAC;AAEM,IAAM,gBAAgBF,QAAA,CAAK;AAAA,EAChC,IAAA,EAAM,gBAAA;AAAA,EACN,WAAA,EAAa,mEAAA;AAAA,EACb,WAAA,EAAaC,MAAE,MAAA,CAAO,EAAE,SAASA,KAAA,CAAE,MAAA,IAAU,CAAA;AAAA,EAC7C,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,IAAAC,sBAAA,CAAK,SAAA,CAAU,MAAM,OAAO,CAAA;AAC5B,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,EAAE,MAAA,EAAQ,kBAAkB,CAAA;AAAA,EACpD;AACF,CAAC;AAEM,IAAM,gBAAgBF,QAAA,CAAK;AAAA,EAChC,IAAA,EAAM,iBAAA;AAAA,EACN,WAAA,EAAa,wEAAA;AAAA,EACb,WAAA,EAAaC,KAAA,CAAE,MAAA,CAAO,EAAE,CAAA;AAAA,EACxB,UAAU,MAAM;AACd,IAAA,MAAM,KAAA,GAAQC,uBAAK,QAAA,EAAS;AAC5B,IAAA,OAAO,KAAK,SAAA,CAAU;AAAA,MACpB,MAAA,EAAQ,SAAA;AAAA,MACR,SAAA,EAAWA,uBAAK,UAAA,EAAW;AAAA,MAC3B,YAAY,KAAA,CAAM,MAAA;AAAA,MAClB,OAAO,KAAA,CAAM,GAAA,CAAI,CAAA,CAAA,MAAM,EAAE,QAAQ,CAAA,CAAE,KAAA,EAAO,KAAA,EAAO,CAAA,CAAE,OAAO,gBAAA,EAAkB,IAAA,CAAK,KAAI,GAAI,CAAA,CAAE,UAAS,CAAE;AAAA,KACvG,CAAA;AAAA,EACH;AACF,CAAC;AAEM,IAAM,YAAYF,QAAA,CAAK;AAAA,EAC5B,IAAA,EAAM,aAAA;AAAA,EACN,WAAA,EAAa,4EAAA;AAAA,EACb,WAAA,EAAaC,MAAE,MAAA,CAAO;AAAA,IACpB,QAAA,EAAUA,MAAE,MAAA,EAAO;AAAA,IACnB,UAAA,EAAYA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,2CAA2C,CAAA;AAAA,IAC3E,IAAA,EAAMA,KAAA,CAAE,MAAA,EAAO,CAAE,SAAS,iBAAiB;AAAA,GAC5C,CAAA;AAAA,EACD,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,IAAA,MAAM,KAAA,GAAQC,uBAAK,SAAA,CAAU,KAAA,CAAM,UAAU,KAAA,CAAM,UAAA,EAAY,MAAM,IAAI,CAAA;AACzE,IAAA,OAAO,KAAK,SAAA,CAAU,EAAE,MAAA,EAAQ,OAAA,EAAS,OAAO,CAAA;AAAA,EAClD;AACF,CAAC;AAEM,IAAM,iBAAiBF,QAAA,CAAK;AAAA,EACjC,IAAA,EAAM,kBAAA;AAAA,EACN,WAAA,EAAa,sFAAA;AAAA,EACb,WAAA,EAAaC,MAAE,MAAA,CAAO;AAAA,IACpB,WAAA,EAAaA,KAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IACjC,gBAAA,EAAkBA,KAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AAAS,GACvC,CAAA;AAAA,EACD,QAAA,EAAU,CAAC,KAAA,KAAU;AACnB,IAAA,IAAI,IAAA,GAAOC,uBAAK,OAAA,EAAQ;AACxB,IAAA,IAAI,KAAA,CAAM,kBAAkB,IAAA,GAAO,IAAA,CAAK,OAAO,CAAA,CAAA,KAAK,CAAA,CAAE,OAAA,KAAY,KAAA,CAAM,gBAAgB,CAAA;AACxF,IAAA,MAAM,UAAU,IAAA,CAAK,KAAA,CAAM,EAAE,KAAA,CAAM,eAAe,EAAA,CAAG,CAAA;AACrD,IAAA,OAAO,IAAA,CAAK,UAAU,EAAE,MAAA,EAAQ,WAAW,KAAA,EAAO,OAAA,CAAQ,MAAA,EAAQ,OAAA,EAAS,CAAA;AAAA,EAC7E;AACF,CAAC;AAEM,IAAM,YAAYF,QAAA,CAAK;AAAA,EAC5B,IAAA,EAAM,oBAAA;AAAA,EACN,WAAA,EAAa,4CAAA;AAAA,EACb,WAAA,EAAaC,KAAA,CAAE,MAAA,CAAO,EAAE,CAAA;AAAA,EACxB,UAAU,MAAM;AACd,IAAAC,sBAAA,CAAK,SAAA,EAAU;AACf,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,EAAE,MAAA,EAAQ,WAAW,CAAA;AAAA,EAC7C;AACF,CAAC;AAEM,IAAM,aAAa,CAAC,eAAA,EAAiB,eAAe,aAAA,EAAe,SAAA,EAAW,gBAAgB,SAAS","file":"chunk-HQKRQ5GN.cjs","sourcesContent":["import { tool } from '@strands-agents/sdk'\nimport { z } from 'zod'\nimport { mesh } from '../lib/mesh'\n\nexport const invokeMeshAgent = tool({\n  name: 'invoke_mesh_agent',\n  description: 'Send a prompt to an agent in another browser tab. Use list_mesh_peers first to discover tabs.',\n  inputSchema: z.object({\n    tab_id: z.string().describe('Target tab ID from list_mesh_peers'),\n    prompt: z.string().describe('The prompt to send'),\n    timeout_ms: z.number().optional(),\n  }),\n  callback: async (input) => {\n    try {\n      const result = await mesh.invoke(input.tab_id, input.prompt, input.timeout_ms || 60000)\n      return JSON.stringify({ status: 'success', result })\n    } catch (err: unknown) {\n      return JSON.stringify({ status: 'error', error: (err as Error).message })\n    }\n  },\n})\n\nexport const broadcastMesh = tool({\n  name: 'broadcast_mesh',\n  description: 'Broadcast a message to all other careless tabs (fire and forget).',\n  inputSchema: z.object({ message: z.string() }),\n  callback: (input) => {\n    mesh.broadcast(input.message)\n    return JSON.stringify({ status: 'broadcast_sent' })\n  },\n})\n\nexport const listMeshPeers = tool({\n  name: 'list_mesh_peers',\n  description: 'List all other careless tabs currently connected via the mesh network.',\n  inputSchema: z.object({}),\n  callback: () => {\n    const peers = mesh.getPeers()\n    return JSON.stringify({\n      status: 'success',\n      my_tab_id: mesh.getMyTabId(),\n      peer_count: peers.length,\n      peers: peers.map(p => ({ tab_id: p.tabId, label: p.label, last_seen_ms_ago: Date.now() - p.lastSeen })),\n    })\n  },\n})\n\nexport const addToRing = tool({\n  name: 'add_to_ring',\n  description: 'Add an entry to the shared ring context. All other tabs + agents see this.',\n  inputSchema: z.object({\n    agent_id: z.string(),\n    agent_type: z.string().describe('e.g. \"browser\", \"autonomous\", \"sub-agent\"'),\n    text: z.string().describe('Up to 500 chars'),\n  }),\n  callback: (input) => {\n    const entry = mesh.addToRing(input.agent_id, input.agent_type, input.text)\n    return JSON.stringify({ status: 'added', entry })\n  },\n})\n\nexport const getRingContext = tool({\n  name: 'get_ring_context',\n  description: 'Get recent entries from the shared ring context (what other agents have been doing).',\n  inputSchema: z.object({\n    max_entries: z.number().optional(),\n    exclude_agent_id: z.string().optional(),\n  }),\n  callback: (input) => {\n    let ring = mesh.getRing()\n    if (input.exclude_agent_id) ring = ring.filter(r => r.agentId !== input.exclude_agent_id)\n    const entries = ring.slice(-(input.max_entries || 10))\n    return JSON.stringify({ status: 'success', count: entries.length, entries })\n  },\n})\n\nexport const clearRing = tool({\n  name: 'clear_ring_context',\n  description: 'Clear the shared ring context on all tabs.',\n  inputSchema: z.object({}),\n  callback: () => {\n    mesh.clearRing()\n    return JSON.stringify({ status: 'cleared' })\n  },\n})\n\nexport const MESH_TOOLS = [invokeMeshAgent, broadcastMesh, listMeshPeers, addToRing, getRingContext, clearRing]\n"]}