Containing Agent Chaos — Solomon Hykes, Dagger Introduction and Context 00:21
Solomon Hykes notes the significance of returning to the same stage as Docker Con 2015, reflecting on how much has changed in the industry
Sets out to discuss the challenges and chaos that arise when using coding agents, focusing on the platform engineering perspective
The Challenge of Platform Engineering and Coding Agents 01:06
Platform engineers are responsible for enabling developers, often without direct recognition
With the advent of coding agents, platform engineers now need to enable robots to ship software, shifting the focus from enabling humans to enabling agents
The full transition to teams of coding agents working automatically is not mainstream yet, but momentum and interest are growing
Current Approaches to Managing Agent Chaos 03:45
The common definition of an agent is an LLM performing repetitive tasks on your behalf, but prone to making mistakes and requiring close supervision
Two current options for scaling agents are outlined:
"YOLO mode": Running multiple agents in a shared environment, leading to high potential for chaos and interference
"All-in-one model": Hosted agent platforms that handle everything, but limit user flexibility and control
Each method has downsides, such as lack of scalability or limited customization
Desired Features for Next-Generation Agent Environments 06:02
Four key requirements for better agent environments:
Ability to do background work without constant supervision
Implementation of "rails" (constraints and guidance) for agents, such as coding styles, build/test steps, tool usage, and secret access
Efficient and seamless human intervention when necessary, beyond just code reviews
Optionality and openness, allowing users to choose components and avoid vendor lock-in
Role of Containers and Integration with Agents 08:25
Containers are highlighted as crucial, underutilized tech for providing isolated, customizable, multiplayer, and open environments for agents
Native integration of containers with agent tooling is proposed to solve current workflow problems and provide robust agent environments
The concept of "container use" is introduced, where agents develop entirely within containers, not just executing code in sandboxed environments
Demonstration of "Container Use" with Dagger 10:44
A live demo is conducted showing how the "container use" system works alongside coding agents and cloud tools
The setup allows agents to create portable, repeatable container environments that are agnostic of agent or tool choice
Environments are not tied to a local machine and remain isolated, maintaining workspace cleanliness and enabling development anywhere
State is persisted in Git using special objects, providing a log/history and clean collaboration loop
Users can open terminals within agent environments and inspect files, tools, and configurations set up by the agent
Collaboration, Experimentation, and Environment Management 15:16
Demo showcases merging working environments, running experiments in parallel with multiple agents, and cleanly discarding unwanted outcomes
Supports plugging in secrets securely from standard managers (e.g., 1Password), keeping secret handling out of agent/company domains
Environments and changes are managed with Git-like commands, enabling diffs, merges, and snapshotting as agents do their work
Infrastructure Flexibility and Scaling 20:01
Demonstrates running environments remotely (e.g., on a home server), supporting various infrastructure configurations and use cases like CI pipelines
The isolation includes not just files and configuration but also the runtime execution of services, enabling parallel development without conflicts
Closing and Open Sourcing 21:40
Hykes notes the tradition of open sourcing projects live at Docker Con and proceeds to make "container use" open source despite its unfinished state
Invites the community to participate and give feedback at github.com/dagger/containeruse