Skip to content

Commit b991e13

Browse files
committed
fix the punctuation
Signed-off-by: Keming <[email protected]>
1 parent e9ee200 commit b991e13

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

docs/blog/agent-container.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ introduction: 'Keming is one of the envd maintainers. He is working on the machi
77

88
# Why the code agents should run inside the containers
99

10-
The rapid rise of AI code agents unlocks an entirely new way of building software. They can generate code, execute scripts, install dependencies, run tests, and orchestrate multi-step development workflows—all autonomously. But with this power comes a fundamental truth:
10+
The rapid rise of AI code agents unlocks an entirely new way of building software. They can generate code, execute scripts, install dependencies, run tests, and orchestrate multi-step development workflows autonomously. But with this power comes a fundamental truth:
1111

1212
> **Any system that lets an agent execute code must be isolated inside a secure container.**
1313
14-
Its a baseline safety requirement because agents execute arbitrary code.
14+
It's a baseline safety requirement because agents execute arbitrary code.
1515

16-
A code agents superpower is also its biggest risk: it executes arbitrary instructions based on the users goal. Not the _users exact words_, not the _literal command_, but the agents _interpretation_ of the goal.
16+
A code agent's superpower is also its biggest risk: it executes arbitrary instructions based on the user's goal. Not the _user's exact words_, not the _literal command_, but the agent's _interpretation_ of the goal.
1717

1818
This means the runtime must assume:
1919

@@ -23,15 +23,15 @@ This means the runtime must assume:
2323
- The agent might misunderstand intent.
2424
- The agent might invoke tools aggressively or destructively.
2525

26-
A safe agent is not one that never makes mistakes—it’s one that makes mistakes in a sandbox where they cant cause real damage.
26+
A "safe" agent is not one that never makes mistakes, it's one that makes mistakes in a sandbox where they can't cause real damage.
2727

2828
## Installing unexpected packages could be dangerous
2929

3030
We already know that importing packages can execute arbitrary code, while installing packages can also be dangerous. For Python packages, this happens when installing from the source code:
3131

3232
- the package can only be installed from the git repository
3333
- the package only provides source distribution on PyPI
34-
- the package wheel doesnt match the host environment and falls back to using the source distribution
34+
- the package wheel doesn't match the host environment and falls back to using the source distribution
3535

3636
Even though [PEP 517](https://peps.python.org/pep-0517/) requires creating an isolated environment for each build by default, this isolated environment is only for Python standard library and required build dependencies, meaning that it can still read the local secrets, send them through the network.
3737

@@ -76,9 +76,9 @@ Examples of sensitive data an agent could leak:
7676
- Kubernetes certificates.
7777
- Browser-stored OAuth tokens.
7878

79-
Accessing these files doesnt require any privilege. Even though the code agent can run in the mode that requires approval for each commands, users are unlikely to carefully review every commands, especially when the agent is working on complex tasks that require plenty of commands to be approved.
79+
Accessing these files doesn't require any privilege. Even though the code agent can run in the mode that requires approval for each commands, users are unlikely to carefully review every commands, especially when the agent is working on complex tasks that require plenty of commands to be approved.
8080

81-
You may wonder why the agents are trying to steal those secrets while your prompt doesnt ask for. Here is a real case:
81+
You may wonder why the agents are trying to steal those secrets while your prompt doesn't ask for. Here is a real case:
8282

8383
- [Google Antigravity Exfiltrates Data](https://www.promptarmor.com/resources/google-antigravity-exfiltrates-data)
8484

@@ -123,17 +123,17 @@ Running the agent inside a container changes the threat model:
123123

124124
## **Agents Can Break Your Local Environment**
125125

126-
Even if an agent isnt malicious, it can still be creatively destructive.”
126+
Even if an agent isn't malicious, it can still be "creatively destructive".
127127

128128
Typical failure modes:
129129

130130
- Deleting or overwriting important project files.
131131
- Modifying `/etc/*` configuration on Unix systems.
132132
- Messing with global package managers.
133133
- Killing local processes.
134-
- Running cleanup commands that dont discriminate.
134+
- Running cleanup commands that don't discriminate.
135135

136-
A stray `rm -rf .` isnt theoreticalit happens in the wild when agents attempt to clean up a workspace. Here is an example from Reddit:
136+
A stray `rm -rf .` isn't theoretical, it happens in the wild when agents attempt to "clean up" a workspace. Here is an example from Reddit:
137137

138138
- [Google Antigravity just deleted the contents of my whole drive](https://old.reddit.com/r/google_antigravity/comments/1p82or6/google_antigravity_just_deleted_the_contents_of/)
139139

@@ -146,24 +146,24 @@ In a container:
146146
- The damage is contained.
147147
- Rebuilding the environment is a single command.
148148

149-
The difference between oops and disaster is the presence of isolation.
149+
The difference between "oops" and "disaster" is the presence of isolation.
150150

151151
## **Agents Misinterpret Prompts**
152152

153153
LLMs are probabilistic systems, not deterministic interpreters.
154154

155155
Common misbehavior patterns:
156156

157-
- **Over-action**: taking steps you didnt explicitly ask for.
157+
- **Over-action**: taking steps you didn't explicitly ask for.
158158
- **Hallucinated commands**: fabricating CLI tools, URLs, or configs.
159-
- **Overgeneralization**: interpreting clean this up too broadly.
159+
- **Overgeneralization**: interpreting "clean this up" too broadly.
160160
- **Misunderstanding safety constraints**.
161161

162162
Examples seen in the wild:
163163

164-
- Remove some unnecessary files → deletes the entire working directory.
165-
- Optimize this config → rewrites the global environment.
166-
- Fix networking issues → modifies system DNS settings.
164+
- "Remove some unnecessary files" → deletes the entire working directory.
165+
- "Optimize this config" → rewrites the global environment.
166+
- "Fix networking issues" → modifies system DNS settings.
167167

168168
An example would be like:
169169

0 commit comments

Comments
 (0)