Skip to main content

The Forge

The Forge

Uma entrada. Vários especialistas. Apenas o contexto necessário. Resultado verificável.

The Forge é um control plane local-first. Ele descobre Forges especialistas (Spark Forge AWS, Spark Forge Azure, API Forge, Platform Forge, os Doctors, …), escolhe o provider certo por capability de forma determinística e explicável e registra cada execução com evidência e receipt verificáveis. The Forger é o orquestrador interno.

Instalação

pip install theforge-core          # Python >= 3.11 — publicado no PyPI
theforge --version                  # smoke test

O instalador do ecossistema (Forjas + hosts + Portal) é o theforge-cli no npm (npx theforge-cli ou npm i -g theforge-cli, Node >= 20).

Instalação (desenvolvimento)

git clone <repo> the-forger && cd the-forger
python3.11 -m venv .venv                      # qualquer Python >= 3.11
.venv/bin/python -m pip install -e ".[dev]"   # Windows: .venv\Scripts\python

O runtime só usa a stdlib. O comando canônico é theforge, usado em todos os exemplos; forge é um alias de conveniência (ADR 0008). Use theforge se forge colidir com Foundry ou Laravel Forge no seu PATH. Para rodar a suíte de testes, instale também os adapters (ver Desenvolvimento).

Instalação portátil (uso, não desenvolvimento)

setup.sh (POSIX) / setup.ps1 (Windows) fazem o bootstrap: resolvem um Python compatível, criam um venv isolado em ~/.forge/installs/the-forge, instalam o wheel (não o checkout), gravam o launcher em ~/.local/bin e registram o manifesto em ~/.forge/installations/the-forge.json. Depois o checkout pode ser apagado.

./setup.sh            # ou: pwsh setup.ps1
theforge --version    # smoke test embutido no bootstrap

Com o CLI no PATH, a própria forge instala seus host assets em qualquer repo e orquestra a família inteira:

cd seu-projeto
theforge install apply --yes              # skills + markers gerenciados (.claude/.devin/.agents/.github)
theforge install apply --dry-run          # plano determinístico, sem escrever
theforge install auto --yes               # delega a cada forge registrada em ~/.forge/installations
theforge providers sync --yes             # registra adapters locais e atualiza o registry ao vivo
theforge providers sync --dry-run         # mostra o plano sem escrever providers.toml
theforge install status|doctor|repair|uninstall
theforge installations list               # registry do bootstrap (read-only)

theforge portal [--no-browser]            # UI local opcional — command center da federação

Cada escrita passa por ledger sha256 com posse: uninstall remove só o que é gerenciado, arquivos do usuário e edições manuais sobrevivem. Escopos project (padrão), workspace e user; profiles minimal/recommended/full; hosts claude, devin, codex, copilot ou all. Contrato e matriz: docs/portable-installation/ (ADR 0058).

install auto --yes também sincroniza, de forma idempotente, os providers locais descobertos em ~/.forge/installations/ para o bloco gerenciado do providers.toml do usuário e executa refresh ao vivo. O comando preserva entradas manuais e exige aprovação antes de escrever. providers sync --yes é o reparo explícito para quem já instalou uma Forge antes dessa automação. A sincronização registra o adapter do provider; a configuração MCP continua sendo feita pela CLI da própria Forge quando --components mcp e um host são selecionados.

Primeiros passos

Os comandos abaixo assumem o venv ativado (source .venv/bin/activate; no Windows, .venv\Scripts\activate). Sem ativar, chame .venv/bin/theforge (Windows: .venv\Scripts\theforge).

theforge doctor
theforge init
theforge capabilities list
theforge ask "eco olá" --capability demo.echo
theforge explain <run_id>   # o run_id é impresso por `ask`
theforge plan "<tarefa>" --profile max            # só planeja (desfecho planned)
theforge plan "<tarefa>" --profile max --execute  # executa os nós em sequência

Registrar um provider

O providers.toml do usuário é o único que concede trust. Ele fica em %APPDATA%\theforge\providers.toml no Windows e em $XDG_CONFIG_HOME/theforge/providers.toml no POSIX (fallback ~/.config/theforge/providers.toml); $THEFORGE_CONFIG_DIR sobrescreve o diretório em qualquer plataforma.

[[providers]]
id = "my-forge"
argv = ["my-forge-cli", "protocol"]   # "{python}" vira o interpretador atual
trust = "local"                        # trusted | local | unverified | blocked (padrão: unverified)

O providers.toml de projeto (.forge/config/providers.toml) pode declarar providers, mas eles entram sempre como unverified e não são executados (nem describe) sem --allow-unverified. Para confiar num provider de projeto, copie a entrada para o arquivo do usuário. Ids builtin (echo-forge) são reservados: usá-los em qualquer providers.toml é erro de uso (exit 2). Uma entrada de projeto cujo id já esteja definido no arquivo do usuário é ignorada, com aviso.

Para providers instalados pelo ecossistema, prefira theforge providers sync --yes; ele resolve o interpretador/CLI do manifesto, deriva o adapter publicado pelo catálogo local e roda registry refresh. Para um provider externo, edite o bloco manual e rode theforge registry refresh. Para começar um provider do zero, theforge provider init <dir> --id <id> escreve o scaffold (manifest, esqueleto stdlib, teste de conformidade) e theforge provider check -- <argv> roda a bateria de conformidade sem registrar nada (provider-authoring).

O version do manifest precisa ser SemVer 2.0.0 (senão o provider fica invalid, FORGE-MANIFEST-VERSION), e cada capability segue a taxonomia (fora dela, a capability é excluída com aviso FORGE-MANIFEST-TAXONOMY). Para quem já tem um provider: nota de migração.

Forges reais

Os Forges reais entram por seis adapters em adapters/, instalados no interpretador de cada especialista (o API Forge exige Python 3.12; os Doctors exigem Python ≥ 3.11) e registrados como qualquer provider (ADR 0014): Spark Forge AWS (spark-forge-aws), Spark Forge Azure (spark-forge-azure), API Forge (api-forge), Platform Forge (platform-forge), Forge Doctor Data (forge-doctor-data) e Forge Doctor API (forge-doctor-api). Só capabilities read-only e offline são expostas; o resto aparece em limitations do manifest com o motivo (catálogo, ADR 0017). O estado nativo de cada execute fica em .forge/runs/<id>/work/ e é reduzido aos artifacts declarados; esse diretório não passa por redaction (segurança). Instalação, registro, testes de integração e troubleshooting: docs/real-providers.md.

Mapa do ecossistema

  • The Forge é a plataforma (este repositório); The Forger é o orquestrador interno que coordena — routing, budget, planos, receipts.
  • Forges especialistas engenheiram: Spark Forge AWS (pipelines de dados AWS/PySpark), Spark Forge Azure (pipelines Azure/Fabric — sem equivalência falsa AWS↔Azure), API Forge (construção/evolução de APIs) e Platform Forge (inteligência de plataforma: IaC, k8s, secrets, CI/CD, gitops).
  • Doctors observam: Forge Doctor Data e Forge Doctor API escaneiam e diagnosticam, produzem evidência e verificam o trabalho dos engenheiros — nunca executam mudanças.
  • Routing pertence só à Forge (determinístico, de sinais declarados); verificação pertence a um provider diferente do produtor (can_verify declarado).
  • Troca: evidência tipada com proveniência via Handoff — nunca prompts repetidos nem estado interno sincronizado.
  • Adicionar um Forge: theforge provider init + provider-authoring.
  • Visão das relações declaradas: theforge graph --mesh.
  • Camada agentic: forge-knowledge/ (bootstrap metadata — nunca verdade de runtime, doc), skills forge-* canônicas renderizadas por host (doc) e oito agentes especializados com autoridade fechada (doc). theforge knowledge list/show/check e theforge agents list/show expõem os dois registries — check confronta o freshness recordado com o registry ao vivo.

Exit codes

Código Significado
0 sucesso: ok / partial em ask e plan, planned em plan sem --execute, explain/replay sem divergência
1 doctor / providers health / provider check com falha
2 uso inválido (inclusive arquivo de plano ilegível, FORGE-PLAN-FILE, e run id malformado ou desconhecido) ou workspace não inicializado
3 no_route / ambiguous
4 provider_failure / refused (inclusive recusa de policy, plano rejeitado e replay --mode execute recusado)
5 falha ao gravar ou ler o run (theforge: persistence error:)
6 divergência de integridade: explain, replay --mode verify e replay --mode render
70 erro interno inesperado (sem traceback)
130 interrompido (Ctrl+C)

Igual à tabela de docs/cli.md, que detalha o exit de cada subcomando.

Documentação

Mapa completo por preocupação em docs/README.md e o índice canônico gerado em docs/INDEX.md. Principais:

DX (Standard v1): handbook do ecossistema · command reference · skills · agents · tutorial · economy · troubleshooting · EN quickstart

Desenvolvimento

A suíte offline roda os adapters reais em modo replay, então o setup de desenvolvimento os instala editáveis junto com o core:

.venv/bin/python -m pip install -e ".[dev]" -e ./adapters/sparkforge_aws -e ./adapters/sparkforge_azure -e ./adapters/apiforge -e ./adapters/platformforge -e ./adapters/doctordata -e ./adapters/doctorapi
.venv/bin/python -m pytest            # suite offline
.venv/bin/python -m pytest -m slow    # gates de zero deps e instalação limpa (baixa hatchling)
.venv/bin/python -m pytest -m security   # categoria: unit, contract, integration, e2e, slow, security
.venv/bin/python -m pytest -m real_provider   # Forges reais; ver docs/real-providers.md
.venv/bin/ruff check .
.venv/bin/mypy
.venv/bin/python -m theforge.contracts.schema schemas   # regenerar schemas
.venv/bin/python scripts/agentic/audit_assets.py        # auditoria dos assets agentic; ver docs/agentic.md

Metadata

Release files for theforge-core 0.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for theforge-core 0.5.3
File Size Uploaded Provenance
theforge_core-0.5.3.tar.gz 4.6 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for theforge-core 0.5.3
File Interpreter ABI Platform
theforge_core-0.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 5.8 MB

Release files / theforge_core-0.5.3.tar.gz

Download URL theforge_core-0.5.3.tar.gz
Size 4.6 MB
Tags Source
SHA-256 checksum
How to use checksums
a1ceeebbfa819952f2e96e27a9203d995f354ae52b1b0aacb75f1cc34fe0e7d4
BLAKE2b-256 checksum
How to use checksums
550a395ac794af5d5592c63d07b2d1fd8b5adeb6f934248d071b8fd974d2a367
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / theforge_core-0.5.3-py3-none-any.whl

Download URL theforge_core-0.5.3-py3-none-any.whl
Size 1.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
7187d06cac19e680db6e90cd035eaba9934c8ac7c3c242436a8245215c0fc390
BLAKE2b-256 checksum
How to use checksums
468c9d52aff58a5b20643c28d461b4bfc432df7cfd02955c07850593f477462f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Security for theforge-core 0.5.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for theforge_core-0.5.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page