Skip to main content

Advanced multi-agent orchestrator for OpenCode

Project description

FrankCode

Advanced multi-agent orchestrator for OpenCode.

FrankCode acts as a wrapper and orchestration layer around OpenCode, managing specialized agent setups, safety plugins, verification passes, and environment configurations to accomplish complex development tasks safely and robustly.

Requirements

Before installing FrankCode, ensure you have the following prerequisites installed on your system:

  • Python: >= 3.10
  • Node.js & npm: Required to install OpenCode plugins and manage the environment dynamically. FrankCode will attempt to automatically resolve Node via nvm if available.
  • OpenCode: Make sure the opencode CLI is installed and available in your PATH.

Installation

You can install FrankCode directly via pip:

pip install frankcode

Alternatively, to run from source:

git clone https://github.com/joeyism/frankcode.git
cd frankcode
pip install -e .

Usage

FrankCode provides a simple CLI. To execute a task using the default multi-agent orchestrator:

frankcode "Create a new React component that fetches data from an API and displays it in a table"

Options

  • --model: Specify the LLM model to use (default: google/gemini-3.1-pro-preview).
  • --verbose, -v: Show debug logs.
  • --no-verify: Disable the autonomous verification and fix passes.
  • --clean: Wipe the .frankcode execution environment before starting.

Example:

frankcode "Refactor the auth logic to use JWT" --model openai/gpt-5.4 --verbose

How It Works

  1. Environment Setup: FrankCode creates an isolated .frankcode directory to store logs, quarantine artifacts, and install specific OpenCode plugins dynamically.
  2. Execution: Your prompt is passed into an enhanced OpenCode session. FrankCode actively monitors the process for infinite error loops or idle timeouts.
  3. Verification Loop (Optional but enabled by default): After the main task completes, an adversarial validation agent reads the outputs and devises independent tests. If the tests fail, FrankCode triggers a "fix pass" and repeats the verification.
  4. Cleanup: Temporary artifacts generated during agent reasoning are quarantined.

License

MIT License. See LICENSE for details.

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

frankcode-0.1.1.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

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

frankcode-0.1.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file frankcode-0.1.1.tar.gz.

File metadata

  • Download URL: frankcode-0.1.1.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for frankcode-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7d8ff939a7624acbfbd503bc78a524aec7a2d002df82542be3691df8165f8f19
MD5 6d6f1c4ff752cadf45787177b563876f
BLAKE2b-256 362767869b859235681c926e0431de132a8f924ed347f98ba0a90ca9de53fecf

See more details on using hashes here.

Provenance

The following attestation bundles were made for frankcode-0.1.1.tar.gz:

Publisher: publish.yml on joeyism/frankcode

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

File details

Details for the file frankcode-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: frankcode-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for frankcode-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0f2d748273307af5aa64ad1cab05462f84712f5cd52d71592bb3d94654d30a60
MD5 cb07e509fa07adf08f1b1f573b2dd22e
BLAKE2b-256 91669f32b698d19c418200bfe433dd46ae151e97c1f8e610b9eeff805f7f37d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for frankcode-0.1.1-py3-none-any.whl:

Publisher: publish.yml on joeyism/frankcode

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