In-house CLI agentic tool for NashTech โ define, manage, and invoke AI agents from anywhere.
Project description
๐ค NashAgents
In-house CLI agentic tool for NashTech โ define, manage, and invoke AI agents from anywhere.
NashAgents is a pip-installable CLI tool that lets your team run pre-built domain-specific AI agents or create custom ones through simple YAML config files.
โก Quick Start
# Install
cd cli_agentic_tool_tryout
pip install -e .
# See all agents
nashagents list
# Run an agent
nashagents run backend-dev
# Create a custom agent
nashagents create my-agent --interactive
๐ฆ Installation
From source (development)
git clone <repo-url>
cd cli_agentic_tool_tryout
pip install -e .
As a package (production)
pip install nashagents
๐ Configuration
1. Set up your LLM provider
Copy the env template and add your API key:
cp .env.example .env
# Edit .env with your keys
Supported providers (via litellm):
| Provider | Environment Variable | Model Format |
|---|---|---|
| OpenAI | OPENAI_API_KEY |
openai/gpt-4o |
| Azure OpenAI | AZURE_API_KEY + AZURE_API_BASE |
azure/gpt-4o |
| Google Gemini | GEMINI_API_KEY |
gemini/gemini-pro |
| Anthropic | ANTHROPIC_API_KEY |
anthropic/claude-3-sonnet |
2. Initialize config
nashagents init
This creates ~/.nashagents/ with default configuration.
3. Set a default model
nashagents config --set-model openai/gpt-4o
๐ค Pre-built Agents
| Agent | Description | Tags |
|---|---|---|
backend-dev |
Backend APIs, databases, microservices | development, backend, python |
frontend-dev |
React, Angular, Vue, CSS, responsive UI | development, frontend, ui |
devops |
Docker, K8s, CI/CD, cloud, IaC | infrastructure, devops, cloud |
qa-engineer |
Test strategies, automation, quality | testing, qa, automation |
technical-writer |
Docs, APIs, READMEs, tutorials | writing, documentation |
code-reviewer |
Code quality, security, performance | review, security, quality |
data-engineer |
ETL, SQL, pipelines, analytics | data, etl, sql, pipeline |
architect |
System design, HLD/LLD, tech stack | architecture, design |
๐ CLI Commands
List agents
nashagents list # All agents
nashagents list --tag backend # Filter by tag
Run an agent
nashagents run backend-dev # Interactive chat
nashagents run backend-dev --model openai/gpt-4o # Override model
nashagents run code-reviewer --message "Review app.py" # Single shot
nashagents run frontend-dev --no-stream # Disable streaming
Interactive session commands
| Command | Action |
|---|---|
/help |
Show available commands |
/model |
Show current model |
/tokens |
Show message count |
/clear |
Clear conversation history |
/agent |
Show agent details |
/quit |
Exit session |
Create a custom agent
# Quick create
nashagents create my-agent -d "My custom agent" -s "You are a helpful assistant"
# Interactive wizard
nashagents create my-agent --interactive
# With all options
nashagents create security-auditor \
--description "Security audit specialist" \
--system-prompt "You are a cybersecurity expert..." \
--model openai/gpt-4o \
--tools shell,file_read \
--tags security,audit
Manage agents
nashagents info backend-dev # Show agent details
nashagents delete my-agent # Delete custom agent
nashagents config --show # Show config info
๐ Custom Agent Config (YAML)
Create custom agents by adding YAML files to ~/.nashagents/agents/:
name: "security-auditor"
description: "Security audit specialist for code and infrastructure"
version: "1.0"
system_prompt: |
You are a cybersecurity expert specializing in application security.
Analyze code for vulnerabilities, misconfigurations, and security risks.
Follow OWASP guidelines and provide remediation steps.
model: "openai/gpt-4o" # Optional: override default model
temperature: 0.2 # Low for precise analysis
max_tokens: 4096
tools: # Available: shell, file_read, file_write, web_search
- shell
- file_read
tags:
- security
- audit
- compliance
๐ง Available Tools
| Tool | Description |
|---|---|
shell |
Execute shell commands (tests, builds, git, etc.) |
file_read |
Read file contents |
file_write |
Write/create files |
web_search |
Search the web (requires API key) |
๐๏ธ Project Structure
nashagents/
โโโ __init__.py # Package metadata
โโโ cli.py # CLI commands (Click)
โโโ config.py # YAML config management
โโโ runner.py # Agent execution engine
โโโ tools.py # Built-in tool implementations
โโโ ui.py # Rich terminal UI
โโโ builtin_agents/ # Pre-built agent YAML configs
โโโ backend_dev.yaml
โโโ frontend_dev.yaml
โโโ devops.yaml
โโโ qa_engineer.yaml
โโโ technical_writer.yaml
โโโ code_reviewer.yaml
โโโ data_engineer.yaml
โโโ architect.yaml
๐ค Adding Agents for Your Team
- Create a YAML config in
~/.nashagents/agents/ - Share configs via your org's git repo or internal package registry
- Override built-in agents by creating a custom agent with the same name
๐ License
MIT
Project details
Release history Release notifications | RSS feed
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 nashagents-0.1.0.tar.gz.
File metadata
- Download URL: nashagents-0.1.0.tar.gz
- Upload date:
- Size: 27.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65293213e76d802f2a01ef79f163d8cc223a90332f43b02cc6e09fce5bca73e2
|
|
| MD5 |
1a6ab4f7194f0cd592696a7178f82678
|
|
| BLAKE2b-256 |
65fe4191c14d3fdf593234a952a944d6809aa71e938bea071f860992396241f2
|
File details
Details for the file nashagents-0.1.0-py3-none-any.whl.
File metadata
- Download URL: nashagents-0.1.0-py3-none-any.whl
- Upload date:
- Size: 31.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e130563eb48486e036836c2559363a8e4188c8c8c182078feb76946a5b3a71ed
|
|
| MD5 |
d245b41dd80706596d812f8c75865040
|
|
| BLAKE2b-256 |
8f3c8785e14f4663505503ebf1688338e52b67ed044a6f2533d08172d87738fc
|