Skip to main content

Assistant to generate, review and improve articles.

Project description

Virgo

Virgo is a command-line assistant that helps you generate, review, and improve articles. It blends retrieval (Tavily), reasoning (LangChain + LangGraph), and drafting (OpenAI) into a guided flow so you can go from idea to polished copy quickly.

Quickstart

  1. Install (from PyPI):
pip install virgo-agent
  1. Configure your environment (see next section), then run:
virgo --help

Environment

Set these variables before running Virgo:

Variable Required Purpose
OPENAI_API_KEY Yes Drafting, rewrites, and reviews via OpenAI models
TAVILY_API_KEY Yes Web research to gather facts and sources
LANGSMITH_API_KEY Optional Observability and tracing via LangSmith
LANGSMITH_TRACING Optional Enable LangSmith tracing (true/false)
LANGSMITH_ENDPOINT Optional Override LangSmith endpoint
LANGSMITH_PROJECT Optional LangSmith project name
OLLAMA_MODEL Optional Model name for local integration tests (e.g., llama3.2:1b)
OLLAMA_BASE_URL Optional Ollama base URL (e.g., http://localhost:11434)

Tips:

  • Put secrets in a local .env (not committed) or manage them via mise.
  • Python requirement: 3.14 (pre-release builds are fine).

How It Works (High-Level)

  • LangChain orchestrates LLM calls and tool usage for drafting and review steps.
  • LangGraph wires these steps into a controllable graph: gather context → draft → critique → refine.
  • Tavily performs targeted web searches to pull fresh facts and references.
  • OpenAI provides the language model for generation and editing.
  • Rich and Typer power the CLI experience (progress, prompts, commands).

Workflow overview:

  1. You provide a topic and intent via the CLI.
  2. Virgo runs Tavily searches to collect supporting context.
  3. LangGraph coordinates drafting with OpenAI, then runs critique/refinement passes.
  4. The final article is returned with suggested improvements and sources.

Common Commands

  • Show help: virgo --help
  • Generate/review (example): virgo generate "AI safety"

For Contributors

Developer tooling uses uv for fast installs:

  • Install deps: uv sync --group dev

  • Lint: uv run task lint:ci

  • Format check: uv run task format:ci

  • Type check: uv run task type-check

  • Tests with coverage: uv run pytest tests --cov=virgo --cov-report=term-missing

  • Integration tests (needs Docker + Ollama):

    docker compose -f docker-compose.development.yaml up -d --build
    uv run task integration
    docker compose -f docker-compose.development.yaml down
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

virgo_agent-0.1.0.tar.gz (94.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

virgo_agent-0.1.0-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file virgo_agent-0.1.0.tar.gz.

File metadata

  • Download URL: virgo_agent-0.1.0.tar.gz
  • Upload date:
  • Size: 94.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for virgo_agent-0.1.0.tar.gz
Algorithm Hash digest
SHA256 13a6365512e253470f120f48285761332eb83a5c0df89b1fa0eec35a546aed83
MD5 7e8d670683fb326763367aa371d233a4
BLAKE2b-256 65d0926d67988f9948b15fdc8892616ab2161279836a314a98a9334df9daba39

See more details on using hashes here.

Provenance

The following attestation bundles were made for virgo_agent-0.1.0.tar.gz:

Publisher: release.yaml on William-Fernandes252/virgo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file virgo_agent-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: virgo_agent-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for virgo_agent-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4be4f5546b23e1c7292d4ee0b6dde02fb65cf1d6fc08a9322764225a7cedb1a9
MD5 70b8cef6f25a537a00b4248f50f937fb
BLAKE2b-256 3393db6fc0984421cf2c9c5a7fca7181ad9b24f45b4b3ffcaeedf8255a1e2555

See more details on using hashes here.

Provenance

The following attestation bundles were made for virgo_agent-0.1.0-py3-none-any.whl:

Publisher: release.yaml on William-Fernandes252/virgo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page