# ClaudeCode: The Ultimate Agentic Trader 

*Railway, docker template , CLI Tooling ,  to Trade everything, anywhere!*

By [TetracOfficial](https://paragraph.com/@tetrac) · 2026-04-20

---

TL;DR : [ttc.box](http://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](https://github.com/Ntelikatos/claude-code-ssh)

### **Step 1: Deploy the Template**

  
[

![Deploy on Railway](https://storage.googleapis.com/papyrus_images/5505c4ab70f4b80ad6e37b35e8ad26b807cfcf3670c8fb75f351d7af50f9a331.svg)

](https://railway.com/deploy/claude-code-mobile?referralCode=fhlcDU&utm_medium=integration&utm_source=template)

Click the button above, or manually create a project on [railway.com](https://railway.com?referralCode=CjA6UA) 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:

1.  Open Termius > **Keychain** > **Keys** > **+** > **Generate**
    
2.  Select **Ed25519**, give it a name, save
    
3.  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**

1.  Go to your service **Settings** > **Networking**
    
2.  Under **TCP Proxy**, click **Enable** on port 22
    
3.  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**

1.  In Railway dashboard, right-click on your project canvas > **"Add Volume"**
    
2.  Attach it to your service
    
3.  Set the **mount path** to /data
    
4.  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

![](https://storage.googleapis.com/papyrus_images/49b4d56b9f00416e5454972bc039b57a1d38886f3acd77ffa0749cc8b74e2b97.png)

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](http://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](https://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?

![](https://storage.googleapis.com/papyrus_images/906e328dcab3c25120ba02a5a8d85f081ec85a7b5be0deb7713cd958068d3a3f.png)

dashboard within [railway.com](https://railway.com?referralCode=CjA6UA)

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.

![](https://storage.googleapis.com/papyrus_images/a60827a48648586f55b4ccb3f848dd061f839f0a235e0875f3529bea90e565ec.png)

  

Make your own SKILL
-------------------

1.  clone the repo: [https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api](https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api)
    
2.  Ask claude to make you a profitable strategy using the existing [SKILL.md](http://SKILL.md) as a template
    
3.  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](https://gitlab.com/tradingtoolcrypto/rust-cli-ttc-api)
    
*   website: [**https://ttc.box**](https://ttc.box)
    
*   X: [**https://x.com/realtradingtool**](https://x.com/realtradingtool) **(founder)**
    
*   TG: [**https://t.me/tetracOfficial**](https://t.me/tetracOfficial)

---

*Originally published on [TetracOfficial](https://paragraph.com/@tetrac/claudecode-the-ultimate-agentic-trader)*
