Documentation

Trae + SkillBoss

Trae IDE integration: ByteDance's AI-powered editor with 679+ endpoints, payments, hosting, databases, email, and cost optimization via SkillBoss

Why Trae + SkillBoss?

Trae is ByteDance's AI-powered IDE, designed for the next generation of AI-assisted development.

But here's the problem: Trae's built-in AI is limited to certain models, and you still need separate APIs for payments, databases, hosting, email, etc.

SkillBoss solves this:

  • Access 679+ AI models (Claude, GPT, Gemini, DeepSeek, Qwen) from within Trae
  • Add Stripe payments to your app without leaving Trae
  • Deploy to hosting, send emails, scrape data — all through Trae
  • One API key, one bill, infinite possibilities

Installation

Method 1: Skills Pack (Recommended)

Quick setup for AI agents: Tell your agent set up skillboss.co/skill.md to auto-configure everything.

Get Your SkillBoss API Key

  1. Sign up at skillboss.co
  2. Go to Console → API Keys
  3. Copy your API key: sk-YOUR_KEY

Download and Install Skills

# Download from console
curl -o skillboss-skills.zip https://skillboss.co/api/download-skills

# Extract and install
unzip skillboss-skills.zip
mkdir -p ~/.trae/skills/
cp -r skillboss-skills ~/.trae/skills/skillboss

Configure Trae

Open Trae Settings → AI Configuration:

{
  "ai": {
    "provider": "custom",
    "apiBase": "https://api.skillboss.co/v1",
    "apiKey": "sk-YOUR_KEY"
  }
}

Restart and Test

Restart Trae and ask: "Use SkillBoss to list available models"


Method 2: Environment Variables

Add to your shell profile (~/.zshrc or ~/.bashrc):

export SKILLBOSS_API_KEY="sk-YOUR_KEY"
export OPENAI_API_BASE="https://api.skillboss.co/v1"
export OPENAI_API_KEY="sk-YOUR_KEY"

Reload shell:

source ~/.zshrc

Now Trae can use SkillBoss APIs in any project.


Method 3: Project-Level Configuration

Create .trae/config.json in your project root:

{
  "ai": {
    "provider": "openai-compatible",
    "baseUrl": "https://api.skillboss.co/v1",
    "models": [
      {
        "name": "claude-sonnet-4-20250514",
        "displayName": "Claude 4.5 Sonnet (SkillBoss)"
      },
      {
        "name": "gemini/gemini-2.5-flash",
        "displayName": "Gemini 2.5 Flash (Budget)"
      },
      {
        "name": "deepseek/deepseek-r1",
        "displayName": "DeepSeek R1 (Reasoning)"
      }
    ]
  },
  "skillboss": {
    "apiKey": "${SKILLBOSS_API_KEY}",
    "services": ["payments", "email", "hosting", "scraping"]
  }
}

Real-World Examples

Example 1: Full-Stack App with Payments

You: "Build a SaaS landing page with Stripe checkout"

Trae with SkillBoss:

// app/page.tsx - Trae generates this
'use client'
import { useState } from 'react'

export default function LandingPage() {
  const [email, setEmail] = useState('')
  const [loading, setLoading] = useState(false)

  async function handleCheckout(plan: 'starter' | 'pro') {
    setLoading(true)

    const response = await fetch('/api/checkout', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        email,
        plan,
        amount: plan === 'starter' ? 2900 : 9900
      })
    })

    const { url } = await response.json()
    window.location.href = url
  }

  return (
    <main className="min-h-screen bg-gradient-to-b from-gray-50 to-white">
      <div className="max-w-4xl mx-auto px-4 py-20">
        <h1 className="text-5xl font-bold text-center mb-6">
          Launch Your SaaS Today
        </h1>

        <div className="grid md:grid-cols-2 gap-8 mt-12">
          <div className="p-8 border rounded-2xl">
            <h3 className="text-2xl font-semibold">Starter</h3>
            <p className="text-4xl font-bold mt-4">$29/mo</p>
            <button
              onClick={() => handleCheckout('starter')}
              className="w-full mt-6 py-3 bg-blue-600 text-white rounded-lg"
            >
              Get Started
            </button>
          </div>

          <div className="p-8 border-2 border-blue-600 rounded-2xl">
            <h3 className="text-2xl font-semibold">Pro</h3>
            <p className="text-4xl font-bold mt-4">$99/mo</p>
            <button
              onClick={() => handleCheckout('pro')}
              className="w-full mt-6 py-3 bg-blue-600 text-white rounded-lg"
            >
              Go Pro
            </button>
          </div>
        </div>
      </div>
    </main>
  )
}
// app/api/checkout/route.ts - Trae generates this using SkillBoss Stripe
import { NextResponse } from 'next/server'

export async function POST(request: Request) {
  const { email, plan, amount } = await request.json()

  // Trae uses SkillBoss Stripe integration
  const response = await fetch('https://api.skillboss.co/v1/stripe/checkout', {
    method: 'POST',
    headers: {
      'Authorization': `Bearer ${process.env.SKILLBOSS_API_KEY}`,
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      amount,
      currency: 'usd',
      customer_email: email,
      metadata: { plan },
      success_url: `${process.env.NEXT_PUBLIC_URL}/success`,
      cancel_url: `${process.env.NEXT_PUBLIC_URL}/pricing`
    })
  })

  const { checkout_url } = await response.json()
  return NextResponse.json({ url: checkout_url })
}

Result: Complete payment flow in minutes.


Example 2: AI Content Generation Pipeline

You: "Generate 20 SEO blog posts with images"

Trae with SkillBoss:

from openai import OpenAI
import os
import json

# Trae uses SkillBoss for cost-effective generation
client = OpenAI(
    api_key=os.getenv("SKILLBOSS_API_KEY"),
    base_url="https://api.skillboss.co/v1"
)

topics = [
    "AI productivity tools 2026",
    "Remote work best practices",
    "Startup funding strategies",
    # ... 17 more topics
]

posts = []

for i, topic in enumerate(topics):
    print(f"[{i+1}/{len(topics)}] Generating: {topic}")

    # Generate SEO-optimized content with Gemini Flash (cheap)
    content = client.chat.completions.create(
        model="gemini/gemini-2.5-flash",  # $0.075/1M tokens
        messages=[{
            "role": "user",
            "content": f"""Write a 1000-word SEO blog post about "{topic}".
Include:
- H2 and H3 headings
- Meta description (150 chars)
- 5 internal linking opportunities
- FAQ section with 3 questions"""
        }]
    )

    # Generate featured image with Flux Schnell (fast + cheap)
    image = client.images.generate(
        model="flux/flux-schnell",  # $0.01 per image
        prompt=f"Professional blog header image for article about {topic}, modern, clean design",
        size="1792x1024"
    )

    posts.append({
        "topic": topic,
        "content": content.choices[0].message.content,
        "image_url": image.data[0].url
    })

    # Save incrementally
    with open(f"posts/{i+1:02d}_{topic.replace(' ', '_')[:30]}.md", "w") as f:
        f.write(f"# {topic}\n\n")
        f.write(f"![Featured Image]({image.data[0].url})\n\n")
        f.write(content.choices[0].message.content)

print(f"\n✓ Generated {len(posts)} blog posts")
print(f"Estimated cost: $0.40 (20 posts + 20 images)")

Result: 20 SEO blog posts with images for under $1.


Example 3: Automated Lead Research

You: "Scrape 100 LinkedIn profiles and analyze for sales outreach"

Trae with SkillBoss:

import requests
import os
from openai import OpenAI

SKILLBOSS_KEY = os.getenv("SKILLBOSS_API_KEY")
headers = {"Authorization": f"Bearer {SKILLBOSS_KEY}"}

# LinkedIn URLs to research
prospects = [
    "https://linkedin.com/in/cto-example",
    "https://linkedin.com/in/vp-engineering",
    # ... 98 more
]

profiles = []

print("Scraping LinkedIn profiles...")
for i, url in enumerate(prospects):
    response = requests.post(
        "https://api.skillboss.co/v1/linkedin/profile",
        headers=headers,
        json={"url": url}
    )

    if response.status_code == 200:
        profiles.append(response.json())
        print(f"[{i+1}/{len(prospects)}] ✓ {response.json().get('name', 'Unknown')}")

# Analyze with DeepSeek R1 (good for reasoning tasks)
client = OpenAI(api_key=SKILLBOSS_KEY, base_url="https://api.skillboss.co/v1")

print("\nAnalyzing profiles for outreach strategy...")
analysis = client.chat.completions.create(
    model="deepseek/deepseek-r1",  # $0.14/1M tokens
    messages=[{
        "role": "user",
        "content": f"""Analyze these {len(profiles)} LinkedIn profiles for B2B sales outreach.

Profiles: {profiles}

Provide:
1. Top 10 highest-priority prospects with reasoning
2. Personalization angles for each
3. Common pain points to address
4. Recommended outreach sequence
5. Industry trends observed"""
    }]
)

print("\n" + "="*50)
print("SALES INTELLIGENCE REPORT")
print("="*50)
print(analysis.choices[0].message.content)

# Cost: 100 profiles × $0.02 = $2 + analysis $0.50 = $2.50 total

Cost Comparison

Trae Alone

Monthly costs for typical startup:

  • Trae Pro: $20/mo
  • OpenAI API: $60/mo
  • Stripe: $15/mo
  • Vercel: $20/mo
  • SendGrid: $15/mo
  • Total: $130/mo

Trae + SkillBoss

Same usage:

  • Trae Pro: $20/mo
  • SkillBoss (all services): $40/mo
    • AI models (mostly Gemini Flash): $8
    • Payments (Stripe via SkillBoss): $7
    • Hosting: $15
    • Email: $5
    • Scraping: $5
  • Total: $60/mo

Savings: $70/mo (54%)


Trae-Specific Tips

1. Use Trae's AI Panel with SkillBoss

Open the AI assistant panel (Cmd/Ctrl + J) and configure:

You have access to SkillBoss API with 679+ endpoints.

Available capabilities:
- Model APIs: Claude, GPT, Gemini, DeepSeek, Qwen
- Payments: Stripe checkout, subscriptions, invoices
- Email: Transactional, marketing, newsletters
- Hosting: Deploy Next.js, static sites
- Scraping: LinkedIn, Twitter, web pages

API Base: https://api.skillboss.co/v1
Use environment variable SKILLBOSS_API_KEY for authentication.

2. Model Selection Strategy

// Add to your project's AI configuration

/**
 * SkillBoss Model Selection:
 *
 * BUDGET ($0.075/1M tokens):
 *   gemini/gemini-2.5-flash
 *   - Simple code generation
 *   - Summaries, translations
 *   - First-pass drafts
 *
 * BALANCED ($0.14/1M tokens):
 *   deepseek/deepseek-r1
 *   - Complex reasoning
 *   - Code review
 *   - Architecture decisions
 *
 * PREMIUM ($15/1M tokens):
 *   claude-4-5-sonnet
 *   - Critical business logic
 *   - Security-sensitive code
 *   - Production deployments
 */

3. Multi-File Generation

You: "@Trae create a complete REST API with auth, payments, and email"

Trae with SkillBoss generates:

  • app/api/auth/[...nextauth]/route.ts - Auth endpoints
  • app/api/payments/checkout/route.ts - Stripe checkout
  • app/api/payments/webhook/route.ts - Payment webhooks
  • app/api/email/send/route.ts - Email sending
  • lib/skillboss.ts - SkillBoss client configuration
  • types/api.ts - Type definitions

All using SkillBoss as the unified backend.


Troubleshooting

Issue: "API key invalid"

Solution:

  1. Check your config has the correct key
  2. Make sure key starts with sk-
  3. Test manually:
    curl https://api.skillboss.co/v1/models \
      -H "Authorization: Bearer sk-YOUR_KEY"
    

Issue: Trae not using SkillBoss models

Solution:

  1. Verify .trae/config.json exists in project root
  2. Restart Trae completely
  3. Explicitly mention SkillBoss in prompts:
    • "Use SkillBoss API to..."
    • "Generate using SkillBoss Gemini Flash..."

Issue: Slow response times

Solution:

  1. Use faster models for simple tasks:
    • gemini/gemini-2.5-flash (fastest)
    • deepseek/deepseek-v3 (fast + smart)
  2. Check your internet connection
  3. Try a different SkillBoss region if available

Best Practices

Do This

  1. Configure model defaults: Set Gemini Flash as default for cost savings
  2. Use environment variables: Never hardcode API keys
  3. Monitor usage: Check SkillBoss dashboard weekly
  4. Leverage batch operations: Generate content in bulk for efficiency

Avoid This

  1. Don't use Claude for simple tasks: 95% of tasks work with Gemini Flash
  2. Don't ignore errors: Always handle API failures gracefully
  3. Don't skip validation: Test generated code before deploying
  4. Don't commit secrets: Add .env to .gitignore

Community

📄

X/Twitter

Tips and updates

📚

Documentation

Explore all features

📄

Support

Get help via email


Next Steps

🔑

Get API Key

Sign up and get your key in 30 seconds

🧠

Browse Use Pages

See all 100+ available models

📄

View Pricing

Transparent, pay-as-you-go pricing

⬇️

Installation Guide

Quick installation steps