DevMate AI is an AI-powered CLI assistant for developers.
It helps developers ask technical questions from the terminal, explain errors, save useful fixes, search old solutions, and sync notes with a backend API.
- CLI + local SQLite notes + backend REST API + Docker.
- CLI root command
- CLI version command
- Ask command with mock AI provider
- Explain error from file
- Save developer notes locally
- List saved notes
- Search saved notes
- CLI config management
- Sync local notes with backend API
- Backend health API
- Backend notes API
- Backend search API
- Dockerized API
- Docker Compose setup
flowchart TD
User[Developer] --> CLI[Go CLI: devmate]
CLI --> LocalDB[(Local SQLite)]
CLI --> MockAI[Mock AI Provider]
CLI --> API[Dockerized Go REST API]
API --> APIDB[(SQLite Docker Volume)]
go run ./cmd/devmatego run ./cmd/devmate save --title "Docker permission fix" --body "Check mounted volume permission"go run ./cmd/devmate listdocker compose up --buildcurl http://localhost:8080/healthgo run ./cmd/devmate config set api_url http://localhost:8080
go run ./cmd/devmate syncGET /healthPOST /api/v1/notesGET /api/v1/notesGET /api/v1/notes/search?q=docker
go test ./...go build -o bin/devmate ./cmd/devmate
go build -o bin/devmate-api ./cmd/apidocker build -t devmate-api:local .
docker compose up --build
docker compose down- Go
- Cobra CLI
- SQLite
- net/http
- Docker
- Docker Compose
- Real AI provider
- Swagger API docs
- Cloud deployment
- GitHub Actions
- Kubernetes manifests
- Terraform starter
Generate Swagger docs:
swag init -g cmd/api/main.go -o internal/swaggerdocs --outputTypes go,json --parseInternal
Run API:
go run ./cmd/api
Open Swagger UI:
http://localhost:8080/swagger/index.html
Swagger JSON:
http://localhost:8080/swagger/doc.json