Quick start
Deploy the workspace with Terraform and open a session through Session Manager.
Agent Workspace (douklar/agent-workspace/aws) provisions an Ubuntu 24.04
EC2 instance with Claude Code, VS Code Server and Tailscale, reached through
AWS Session Manager with no open ports.
Requirements
| Requirement | Version |
|---|---|
| Terraform | >= 1.9.0, < 2.0.0 |
| AWS provider | ~> 6.47 |
| Archive provider | ~> 2.5 |
| AWS CLI | Any recent version, for ssm start-session |
Your AWS credentials need permission to create and manage EC2, IAM, Lambda, EventBridge, SQS, SSM Parameter Store, S3 and CloudWatch.
Deploy
module "workspace" {
source = "douklar/agent-workspace/aws"
version = "~> 2.0"
aws_region = "eu-central-1"
}terraform init
terraform applyEvery input has a default. The repository's examples/basic is a complete
configuration, and terraform.tfvars.example is a starting point.
Version. Version 2.0.0 changed the scheduler to be tag-driven and added
env_vars. Pin~> 2.0for the behaviour described in these docs.
Connect
terraform output -raw ssm_start_session_commandRun the command it prints, or:
aws ssm start-session --target $(terraform output -raw instance_id) --region eu-central-1After apply
- If Tailscale is enabled (the default), write its auth key to SSM. See Secrets and access.
- If any
env_varsentry isnull, write each secret value to SSM. - Connect with the Session Manager command above.
- The instance starts by itself at the next scheduled window. See Scheduling.