GitHub Action
You can easily integrate TangleGuard into your GitHub workflow by using the pre-built GitHub Action.
By providing inputs values to the action, you can basically choose between two modes:
- Remote: This uploads the results to TangleGuard web app for further analysis and actions.
- Local: This checks the results on within the github runner and exits when rule violations gets found. This is useful for CI/CD pipelines where you want to fail the build if any rule is violated.
Upload to Cloud
Section titled “Upload to Cloud”It validates your codebase against your TangleGuard configuration file and hence regarding your predefined rules.
Here’s a simple example of how to use the GitHub Action in your workflow:
name: Architecture Checkon: [push, pull_request]
jobs: upload-architecture: runs-on: ubuntu-latest steps: - uses: TangleGuard/github-action@main with: upload_results: "true" make_public: "true" language: "rust" description: "A static code analysis tool focused on code architecture."Below you see the logs of the above upload-architecture job:
Scanning workspace and uploading results to TangleGuard Cloud... _____ _ ___ _/__ \__ _ _ __ __ _| | ___ / _ \_ _ __ _ _ __ __| | / /\/ _` | '_ \ / _` | |/ _ \/ /_\/ | | |/ _` | '__/ _` | / / | (_| | | | | (_| | | __/ /_\\| |_| | (_| | | | (_| | \/ \__,_|_| |_|\__, |_|\___\____/ \__,_|\__,_|_| \__,_| |___/2026-01-07T18:06:40.907446Z INFO TangleGuard CLI - analyzing workspace at: .2026-01-07T18:06:40.970551Z INFO Workspace scan completed in 63.09ms total2026-01-07T18:06:40.970570Z INFO Successfully scanned workspace with 6 packages2026-01-07T18:06:40.970574Z INFO No repository info provided, extracting from Git...2026-01-07T18:06:40.993369Z INFO Extracted: TangleGuard/TangleGuard2026-01-07T18:06:40.993671Z INFO Found origin2026-01-07T18:06:41.035836Z INFO Uploading...2026-01-07T18:06:42.725524Z INFO Successfully uploaded workspace to server!Local violation check
Section titled “Local violation check”This is currently under construction.
name: Architecture Checkon: [push, pull_request]
jobs: upload-architecture: runs-on: ubuntu-latest steps: - uses: TangleGuard/github-action@main with: upload_results: "false" local: "true" language: "rust"