AutoConfigOSCLI
UtilityFeaturedOffline-first, reversible developer environment automation.
Installation
git clone https://github.com/mdwcoder/AutoConfigOSCLI.git && cd AutoConfigOSCLI && ./init.shDocumentation
AutoConfigOSCLI (v0.1.0)
Professional Environment Automation for Developers. Offline-first. Reversible. Hybrid AI.
🚀 Introduction
AutoConfigOSCLI is a command-line tool designed to set up, maintain, and replicate professional development environments across Linux and macOS.
Unlike simple dotfile managers, it provides a holistic approach:
- Context-Aware: Adapts to your hardware (RAM, CPU), machine type (Laptop/Server), and role (Frontend/Backend).
- Tiered Profiles: Choose between
Lite(CLI-only),Mid(Balanced), orFull(Batteries-included) stacks. - Safe & Reversible: Every change is tracked. Built-in
audit,backup, anddowngradecapabilities. - Agentless Remote Management: Configure remote servers via SSH without installing persistent agents.
🛡️ Core Principles
- Offline-First: Core logic, profile resolution, and validation work without internet. AI is an optional layer.
- Reversible: State is tracked in a local SQLite database. You can roll back changes (
downgrade). - Idempotent: Running the same command twice is safe.
- Transparent AI: AI explains, recommends, and verifies, but never executes without your confirmation.
- Agentless: No background daemons. SSH connections use your native system configuration.
📦 Installation
git clone https://github.com/yourusername/AutoConfigOSCLI.git
cd AutoConfigOSCLI
./init.sh
What init.sh does:
- Checks for Python 3.
- Creates a virtual environment.
- Installs dependencies.
- Links the
autoconfigosclicommand to your shell (e.g.,~/.local/binor alias).
What it does NOT do:
- It does NOT install packages on your system.
- It does NOT modify your root files.
🎮 Basic Usage (Safe Demo)
You can explore the tool without making any changes using --dry-run.
1. List Profiles
See all available official profiles:
autoconfigoscli profiles list
2. Inspect a Profile
See exactly what a profile includes:
autoconfigoscli profiles show backend-python-dev-postgresql-mid
3. Dry-Run Install
Simulate an installation to see the exact commands that would be executed:
autoconfigoscli install backend-python-dev-postgresql-mid --dry-run --verbose
Output will show plan: [System] Install python3, [Flatpak] Install vscode, etc.
🏗️ Profiles & Tiers
We strictly categorize profiles to prevent bloat.
| Tier | Focus | Typical Tools | Editors |
|---|---|---|---|
| Lite | Efficiency, Low Resources, SSH | TUI Apps, CLI Clients | micro, neovim |
| Mid | Standard Workflow | Docker, Language Runtimes | vscode |
| Full | Productivity Powerhouse | GUI Databases, IDE Suites | jetbrains-toolbox, pycharm, dbeaver |
Variants:
- PostgreSQL: Includes
psql(Lite) orpostgresql-server(Mid/Full). - MongoDB: Includes
mongosh(Lite) orcompass(Full).
Examples:
general-dev-lite: Git, Micro, Ripgrep, Htop.fullstack-node-dev-postgresql-mid: Node, PNPM, VS Code, Docker, Postgres.
🛠️ User & Manual Mode
Manual Selection
Interactive package picker using FZF:
autoconfigoscli manual
User Profiles
Create your own mix:
autoconfigoscli profiles user create my-custom-stack
🔄 Updates & Backups
Update Tool:
autoconfigoscli update
Restore State: Pass a backup JSON to revert your system state:
autoconfigoscli downgrade --backup ~/.autoconfigos/backups/state_20231020.json
🩺 Diagnostics
autoconfigoscli doctor: Checks dependencies, internet, and disk space.autoconfigoscli audit: Scans your hardware and OS details.autoconfigoscli whoami: View/Edit your user identity (Role, Preferences).
🧠 Hybrid AI
Privacy First:
- Local Engine: Recommendations run locally 100% of the time based on RAM/CPU/Role.
- Optional Cloud: You can configure Gemini/OpenAI for "Explain" features.
- PII Scrubbing: Paths (
/home/user) and sensitive env vars are scrubbed before sending queries.
# Set Provider (Optional)
autoconfigoscli ai config provider set gemini
# Ask questions
autoconfigoscli ai ask "Why should I use podman instead of docker?"
📡 Remote SSH Management
Manage remote machines as easily as your local one.
# Check remote status
autoconfigoscli remote status user@192.168.1.50
# Install profile remotely (Dry Run)
autoconfigoscli remote install user@server.local backend-python-dev-mongodb-lite --dry-run
Features:
- Bootstrap: Auto-installs git/python if missing.
- Ephemeral: Clones tool to
/tmp, executes, and deletes itself. - Copy Profile: Transfer your local user profile to remote:
--copy-user-profile my-stack.
🔒 Security & Trust
- No Credentials: We never ask for or store sudo passwords (sudo handles it).
- No Telemetry: Your data stays on your machine.
- Explicit Confirmation: Destructive actions always strictly require user confirmation.
Generated by AutoConfigOSCLI v0.1.0