# 🚀 CodeBuddy Code v2.99.0 Release

## 📦 Version Information

| Component | Version |
|-----------|---------|
| CodeBuddy Code CLI | v2.99.0 |
| Agent SDK JS | v0.3.158 |
| Agent SDK Python | v0.3.157 |

## ✨ New Features

### `/goal` Command: Keep CodeBuddy Working Until Goal is Achieved

New `/goal` slash command that lets you set a completion condition, after which CodeBuddy will continue working across multiple turns until the condition is met:

- `/goal all tests pass` — At the end of each turn, a lightweight model evaluator checks whether the condition is met; if not, it automatically continues
- `/goal` — View current goal status (elapsed time, turn count, token consumption)
- `/goal clear` — End the goal early

Supports tri-state evaluation: achieved (stop), not achieved (continue working), unachievable (avoid infinite loops). Goals are automatically reloaded when resuming a session via `/resume`. Web UI supports progress bars and terminal state overlays.

### Credit Consumption Push

Attaches `usage` details with a `credit` field to the standard ACP `usage_update`, enabling upstream systems to accumulate and display consumed Credits per turn.

### Gemini-3.5-Flash Model

Added Gemini-3.5-Flash model support with million-token context window, balanced reasoning capabilities, suitable for everyday use.

## 🐛 Bug Fixes

- **Security Fix (RCE)**: Fixed a remote code execution vulnerability where `apiKeyHelper` configuration was executed before the directory trust dialog appeared; project-scoped configurations now must wait for directory trust completion before execution
- **Hook Input Fix**: `agent_type` now correctly reflects the configured agent name; SubagentStop's `agent_transcript_path` now points to the correct path
- **Plan Mode Permission Restore**: Fixed an issue where ExitPlanMode incorrectly downgraded permissions when the session had already exited Plan Mode
- **Team Task Stop Reliability**: Fixed occasional inability to stop members immediately after startup, and members still showing as running after being force-terminated
- **Plugin Hot-Watch Infinite Loop**: Fixed an infinite loop issue with change events in PluginsProductProvider
- **Multi-line Input Arrow Keys**: Fixed down arrow key being intercepted by shortcuts after multi-line input while background tasks are running
- **Custom Model Tool Call**: Added `SkipToolCallSupportCheck` switch; dedicated editions no longer remove tools/tool_choice fields
