replace cursor rule with claude code /add-new-service command
that provides comprehensive step-by-step instructions for adding
optional services to the project. optimized for llm execution
with clear structure, code examples, and validation checklist.
add multi-service profiles, gpu variants, and yaml anchors
document caddyfile patterns for conditional auth and special protocols
expand secret generation docs with SERVICES_NEEDING_HASH importance
add configure_services.sh, quick start, and final report sections
include changelog and update scripts documentation
enhance checklist with logging, multi-container, and first-run items
- change gost username from email to fixed 'gost' to avoid @ symbol
breaking proxy url parsing
- fix healthcheck to make real proxy request to httpbin.org instead of
invalid spider request to proxy port
- increase healthcheck interval to 60s and timeout to 15s
gost now always requires an external upstream proxy to function.
wizard prompts for upstream proxy url when gost is selected.
if no upstream provided, gost is removed from selection.
- add gost http/https proxy service with authentication
- create x-proxy-env anchor for shared proxy configuration
- apply proxy settings to ai services (n8n, flowise, langfuse, etc.)
- add gost to wizard, welcome page, and final report
- generate gost credentials and proxy url in secrets script
- use wget healthcheck compatible with alpine-based gost image
Some hosting providers (CLOUD.RU, etc.) reset file permissions during
updates, leaving .env and generated files owned by root. This prevents
normal users from reading configuration.
Now 08_fix_permissions.sh runs after each update to restore proper
ownership and permissions.
- remove urlSuffix feature, external links now always point to root hostname
- add service name prefix to extra links (e.g., "Qdrant Dashboard" instead of "Dashboard")
- keeps internal/external/dashboard links clearly separated
on minimal ubuntu installations (especially cloud vps), the universe
repository may be disabled by default, causing apt to fail installing
packages like fail2ban and python3-dotenv which are only available in
universe. this adds software-properties-common and enables universe
before installing packages.
- update navigation paths to match nov 2025 cloudflare dashboard changes
- add 9 missing services (lightrag, docling, libretranslate, etc.)
- fix authentication status labels (prometheus, comfyui have caddy auth)
- correct ip list naming to lowercase per cloudflare requirements
- condense waf rules section for better readability
- mark dify/supabase as external services
add step 8 to installation that restores file ownership to the invoking
user when running with sudo. also adds cleanup for legacy n8n worker
containers during updates.
- add 08_fix_permissions.sh script to detect real user and fix ownership
- add get_real_user() utility with multiple fallback detection methods
- add cleanup_legacy_n8n_workers() to remove old container naming format
- set restrictive permissions (600) on .env file for security
The --remove-orphans flag was killing Supabase and Dify containers
because their compose files were not included when starting local AI
services. Now we include them conditionally if they are enabled.
log_info/log_error were writing to stdout, which corrupted the
backup path returned by backup_preserved_dirs() via command
substitution. this caused restore to fail silently.
Open-WebUI can take a long time to initialize on first run, causing
the docker compose --wait to fail. Added explicit healthcheck with
120s start_period to allow proper initialization time.
- remove min-height from card headers for natural sizing
- remove duplicate postgres credentials from postgresus card
- consolidate python-runner info into single multiline note
- add spacing between credential rows and support for line breaks
- move extra info from header to bottom section with credentials
- display links (docs, dashboard, admin, ui) as compact "Link" buttons
- move password toggle button to left of masked value
- add python runner mount/entry info to data generation
- remove redundant postgresus note
- reduce vertical spacing in bottom section