Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion plugins/crypto/README.md
Original file line number Diff line number Diff line change
@@ -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.

Expand Down
4 changes: 2 additions & 2 deletions plugins/crypto/commands/bars.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Historical crypto OHLCV for one pair, at any supported timeframe.
argument-hint: <PAIR> [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
Expand All @@ -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=<PAIR>&timeframe=1Day&limit=30"`
Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/bars?symbol=<PAIR>&timeframe=1Day&limit=30"`

## Reading the response

Expand Down
4 changes: 2 additions & 2 deletions plugins/crypto/commands/book.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Top of the crypto order book, both sides, with the spread.
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
Expand All @@ -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

Expand Down
4 changes: 2 additions & 2 deletions plugins/crypto/commands/lookup.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Find a crypto pair by asset name (bitcoin → BTC/USD).
argument-hint: <asset name>
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
Expand All @@ -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=<url-encoded>&limit=10"`
Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/crypto/lookup?q=<url-encoded>&limit=10"`

## Reading the response

Expand Down
4 changes: 2 additions & 2 deletions plugins/crypto/commands/pairs.md
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -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

Expand Down
4 changes: 2 additions & 2 deletions plugins/crypto/commands/quote.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: The latest crypto trade and quote, with the bid/ask spread.
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
Expand All @@ -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

Expand Down
6 changes: 3 additions & 3 deletions plugins/crypto/commands/report.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Research one crypto pair — price, technicals, score, supply and order book.
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
Expand All @@ -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
Expand Down Expand Up @@ -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/<PAIR>`.
- Link the shareable page: `https://advis0r.pwa.pit.world/crypto/<PAIR>`.
4 changes: 2 additions & 2 deletions plugins/crypto/commands/spark.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Compare recent moves across several crypto pairs at once.
argument-hint: <PAIR> [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
Expand All @@ -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

Expand Down
2 changes: 1 addition & 1 deletion plugins/stocks/README.md
Original file line number Diff line number Diff line change
@@ -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.

Expand Down
4 changes: 2 additions & 2 deletions plugins/stocks/commands/discover.md
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -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=<url-encoded>&provider=offline&horizon=2&limit=10"`
Fallback: `curl -sS --max-time 180 "https://advis0r.pwa.pit.world/api/discover?topic=<url-encoded>&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
Expand Down
4 changes: 2 additions & 2 deletions plugins/stocks/commands/list.md
Original file line number Diff line number Diff line change
@@ -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
Expand All @@ -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

Expand Down
4 changes: 2 additions & 2 deletions plugins/stocks/commands/lookup.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Find a ticker symbol by company name (rivian → RIVN).
argument-hint: <company name>
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
Expand All @@ -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=<url-encoded>&limit=10"`
Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/lookup?q=<url-encoded>&limit=10"`

## Reading the response

Expand Down
4 changes: 2 additions & 2 deletions plugins/stocks/commands/quote.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: The fast read on one ticker — price, score, and how stale the snapshot is.
argument-hint: <SYMBOL>
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
Expand All @@ -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
Expand Down
6 changes: 3 additions & 3 deletions plugins/stocks/commands/report.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Research one ticker — score, technicals, fundamentals, thesis, signals, and sources.
argument-hint: <SYMBOL>
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
Expand All @@ -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
Expand All @@ -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/<SYMBOL>`.
- Link the shareable report: `https://advis0r.pwa.pit.world/ticker/<SYMBOL>`.
4 changes: 2 additions & 2 deletions plugins/stocks/commands/research.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: Full-text search across every indexed earnings transcript and article.
argument-hint: <words to search for>
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
Expand All @@ -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=<url-encoded>&limit=20"`
Fallback: `curl -sS "https://advis0r.pwa.pit.world/api/search?q=<url-encoded>&limit=20"`

## Reading the response

Expand Down
4 changes: 2 additions & 2 deletions plugins/stocks/commands/signals.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: What was actually said about a ticker — extracted signals with quotes and sources.
argument-hint: <SYMBOL>
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
Expand All @@ -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

Expand Down
2 changes: 1 addition & 1 deletion prd/0008-ticker-research-and-plugin-marketplace.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down
4 changes: 2 additions & 2 deletions src/advisor.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down
2 changes: 1 addition & 1 deletion src/engines.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -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"],
Expand Down
2 changes: 1 addition & 1 deletion src/profullstack-feeds.opml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<outline text="BitTorrented Blog" title="BitTorrented Blog" type="rss" xmlUrl="https://bittorrented.com/blog/rss.xml" htmlUrl="https://bittorrented.com/blog" />
<outline text="bl0ggers Blog" title="bl0ggers Blog" type="rss" xmlUrl="https://bl0ggers.com/blog/rss.xml" htmlUrl="https://bl0ggers.com/blog" />
<outline text="c0mpute Blog" title="c0mpute Blog" type="rss" xmlUrl="https://c0mpute.com/blog/rss.xml" htmlUrl="https://c0mpute.com/blog" />
<outline text="c0upons Blog" title="c0upons Blog" type="rss" xmlUrl="https://c0upons.com/blog/rss.xml" htmlUrl="https://c0upons.com/blog" />
<outline text="c0upons Blog" title="c0upons Blog" type="rss" xmlUrl="https://c0upons.pwa.pit.world/blog/rss.xml" htmlUrl="https://c0upons.pwa.pit.world/blog" />
<outline text="CoinPay Blog" title="CoinPay Blog" type="rss" xmlUrl="https://coinpayportal.com/blog/rss.xml" htmlUrl="https://coinpayportal.com/blog" />
<outline text="CrawlProof Blog" title="CrawlProof Blog" type="rss" xmlUrl="https://crawlproof.com/blog/rss.xml" htmlUrl="https://crawlproof.com/blog" />
<outline text="d0rz Blog" title="d0rz Blog" type="rss" xmlUrl="https://d0rz.com/blog/rss.xml" htmlUrl="https://d0rz.com/blog" />
Expand Down
2 changes: 1 addition & 1 deletion src/tools.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -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"] },
},
Expand Down
4 changes: 2 additions & 2 deletions test/tools.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -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"] });
Expand Down Expand Up @@ -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"],
Expand Down
2 changes: 1 addition & 1 deletion test/upgrade.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -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"] },
},
]);
});
Expand Down
Loading