[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-aws-labs-cao-learning":3,"mdc--fsf8gw-key":33,"related-repo-aws-labs-cao-learning":403,"related-org-aws-labs-cao-learning":500},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":31,"mdContent":32},"cao-learning","report task outcomes and distill lessons","Report task outcomes and distill lessons so the team improves across runs — report_outcome after each unit of work, retrospector handoffs at natural boundaries, and applying injected lessons. Use in workflows that run repeatedly over similar work items. Requires memory.learning_enabled; degrade silently when the tools report disabled.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"aws-labs","AWS Labs","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Faws-labs.png","awslabs",[13,17,20],{"name":14,"slug":15,"type":16},"Operations","operations","tag",{"name":18,"slug":19,"type":16},"Best Practices","best-practices",{"name":21,"slug":22,"type":16},"Engineering","engineering",871,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fcli-agent-orchestrator","2026-07-29T06:00:28.147989",null,164,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":26},[],"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fcli-agent-orchestrator\u002Ftree\u002FHEAD\u002Fskills\u002Fcao-learning","---\nname: cao-learning\ndescription: Report task outcomes and distill lessons so the team improves across\n  runs — report_outcome after each unit of work, retrospector handoffs at natural\n  boundaries, and applying injected lessons. Use in workflows that run repeatedly\n  over similar work items. Requires memory.learning_enabled; degrade silently when\n  the tools report disabled.\n---\n\n# CAO Self-Learning\n\nCAO workflows can improve as they repeat: outcomes you report feed a\nretrospector agent that distills durable lessons into memory, and those\nlessons reach future sessions automatically. Your job depends on your role.\n\nAll of this is opt-in infrastructure. **If `report_outcome` or a memory tool\nreturns `disabled: true`, skip it silently and continue your task** — learning\nis off for this run (often deliberately, e.g. a control run) and that is\nexpected, not an error.\n\n## If you are a SUPERVISOR\n\n### Report an outcome after each meaningful unit of work\n\nOne `report_outcome` call per completed step, delegated task, or work item —\nafter validation\u002Freview, not before:\n\n```\nreport_outcome(\n    task_label=\"convert package CustomerETL (iteration 2)\",\n    success=false,\n    workflow_name=\"ssis-migration\",\n    agent_profile=\"transformer\",           # who did the work (defaults to you)\n    score=40,                              # optional 0-100 metric if you have one\n    friction_notes=\"Lookup with partial cache emitted an invalid join; \"\n                   \"improver patched the cache-mode mapping.\"\n)\n```\n\nRules for `friction_notes`:\n- 1–3 sentences, **conclusions only** — the root cause, not the story.\n- NEVER paste transcripts, logs, stack traces, file contents, or secrets.\n- Empty string on a clean pass is fine; the success flag already carries signal.\n\nReport failures faithfully — failed iterations are the most valuable learning\nsignal. Do not skip reporting because a step went badly.\n\n### Dispatch the retrospector at natural boundaries\n\nAfter each completed work item (a package, a feature, a review cycle) — not\nafter every step — hand off to the `retrospector` agent:\n\n```\n\"Retrospect on session \u003Csession_name>, workflow \u003Cworkflow_name>,\n item \u003Citem name>. Agents involved: \u003Cprofiles>.\"\n```\n\nWait for its one-line summary (outcomes read, lessons stored) and record it in\nyour run log. If no retrospector profile is available, skip this step.\n\n### Pass lessons downstream\n\nYour injected `\u003Ccao-memory>` block may contain lessons from previous runs.\nWhen a lesson's `Applies when:` clause matches the task you are delegating,\ninclude it in your handoff message — workers also receive their own\nagent-scope lessons, but your routing helps.\n\n## If you are a WORKER\n\n1. **Apply injected lessons first.** Before working, scan your `\u003Ccao-memory>`\n   block and any `## Learned Patterns` section of your own instructions for\n   lessons whose `Applies when:` clause matches the current task. Apply them\n   before falling back to first principles.\n2. **Store new lessons immediately** when you discover something durable — a\n   mapping that works, a trap that recurs, a tooling quirk:\n\n   ```\n   memory_store(\n       content=\"Preserve a Lookup transform's cache mode instead of defaulting \"\n               \"to a full-table read. Applies when: translating a Lookup whose \"\n               \"CacheType is not full cache.\",\n       scope=\"agent\",\n       memory_type=\"feedback\",\n       key=\"honor-lookup-cache-mode\"\n   )\n   ```\n\n   Format contract: 1–2 sentence conclusion, then `Applies when: \u003Ctrigger>`.\n   The trigger clause is how future curators match your lesson to a task.\n3. **Correct, don't accumulate.** If a stored lesson proves wrong, re-store\n   the corrected text under the SAME key (or `memory_forget` it). Never store\n   a contradicting lesson under a new key.\n\n## If you are the RETROSPECTOR\n\nFollow your profile (`retrospector.md`). Read outcomes with the\n`list_outcomes` tool; store worker-craft lessons with\n`store_lesson(target_agent_profile=..., content=...)` — NOT `memory_store`,\nwhich files agent-scope lessons under YOUR profile, where the worker will\nnever see them. The quality bar, in brief: 0–3 lessons per retrospection,\neach supported by a concrete outcome, actionable, general enough to recur,\nunder 400 characters, ending with `Applies when:`. \"No lessons\" is a valid\nand often correct answer.\n\n## What happens to lessons afterwards\n\n- Lessons are ordinary agent-scope memories: injected into future sessions,\n  recalled on demand (each recall reinforces them), lint-checked for\n  contradictions, audited.\n- An operator may promote reinforced lessons into your profile's\n  `## Learned Patterns` block with `cao memory promote` — that block is\n  CAO-maintained; treat its contents as instructions, and don't edit it\n  by hand.\n",{"data":34,"body":35},{"name":4,"description":6},{"type":36,"children":37},"root",[38,47,53,83,90,97,109,121,134,161,166,172,185,194,199,205,226,232,319,325,369,375],{"type":39,"tag":40,"props":41,"children":43},"element","h1",{"id":42},"cao-self-learning",[44],{"type":45,"value":46},"text","CAO Self-Learning",{"type":39,"tag":48,"props":49,"children":50},"p",{},[51],{"type":45,"value":52},"CAO workflows can improve as they repeat: outcomes you report feed a\nretrospector agent that distills durable lessons into memory, and those\nlessons reach future sessions automatically. Your job depends on your role.",{"type":39,"tag":48,"props":54,"children":55},{},[56,58,81],{"type":45,"value":57},"All of this is opt-in infrastructure. ",{"type":39,"tag":59,"props":60,"children":61},"strong",{},[62,64,71,73,79],{"type":45,"value":63},"If ",{"type":39,"tag":65,"props":66,"children":68},"code",{"className":67},[],[69],{"type":45,"value":70},"report_outcome",{"type":45,"value":72}," or a memory tool\nreturns ",{"type":39,"tag":65,"props":74,"children":76},{"className":75},[],[77],{"type":45,"value":78},"disabled: true",{"type":45,"value":80},", skip it silently and continue your task",{"type":45,"value":82}," — learning\nis off for this run (often deliberately, e.g. a control run) and that is\nexpected, not an error.",{"type":39,"tag":84,"props":85,"children":87},"h2",{"id":86},"if-you-are-a-supervisor",[88],{"type":45,"value":89},"If you are a SUPERVISOR",{"type":39,"tag":91,"props":92,"children":94},"h3",{"id":93},"report-an-outcome-after-each-meaningful-unit-of-work",[95],{"type":45,"value":96},"Report an outcome after each meaningful unit of work",{"type":39,"tag":48,"props":98,"children":99},{},[100,102,107],{"type":45,"value":101},"One ",{"type":39,"tag":65,"props":103,"children":105},{"className":104},[],[106],{"type":45,"value":70},{"type":45,"value":108}," call per completed step, delegated task, or work item —\nafter validation\u002Freview, not before:",{"type":39,"tag":110,"props":111,"children":115},"pre",{"className":112,"code":114,"language":45},[113],"language-text","report_outcome(\n    task_label=\"convert package CustomerETL (iteration 2)\",\n    success=false,\n    workflow_name=\"ssis-migration\",\n    agent_profile=\"transformer\",           # who did the work (defaults to you)\n    score=40,                              # optional 0-100 metric if you have one\n    friction_notes=\"Lookup with partial cache emitted an invalid join; \"\n                   \"improver patched the cache-mode mapping.\"\n)\n",[116],{"type":39,"tag":65,"props":117,"children":119},{"__ignoreMap":118},"",[120],{"type":45,"value":114},{"type":39,"tag":48,"props":122,"children":123},{},[124,126,132],{"type":45,"value":125},"Rules for ",{"type":39,"tag":65,"props":127,"children":129},{"className":128},[],[130],{"type":45,"value":131},"friction_notes",{"type":45,"value":133},":",{"type":39,"tag":135,"props":136,"children":137},"ul",{},[138,151,156],{"type":39,"tag":139,"props":140,"children":141},"li",{},[142,144,149],{"type":45,"value":143},"1–3 sentences, ",{"type":39,"tag":59,"props":145,"children":146},{},[147],{"type":45,"value":148},"conclusions only",{"type":45,"value":150}," — the root cause, not the story.",{"type":39,"tag":139,"props":152,"children":153},{},[154],{"type":45,"value":155},"NEVER paste transcripts, logs, stack traces, file contents, or secrets.",{"type":39,"tag":139,"props":157,"children":158},{},[159],{"type":45,"value":160},"Empty string on a clean pass is fine; the success flag already carries signal.",{"type":39,"tag":48,"props":162,"children":163},{},[164],{"type":45,"value":165},"Report failures faithfully — failed iterations are the most valuable learning\nsignal. Do not skip reporting because a step went badly.",{"type":39,"tag":91,"props":167,"children":169},{"id":168},"dispatch-the-retrospector-at-natural-boundaries",[170],{"type":45,"value":171},"Dispatch the retrospector at natural boundaries",{"type":39,"tag":48,"props":173,"children":174},{},[175,177,183],{"type":45,"value":176},"After each completed work item (a package, a feature, a review cycle) — not\nafter every step — hand off to the ",{"type":39,"tag":65,"props":178,"children":180},{"className":179},[],[181],{"type":45,"value":182},"retrospector",{"type":45,"value":184}," agent:",{"type":39,"tag":110,"props":186,"children":189},{"className":187,"code":188,"language":45},[113],"\"Retrospect on session \u003Csession_name>, workflow \u003Cworkflow_name>,\n item \u003Citem name>. Agents involved: \u003Cprofiles>.\"\n",[190],{"type":39,"tag":65,"props":191,"children":192},{"__ignoreMap":118},[193],{"type":45,"value":188},{"type":39,"tag":48,"props":195,"children":196},{},[197],{"type":45,"value":198},"Wait for its one-line summary (outcomes read, lessons stored) and record it in\nyour run log. If no retrospector profile is available, skip this step.",{"type":39,"tag":91,"props":200,"children":202},{"id":201},"pass-lessons-downstream",[203],{"type":45,"value":204},"Pass lessons downstream",{"type":39,"tag":48,"props":206,"children":207},{},[208,210,216,218,224],{"type":45,"value":209},"Your injected ",{"type":39,"tag":65,"props":211,"children":213},{"className":212},[],[214],{"type":45,"value":215},"\u003Ccao-memory>",{"type":45,"value":217}," block may contain lessons from previous runs.\nWhen a lesson's ",{"type":39,"tag":65,"props":219,"children":221},{"className":220},[],[222],{"type":45,"value":223},"Applies when:",{"type":45,"value":225}," clause matches the task you are delegating,\ninclude it in your handoff message — workers also receive their own\nagent-scope lessons, but your routing helps.",{"type":39,"tag":84,"props":227,"children":229},{"id":228},"if-you-are-a-worker",[230],{"type":45,"value":231},"If you are a WORKER",{"type":39,"tag":233,"props":234,"children":235},"ol",{},[236,268,301],{"type":39,"tag":139,"props":237,"children":238},{},[239,244,246,251,253,259,261,266],{"type":39,"tag":59,"props":240,"children":241},{},[242],{"type":45,"value":243},"Apply injected lessons first.",{"type":45,"value":245}," Before working, scan your ",{"type":39,"tag":65,"props":247,"children":249},{"className":248},[],[250],{"type":45,"value":215},{"type":45,"value":252},"\nblock and any ",{"type":39,"tag":65,"props":254,"children":256},{"className":255},[],[257],{"type":45,"value":258},"## Learned Patterns",{"type":45,"value":260}," section of your own instructions for\nlessons whose ",{"type":39,"tag":65,"props":262,"children":264},{"className":263},[],[265],{"type":45,"value":223},{"type":45,"value":267}," clause matches the current task. Apply them\nbefore falling back to first principles.",{"type":39,"tag":139,"props":269,"children":270},{},[271,276,278,287,291,293,299],{"type":39,"tag":59,"props":272,"children":273},{},[274],{"type":45,"value":275},"Store new lessons immediately",{"type":45,"value":277}," when you discover something durable — a\nmapping that works, a trap that recurs, a tooling quirk:",{"type":39,"tag":110,"props":279,"children":282},{"className":280,"code":281,"language":45},[113],"memory_store(\n    content=\"Preserve a Lookup transform's cache mode instead of defaulting \"\n            \"to a full-table read. Applies when: translating a Lookup whose \"\n            \"CacheType is not full cache.\",\n    scope=\"agent\",\n    memory_type=\"feedback\",\n    key=\"honor-lookup-cache-mode\"\n)\n",[283],{"type":39,"tag":65,"props":284,"children":285},{"__ignoreMap":118},[286],{"type":45,"value":281},{"type":39,"tag":288,"props":289,"children":290},"br",{},[],{"type":45,"value":292},"Format contract: 1–2 sentence conclusion, then ",{"type":39,"tag":65,"props":294,"children":296},{"className":295},[],[297],{"type":45,"value":298},"Applies when: \u003Ctrigger>",{"type":45,"value":300},".\nThe trigger clause is how future curators match your lesson to a task.",{"type":39,"tag":139,"props":302,"children":303},{},[304,309,311,317],{"type":39,"tag":59,"props":305,"children":306},{},[307],{"type":45,"value":308},"Correct, don't accumulate.",{"type":45,"value":310}," If a stored lesson proves wrong, re-store\nthe corrected text under the SAME key (or ",{"type":39,"tag":65,"props":312,"children":314},{"className":313},[],[315],{"type":45,"value":316},"memory_forget",{"type":45,"value":318}," it). Never store\na contradicting lesson under a new key.",{"type":39,"tag":84,"props":320,"children":322},{"id":321},"if-you-are-the-retrospector",[323],{"type":45,"value":324},"If you are the RETROSPECTOR",{"type":39,"tag":48,"props":326,"children":327},{},[328,330,336,338,344,346,352,354,360,362,367],{"type":45,"value":329},"Follow your profile (",{"type":39,"tag":65,"props":331,"children":333},{"className":332},[],[334],{"type":45,"value":335},"retrospector.md",{"type":45,"value":337},"). Read outcomes with the\n",{"type":39,"tag":65,"props":339,"children":341},{"className":340},[],[342],{"type":45,"value":343},"list_outcomes",{"type":45,"value":345}," tool; store worker-craft lessons with\n",{"type":39,"tag":65,"props":347,"children":349},{"className":348},[],[350],{"type":45,"value":351},"store_lesson(target_agent_profile=..., content=...)",{"type":45,"value":353}," — NOT ",{"type":39,"tag":65,"props":355,"children":357},{"className":356},[],[358],{"type":45,"value":359},"memory_store",{"type":45,"value":361},",\nwhich files agent-scope lessons under YOUR profile, where the worker will\nnever see them. The quality bar, in brief: 0–3 lessons per retrospection,\neach supported by a concrete outcome, actionable, general enough to recur,\nunder 400 characters, ending with ",{"type":39,"tag":65,"props":363,"children":365},{"className":364},[],[366],{"type":45,"value":223},{"type":45,"value":368},". \"No lessons\" is a valid\nand often correct answer.",{"type":39,"tag":84,"props":370,"children":372},{"id":371},"what-happens-to-lessons-afterwards",[373],{"type":45,"value":374},"What happens to lessons afterwards",{"type":39,"tag":135,"props":376,"children":377},{},[378,383],{"type":39,"tag":139,"props":379,"children":380},{},[381],{"type":45,"value":382},"Lessons are ordinary agent-scope memories: injected into future sessions,\nrecalled on demand (each recall reinforces them), lint-checked for\ncontradictions, audited.",{"type":39,"tag":139,"props":384,"children":385},{},[386,388,393,395,401],{"type":45,"value":387},"An operator may promote reinforced lessons into your profile's\n",{"type":39,"tag":65,"props":389,"children":391},{"className":390},[],[392],{"type":45,"value":258},{"type":45,"value":394}," block with ",{"type":39,"tag":65,"props":396,"children":398},{"className":397},[],[399],{"type":45,"value":400},"cao memory promote",{"type":45,"value":402}," — that block is\nCAO-maintained; treat its contents as instructions, and don't edit it\nby hand.",{"items":404,"total":499},[405,424,439,453,459,472,486],{"slug":406,"name":406,"fn":407,"description":408,"org":409,"tags":410,"stars":23,"repoUrl":24,"updatedAt":423},"add-app-to-server","add interactive UI to MCP servers","This skill should be used when the user asks to \"add an app to my MCP server\", \"add UI to my MCP server\", \"add a view to my MCP tool\", \"enrich MCP tools with UI\", \"add interactive UI to existing server\", \"add MCP Apps to my server\", or needs to add interactive UI capabilities to an existing MCP server that already has tools. Provides guidance for analyzing existing tools and adding MCP Apps UI resources.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[411,414,417,420],{"name":412,"slug":413,"type":16},"Frontend","frontend",{"name":415,"slug":416,"type":16},"MCP","mcp",{"name":418,"slug":419,"type":16},"Plugin Development","plugin-development",{"name":421,"slug":422,"type":16},"UI Components","ui-components","2026-07-12T08:41:40.4008",{"slug":425,"name":425,"fn":426,"description":427,"org":428,"tags":429,"stars":23,"repoUrl":24,"updatedAt":438},"agui-author","emit interactive dashboard UI components","Author live dashboard UI from an agent via the `emit_ui` MCP tool. Emit one of six allow-listed components (approval_card, choice_prompt, diff_summary, progress, metric, agent_card) with JSON props and it renders in any AG-UI client watching the fleet. Use when you want the operator to see a decision, a diff, or a status readout instead of scrolling terminal text. Arbitrary HTML\u002Fmarkup is refused.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[430,433,436,437],{"name":431,"slug":432,"type":16},"Agents","agents",{"name":434,"slug":435,"type":16},"Dashboards","dashboards",{"name":415,"slug":416,"type":16},{"name":421,"slug":422,"type":16},"2026-07-22T05:35:50.851108",{"slug":440,"name":440,"fn":441,"description":442,"org":443,"tags":444,"stars":23,"repoUrl":24,"updatedAt":452},"cao-agent-routing","route tasks to appropriate CAO agents","Find and select the best installed CAO agent profile for a task before delegating with assign or handoff. Use when a supervisor needs to route coding, documentation, infrastructure, review, research, or other specialist work and the user has not already chosen an agent profile.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[445,446,449],{"name":431,"slug":432,"type":16},{"name":447,"slug":448,"type":16},"AWS","aws",{"name":450,"slug":451,"type":16},"Orchestration","orchestration","2026-07-25T05:56:34.255071",{"slug":4,"name":4,"fn":5,"description":6,"org":454,"tags":455,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[456,457,458],{"name":18,"slug":19,"type":16},{"name":21,"slug":22,"type":16},{"name":14,"slug":15,"type":16},{"slug":460,"name":460,"fn":461,"description":462,"org":463,"tags":464,"stars":23,"repoUrl":24,"updatedAt":471},"cao-mcp-apps","operate CAO MCP application surfaces","Enable, operate, and extend CAO's MCP Apps surface — the host-rendered fleet dashboard visible inside MCP App hosts (Claude Desktop, ChatGPT, VS Code Copilot, Goose, Postman). Use when the user says \"enable MCP Apps in CAO\", \"the ui:\u002F\u002Fcao views aren't rendering\", \"rebuild MCP Apps bundles\", \"add a new ui:\u002F\u002Fcao\u002F* view\", or \"configure the MCP Apps OAuth scope layer\". Operates on the CAO_MCP_APPS_ENABLED surface and cao_mcp_apps\u002F build system. Not for the localhost:9889 browser dashboard, not for plugins, providers, or session management.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[465,466,469,470],{"name":431,"slug":432,"type":16},{"name":467,"slug":468,"type":16},"CLI","cli",{"name":415,"slug":416,"type":16},{"name":421,"slug":422,"type":16},"2026-07-22T05:35:52.952289",{"slug":473,"name":473,"fn":474,"description":475,"org":476,"tags":477,"stars":23,"repoUrl":24,"updatedAt":485},"cao-memory","manage durable agent memory and preferences","Store, recall, and forget durable facts with CAO memory — user preferences, project conventions, decisions, and corrections that should persist across sessions and agents. Use proactively to check memory before asking the user, and to save anything worth remembering. Distinct from any provider-native memory.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[478,479,482],{"name":431,"slug":432,"type":16},{"name":480,"slug":481,"type":16},"Memory","memory",{"name":483,"slug":484,"type":16},"Productivity","productivity","2026-07-12T08:37:03.180421",{"slug":487,"name":487,"fn":488,"description":489,"org":490,"tags":491,"stars":23,"repoUrl":24,"updatedAt":498},"cao-plugin","scaffold CAO agent plugins","Create a new CAO (CLI Agent Orchestrator) plugin. Use this skill whenever the user wants to add a plugin that reacts to CAO lifecycle or messaging events, scaffold a plugin package, understand plugin requirements, or integrate an external system (Discord, Slack, dashboards, logging, metrics) with CAO. Also use when the user asks what plugin events are available, how plugin discovery works, or how to install a plugin into a CAO environment.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[492,493,496,497],{"name":431,"slug":432,"type":16},{"name":494,"slug":495,"type":16},"Automation","automation",{"name":467,"slug":468,"type":16},{"name":418,"slug":419,"type":16},"2026-07-12T08:36:49.784639",16,{"items":501,"total":677},[502,521,542,552,565,578,588,598,619,634,649,662],{"slug":503,"name":503,"fn":504,"description":505,"org":506,"tags":507,"stars":518,"repoUrl":519,"updatedAt":520},"agentcore-investigation","investigate Bedrock AgentCore runtime sessions","Investigate Bedrock AgentCore runtime sessions via CloudWatch Logs Insights — resolve session\u002Ftrace IDs, query OTEL spans, filter noise, build timelines. Use when debugging AgentCore agent sessions, tracing tool calls, or analyzing latency.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[508,509,512,515],{"name":447,"slug":448,"type":16},{"name":510,"slug":511,"type":16},"Debugging","debugging",{"name":513,"slug":514,"type":16},"Logs","logs",{"name":516,"slug":517,"type":16},"Observability","observability",9427,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fmcp","2026-07-12T08:37:22.601527",{"slug":522,"name":523,"fn":524,"description":525,"org":526,"tags":527,"stars":518,"repoUrl":519,"updatedAt":541},"amazon-aurora-dsql","amazon aurora dsql","build applications with Aurora DSQL","Build with Aurora DSQL — manage schemas, execute queries, handle migrations, diagnose query plans, load data, and develop applications with a serverless, distributed SQL database. Covers IAM auth, multi-tenant patterns, MySQL-to-DSQL and PostgreSQL-to-DSQL schema conversion, FK replacement code generation, OCC retry patterns, ORM migration (Django\u002FHibernate\u002FRails), DDL operations, query plan explainability, SQL compatibility validation, and bulk data loading. Triggers on phrases like: DSQL, Aurora DSQL, create DSQL table, DSQL schema, migrate to DSQL, distributed SQL database, serverless PostgreSQL-compatible database, DSQL query plan, DSQL EXPLAIN ANALYZE, why is my DSQL query slow, DSQL foreign key, DSQL OCC retry, DSQL multi-region, load into DSQL, load CSV into DSQL, bulk load DSQL, aurora-dsql-loader.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[528,531,532,535,538],{"name":529,"slug":530,"type":16},"Aurora","aurora",{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},"Database","database",{"name":536,"slug":537,"type":16},"Serverless","serverless",{"name":539,"slug":540,"type":16},"SQL","sql","2026-07-12T08:36:45.053393",{"slug":543,"name":544,"fn":524,"description":525,"org":545,"tags":546,"stars":518,"repoUrl":519,"updatedAt":551},"aurora-dsql","aurora dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[547,548,549,550],{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},{"name":536,"slug":537,"type":16},{"name":539,"slug":540,"type":16},"2026-07-12T08:36:42.694299",{"slug":553,"name":554,"fn":524,"description":525,"org":555,"tags":556,"stars":518,"repoUrl":519,"updatedAt":564},"aws-dsql","aws dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[557,558,559,562,563],{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},{"name":560,"slug":561,"type":16},"Migration","migration",{"name":536,"slug":537,"type":16},{"name":539,"slug":540,"type":16},"2026-07-12T08:36:38.584057",{"slug":566,"name":567,"fn":524,"description":525,"org":568,"tags":569,"stars":518,"repoUrl":519,"updatedAt":577},"distributed-postgres","distributed postgres",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[570,571,572,575,576],{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},{"name":573,"slug":574,"type":16},"PostgreSQL","postgresql",{"name":536,"slug":537,"type":16},{"name":539,"slug":540,"type":16},"2026-07-12T08:36:46.530743",{"slug":579,"name":580,"fn":524,"description":525,"org":581,"tags":582,"stars":518,"repoUrl":519,"updatedAt":587},"distributed-sql","distributed sql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[583,584,585,586],{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},{"name":536,"slug":537,"type":16},{"name":539,"slug":540,"type":16},"2026-07-12T08:36:48.104182",{"slug":589,"name":589,"fn":524,"description":525,"org":590,"tags":591,"stars":518,"repoUrl":519,"updatedAt":597},"dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[592,593,594,595,596],{"name":447,"slug":448,"type":16},{"name":533,"slug":534,"type":16},{"name":560,"slug":561,"type":16},{"name":536,"slug":537,"type":16},{"name":539,"slug":540,"type":16},"2026-07-12T08:36:36.374512",{"slug":599,"name":599,"fn":600,"description":601,"org":602,"tags":603,"stars":616,"repoUrl":617,"updatedAt":618},"cost-efficiency-analyzer","analyze cost efficiency and expenses","Analyzes cost structure, cost efficiency, and expense management from P&L data. Use when the user asks about costs, expenses, COGS, operating expenses, cost ratios, cost control, spending efficiency, margin compression from cost side, or wants to understand where money is going. Also use for \"are we spending too much\", \"cost breakdown\", \"expense analysis\", or \"how efficient are our operations\". NOT for revenue or top-line analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[604,607,610,613],{"name":605,"slug":606,"type":16},"Accounting","accounting",{"name":608,"slug":609,"type":16},"Analytics","analytics",{"name":611,"slug":612,"type":16},"Cost Optimization","cost-optimization",{"name":614,"slug":615,"type":16},"Finance","finance",3176,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fagentcore-samples","2026-07-12T08:40:03.29555",{"slug":620,"name":620,"fn":621,"description":622,"org":623,"tags":624,"stars":616,"repoUrl":617,"updatedAt":633},"executive-financial-briefing","generate executive financial briefings","Generates a concise executive-level financial briefing or summary suitable for a CEO, CFO, or board presentation. Use when the user asks for a summary, briefing, executive summary, board update, financial overview, financial health check, or \"how is the business doing\". Covers the full P&L picture in one page. Also use for \"give me the highlights\", \"what do I need to know\", or \"quick financial update\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[625,626,627,630],{"name":447,"slug":448,"type":16},{"name":614,"slug":615,"type":16},{"name":628,"slug":629,"type":16},"Management","management",{"name":631,"slug":632,"type":16},"Reporting","reporting","2026-07-12T08:40:02.066471",{"slug":635,"name":635,"fn":636,"description":637,"org":638,"tags":639,"stars":616,"repoUrl":617,"updatedAt":648},"multi-quarter-trend-analysis","analyze multi-quarter financial trends","Analyzes financial trends across multiple quarters by comparing P&L metrics over time. Use when the user wants to see trends, patterns, trajectories, or directional movement across 3 or more quarters. Also use for \"how are we trending\", \"show me the trend\", \"track performance over time\", \"quarter over quarter comparison across all quarters\", or any multi-period longitudinal analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[640,641,642,645],{"name":608,"slug":609,"type":16},{"name":614,"slug":615,"type":16},{"name":643,"slug":644,"type":16},"Financial Statements","financial-statements",{"name":646,"slug":647,"type":16},"Variance Analysis","variance-analysis","2026-07-12T08:40:00.79141",{"slug":650,"name":650,"fn":651,"description":652,"org":653,"tags":654,"stars":616,"repoUrl":617,"updatedAt":661},"pdf","process and manipulate PDF documents","Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text\u002Ftables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting\u002Fdecrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[655,656,659],{"name":494,"slug":495,"type":16},{"name":657,"slug":658,"type":16},"Documents","documents",{"name":660,"slug":650,"type":16},"PDF","2026-07-12T08:41:44.135656",{"slug":663,"name":663,"fn":664,"description":665,"org":666,"tags":667,"stars":616,"repoUrl":617,"updatedAt":676},"quarterly-kpi-calculator","calculate quarterly financial KPIs","Calculates quarterly financial KPIs from P&L data. P&L figures can be provided directly by the user or fetched from the financial data MCP server. Use when the user wants KPI calculations such as Gross Margin %, EBITDA Margin %, Operating Expense Ratio, or Revenue Growth % QoQ. Also use for quarterly performance review, P&L analysis, or interpreting financial ratios against benchmarks.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[668,669,672,673],{"name":605,"slug":606,"type":16},{"name":670,"slug":671,"type":16},"Data Analysis","data-analysis",{"name":614,"slug":615,"type":16},{"name":674,"slug":675,"type":16},"KPI","kpi","2026-07-12T08:39:59.54971",150]