import { tool } from '@strands-agents/sdk' import { z } from 'zod' export const readClipboardTool = tool({ name: 'read_clipboard', description: 'Read current clipboard text. Requires user permission.', inputSchema: z.object({}), callback: async () => { try { const text = await navigator.clipboard.readText() return JSON.stringify({ status: 'success', text, length: text.length }) } catch (err: unknown) { return JSON.stringify({ status: 'error', error: (err as Error).message, hint: 'Clipboard read requires user permission + secure context.' }) } }, }) export const writeClipboardTool = tool({ name: 'write_clipboard', description: 'Write text to clipboard', inputSchema: z.object({ text: z.string() }), callback: async (input) => { try { await navigator.clipboard.writeText(input.text); return JSON.stringify({ status: 'success' }) } catch (err: unknown) { return JSON.stringify({ status: 'error', error: (err as Error).message }) } }, }) export const CLIPBOARD_TOOLS = [readClipboardTool, writeClipboardTool]