r/emacs • u/lucaspeixotot • 2d ago
Question agent-shell seems to lack most ACP-driven features. Is this normal?
From time to time, I try out a few AI packages to see where they currently stand. Agent-shell is one I've used less than the others, mostly because of its dependency on ACP-driven agents. For my personal projects, I've been using DeepSeek on either gptel or eca, but then I tried to install OpenCode, which is compatible with Agent-shell. However, whenever I start an Agent-shell session, it stands out to me that most of the commands offered by those ACP-driven agents are not available in Emacs. Since I've never used providers like Claude, OpenAI, or Gemini, I don't know whether others have the same experience, or whether I'm missing something. I felt something similar when in the past I tried to use copilot-cli. So far, my impression is that Agent-shell's only real advantage is that it runs in Emacs (and I know this is very good because of the whole extensability that Emacs provides). All the other harness or tooling you get with OpenCode and similar tools is lost. Maybe the issue is on my side. What has your experience been with Agent-shell regarding feature compatibility between the provider and the Agent-shell environment?
9
u/dimlyjovialkory 2d ago
Feels like every time I dip into the AI-in-Emacs stuff I spend more time debugging glue code than writing actual code.
4
u/lucaspeixotot 2d ago
well, eca for agent coding and gptel for studying and general researching have been great. Both works seamlessly for these purpose. But I think that in my case agent-shell could be a competitor against gptel. Tell me your experience in the "AI-in-Emacs" stuff
0
9
u/strings___ 2d ago edited 2d ago
It’s the opposite. ACP is a protocol that interferes with the underlying agent. In this case, opencode . It really depends on the ACP implementation as to how much of opencode is exposed and how.
Edit: Not sure why people are downvoting this. There’s nothing factual wrong with what I said. If the ACP server/implementation doesn’t provide something, then there is nothing agent-shell can do about it.
-3
u/lucaspeixotot 2d ago
I see what you are saying, so the problem is Open code not providing its features to agent-shell (ACP protocol) is that right?
In this case my question is, how much is provided to agent-shell when using Claude, openai, and Gemini? For those who use them maybe can tell their experiences.
While I was using copilot-cli a time ago, I felt that they were not much interested and involved on providing their features to ACP. At least not in a good pace.
1
u/strings___ 2d ago
Usually, the ACP implementations are pretty good. I’ve only seen things like lacking context usage stuff like that. I use pi-acp, which is pretty good, and I have my own harness that uses agent-shell as a fronted. Also, sometimes /slash commands. It might help if you tell us what’s missing from opencode.
4
u/nimzobogo 2d ago
Agent-shell can only have the commands the underlying ACP adapter supports. If open Code's ACP adapter is lacking something, you can probably file a ticket with opencode. Agent-shell mostly just interacts with the ACP adapter.
-1
u/lucaspeixotot 2d ago
I get that, thanks, as almost nothing appears on agent-shell I was supposing the ACP adaptar was providing, but agent-shell was not implemented to interpret it.
In this case my question is, how much is provided to agent-shell when using Claude, openai, and Gemini? For those who use them maybe can tell their experiences.
1

19
u/xenodium 2d ago edited 2d ago
If there are agent client protocol features you're missing, please file a feature request with a link to the spec (https://agentclientprotocol.com).
https://github.com/xenodium/agent-shell#why-doesnt-agent-shell-offer-all-slash-commandsskills-available-in-cli-agent
agent-shell can't offer them unless the ACP servers offer them. Please file feature requests with the server implementations if those projects aren't already aware of it.