AI agent for installing tools and running projects.
Project description
Setup Agent
AI Agent responsible for installing all the necessary tools and dependencies and running the app, built with Python and LangGraph.
Getting started
Development environment
- Install
uvaccording to the Astral docs - In your terminal run the following commands:
uv sync # install all dependencies
uv run pre-commit install # install pre-commit hooks
For the testing purposes, run:
source .venv/bin/activate
python src/cli/app.py setup run
CLI
In order to install the CLI globally, use provided installation scripts:
uv build # or ./scripts/build.sh
./scripts/install.sh
Then you can use the tool globally by running:
setup-agent setup run
In order to uninstall the tool globally:
./scripts/uninstall.sh
Usage
Environment variables
To make the tool working you will need 2 API keys:
TAVILY_API_KEY- key for Tavily (web search layer for agents)- an API key for your LLM provider, e.g
OPENAI_API_KEYforOpenAImodels (i.e.gpt-4o) orANTHROPIC_API_KEYforAnthropicmodels (i.e.claude-sonnet-4-5). For full list of possible integrations, please check out these Langchain docs (and make sure to install langchain package for given provider usinguvif you're using provider other thanOpenAIorAnthropic).
The easiest way to use the tool is to add these 2 API keys to the .env file located where the cli is used:
# .env
TAVILY_API_KEY=...
OPENAI_API_KEY=...
ANTHROPIC_API_KEY=...
For extended debugging and tool usage metrics, please consider adding these Langsmith related variables:
# .env
LANGSMITH_TRACING=...
LANGSMITH_ENDPOINT=...
LANGSMITH_API_KEY=...
LANGSMITH_PROJECT=...
Configuration options
The CLI runs an interactive script that allows user to configure everything and define the problem:
| Option | Type | Description | Default | Required |
|---|---|---|---|---|
Project root |
str | Path to the root of the project (needs to be a valid directory) | Current directory | Yes |
Guideline files |
List[str] | Optional list of guideline files. If no guidelines files are specified at this point, agent will suggest all relevant files to the user. | - | No |
Task |
str | Predefined goal to achieve by the agent. If task is not defined, agent will suggest some tasks to the user. |
- | No |
Model |
str | LLM model to be used as a core reasoning model. For a full list of available models check out these Langchain docs | anthropic:claude-sonnet-4-5 |
No |
The script allows for optional, extended model configuration as well:
| Option | Type | Description | Default | Required |
|---|---|---|---|---|
Temperature |
float | Controls randomness of the model. Must be a number between 0.0 and 1.0 |
Model's default value | No |
Max output tokens |
int | Max output tokens of the model. | Model's default value | No |
Timeout |
int | Timeout for LLM calls in seconds. | Model's default value | No |
Max retries |
int | Max number of retries for LLM calls. | Model's default value | No |
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file setup_agent-0.2.6.tar.gz.
File metadata
- Download URL: setup_agent-0.2.6.tar.gz
- Upload date:
- Size: 88.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48dae33c9c1e23444a95a1ff558b294c63fda08b70d03a093217ec92f24f41d1
|
|
| MD5 |
a40a7dfaf808d2cb68168a9cbeef96b5
|
|
| BLAKE2b-256 |
71d7caace0a0d38caa0b427a8e97512f0b60090ae4783aa76be63c2adcf7a1a7
|
Provenance
The following attestation bundles were made for setup_agent-0.2.6.tar.gz:
Publisher:
release.yml on software-mansion-labs/setup-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
setup_agent-0.2.6.tar.gz -
Subject digest:
48dae33c9c1e23444a95a1ff558b294c63fda08b70d03a093217ec92f24f41d1 - Sigstore transparency entry: 829267436
- Sigstore integration time:
-
Permalink:
software-mansion-labs/setup-agent@fcdcacb49595a79d411a1a058e47e3db37c46cf4 -
Branch / Tag:
refs/heads/chore/release-workflow - Owner: https://github.com/software-mansion-labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@fcdcacb49595a79d411a1a058e47e3db37c46cf4 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file setup_agent-0.2.6-py3-none-any.whl.
File metadata
- Download URL: setup_agent-0.2.6-py3-none-any.whl
- Upload date:
- Size: 134.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4e6b807c15409718a1b9aa86544547fb5c8f9e914e095b250238f7264aacedf
|
|
| MD5 |
f2c2d67cd3410b5fa7870c58bcb47e1c
|
|
| BLAKE2b-256 |
a91fda263332f82e4ed8da455d3194668b0eb586866ed0e8c4a275c05fc4c940
|
Provenance
The following attestation bundles were made for setup_agent-0.2.6-py3-none-any.whl:
Publisher:
release.yml on software-mansion-labs/setup-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
setup_agent-0.2.6-py3-none-any.whl -
Subject digest:
d4e6b807c15409718a1b9aa86544547fb5c8f9e914e095b250238f7264aacedf - Sigstore transparency entry: 829267438
- Sigstore integration time:
-
Permalink:
software-mansion-labs/setup-agent@fcdcacb49595a79d411a1a058e47e3db37c46cf4 -
Branch / Tag:
refs/heads/chore/release-workflow - Owner: https://github.com/software-mansion-labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@fcdcacb49595a79d411a1a058e47e3db37c46cf4 -
Trigger Event:
workflow_dispatch
-
Statement type: