Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 58 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Docs

on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:

# Least privilege by default; the deploy job widens this for itself only.
permissions:
contents: read

concurrency:
group: pages-${{ github.ref }}
cancel-in-progress: false

jobs:
# Runs on pull requests too, so a broken nav entry or dead internal link
# fails review instead of silently shipping. --strict turns warnings into
# build failures.
build:
name: Build site
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: "3.12"
cache: pip
# Keep in sync with the [project.optional-dependencies] "docs" extra
# in pyproject.toml. Installed directly rather than via '.[docs]' so
# the docs build does not pull the full agent runtime.
- name: Install MkDocs
run: pip install "mkdocs-material>=9.5.0,<10"
- name: Build documentation
run: mkdocs build --strict
- name: Upload Pages artifact
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
uses: actions/upload-pages-artifact@v5
with:
path: site

deploy:
name: Deploy to GitHub Pages
if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request'
needs: build
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/configure-pages@v6
- id: deployment
uses: actions/deploy-pages@v5
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ neo4j_data/
config.local.yaml
.claude/
test-results/
phase9-traffic-context-prompt.md
# Build-phase prompt/plan scratch files (kept locally, not published)
edr-agent-implementation-plan.md
phase*-prompt.md
phase7-macos-production-hardening.md
phase8-system-tray-icon-dashboard.md
scripts/test_lateral_movement.sh
site/
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
# EDR Graph Agent

![Python 3.13](https://img.shields.io/badge/python-3.13-blue.svg)
![Python 3.11+](https://img.shields.io/badge/python-3.11%2B-blue.svg)
![License](https://img.shields.io/badge/License-AGPLv3-blue.svg)
![Tests](https://img.shields.io/badge/tests-546%20passed-brightgreen.svg)
[![CI](https://github.com/ticfinack/edr-graph/actions/workflows/ci.yml/badge.svg)](https://github.com/ticfinack/edr-graph/actions/workflows/ci.yml)
[![Docs](https://github.com/ticfinack/edr-graph/actions/workflows/docs.yml/badge.svg)](https://ticfinack.github.io/edr-graph/)
![Patent Pending](https://img.shields.io/badge/Patent-Pending-red.svg)

> **Disclaimer:** This software is provided for **educational and research purposes only**. It is not a certified or commercially supported security product. Use at your own risk. The authors assume no liability for any damage, data loss, or legal consequences resulting from the use or misuse of this software. By using this software, you agree that you are solely responsible for ensuring compliance with applicable laws and regulations in your jurisdiction. Always obtain proper authorization before deploying monitoring or response tools on any system.
Expand Down
Loading