langchain icon indicating copy to clipboard operation
langchain copied to clipboard

community: Terminal tool

Open panasenco opened this issue 9 months ago • 3 comments

Description

Allow AI agents to interact with a terminal window through tmux.

There's already a shell tool but it's limited to just executing commands and returning the output. What if an AI agent could have full access to a terminal window and be able to see the contents of the window, interrupt long-running processes with Ctrl+C, and even use text editors like Vim?

It's worth noting that the current generation of LMs is completely incapable of utilizing full terminal access to do anything impressive. However at the rate progress is being made, it's safe to say that this limitation will be gone by the end of the year.

Dependencies

Depends on the tmux system package being installed and the libtmux Python package. However, I think I succeeded in making the tests I added skip if libtmux is not installed, so I didn't have to modify pyproject.yml.

Twitter handle: twitter.com/panasenco

panasenco avatar May 14 '24 19:05 panasenco

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
langchain ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 20, 2024 11:42pm

vercel[bot] avatar May 14 '24 19:05 vercel[bot]

@panasenco thank you for the PR -- code looks clean and thanks for including tests.

We don't have a good opinion yet on where to place tools that are similar to this one (e.g., terminal tools or python interpreter tools).

The problem is that we've been getting CVEs filed against the code base due to the more dangerous tools.

@baskaryan / @efriis should we consider cutting a separate package for tools that involve dealing with terminal or python access etc?

eyurtsev avatar May 14 '24 20:05 eyurtsev

I think excluding terminal and Python and similar tools will limit the capabilities of langchain. Sooner or later someone else will come along and include these tools in their project and will gain popularity. Organizations that are concerned about these generic and widespread tools becoming available in langchain are likely so risk-averse that they are not using LLMs to begin with. Open source software comes with no warrantees and that's part of the deal. Just my two cents.

fehtemam avatar May 15 '24 22:05 fehtemam

Hi @eyurtsev and @panasenco any updates on the tests that are failing and getting this merged? This seems like a great tool!

lucasrothman avatar Jun 16 '24 02:06 lucasrothman

Thank you for the PR. This PR is marked Needs Support and has not yet received the 5 upvotes required by maintainers for review. It has been open for at least 25 days. Per the LangChain review process, this PR will be closed in 5 days if it does not reach the required threshold.

The Needs Support status is intended to prioritize review time on features that have demonstrated community support. If you feel this status was assigned in error or need more time to gather the required upvotes, please ping (at)ccurme and (at)efriis.

langcarl[bot] avatar Nov 04 '24 19:11 langcarl[bot]