@pronative.ai/doctor
v1.0.3
Published
CLI to check and install AI Assisted (AS) and AI Native (AN) development tools on macOS and Windows
Readme
pronative.ai
CLI tool to check and install AI Assisted (AS) and AI Native (AN) development tools on macOS and Windows.
Installation & Execution
You can run the tool directly using npx (recommended to ensure you are always using the latest tool configurations) or install it globally.
[!NOTE] In PowerShell, npm package scopes beginning with
@must be wrapped in quotes to prevent PowerShell's splatting operator parser error.
Option 1: Run directly via npx (Recommended)
npx "@pronative.ai/doctor" <group> <action>Option 2: Install globally
npm install -g "@pronative.ai/doctor"Usage
If running via npx:
npx "@pronative.ai/doctor" <group> <action>If installed globally:
pronativeai <group> <action>Commands
| Command | Description |
|---------|-------------|
| pronativeai help | Show help message |
| pronativeai version | Show version |
| pronativeai as check | Check which AI Assisted tools are installed |
| pronativeai as install | Install missing AI Assisted tools |
| pronativeai an check | Check all AS + AN tools |
| pronativeai an install | Install all missing tools (AS + AN) |
Groups
| Group | Description |
|-------|-------------|
| as | AI Assisted — core development toolchain |
| an | AI Native — includes all AS tools plus AI-specific additions |
Actions
| Action | Description |
|--------|-------------|
| check | Verifies each tool without installing anything |
| install | Installs any missing tools |
Examples
# Check AI Assisted tools
pronativeai as check
# Install everything (AS + AN)
pronativeai an install
# Quick help
pronativeai helpConfiguration
The tool reads from a config.json file with two groups: as and an.
Structure
{
"as": [
{
"name": "Node.js (Runtime)",
"description": "JavaScript runtime",
"verificationCommand": "node -v",
"macOS": { "type": "formula", "id": "node" },
"windows": { "type": "winget", "id": "OpenJS.NodeJS" },
"expectedVersion": "18.0.0"
}
],
"an": [
{
"name": "Docker Desktop",
"description": "Container runtime",
"verificationCommand": "docker --version",
"macOS": { "type": "cask", "id": "docker" },
"windows": { "type": "winget", "id": "Docker.DockerDesktop" },
"expectedVersion": "20.10.0"
}
]
}Use a custom config:
pronativeai as check --config=./my-config.jsonSoftware Entry Fields
| Field | Required | Description |
|-------|----------|-------------|
| name | Yes | Display name |
| description | No | Short description |
| verificationCommand | Yes | Command to check if installed (exit 0 = installed) |
| verificationContains | No | If set, checks command output for this string instead of exit code |
| verificationCommandMacOS | No | Override verification command on macOS |
| verificationCommandWindows | No | Override verification command on Windows |
| expectedVersion | No | If specified, compares installed version to ensure it is >= this expected version |
| macOS | No | Install config for macOS (required to install) |
| windows | No | Install config for Windows (required to install) |
Install Types
| Type | Platform | Description |
|------|----------|-------------|
| formula | macOS | brew install <id> |
| cask | macOS | brew install --cask <id> |
| winget | Windows | winget install --id <id> --silent |
| vscode-extension | Both | code --install-extension <id> --force (with VSIX fallback) |
| command | Both | Runs a custom install command |
| bundled | Both | No install needed (comes with another tool) |
| npm-package | Both | npm install -g <id> |
Current Tool List
AI Assisted (as)
| Tool | Verification | Install macOS | Install Windows |
|------|-------------|---------------|-----------------|
| Node.js (Runtime) | node -v | formula node | winget OpenJS.NodeJS |
| npm | npm -v | bundled | bundled |
| npx | npx --version | bundled | bundled |
| Git CLI | git --version | formula git | winget Git.Git |
| GitHub CLI | gh --version | formula gh | winget GitHub.cli |
| GitHub Auth | gh auth status | command gh auth login --web | command |
| Visual Studio Code | code -v | cask visual-studio-code | winget Microsoft.VisualStudioCode |
| VS Code GitHub Extension | code --list-extensions | vscode-extension | vscode-extension |
| VS Code GitHub Copilot | code --list-extensions | vscode-extension | vscode-extension |
| Azure CLI | az --version | formula azure-cli | winget Microsoft.AzureCLI |
| OpenCode CLI | opencode --version | npm-package opencode | npm-package |
| .NET SDK 10 | dotnet --list-sdks | cask dotnet-sdk | winget Microsoft.DotNet.SDK.10 |
| Terminal | platform-specific | cask iterm2 | winget Microsoft.WindowsTerminal |
AI Native (an) — additional
| Tool | Verification | Install macOS | Install Windows |
|------|-------------|---------------|-----------------|
| Docker Desktop | docker --version | cask docker | winget Docker.DockerDesktop |
| Azure Developer CLI | azd version | formula azure/azd/azd | winget Microsoft.Azd |
| Foundry Toolkit for VS Code | code --list-extensions | vscode-extension | vscode-extension |
Requirements
Development
# Install dependencies
npm install
# Build
npm run build
# Run with ts-node (no build step)
npm start
# Or specify subcommand
npx ts-node src/index.ts as checkLicense
MIT
