/migrating-to-amazon-redshift
Guides an end-to-end data-warehouse migration to Amazon Redshift — discovery, schema/SQL/stored-procedure/macro/script conversion, data migration, validation, performance comparison, and reporting. Source-routed via `references/<source>/`; Teradata (Vantage) is the supported
$ npx -y skills add aws/agent-toolkit-for-aws --skill migrating-to-amazon-redshift --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/migrating-to-amazon-redshift
Context preview
The summary Claude sees to decide when to auto-load this skill.
Guides an end-to-end data-warehouse migration to Amazon Redshift — discovery, schema/SQL/stored-procedure/macro/script conversion, data migration, validation, performance comparison, and reporting. Source-routed via `references/<source>/`; Teradata (Vantage) is the supported
SKILL.md
migrating-to-amazon-redshift.SKILL.mdname: migrating-to-amazon-redshift
description: "Guides an end-to-end data-warehouse migration to Amazon Redshift — discovery, schema/SQL/stored-procedure/macro/script conversion, data migration, validation, performance comparison, and reporting. Source-routed via `references/<source>/`; Teradata (Vantage) is the supported source; additional sources are added as their own `references/<source>/` sets. Text-only knowledge (no executable code) — the AI generates all execution at runtime. Applies when a user wants to migrate Teradata to Amazon Redshift, convert Teradata DDL/SQL/stored procedures/macros/BTEQ to Redshift/RSQL, or assess Teradata-to-Redshift migration complexity. Applies only to migrations targeting Amazon Redshift; migrations to other platforms (Snowflake, BigQuery, Databricks, etc.) are out of scope regardless of source. Does not cover general Redshift administration, performance tuning, or troubleshooting of existing Redshift clusters (no migration involved), or sources not listed under references/."
version: 1
Migrating to Amazon Redshift
What this skill is
This skill is **AI guidance, not an execution framework**. It is **entirely Markdown knowledge** (rules, mappings, patterns, best practices) — **no executable code**. All execution — conversion, the discovery/migration/validation runners, dependencies, and infrastructure — **you (the AI) generate at runtime** from this knowledge, tailored to the customer's environment.
Principle: **knowledge over shipped code → less drift, nothing for the customer to run or depend on, reliable first-time results.** Do not look for a pyproject, a tools package, an orchestrator engine, or shipped scripts — there are none by design; you generate execution.
> **Runtime:** this skill works **with or without the AWS MCP server** — step guidance uses AWS > CLI syntax. Running it **with the AWS MCP server is recommended** for sandboxed execution and > audit logging; without it, the AI runs the generated scripts on the host shell (assumes Bash, > Python 3, and AWS CLI + credentials). Do not assume MCP-only tools are available.
Source routing
This skill migrates a supported **source data warehouse to Amazon Redshift**. First identify the **source system**, then load that source's knowledge under `references/<source>/`:
- **Teradata (Vantage)** → `references/teradata/` — supported (all references below).
- *Other sources (e.g. Snowflake, Oracle) — unsupported; each is added as its own `references/<source>/` set when ready.*
The **workflow is source-agnostic** (discovery → convert → migrate → validate → performance → report); only the **conversion knowledge** is source-specific. Everything below is the Teradata set.
When to use
- Migrating a Teradata system (Vantage) to Amazon Redshift.
- Converting Teradata DDL, SQL, stored procedures, macros, or BTEQ to Redshift/RSQL.
- Assessing Teradata→Redshift migration complexity/effort.
Operating principles
- **Discovery is strictly read-only (SELECT-only) on the source.** Never change production
state: no DDL/DML, and never enable logging (`BEGIN/REPLACE QUERY LOGGING`). If DBQL is empty, mark it `unavailable` and fall back to always-on `DBC.AMPUsageV` — see `references/teradata/discovery-queries.md`.
- **Skill provides knowledge; you generate execution.** Read the `references/` to reason and
convert — apply the rules in `references/teradata/conversion-rules.md` directly for conversion, and generate the discovery/migration/validation runners (and the read-only discovery collector from `references/teradata/discovery-queries.md`) tailored to the environment.
- **Generate, don't assume a framework.** Assume the environment has Bash, Python 3, and AWS
CLI + credentials. Any Python lib a generated script needs (`teradatasql`, `boto3`, …) is `pip install`-ed on demand by that script / its run-instructions — pin exact versions. Teradata **TTU** (BTEQ/TPT) is **Linux/Windows-only — not macOS**; prefer **WRITE_NOS** + **`teradatasql`** (cross-platform, no client) for discovery/extract unless a TTU/Linux host exists.
- **Credentials:** use a **read-only** Teradata user; prefer IAM roles over IAM users. For
**production**, reference credentials from **AWS Secrets Manager or Systems Manager Parameter Store**. For **local development only**, a git-ignored `.env` file or profile may be used — never commit it. Never hard-code or echo secrets. In a portable bundle, reference a **co-located credentials file** and ship a `credentials.env.example` template — the real file is git-ignored.
- **Persist state in files.** All generated output goes under a git-ignored `output/` in the
user's working dir; keep `output/state.md` current so work is resumable.
Workflow (phases)
Run in order; each phase's `result/` feeds the next (see `references/teradata/orchestration.md`).
1. **Discovery** — inventory the source. → `references/teradata/discovery-queries.md` (read-only collection SQL + BTEQ driver template the AI generates) → `output/discovery/result/inventory.json` 2. **Conversion** — schema + code. Apply the conversion rules directly, flag the manual-rewrite long tail, and fix Redshift errors from the references. → `references/teradata/conversion-rules.md`, `references/teradata/data-type-mapping.md`, `references/teradata/architecture-mapping.md`, `references/teradata/stored-procedure-migration.md`, `references/teradata/bteq-to-rsql.md`, `references/teradata/common-errors.md` 3. **Data migration** — extract → S3 → COPY, restartable. → `references/teradata/data-migration-patterns.md` 4. **Validation** — counts/aggregates/sampling. → `references/teradata/validation-patterns.md` 5. **Performance** — baseline vs Redshift; size the target. → `references/teradata/performance.md`, `references/teradata/sizing.md` 6. **Reporting** — aggregate all phases. → `references/teradata/reporting.md`
Conversion (how the AI applies it)
There is no converter to run —
Read more
name: migrating-to-amazon-redshift description: "Guides an end-to-end data-warehouse migration to Amazon Redshift — discovery, schema/SQL/stored-procedure/macro/script conversion, data migration, validation, performance comparison, and reporting. Source-routed via `references/<source>/`; Teradata (Vantage) is the supported source; additional sources are added as their own `references/<source>/` sets. Text-only knowledge (no executable code) — the AI generates all execution at runtime. Applies when a user wants to migrate Teradata to Amazon Redshift, convert Teradata DDL/SQL/stored procedures/macros/BTEQ to Redshift/RSQL, or assess Teradata-to-Redshift migration complexity. Applies only to migrations targeting Amazon Redshift; migrations to other platforms (Snowflake, BigQuery, Databricks, etc.) are out of scope regardless of source. Does not cover general Redshift administration, performance tuning, or troubleshooting of existing Redshift clusters (no migration involved), or sources not listed under references/." version: 1
Migrating to Amazon Redshift
What this skill is
This skill is **AI guidance, not an execution framework**. It is **entirely Markdown knowledge** (rules, mappings, patterns, best practices) — **no executable code**. All execution — conversion, the discovery/migration/validation runners, dependencies, and infrastructure — **you (the AI) generate at runtime** from this knowledge, tailored to the customer's environment.
Principle: **knowledge over shipped code → less drift, nothing for the customer to run or depend on, reliable first-time results.** Do not look for a pyproject, a tools package, an orchestrator engine, or shipped scripts — there are none by design; you generate execution.
> **Runtime:** this skill works **with or without the AWS MCP server** — step guidance uses AWS > CLI syntax. Running it **with the AWS MCP server is recommended** for sandboxed execution and > audit logging; without it, the AI runs the generated scripts on the host shell (assumes Bash, > Python 3, and AWS CLI + credentials). Do not assume MCP-only tools are available.
Source routing
This skill migrates a supported **source data warehouse to Amazon Redshift**. First identify the **source system**, then load that source's knowledge under `references/<source>/`:
- **Teradata (Vantage)** → `references/teradata/` — supported (all references below).
- *Other sources (e.g. Snowflake, Oracle) — unsupported; each is added as its own `references/<source>/` set when ready.*
The **workflow is source-agnostic** (discovery → convert → migrate → validate → performance → report); only the **conversion knowledge** is source-specific. Everything below is the Teradata set.
When to use
- Migrating a Teradata system (Vantage) to Amazon Redshift.
- Converting Teradata DDL, SQL, stored procedures, macros, or BTEQ to Redshift/RSQL.
- Assessing Teradata→Redshift migration complexity/effort.
Operating principles
- **Discovery is strictly read-only (SELECT-only) on the source.** Never change production
state: no DDL/DML, and never enable logging (`BEGIN/REPLACE QUERY LOGGING`). If DBQL is empty, mark it `unavailable` and fall back to always-on `DBC.AMPUsageV` — see `references/teradata/discovery-queries.md`.
- **Skill provides knowledge; you generate execution.** Read the `references/` to reason and
convert — apply the rules in `references/teradata/conversion-rules.md` directly for conversion, and generate the discovery/migration/validation runners (and the read-only discovery collector from `references/teradata/discovery-queries.md`) tailored to the environment.
- **Generate, don't assume a framework.** Assume the environment has Bash, Python 3, and AWS
CLI + credentials. Any Python lib a generated script needs (`teradatasql`, `boto3`, …) is `pip install`-ed on demand by that script / its run-instructions — pin exact versions. Teradata **TTU** (BTEQ/TPT) is **Linux/Windows-only — not macOS**; prefer **WRITE_NOS** + **`teradatasql`** (cross-platform, no client) for discovery/extract unless a TTU/Linux host exists.
- **Credentials:** use a **read-only** Teradata user; prefer IAM roles over IAM users. For
**production**, reference credentials from **AWS Secrets Manager or Systems Manager Parameter Store**. For **local development only**, a git-ignored `.env` file or profile may be used — never commit it. Never hard-code or echo secrets. In a portable bundle, reference a **co-located credentials file** and ship a `credentials.env.example` template — the real file is git-ignored.
- **Persist state in files.** All generated output goes under a git-ignored `output/` in the
user's working dir; keep `output/state.md` current so work is resumable.
Workflow (phases)
Run in order; each phase's `result/` feeds the next (see `references/teradata/orchestration.md`).
1. **Discovery** — inventory the source. → `references/teradata/discovery-queries.md` (read-only collection SQL + BTEQ driver template the AI generates) → `output/discovery/result/inventory.json` 2. **Conversion** — schema + code. Apply the conversion rules directly, flag the manual-rewrite long tail, and fix Redshift errors from the references. → `references/teradata/conversion-rules.md`, `references/teradata/data-type-mapping.md`, `references/teradata/architecture-mapping.md`, `references/teradata/stored-procedure-migration.md`, `references/teradata/bteq-to-rsql.md`, `references/teradata/common-errors.md` 3. **Data migration** — extract → S3 → COPY, restartable. → `references/teradata/data-migration-patterns.md` 4. **Validation** — counts/aggregates/sampling. → `references/teradata/validation-patterns.md` 5. **Performance** — baseline vs Redshift; size the target. → `references/teradata/performance.md`, `references/teradata/sizing.md` 6. **Reporting** — aggregate all phases. → `references/teradata/reporting.md`
Conversion (how the AI applies it)
There is no converter to run —
Help AI coding agents build, deploy, and manage applications on AWS. The Agent Toolkit for AWS gives AI coding agents the tools, knowledge, and guardrails they need to work with AWS services.
Repo: aws/agent-toolkit-for-aws
Other skills on agent-toolkit-for-aws.
- /analyzing-release-readiness
Trigger a pre-merge release readiness review on a GitHub PR, GitLab MR, or local branch. Use when the user wants to analyze code changes for risk, correctness, and potential rollback issues before merging. Trigger words include release readiness, analyze PR, analyze MR, review
Open skill - /chatting-with-aws-devops-agent
Have a fast, conversational analysis with the AWS DevOps Agent. Use for cost optimization, architecture review, topology mapping, knowledge / runbook discovery, security audits, dependency questions, and quick diagnostics — anything that needs a 5-30 second answer rather than a
Open skill - /coordinating-multi-space-devops-agent
Coordinate the AWS DevOps Agent across multiple AgentSpaces from one Claude Code session — route questions to the right space (prod vs staging vs knowledge), query several spaces in parallel and synthesize, or compare findings across accounts. Use whenever the user has more than
Open skill - /diff-scanning-with-aws-security-agent
Run a fast AWS Security Agent diff scan on only the changed code since a git ref. Use when the user asks to scan changes, run a diff scan, check what changed for security issues, scan before committing, scan before PR, or any pre-commit/pre-push security check.
Open skill - /investigating-incidents-with-aws-devops-agent
Run a deep root-cause investigation on the AWS DevOps Agent. Use when the user describes an incident, alarm, outage, or unexplained behavior — keywords like "5xx", "503", "OOM", "latency spike", "deployment failure", "rollback", "sev1", "investigate", "root cause", "debug",
Open skill - /pentesting-with-aws-security-agent
Run an AWS Security Agent penetration test against a live web application — registers and verifies the target domain, exercises the supplied endpoints with the managed Security Agent service, and returns verified runtime findings. Use when the user asks to pentest, run a
Open skill

