Edge Developer Platform
  • Pages
    • Product Introduction
    • Quick Start
      • Agent Development
      • Importing a Git Repository
      • Starting From a Template
      • Direct Upload
      • Start with AI
    • Framework Guide
      • Agent
      • Frontends
        • Vite
        • React
        • Vue
        • Hugo
        • Other Frameworks
      • Backends
      • Full-stack
        • Next.js
        • Nuxt
        • Astro
        • React Router
        • SvelteKit
        • TanStack Start
        • Vike
      • Custom 404 Page
    • Project Guide
      • Project Management
      • edgeone.json
      • Configuring Cache
      • Building Output Configuration
      • Error Codes
    • Build Guide
    • Deployment Guide
      • Overview
      • Create Deploys
      • Manage Deploys
      • Deploy Button
      • Using Github Actions
      • Using Gitlab CI/CD
      • Using CNB Plugin
      • Using IDE PlugIn
      • Using CodeBuddy IDE
    • Domain Management
      • Overview
      • Custom Domain
      • HTTPS Configuration
        • Overview
        • Apply for Free Certificate
        • Using Managed SSL Certificate
      • Configure DNS CNAME Record
    • Observability
      • Overview
      • Metric Analysis
      • Log Analysis
    • Functions
      • Overview
      • Edge Functions
      • Cloud Functions
        • Overview
        • Node.js
        • Python
        • Go
    • Agents
      • Overview
      • Quick Start
      • Conversation Storage
      • Observability
      • Sandbox Tool
        • Overview
        • Using the Agent Framework
        • Sandbox Atomic API
        • Network Search Tool
      • Agent Authentication
    • Models
      • Overview
      • Models and Vendors
        • Overview
        • Using Vendor Keys
          • OpenAI
          • Anthropic
          • Google AI Studio
          • DeepSeek
          • MiniMax
          • Hunyuan
          • Zhipu
          • MoonShot AI
      • FAQs
    • Storage
      • Overview
      • KV
      • Blob
    • Middleware
    • AI-Native Development
      • Skills
      • MCP
    • Copilot
      • Overview
      • Quick Start
    • API Token
    • EdgeOne CLI
    • Message Notification
    • Integration Guide
      • AI
        • Dialogue Large Models Integration
        • Large Models for Images Integration
      • Database
        • Supabase Integration
        • Pages KV Integration
      • Ecommerce
        • Shopify Integration
        • WooCommerce Integration
      • Payment
        • Stripe Integration
        • Integrating Paddle
      • CMS
        • WordPress Integration
        • Contentful Integration
        • Sanity Integration
        • Payload Integration
      • Authentication
        • Supabase Integration
        • Clerk Integration
    • Best Practices
      • Adding an AI Chat Assistant to a Website
      • AI Dialogue Deployment: Deploy Project with One Sentence Using Skill
      • Using General Large Model to Quickly Build AI Application
      • Use the DeepSeek model to quickly build a conversational AI site
      • Building an Ecommerce Platform with Shopify
      • Building a SaaS Site Using Supabase and Stripe
      • Building a Company Brand Site Quickly
      • How to Quickly Build a Blog Site
    • Migration Guides
      • Migrating from Vercel to EdgeOne Pages
      • Migrating from Cloudflare Pages to EdgeOne Pages
      • Migrating from Netlify to EdgeOne Pages
    • Troubleshooting
    • FAQs
    • Limits
    • Pricing
    • Contact Us
    • Release Notes

Quick Start

This guide helps you quickly deploy your first Agent and master the complete process for local debugging and production deployment of session requests.

Starting from a Template

Go to the console, select the Agents tab, and navigate to the Agent template selection page. You can start with a framework-based template or directly choose a template that fits your business scenario.

When creating a project from a template for the first time, you need to select a Git platform. For information on how to connect a Git platform, refer to the document Import Git Repository. After configuring the project information, click Create Now.

The deployment process will start automatically. We will create a repository in your GitHub account based on this template. You can clone this repository locally for further development and push changes as needed.

Starting a Project from the CLI

1. Installing

Install the CLI using npm:
npm install -g edgeone
You can check whether the installation is successful by using the edgeone -v command. You can view all related commands by using the edgeone -h command.

2. Creating a Project

You can quickly create a basic template based on the OpenAI Agents SDK using the following command.
edgeone makers create --template openai-agents-starter-node
If a project with the same name already exists, you can manually specify a project name using the command: edgeone makers create [project-name] --template openai-agents-starter-node.

3. Local Debugging

By default, running the command starts a service on the local port 8088. Both the Makers Agent service and the frontend project service run on the same port, eliminating the need for an additional proxy.
edgeone makers dev
You can access the Agent page via http://localhost:8088/.
You can access the local observability and traceability page via http://localhost:8088/agent-metrics.


Refactoring an Existing Agent Project

If you already have your own Agent project and want to migrate it to our platform, you can deploy it in just three steps.

1. Adjusting the Directory Structure

Makers Agents uses a dedicated directory and follows the file-as-route convention. The directory name defaults to agents/ and can be customized through project configuration. Place each Agent's entry file at agents/<name>/index.{js,ts,py}:
your-project/
├── agents/
│ ├── researcher/
│ │ ├── index.py # Main entry: handler(context)
│ │ └── stop.py # Optional: Interruption handling
│ └── customer-service/
│ └── index.js
└── edgeone.json
Files or directories prefixed with an underscore are private modules and do not generate routes.

2. Refactoring the Entry Point and Configuration

For your business code, you only need to change the entry point to handler(context). The platform injects all capabilities through the context object, eliminating the need to import any platform SDK. Then, declare the framework and other runtime parameters in edgeone.json (for detailed configuration, refer to the section below).
TS Example
export async function onRequest(context: any) {
// Your Agent business logic
}
Python Example
# Agent Entry Point
async def handler(context):
# Your Agent Business Logic

3. On-Demand Access to Store/Sandbox

Capability
Access Prerequisite
Documentation
Conversation Storage
Requires the Agent to have memory capability.
Sandbox Tool
Access when you need to run commands / read/write files / operate a browser / run code.

Local Debugging

1. Associating a Project

To synchronize the environment variables already configured in the console to your local debugging environment, run the link project command and enter the project name as prompted. The project name here refers to the Makers project name you created during the preparation phase.
edgeone makers link

2. Local Development

Go to the project root directory and run:
edgeone makers dev
The CLI starts the following simultaneously:
1. Local HTTP server (default: http://localhost:8080)
2. Local observability dashboard (default: http://localhost:8080/agent-metrics)

Deploying to Production

Git Deployment (Recommended)

1. Push your code to a remote repository (GitHub, Gitee, or Coding).
2. Import the project to EdgeOne Makers.
3. EdgeOne Makers automatically builds, deploys, and generates an online URL.
After your project is imported and deployed, a new deployment is automatically triggered for all commits to the specified production branch (default: "main"). See Git Integration for more information.

CLI Deployment

1. Install EdgeOne CLI and initialize it.
2. Run edgeone makers deploy -n <project name> to deploy.
npm install -g edgeone
edgeone login
edgeone makers deploy -n vite-react-demo
After a successful deployment, click the link in the Console to access the detailed build information and the deployed URL.

Session Management

The platform uses a conversation_id to identify a continuous conversation, and all requests must carry it in the request header. It simultaneously drives three functions: session-sticky routing (agents/), conversation storage ownership (agents/ + cloud-functions/), and sandbox instance ownership (one sandbox per conversation).

Generation Method

The client / business backend generates and maintains a globally unique ID (a UUID is sufficient) when creating a new conversation. When continuing a historical conversation, it directly retrieves and reuses the original conversation_id.
// Business generation (recommended): Use a UUID to guarantee global uniqueness and avoid conflicts.
const conversationId = `conv_${crypto.randomUUID().replace(/-/g, '')}`;

Carrying Request Headers

Consistently pass it using the request header Makers-Conversation-Id (required for all agents/* calls). It is recommended to globally inject it in the frontend fetch interceptor to avoid repetitive writing at each call point.
// Invoke Agent
await fetch('/customer-service', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Makers-Conversation-Id': conversationId,
}
})

Request Header Format and Errors

The Makers-Conversation-Id must meet the following requirements: a length of 6 to 36 characters, and only the characters 0-9, a-z, A-Z, -, _, and . are allowed. When the request header is missing or invalid, the Agent router returns a 400 error.
Agent requests are also subject to concurrent session and site frequency limits. When a limit is exceeded, a 429 error is returned. Retry after backing off for the duration specified in the Retry-After response header. For a complete list of error codes, see Error Codes.

edgeone.json Configuration

The edgeone.json file in the project root directory controls the runtime parameters for the Agent and the sandbox:
{
"agents": {
"framework": "openai-agents-sdk", // claude-agent-sdk / openai-agents-sdk / langgraph / crewai / deepagents
"dir": "agents", // Optional. Defaults to "agents".
"timeout": 300, // Optional. The maximum duration in seconds for a single run (30 ~ 3600).
"sandbox": {
"timeout": 300 // Optional. The maximum lifetime in seconds for a sandbox instance (300 ~ 3600).
}
}
}
Field
Feature
agents.framework
Determines the framework adaptation form of context.store / context.tools
agents.dir
Agent source code directory, default agents/
agents.timeout
Maximum execution seconds for a single task
agents.sandbox.timeout
Sandbox instance survival duration