> ## Documentation Index
> Fetch the complete documentation index at: https://specterops-bp-2638-jira-forge.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GH_HasWorkflow

> Repository has this workflow

<img noZoom src="https://mintcdn.com/specterops-bp-2638-jira-forge/5Uew_kPPp8q6O153/assets/enterprise-AND-community-edition-pill-tag.svg?fit=max&auto=format&n=5Uew_kPPp8q6O153&q=85&s=1a659c7fe8da7cec98d35c0705fb8b7e" alt="Applies to BloodHound Enterprise and CE" width="482" height="45" data-path="assets/enterprise-AND-community-edition-pill-tag.svg" />

## Edge Schema

* Source: [GH\_Repository](/opengraph/extensions/github/nodes/gh_repository)
* Destination: [GH\_Workflow](/opengraph/extensions/github/nodes/gh_workflow)
* Traversable: ❌

## General Information

The non-traversable GH\_HasWorkflow edge represents the relationship between a repository and its GitHub Actions workflows. This edge links each discovered workflow definition to its parent repository. Workflows are significant from a security perspective because they can execute arbitrary code with repository permissions, access secrets, and assume cloud identities. This structural edge enables analysts to enumerate which workflows exist in a given repository.

```mermaid theme={null}
graph LR
    node1("GH_Repository GitHound")
    node2("GH_Workflow ci.yml")
    node3("GH_Workflow deploy.yml")
    node4("GH_Repository BloodHound")
    node5("GH_Workflow release.yml")
    node1 -- GH_HasWorkflow --> node2
    node1 -- GH_HasWorkflow --> node3
    node4 -- GH_HasWorkflow --> node5
```
