CLI Reference

The vibe command-line tool for managing VibeHub projects.

Installation

# macOS / Linux
curl -fsSL https://getvibehub.com/install.sh | sh

vibe init

vibe init [name]

Initialize a new VibeHub project. Creates a .vibe/ directory with starter files including meta.json, project.json, and a template feature spec.

FlagDefaultDescription
-d, --dir.Target directory

Example:

$ vibe init my-app
Created .vibe/ in ./my-app
  1 feature, 0 requirements

vibe clone

vibe clone <owner/repo>

Clone a VibeHub project from the remote. Fetches all feature specs and requirements, and creates a remote.json for syncing.

FlagDefaultDescription
-d, --dir.Parent directory

Example:

$ vibe clone ims/task-manager
Cloned ims/task-manager → ./ims-task-manager
  4 features, 1 requirement file
  • Fetches from VIBEHUB_WEB_URL (default: https://getvibehub.com)
  • Creates .vibe/remote.json with connection config

vibe import

vibe import

Extract feature specs from an existing codebase using AI. Analyzes your source code and generates .vibe/ feature files that describe what the code does.

FlagDefaultDescription
-r, --repo.Path to existing Git repository
-k, --api-key$GEMINI_API_KEYGemini API key

Example:

$ vibe import --repo ./my-existing-project
Analyzing codebase...
Extracted 6 features, 2 requirement files
  • Requires a Gemini API key
  • Best for TypeScript/JavaScript and Go codebases

vibe read

vibe read

Print a summary of the project's vibes — features, requirements, and source mappings.

FlagDefaultDescription
-d, --dir.Project directory

Example:

$ vibe read
my-app (v0.1.0)
  Features:
    auth.md          → src/auth/**
    dashboard.md     → src/dashboard/**
    payments.md      → src/payments/**, src/billing/**
  Requirements:
    tech-stack.yaml

vibe compile

vibe compile

Compile feature specs into code, then validate. Runs a four-phase pipeline: code generation, type checking, tests, and requirement validation.

FlagDefaultDescription
-d, --dir.Project directory
-k, --api-key$GEMINI_API_KEYGemini API key
--jsonfalseOutput as JSON (CompilationReport)

Example:

$ vibe compile
Compiling 4 features...

Phase 1/4: Codegen
  ✓ auth.md → 3 files generated
  ✓ dashboard.md → 2 files generated
  • payments.md → unchanged

Phase 2/4: Typecheck
  ✓ No type errors

Phase 3/4: Tests
  ✓ 12 passed, 0 failed

Phase 4/4: Requirements
  auth.md         92/100
  dashboard.md    87/100
  payments.md     95/100

Status: success
  • Exit code 1 if status is "failed" (typecheck or test errors)
  • Status "partial" means avg requirement score < 75
  • Uses gemini-2.5-flash-lite by default

vibe check

vibe check

Validate specs without generating code. Runs typechecking and tests against the existing codebase. Safe for CI pipelines.

FlagDefaultDescription
-d, --dir.Project directory
-k, --api-key$GEMINI_API_KEYGemini API key

Example:

$ vibe check
Checking 4 features...
  ✓ Typecheck passed
  ✓ 12 tests passed

Status: success
  • Does not generate or modify any code
  • Useful in CI to verify specs are still valid after changes

vibe updates

vibe updates [subcommand] [flags]

Manage updates (pull requests) for your project from the command line. Requires authentication and a .vibe/remote.json to know which project to target.

FlagDefaultDescription
list(default)List updates. Supports --status open|merged|closed
close <id>Close an open update without merging
reopen <id>Reopen a previously closed update
retry <id>Retry compilation for a failed update
revert <id>Create a revert update for a merged update

Example:

$ vibe updates
Open updates:
  c2d4ef29  Add payment flow    2 features changed
  a81b3c02  Fix auth redirect   1 feature changed

$ vibe updates close c2d4ef
Closed update c2d4ef29

$ vibe updates --status merged
Merged updates:
  f19e8a31  Dashboard v2        3 features changed
  • Requires VIBEHUB_TOKEN for authentication
  • Update IDs support prefix matching — "c2d4ef" works like the full UUID
  • Reads .vibe/remote.json to determine the target project

Environment Variables

GEMINI_API_KEYAPI key for Gemini. Used by compile, check, and import commands.
VIBEHUB_TOKENAuthentication token (JWT) for commands that talk to the VibeHub backend. Required by vibe updates.
VIBEHUB_WEB_URLVibeHub web URL for clone/sync. Default: https://getvibehub.com