Step-by-Step Deployment Guide
This guide walks you through the process of deploying a version of your agent using AnotherAI and your AI coding agent.
Creating a Deployment
Select and Deploy Your Version
If you're using experiments to make improvements to your agent, you can always deploy the updated version of your agent from the experiments web view
- Locate the experiment that has the version of the agent you want to deploy.
- Hover over the version number to copy the version ID
- Open Claude Code (or your preferred AI coding agent)
- Request deployment to your preferred environment:
I want to deploy anotherai/version/acf2635be31cbd89f9363bfd3b2c6abc to production.
If you're making changes to your agent in your IDE, you can also just request to have a deployment created directly, without opening the web app.
- Ensure your code is already using the AnotherAI SDK with an
agent_id
- Tell Claude (or your AI coding agent) to deploy your agent:
Deploy the version of my @travel-assistant.py that uses GPT-5 to production
Claude will create a version ID for you and deploy it.
If you find a version via the completions view on the web app, you can also deploy it directly from there.
- Open the detail view of the completion using the version you want to deploy
- Copy the version ID (located on the right side of the modal)
- Paste the version ID into Claude Code (or your preferred AI coding agent) and ask it to deploy:
I want to deploy fc1ddfbb1cf220716ab7c999b3c89020 to production.
Common environment names
dev
- for development testingstaging
- for pre-production validationproduction
orprod
- for live production use
When deployed, these environments are combined with your agent name:
travel-assistant/dev#1
calendar-assistant/staging#2
customer-support/production#1
Optionally, you can request a specific name be used for the deployment. Otherwise, your AI coding agent will pick one for you automatically:
I want to deploy anotherai/version/a9f1fc5ab11299a9fee5604e51fe7b6e to production.
Name the deployment: "calendar-assistant/production-9-2"
Update Your Code
Once the deployment is created, ask Claude to update your code to use the new deployment.
Update my agent code to use the new deployment travel-assistant/production#1
Claude will update your code to use the deployment reference, removing the static components that are now stored in the deployment.
Before:
const completion = await openai.chat.completions.create({
model: "gpt-4o",
messages: [
{
role: "system",
content: `You are an expert travel assistant specializing in {{ country }}.
Key responsibilities:
- Provide accurate information about {{ country }} including culture, customs, and travel tips
- Consider the traveler's budget level: {{ budget_level }}
- Recommend activities and restaurants appropriate for their interests and budget
Always be helpful, accurate, and culturally sensitive.`
}
],
temperature: 0.7,
// Input variables
input: {
country: destination,
budget_level: travelerBudget
},
agent_id: "travel-assistant"
});
completion = await openai.chat.completions.create(
model="gpt-4o",
messages=[
{
"role": "system",
"content": """You are an expert travel assistant specializing in {{ country }}.
Key responsibilities:
- Provide accurate information about {{ country }} including culture, customs, and travel tips
- Consider the traveler's budget level: {{ budget_level }}
- Recommend activities and restaurants appropriate for their interests and budget
Always be helpful, accurate, and culturally sensitive."""
}
],
temperature=0.7,
extra_body={
"input": {
"country": destination,
"budget_level": traveler_budget
},
"agent_id": "travel-assistant"
}
)
After:
const completion = await openai.chat.completions.create({
// Static components are now stored in the deployment
model: "anotherai/deployment/travel-assistant:production#1",
messages: [],
input: {
country: destination,
budget_level: travelerBudget
}
});
completion = await openai.chat.completions.create(
# Model, temperature, system message, and agent_id are now in the deployment
model="anotherai/deployment/travel-assistant:production#1",
messages=[],
extra_body={
"input": {
"country": destination,
"budget_level": traveler_budget
}
}
)
Alternatively, if you want to do it yourself or just understand the changes that will be made, read more here.
Updating a Deployment
There are two types of deployment updates that can be made: breaking and non-breaking. To learn more about the differences, read more here.
Non-Breaking Changes (Update Existing Deployment)
When your changes don't affect the input variables or output schema, you can update the existing deployment:
Copy the new version ID you want to deploy from AnotherAI.
Ask Claude to update the existing deployment: Update deployment travel-assistant/production#1 to use anotherai/version/a9f1fc5ab11299a9fee5604e51fe7b6e
That's it! No code changes needed - your application automatically uses the updated version.
Breaking Changes (Create New Deployment)
When your changes affect input variables or output schema, you must create a new deployment. This is because changing these would cause mismatches between what the deployment expects and what your code provides - for example, if the deployment expects a new input variable that your code isn't passing, or if your code expects an output field that no longer exists.
Copy the new version ID you want to deploy from AnotherAI.
Ask Claude to deploy the new version to your preferred environment in a new deployment. Alternatively, if you ask Claude to update an existing deployment and it cannot because the new version is incompatible, Claude will automatically create a new deployment for you.
Update your code to use the new deployment name:
Update my code to use travel-assistant/production#2 instead of travel-assistant/production#1
How is this guide?