-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathmanifest.yaml
More file actions
145 lines (124 loc) · 4.66 KB
/
manifest.yaml
File metadata and controls
145 lines (124 loc) · 4.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
# Agent Manifest Configuration
# ---------------------------
# This file defines how your agent should be built and deployed.
# Build Configuration
# ------------------
# The build config defines what gets packaged into your agent's Docker image.
# This same configuration is used whether building locally or remotely.
#
# When building:
# 1. All files from include_paths are collected into a build context
# 2. The context is filtered by dockerignore rules
# 3. The Dockerfile uses this context to build your agent's image
# 4. The image is pushed to a registry and used to run your agent
build:
context:
# Root directory for the build context
root: ../ # Keep this as the default root
# Paths to include in the Docker build context
# Must include:
# - Your agent's directory (your custom agent code)
# These paths are collected and sent to the Docker daemon for building
include_paths:
- procurement_agent
# Path to your agent's Dockerfile
# This defines how your agent's image is built from the context
# Relative to the root directory
dockerfile: procurement_agent/Dockerfile
# Path to your agent's .dockerignore
# Filters unnecessary files from the build context
# Helps keep build context small and builds fast
dockerignore: procurement_agent/.dockerignore
# Local Development Configuration
# -----------------------------
# Only used when running the agent locally
local_development:
agent:
port: 8718 # Port where your local ACP server is running
host_address: host.docker.internal # Host address for Docker networking (host.docker.internal for Docker, localhost for direct)
# File paths for local development (relative to this manifest.yaml)
paths:
# Path to ACP server file
# Examples:
# project/acp.py (standard)
# src/server.py (custom structure)
# ../shared/acp.py (shared across projects)
# /absolute/path/acp.py (absolute path)
acp: project/acp.py
# Path to temporal worker file
# Examples:
# project/run_worker.py (standard)
# workers/temporal.py (custom structure)
# ../shared/worker.py (shared across projects)
worker: project/run_worker.py
# Agent Configuration
# -----------------
agent:
# Type of agent - either sync or async
acp_type: async
# Unique name for your agent
# Used for task routing and monitoring
name: procurement-agent
# Description of what your agent does
# Helps with documentation and discovery
description: An Agentex agent that manages procurement for building constructions
# Temporal workflow configuration
# This enables your agent to run as a Temporal workflow for long-running tasks
temporal:
enabled: true
workflows:
# Name of the workflow class
# Must match the @workflow.defn name in your workflow.py
- name: procurement-agent
# Queue name for task distribution
# Used by Temporal to route tasks to your agent
# Convention: <agent_name>_task_queue
queue_name: procurement_agent_queue
# Optional: Health check port for temporal worker
# Defaults to 8080 if not specified
# health_check_port: 8080
# Optional: Credentials mapping
# Maps Kubernetes secrets to environment variables
# Common credentials include:
credentials:
- env_var_name: REDIS_URL
secret_name: redis-url-secret
secret_key: url
- env_var_name: SGP_API_KEY
secret_name: sgp-api-key
secret_key: api-key
# - env_var_name: OPENAI_API_KEY
# secret_name: openai-api-key
# secret_key: api-key
# Optional: Set Environment variables for running your agent locally as well
# as for deployment later on
env:
OPENAI_API_KEY: ""
# OPENAI_BASE_URL: "<YOUR_OPENAI_BASE_URL_HERE>"
OPENAI_ORG_ID: ""
# Deployment Configuration
# -----------------------
# Configuration for deploying your agent to Kubernetes clusters
deployment:
# Container image configuration
image:
repository: "" # Update with your container registry
tag: "latest" # Default tag, should be versioned in production
imagePullSecrets:
- name: my-registry-secret # Update with your image pull secret name
# Global deployment settings that apply to all clusters
# These can be overridden using --override-file with custom configuration files
global:
agent:
name: "procurement-agent"
description: "An Agentex agent that manages procurement for building constructions"
# Default replica count
replicaCount: 1
# Default resource requirements
resources:
requests:
cpu: "500m"
memory: "1Gi"
limits:
cpu: "1000m"
memory: "2Gi"