Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    keboola

    get-started

    keboola/get-started
    Coding
    7

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Guide for initializing and setting up new Keboola Python components using cookiecutter template. Use when starting a new component project from scratch.

    SKILL.md

    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-component immediately
    • 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, not salesforce-extractor)
    • Component ID — vendor.component-name format (e.g. keboola.ex-salesforce)
    • Type — extractor, writer, or application
    • 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/
    Recommended Servers
    Codeinterpreter
    Codeinterpreter
    Astro Docs
    Astro Docs
    Svelte
    Svelte
    Repository
    keboola/ai-kit
    Files