Package Exports
- optibot
- optibot/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (optibot) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
@optibot/cli
CLI tool for running AI code reviews powered by Optibot.
Install
npm install -g @optibot/cliAuthentication
Optibot CLI supports two authentication methods:
1. Browser-Based OAuth (Recommended for Interactive Use)
Best for local development and interactive CLI usage:
optibot loginThis will:
- Open your browser for login
- Automatically save your credentials
- Token expires after 90 days
Use this when:
- Setting up CLI on your local machine
- You have browser access
- Interactive development workflow
2. API Keys (For Automation & CI/CD)
Best for non-interactive environments:
First, authenticate via the CLI:
optibot login
Create an API key:
optibot apikey create ci-github-actions
The output includes the key (starts with
optk_). Copy it immediately — it is only shown once.Set the key as an environment variable:
export OPTIBOT_API_KEY=optk_your_key_here
You can also list and delete your keys:
# List all API keys
optibot apikey list
# Delete a key by ID
optibot apikey delete KEY_IDUse this when:
- Running in CI/CD pipelines (GitHub Actions, GitLab CI, etc.)
- Automated scripts or cron jobs
- Docker containers or headless environments
Environment Variables
OPTIBOT_API_KEY— Your API token (for automation/CI/CD)OPTIBOT_API_URL— Backend URL (defaults tohttps://agents.getoptimal.ai)
Usage
# Review local uncommitted changes
optibot review
# Review against the auto-detected base branch (origin/main, origin/master, or origin/develop)
optibot review -b
# Review changes against a specific branch
optibot review --branch origin/main
# Review an arbitrary diff file
optibot review --diff changes.patchBranch Review
When using -b / --branch, the CLI will:
- Auto-detect the base branch if no branch name is provided. It checks for
origin/main,origin/master, andorigin/developin that order. - Check for merge conflicts before submitting the review. If conflicts are detected with the target branch, a warning is displayed. The review still proceeds, but results may not reflect the final merged state.
- Generate a diff and collect file contents for the review.
Review Output
After each review, the CLI displays:
- Review Summary — general comments about the changes
- File Comments — per-file feedback with line numbers
- Rate limit info — reviews used, remaining quota, and time until reset. The display is color-coded:
- Dim when usage is normal
- Yellow when less than 10% of reviews remain
- Red when the quota is exhausted
CI/CD Integration
Setup
- Generate an API key (see API Keys above)
- Add it as a repository secret (e.g.,
OPTIBOT_API_KEYin GitHub → Settings → Secrets)
GitHub Actions
name: Code Review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Optibot CLI
run: npm install -g @optibot/cli
- name: Run code review
env:
OPTIBOT_API_KEY: ${{ secrets.OPTIBOT_API_KEY }}
run: optibot review --branch origin/${{ github.base_ref }}GitLab CI
code-review:
image: node:18
script:
- npm install -g @optibot/cli
- optibot review --branch origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME
variables:
OPTIBOT_API_KEY: $OPTIBOT_API_KEY
only:
- merge_requestsNote: CI/CD requires API keys — OAuth login is not available in non-interactive environments.
Commands
| Command | Description |
|---|---|
optibot login |
Authenticate via browser (OAuth) |
optibot logout |
Log out and remove saved credentials |
optibot review |
Review local uncommitted changes |
optibot review -b |
Review against auto-detected base branch |
optibot review -b <branch> |
Review against a specific target branch |
optibot review -d <file> |
Review a diff file |
optibot apikey create <name> |
Create a new API key |
optibot apikey list |
List all API keys |
optibot apikey delete <id> |
Delete an API key |
Requirements
- Node.js >= 18
- Git