Utilities and patterns for detecting execution environment (CI/CD vs local, network access, available ports, timeouts). Use when you need to adapt scripts or workflows based on where the agent is running, or when creating helper scripts that need environment-aware behavior.
Scanned 2/12/2026
Install via CLI
openskills install majiayu000/claude-skill-registry---
name: detecting-agent-environment
description: Utilities and patterns for detecting execution environment (CI/CD vs local, network access, available ports, timeouts). Use when you need to adapt scripts or workflows based on where the agent is running, or when creating helper scripts that need environment-aware behavior.
---
# Agent Helper Scripts
Utilities for GitHub Copilot agents working on Y-Not Radio site.
## Environment Detection
Use `detect-environment.sh` to adapt scripts to different environments:
```bash
# Source the utility
source bin/agent-helpers/detect-environment.sh
# Print environment info
print_environment
# Check environment
if detect_ci; then
echo "Running in CI/CD"
# Use optimized workflow
fi
if ! detect_network; then
echo "Network restricted - cannot pull packages"
exit 1
fi
# Get appropriate timeout
TIMEOUT=$(get_timeout "service_ready")
timeout $TIMEOUT bash -c 'until service_ready; do sleep 5; done'
```
## Creating New Helper Scripts
When creating helper scripts:
1. **Source environment detection**
```bash
source "$(dirname "$0")/detect-environment.sh"
print_environment
```
2. **Use appropriate timeouts**
```bash
TIMEOUT=$(get_timeout "npm_install")
timeout $TIMEOUT npm install
```
3. **Provide clear output**
```bash
echo "✅ Success message"
echo "⚠️ Warning message"
echo "❌ Error message"
```
4. **Exit with proper codes**
```bash
exit 0 # Success
exit 1 # Failure
```
5. **Log to .agent-tmp/**
```bash
mkdir -p .agent-tmp
command 2>&1 | tee .agent-tmp/command.log
```
## Related Skills
Before creating scripts or PRs, see:
- `testing-pr-changes` skill - Success criteria and testing workflows
- `agent-automation-infrastructure` skill - Current automation state and pre-built images
## Performance Baselines
Scripts should respect these baselines:
| Operation | Expected | Warning | Failure |
|-----------|----------|---------|---------|
| Container start | < 60s | 60-120s | > 120s |
| npm install | < 120s | 120-300s | > 300s |
| Service ready | < 180s | 180-360s | > 360s |
If exceeding "Warning" thresholds, report performance issues in PR.
No comments yet. Be the first to comment!