opentide

opentide setup

Repository scaffolding, platform configs, CI pipelines, MCP, agent skills, and VS Code helpers.

Primary onboarding entry point for detection repositories.

opentide setup                              # interactive wizard
opentide setup --yes --platform sentinel --ci github
opentide setup platforms --sentinel --splunk --yes
opentide setup ci github --yes

The interactive wizard uses arrow-key menus and checkboxes for platforms, CI, MCP hosts, workflow features, and agent targets. It shows a setup plan before writing. No platform, CI provider, editor, or agent environment is selected implicitly.

Default callback flags

FlagPurpose
--path / -CRepository directory (default .; honours --repo when .)
--name, --org, --descriptionREADME metadata
--platformDetection platforms — runs the setup platforms step when set (repeatable)
--cigithub, gitlab, azure, or none
--staging / --no-stagingCI staging stage (default: on)
--inflight / --no-inflightUpdate pull-request preview shards (default: on)
--promotion / --no-promotionCI promotion stage (default: on; promotion runs in deploy)
--explorer-pages / --no-explorer-pagesInclude GitHub Pages explorer jobs
--promotion-targetPromotion target status (default PRODUCTION)
--python-versionCI Python version (default 3.12)
--vscode-setupDeprecated VS Code yaml.schemas + snippets
--yes / -yConfirm explicit options without prompting

Use subcommands for MCP and skills — parent --mcp / --skills enums were removed.

--yes never chooses a platform, MCP host, or skill target. Commands that require one fail with an actionable error when its flag is omitted.

Subcommands

setup repo

Scaffold directory layout, README, and .gitignore.

opentide setup repo --yes --name SOC --platform sentinel

setup platforms

Create and enable platform configuration templates under .opentide/configurations/platforms/.

opentide setup platforms --sentinel --defender-for-endpoint --yes
FlagPlatform
--sentinelMicrosoft Sentinel
--splunkSplunk
--crowdstrikeCrowdStrike
--defender-for-endpointMicrosoft Defender for Endpoint
--sentinel-oneSentinelOne
--carbon-black-cloudCarbon Black Cloud
--harfanglabHarfangLab

setup ci

Generate CI/CD pipeline files. CI provider is the positional argument (github, gitlab, or azure). Detection platforms are not passed here — they are discovered from enabled .opentide/configurations/platforms/*.toml files written by setup platforms.

Run setup platforms before setup ci so validate query jobs are included. If none are enabled, setup ci still writes the pipeline and returns a warnings entry in JSON mode.

opentide setup platforms --sentinel --splunk --yes
opentide setup ci github --path . --yes
opentide setup ci gitlab --no-staging

Positional argument: github, gitlab, or azure (CI provider, not Sentinel/Splunk/etc.).

setup mcp

Write MCP server configuration for editors.

opentide setup mcp --cursor --vscode --yes
FlagOutput file
--vscode.vscode/mcp.json
--cursor.cursor/mcp.json
--claude-code.mcp.json
--genericopentide.mcp.json

setup skills

Install detection engineering agent skills from OpenTideHQ/skills.

Discover the catalogue

opentide setup skills discover
opentide setup skills discover --query kql
opentide setup skills discover --path /path/to/repo
opentide setup skills show opentide-detection-rule
opentide setup skills show opentide-detection-rule --path /path/to/repo

JSON output includes manifest_source (remote or bundled) and manifest_refreshed when using --refresh.

Install starter or selected skills

opentide setup skills --yes --generic
opentide setup skills --yes --install opentide-detection-rule --install detection-engineering
opentide setup skills --yes --all --cursor
opentide setup skills --yes --generic --path /path/to/repo

Use --path / -C for the repository root. The positional [PATH] remains temporarily as a deprecated compatibility alias.

Installing --github-copilot without --generic also applies the generic layout; JSON output includes "also_applied": ["generic"].

FlagPurpose
--path / -CRepository path (install, discover, show)
--cursor / --claude-code / --generic / --github-copilotTarget harness layouts
--installSkill slug (repeatable)
--allInstall full catalogue
--name, --org, --descriptionEntrypoint metadata
--refreshRe-fetch manifest.json from GitHub (discover / show)

Catalogue discovery fetches manifest.json from OpenTideHQ/skills first; the packaged manifest is an offline fallback only. Remote fetch and install require network access to the public skills repository.

The full wizard checks starter skill availability before writing repository files. If the optional remote pack is unavailable, skills are omitted with a warning. The standalone skills command fails without leaving a partial skill tree.

setup vscode (deprecated)

Interim yaml.schemas and snippet generation. Default with no flags: both settings and snippets.

opentide setup vscode --settings --no-merge
opentide setup vscode --snippets
FlagPurpose
--settingsWrite .vscode/settings.json yaml.schemas
--snippetsWrite model template snippets
--no-mergeReplace settings instead of merging

CI skip

Pass --ci none on the default callback to skip CI file generation while still running repo or VS Code steps in the same invocation.

Non-interactive use

Interactive setup requires a TTY. In CI or an agent subprocess, provide explicit targets and --yes; OpenTide fails immediately rather than waiting for hidden input.

Source

src/opentide/cli/setup_app.py

Usage guide

Human-oriented walkthrough: Repository setup

On this page