Absortio

Email → Summary → Bookmark → Email

GitHub - tact-lang/pitaya

Extracto

Contribute to tact-lang/pitaya development by creating an account on GitHub.

Resumen

Resumen Principal

Pitaya se presenta como una avanzada herramienta de orquestación para agentes de codificación de IA, incluyendo Claude Code y Codex CLI, diseñada para optimizar los flujos de trabajo de desarrollo. Su propuesta de valor central reside en la capacidad de ejecutar múltiples agentes en paralelo, permitiendo a los usuarios comparar y seleccionar la solución más efectiva entre diversas opciones generadas. Una característica crucial es su integración con sistemas de control de versiones, utilizando ramas Git por tarea para mantener un registro seguro y revisable de cada alternativa, lo que garantiza la trazabilidad y facilita la colaboración. Ofrece una Interfaz de Usuario de Texto (TUI) limpia y adaptable, que proporciona visibilidad en tiempo real sobre el progreso, los costos operativos y el consumo de tokens. Además, Pitaya destaca por su extensibilidad, permitiendo la implementación de estrategias personalizadas en Python para flujos de trabajo multifase y ofreciendo estrategias preconstruidas como best-of-n para la selección de candidatos y iterative para el refinamiento continuo. Actualmente en beta pública, Pitaya busca establecer un nuevo estándar en la interacción controlada y eficiente con la IA en el ámbito de la codificación.

Elementos Clave

  • Orquestación Paralela y Selección de Resultados Óptimos: Pitaya está diseñado para ejecutar múltiples agentes de IA de forma concurrente para una misma tarea. Esta capacidad no solo acelera la generación de soluciones potenciales, sino que también empodera a los usuarios para evaluar y seleccionar el resultado más óptimo o de mayor calidad entre

Contenido

🎯 Pitaya

Orchestrate AI coding agents (Claude Code, Codex CLI) with pluggable strategies and a clean TUI.

Python 3.13 Docker License

Note: Pitaya is in public beta. Interfaces and defaults may evolve.

What It Does

  • Runs multiple agents in parallel and helps you pick the best result
  • Uses per‑task branches in your repo to keep alternatives safe and reviewable
  • Displays a clean, adaptive TUI with live progress, costs, and tokens
  • Supports custom Python strategies for multi‑stage workflows

Built‑in strategies: simple, scoring, best‑of‑n, iterative, bug‑finding, doc‑review

Demo

Watch a short video demo of the TUI and orchestration:

demo.mp4

Install

pip install pitaya
# or
pipx install pitaya
# or
uv tool install pitaya

Build the Docker image

Pitaya runs agents inside Docker. You need a Docker image that contains the agent CLI(s) you plan to use:

  • claude (for --plugin claude-code)
  • codex (for --plugin codex)

You can build a ready‑to‑use image from this repository’s Dockerfile:

git clone https://github.com/tact-lang/pitaya
cd pitaya
docker build -t pitaya-agents:latest .

Prefer a custom image? Use any base you like as long as it includes the required CLI(s) above. You can point Pitaya to a different image via --docker-image or set runner.docker_image in pitaya.yaml.

Authenticate:

  • Claude Code: set CLAUDE_CODE_OAUTH_TOKEN (subscription) or ANTHROPIC_API_KEY
  • Codex CLI: set OPENAI_API_KEY (and optionally OPENAI_BASE_URL)

Quickstart

From the root of a git repo:

pitaya "Create a HELLO.txt file with 'Hello from Pitaya' text in it and commit it"

More examples:

# Parallel candidates with scoring (pick the best)
pitaya "Write the funniest and most original joke possible" --strategy best-of-n -S n=5

# Iterative refine (generate → review → refine)
pitaya "Write the funniest and most original joke possible" --strategy iterative -S iterations=3

# Headless JSON output
pitaya "task" --json

OpenRouter (Codex plugin) example:

pitaya "Write the funniest and most original joke possible" \
  --plugin codex \
  --model "openai/gpt-5" \
  --api-key "$OPENROUTER_API_KEY" \
  --base-url https://openrouter.ai/api/v1

Documentation

Configuration (peek)

Optional pitaya.yaml to set defaults:

model: sonnet
plugin_name: claude-code
orchestration:
  max_parallel_instances: auto
  branch_namespace: hierarchical

CLI overrides config; -S key=value only affects the selected strategy.

Results & Logs

  • Logs: logs/<run_id>/events.jsonl and component logs
  • Results: results/<run_id>/ (summary.json, branches.txt, instance_metrics.csv)
  • Branches: pitaya/<strategy>/<run_id>/k<short8> (hierarchical namespace)
  • Resume: pitaya --resume <run_id>

Contributing

Issues and PRs are welcome. This project is evolving—feedback on UX, strategies, and plugin support is especially helpful.

Dev quickstart:

git clone https://github.com/tact-lang/pitaya
cd pitaya
python -m venv .venv && source .venv/bin/activate
pip install -U pip && pip install -e .

# Optional dev tools
pip install -U ruff black mypy pytest pytest-asyncio

Changelog

License

MIT License — see LICENSE.

Fuente: GitHub