As AI becomes more involved in operating infrastructure, there's a question I believe deserves more attention:
๐๐ก๐จ๐ฎ๐ฅ๐ ๐๐ง ๐๐ ๐๐ ๐๐ง๐ญ ๐๐ฑ๐๐๐ฎ๐ญ๐ ๐ฌ๐ก๐๐ฅ๐ฅ ๐๐จ๐ฆ๐ฆ๐๐ง๐๐ฌ ๐๐ข๐ซ๐๐๐ญ๐ฅ๐ฒ ๐๐ ๐๐ข๐ง๐ฌ๐ญ ๐ฉ๐ซ๐จ๐๐ฎ๐๐ญ๐ข๐จ๐ง?
I don't think it should. Not because AI isn't capable. Large language models are becoming remarkably good at reasoning through operational problems. The issue is the interface we've given them. Shells like Bash and PowerShell were designed for experienced humans. Their flexibility is incredibly powerful, but it also depends heavily on context, experience, and judgment.
Consider: systemctl restart nginx
An experienced administrator starts asking: โข Is this production? โข What depends on this service? โข Is there an active incident? โข Should I validate the configuration first? โข What happens if the restart fails?
The shell answers none of those questions. It simply executes the command.
Many AI operational workflows effectively look like: ๐๐๐ช๐ฎ๐๐ฌ๐ญ โ ๐๐ โ ๐๐ก๐๐ฅ๐ฅ ๐๐จ๐ฆ๐ฆ๐๐ง๐ โ ๐๐๐ฑ๐ญ ๐๐ฎ๐ญ๐ฉ๐ฎ๐ญ โ ๐๐ That creates several problems: โข AI must interpret inconsistent command output. โข Operational context lives outside the shell. โข Policies and approvals aren't inherent to execution. โข Platforms expose different commands and output formats. โข The runtime has little understanding of ๐ธ๐ฉ๐ข๐ต is actually being operated on.
I think we're asking AI to solve the wrong problem. Instead of teaching AI every shell command, perhaps we should give it a better operational interface. Imagine infrastructure represented as structured resources instead of arbitrary commands.
Instead of: ๐ด๐บ๐ด๐ต๐ฆ๐ฎ๐ค๐ต๐ญ ๐ณ๐ฆ๐ด๐ต๐ข๐ณ๐ต ๐ฏ๐จ๐ช๐ฏ๐น
an AI could request something conceptually like: ๐ด๐ท๐ค://๐ฏ๐จ๐ช๐ฏ๐น ๐ณ๐ฆ๐ด๐ต๐ข๐ณ๐ต
Now the runtimeโnot the language modelโcan determine: โข Is the resource valid? โข Is the operation supported? โข What depends on it? โข What's the risk? โข Does policy allow it? โข Is approval required? โข Can it be simulated first? โข How should it be audited?
That changes the question from "๐๐๐ง ๐ญ๐ก๐ ๐๐ ๐ ๐๐ง๐๐ซ๐๐ญ๐ ๐ญ๐ก๐ ๐ซ๐ข๐ ๐ก๐ญ ๐๐จ๐ฆ๐ฆ๐๐ง๐?" to "๐๐๐ง ๐ญ๐ก๐ ๐ซ๐ฎ๐ง๐ญ๐ข๐ฆ๐ ๐ฌ๐๐๐๐ฅ๐ฒ ๐๐ฑ๐๐๐ฎ๐ญ๐ ๐ญ๐ก๐ ๐ซ๐๐ช๐ฎ๐๐ฌ๐ญ?" To me, that's a much stronger foundation for enterprise AI.
It's one of the ideas behind an open-source project I've been building called ๐๐๐ฌ๐จ๐ฎ๐ซ๐๐ ๐๐ก๐๐ฅ๐ฅ (๐ซ๐๐ฌ๐ก). It explores a resource-oriented operational model designed for AI-assisted infrastructure rather than adapting command-line interfaces built decades ago.
As AI becomes more involved in production operations, should we continue giving agents direct access to shell commands, or is it time to rethink the operational interface?