Spaces:
Paused
Paused
Download jules_branch/docker-entrypoint.sh from GraziePrego/automaker: direct link, hf CLI and curl.
- Browser
- Download file 2.8 kB
-
https://huggingface.co/spaces/GraziePrego/automaker/resolve/main/jules_branch/docker-entrypoint.sh
- Command line
-
hf download hf://spaces/GraziePrego/automaker/jules_branch/docker-entrypoint.sh
-
curl -L -o docker-entrypoint.sh https://huggingface.co/spaces/GraziePrego/automaker/resolve/main/jules_branch/docker-entrypoint.sh
2.8 kB
| set -e | |
| # Ensure Claude CLI config directory exists with correct permissions | |
| if [ ! -d "/home/automaker/.claude" ]; then | |
| mkdir -p /home/automaker/.claude | |
| fi | |
| # If CLAUDE_OAUTH_CREDENTIALS is set, write it to the credentials file | |
| # This allows passing OAuth tokens from host (especially macOS where they're in Keychain) | |
| if [ -n "$CLAUDE_OAUTH_CREDENTIALS" ]; then | |
| echo "$CLAUDE_OAUTH_CREDENTIALS" > /home/automaker/.claude/.credentials.json | |
| chmod 600 /home/automaker/.claude/.credentials.json | |
| fi | |
| # Fix permissions on Claude CLI config directory | |
| chown -R automaker:automaker /home/automaker/.claude | |
| chmod 700 /home/automaker/.claude | |
| # Ensure Cursor CLI config directory exists with correct permissions | |
| # This handles both: mounted volumes (owned by root) and empty directories | |
| if [ ! -d "/home/automaker/.cursor" ]; then | |
| mkdir -p /home/automaker/.cursor | |
| fi | |
| chown -R automaker:automaker /home/automaker/.cursor | |
| chmod -R 700 /home/automaker/.cursor | |
| # Ensure OpenCode CLI config directory exists with correct permissions | |
| # OpenCode stores config and auth in ~/.local/share/opencode/ | |
| if [ ! -d "/home/automaker/.local/share/opencode" ]; then | |
| mkdir -p /home/automaker/.local/share/opencode | |
| fi | |
| chown -R automaker:automaker /home/automaker/.local/share/opencode | |
| chmod -R 700 /home/automaker/.local/share/opencode | |
| # OpenCode also uses ~/.config/opencode for configuration | |
| if [ ! -d "/home/automaker/.config/opencode" ]; then | |
| mkdir -p /home/automaker/.config/opencode | |
| fi | |
| chown -R automaker:automaker /home/automaker/.config/opencode | |
| chmod -R 700 /home/automaker/.config/opencode | |
| # OpenCode also uses ~/.cache/opencode for cache data (version file, etc.) | |
| if [ ! -d "/home/automaker/.cache/opencode" ]; then | |
| mkdir -p /home/automaker/.cache/opencode | |
| fi | |
| chown -R automaker:automaker /home/automaker/.cache/opencode | |
| chmod -R 700 /home/automaker/.cache/opencode | |
| # Ensure npm cache directory exists with correct permissions | |
| # This is needed for using npx to run MCP servers | |
| if [ ! -d "/home/automaker/.npm" ]; then | |
| mkdir -p /home/automaker/.npm | |
| fi | |
| chown -R automaker:automaker /home/automaker/.npm | |
| # If CURSOR_AUTH_TOKEN is set, write it to the cursor auth file | |
| # On Linux, cursor-agent uses ~/.config/cursor/auth.json for file-based credential storage | |
| # The env var CURSOR_AUTH_TOKEN is also checked directly by cursor-agent | |
| if [ -n "$CURSOR_AUTH_TOKEN" ]; then | |
| CURSOR_CONFIG_DIR="/home/automaker/.config/cursor" | |
| mkdir -p "$CURSOR_CONFIG_DIR" | |
| # Write auth.json with the access token | |
| cat > "$CURSOR_CONFIG_DIR/auth.json" << EOF | |
| { | |
| "accessToken": "$CURSOR_AUTH_TOKEN" | |
| } | |
| EOF | |
| chmod 600 "$CURSOR_CONFIG_DIR/auth.json" | |
| chown -R automaker:automaker /home/automaker/.config | |
| fi | |
| # Switch to automaker user and execute the command | |
| exec gosu automaker "$@" | |