vibe-action 0.0.5

Command router — execute shell commands and LLM prompts via simple YAML actions.
# Vibe Action

Command router for shell and LLM tasks via YAML pipelines.

## Why Vibe Action

- **Complex pipelines** — chain shell and LLM into one command
- 🔗 **Tag system** — auto-dependency graph via `{tag}`
- 🔧 **Modifiers** — 15+ modifiers with arguments for transforming values inline
- 🔀 **When/Then** — conditional execution in YAML
- 🌳 **AST parsing**`{tag|ast:rs}` extract code structure
- 🖥️ **System tags**`{system_clipboard}`, `{system_pwd}`, `{system_os}` and more
- 🤖 **Batch LLM** — parallel execution across cluster nodes with role-based routing
-**Type-safe** — validate with types and regex
- 🔔 **Notifications** — optional system notifications on completion
- 🔐 **Confirmations** — approve before executing
- 🎯 **CLI-first** — no browser, just terminal
- 🔒 **Local & free** — Ollama, 3b models, no subscriptions
- 🦀 **Fast** — built in Rust

## Quick Start

```bash
# Install
cargo install vibe-action

# AI-powered commit
vibe-action commit

# Translate files
vibe-action translate-fast -f README.md -l Russian

# Rewrite tone from clipboard
vibe-action tone

# Extract errors from logs
vibe-action extract -f app.log -q 'find errors'
```

## Built-in Actions

| Action           | Description                                |
| ---------------- | ------------------------------------------ |
| `comment`        | Replace TODO with meaningful comment       |
| `commit`         | AI-generated git commit message            |
| `extract`        | Extract matching lines from logs and text  |
| `find`           | Semantic file search by meaning            |
| `mock`           | Generate mock data (JSON, YAML, CSV)       |
| `naming`         | Code naming suggestions                    |
| `regex`          | Generate regular expression patterns       |
| `review`         | Critically analyze code for bugs and flaws |
| `spellcheck`     | Fix spelling in text and files             |
| `synonyms`       | Technical synonyms for a word              |
| `tone`           | Rewrite text with professional tone        |
| `translate-fast` | Fast single-model translation              |
| `translate-deep` | Two-stage translation with polishing       |

## IDE Integration

- [VS Code]https://gitcode.com/keygenqt_vz/vibe-action/blob/main/book/src/docs/ide-vscode.md — Tasks + Task Notifier
- [IntelliJ IDEA]https://gitcode.com/keygenqt_vz/vibe-action/blob/main/book/src/docs/ide-intellij.md — External Tools

## Configuration

`~/.vibe-action/config.yaml`:

```yaml
version: '0.0.3'

action:
  system: 'You are Vibe Action — a CLI tool. Output ONLY the result.'
  retries: 2

cluster:
  - provider: ollama
    host: http://localhost:11434
    model: qwen2.5-coder:14b-instruct
    timeout_secs: 60
    temperature: 0.1
    seed: 42
    num_ctx: 4096
    num_predict: 2048
    parallel: 1
```

## Environment Variables

| Variable           | Description                                              | Default                      |
| ------------------ | -------------------------------------------------------- | ---------------------------- |
| `VIBE_CONFIG`      | Path to config file                                      | `~/.vibe-action/config.yaml` |
| `VIBE_ACTION_PATH` | Path to actions directory                                | `~/.vibe-action/actions/`    |
| `VIBE_LOG_TYPE`    | Output mode: `cli`, `plain`, `json`, `tracing`           | `cli`                        |
| `VIBE_TRACE_LEVEL` | Tracing level: `error`, `warn`, `info`, `debug`, `trace` | `info`                       |

## Install

### Via Cargo (recommended)

```bash
cargo install vibe-action
```

### Build from source

```bash
git clone https://gitcode.com/keygenqt_vz/vibe-action.git
cd vibe-action
cargo build --release
```

## Dependencies

- [Ollama]https://ollama.com, [DeepSeek]https://deepseek.com, or [Qwen]https://qwen.ai for LLM inference
- [terminal-notifier]https://github.com/julienXX/terminal-notifier (macOS) for desktop notifications