env-ai
v0.4.0
Published
AI Assistant for Your Local Environment
Downloads
549
Maintainers
Readme
env-ai - AI Assistant for Your Local Environment
env-ai is an intelligent assistant tool for your terminal, designed to help you with tasks like documentation, performance optimization, refactoring, and more, using custom commands.
[!IMPORTANT]
env-ai needs the Ollama technology to work. Make sure you have it installed before using this CLI.
📑 Index
- 🌟 Features
- 📦 Installation
- 📖 Using the CLI
- 📚 Using the Library
- 🔍 Examples
- 👨💻 Development
- ☕ Donate
- 📜 License
- 🐦 About Us
🌟 Features
- 💬 Real-Time Chat: Interact with the AI assistant directly from your terminal.
- 🗃️ Robust context: Accepts URL and local file inputs so the wizard has more precise context of what to do.
- 🎨 Extensive Customization: Configure themes, inputs and outputs to your liking.
- 📄 Configuration File Support: Make your chat systems portable. Compatible with multiple formats, including
.mjs
,.js
,.json
,.yml
,.yaml
,.toml
, and.tml
. - ✈️ Portable: Create a chat system, save it in a configuration file and use it for other projects.
- 🌐 Multiple Environments:
- 📦 JavaScript Library: Easily integrable into your projects.
- 💻 Command Line Interface (CLI): Works in:
- 🟢 Node.js
- 🦕 Deno
- 🍞 Bun
- 🚀 Binary: Available for all operating systems and architectures via GitHub Releases.
📦 Installation
Install the CLI or add it as a dependency to your project:
## npm
npm install env-ai
## pnpm
pnpm add env-ai
## yarn
yarn add env-ai
# bun
bun add env-ai
# deno
deno add env-ai
global Installation
## npm
npm install -g env-ai
## pnpm
pnpm add -g env-ai
## yarn
yarn global add env-ai
without Installation
## npm
npx env-ai
## pnpm
pnpx env-ai
📖 Using the CLI
The env-ai CLI allows you to easily interact with the AI assistant. Here are some useful commands and options:
Main Commands
# Start a chat with the AI assistant
env-ai chat
Options
-i, --input
- Path patterns or URLs to be processed. (array)-m, --model
- Name of the Ollama model to use. (string)-p, --prompt
- Fist prompt to generate a response (text, path or url). (string)-s, --system
- Custom system text or path. (string)-t, --theme
- Topic of conversation (custom
,explain
,docs
,fix
,performance
,refactor
,tests
). (string)-o, --output
- Output path for the generated response. (string)--overwrite
- Behavior control if the output file exists (always
,ask
,last
). (boolean)--single
- Get only one response. (boolean)-c, --config
- Path to config file. Files supported: [.mjs|.js|.json|.yml|.yaml|.toml|.tml]. (string)--debug
- Debug mode. (boolean)-h, --help
- Show help. (boolean)-v, --version
- Show version number. (boolean)
📚 Using the Library
env-ai can also be integrated as a library into your JavaScript
or TypeScript
project.
Import Example
import { run } from 'env-ai';
run({
input: ['./src/**', 'https://example.com'],
theme: 'docs',
output: 'README.md',
});
Defined Configuration
Use defineConfig
to define a reusable configuration:
import { defineConfig } from 'env-ai';
export default defineConfig({
input: ['./src/**', 'https://example.com'],
theme: 'docs',
output: 'README.md',
});
🔍 Examples
You can see more examples here.
CLI
env-ai chat -i "./src/**" -t "docs" -o "output.md"
Library
import { run } from 'env-ai';
run({
input: ['./src/**', 'https://example.com'],
theme: 'docs',
output: 'README.md',
});
CLI With js
config file
env-ai chat --config dovenv.config.js
import { defineConfig } from 'env-ai';
export default defineConfig({
model: 'llama3.2:latest',
input: ['./src/**', 'https://example.com'],
theme: 'docs',
output: 'README.md',
});
CLI With json
config file
env-ai chat --config dovenv.config.json
{
"theme": "custom",
"system": "./your-system-content.txt"
}
CLI With toml
config file
env-ai chat --config documentation-context.toml
theme = "docs"
input = ["./docs", "./src"]
system = """
You are a helpful assistant explaining how to use the provided code library and provide detailed documentation.
The content for the following code library:
{{content}}
"""
CLI With yaml
config file
env-ai chat --config dovenv.config.yaml
theme: custom
system: ./your-system-content.md
CLI - Input with excluded files
It includes all SRC files that are at the upper level.
env-ai chat -i 'src/*' '!src/../*' -t 'docs' -o 'output.md'
👨💻 Development
env-ai is an open-source project and its development is open to anyone who wants to participate.
☕ Donate
Help us to develop more interesting things.
📜 License
This software is licensed with GPL-3.0.
🐦 About us
PigeonPosse is a ✨ code development collective ✨ focused on creating practical and interesting tools that help developers and users enjoy a more agile and comfortable experience. Our projects cover various programming sectors and we do not have a thematic limitation in terms of projects.
Collaborators
| | Name | Role | GitHub | | ---------------------------------------------------------------------------------- | ----------- | ------------ | ---------------------------------------------- | | | Angelo | Idea & Development & UI Design | @angelespejo | | | PigeonPosse | Collective | @PigeonPosse |