An open API service indexing awesome lists of open source software.

https://github.com/dreadnode/sdk

Dreadnode Strikes SDK
https://github.com/dreadnode/sdk

Last synced: 10 months ago
JSON representation

Dreadnode Strikes SDK

Awesome Lists containing this project

README

          


Logo


Dreadnode Strikes SDK


PyPI - Python Version
PyPI - Version
GitHub License
Tests
Pre-Commit
Renovate

Strikes is a platform for building, experimenting with, and evaluating AI security agent code.

- **Experiment + Tasking + Observability** in a single place that's lightweight and scales.
- **Track your data** with parameters, inputs, and outputs all connected to your tasks.
- **Log your artifacts** — data, models, files, and folders — to track data of your Dreadnode runs, enabling easy reuse and reproducibility.
- **Measure everything** with metrics throughout your code and anywhere you need them.
- **Scale your code** from a single run to thousands.

```python
import dreadnode as dn
import rigging as rg

from .tools import reversing_tools

dn.configure()

@dataclass
class Finding:
name: str
severity: str
description: str
exploit_code: str

@dn.scorer(name="Score Finding")
async def score_finding(finding: Finding) -> float:
if finding.severity == "critical":
return 1.0
elif finding.severity == "high":
return 0.8
else:
return 0.2

@dn.task(scorers=[score_finding])
@rg.prompt(tools=[reversing_tools])
async def analyze_binary(binary: str) -> list[Finding]:
"""
Analyze the binary for vulnerabilities.
"""
...

with dn.run(tags=["reverse-engineering"]):
binary = "c2/downloads/service.exe"

dn.log_params(
model="gpt-4",
temperature=0.5,
binary=binary
)

findings = await analyze_binary(binary)

dn.log_metric("findings", len(findings))
```

## Installation

We publish every version to PyPi:
```bash
pip install -U dreadnode
```

If you want to build from source:
```bash
poetry install
```

See our **[installation guide](https://docs.dreadnode.io/strikes/install)** for more options.

## Getting Started

Read through our **[introduction guide](https://docs.dreadnode.io/strikes/intro)** in the docs.

## Examples

Check out **[dreadnode/example-agents](https://github.com/dreadnode/example-agents)** to find your favorite use case.