get-started
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.
How do I install this agent skill?
npx skills add https://github.com/keboola/ai-kit --skill get-startedIs this agent skill safe to install?
- Gen Agent Trust Hubpass
This skill provides a standard initialization workflow for Keboola Python components. It downloads a template from the official Keboola GitHub organization and follows best practices for development environments, including safe secret handling in configuration files.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
- Runlayerpass
2 files scanned · No issues
What does this agent skill do?
Initialize New Keboola Component
Before writing any code, check whether the component has already been initialized.
Step 1: Detect state
Check for signs of an existing cookiecutter setup:
ls src/component.py component_config/ pyproject.toml 2>/dev/null
- If all present → skip initialization, hand off to
@develop-componentimmediately - If missing or empty repo → proceed with initialization below
Step 2: Gather component info
You may already know the component details from the conversation. If not, ask:
- Component name — kebab-case, no type suffix (e.g.
ex-salesforce, notsalesforce-extractor) - Component ID —
vendor.component-nameformat (e.g.keboola.ex-salesforce) - Type —
extractor,writer, orapplication - Short description — one sentence of what it does
Naming rules:
- Never include "extractor", "writer", or "application" in the name itself
- Use prefix convention:
ex-for extractors,wr-for writers
Step 3: Run cookiecutter
# 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.
Step 4: Clean up and configure
# 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").
Step 5: Initial commit
git add -A
git commit -m "feat: initialize component from cookiecutter template"
Step 6: Hand off
Once initialized, pass to @develop-component to start the implementation. Share what you know about the component's purpose so it has context.
Key resources
- Cookiecutter template:
gh:keboola/cookiecutter-python-component - Developer Portal: https://components.keboola.com/
- Component tutorial: https://developers.keboola.com/extend/component/tutorial/
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/keboola/ai-kit/get-started">View get-started on skillZs</a>