From component-developer
Mandatory initialization workflow for new Keboola Python components — use this skill before writing any code. Contains the exact cookiecutter command, Keboola-specific post-template cleanup steps, KBC_DATADIR directory structure, data/config.json format, and first commit format that are easy to get wrong without this reference. Invoke whenever the user is starting from a fresh or empty repository, has never built a Keboola component before, wants to run the cookiecutter template, or says things like "new extractor for X", "build ex-something from scratch", "fresh repo", "empty git repo", "brand new component", "never done this in keboola", "initialize a component", "scaffolding a new component", "just initialized the git repo", "nothing set up yet". Not for existing components that already have src/component.py.
npx claudepluginhub keboola/ai-kit --plugin component-developerThis skill uses the workspace's default tool permissions.
Before writing any code, check whether the component has already been initialized.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Before writing any code, check whether the component has already been initialized.
Check for signs of an existing cookiecutter setup:
ls src/component.py component_config/ pyproject.toml 2>/dev/null
@develop-component immediatelyYou may already know the component details from the conversation. If not, ask:
ex-salesforce, not salesforce-extractor)vendor.component-name format (e.g. keboola.ex-salesforce)extractor, writer, or applicationNaming rules:
ex- for extractors, wr- for writers# Install if missing
which cookiecutter || pip install --user cookiecutter
cookiecutter gh:keboola/cookiecutter-python-component
Run interactively so the user can confirm the values. The template creates src/, component_config/, tests/, .github/workflows/, Dockerfile, pyproject.toml, and data/ with example files.
# Remove the generic example files that come with the template
find data -type f -delete
# Recreate the expected directory structure
mkdir -p data/in/tables data/in/files data/out/tables data/out/files
Then create data/config.json with realistic example parameters based on what the component actually does — not a generic placeholder. Read component_config/configSchema.json if it already has content, and mirror the required fields with plausible example values. Use # prefix for sensitive fields (e.g. "#api_key").
git add -A
git commit -m "feat: initialize component from cookiecutter template"
Once initialized, pass to @develop-component to start the implementation. Share what you know about the component's purpose so it has context.
gh:keboola/cookiecutter-python-component