TL;DR : ttc.box allows trading on any CEX | DEX Perp instruments with AI Agents,
Host ClaudeCode on RailWay, download CLI, and begin agentic trading.
The only solution that doesn't cost you an arm and leg. Use your existing Claude Pro or Max plan.
repo : https://github.com/Ntelikatos/claude-code-ssh
Click the button above, or manually create a project on railway.com and deploy from this GitHub repo.
In Railway dashboard, go to your service Variables and add:
Variable | Value | |
|---|---|---|
SSH_PUBLIC_KEY | Your public key (see below for how to get it) | |
From desktop — copy your existing key:
cat ~/.ssh/id_ed25519.pubFrom mobile (Termius) — generate a new key:
Open Termius > Keychain > Keys > + > Generate
Select Ed25519, give it a name, save
Tap the key > Export public key > copy the text
Using multiple devices? Paste all public keys into SSH_PUBLIC_KEY, one per line:
ssh-ed25519 AAAA...laptop-key... you@laptop
ssh-ed25519 AAAA...phone-key... mobileGo to your service Settings > Networking
Under TCP Proxy, click Enable on port 22
Railway assigns you a domain and port, e.g. shuttle.proxy.rlwy.net:15140
Save these — you need them to connect.
In Railway dashboard, right-click on your project canvas > "Add Volume"
Attach it to your service
Set the mount path to /data
Redeploy if prompted
This persists your projects, SSH host keys, tmux sessions, and Claude Code auth across redeployments. Without it, all data is lost on restart.
ssh claude@shuttle.proxy.rlwy.net -p 15140 -i ~/.ssh/id_ed25519
ssh claude@shuttle.proxy.rlwy.net -p 20 -i ~/.ssh/id_ed25519 # or try thisReplace the domain and port with your values from Step 3.
Claude Account (Pro/Max subscription) — recommended

Now you should be logged into railway:
A. proceed with claude login : copy paste the url link into your browser.
B. Login to your email, check recent, find email from claude.ai , click links ,
C. click verify link, and then
D. copy the code:link back into the terminal to complete authentication.
tmux new -s dev
claudeDetach anytime with `Ctrl+B` then `D`. Reattach later with `tmux attach -t dev`.Just copy paste the markdown text directly into the terminal and Claude will set it up for you.
clone this repo for me : https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api.git
crtl+c , crtl+c # stop claude
ls # you should see the rust-cli-ttc-api folder
cd rust-cli-ttc-api # now you are within the correct directory
tmux new -s dev # creates new session
claude # opens claude againclaude , please clone the .env.sample to .env # now ready
/skill-onboarding # this will automatically register to ttc.boxNow it's time to setup the .env exchange api keys. I would recommend pasting in one exchange at a time.
please save these api keys into the .env file for me.
ASTERDEX_API_KEY=0x45F168cB719e078575E44CeaBeD1c6B124238226
ASTERDEX_API_SECRET=0x0315ef90fdd7a971903eef56d4da7b8508037654b9c87f5d90b3c2603917bb2a
ASTERDEX_API_PASSPHRASE=9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM
then run the balance, positions, and orders command to verify the api keys are correct. Getting api keys on CEX is rather easy. On some Perp DEXs it more difficult, therefore if you need the api keys, go to ttc.box/login , you will be redirected to the trading dashboard page. From there, you can click on the "Exch Keys" to generate the api keys and click "Export" to save them to the clipboard. The clipboard data is unique for each exchange, therefore visit the docs page to understand what values match the
1. Api Key
2. Api Secret
3. Passphrase
Begin by running a pre-configured SKILL.md via /skill-market-overview or any skill to give claude market context. Claude is smart, and he will often ask you things like
Top pick: ADAUSDT long — the only STRONG setup, both timeframes HIGH-aligned. It's status from the 15:36 patrol with slightly lower R/R but still clean.
Want me to run skill-shark on ADAUSDT to stage the bracket?

Six skills in the skill-trading stack lean on the TTC Scanner, each in their own flavor of obsessive.
skill-shark is the one that won't shut up about it — the scanner is its entire personality, hunting high-probability entries with defined risk and refusing to place an order unless R/R clears 2.0.
skill-signal-patrol takes the polite, clipboard-wielding approach, walking down a fixed watchlist and politely asking the scanner for a verdict on each symbol at 1h and 4h.
skill-momentum is the chaotic cousin: it first finds whatever is violently breaking out, then shoves the scanner in its face to confirm the move is tradeable and not just a candle having a bad day.
skill-market-overview uses it as a morning espresso — quick BTC and ETH scans on 4h and 1h to read the room before anything real happens.
skill-loop-trading name-drops the scanner as a respectable trigger for DCA loops, the way a sommelier gestures toward a wine list. And skill-trading itself is the manual — the one that documents market scanner so the other five can keep pretending they invented it.
skill-twap is a simple position builder on autopilot that slices your budget into an execution plan to handle in/outs of positions over any timeframe suitable for the analysis.

clone the repo: https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api
Ask claude to make you a profitable strategy using the existing SKILL.md as a template
Activate the new skill via /skill-name and edit the context as needed
free -m # what does Railway actually give us?
cat /sys/fs/cgroup/memory.max Delete old claude versions to free up disk space by running the following within the terminal
# list all the different claude versions that downloaded
which claude
readlink -f $(which claude)
ls -la ~/.local/share/claude/versions/ # then remove the oldest
rm -rf ~/.local/share/claude/versions/2.1.112
rm -rf ~/.local/share/claude/versions/2.1.113# remove auto updates
echo '{"autoUpdates": false}' > ~/.claude/settings.json
echo 'export DISABLE_AUTOUPDATER=1' >> /home/claude/.bashrc
# Recommended next steps (run yourself with !):
df -h
du -sh /data/home/.claude/* | sort -h
rm /data/home/.claude/backups/.claude.json.backup.*
rm /data/home/.claude/shell-snapshots/*
# The disk is 100% full. Bash commands are blocked because Claude Code can't create its session directory. Let me identify the biggest
du -sh /data/home/.[^.]* /data/home/* 2>/dev/null | sort -h | tail -20
rm -rf /data/home/.cache/*Thanks for reading, now go touch some grass.
website: https://ttc.box
X: https://x.com/realtradingtool (founder)

