Terraform Resources
This page provides a comprehensive reference for all resources available in the Kubiya Control Plane Terraform Provider.Core Resources
controlplane_environment
Manages execution environments for agents and workers. Arguments:name(Required, string) - Environment namedisplay_name(Optional, string) - Display namedescription(Optional, string) - Environment descriptiontags(Optional, list(string)) - Tags for organizationconfiguration(Optional, JSON string) - Environment configurationexecution_environment(Optional, JSON string) - Execution settings
controlplane_project
Manages projects for organizing resources. Arguments:name(Required, string) - Project namekey(Required, string) - Project key (uppercase abbreviation)description(Optional, string) - Project descriptiongoals(Optional, string) - Project goalsvisibility(Optional, string) - Visibility setting (“private” or “public”)metadata(Optional, JSON string) - Additional metadata
controlplane_team
Manages teams with shared configuration and capabilities. Arguments:name(Required, string) - Team namedescription(Optional, string) - Team descriptionruntime(Required, string) - Runtime type: “default” (Agno) or “claude_code” (Claude Code SDK)configuration(Optional, JSON string) - Team configurationcapabilities(Optional, list(string)) - Team capabilities
controlplane_agent
Manages AI agents with custom LLM configurations. Arguments:name(Required, string) - Agent namedescription(Optional, string) - Agent descriptionmodel_id(Required, string) - LLM model (e.g., “kubiya/claude-sonnet-4”, “kubiya/gpt-4”)runtime(Required, string) - Runtime: “default” or “claude_code”team_id(Optional, string) - Team ID to assign agentllm_config(Required, JSON string) - LLM configuration (temperature, max_tokens, etc.)configuration(Optional, JSON string) - Agent-specific configurationcapabilities(Optional, list(string)) - Agent capabilities
Capability Resources
controlplane_skill
Manages skills for agent capabilities (filesystem, shell, docker, etc.). Arguments:name(Required, string) - Skill namedescription(Optional, string) - Skill descriptiontype(Required, string) - Skill type: “shell”, “file_system”, “docker”, “custom”enabled(Optional, bool) - Whether skill is enabled (default: true)configuration(Optional, JSON string) - Skill-specific configuration
controlplane_policy
Manages OPA Rego policies for governance and security. Arguments:name(Required, string) - Policy namedescription(Optional, string) - Policy descriptionenabled(Optional, bool) - Whether policy is enabled (default: true)policy_content(Required, string) - OPA Rego policy contenttags(Optional, list(string)) - Policy tags
controlplane_worker
Manages worker registration and configuration. Arguments:environment_name(Required, string) - Environment namehostname(Required, string) - Worker hostnamemetadata(Optional, JSON string) - Worker metadata
controlplane_worker_queue
Manages worker queues for task execution. Arguments:name(Required, string) - Queue nameenvironment_name(Required, string) - Environment namedisplay_name(Optional, string) - Display namedescription(Optional, string) - Queue descriptionheartbeat_interval(Optional, number) - Heartbeat interval in secondsmax_workers(Optional, number) - Maximum workerstags(Optional, list(string)) - Queue tagssettings(Optional, map(string)) - Queue settings
controlplane_job
Manages scheduled, webhook-triggered, and manual jobs. Arguments:name(Required, string) - Job namedescription(Optional, string) - Job descriptionenabled(Optional, bool) - Whether job is enabled (default: true)trigger_type(Required, string) - Trigger type: “cron”, “webhook”, or “manual”cron_schedule(Optional, string) - Cron expression (required for cron triggers)cron_timezone(Optional, string) - Timezone for cron (default: “UTC”)planning_mode(Required, string) - Planning mode: “predefined_agent”, “predefined_team”, or “dynamic”entity_type(Required, string) - Entity type: “agent” or “team”entity_id(Optional, string) - Entity ID (use entity_id for direct reference)prompt_template(Required, string) - Prompt template with variablessystem_prompt(Optional, string) - System prompt for agentexecutor_type(Required, string) - Executor: “auto”, “environment”environment_name(Optional, string) - Environment name (required for environment executor)execution_env_vars(Optional, map(string)) - Environment variablesexecution_secrets(Optional, list(string)) - Secret namesconfig(Optional, JSON string) - Additional configuration
Attributes Reference
All resources export the following attributes:id- Unique identifier for the resourcecreated_at- Timestamp when resource was createdupdated_at- Timestamp when resource was last updated
Job-Specific Attributes
Jobs also export:webhook_url- Webhook URL (for webhook trigger type)
Worker Queue-Specific Attributes
Worker queues also export:task_name- Task name for worker registration
Import
Resources can be imported using their ID:Best Practices
Resource Naming
Use consistent, descriptive names:Configuration as JSON
Usejsonencode() for configuration blocks:
Dependencies
Use explicit dependencies when needed:Tags for Organization
Use tags consistently:Next Steps
- Data Sources - Query existing resources
- Examples - Complete end-to-end examples
- Provider Configuration - Configuration options