Agent skill

Codegen

by s3s-project in s3s-project/s3s

Change generated code in this repository. An agent skill from s3s-project/s3s.

Apache-2.0Auto-check passedDevelopment

Install Codegen

skills CLI
$ npx skills add s3s-project/s3s --skill codegen -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install s3s-project/s3s codegen --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/s3s-project/s3s.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/codegen .claude/skills/codegen && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
codegen
GitHub stars
311
Token cost
~726 tokens
SKILL.md length
356 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
Apache-2.0

At a glance

Change generated code in this repository. An agent skill from s3s-project/s3s.

  • Editing anything that looks like a generated file
  • SKILL.md covers The loop, The boundary, Where the generators live and The MinIO variant, plus 1 more section
  • Calls cargo, just and git
  • The Smithy models

What it does

Codegen is an agent skill from s3s-project/s3s. Change generated code in this repository. Use when editing anything that looks like a generated file, when the Smithy models or the data under data/ change, when a codegen run leaves a diff, or when adding a generated module.

Its SKILL.md is about 730 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Project scaffolding. It works with Rust and Amazon Web Services. The licence is Apache-2.0.

When your agent uses it

  • Editing anything that looks like a generated file
  • The Smithy models
  • The data under data/ change
  • A codegen run leaves a diff

Example prompts

  • “/codegen”

What it can do on your machine

Read from SKILL.md and the folder at commit 0fdcb86. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • cargo
    • just
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Codegen loads about 726 tokens when it runs. Until then it costs about 58 tokens; SKILL.md has 356 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~58
When it runs · the whole SKILL.md, loaded when a task matches
~726

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from s3s-project/s3s at commit 0fdcb86, republished under its Apache-2.0 licence (© s3s-project). 356 words, ~726 tokens.

Download SKILL.mdSave it as .claude/skills/codegen/SKILL.md (or your agent's skills folder).
name
codegen
description
Change generated code in this repository. Use when editing anything that looks like a generated file, when the Smithy models or the data under data/ change, when a codegen run leaves a diff, or when adding a generated module.
license
Apache-2.0

Codegen

Most of the API surface of s3s and s3s-aws is generated from the Smithy models in data/. A generated file is an output: the change belongs in the generator, and the output is committed together with it.

The loop

  • just crawl refreshes the models and the error-code table under data/ (cargo run -p xtask -- crawl update).
  • just codegen regenerates the workspace from that data, then runs cargo fmt --all and cargo check.
  • just ci-rust ends with just assert_unchanged, which requires an empty git status, so a codegen run that leaves a diff fails CI. Run just codegen before pushing anything that touches the models, the data or an emitter.

The boundary

  • Generated files carry a //! Auto generated by ... marker. They live under crates/s3s/src/{dto,xml,access,error,header}/generated.rs, crates/s3s/src/ops/generated/, crates/s3s-aws/src/{conv,proxy}/generated.rs and crates/s3s/tests/generated/.
  • Hand-written code sits beside them (dto/mod.rs, xml/mod.rs, ops/mod.rs, ...). Edit that file, or the emitter, never the generated one.
  • An emitter change and the output it produces belong to the same commit: every commit has to leave a consistent tree, and assert_unchanged enforces exactly that.

Where the generators live

codegen/src/v1/ holds one module per family (dto.rs, xml.rs, ops.rs, s3_trait.rs, access.rs, error.rs, headers.rs, aws_conv.rs, aws_proxy.rs, gen_tests/), driven from mod.rs: run() reads the model data and calls each module, write_file and write_dir_file write into the checkout, and postprocess() finishes the job. Output has to be deterministic and stable under cargo fmt, so iterate maps in a fixed order.

Show full SKILL.md (123 more words)Show less

The MinIO variant

Every mergeable module is generated twice — into generated.rs and generated_minio.rs — and postprocess() merges the pair back into the first file: the differences become inline #[cfg(feature = "minio")] / #[cfg(not(feature = "minio"))] blocks, and the temporary *_minio.rs is deleted. Two consequences:

  • Verify both builds. cargo test --all-features and a plain cargo test execute different halves of a merged file, and the same holds for cargo check with and without the feature.
  • A type or a value subtree that differs between the two models is generated once per branch, so a test that covers it needs the same gates.

Generated tests

codegen/src/v1/gen_tests/ writes the coverage test suite into crates/s3s/tests/generated/. The same rule applies there: extend the emitter instead of editing the generated tests by hand.

© s3s-project, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/codegen of s3s-project/s3s.

Open the folder on GitHubat commit 0fdcb86

Compare with similar skills

Codegen next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Codegen compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Codegen this skills3s-project/s3s311—~726Automated safety check: PassApache-2.0
Rust Hygiene Audittsz-org/tsz577—~1.5kAutomated safety check: PassApache-2.0
New CrateDevolutions/IronRDP3.2k—~236Automated safety check: PassApache-2.0
Frb Code Generationfzyzcjy/flutter_rust_bridge5.4k—~1.5kAutomated safety check: PassMIT
Scaffold Workshopaws-samples/sample-amazon-bedrock-agentcore-onboarding133—~1.5kAutomated safety check: NotesMIT-0
New Resourcemondoohq/mql411—~5.6kAutomated safety check: PassCustom licence

Similar skills

  • Run a deep DRY + code-hygiene audit of the Rust workspace and turn the findings into verified, deduplicated, hierarchical GitHub tech-debt issues.

    577 GitHub stars~1.5k tokensUpdated 28 days ago
    DevelopmentAuto-check passed
  • New Crate

    Devolutions/IronRDP

    Create and integrate a new Rust crate in the IronRDP workspace.

    3.2k GitHub stars~236 tokensUpdated today
    DevelopmentAuto-check passed
  • Frb Code Generation

    fzyzcjy/flutter_rust_bridge

    A skill your agent uses when modifying Rust APIs, codegen, generated examples, or platform scaffolds in flutterrustbridge to select generation commands and preserve source-of-truth and convergence…

    5.4k GitHub stars~1.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Scaffold Workshop

    aws-samples/sample-amazon-bedrock-agentcore-onboarding

    Official

    Scaffold and draft a new AgentCore workshop. An agent skill from aws-samples/sample-amazon-bedrock-agentcore-onboarding.

    133 GitHub stars~1.5k tokensUpdated 6 days ago
    DevelopmentAuto-check: notes
  • New Resource

    mondoohq/mql

    Add or change a resource in an existing mql provider — schema, codegen, implementation, tests, and verification against a real target.

    411 GitHub stars~5.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Jinja Codegen

    xberg-io/alef

    Mechanics of alef's Minijinja template system: which templateenv module to call, how to register a template, inline-template rules, and engine settings.

    100 GitHub stars~735 tokensUpdated today
    DevelopmentAuto-check passed

More from s3s-project/s3s

All 10 skills in this repo
  • Code Coverage

    s3s-project/s3s

    Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.

    311 GitHub stars~789 tokensUpdated today
    Auto-check passed
  • Gh Stack

    s3s-project/s3s

    Work with stacked pull requests in this repository using gh stack.

    311 GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Code Review

    s3s-project/s3s

    Review a pull request or a proposed change to this repository.

    311 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Fuzz Testing

    s3s-project/s3s

    Add, run or schedule a fuzz target in this repository. An agent skill from s3s-project/s3s.

    311 GitHub stars~838 tokensUpdated today
    Auto-check passed
  • Mutation Testing

    s3s-project/s3s

    Run or triage the mutation sweep in this repository. An agent skill from s3s-project/s3s.

    311 GitHub stars~917 tokensUpdated today
    Auto-check passed
  • Pull Request

    s3s-project/s3s

    Prepare a change for this repository as a pull request. An agent skill from s3s-project/s3s.

    311 GitHub stars~2k tokensUpdated today
    Auto-check passed

Categories

Questions about Codegen

What does Codegen do?

Change generated code in this repository. An agent skill from s3s-project/s3s. Codegen is an agent skill from s3s-project/s3s. Change generated code in this repository.

When should I use Codegen?

Codegen fits situations like: editing anything that looks like a generated file; the Smithy models; the data under data/ change; A codegen run leaves a diff.

How do I install Codegen in Claude Code?

Run `npx skills add s3s-project/s3s --skill codegen -a claude-code`. Or copy the skill folder (.agents/skills/codegen in s3s-project/s3s) into .claude/skills/codegen in your project. Claude Code loads it when a task matches its description.

How do I install Codegen in Codex?

Run `npx skills add s3s-project/s3s --skill codegen -a codex`. Or copy the skill folder (.agents/skills/codegen in s3s-project/s3s) into .agents/skills/codegen in your project. Codex loads it when a task matches its description.

Can I use Codegen in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add s3s-project/s3s --skill codegen -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/codegen, .gemini/skills/codegen, .github/skills/codegen and .opencode/skills/codegen in your project.

What does Codegen need to run?

Going by SKILL.md and its folder, Codegen needs the command-line tools its instructions call (cargo, just and git).

Does Codegen access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Codegen safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Codegen use?

Codegen is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Codegen use?

About 726 tokens (SKILL.md is roughly 2.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Codegen?

Skills that share tags, products or a category with Codegen: Rust Hygiene Audit (tsz-org/tsz, 577 stars), New Crate (Devolutions/IronRDP, 3.2k stars), Frb Code Generation (fzyzcjy/flutter_rust_bridge, 5.4k stars) and Scaffold Workshop (aws-samples/sample-amazon-bedrock-agentcore-onboarding, 133 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Codegen?

s3s-project (a GitHub organization) maintains it in s3s-project/s3s, which has 311 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 8, 2026.

Source: s3s-project/s3s on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.