Amazon EKS Machine Learning with Terraform and Kubeflow is a modular platform for running machine-learning operations on Amazon EKS, the managed Kubernetes service, including training pipelines and model-serving systems. It is intended for teams deploying distributed training and inference with tools such as Kubeflow, MLflow, Airflow, and KServe, using configurable AWS infrastructure. The catalogue entries provide commands, skills, hooks, and a plugin for working with this deployment setup.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflowWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow/fleet-export)<a href="https://agentmods.dev/commands/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow/fleet-export"><img src="https://agentmods.dev/badge/commands/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow/fleet-export/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow/fleet-export"><img src="https://agentmods.dev/badge/commands/aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow/fleet-export.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00034 | $0.00936 |
| Opus 5.5 | $0.00014 | $0.00374 |
| Sonnet 5.5 | $0.00007 | $0.00187 |
| Haiku 4.5 | $0.00003 | $0.00094 |
Grade A, and why
fleet-export scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
From the repository's tutorials/multi-model-gpu-sharing directory:
PYTHONPATH=src python3 -m colocation.agent export --fleet $ARGUMENTS
Free and offline: it reads the store and the fleet file, spends no GPU time and touches no cluster beyond the mirror write to EFS.
A search already does this as it finishes, through the same code, so this command is for the
cases where nothing did it for you: an older result, a different --run-token under the same key, a
key whose search predates the export, a fleet that has been profiled but never searched, or a run that
printed the result is stored but was not exported. It exports the baseline whether or not a search
found anything, because the baseline is arithmetic on measured degrees and therefore always exists.
It refuses a fleet with hardware.max_nodes above 1. A split is exported by search itself once
every group of it is met, as <store>/groups/<fleet>/export.<stamp>.yaml (schema_version 2: each
node's group export, copied whole). Report that path instead. A single group can still be exported
with this command by naming its fleet file under <store>/groups/<fleet>/.
It writes observations/<validity-key-hash>/exports/<run-token>.yaml in the local store and on EFS,
or exports/baseline.yaml for a key with no search at all. --export-to <path> puts a third copy
wherever you want one, which is what to use when the user asked to see the file. --run-token <token>
picks an older search under the same key; without it the newest is exported. A token the key does not
hold exits 1 and lists the tokens it does.
What the file says, and why each part is shaped the way it is:
- slots, not devices. A slot is one device with no identity — no UUID, no ordinal — carrying the
(tenant, shard)pairs that sit on it. That is the part of a placement that survives the node: a UUID names hardware Karpenter reclaims in ten minutes, and an ordinal names a position in one driver's enumeration order. required_gib, in absolute GiB per shard. This is the figure a deployment sizes against. Thegranted_gibbeside it is what the run happened to give that tenant, which for a tenant alone on a card is the whole card — it is measured data about the run, not a recommendation.- the conditions by reference: the fleet file's path and the sha256 of its bytes, plus the
validity key they hash to. The key's expansion is already filed as
key.json; a second copy here could disagree with it. - three results: the
baselinealways, the certifiedstrictplacement, andrelaxed, which isnullmore often than not withrelaxed_why_notsaying why. Plus the placements that were measured and rejected, with the overshoot that ruled each one out — those cost a measurement round each, and they stop a consumer proposing an arrangement the hardware already refused. active_thread_percentageon a result's tenant, only when the search measured it under an SM cap. It is part of the placement: the same slots uncapped were not what was certified, and a KAI deploy serves the cap in that tenant's pod env.
It refuses to run at all when a tenant's TP degree is not settled by a solo measurement, and the
refusal names profile. That is the same loader refusal search gets, for the same reason: a degree
nothing measured would make an exported baseline a guess.
Report the path it wrote, the three device counts, and whether relaxed is null. Do not restate the
YAML in prose — the file is the artifact, and the numbers in it are search's, not new ones.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 59 lines · 34 tokens per session scan A 695bf1a40b5c
fleet-export is a command published in the GitHub repository aws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow (132 stars, last pushed 4d ago), licensed Apache-2.0. It adds 34 tokens to every session and 936 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-11-09.
fleet-export compared with commands from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| fleet-exportaws-samples/amazon-eks-machine-learning-with-terraform-and-kubeflow | Command | 132 | 4d ago | Apache-2.0 | A | 34 | Claude Code |
| cost-optimizewshobson/agents | Command | 42k | 5d ago | MIT | A | 26 | Claude Code |
| deploybutterbase-ai/butterbase-skills | Command | 536 | 14d ago | MIT | A | 20 | Claude Code |
| envvercel/vercel-plugin | Command | 336 | yesterday | none | A | 35 | Claude Code |
| firebase-publishPierry/harness-kit | Command | 4 | 1mo ago | MIT | A | 20 | Claude Code |
| scanprajapatimehul/claude-aws-cost-saver | Command | 24 | 4mo ago | MIT | A | 6 | Claude Code |
| migrationdatabayt/hogwarts | Command | 18 | 3d ago | none | A | 4 | Claude Code |