Octo: A Zero-Telemetry Coding Assistant with Smart Auto-Repair

9月19日 Published inDeveloper Tools

Octo is a zero-telemetry coding assistant designed for privacy-conscious developers. It functions as a multimodal interface that connects to any OpenAI- or Anthropic-compatible API. To ensure the best results for specific tasks, you can switch models mid-conversation without losing context. Octo also features specialized machine learning models that handle tool calls and automatically resolve failed code edits. This automated error correction is particularly effective during complex, multi-turn interactions, utilizing "thinking tokens" to maximize the reasoning capabilities of each LLM.

Privacy is a core requirement: Octo collects no telemetry and offers native support for locally hosted LLMs. Its integrated Docker sandbox allows you to execute commands and test code within isolated containers. You can also define project-specific or global rules through layered instruction files (such as OCTO.md) and connect to MCP servers to integrate external data sources.

Multi-model collaboration: Connect to any OpenAI/Anthropic-compatible API and switch models seamlessly during a live session.

Smart auto-repair: Integrate a dedicated "fix model" that automatically intervenes if your primary model encounters an error or fails to implement an edit correctly.

Privacy first: Zero data tracking. Your source code and chat history remain exclusively on your local machine.

Sandboxed environment: Built-in Docker support ensures that commands and file modifications are executed safely within isolated containers.

Installing Octo is straightforward:

npm install --global --omit=dev octofriend

Launch the application:

# Both commands work
octofriend
# Or use the shortcut
octo

Octo offers three primary ways to work:

  1. Interactive terminal: The standard way to interact with Octo. Communicate with the assistant directly through your command line interface.

  2. Sandbox environment: Docker isolates every operation Octo performs, keeping your host system clean and secure.

    # Connect to an existing container
    octo docker connect your-container-name
    
    # Start a fresh Alpine container
    octo docker run -- -d -i -t alpine /bin/sh
    
  3. Automation mode: Use the --unchained flag to bypass manual confirmations. In this mode, Octo executes tasks autonomously until the objective is met.

    octofriend --unchained
    

Personalizing Octo

Upon its initial run, Octo generates a configuration file at ~/.config/octofriend/octofriend.json5. You can modify this file to:

  • Add models: Integrate new providers, including locally run instances.
  • Connect data services (MCP): Plug into services like Linear to give the assistant more context regarding your tasks.
  • Project-level instructions: Create an OCTO.md file in your project root to enforce specific coding standards or rules for that repository.

To inspect low-level API calls or monitor tool execution logs, enable verbose mode:

OCTO_VERBOSE=1 octofriend

Octo is a robust, privacy-centric tool built for modern engineering. By bridging the strengths of different AI models and providing a secure execution environment, it serves as a powerful and adaptable assistant for daily development work.