Migration guide
Upgrade detection repositories from CoreTide git submodules to the opentide PyPI package.
Upgrade detection repositories from CoreTide git submodules to the opentide PyPI package.
Before and after
Before (git submodule)
import sys, git
sys.path.append(str(git.Repo(".", search_parent_directories=True).working_dir))
from Engines.modules.tide import DataTide
from Engines.modules.plugins import DeployTidepython Orchestration/validate.pyAfter (pip package)
dependencies = ["opentide==0.1.0"]from opentide import OpenTide
OpenTide.initialise()
rule = OpenTide.Rules[uuid]
rule.deploy("sentinel")opentide validate --strict
opentide validate query --platform sentinelUse --platform, not legacy --system.
Migration steps
Install
pip install 'opentide==0.1.0'Enable platforms in the repo (not at pip install time):
opentide setup platforms --sentinel --splunk --yesOptional MCP server setup: opentide setup mcp --cursor --yes (after pip install 'opentide==0.1.0').
Remove submodule
git submodule deinit -f CoreTide
git rm -f CoreTide
rm -rf .git/modules/CoreTideEnvironment variables
| Variable | Purpose |
|---|---|
OPENTIDE_REPO_ROOT | Detection content root |
OPENTIDE_DATA_ROOT | Optional bundled data override |
Replace imports
| Legacy | New |
|---|---|
DataTide | OpenTide |
IndexTide | IndexManager |
TideModels.MDR | DetectionRule |
DeployTide | OpenTide.Platforms |
v0.x: legacy imports warn via DeprecationWarning. v1.0 removes shims.
Replace scripts
| Script | CLI |
|---|---|
Orchestration/validate.py | opentide validate |
Orchestration/deploy.py | opentide deploy |
Orchestration/generate.py | opentide generate |
Orchestration/document.py | opentide generate docs |
| (repository onboarding) | opentide setup |
| (CI pipeline files) | opentide setup ci |
Query validation: five platforms only (no CrowdStrike/HarfangLab).
Update CI
Remove submodules: recursive. Add:
- run: pip install 'opentide==0.1.0'
- run: opentide validate --strict
env:
OPENTIDE_REPO_ROOT: ${{ github.workspace }}See CI/CD workflow.
IDE and agents
opentide setup mcp --cursor --yes
opentide setup skills --generic --yesOr configure manually:
{ "mcpServers": { "opentide": { "command": "opentide-mcp" } } }Agent-assisted migration
OpenTide no longer provides opentide migrate. Use the CoreTide migration prompt with your coding agent to replace submodule imports, Orchestration scripts, and CI configuration.
Deprecation timeline
| Version | Shims |
|---|---|
| v0.x | Active with warnings |
| v1.0 | Removed |
Verification checklist
-
pip install 'opentide==0.1.0'succeeds -
OPENTIDE_REPO_ROOTset -
opentide validate --strictpasses - CI no longer uses submodule
- No
sys.path.appendhacks
Related
- Behaviour inventory (internal) — legacy vs new behaviour mapping
- Repository setup
- CoreTide migration prompt
- Repository setup