Skip to main content

CLI for Aegro agricultural management API

Project description

Aegro CLI

Command-line interface for the Aegro agricultural management API.

Python 3.11+ PyPI License: MIT


Install

# pipx (recommended)
pipx install aegro

# uv
uv tool install aegro

# Homebrew (macOS)
brew tap aegro/tap
brew install aegro

For development:

git clone https://github.com/aegro/tool-aegro-cli.git
cd tool-aegro-cli
uv sync
uv run aegro --help

Quick Start

# 1. Authenticate
aegro auth login --farm-name "Fazenda Sul" --api-key "aegro_abc123..."

# 2. Select a farm
aegro farms list
aegro farms select "Fazenda Sul"

# 3. Start working
aegro crops list --start-date 2025-01-01 --end-date 2025-12-31
aegro financial installments --status PENDING
aegro stock items --output table

Commands

Group Commands Domain
auth login, status, logout Authentication
farms list, select, info Farm management
crops get, list, prorate, harvest-discounts, prorates, glebes Harvest management
activities get, list, plan, realizations, get-plan, get-realization, create-plan Activity planning
financial bill, installment, installments, create/update/delete-installment, realize Accounts payable/receivable
stock item, location, items, locations, logs, log, transfer, entry, removal Inventory
elements get, list, create-defensive/fertilizer/item/seed/service, set-categories Inputs/supplies
assets get, list, create-machine/vehicle/garner/immobilized/pivot/weather-station Equipment
fuel-supplies get, list, create, update Fuel management
maintenances get, list, create, update Maintenance records
harvest-logs get, create Harvest records
bank-accounts get, list, create Bank accounts
companies get, list, create Suppliers/vendors
fin-categories get, list, create, subcategories Chart of accounts
catalogs list, element-keys, elements Catalog lookups
tags get, list, create Tags/labels
weather get, create Weather data
purchase-orders get, list, create Purchase orders
glebes get, list Farm fields
crop-glebes get, list Crop fields

Output Formats

All commands support three output formats:

aegro crops list --output json    # JSON (default, for LLMs/scripts)
aegro crops list --output table   # Rich table for humans
aegro crops list --output csv     # CSV export

Usage Examples

Human workflow

# Morning overview
aegro farms select "Fazenda Norte"
aegro crops list --output table
aegro financial installments --status PENDING --due-date-start 2025-03-01 --output table
aegro stock items --output table

# Register a fuel supply
aegro fuel-supplies create --asset-key K --date 2025-03-13 --quantity 150 --unit L --cost 900

# Check harvest
aegro harvest-logs get <key>

LLM/Agent workflow

# Agents use JSON output (default) for structured data
aegro crops list --start-date 2025-01-01 --end-date 2025-12-31
aegro activities list --crop-key <key>
aegro stock items
aegro financial installments --status PENDING

AI Skills

The project includes guided workflows for AI assistants in .claude/skills/:

Domain skills (personas)

Skill Purpose
aegro-agronomo Agronomic domain — crops, fields, activities, harvests, weather, inputs
aegro-estoquista Stock domain — items, locations, movements, catalogs, elements
aegro-financeiro Financial domain — bills, installments, categories, bank accounts, companies
aegro-operacional Operational domain — farms, auth, tags, cross-domain orchestration
aegro-patrimonial Asset domain — machines, vehicles, fuel supplies, maintenances

Workflow skills

Skill Purpose
aegro-visao-geral Farm overview dashboard
aegro-fechamento-safra Crop season closing checklist
aegro-lancamento-financeiro Financial entry guide
aegro-reconciliacao-estoque Stock reconciliation
aegro-monitoramento-pragas Pest monitoring
aegro-analise-rentabilidade Profitability analysis
aegro-cadastro-patrimonio Asset registration

Configuration

Authentication

Credential resolution priority:

  1. AEGRO_FARMS env var (JSON) — for CI/CD and scripts
  2. AEGRO_FARMS_FILE env var (path) — for Docker/K8s secrets
  3. ~/.config/aegro/credentials.json — interactive setup via aegro auth login
# Option 1: Environment variable
export AEGRO_FARMS='{"Fazenda Norte": "aegro_key1", "Fazenda Sul": "aegro_key2"}'

# Option 2: Interactive login (saves to ~/.config/aegro/credentials.json)
aegro auth login --farm-name "Fazenda Norte" --api-key "aegro_key1"

Environment Variables

Variable Default Purpose
AEGRO_API_BASE_URL https://app.aegro.com.br Aegro API base URL
AEGRO_FARMS JSON map of farm name → API key
AEGRO_FARMS_FILE Path to JSON credentials file

Development

# Install dependencies
uv sync

# Run tests
uv run pytest -v

# Lint
uv run ruff check aegro/ tests/

# Format
uv run ruff format aegro/ tests/

Links


License

MIT

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

aegro-0.2.0.tar.gz (39.1 kB view details)

Uploaded Source

Built Distribution

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

aegro-0.2.0-py3-none-any.whl (44.7 kB view details)

Uploaded Python 3

File details

Details for the file aegro-0.2.0.tar.gz.

File metadata

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

File hashes

Hashes for aegro-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7c61e956f0b5b199768ad45208d68437fd051250c9c4c3907805faf60d070c2c
MD5 8ca0352d1749712d98a0016b339bb366
BLAKE2b-256 148e40acb01c2cda1858cf5bbd7adc6d0479aa268fb4c11a329ce4d29a626a93

See more details on using hashes here.

Provenance

The following attestation bundles were made for aegro-0.2.0.tar.gz:

Publisher: publish.yml on aegro/tool-aegro-cli

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

File details

Details for the file aegro-0.2.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for aegro-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b56bedb3f7fcd44f4912a7fad819a196e7ca66d4175eff9a5bcd0dc29461b703
MD5 1e7ca58a2a8495286218591be9a8210b
BLAKE2b-256 61f58333dc58ac7484c30fba52d2033922dab6702409f7cd42dc2382c9c0babc

See more details on using hashes here.

Provenance

The following attestation bundles were made for aegro-0.2.0-py3-none-any.whl:

Publisher: publish.yml on aegro/tool-aegro-cli

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