Core concepts

Research workflow

Each request takes the same path: plan, fetch evidence, run tools, check the result, and deliver it together with the files it came from.

Pipeline

  1. Plan — pick the skills, tools, data sources and, when useful, a swarm preset.
  2. Ground — fetch market bars, filings, documents, web pages, broker journals or local files at run time.
  3. Execute — write strategy code, run backtests, factor analysis, options checks or reports.
  4. Validate — add metrics, benchmark comparison, Monte Carlo, bootstrap and walk-forward checks, and run-card warnings.
  5. Check — compare every figure in the draft answer with the session's tool data (Checked numbers).
  6. Deliver — return the answer with the run's artifacts.

Progress budget

A run stops, visibly and marked failed, after eight tool-call rounds in a row without a new successful observation. Repeating a read that returns the same result, or a call that fails, does not count as progress. An identical call is refused from its second failure, so one retry after a rate limit or a timeout still runs; changed arguments always run. A separate wall-clock watchdog stops runs that hang.

Long conversations

When a conversation outgrows the model's context window, older material is compacted in three layers: clear the oldest tool results, fold long text, then summarize. The layers start at 80%, 90% and 100% of what the system prompt and tool definitions leave free, and only clear down to that line, so recent evidence stays in view.

Runs and artifacts

Every backtest writes a run directory under ~/.vibe-trading/runs/:

  • code/ and config.json — the strategy and its settings.
  • run_card.json and run_card.md — what ran, on which data, with which warnings.
  • artifacts/metrics.csv, equity.csv, trades.csv, positions.csv — results.
  • artifacts/validation.json, risk_xray.json — validation and risk breakdown.
  • logs/ — engine output, kept even when a run times out.
vibe-trading --list
vibe-trading --show RUN_ID
vibe-trading --code RUN_ID
vibe-trading --pine RUN_ID     # TradingView Pine Script
vibe-trading --trace RUN_ID    # replay the agent's steps

Sessions and memory

  • Persistent memory in ~/.vibe-trading/memory/ carries preferences and findings across sessions (/memory, vibe-trading memory).
  • Search across all past sessions with /search; resume one with /history.
  • Goals (/goal) keep a longer research question, its evidence and its status across runs.
  • Restart-safe: a run interrupted by a restart is recorded as interrupted, with the text streamed so far.