← Windsor.aiCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
changed
Update to Windsor.ai
Snapshot Sep 30, 2026 · 23:18 UTC · version 4.0.0
Collection source: not recorded for this historical snapshot. These snapshots do not have a confirmed matching collection source. Differences in file lists alone do not establish changes to the package.
Supporting file metadata differs
Newly listed paths: agents/openai.yaml. This compares saved file lists, not package contents; a different collection source can change the list.
Observed in package metadata. These changes alone do not establish a new customer-facing feature.
Supporting files
Before
[]
After
[{"relative_path":"agents/openai.yaml","size_in_bytes":506}]
Compare saved observations
Download comparison JSONFull technical diff · 1 changed fields
changed /included_files
BEFORE
[]
AFTER
[
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 506
}
]Full snapshot data
{
"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"
}SHA-256: 526caf9d9090b89f87e44c290e5be4ecc28e81135430da117d3e4d796a9fbdf9