{"id":24818,"plugin_id":"plugin_asdk_app_694a52cfaa3c819192bea84eaa254968","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:18:42.223Z","digest":"526caf9d9090b89f87e44c290e5be4ecc28e81135430da117d3e4d796a9fbdf9","against":5174,"payload":{"name":"windsor","description":"Analyze marketing and business data and run supported write actions across 350+ sources through Windsor.ai. Use when the user asks about performance, metrics, or spend from any connected platform (ads, analytics, SEO, CRM, e-commerce, payments, warehouses), wants to compare channels, connect a source, run a supported action such as pausing a campaign or setting a budget, or schedule a recurring data export. Do not use for writing marketing copy or for general advice unrelated to the user's connected accounts.","included_files":[{"relative_path":"agents/openai.yaml","size_in_bytes":506}],"skill_md_contents":"---\nname: windsor\ndescription: Analyze marketing and business data and run supported write actions across 350+ sources through Windsor.ai. Use when the user asks about performance, metrics, or spend from any connected platform (ads, analytics, SEO, CRM, e-commerce, payments, warehouses), wants to compare channels, connect a source, run a supported action such as pausing a campaign or setting a budget, or schedule a recurring data export. Do not use for writing marketing copy or for general advice unrelated to the user's connected accounts.\n---\n\n# Windsor.ai\n\nWindsor.ai exposes live data (read) and supported write actions across 350+\nconnected sources through MCP tools. Every tool takes a `connector` id, a\nlowercase slug such as `google_ads` for Google Ads, `facebook` for Meta Ads\n(Facebook and Instagram Ads), or `googleanalytics4` for GA4. This app is not\nscoped to a single connector, so always discover the right slug and accounts\nfirst.\n\n## Golden rules\n- **Never guess** connector slugs, account ids, field ids, action ids, or option\n  ids. Get them from `get_connectors`, `get_fields`, `list_actions`, and\n  `get_options`, and call those before `get_data` or `execute_action`.\n- **Reads are safe; writes change live platform state.** Only call\n  `execute_action` after the user confirms the specific change.\n\n## Core read workflow\n1. `get_connectors` shows connected accounts and, per connector, the available\n   `actions` and `options`. Pass `include_not_yet_connected=True` to list every\n   available source.\n2. `get_fields` (and `get_options` for date-filter columns and connector\n   options) returns valid field ids for the chosen connector. Field ids passed\n   to `get_data` must come from `get_fields`.\n3. `get_data` reads the metrics for the connector, fields, accounts, and date\n   range, then you analyze the result.\n\n## Write actions\n- `list_actions` returns the write actions a connector supports and each action's\n  parameter schema. The set is whatever it returns, so do not assume an action\n  exists.\n- `execute_action` runs one action id against one account id with params matching\n  its schema. It modifies external platform state, for example pausing or\n  enabling a campaign, setting a budget or bid, managing an audience list or\n  flow, or posting content, so confirm the exact change with the user first.\n\n## Connecting a source\nFor any request to connect, authorize, add, or reconnect an account, call\n`get_connectors(include_not_yet_connected=True)` for the slug, then\n`get_connector_authorization_url` for a ready-to-open setup link, or\n`get_connector_connect_info` for the auth type and the manual credential fields.\nSensitive credentials are entered by the user in that form, never pasted into\nchat.\n\n## Scheduled exports (destinations)\n- `get_destinations` lists where data can be exported on a schedule (BigQuery,\n  Google Sheets, Snowflake, databases, storage) and any reusable credentials.\n- `get_destination_setup_info` describes a destination's target fields and\n  allowed schedules. `create_destination_task` sets up a recurring export;\n  confirm the source, destination, and schedule with the user first.\n\n## Support and account\n- `get_current_user` returns the authenticated Windsor.ai user.\n- `get_windsor_login_url` returns an auto-login link into the dashboard.\n- `contact_windsor` files feedback, a support request, or a feature request.\n"},"changes":[{"path":"/included_files","type":"changed","before":[],"after":[{"relative_path":"agents/openai.yaml","size_in_bytes":506}]}],"summary":"Fields changed: 1. /included_files.","summary_kind":"deterministic","summary_metadata":{}}