Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.firebender.com/llms.txt

Use this file to discover all available pages before exploring further.

Customizing Agent Terminal

Agent terminals run in the same environment as your regular terminal. For customizing your agent’s terminal experience, check for the FIREBENDER_TERMINAL=true environment variable that is automatically set in all Firebender terminals. For example, in your ~/.zprofile or ~/.bashrc:
if [[ -n "$FIREBENDER_TERMINAL" ]]; then
# Custom settings for Firebender agent terminals
export PS1="🔥 \W $ "  # Custom prompt for agent terminals
fi

Terminal Hooks

Use FIREBENDER_TERMINAL=true to run custom commands, load aliases, or source scripts specifically for agent terminals.
if [[ -n "$FIREBENDER_TERMINAL" ]]; then
source ~/.firebender-hooks.sh
fi

Custom Tools via Terminal

Create commands for common agent workflows. List them in your rules so the agent knows they’re available.
if [[ -n "$FIREBENDER_TERMINAL" ]]; then
    # Full test suite with coverage
    test-full() {
        npm run lint && npm test -- --coverage && npm run build
    }
    
    # Deploy to staging
    deploy-staging() {
        git push staging main && kubectl rollout status deployment/app -n staging
    }
fi

Command Permissioning

Block or restrict commands by overriding them in agent terminals.
if [[ -n "$FIREBENDER_TERMINAL" ]]; then
    # Block dangerous commands
    rm() {
        echo "rm is disabled in agent terminals"
        return 1
    }
    
    # Restrict to read-only operations
    kubectl() {
        if [[ "$1" == "delete" || "$1" == "apply" ]]; then
            echo "kubectl write operations blocked"
            return 1
        fi
        command kubectl "$@"
    }
fi