Metadata-Version: 2.4
Name: opentide
Version: 0.1.0
Summary: DetectionOps engine: validate, generate, deploy, and document detection-as-code across seven security platforms.
Project-URL: Homepage, https://opentide.org
Project-URL: Documentation, https://opentide.org/docs/usage/
Project-URL: Changelog, https://github.com/OpenTideHQ/opentide/blob/development/CHANGELOG.md
Project-URL: Releases, https://opentide.org/docs/usage/releases/
Project-URL: Repository, https://github.com/OpenTideHQ/opentide
Project-URL: Issues, https://github.com/OpenTideHQ/opentide/issues
Author-email: OpenTide <digit-ec-opentide@ec.europa.eu>
License-Expression: EUPL-1.2
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: dulwich>=1.2
Requires-Dist: orjson>=3.9
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml
Requires-Dist: questionary>=2.1.1
Requires-Dist: rich>=13.0
Requires-Dist: ruamel-yaml
Requires-Dist: structlog>=24.0
Requires-Dist: tomli-w>=1.0
Requires-Dist: tomli>=2.0; python_version < '3.11'
Requires-Dist: typer[all]>=0.26.8
Requires-Dist: typing-extensions>=4.0
Provides-Extra: carbon-black
Requires-Dist: carbon-black-cloud-sdk>=1.0; extra == 'carbon-black'
Provides-Extra: cli
Provides-Extra: crowdstrike
Provides-Extra: dev
Requires-Dist: fastmcp>=2.0; extra == 'dev'
Requires-Dist: mcp>=1.28.1; extra == 'dev'
Requires-Dist: openpyxl>=3.1; extra == 'dev'
Requires-Dist: pandas>=2.0; extra == 'dev'
Requires-Dist: pre-commit>=4.0; extra == 'dev'
Requires-Dist: pytest-console-scripts>=1.4; extra == 'dev'
Requires-Dist: pytest-cov>=5.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.15.22; extra == 'dev'
Requires-Dist: syrupy>=5.3.4; extra == 'dev'
Requires-Dist: tomli>=2.0; extra == 'dev'
Requires-Dist: ty>=0.0.9; extra == 'dev'
Provides-Extra: mcp
Requires-Dist: fastmcp>=2.0; extra == 'mcp'
Requires-Dist: mcp>=1.28.1; extra == 'mcp'
Provides-Extra: sentinel
Provides-Extra: splunk
Requires-Dist: pandas>=2.0; extra == 'splunk'
Requires-Dist: splunk-sdk>=2.0; extra == 'splunk'
Description-Content-Type: text/markdown

# opentide

[![PyPI](https://img.shields.io/pypi/v/opentide.svg)](https://pypi.org/project/opentide/)
[![Coverage](https://raw.githubusercontent.com/OpenTideHQ/opentide/python-coverage-comment-action-data/badge.svg)](https://github.com/OpenTideHQ/opentide/actions/workflows/ci.yml)

**OpenTide** — the DetectionOps engine for detection-as-code: validate, generate schemas, deploy rules, and document content across seven security platforms.

## Install

```bash
pip install opentide==0.1.0
export OPENTIDE_REPO_ROOT=/path/to/detection-repo
opentide validate
```

Release notes: [CHANGELOG.md](CHANGELOG.md) · [Usage → Releases](https://opentide.org/docs/usage/releases/)

## Documentation

Published docs: [opentide.org/docs/usage/](https://opentide.org/docs/usage/).

| Section | Audience |
|---------|----------|
| [Usage](https://opentide.org/docs/usage/) | Setup, workflows, migration |
| [CLI](https://opentide.org/docs/cli/) | Command reference |
| [MCP](https://opentide.org/docs/mcp/) | Agent server |
| [SDK](https://opentide.org/docs/sdk/) | Python API |

Source for those pages lives in [`docs/`](docs/) (Fumadocs). This repo validates content only: `scripts/validate-docs.sh`. The site is [OpenTideHQ/website](https://github.com/OpenTideHQ/website).

Contributors: see [`AGENTS.md`](AGENTS.md) and [`.agents/skills/docs-maintenance/SKILL.md`](.agents/skills/docs-maintenance/SKILL.md).

## Repository

[OpenTideHQ/opentide](https://github.com/OpenTideHQ/opentide) · Python 3.10–3.14 · Trunk: `development`
