Aura is a terminal-first, AI-powered coding agent designed to augment the developer workflow. It operates as an interactive Terminal User Interface (TUI) that integrates conversational AI directly into the developer's primary work environment.
- Security-First Design: Trust prompts for new directories with explicit user consent
- Interactive Terminal Interface: Beautiful TUI built with Bubble Tea
- Slash Commands: Quick access to common operations
- File System Integration: Read, analyze, and modify files with AI assistance
- Command Execution: Secure shell command execution with confirmation prompts
- Git Integration: Built-in Git operations and workflow support
- Configuration Management: User-specific settings stored in
~/.aura.conf
- Clone or download the project
- Make sure you have Go 1.19+ installed
- Build the application:
go build -o aura .
- Move the binary to your PATH (optional):
# On Windows
move aura.exe C:\Windows\System32\
# On macOS/Linux
sudo mv aura /usr/local/bin/
Launch Aura in your current directory:
aura
Or specify a directory:
aura /path/to/your/project
On first run in a new directory, Aura will show a security prompt:
π SECURITY TRUST PROMPT
Aura wants to access: /path/to/your/project
β οΈ WARNING: This will allow Aura to read/write files and execute commands.
1. Yes, proceed
2. No, exit
Choose an option (1-2):
Choose option 1 to trust the directory and proceed.
After the welcome screen, you'll see the main interface:
Aura - AI Coding Agent | /path/to/your/project
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
> Type your request or use /help for commands...
/help
- Show available commands/status
- Display current status and configuration/edit <file>
- Open file for AI-assisted editing/run <command>
- Execute a shell command (with confirmation)/test
- Run project tests/commit
- Interactive Git commit process
You can also type natural language requests:
- "Create a new file called user.go with a User struct"
- "Add error handling to the main function"
- "Show me the contents of package.json"
- "Run the tests for this project"
- Directory Trust: Explicit approval required for new directories
- Command Confirmation: All shell commands require user confirmation
- File Change Confirmation: File modifications show diffs and require approval
Aura stores configuration in ~/.aura.conf
(YAML format):
llm_provider: "anthropic" # or "openai"
api_key: "your-api-key-here"
trusted_dirs:
- "/path/to/trusted/project1"
- "/path/to/trusted/project2"
theme: "default"
default_model: "claude-3-sonnet-20240229"
auto_update: true
Before using AI features, you need to configure your API key:
- Create or edit
~/.aura.conf
- Add your API key:
llm_provider: "anthropic" # or "openai"
api_key: "your-api-key-here"
- Go 1.19 or later (for building from source)
- Terminal with color support
- API key for supported LLM provider (Anthropic Claude or OpenAI)
- Windows (with WSL recommended)
- macOS (x86/ARM)
- Linux
aura/
βββ app/ # Application logic and routing
βββ cmd/ # Command-line interface
βββ config/ # Configuration management
βββ models/ # Data models and types
βββ ui/ # User interface components
βββ main.go # Entry point
βββ go.mod # Go module definition
βββ README.md # This file
# Download dependencies
go mod tidy
# Build for current platform
go build -o aura .
# Build for specific platforms
GOOS=linux GOARCH=amd64 go build -o aura-linux-amd64 .
GOOS=darwin GOARCH=amd64 go build -o aura-darwin-amd64 .
GOOS=windows GOARCH=amd64 go build -o aura-windows-amd64.exe .
Aura uses GitHub Actions for automated testing, code quality checks, and releases:
- β Cross-platform testing (Linux, Windows, macOS)
- β Multi-version Go support (1.20, 1.21)
- β Comprehensive test suite (Unit, Integration, E2E, Benchmarks)
- β Code quality analysis (golangci-lint)
- β Security scanning (gosec)
- β Code formatting verification
- β Dependency management checks
main
anddevelop
branches are protected- All PRs require passing CI checks
- At least one approving review required
- No direct pushes to protected branches
- Automatic releases on
main
branch pushes - Cross-platform binary builds
- Semantic versioning
- Release notes generation
See CONTRIBUTING.md for detailed contribution guidelines.
Aura includes a comprehensive test suite with 145+ tests:
# Run all tests with our custom test runner
go run test_runner.go
# Run specific test categories
go test ./config # Unit tests
go test ./app # Integration tests
go test ./e2e # End-to-end tests
# Run with coverage
go test -cover ./...
# Run benchmarks
go test -bench=. ./...
- Unit Tests (101): Test individual components (config, llm, models)
- Integration Tests (8): Test component interactions (app)
- End-to-End Tests (21): Test complete workflows (e2e)
- Benchmark Tests (15): Performance testing
See TESTING.md for detailed testing documentation.
- Fork the repository
- Create a feature branch from
develop
- Make your changes following our guidelines
- Add tests for new functionality
- Ensure all CI checks pass
- Submit a pull request to
develop
This project is licensed under the MIT License.
Aura is designed with security as a primary concern:
- No automatic file modifications without user consent
- No command execution without explicit confirmation
- Directory-based trust model
- All operations are logged and transparent
If you discover a security vulnerability, please report it responsibly.