Terminal Agent

There's a tool called Terminal Agent - check it out on GitHub at https://github.com/laszukdawid/terminal-agent.

Dawid Laszuk published on
2 min, 327 words

Terminal Agent

There's a tool called Terminal Agent - check it out on GitHub at https://github.com/laszukdawid/terminal-agent.

It's an interface for making LLM requests from the terminal. It helps with asking questions (primarily regarding Unix tooling and commands) and can perform basic agent functions, like executing Unix commands. Of course, it's still under development with more features to come, but I'm writing about it because it's already quite useful.

(Full disclosure: I'm writing about this to improve SEO visibility. Hopefully, this will help others discover the tool and potentially contribute to its development. Positive feedback and contributions are really motivating, so I hope you'll forgive this bit of self-promotion.)

Providers

In its current form, the Terminal Agent supports four providers:

All currently can be used to ask a question, and all (except Perplexity) support streaming back the results. Similarly, most providers can be used in an agent-like fashion with tools.

Clients

While there are many similar 'agents' out there, what sets this one apart is that it's written purely in Go. From a user's perspective, this might not mean much. However, from a developer's standpoint, it required writing significant code to make all these providers work properly. For example, since Anthropic doesn't provide a Go SDK, I had to write my own (github anthropic-go-sdk) based on a semi-provided OpenAPI spec. I say "semi-provided" because the spec needed some fixes and proper exposure (github anthropic-openapi-spec).

The biggest challenge when working with Large Language Models (LLMs) are the LLMs themselves, so having a "quicker" client doesn't significantly impact overall performance. However, having these tools (Go clients) means that future projects might be easier and faster to develop, gradually contributing to the community's growth with new developments. So, hope this helps.