● Live reference Publishing-only automation contabo-149 · TLS auto

Social Media Multi-Task Manager

Full operational reference for browser-first social publishing, stealth browser patterns, marketing agent skills, B2B outreach, and low-code ops. Own-content publishing only. Conservative pacing. No platform API abuse.

Domain: manager.addict.best Server: contabo-149 (149.102.150.185) TLS email: admin@ielts.fast Mode: reference + playbook hub
PublishPlaywright

Katzca/AutoSocial

Local dashboard for TikTok / IG / YouTube — persistent sessions, queues, schedule, FFmpeg uniquify.

Open playbook →
PublishInstagram

xtea/auto-instagram

Feed / Carousel / Reels via Playwright + cookies + Patchright. Cron queues.

Open playbook →
StealthChromium

CloakBrowser

Hardened Chromium for Playwright — geoip, humanize, FPJS fixes, Xvfb headed mode.

Stealth guide →
CLIOrchestration

Simplified CLI

JSON-stdout agent-friendly posts, AI images, analytics. Non-zero exit codes.

CLI section →
Marketing120 skills

Aaron Marketing Skills

7 disciplines, quality gates SHIP/FIX/BLOCK, HOT/WARM/COLD memory, truth registries.

Skills →
Marketing45+ skills

Corey Haines Skills

Fastest path for agent marketing: CRO, copy, SEO, ads, email, growth.

Skills →
B2BEmail-first

eracle/OpenOutreach

Self-hosted AI sales agent: discover → qualify → email from your mailbox. Zero social ToS surface.

Outreach stack →
OpsLow-code

Frappe Framework

DocTypes → auto UI, REST, reports, RBAC. Backend for multi-account CRM / content calendar.

Framework →

🚀 Hybrid Agent Apps (ready to run)

Subpath apps that wire 5+ tools into functional orchestrators — not just notes.

/agents/publisher/

AutoSocial + IG + Cloak + FFmpeg + Aaron + simplified-cli

/agents/stealth/

CloakBrowser + Xvfb + proxy/geoip + profiles + FPJS

/agents/growth/

MultiPost + Corey + warm-up + L1–L3 + canary

/agents/content/

CLI images + FFmpeg + captions + queue + QA

/agents/outreach/

OpenOutreach + Aaron + Frappe + social handoff

/agents/ops/

ServerRouter + Dispatcher + Hybrid pipeline + gates

OMNI media agents — launcher · responder · keep-alive · overgrowth · auto-login · master_fix

Aliases: /run/publisher/ · /run/stealth/ · /run/growth/ · /run/content/ · /run/outreach/ · /run/ops/

Multi-Task Playbooks

How to run several social ops in parallel without burning accounts. One account → one IP forever when live.

Hybrid 4.7 compatible
1. Boot / self-check 2. ServerRouter 3. Dispatcher 4. Warm-up 5. PrePublish score 6. Publish 7. First 60 minutes

Task board A — Content day

1) Draft captions (Aaron/Corey skills) · 2) Uniquify video (yt-dlp + FFmpeg / Apex) · 3) Queue AutoSocial · 4) Schedule windows · 5) Shadowban canary next day

Task board B — Multi-account

1) One profile dir per account · 2) Cookie inject before nav · 3) Residential proxy match geo · 4) Poisson delays · 5) Quarantine on checkpoint

Task board C — Growth day

1) Warm feed scroll · 2) Bounded engage · 3) No ban-loop retries · 4) L1 reduce / L2 re-export cookies / L3 48h halt

Task board D — Agent orchestration

1) simplified-cli JSON jobs · 2) marketing skills for copy · 3) Playwright only for own posts · 4) Log every exit code

Hard rule: Browser automation is for your own content publishing with conservative pacing. No credential stuffing, no mass account creation, no captcha bypass automation (passive_only: true).
SlotTaskToolNotes
09:00Session healthpersistent profiles / cookiesrefresh_silently ~45m on engage
10:00Draft + scoreAaron/Corey skillsVirality ≥ 60 before publish if using growth gates
11:30Queue publishAutoSocial / auto-instagramOwn media only; human delays
14:00Light engagePlaywright + stealthPhasedGrowth caps if account < 21 days
18:00Analytics + notessimplified-cli / CRMThree-state: PASS | FAIL | INCONCLUSIVE

Safety & Ethics

Use cautiously. Align with platform ToS and local law. This hub is a technical reference, not a green light for abuse.

Own content only
  • Publishing only for browser automation patterns — your media, your accounts.
  • Conservative pacing — Poisson burst-rest, Fitts delays, never 429 tight-loops.
  • One account → one VPS IP forever for live multi-account Mode C.
  • Quarantine on shadowban | checkpoint | session_expired | account_locked.
  • No captcha bypass automation — passive_only ethics.
  • CloakBrowser license: no illegal use, no credential stuffing, no account-creation abuse.
INCONCLUSIVE ≠ PASS. Never claim “done” without measurable verification. Do not weaken checks or hardcode success.

Katzca/AutoSocial — Playwright Social Dashboard

Local dashboard for TikTok / Instagram / YouTube with persistent Playwright sessions, queues, scheduling, yt-dlp + FFmpeg video uniquification.

Publishing TikTok Instagram YouTube Conservative pacing
  1. Run the local dashboard.
  2. First-run login per account — sessions saved to .profiles/.
  3. Queue videos.
  4. Schedule or instant post.
  5. Extend with OpenCV / face-blurring logic when privacy requires.
  • Keep one profile directory per account — never share cookies across brands.
  • Uniquify before multi-platform post: light crop, metadata strip, audio gain nudge via FFmpeg.
  • Prefer schedule windows that match audience timezone (pair with CloakBrowser geoip).
  • After post: monitor first 60 minutes engagement; freeze queue if rate limits appear.
bash · clone & run (adapt to repo README)
git clone https://github.com/Katzca/AutoSocial.git
cd AutoSocial
# install deps per README (node/python)
# start dashboard, then login once per account
# sessions → .profiles/

# example FFmpeg uniquify (own content)
ffmpeg -i input.mp4 -vf "scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920,eq=brightness=0.01:contrast=1.02" \
  -c:v libx264 -preset fast -crf 20 -c:a aac -ar 48000 -shortest out_unique.mp4
Agent prompt
Using AutoSocial patterns: prepare a queue of N own-content videos for TikTok+IG.
- Ensure .profiles/{account} exists and is healthy
- Uniquify each video with FFmpeg (H.264, ar 48000)
- Schedule with ≥45m spacing
- Abort on checkpoint/shadowban signals
- Report PASS/FAIL/INCONCLUSIVE per account

xtea/auto-instagram — IG Publisher

Focused Instagram publisher (Feed / Carousel / Reels) using Playwright + imported cookies + Patchright (stealth Chromium). Queue support via cron.

Instagram Patchright Cookies Cron queue
  1. Prepare a content folder (images/videos + captions).
  2. Import cookies for the target account.
  3. Run CLI commands for Feed / Carousel / Reels.
  4. Add residential proxy + human-like delays.
  5. Optional: cron for queue drain.
bash
git clone https://github.com/xtea/auto-instagram.git
cd auto-instagram
# import cookies → run CLI (see repo commands)
# add residential proxy + human delays
Cookie hygiene: encrypt at rest when possible; inject cookies before navigate; save after success; sanitize SameSite Titlecase; chmod 600 on secrets.
Agent prompt
Publish one Reel from ./content/reel-01 using auto-instagram patterns.
- Load cookies for account X
- Residential proxy + geo match
- Human delays between UI steps (Bezier clicks if available)
- Own content only; log final URL or FAIL reason
- Exit non-zero on challenge/checkpoint

MultiPost — Extension & Desktop

Bulk operations across 50+ global platforms including Twitter/X, Facebook, LinkedIn, YouTube.

  • MultiPost-Extension (browser) — quick multi-platform drafts from one UI.
  • MultiPost-Desktop — heavier bulk workflows.
Still treat as own-content publishing. Bulk ≠ spam. Space posts; keep brand voice consistent via marketing skills.
Agent prompt
Adapt this caption pack for MultiPost across X, LinkedIn, and Instagram.
- Keep one core claim; platform-native length
- No banned claims; attach UTM tags
- Output a table: platform | caption | CTA | hashtags

Stealth Helpers — CloakBrowser

Stronger stealth Chromium for Playwright. Pair with anti-detect profile tools (self-hosted AdsPower-class) for one-account-one-profile isolation.

npm
Stealth Python JavaScript Docker
bash · install / upgrade
pip install -U cloakbrowser          # Python
npm install cloakbrowser@latest      # JavaScript
docker pull cloakhq/cloakbrowser:latest

# system deps only — do NOT need: playwright install chromium
playwright install-deps chromium
javascript
import { launch } from 'cloakbrowser';

const browser = await launch();
const page = await browser.newPage();
await page.goto('https://example.com');
console.log(await page.title());
await browser.close();
javascript
const browser = await launch({
  proxy: 'http://user:pass@residential-proxy:port',
  geoip: true,       // match timezone + locale to proxy IP
  headless: false,   // some sites detect headless even with C++ patches
  humanize: true,    // human-like mouse, keyboard, scroll
});
python · recommended anti-bot config
browser = launch(
    proxy="http://your-residential-proxy:port",  # residential IP — datacenter often blocked by reputation
    geoip=True,      # matches timezone + locale to proxy exit IP
    headless=False,  # headed mode
    humanize=True,   # human-like behavior
)

# Prefer SOCKS5 when supported (raw TCP, fewer HTTP CONNECT / HTTP2 issues)
browser = launch(
    proxy="socks5://user:pass@proxy:1080",
    geoip=True,
    headless=False,
    humanize=True,
)
Also note: Anti-detect browser profiles (self-hosted AdsPower-class) for one-account-one-profile isolation. Stronger Chromium stealth + per-account isolation patterns.

Playwright / CloakBrowser — Usage Notes

Operational tips for stable publishing automation under anti-bot pressure.

bash
# Install Xvfb (virtual framebuffer)
sudo apt install xvfb

# Start virtual display
Xvfb :99 -screen 0 1920x1080x24 &
export DISPLAY=:99
python · headed + residential
from cloakbrowser import launch

# Headed mode + residential proxy for maximum stealth
browser = launch(headless=False, proxy="http://your-residential-proxy:port")
page = browser.new_page()
page.goto("https://heavily-protected-site.com")  # better odds vs DataDome etc.
browser.close()
This runs a real headed browser rendered on a virtual display — no physical monitor needed. Combine with geoip + humanize + residential IP.
python
from cloakbrowser import launch_persistent_context

# First run: warm up with --disable-http2 (fresh sessions sometimes challenged over HTTP/2)
ctx = launch_persistent_context("./profile", args=["--disable-http2"])
page = ctx.new_page()
page.goto("https://example.com")  # warms up cookies
ctx.close()

# Future runs — no --disable-http2 needed
ctx = launch_persistent_context("./profile")
page = ctx.new_page()
page.goto("https://example.com")  # passes with saved cookies
javascript
import { launchPersistentContext } from 'cloakbrowser';

// First run: warm up with --disable-http2
let ctx = await launchPersistentContext({ userDataDir: './profile', args: ['--disable-http2'] });
let page = await ctx.newPage();
await page.goto('https://example.com');
await ctx.close();

// Future runs
ctx = await launchPersistentContext({ userDataDir: './profile' });
python
from cloakbrowser import launch_persistent_context

ctx = launch_persistent_context("./my-profile", headless=False)
# If still flagged, raise storage quota (see CloakBrowser storage quota docs)
python
# Bad — sends CDP commands, reCAPTCHA detects this
page.wait_for_timeout(3000)

# Good — invisible to the browser
import time
time.sleep(3)

# Prefer type() over fill()
page.type("#email", "user@example.com", delay=50)
javascript
// Bad — CDP
await page.waitForTimeout(3000);

// Good
await new Promise(r => setTimeout(r, 3000));
  • Use Playwright, not Puppeteer (less CDP noise for reCAPTCHA).
  • Residential proxies — datacenter IPs fail on reputation alone.
  • Spend 15+ seconds on page before triggering reCAPTCHA.
  • Space requests: 30+ seconds between grecaptcha.execute pages.
  • Fixed fingerprint seed for consistent device identity.
  • Minimize page.evaluate() before reCAPTCHA fires.

Troubleshooting (CloakBrowser / Playwright)

Most blocks come from missing residential proxy, geoip, or headed mode — not pure fingerprint magic.

Some sites detect headless even with C++ patches. Use Xvfb + headed mode + residential proxy (see above).

DetectionCauseFix
nodriver / bad bot Stale binary/wrapper, missing FPJS patches, poor proxy reputation Upgrade Pro binary (150.0.7871.114.3+), residential + geoip=True, config below
Browser tampering Noise injection detected by ML --fingerprint-noise=false
Browser tampering (fonts) Font metrics ≠ spoofed Windows platform --fingerprint-windows-font-metrics (Chromium 148+; Windows fonts installed)
Virtual machine Screen dimensions ≠ viewport --fingerprint-screen-width/height matching viewport
python · FPJS-passing config (Linux + residential)
browser = launch(
    headless=False,
    proxy="http://user:pass@residential-proxy:port",
    geoip=True,
    args=[
        "--fingerprint-noise=false",          # prevents tampering detection
        "--fingerprint-windows-font-metrics", # align font metrics — 148+ binary, needs Windows fonts
    ],
)
javascript · same
const browser = await launch({
  headless: false,
  proxy: 'http://user:pass@residential-proxy:port',
  geoip: true,
  args: [
    '--fingerprint-noise=false',
    '--fingerprint-windows-font-metrics',
  ],
});
On minimal Linux, missing font packages break canvas emoji hashes. Install the Font Setup on Linux packages from CloakBrowser docs after proxy/geoip/headed are correct.

Warm cookies once with --disable-http2, then reuse persistent profile. For ephemeral: launch(args=["--disable-http2"]) forces HTTP/1.1 — only when required.

bash
# Upgrade
pip install -U cloakbrowser
npm install cloakbrowser@latest
docker pull cloakhq/cloakbrowser:latest

# Preview channel
export CLOAKBROWSER_RELEASE_CHANNEL=preview
# or per launch: release_channel="preview" / releaseChannel: 'preview'

# Pin binary version (Free example)
export CLOAKBROWSER_VERSION=146.0.7680.177.5

# Downgrade wrapper
pip install cloakbrowser==0.3.21
npm install cloakbrowser@0.3.21
docker pull cloakhq/cloakbrowser:0.3.21

# Custom binary
export CLOAKBROWSER_BINARY_PATH=/path/to/your/chrome

# macOS Gatekeeper / “App is damaged”
xattr -cr ~/.cloakbrowser/chromium-*/Chromium.app
python · pin versions
# Free — pin a public release
browser = launch(browser_version="146.0.7680.177.5")

# Pro — pin previous Pro version
browser = launch(license_key="cb_xxxxxxxx", browser_version="148.0.7778.215.2")

# Preview
browser = launch(license_key="cb_xxxxxxxx", release_channel="preview")
  • Legal? Open-source Chromium-based browser; illegal automation / stuffing / abuse prohibited. See BINARY-LICENSE.md.
  • Free? Wrappers MIT free; latest binary free tier via GitHub sign-in (1 concurrent); Pro for more; older v146 free on Releases.
  • License for free? Latest build needs free key from GitHub sign-in; v146 runs without key.
  • vs Camoufox? Camoufox = patched Firefox; CloakBrowser = patched Chromium + native Playwright.
  • Own proxy? Yes — HTTP or SOCKS5 via proxy=.

celeryhq/simplified-cli

Agent-friendly CLI: JSON stdout + non-zero exits. Perfect for orchestration.

bash
npm install -g simplified-cli
export SIMPLIFIED_API_KEY=your_key
simplified auth:login

# Common commands
simplified posts:create
simplified ai-image:generate --wait
simplified analytics

# Orchestration tip: parse JSON stdout; treat non-zero exit as FAIL
Agent prompt
Using simplified-cli:
1) Generate an image for campaign C with ai-image:generate --wait
2) Create a post draft with posts:create
3) Return raw JSON + exit code
4) If exit != 0 → FAIL with stderr

🥇 Aaron Marketing Skills

Best overall marketing OS for agents: 120 skills across 7 disciplines with deterministic quality gates.

120 skills SHIP / FIX / BLOCK HOT/WARM/COLD memory Truth registries
  • 7 disciplines: SEO/GEO, Social, Email, Paid, Influencer, Launch, Narrative
  • Deterministic quality gates — every output gets SHIP / FIX / BLOCK with weighted scoring
  • Truth registries — claims, consent, channels, launches
  • HOT/WARM/COLD memory across sessions
  • 100+ connector paths to free APIs / data sources
  • 8 auditor-class gates: TALE, CORE-EEAT, CITE, STAR, ROAS, SEND, RAMP, ECHO

Pros

Extremely comprehensive; measurable quality; keyless Tier 1; shared 7-section skill contract; CI-validated validators.

Cons

Complex architecture; needs AI coding agent; Governed profile opt-in; some MCP connectors catalogued not auto-registered.

bash
npx skills add aaron-he-zhu/aaron-marketing-skills

# Entry points
/aaron-marketing:auto
/aaron-marketing:seo-geo
/aaron-marketing:launch
  1. Install via npx skills add
  2. Start with /aaron-marketing:auto — describe goal in natural language
  3. Or discipline entrypoints: seo-geo, launch, etc.
  4. Let the agent run the 4-phase loop for that discipline
  5. Review auditor gate verdicts before publishing or scaling
  6. Use memory system to persist findings across sessions
Social manager bind: Use Aaron skills for creative strategy + quality gates, then hand off assets to AutoSocial / auto-instagram for browser publish.

Marketing Skills (Corey Haines)

Fastest path for AI agents on marketing tasks. Simpler than Aaron — fewer scoring systems, quicker wins.

45+ skills Cross-skill refs CRO · SEO · Ads · Email
  • 40+ markdown skills for Claude Code / Cursor / Codex / Windsurf
  • product-marketing is the foundation — other skills reference it first
  • Install: npx skills add coreyhaines31/marketingskills

Pros

Works with any Agent Skills client; cross-references; full marketing stack; agency-tested.

Cons

Not standalone; skills are instructions not scripts; needs product-marketing.md; can overwhelm for one narrow task.

bash
npx skills add coreyhaines31/marketingskills
# Fill .agents/product-marketing.md
# Then ask NL questions or use /cro /emails /seo-audit
Example agent asks
Optimize this landing page for conversions
Write a 5-email welcome sequence
Run /seo-audit on https://example.com
Draft IG captions for a product launch using product-marketing.md

eracle/OpenOutreach — B2B Email Agent

If priority is B2B sales outreach (not social). Autonomous lead discovery + AI email sequences from your own mailbox.

B2B Browserless SQLite CRM GPLv3
  • No contact lists needed — AI discovers leads from product description
  • Pay only for what resolves — search free; paid email lookups gated by confidence
  • Self-hosted SQLite; zero social platform risk
  • Bayesian active learning + multi-turn follow-up
  • Django Admin CRM

Requirements

Docker or Python 3.12+ · LLM key · BetterContact Lead Finder · mailbox (Gmail/SMTP) · product + ICP definition

Watchouts

Bayesian loop experimental; freemium self-promo fraction (disable in source); GPLv3; not a social poster

bash
docker run --pull always -it \
  -v ~/.openoutreach/data:/app/data \
  ghcr.io/eracle/openoutreach:latest

# Onboard: product, LLM key, mailbox, BetterContact
# Define ICP e.g. "VP Engineering at Series B SaaS"
# Monitor: localhost:8000/admin

frappe/frappe — Low-code Ops Backend

Metadata-driven full-stack framework (powers ERPNext). Ideal CRM / calendar / permissions layer under the social manager.

  • DocTypes → DB schema, REST API, CRUD admin UI, forms, reports, permissions
  • Semantic-web inspired consistency
  • Built-in workflow, email, files, multi-tenancy

Pros

True low-code; RBAC admin; auto REST; Report Builder; ERPNext battle-tested (700+ object types)

Cons

Steep learning curve; MariaDB-coupled; heavy for simple CRUD

Python · MariaDB/MySQL · Redis · Node.js

  1. Install Frappe Bench and initialize a site
  2. Define DocTypes (Account, Post, Campaign, CookieHealth…)
  3. Auto-generated forms / lists / APIs
  4. Customize with Server Scripts (Python) + Client Scripts (JS)
  5. Report Builder for ops BI
  6. Optional: ERPNext or custom business apps
Suggested DocTypes for social manager
SocialAccount, BrowserProfile, ProxyEndpoint, ContentAsset, PublishJob,
ScheduleWindow, EngagementTask, IncidentEvent (L1/L2/L3), AuditVerdict

Prompts Library

Copy-paste prompts for multi-task social management. Combine with skills above.

1 · Multi-account publish day
You are the social multi-task manager for manager.addict.best.
Accounts: [list]. Platforms: IG Reels + TikTok.
Constraints: own content only; residential proxies; one profile per account; ≥45m spacing;
quarantine on checkpoint/shadowban; three-state report.
Plan → uniquify → queue → publish → first_60_minutes checklist.
2 · Caption system (Aaron/Corey bind)
Using product-marketing context + social skill:
Write 5 platform-native captions (IG, X, LinkedIn, TikTok, YT short).
Emit SHIP/FIX/BLOCK for each with reasons. No banned claims. Include CTA + 3–8 tags max.
3 · Stealth recovery
Account hit soft block after Playwright post.
Diagnose using CloakBrowser troubleshooting matrix (proxy, geoip, headless, fonts, HTTP/2 warm).
Propose minimal fix; do not retry tight-loop; max 3 heal attempts with evidence.
4 · Growth vs risk
Account age 12 days. Propose PhasedGrowth caps for engage today.
Skip parasitic_risk tags. Include warm_up steps and stop conditions (301/308/310 map).
5 · Orchestrator shell
Build a bash/python orchestrator that:
- calls simplified-cli for assets
- writes queue JSON for AutoSocial/auto-instagram
- launches cloakbrowser persistent contexts
- logs PASS|FAIL|INCONCLUSIVE per step
Never hardcode PASS.

Command Cheatsheet

High-signal commands collected from the full reference set.

bash · master cheatsheet
# --- Publishing stacks ---
git clone https://github.com/Katzca/AutoSocial.git
git clone https://github.com/xtea/auto-instagram.git
git clone https://github.com/cedonulfi/automie.git

# --- CloakBrowser ---
pip install -U cloakbrowser
npm install cloakbrowser@latest
docker pull cloakhq/cloakbrowser:latest
playwright install-deps chromium
sudo apt install xvfb
Xvfb :99 -screen 0 1920x1080x24 &
export DISPLAY=:99
export CLOAKBROWSER_RELEASE_CHANNEL=preview
export CLOAKBROWSER_VERSION=146.0.7680.177.5
xattr -cr ~/.cloakbrowser/chromium-*/Chromium.app   # macOS

# --- Simplified CLI ---
npm install -g simplified-cli
export SIMPLIFIED_API_KEY=...
simplified auth:login
simplified posts:create
simplified ai-image:generate --wait
simplified analytics

# --- Marketing skills ---
npx skills add aaron-he-zhu/aaron-marketing-skills
npx skills add coreyhaines31/marketingskills

# --- OpenOutreach ---
docker run --pull always -it -v ~/.openoutreach/data:/app/data \
  ghcr.io/eracle/openoutreach:latest

# --- FFmpeg uniquify (own media) ---
ffmpeg -i in.mp4 -vf "scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920" \
  -c:v libx264 -crf 20 -c:a aac -ar 48000 -shortest out.mp4

Recommended Stack Map

How pieces fit into one multi-task social manager.

LayerToolRole
Strategy / copyAaron + Corey skillsCaptions, CRO, SEO, quality gates
Assetssimplified-cli / FFmpeg / ApexImages, uniquify, edit
Publish runtimeAutoSocial + auto-instagramQueues, sessions, platform UI
Browser coreCloakBrowser / PatchrightStealth Chromium
Bulk assistMultiPost50+ platform drafts
B2B off-socialOpenOutreachEmail leads, no social ToS
Ops CRMFrappe DocTypesAccounts, jobs, incidents
Skills (SHIP) Assets ready Stealth profile Queue publish Observe 60m CRM log

Deploy Notes — manager.addict.best

Static reference app on contabo-149 with Caddy automatic HTTPS.

ItemValue
Domainmanager.addict.best
Servercontabo-149 · 149.102.150.185
TLS emailadmin@ielts.fast
Web root/var/www/manager.addict.best
Caddy site/etc/caddy/sites/manager.addict.best.caddy
Caddyfile site block
manager.addict.best {
	tls admin@ielts.fast
	encode gzip zstd
	root * /var/www/manager.addict.best
	file_server
	try_files {path} /index.html

	header {
		Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
		X-Content-Type-Options "nosniff"
		X-Frame-Options "SAMEORIGIN"
		Referrer-Policy "strict-origin-when-cross-origin"
		-Server
		-X-Powered-By
	}

	log {
		output file /var/log/caddy/manager.addict.best.log {
			roll_size 10MB
			roll_keep 5
		}
		format json
	}
}