dexterm-cli 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/packages/cli/assets/claude/analyst-system.md +2 -1
- package/dist/packages/cli/src/app-help-gen.js +3 -3
- package/dist/packages/cli/src/docs-kb-gen.js +228 -0
- package/dist/packages/cli/src/doctor.js +22 -7
- package/dist/packages/cli/src/index.js +1 -1
- package/dist/packages/cli/src/kb-skill-cmd.js +3 -0
- package/dist/packages/cli/src/larp-detected.js +209 -0
- package/dist/packages/cli/src/live/token.js +38 -1
- package/dist/packages/cli/src/main.js +140 -1
- package/dist/packages/cli/src/mcp-follow.js +225 -0
- package/dist/packages/cli/src/spectate-cmd.js +14 -3
- package/dist/packages/cli/src/version.js +1 -1
- package/dist/packages/cli/src/x-cmd.js +11 -5
- package/dist/packages/mcp/assets/kb/app-help/spectate-an-agent.md +4 -1
- package/dist/packages/mcp/assets/kb/docs/docs-agents-capability-tiers-enforced-server-side.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-install-in-one-command.md +49 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-per-agent-mandates.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-recipes.md +43 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-red-team-coverage.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-two-ways-to-connect.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-untrusted-by-default.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents-watch-an-agent-work-spectator-view.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-agents.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-answer-style.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-if-claude-is-missing.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-it-knows-the-app.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-mcp-tools.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-plain-language-filters.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-skills.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-starting-a-run.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-what-it-can-change-three-tiers.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-what-it-sees.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst-what-the-analyst-can-never-do.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-analyst.md +23 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-1-start-dexterm.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-2-open-a-real-coin-by-contract-address.md +43 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-3-read-the-safety-panel.md +40 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-4-read-the-holder-panel.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-5-optionally-ask-the-analyst.md +39 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-6-export-or-share-what-you-see.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-7-quit-safely.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-before-any-experimental-trading.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-check-the-installation-with-doctor.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-choose-a-setup-path.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-common-mistakes-and-recovery.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-copy-and-paste-without-surprises.md +39 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-data-says-unavailable-stale-or-rate-limited.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-dexterm-says-command-not-found.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-optional-help-is-unavailable.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-paste-does-nothing-or-pastes-twice.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-the-screen-looks-broken.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-if-you-typed-the-wrong-thing.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-install-node-js-first.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-linux.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-macos-homebrew.md +46 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-macos-or-linux-npm.md +39 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-macos.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-open-the-terminal.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-reopen-dexterm-later.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-ten-minute-first-win.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-terminal-shell-prompt-command-output-and-path.md +40 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-where-to-go-next.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-windows-expectations.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-windows-powershell-experimental.md +39 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners-windows.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-beginners.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-dexterm-help.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-filter-grammar.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-flags.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-invocations.md +43 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-presets.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-scan-commands.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-sort-keys.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli-subcommands.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-cli.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-environment-variables.md +45 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-files-on-disk.md +41 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-headless-recorder-dexterm-record.md +44 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-history-recorder.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-packs.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-price-display-mode.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-push-alerts-and-dexterm-watch.md +45 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-rules-engine.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-the-analyst-s-launch.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-the-optional-free-rpc-key.md +42 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-themes-and-keymaps.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-themes-and-look.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-widgets.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration-workspaces.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-configuration.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-copy-trading-stage-1-follow-a-wallet-see-what-it-does.md +51 -0
- package/dist/packages/mcp/assets/kb/docs/docs-copy-trading-stage-2-the-one-key-mirror-ticket-a-proposal.md +56 -0
- package/dist/packages/mcp/assets/kb/docs/docs-copy-trading-stage-3-capped-auto-mirror-default-off-less.md +47 -0
- package/dist/packages/mcp/assets/kb/docs/docs-copy-trading-what-is-proven-what-is-not.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-copy-trading.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-cache.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-health-registry.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-rate-limits-and-pacing.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-request-budget-meter.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-sources.md +47 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources-the-helius-credit-meter.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-data-sources.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-dexterm-doctor.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-first-run.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-install.md +71 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-next.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-requirements.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-running-the-tests.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-supported-platforms.md +44 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started-updating.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-getting-started.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-keyboard-global-keys.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-keyboard-keys-handled-by-the-loop.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-keyboard-per-screen-keys.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-keyboard-what-shows.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-keyboard.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-measured-accuracy.md +55 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-open-link-keys.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-paste-a-coin-on-the-web.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-the-verdict.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-timestamped-follow-up-drafts.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp-what-it-looks-at.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-larp.md +24 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-degraded-states-you-will-see.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-free-vs-paid-x-api-tiers-your-bill-your-limits.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-kol-lists-and-the-per-handle-filter.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-tests.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-what-is-read-and-when.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-what-you-set-up-once.md +40 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x-where-the-tokens-live.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-login-with-x.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-a-live-ticket.md +42 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-before-you-press-size-vs-caps.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-devnet-signer-mainnet-token.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-jupiter-rate-limits.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-link-a-wallet.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-live-trading-devnet-first.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-mainnet.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-order-plans-and-standing-mandates.md +44 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-panic.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-pnl-cards.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-the-live-fire-path-devnet-the-fast-wallet.md +41 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-the-signer-process.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-the-ticket.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-the-wallet.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-trade-moments.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-what-the-live-path-keeps.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading-your-first-live-trade.md +41 -0
- package/dist/packages/mcp/assets/kb/docs/docs-paper-trading.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-bubble-map-popup.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-build-the-native-window.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-config-dexterm-popup-json.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-docking-macos.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-keys-in-the-popup.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-market-cap-axis.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-security-model.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-token-and-feeds-popups.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart-what-it-shows.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-popup-chart.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-cost-control.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-keys-flag-command.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-safety-four-layers.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-states.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-the-read.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan-triggers-and-score.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scan.md +24 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-frozen-canary.md +30 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-frozen-task-1401-evaluation.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-latest-skill-care-run.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-links-only-larp-baseline-where-it-is-weak.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-not-measured.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-rug-verdict-rules.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard-source-and-rebuild.md +31 -0
- package/dist/packages/mcp/assets/kb/docs/docs-scorecard.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-1-screener.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-2-new-pairs.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-3-watchlist.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-4-analyst-tab.md +28 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-bubble-map.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-coin-images.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-live-holder-and-rug-signals.md +51 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-order-plans.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-paper-ticket-and-positions.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-the-look.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-token-screen.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens-trending-social-and-kol-lists.md +34 -0
- package/dist/packages/mcp/assets/kb/docs/docs-screens.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-1-the-agent-activity-window-follow-mode.md +56 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-2-the-read-only-stream-spectate.md +42 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-3-save-and-replay-record-file-dexterm-spectate.md +41 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-follow-over-mcp-in-the-running-terminal.md +39 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-limits.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-quick-start.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-security-model.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-see-also.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-streaming-it.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-the-three-surfaces.md +37 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator-what-is-redacted.md +35 -0
- package/dist/packages/mcp/assets/kb/docs/docs-spectator.md +29 -0
- package/dist/packages/mcp/assets/kb/docs/docs-troubleshooting-common-questions.md +33 -0
- package/dist/packages/mcp/assets/kb/docs/docs-troubleshooting-doctor-lines.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-troubleshooting-in-app-messages.md +42 -0
- package/dist/packages/mcp/assets/kb/docs/docs-troubleshooting-reporting-a-problem.md +25 -0
- package/dist/packages/mcp/assets/kb/docs/docs-troubleshooting.md +23 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-doctor.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-it-clarifies-it-never-guesses.md +36 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-latency.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-linux-and-windows.md +32 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-privacy.md +26 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-still-unverified.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-the-voice-neural-by-default.md +48 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-what-it-can-never-do.md +27 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice-what-you-can-say.md +38 -0
- package/dist/packages/mcp/assets/kb/docs/docs-voice.md +25 -0
- package/dist/packages/mcp/src/app-help.js +123 -0
- package/dist/packages/mcp/src/firewall.js +2 -2
- package/dist/packages/mcp/src/index.js +5 -4
- package/dist/packages/mcp/src/server.js +56 -18
- package/dist/packages/mcp/src/spectator-sink.js +74 -2
- package/dist/packages/voice/src/stt/whisper.js +4 -2
- package/package.json +6 -5
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-copy-trading-stage-2-the-one-key-mirror-ticket-a-proposal
|
|
3
|
+
title: Copy trading (staged, personal, paper by default) › Stage 2: the one-key mirror ticket (a proposal)
|
|
4
|
+
kind: docs
|
|
5
|
+
page: copy-trading
|
|
6
|
+
page_title: Copy trading (staged, personal, paper by default)
|
|
7
|
+
heading: Stage 2: the one-key mirror ticket (a proposal)
|
|
8
|
+
anchor: stage-2-the-one-key-mirror-ticket-a-proposal
|
|
9
|
+
url: https://dexterm.xyz/docs/copy-trading#stage-2-the-one-key-mirror-ticket-a-proposal
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- copy-trading
|
|
13
|
+
- stage
|
|
14
|
+
- one-key
|
|
15
|
+
- mirror
|
|
16
|
+
- ticket
|
|
17
|
+
- proposal
|
|
18
|
+
- copy
|
|
19
|
+
- trading
|
|
20
|
+
- staged
|
|
21
|
+
- personal
|
|
22
|
+
- paper
|
|
23
|
+
- default
|
|
24
|
+
confidence: high
|
|
25
|
+
owner: maintainers
|
|
26
|
+
origin: docs-generated
|
|
27
|
+
reviewed_by: generated@2026-10-16
|
|
28
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
29
|
+
sources:
|
|
30
|
+
- site/content/docs/copy-trading.md
|
|
31
|
+
date: 2026-10-16
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
On a followed wallet, `m` previews a **MIRROR TICKET** for that wallet's latest buy. The preview shows every check and its number:
|
|
35
|
+
|
|
36
|
+
| check | refuses when | why |
|
|
37
|
+
|---|---|---|
|
|
38
|
+
| lag | more than 30 s since the leader's block | you are late |
|
|
39
|
+
| drift | the price is more than 5 % above the leader's fill | you are chasing |
|
|
40
|
+
| liquidity | under $25k | you cannot get out |
|
|
41
|
+
| age | the pair is under 60 s old | launch noise |
|
|
42
|
+
| leader sold | the leader has already sold this mint since the buy | they left |
|
|
43
|
+
| leader dev / leader holds | the leader is linked to the dev cluster, or holds more than 5 % of supply (from a bubble-map scan) | they may be distributing to you |
|
|
44
|
+
|
|
45
|
+
Unknown facts are shown as unknown (`?`), never guessed, except decimals: without them the drift cannot be computed and the mirror is refused until the token is open. The size is `min(your cap, k × the leader's size, 1 % of liquidity)`; the cap is $20 per mirror today (the mandate's per-trade cap applies again at arming). `m` again **proposes**: an order plan, buy now, no ladder, 3 % slippage, expiring in 10 minutes, labelled `copy`, that lands on the `O` screen exactly like a typed or spoken plan. It is inert until you hold `a` to arm it into an armed mandate, or approve it in Phantom; nothing on the follows screen can arm.
|
|
46
|
+
|
|
47
|
+
The same mirror ticket works from a shell, for scripts and replays, with the same checks and the same size rule:
|
|
48
|
+
|
|
49
|
+
```sh
|
|
50
|
+
$ dexterm follow mirror <addr> # preview the latest buy's mirror ticket; writes nothing
|
|
51
|
+
$ dexterm follow mirror <addr> --cap 10 --k 1 # preview with your own cap and size factor
|
|
52
|
+
$ dexterm follow mirror <addr> --propose # write it as an INERT proposed order plan on the O screen
|
|
53
|
+
$ dexterm follow mirror <addr> --json # machine-readable preview
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
A refused mirror prints every failed check and exits non-zero. `--propose` writes a plan with status `proposed` and no mandate. The command has no arm, sign or execute path, so the plan can only be armed in the app through the keypress or Phantom gate. A replay test drives a followed wallet's buy through `--propose` and checks that the plan exists, is not armed and that no execute path was reached. This is the copy-trade mirror ticket of the 0.1.3 release (its first copy-trading step in the release notes): **a proposal only. Nothing arms or fires on its own.**
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-copy-trading-stage-3-capped-auto-mirror-default-off-less
|
|
3
|
+
title: Copy trading (staged, personal, paper by default) › Stage 3: capped auto-mirror (default off, less safe)
|
|
4
|
+
kind: docs
|
|
5
|
+
page: copy-trading
|
|
6
|
+
page_title: Copy trading (staged, personal, paper by default)
|
|
7
|
+
heading: Stage 3: capped auto-mirror (default off, less safe)
|
|
8
|
+
anchor: stage-3-capped-auto-mirror-default-off-less-safe
|
|
9
|
+
url: https://dexterm.xyz/docs/copy-trading#stage-3-capped-auto-mirror-default-off-less-safe
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- copy-trading
|
|
13
|
+
- stage
|
|
14
|
+
- capped
|
|
15
|
+
- auto-mirror
|
|
16
|
+
- default
|
|
17
|
+
- off
|
|
18
|
+
- less
|
|
19
|
+
- safe
|
|
20
|
+
- copy
|
|
21
|
+
- trading
|
|
22
|
+
- staged
|
|
23
|
+
- personal
|
|
24
|
+
- paper
|
|
25
|
+
confidence: high
|
|
26
|
+
owner: maintainers
|
|
27
|
+
origin: docs-generated
|
|
28
|
+
reviewed_by: generated@2026-10-16
|
|
29
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
30
|
+
sources:
|
|
31
|
+
- site/content/docs/copy-trading.md
|
|
32
|
+
date: 2026-10-16
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
`A` on a followed wallet raises the **AUTO-MIRROR** prompt. Turning it on is a held physical keypress, and it is refused unless the plan engine's own "this is less safe" popup (`G` on the `O` screen, keypress-only, 24 h expiry) is active. That one gesture drafts and arms a **copy mandate** in the plan engine, the signer trust domain: buy-only, `maxTier: hands-free`, with exactly the policy's caps, clamped to the engine's hard ceilings.
|
|
36
|
+
|
|
37
|
+
Every later buy by that wallet then runs the Stage 2 checks and, if they pass, is proposed and armed automatically with the **weakest confirmation tier**. The engine therefore sizes it at **¼ of the per-trade cap** (the same rule a spoken confirmation gets) and re-checks the per-trade, per-coin, total and daily-loss caps, the allow-list and the panic state at arming and on every fill. On top, the policy keeps a per-wallet **daily cap** (the mandate's total), **max open mirrors**, a **cooldown** between mirrors, a **size factor** against the leader, and an **auto-disarm streak**: that many refused or failed mirrors in a row turn it off.
|
|
38
|
+
|
|
39
|
+
What turns it off, always without a gesture: `A` again; the `!` panic key or `dexterm wallet panic`; restoring the keypress gate; the copy mandate expiring or being revoked; the refusal streak; unfollowing the wallet; and **every restart**, after which a copy mandate the engine recovered as armed is revoked on load. Caps can only be changed while it is off, from the shell:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
dexterm follow auto <addr> --per-trade 20 --daily 100 --max-open 3 --cooldown 60 --k 1 --disarm 3
|
|
43
|
+
dexterm follow auto # list policies and their state
|
|
44
|
+
dexterm follow auto <addr> --off
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
Ceilings: $100 per trade, $500 per day, 10 open, a 10 s minimum cooldown, k ≤ 2. Every policy change, enable, disable, proposal, arm and refusal is appended to a hash-chained journal at `~/.dexterm/copy.journal`, next to the plans journal.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-copy-trading-what-is-proven-what-is-not
|
|
3
|
+
title: Copy trading (staged, personal, paper by default) › What is proven, what is not
|
|
4
|
+
kind: docs
|
|
5
|
+
page: copy-trading
|
|
6
|
+
page_title: Copy trading (staged, personal, paper by default)
|
|
7
|
+
heading: What is proven, what is not
|
|
8
|
+
anchor: what-is-proven-what-is-not
|
|
9
|
+
url: https://dexterm.xyz/docs/copy-trading#what-is-proven-what-is-not
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- copy-trading
|
|
13
|
+
- proven
|
|
14
|
+
- copy
|
|
15
|
+
- trading
|
|
16
|
+
- staged
|
|
17
|
+
- personal
|
|
18
|
+
- paper
|
|
19
|
+
- default
|
|
20
|
+
confidence: high
|
|
21
|
+
owner: maintainers
|
|
22
|
+
origin: docs-generated
|
|
23
|
+
reviewed_by: generated@2026-10-16
|
|
24
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
25
|
+
sources:
|
|
26
|
+
- site/content/docs/copy-trading.md
|
|
27
|
+
date: 2026-10-16
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
Proven on fixtures and a fake clock: the decoder on synthetic histories and the three spike recordings; the tracker's backfill-then-alert replay; every mirror refusal and the size rule; the proposal's inertness; the auto path end to end on the paper executor (enable, ¼-size arming, fill, cooldown, max-open, daily cap, the engine's own refusal of a hand-armed extra plan); the kill paths; the restart rule; and a compromised-model suite in which spoken, agent and forged gestures, a spoofed alert, a widened policy and a plan the service did not create all fail to enable, widen or auto-arm anything.
|
|
31
|
+
|
|
32
|
+
Not built or not proven: **mirror-sell** (you close every mirror yourself, so auto-disarm counts refusals and failed fills, not realised losses); an early-entry score with the "reached 3×" filter; a live run against real Helius history on this machine; and any mirror on devnet or mainnet.
|
|
33
|
+
|
|
34
|
+
**Confirmation provenance:** the engine rejects fabricated, copied, modified, cross-engine and reused proof objects. Copy automation receives a private operation scoped to its physically armed mandate; it can create new copy buys, never adopt an existing voice or agent proposal. Automation proofs stay inside the engine. The engine re-checks the less-safe opt-in, mandate lifetime, panic and existing caps. These are in-process checks: the trusted terminal captures physical input; this is not isolation against arbitrary code execution inside that trusted process.
|
|
35
|
+
|
|
36
|
+
Legal posture (flags for counsel, not advice): self-directed only, no custody, no third parties, no fees, no curated leaders, no inferred identities. See legal (https://dexterm.xyz/legal/).
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-copy-trading
|
|
3
|
+
title: Copy trading (staged, personal, paper by default)
|
|
4
|
+
kind: docs
|
|
5
|
+
page: copy-trading
|
|
6
|
+
page_title: Copy trading (staged, personal, paper by default)
|
|
7
|
+
url: https://dexterm.xyz/docs/copy-trading
|
|
8
|
+
tags:
|
|
9
|
+
- docs
|
|
10
|
+
- copy-trading
|
|
11
|
+
- copy
|
|
12
|
+
- trading
|
|
13
|
+
- staged
|
|
14
|
+
- personal
|
|
15
|
+
- paper
|
|
16
|
+
- default
|
|
17
|
+
confidence: high
|
|
18
|
+
owner: maintainers
|
|
19
|
+
origin: docs-generated
|
|
20
|
+
reviewed_by: generated@2026-10-16
|
|
21
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
22
|
+
sources:
|
|
23
|
+
- site/content/docs/copy-trading.md
|
|
24
|
+
date: 2026-10-16
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
Follow a wallet and see its decoded swaps and PnL; turn its buys into a mirror PROPOSAL with one key; or let a capped, keypress-armed auto-mirror propose and arm them for you. Your wallet, your caps, your keys.
|
|
28
|
+
|
|
29
|
+
Copy trading in dexterm is a **personal tool for your own wallet**. You pick the wallets, you set the caps, your own keys sign (or the paper wallet simulates). dexterm never holds funds, never copies for anyone else, never offers pooled or hosted copying, never publishes a leader list, and takes no fee on a mirrored trade. The whole feature is labelled **in progress**: it is on main and tested on fixtures and the task-1286 spike recordings, but no mirror has moved real funds, and the auto tier fires through the paper executor unless the plans fire path is switched to the devnet fast wallet (see the live fire path (https://dexterm.xyz/docs/paper-trading#the-live-fire-path-devnet-the-fast-wallet)).
|
|
30
|
+
|
|
31
|
+
It is built in three stages, each behind the previous one's gate.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-cache
|
|
3
|
+
title: Data sources and rate limits › Cache
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: Cache
|
|
8
|
+
anchor: cache
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#cache
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- cache
|
|
14
|
+
- data
|
|
15
|
+
- sources
|
|
16
|
+
- rate
|
|
17
|
+
- limits
|
|
18
|
+
confidence: high
|
|
19
|
+
owner: maintainers
|
|
20
|
+
origin: docs-generated
|
|
21
|
+
reviewed_by: generated@2026-10-16
|
|
22
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
23
|
+
sources:
|
|
24
|
+
- site/content/docs/data-sources.md
|
|
25
|
+
date: 2026-10-16
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
A persistent SQLite cache (`node:sqlite`, one table, namespaced) makes a restart or a reopen instant and cheap. The analyst's MCP server reads the same file, so a warm dossier needs no network.
|
|
29
|
+
|
|
30
|
+
(generated from the app: see https://dexterm.xyz/docs/data-sources#cache; app-help has the exact keys and commands)
|
|
31
|
+
|
|
32
|
+
The last rows shown per preset are also snapshotted so a launch paints instantly, marked `cached Nm old · refreshing`.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-health-registry
|
|
3
|
+
title: Data sources and rate limits › Health registry
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: Health registry
|
|
8
|
+
anchor: health-registry
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#health-registry
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- health
|
|
14
|
+
- registry
|
|
15
|
+
- data
|
|
16
|
+
- sources
|
|
17
|
+
- rate
|
|
18
|
+
- limits
|
|
19
|
+
confidence: high
|
|
20
|
+
owner: maintainers
|
|
21
|
+
origin: docs-generated
|
|
22
|
+
reviewed_by: generated@2026-10-16
|
|
23
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
24
|
+
sources:
|
|
25
|
+
- site/content/docs/data-sources.md
|
|
26
|
+
date: 2026-10-16
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
Every source goes through a health registry: three consecutive failures or two 429s in a minute mark it degraded for a backoff window (30 s, doubling to 10 min). A panel whose source is down shows `unavailable: <reason>` or `needs key`, the header turns `◐ degraded: <source>`, and the analyst's tool list is built from the healthy sources each session. A screen with no data says why instead of hanging: `connecting to the live feed…`, `offline — can't reach the data feed`, `rate-limited — backing off`. Press `r` to retry. Nothing fabricates a number.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-rate-limits-and-pacing
|
|
3
|
+
title: Data sources and rate limits › Rate limits and pacing
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: Rate limits and pacing
|
|
8
|
+
anchor: rate-limits-and-pacing
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- rate
|
|
14
|
+
- limits
|
|
15
|
+
- pacing
|
|
16
|
+
- data
|
|
17
|
+
- sources
|
|
18
|
+
confidence: high
|
|
19
|
+
owner: maintainers
|
|
20
|
+
origin: docs-generated
|
|
21
|
+
reviewed_by: generated@2026-10-16
|
|
22
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
23
|
+
sources:
|
|
24
|
+
- site/content/docs/data-sources.md
|
|
25
|
+
date: 2026-10-16
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
One token bucket per host with the documented limit as the ceiling and a safety factor of (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands); over-budget requests queue and the column header shows `⌛` instead of blocking. Identical in-flight requests share one promise. The chart the user is waiting on takes a high-priority slot that background work (tape, prefetch, refresh) can never consume.
|
|
29
|
+
|
|
30
|
+
(generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands)
|
|
31
|
+
|
|
32
|
+
Refresh cadence, keyless: screener table (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) s (one DexScreener batch per 30 rows), token screen (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) s, watchlist (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) s, positions (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) s, new pairs push plus a 15 s Jupiter poll and a 30 s RugCheck poll, PAPER quote (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) s while editing. The fast lane adds zero HTTP requests: it is push, capped at (generated from the app: see https://dexterm.xyz/docs/data-sources#rate-limits-and-pacing; app-help has the exact keys and commands) simultaneous subscriptions (the open token, your watchlist, a few fresh launches); tokens past the cap stay on the polling lane, never dropped.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-request-budget-meter
|
|
3
|
+
title: Data sources and rate limits › Request budget meter
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: Request budget meter
|
|
8
|
+
anchor: request-budget-meter
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#request-budget-meter
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- request
|
|
14
|
+
- budget
|
|
15
|
+
- meter
|
|
16
|
+
- data
|
|
17
|
+
- sources
|
|
18
|
+
- rate
|
|
19
|
+
- limits
|
|
20
|
+
confidence: high
|
|
21
|
+
owner: maintainers
|
|
22
|
+
origin: docs-generated
|
|
23
|
+
reviewed_by: generated@2026-10-16
|
|
24
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
25
|
+
sources:
|
|
26
|
+
- site/content/docs/data-sources.md
|
|
27
|
+
date: 2026-10-16
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
Every request is counted per source for the session and for the day (persisted), so usage is visible with `--verbose` and in the header. Optional soft daily caps can bound a source.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-sources
|
|
3
|
+
title: Data sources and rate limits › Sources
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: Sources
|
|
8
|
+
anchor: sources
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#sources
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- sources
|
|
14
|
+
- data
|
|
15
|
+
- rate
|
|
16
|
+
- limits
|
|
17
|
+
confidence: high
|
|
18
|
+
owner: maintainers
|
|
19
|
+
origin: docs-generated
|
|
20
|
+
reviewed_by: generated@2026-10-16
|
|
21
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
22
|
+
sources:
|
|
23
|
+
- site/content/docs/data-sources.md
|
|
24
|
+
date: 2026-10-16
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
| data need | keyless source | free-key upgrade | without it |
|
|
28
|
+
|---|---|---|---|
|
|
29
|
+
| screener pool | DexScreener + Jupiter Tokens v2 | Jupiter free key: 1 rps instead of 0.5 | fully keyless |
|
|
30
|
+
| token market | DexScreener + Jupiter | Jupiter free key: higher rate | fully keyless |
|
|
31
|
+
| candles and chart | GeckoTerminal | none | chart `unavailable` (rare) |
|
|
32
|
+
| trade tape and buy/sell flow | GeckoTerminal tape; DexScreener rolling windows for 5m to 24h | none | tape `unavailable` |
|
|
33
|
+
| mint and freeze authority | public Solana RPC `getAccountInfo` + Jupiter + GoPlus | any free RPC: faster, fewer 429s | Jupiter and GoPlus still answer |
|
|
34
|
+
| top holders | Jupiter aggregate: holder count + top-10 % | any free RPC key (Helius, Alchemy, QuickNode, Ankr): the ranked top-20 list with owners | count and concentration shown; the ranked list says "needs a free RPC key" |
|
|
35
|
+
| security checks | RugCheck + GoPlus | none | one may be `unavailable`, the other covers |
|
|
36
|
+
| new pairs | PumpPortal `subscribeNewToken` + `subscribeMigration`, Jupiter `recent` poll, RugCheck `new_tokens` | Helius: per-curve bonding % | rows from the poll; bonding is a create-time estimate |
|
|
37
|
+
| watchlist prices | DexScreener + Jupiter, persisted in SQLite | Jupiter free key: higher rate | fully keyless |
|
|
38
|
+
| fast-lane live price | public RPC WebSocket `accountSubscribe` on the pump.fun bonding curve, price computed on-chain | free Helius key: lower latency, higher limits (used first) | the polled price (POLL badge) |
|
|
39
|
+
| paper quotes | Jupiter `swap/v1/quote` (quote only; no build, no execute) | Jupiter free key: lower latency | fully keyless |
|
|
40
|
+
| product vetting | the token's own site, RDAP, the GitHub API | none | a claim stays unverifiable |
|
|
41
|
+
| trending board | Jupiter trending and organic-score lists, GeckoTerminal trending pools, DexScreener top boosts (counted against a coin), CoinGecko trending (macro) | none | a failing venue degrades only itself |
|
|
42
|
+
| news | publishers' official RSS: CoinDesk, Cointelegraph, The Block, Decrypt | none | the board works without it |
|
|
43
|
+
| social posts (X) | none keyless: dexterm does not scrape | Login with X (https://dexterm.xyz/docs/login-with-x): your own X app and login read posts about the open coin and from your KOL lists (user-context API, your limits, your bill; the Free tier allows identity only) | the live SOCIAL panel shows on-chain rows and news, and the band says `x-stream ○ logged out` |
|
|
44
|
+
| dev history, snipers, bundles | none keyless (wallet history is not public without an indexer) | Helius | columns dash + `needs Helius`; with a key, a paused or failed read names itself (`Helius paused · r`, `Helius cap today`, `history failed · r`) |
|
|
45
|
+
| holder classes (POOL / CURVE / VAULT / LOCK / CEX / BURN / DEV / LINKED / UNLABELLED) | the owner lookup over any RPC (`getMultipleAccounts`), part of the wallet-intel scan | same | DEV and LINKED need the Helius launch window; the rest work on any RPC that serves the ranked holder list |
|
|
46
|
+
|
|
47
|
+
The ranked holder list is the one real keyless gap: `getTokenLargestAccounts` is throttled or blocked on every keyless endpoint we probed, and Birdeye and Solscan need keys.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources-the-helius-credit-meter
|
|
3
|
+
title: Data sources and rate limits › The Helius credit meter
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
heading: The Helius credit meter
|
|
8
|
+
anchor: the-helius-credit-meter
|
|
9
|
+
url: https://dexterm.xyz/docs/data-sources#the-helius-credit-meter
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- data-sources
|
|
13
|
+
- helius
|
|
14
|
+
- credit
|
|
15
|
+
- meter
|
|
16
|
+
- data
|
|
17
|
+
- sources
|
|
18
|
+
- rate
|
|
19
|
+
- limits
|
|
20
|
+
confidence: high
|
|
21
|
+
owner: maintainers
|
|
22
|
+
origin: docs-generated
|
|
23
|
+
reviewed_by: generated@2026-10-16
|
|
24
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
25
|
+
sources:
|
|
26
|
+
- site/content/docs/data-sources.md
|
|
27
|
+
date: 2026-10-16
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
Helius Free is 1M credits a month, budgeted as (generated from the app: see https://dexterm.xyz/docs/data-sources#the-helius-credit-meter; app-help has the exact keys and commands) a day. Each request is charged (1 credit for standard RPC methods, 10 for DAS-class); the header shows `◐ helius credits N%` from 50% of the day, and at 90%, or at the per-run cap (`--max-credits`, default 5000), Helius switches off for the run and the keyless sources take over. Day totals persist in the SQLite file, so a restart keeps counting.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-data-sources
|
|
3
|
+
title: Data sources and rate limits
|
|
4
|
+
kind: docs
|
|
5
|
+
page: data-sources
|
|
6
|
+
page_title: Data sources and rate limits
|
|
7
|
+
url: https://dexterm.xyz/docs/data-sources
|
|
8
|
+
tags:
|
|
9
|
+
- docs
|
|
10
|
+
- data-sources
|
|
11
|
+
- data
|
|
12
|
+
- sources
|
|
13
|
+
- rate
|
|
14
|
+
- limits
|
|
15
|
+
confidence: high
|
|
16
|
+
owner: maintainers
|
|
17
|
+
origin: docs-generated
|
|
18
|
+
reviewed_by: generated@2026-10-16
|
|
19
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
20
|
+
sources:
|
|
21
|
+
- site/content/docs/data-sources.md
|
|
22
|
+
date: 2026-10-16
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
Every source the app reads, what it takes from each, the keyless limits, and what a free key adds.
|
|
26
|
+
|
|
27
|
+
dexterm must stay usable forever with **no paid data and no shipped keys**: Node, a terminal and your own Claude login are enough. Every data need has a keyless path on a public API and degrades honestly; a free key you make yourself only raises speed or limits or unlocks depth, it never gates a feature. Because every source meters by **your** IP or key, each user has their own quota and there is no shared server in the middle.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-dexterm-doctor
|
|
3
|
+
title: Getting started › dexterm doctor
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: dexterm doctor
|
|
8
|
+
anchor: dexterm-doctor
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#dexterm-doctor
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- dexterm
|
|
14
|
+
- doctor
|
|
15
|
+
- getting
|
|
16
|
+
- started
|
|
17
|
+
confidence: high
|
|
18
|
+
owner: maintainers
|
|
19
|
+
origin: docs-generated
|
|
20
|
+
reviewed_by: generated@2026-10-16
|
|
21
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
22
|
+
sources:
|
|
23
|
+
- site/content/docs/getting-started.md
|
|
24
|
+
date: 2026-10-16
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
Run `dexterm doctor` before anything else. It is non-interactive, never touches your keys, and prints one line per check with the exact fix for anything that is not a pass. Exit code 0 means the app will run (warnings are optional); 1 means something must be fixed.
|
|
28
|
+
|
|
29
|
+
```console doctor output (this machine, offline probes skipped)
|
|
30
|
+
(generated from the app: see https://dexterm.xyz/docs/getting-started#dexterm-doctor; app-help has the exact keys and commands)
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
The checks, in order: (generated from the app: see https://dexterm.xyz/docs/getting-started#dexterm-doctor; app-help has the exact keys and commands). The data-source line probes (generated from the app: see https://dexterm.xyz/docs/getting-started#dexterm-doctor; app-help has the exact keys and commands); PumpPortal is a soft dependency (new pairs only).
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-first-run
|
|
3
|
+
title: Getting started › First run
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: First run
|
|
8
|
+
anchor: first-run
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#first-run
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- first
|
|
14
|
+
- run
|
|
15
|
+
- getting
|
|
16
|
+
- started
|
|
17
|
+
confidence: high
|
|
18
|
+
owner: maintainers
|
|
19
|
+
origin: docs-generated
|
|
20
|
+
reviewed_by: generated@2026-10-16
|
|
21
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
22
|
+
sources:
|
|
23
|
+
- site/content/docs/getting-started.md
|
|
24
|
+
date: 2026-10-16
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
The first launch shows the full glitch boot and then a one-screen welcome card: what dexterm is, the keys that get you around, and the safety stance (non-custodial, your keys never enter dexterm, trading is PAPER by default, not financial advice). Press any key to enter the live screener. Later launches boot in about a second.
|
|
28
|
+
|
|
29
|
+
- `?` on any screen shows every key for that screen.
|
|
30
|
+
- `q` quits. The terminal is always restored, even after a crash or a signal.
|
|
31
|
+
- `1`–`4` switch screens, `j`/`k` move, `⏎` opens a token, `esc` goes back.
|
|
32
|
+
- `a` asks the analyst about what you are looking at. This is the one explicit, paid run; opening a token with `⏎` never starts one.
|
|
33
|
+
|
|
34
|
+
The screener paints within a second on a cold start: a cached snapshot of the last rows (marked how old it is), or skeleton rows while the first DexScreener list lands. Jupiter fields fill in behind it.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-install
|
|
3
|
+
title: Getting started › Install
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: Install
|
|
8
|
+
anchor: install
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#install
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- install
|
|
14
|
+
- getting
|
|
15
|
+
- started
|
|
16
|
+
confidence: high
|
|
17
|
+
owner: maintainers
|
|
18
|
+
origin: docs-generated
|
|
19
|
+
reviewed_by: generated@2026-10-16
|
|
20
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
21
|
+
sources:
|
|
22
|
+
- site/content/docs/getting-started.md
|
|
23
|
+
date: 2026-10-16
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
```sh install with npm
|
|
27
|
+
$ npm i -g dexterm-cli
|
|
28
|
+
$ dexterm doctor
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The package is named `dexterm-cli` because npm refuses the name `dexterm` as too similar to `xterm`. The command it installs is `dexterm`. The package ships compiled JavaScript, so it needs no build step. Every GitHub release carries a build-provenance attestation and `SHA256SUMS` you can verify (see the trust page (https://dexterm.xyz/trust/)).
|
|
32
|
+
|
|
33
|
+
```sh install from the release
|
|
34
|
+
$ # download dexterm-0.1.3-src.tar.gz and SHA256SUMS from the releases page, then:
|
|
35
|
+
$ shasum -a 256 -c SHA256SUMS --ignore-missing
|
|
36
|
+
$ gh attestation verify dexterm-0.1.3-src.tar.gz --repo dexterm-xyz/dexterm
|
|
37
|
+
$ tar -xzf dexterm-0.1.3-src.tar.gz && cd dexterm-0.1.3
|
|
38
|
+
$ ./install.sh
|
|
39
|
+
$ dexterm doctor
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
The releases page is github.com/dexterm-xyz/dexterm/releases (https://github.com/dexterm-xyz/dexterm/releases).
|
|
43
|
+
|
|
44
|
+
```sh install with Homebrew (macOS)
|
|
45
|
+
$ brew tap dexterm-xyz/dexterm
|
|
46
|
+
$ brew trust dexterm-xyz/dexterm
|
|
47
|
+
$ brew install dexterm
|
|
48
|
+
$ dexterm doctor
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Homebrew 7 and newer load a third-party tap only after you trust it; without `brew trust`, `brew install dexterm` stops with "Refusing to load formula … from untrusted tap". Typing the full name, `brew install dexterm-xyz/dexterm/dexterm`, also works, because naming a formula in full trusts that one formula. The formula installs the same release tarball and runs it with Homebrew's Node. Homebrew no longer ships prebuilt packages for Intel Macs, so on Intel it builds Node and its toolchain from source, which takes a long time; the release installer above is much faster there.
|
|
52
|
+
|
|
53
|
+
The steps below are the same installer, run from a checkout.
|
|
54
|
+
|
|
55
|
+
```sh install from a checkout
|
|
56
|
+
$ cd dexterm/app
|
|
57
|
+
$ ./install.sh
|
|
58
|
+
$ dexterm doctor
|
|
59
|
+
$ dexterm
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
`install.sh` is user-level: no `sudo`, no edits to your shell profile. It checks for Node 22.18+, downloads an official build into your home directory only if none is found (verified against Node's published `SHASUMS256.txt`), links the app, builds the native chart window when `cargo` is present, and writes a `dexterm` launcher to `~/.local/bin`. If that directory is not on your PATH it prints the one line to add and does not add it for you.
|
|
63
|
+
|
|
64
|
+
Already have Node 22.18+? You can skip the installer. dexterm has no third-party runtime dependencies, so it runs straight from the source tree:
|
|
65
|
+
|
|
66
|
+
```sh run from source
|
|
67
|
+
$ npm run dexterm
|
|
68
|
+
$ node packages/cli/bin/dexterm.mjs doctor
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
`npm install` is optional and only pulls the dev tooling (TypeScript, `@types/node`).
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-next
|
|
3
|
+
title: Getting started › Next
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: Next
|
|
8
|
+
anchor: next
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#next
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- next
|
|
14
|
+
- getting
|
|
15
|
+
- started
|
|
16
|
+
confidence: high
|
|
17
|
+
owner: maintainers
|
|
18
|
+
origin: docs-generated
|
|
19
|
+
reviewed_by: generated@2026-10-16
|
|
20
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
21
|
+
sources:
|
|
22
|
+
- site/content/docs/getting-started.md
|
|
23
|
+
date: 2026-10-16
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
- Complete beginner guide (https://dexterm.xyz/docs/beginners) for a slower, no-jargon first run and recovery from common mistakes.
|
|
27
|
+
- Screens tour (https://dexterm.xyz/docs/screens) for what each screen shows.
|
|
28
|
+
- Keyboard reference (https://dexterm.xyz/docs/keyboard), generated from the app's keymap.
|
|
29
|
+
- Configuration (https://dexterm.xyz/docs/configuration) for the free RPC key and the files on disk.
|
|
30
|
+
- `dexterm help <topic>` for the app's own how-to on any key or command, offline. The analyst reads the same help (https://dexterm.xyz/docs/analyst#it-knows-the-app).
|
|
31
|
+
- Bring your own agent (https://dexterm.xyz/docs/agents) to connect Claude Code, Codex or a custom bot, and the spectator view (https://dexterm.xyz/docs/spectator) to watch it work live ("watch the agent cook").
|
|
32
|
+
- Troubleshooting (https://dexterm.xyz/docs/troubleshooting) when a line in doctor is not green.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-requirements
|
|
3
|
+
title: Getting started › Requirements
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: Requirements
|
|
8
|
+
anchor: requirements
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#requirements
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- requirements
|
|
14
|
+
- getting
|
|
15
|
+
- started
|
|
16
|
+
confidence: high
|
|
17
|
+
owner: maintainers
|
|
18
|
+
origin: docs-generated
|
|
19
|
+
reviewed_by: generated@2026-10-16
|
|
20
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
21
|
+
sources:
|
|
22
|
+
- site/content/docs/getting-started.md
|
|
23
|
+
date: 2026-10-16
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
| need | why | notes |
|
|
27
|
+
|---|---|---|
|
|
28
|
+
| Node.js 22.18 or newer | dexterm runs its TypeScript sources directly; no build step | `node -v` to check. The installer can fetch a verified Node for you. |
|
|
29
|
+
| a terminal with 24-bit colour | the cyberspace look | iTerm2, WezTerm, Ghostty, Kitty, Alacritty, Windows Terminal. 256-colour and monochrome terminals still work, flattened. |
|
|
30
|
+
| an internet connection | all data is public and keyless | nothing goes through a dexterm server; see data sources (https://dexterm.xyz/docs/data-sources). |
|
|
31
|
+
| optional: Claude Code logged in | only the analyst needs it | `claude` on your PATH, logged in with your own account. Everything else works without it. |
|
|
32
|
+
| optional: a free RPC key | the ranked top-20 holder list and faster chain reads | Helius, Alchemy, QuickNode or Ankr free tier; see configuration (https://dexterm.xyz/docs/configuration). |
|
|
33
|
+
| optional: Rust (`cargo`) | the native docked chart window | without it the chart popup opens in your browser; see popup chart (https://dexterm.xyz/docs/popup-chart). |
|
|
34
|
+
|
|
35
|
+
> note: dexterm 0.1.3 is out (2026-10-16), open source under AGPL-3.0-only at github.com/dexterm-xyz/dexterm (https://github.com/dexterm-xyz/dexterm). It is early: trading is experimental and has known bugs. The release ships checksums, a build-provenance attestation and an SBOM, and its VirusTotal result (including flags we explain) is on the trust page (https://dexterm.xyz/trust/). It is also on npm as `dexterm-cli` (https://www.npmjs.com/package/dexterm-cli); the command it installs is still `dexterm`.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: docs-getting-started-running-the-tests
|
|
3
|
+
title: Getting started › Install › Running the tests
|
|
4
|
+
kind: docs
|
|
5
|
+
page: getting-started
|
|
6
|
+
page_title: Getting started
|
|
7
|
+
heading: Running the tests
|
|
8
|
+
anchor: running-the-tests
|
|
9
|
+
url: https://dexterm.xyz/docs/getting-started#running-the-tests
|
|
10
|
+
tags:
|
|
11
|
+
- docs
|
|
12
|
+
- getting-started
|
|
13
|
+
- running
|
|
14
|
+
- tests
|
|
15
|
+
- install
|
|
16
|
+
- getting
|
|
17
|
+
- started
|
|
18
|
+
confidence: high
|
|
19
|
+
owner: maintainers
|
|
20
|
+
origin: docs-generated
|
|
21
|
+
reviewed_by: generated@2026-10-16
|
|
22
|
+
generated_from: dexterm/site content/docs (task-1420)
|
|
23
|
+
sources:
|
|
24
|
+
- site/content/docs/getting-started.md
|
|
25
|
+
date: 2026-10-16
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
From a source checkout, `npm install` and then `npm test` runs the typecheck and three test lanes, in order (from 0.1.4, not in a release yet):
|
|
29
|
+
|
|
30
|
+
- **parallel**: every `packages/*/test/*.test.ts` file at once, one process each.
|
|
31
|
+
- **serial** (`npm run test:serial`, `packages/*/test/serial/`): the tests that drive a real terminal through a pty, run the real binary, or assert a wall-clock bound (the under-a-second quit, the 50 ms filter fuzz). They run one file at a time after the parallel lane, so they never share the CPU with it.
|
|
32
|
+
- **perf** (`npm run test:perf`, `packages/*/test/perf/`): the render budget, p95 under 16 ms per frame. It is asserted on the main thread's CPU time every run, and on wall-clock time whenever no other process held the core during the measurement.
|
|
33
|
+
|
|
34
|
+
A serial or perf test that fails gets one automatic retry, and the retry is never hidden: the run prints the first failure in full and ends with a list of every test that needed it. A test that fails twice fails the run. Set `DEXTERM_TEST_NO_RETRY=1` to turn the retry off. The pty tests open a throwaway cache database, never the one in your data directory.
|