# ClaudeCode: The Ultimate Agentic Trader > Railway, docker template , CLI Tooling , to Trade everything, anywhere! **Published by:** [TetracOfficial](https://paragraph.com/@tetrac/) **Published on:** 2026-04-20 **URL:** https://paragraph.com/@tetrac/claudecode-the-ultimate-agentic-trader ## Content 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. Deploy to Railway repo : https://github.com/Ntelikatos/claude-code-ssh Step 1: Deploy the Template Click the button above, or manually create a project on railway.com and deploy from this GitHub repo. Step 2: Set Your SSH Public Key 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.pub From 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... mobile Step 3: Enable TCP Proxy Go 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. Step 4: Create and Attach a Volume 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. Step 5: Connect 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 this Replace the domain and port with your values from Step 3. Step 6: Authenticate Claude Code 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. Step 7: Start Claude tmux new -s dev claude Detach anytime with `Ctrl+B` then `D`. Reattach later with `tmux attach -t dev`. Agent Trading Step 1: 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 Step 2: 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 again claude , please clone the .env.sample to .env # now ready /skill-onboarding # this will automatically register to ttc.box Step 3: Now 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 Step 4: 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? dashboard within railway.com Verdict 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. Make your own SKILL 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 Railway Diagnostics Guide 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/* Until next time Thanks for reading, now go touch some grass. repo: https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api website: https://ttc.box X: https://x.com/realtradingtool (founder) TG: https://t.me/tetracOfficial ## Publication Information - [TetracOfficial](https://paragraph.com/@tetrac/): Publication homepage - [All Posts](https://paragraph.com/@tetrac/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@tetrac): Subscribe to updates