From 17d40db550729dd492689bc61319fcac8db6a01d Mon Sep 17 00:00:00 2001 From: Anthony Ettinger Date: Sun, 8 Nov 2026 15:56:13 +0000 Subject: [PATCH] Point retired domains at their pit.world hosts The 28 retired apps now live at .pwa.pit.world and the old domains only 308 until they lapse. Links, hosts, webring/footer params and supabase. URLs move to the pwa hosts. Emails, GitHub/npm paths, brand text and old nginx server_name files are left alone. Co-Authored-By: Claude Opus 5.5 --- README.md | 4 ++-- plugins/crypto/README.md | 2 +- plugins/crypto/commands/bars.md | 4 ++-- plugins/crypto/commands/book.md | 4 ++-- plugins/crypto/commands/lookup.md | 4 ++-- plugins/crypto/commands/pairs.md | 4 ++-- plugins/crypto/commands/quote.md | 4 ++-- plugins/crypto/commands/report.md | 6 +++--- plugins/crypto/commands/spark.md | 4 ++-- plugins/stocks/README.md | 2 +- plugins/stocks/commands/discover.md | 4 ++-- plugins/stocks/commands/list.md | 4 ++-- plugins/stocks/commands/lookup.md | 4 ++-- plugins/stocks/commands/quote.md | 4 ++-- plugins/stocks/commands/report.md | 6 +++--- plugins/stocks/commands/research.md | 4 ++-- plugins/stocks/commands/signals.md | 4 ++-- prd/0008-ticker-research-and-plugin-marketplace.md | 2 +- src/advisor.mjs | 4 ++-- src/engines.mjs | 2 +- src/profullstack-feeds.opml | 2 +- src/tools.mjs | 2 +- test/tools.test.mjs | 4 ++-- test/upgrade.test.mjs | 2 +- 24 files changed, 43 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index 6bf18320..fc349d1e 100644 --- a/README.md +++ b/README.md @@ -92,7 +92,7 @@ or miss one that does. A test fails the build when it drifts. moshcode engines # list installable engines moshcode engines --json # machine-readable install status for automation moshcode install opencode # install opencode (curl … | bash) -moshcode install privacycode # curl -fsSL https://getprivacycode.com/install | sh +moshcode install privacycode # curl -fsSL https://getprivacycode.pwa.pit.world/install | sh moshcode install claude # npm i -g @anthropic-ai/claude-code moshcode install codex # npm i -g @openai/codex moshcode install kimi # curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash @@ -1392,7 +1392,7 @@ opt-in or corresponding environment setting. ### Equity research (`moshcode stocks`) Where `trade` is Alpaca's order book, `stocks` is the research desk: -[advis0r.com](https://advis0r.com/api)'s public read-only API, rendered in the +[advis0r.com](https://advis0r.pwa.pit.world/api)'s public read-only API, rendered in the pit. No key, no login, no write routes, no binary to install: ```sh diff --git a/plugins/crypto/README.md b/plugins/crypto/README.md index 96e9d9c7..85b80bb1 100644 --- a/plugins/crypto/README.md +++ b/plugins/crypto/README.md @@ -1,6 +1,6 @@ # crypto — market data in your engine 🤘 -Slash commands backed by [advis0r.com](https://advis0r.com/api/crypto): live +Slash commands backed by [advis0r.com](https://advis0r.pwa.pit.world/api/crypto): live prices, technical scores, order books, OHLCV history and multi-pair sparklines across Alpaca's US crypto venue. diff --git a/plugins/crypto/commands/bars.md b/plugins/crypto/commands/bars.md index f2f2bdd3..e64a6ee3 100644 --- a/plugins/crypto/commands/bars.md +++ b/plugins/crypto/commands/bars.md @@ -1,7 +1,7 @@ --- description: Historical crypto OHLCV for one pair, at any supported timeframe. argument-hint: [timeframe] -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -15,7 +15,7 @@ moshcode crypto bars $ARGUMENTS --timeframe 1Day --limit 30 --json Timeframes: `1Min`, `5Min`, `15Min`, `1Hour`, `1Day`, `1Week`. Add `--start`/`--end` (ISO dates) to pin a window. -Fallback: `curl -sS "https://advis0r.com/api/crypto/bars?symbol=&timeframe=1Day&limit=30"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/bars?symbol=&timeframe=1Day&limit=30"` ## Reading the response diff --git a/plugins/crypto/commands/book.md b/plugins/crypto/commands/book.md index 61e1284c..d45121bf 100644 --- a/plugins/crypto/commands/book.md +++ b/plugins/crypto/commands/book.md @@ -1,7 +1,7 @@ --- description: Top of the crypto order book, both sides, with the spread. argument-hint: -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -12,7 +12,7 @@ Show the order book for `$ARGUMENTS`. moshcode crypto book $ARGUMENTS --depth 10 --json ``` -Fallback: `curl -sS "https://advis0r.com/api/crypto/orderbook?symbol=$ARGUMENTS&depth=10"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/orderbook?symbol=$ARGUMENTS&depth=10"` ## Reading the response diff --git a/plugins/crypto/commands/lookup.md b/plugins/crypto/commands/lookup.md index 1671675a..e2a5a828 100644 --- a/plugins/crypto/commands/lookup.md +++ b/plugins/crypto/commands/lookup.md @@ -1,7 +1,7 @@ --- description: Find a crypto pair by asset name (bitcoin → BTC/USD). argument-hint: -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -12,7 +12,7 @@ Resolve `$ARGUMENTS` to a tradable pair. moshcode crypto lookup $ARGUMENTS --limit 10 --json ``` -Fallback: `curl -sS "https://advis0r.com/api/crypto/lookup?q=&limit=10"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/lookup?q=&limit=10"` ## Reading the response diff --git a/plugins/crypto/commands/pairs.md b/plugins/crypto/commands/pairs.md index 4c7928f0..f311bb6e 100644 --- a/plugins/crypto/commands/pairs.md +++ b/plugins/crypto/commands/pairs.md @@ -1,6 +1,6 @@ --- description: Every crypto pair advis0r can price, and which are trading. -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -11,7 +11,7 @@ List the supported pairs. moshcode crypto assets --json ``` -Fallback: `curl -sS "https://advis0r.com/api/crypto/assets"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/assets"` ## Reading the response diff --git a/plugins/crypto/commands/quote.md b/plugins/crypto/commands/quote.md index a6a7d069..5891fb80 100644 --- a/plugins/crypto/commands/quote.md +++ b/plugins/crypto/commands/quote.md @@ -1,7 +1,7 @@ --- description: The latest crypto trade and quote, with the bid/ask spread. argument-hint: -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -12,7 +12,7 @@ Get the current quote for `$ARGUMENTS`. moshcode crypto quote $ARGUMENTS --json ``` -Fallback: `curl -sS "https://advis0r.com/api/crypto/quote?symbol=$ARGUMENTS"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/quote?symbol=$ARGUMENTS"` ## Reading the response diff --git a/plugins/crypto/commands/report.md b/plugins/crypto/commands/report.md index 44be2044..8fb09413 100644 --- a/plugins/crypto/commands/report.md +++ b/plugins/crypto/commands/report.md @@ -1,7 +1,7 @@ --- description: Research one crypto pair — price, technicals, score, supply and order book. argument-hint: -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -17,7 +17,7 @@ moshcode crypto $ARGUMENTS --json If `moshcode` is not installed, fall back to the API directly: ```bash -curl -sS "https://advis0r.com/api/crypto/report?symbol=$ARGUMENTS" +curl -sS "https://advis0r.pwa.pit.world/api/crypto/report?symbol=$ARGUMENTS" ``` Pairs are accepted as `BTC`, `BTC-USD`, `BTC/USD` or `BTCUSD`. A bare asset @@ -47,4 +47,4 @@ resolves to that asset's USD pair. **not comparable** to an equity's score from `/stocks:report`. Do not rank the two against each other. - End with the response's own `disclaimer`. This is research, not advice. -- Link the shareable page: `https://advis0r.com/crypto/`. +- Link the shareable page: `https://advis0r.pwa.pit.world/crypto/`. diff --git a/plugins/crypto/commands/spark.md b/plugins/crypto/commands/spark.md index ca7423f7..ab1dab71 100644 --- a/plugins/crypto/commands/spark.md +++ b/plugins/crypto/commands/spark.md @@ -1,7 +1,7 @@ --- description: Compare recent moves across several crypto pairs at once. argument-hint: [PAIR…] -allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.com/api/crypto/:*) +allowed-tools: Bash(moshcode crypto:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/crypto/:*) --- ## Task @@ -15,7 +15,7 @@ moshcode crypto spark $ARGUMENTS --period 24h --json `--period` is `24h` or `7d`. Up to 20 pairs per call. With no pairs given, ask which ones — or offer the majors (BTC, ETH, SOL). -Fallback: `curl -sS "https://advis0r.com/api/crypto/sparklines?symbols=BTC-USD,ETH-USD&period=24h"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/sparklines?symbols=BTC-USD,ETH-USD&period=24h"` ## Reading the response diff --git a/plugins/stocks/README.md b/plugins/stocks/README.md index 1ad8c3b4..e7aaf379 100644 --- a/plugins/stocks/README.md +++ b/plugins/stocks/README.md @@ -1,6 +1,6 @@ # stocks — equity research in your engine 🤘 -Slash commands backed by [advis0r.com](https://advis0r.com/api): scored research +Slash commands backed by [advis0r.com](https://advis0r.pwa.pit.world/api): scored research reports, extracted signals with sources, transcript search, company-name lookup, and ranked watchlists. diff --git a/plugins/stocks/commands/discover.md b/plugins/stocks/commands/discover.md index 3e18b1ab..8981988e 100644 --- a/plugins/stocks/commands/discover.md +++ b/plugins/stocks/commands/discover.md @@ -1,7 +1,7 @@ --- description: Build a ranked watchlist for a topic (slow — it analyzes each candidate). argument-hint: "[topic]" -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ Rank candidates for `$ARGUMENTS` (no topic → the default watchlist). moshcode stocks discover $ARGUMENTS --limit 10 --json ``` -Fallback: `curl -sS --max-time 180 "https://advis0r.com/api/discover?topic=&provider=offline&horizon=2&limit=10"` +Fallback: `curl -sS --max-time 180 "https://advis0r.pwa.pit.world/api/discover?topic=&provider=offline&horizon=2&limit=10"` **This route runs an analysis per candidate and can take minutes.** Tell the user it is working before you start, and do not retry on a timeout — re-running diff --git a/plugins/stocks/commands/list.md b/plugins/stocks/commands/list.md index d55e1809..8b062891 100644 --- a/plugins/stocks/commands/list.md +++ b/plugins/stocks/commands/list.md @@ -1,7 +1,7 @@ --- description: List every ticker with a stored report, best score first. argument-hint: "[--limit n] [--sort recent|score|ticker]" -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ List every ticker advis0r has a stored report for. moshcode stocks list $ARGUMENTS --json ``` -Fallback: `curl -sS "https://advis0r.com/api/reports?sort=score&limit=25"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/reports?sort=score&limit=25"` ## Reading the response diff --git a/plugins/stocks/commands/lookup.md b/plugins/stocks/commands/lookup.md index e6b60e65..154163b6 100644 --- a/plugins/stocks/commands/lookup.md +++ b/plugins/stocks/commands/lookup.md @@ -1,7 +1,7 @@ --- description: Find a ticker symbol by company name (rivian → RIVN). argument-hint: -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ Resolve `$ARGUMENTS` to a ticker symbol. moshcode stocks lookup $ARGUMENTS --limit 10 --json ``` -Fallback: `curl -sS "https://advis0r.com/api/lookup?q=&limit=10"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/lookup?q=&limit=10"` ## Reading the response diff --git a/plugins/stocks/commands/quote.md b/plugins/stocks/commands/quote.md index 413728bb..95dc3cae 100644 --- a/plugins/stocks/commands/quote.md +++ b/plugins/stocks/commands/quote.md @@ -1,7 +1,7 @@ --- description: The fast read on one ticker — price, score, and how stale the snapshot is. argument-hint: -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ Give the short answer on `$ARGUMENTS` — price and score, not the full write-up moshcode stocks $ARGUMENTS --json ``` -Fallback: `curl -sS "https://advis0r.com/api/ticker?symbol=$ARGUMENTS"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/ticker?symbol=$ARGUMENTS"` This is the same document `/stocks:report` reads. The difference is what you do with it: four lines, not a report. If the user wants the thesis, signals and diff --git a/plugins/stocks/commands/report.md b/plugins/stocks/commands/report.md index bc57575f..e8f7c14b 100644 --- a/plugins/stocks/commands/report.md +++ b/plugins/stocks/commands/report.md @@ -1,7 +1,7 @@ --- description: Research one ticker — score, technicals, fundamentals, thesis, signals, and sources. argument-hint: -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -17,7 +17,7 @@ moshcode stocks $ARGUMENTS --json If `moshcode` is not installed, fall back to the API directly: ```bash -curl -sS "https://advis0r.com/api/ticker?symbol=$ARGUMENTS" +curl -sS "https://advis0r.pwa.pit.world/api/ticker?symbol=$ARGUMENTS" ``` ## Reading the response @@ -39,4 +39,4 @@ curl -sS "https://advis0r.com/api/ticker?symbol=$ARGUMENTS" - If the response is a 400 with `didYouMean`, the user typed a company name rather than a symbol — re-run against the suggested symbol and say you did. - End with the response's own `disclaimer`. This is research, not advice. -- Link the shareable report: `https://advis0r.com/ticker/`. +- Link the shareable report: `https://advis0r.pwa.pit.world/ticker/`. diff --git a/plugins/stocks/commands/research.md b/plugins/stocks/commands/research.md index a3333383..cfd4c064 100644 --- a/plugins/stocks/commands/research.md +++ b/plugins/stocks/commands/research.md @@ -1,7 +1,7 @@ --- description: Full-text search across every indexed earnings transcript and article. argument-hint: -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ Search the transcript index for `$ARGUMENTS`. moshcode stocks search $ARGUMENTS --limit 20 --json ``` -Fallback: `curl -sS "https://advis0r.com/api/search?q=&limit=20"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/search?q=&limit=20"` ## Reading the response diff --git a/plugins/stocks/commands/signals.md b/plugins/stocks/commands/signals.md index a84d967d..ed41c412 100644 --- a/plugins/stocks/commands/signals.md +++ b/plugins/stocks/commands/signals.md @@ -1,7 +1,7 @@ --- description: What was actually said about a ticker — extracted signals with quotes and sources. argument-hint: -allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.com/api/:*) +allowed-tools: Bash(moshcode stocks:*), Bash(curl -sS https://advis0r.pwa.pit.world/api/:*) --- ## Task @@ -12,7 +12,7 @@ List the extracted signals for `$ARGUMENTS`. moshcode stocks signals $ARGUMENTS --json ``` -Fallback: `curl -sS "https://advis0r.com/api/signals?ticker=$ARGUMENTS"` +Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/signals?ticker=$ARGUMENTS"` ## Reading the response diff --git a/prd/0008-ticker-research-and-plugin-marketplace.md b/prd/0008-ticker-research-and-plugin-marketplace.md index a0107ba1..f83dc9ef 100644 --- a/prd/0008-ticker-research-and-plugin-marketplace.md +++ b/prd/0008-ticker-research-and-plugin-marketplace.md @@ -22,7 +22,7 @@ superseded-by: `moshcode trade` can look up a quote and place an order. It cannot answer the question that comes before either one — *is this worth buying?* Everything that -would inform that lives in [advis0r.com](https://advis0r.com/api): indexed +would inform that lives in [advis0r.com](https://advis0r.pwa.pit.world/api): indexed earnings transcripts and news, extracted signals with sources, SEC fundamentals, technicals, and a composite score. Today that means leaving the pit for a browser, and it means an agent working in a session has no path to it at all. diff --git a/src/advisor.mjs b/src/advisor.mjs index b1f3b486..bcd2497a 100644 --- a/src/advisor.mjs +++ b/src/advisor.mjs @@ -5,12 +5,12 @@ // Nothing here holds credentials — every route this touches is public and // read-only, which is why there is no login verb and no write verb. // -// The API is documented at https://advis0r.com/api and returns *stored* +// The API is documented at https://advis0r.pwa.pit.world/api and returns *stored* // snapshots: a report carries `reportGeneratedAt`, and every renderer prints it. // A stale price is fine; a stale price dressed up as a live one is not. import { acid, ash, amber, bone, clip, danger, dim } from "./ui.mjs"; -export const DEFAULT_ADVISOR_URL = "https://advis0r.com"; +export const DEFAULT_ADVISOR_URL = "https://advis0r.pwa.pit.world"; /** The advis0r base URL, overridable for a local instance or a test server. */ export function advisorBase(env = process.env) { diff --git a/src/engines.mjs b/src/engines.mjs index d9ffb532..2e7c518c 100644 --- a/src/engines.mjs +++ b/src/engines.mjs @@ -67,7 +67,7 @@ export const ENGINES = { bin: "privacycode", // An opencode derivative, so it speaks the same flags/subcommands. agentArgs: ["--auto"], - install: { cmd: "sh", args: ["-c", "curl -fsSL https://getprivacycode.com/install | sh"] }, + install: { cmd: "sh", args: ["-c", "curl -fsSL https://getprivacycode.pwa.pit.world/install | sh"] }, binDirs: [path.join(homedir(), ".privacycode", "bin")], // Same lineage, so the same screen wording and the same resume flag. resume: ["--continue"], diff --git a/src/profullstack-feeds.opml b/src/profullstack-feeds.opml index e4bf1917..98610e20 100644 --- a/src/profullstack-feeds.opml +++ b/src/profullstack-feeds.opml @@ -10,7 +10,7 @@ - + diff --git a/src/tools.mjs b/src/tools.mjs index 76a90ea8..d857d490 100644 --- a/src/tools.mjs +++ b/src/tools.mjs @@ -48,7 +48,7 @@ export const TOOLS = { bin: "c0upons", // c0upons ships its own POSIX-sh installer, so `| sh` is enough here (the // script avoids bashisms deliberately) — no npm package to install from. - install: { cmd: "sh", args: ["-c", "curl -fsSL https://c0upons.com/install.sh | sh"] }, + install: { cmd: "sh", args: ["-c", "curl -fsSL https://c0upons.pwa.pit.world/install.sh | sh"] }, // The CLI updates itself in place from the same origin the installer uses. upgrade: { cmd: "c0upons", args: ["upgrade"] }, }, diff --git a/test/tools.test.mjs b/test/tools.test.mjs index ca5e09f6..3c995594 100644 --- a/test/tools.test.mjs +++ b/test/tools.test.mjs @@ -94,7 +94,7 @@ test("tool registry uses the official native CLI packages", () => { assert.deepEqual(resolveTool("c0upons"), ["c0upons", TOOLS.c0upons]); assert.deepEqual(TOOLS.c0upons.install, { cmd: "sh", - args: ["-c", "curl -fsSL https://c0upons.com/install.sh | sh"], + args: ["-c", "curl -fsSL https://c0upons.pwa.pit.world/install.sh | sh"], }); // The c0upons CLI replaces its own binary, so upgrades skip the installer. assert.deepEqual(TOOLS.c0upons.upgrade, { cmd: "c0upons", args: ["upgrade"] }); @@ -590,7 +590,7 @@ for (const [name, shell, script] of [ ["ugig", "bash", "curl -fsSL https://ugig.net/install.sh | bash"], ["coinpay", "sh", "curl -fsSL https://coinpayportal.com/install.sh | sh"], ["c0mpute", "sh", "curl -fsSL https://c0mpute.com/install.sh | sh"], - ["c0upons", "sh", "curl -fsSL https://c0upons.com/install.sh | sh"], + ["c0upons", "sh", "curl -fsSL https://c0upons.pwa.pit.world/install.sh | sh"], ["coral", "bash", "curl -fsSL https://withcoral.com/install.sh | bash"], ["noodle", "bash", "curl -fsSL https://noodlerest.dev/install.sh | bash"], ["spinifex", "bash", "curl -fsSL https://install.mulgadc.com | INSTALL_SPINIFEX_SKIP_NEWGRP=1 bash"], diff --git a/test/upgrade.test.mjs b/test/upgrade.test.mjs index 93c63238..28f406b2 100644 --- a/test/upgrade.test.mjs +++ b/test/upgrade.test.mjs @@ -130,7 +130,7 @@ test("an explicit privacycode upgrade plans the installer", () => { { key: "privacycode", kind: "engine", - spec: { cmd: "sh", args: ["-c", "curl -fsSL https://getprivacycode.com/install | sh"] }, + spec: { cmd: "sh", args: ["-c", "curl -fsSL https://getprivacycode.pwa.pit.world/install | sh"] }, }, ]); });