Your First Styling Mission
Boot the stack, create a household, add wardrobe items, and run your first AI styling mission — all in 10 minutes.
This tutorial walks you through the core AnyaSelf workflow end-to-end using curl commands. By the end, you'll have created a household, added a wardrobe item, and run an AI styling mission.
Prerequisites
- Docker Desktop installed and running
- The AnyaSelf repository cloned locally
curlandjqavailable in your terminal
Step 1 — Boot the Stack
cd new_project
cp .env.example .env
docker compose up --build -dWait for all services to be healthy:
docker compose psYou should see all 8 services running:
NAME STATUS
anyaself-gateway Up (healthy)
anyaself-orchestrator Up (healthy)
anyaself-wardrobe Up (healthy)
anyaself-commerce Up (healthy)
anyaself-vto Up (healthy)
anyaself-cartprep Up (healthy)
anyaself-hyperbeam Up (healthy)
anyaself-artifacts Up (healthy)Step 2 — Get an Auth Token
In dev mode, the API Gateway issues JWTs from a simulated login:
TOKEN=$(curl -s http://localhost:8000/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"idToken": "test-user-token"}' | jq -r '.accessToken')
echo $TOKENExpected output:
eyJhbGciOiJIUzI1NiIs...Verify your identity:
curl -s http://localhost:8000/api/v1/me \
-H "Authorization: Bearer $TOKEN" | jq{
"userId": "test-user-id",
"email": "test@example.com"
}Step 3 — Create a Household
HOUSEHOLD=$(curl -s http://localhost:8000/api/v1/households \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "My Household"}' | jq -r '.householdId')
echo "Household ID: $HOUSEHOLD"{
"householdId": "h_abc123...",
"name": "My Household",
"members": [
{
"memberId": "test-user-id",
"role": "PARENT/GUARDIAN",
"displayName": null,
"addedAt": "2026-03-10T10:00:00+00:00",
"addedBy": "test-user-id"
}
],
"purchaseRequests": [],
"createdAt": "2026-03-10T10:00:00+00:00",
"updatedAt": "2026-03-10T10:00:00+00:00"
}Step 4 — Add a Wardrobe Item
curl -s http://localhost:8000/api/v1/households/$HOUSEHOLD/wardrobe/items \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"category": "TOP",
"brand": "Uniqlo",
"colors": ["white", "blue"],
"season": ["SPRING", "SUMMER"],
"occasion": ["casual"],
"tags": ["linen", "relaxed-fit"]
}' | jq{
"itemId": "item_xyz789...",
"householdId": "h_abc123...",
"ownerMemberId": "test-user-id",
"category": "TOP",
"brand": "Uniqlo",
"colors": ["white", "blue"],
"season": ["SPRING", "SUMMER"],
"occasion": ["casual"],
"tags": ["linen", "relaxed-fit"],
"images": [],
"createdAt": "...",
"updatedAt": "..."
}Step 5 — Create a Styling Mission
curl -s http://localhost:8000/api/v1/households/$HOUSEHOLD/orchestrator/missions \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"mission_type": "STYLE",
"initial_message": "Help me put together a casual spring outfit for a weekend brunch"
}' | jq '.mission_id, .state, .mission_type'"msn_abc123..."
"RUNNING"
"STYLE"Step 6 — Chat with the Agent
MISSION_ID="msn_abc123" # use your actual mission_id from Step 5
curl -s http://localhost:8000/api/v1/households/$HOUSEHOLD/orchestrator/missions/$MISSION_ID/chat \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message": "I prefer earth tones, under $150 total"}' | jq '.state, .history[-1].content'The agent searches your wardrobe and commerce offers, then responds with styling suggestions. In dev mode (without REQUIRE_VERTEX_AGENT=true), the agent returns a stub response.
Step 7 — Verify the Audit Trail
curl -s http://localhost:8000/api/v1/households/$HOUSEHOLD/audit-logs \
-H "Authorization: Bearer $TOKEN" | jq '.[] | {action, targetType, createdAt}'You should see audit entries for household creation and mission activity.
What's Next?
- Add images: Upload photos to wardrobe items via the image lifecycle endpoints. See Wardrobe Service.
- Try VTO: Submit a Virtual Try-On job with person + garment images. See VTO Service.
- Purchase flow: Create a purchase request, get approval, and go through the checkout flow. See API Gateway.
- Voice: Connect to Aura via the voice WebSocket endpoint for real-time styling conversations. See Frontend Integration.
- Frontend: Run the client web app with
cd apps/client-web && npm run dev. See Frontend Features.