Skene
Product
Pricing
Docs
Blog
About
Log In
ProductPricingDocsBlogAbout
Log In
Skene subpage background texture

From an earlier version of Skene. See the current product →

  1. Home
  2. /
  3. Resources
  4. /
  5. Docs
  6. /
  7. skene CLI
CLI docs

Configuration

Navigation

skene CLI

  • Overview
  • Installation
  • Quickstart
  • Analyze
  • Plan
  • Build
  • Push
  • Login
  • Status
  • Features
  • Chat
  • LLM Providers
  • Configuration
  • MCP Server
  • CLI Reference
  • Python API
  • Manifest Schema
  • Troubleshooting

Resources

  • Playbooks
  • Glossary

skene CLI

  • Overview
  • Installation
  • Quickstart
  • Analyze
  • Plan
  • Build
  • Push
  • Login
  • Status
  • Features
  • Chat
  • LLM Providers
  • Configuration
  • MCP Server
  • CLI Reference
  • Python API
  • Manifest Schema
  • Troubleshooting

Resources

  • Playbooks
  • Glossary

How to configure skene using config files, environment variables, and CLI flags.

Configuration priority

Settings are loaded in this order (later overrides earlier):

1. User config     ~/.config/skene/config     (lowest priority)
2. Project config  ./.skene.config
3. Env variables   SKENE_API_KEY, SKENE_PROVIDER, etc.
4. CLI flags       --api-key, --provider, etc.        (highest priority)

Config file locations

LocationPurpose
./.skene.configProject-level config (per-project settings)
~/.config/skene/configUser-level config (personal defaults)

Both files use TOML format. The user-level path respects XDG_CONFIG_HOME if set.

Creating a config file

# Create .skene.config in the current directory
uvx skene config --init

This creates a sample config file with restrictive permissions (0600 on Unix).

Interactive editing

Running config without flags opens interactive editing:

uvx skene config

This prompts you for:

  1. LLM provider — numbered list: openai, gemini, anthropic, lmstudio, ollama, generic
  2. Model — numbered list of provider-specific models, or enter a custom name
  3. Base URL — only if generic provider is selected
  4. API key — password input (masked), with option to keep existing value

Viewing current config

uvx skene config --show

Displays all current configuration values and their sources.

Config options

OptionTypeDefaultDescription
api_keystring—API key for LLM provider
providerstring"openai"LLM provider name
modelstringPer providerLLM model name
base_urlstring—Base URL for OpenAI-compatible endpoints
output_dirstring"./skene-context"Default output directory
verbosebooleanfalseEnable verbose output
debugbooleanfalseEnable debug logging
exclude_folderslist[]Folder names to exclude from analysis
upstreamstring—Upstream workspace URL for push command

Default models by provider

ProviderDefault model
openaigpt-4o
geminigemini-3-flash-preview
anthropicclaude-sonnet-4-5
ollamallama3.3
genericcustom-model

Sample config file

# .skene.config

# API key (can also use SKENE_API_KEY env var)
# api_key = "your-api-key"

# LLM provider: openai, gemini, anthropic, claude, lmstudio, ollama, generic
provider = "openai"

# Model (defaults per provider if not set)
# model = "gpt-4o"

# Base URL for OpenAI-compatible endpoints (required for generic provider)
# base_url = "https://your-api.com/v1"

# Default output directory
output_dir = "./skene-context"

# Enable verbose output
verbose = false

# Enable debug logging (logs LLM I/O to .skene/debug/)
debug = false

# Folders to exclude from analysis
# Matches by: exact name, substring in folder names, path patterns
exclude_folders = ["tests", "vendor"]

Environment variables

VariableDescriptionExample
SKENE_API_KEYAPI key for LLM providersk-...
SKENE_PROVIDERProvider namegemini
SKENE_BASE_URLBase URL for generic providerhttp://localhost:8000/v1
SKENE_DEBUGEnable debug modetrue
SKENE_UPSTREAM_API_KEYAPI key for upstream authenticationsk-upstream-...
LMSTUDIO_BASE_URLLM Studio server URLhttp://localhost:1234/v1
OLLAMA_BASE_URLOllama server URLhttp://localhost:11434/v1

Upstream credentials

When using skene push to deploy to Skene Cloud, upstream URL, workspace slug, and API key are stored in .skene.config (with 0600 permissions). These fields are managed by skene login and skene logout. See the login guide for details.

Excluding folders

Custom exclusions from both the config file and --exclude CLI flags are merged with the built-in defaults.

Default exclusions

The following directories are always excluded: node_modules, .git, __pycache__, .venv, venv, dist, build, .next, .nuxt, coverage, .cache, .idea, .vscode, .svn, .hg, .pytest_cache.

How matching works

Exclusion matches in three ways:

  1. Exact name — "tests" matches a folder named exactly tests
  2. Substring — "test" matches tests, test_utils, integration_tests
  3. Path pattern — "tests/unit" matches any path containing that pattern

Examples

# CLI flags (merged with config file exclusions)
uvx skene analyze . --exclude tests --exclude vendor

# Short form
uvx skene analyze . -e planner -e migrations -e docs
# In .skene.config
exclude_folders = ["tests", "vendor", "migrations", "docs"]

Next steps

  • LLM providers — Detailed setup for each provider
  • CLI reference — All commands and flags
Previous← LLM ProvidersNextMCP Server →
Skene

Product

How it worksFeaturesArchitectureIntegrationsSecurityPricing

Resources

DocumentationGlossaryPlaybooksBlog

Company

AboutOpen sourceContactPrivacyTerms
© 2026 Skene. All rights reserved.
Privacy PolicyTerms of Service
Skene