🤖 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
Metadata
Release files for nashagents 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| nashagents-0.1.0.tar.gz | 27.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nashagents-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 58.7 kB
Release files / nashagents-0.1.0.tar.gz
| Download URL | nashagents-0.1.0.tar.gz |
|---|---|
| Size | 27.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
65293213e76d802f2a01ef79f163d8cc223a90332f43b02cc6e09fce5bca73e2
|
|
BLAKE2b-256 checksum How to use checksums |
65fe4191c14d3fdf593234a952a944d6809aa71e938bea071f860992396241f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.7
|
Release files / nashagents-0.1.0-py3-none-any.whl
| Download URL | nashagents-0.1.0-py3-none-any.whl |
|---|---|
| Size | 31.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e130563eb48486e036836c2559363a8e4188c8c8c182078feb76946a5b3a71ed
|
|
BLAKE2b-256 checksum How to use checksums |
8f3c8785e14f4663505503ebf1688338e52b67ed044a6f2533d08172d87738fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.7
|
Security for nashagents 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.