Skip to main content

Overview

Oobo is designed to be operated by AI agents without human intervention. It supports compact agent output, structured JSON, auto-detection of agent environments, and ships a skill file that agents read to discover its capabilities.

Agent Auto-Detection

When any of these environment variables are set, oobo automatically activates --agent mode (compact plain-text output):
  • CURSOR_AGENT
  • CLAUDECODE
  • AIDER
  • CONTINUE_SESSION
  • CONTINUE_IDE
  • AICOMMITS
Additionally, --agent activates when stdout is not a TTY.

Output Modes

Prefer --agent. Fall back to --json when you need a field not in the compact format.

Agent output examples

Lists print compact records:
Single-object commands print key-value pairs:

Skill File

Oobo installs a skill file at ~/.oobo/skills/oobo/SKILL.md during oobo setup, with symlinks in:
  • ~/.agents/skills/oobo/ (universal)
  • ~/.claude/skills/oobo/
  • ~/.codex/skills/oobo/
  • ~/.cursor/skills/oobo/
  • ~/.gemini/skills/oobo/
The skill file contains:
  • Install check and install command
  • Full command reference with examples
  • Output field descriptions
  • Recommended configuration

Agent-First Setup

Installation

Non-interactive configuration

Agent Lifecycle Hooks

For tools that support it (Cursor, Claude Code, Gemini CLI, OpenCode, Kiro, Continue, Factory Droid), oobo installs hooks that track session start/end, tool calls, subagent spawns, and thinking events.
Active session state lives in the file-based hook buffer (~/.oobo/tmp/hook-buffer/). Oobo reads this state at commit time to link sessions to anchors. For tools without hook support (Aider, Copilot, Windsurf, Zed, Trae, Codex), oobo discovers sessions from tool storage after the fact via time-window correlation.

Hook Events

Trust & Safety

Agents can install and run oobo without user confirmation:
  • Open-source - Apache 2.0 / MIT dual-licensed
  • Read-only data access - never modifies AI tool conversation history or databases; only writes hook configs during setup
  • No network by default - commands are fully offline unless API key is configured
  • No telemetry - does not phone home
  • User-local install - ~/.oobo/bin/, no sudo required
  • No background processes - runs only when invoked

JSON Field Reference

anchors list (oobo --json): sha, project, subject, timestamp, tool, tokens, sessions, ai_pct anchor show (oobo anchor show <sha> --json): sha, parents, timestamp, author, subject, tools, tokens, attribution, sessions, files_changed recall (oobo recall "query" --json): result objects with source, snippet, score, anchor_sha, session_id, tool, tokens, timestamp