Homeboy
Code factory + fleet ops CLI. Audits, lints, tests, releases, deploys, and manages dev rigs — with structured JSON for AI agents.
Changelog
All notable changes to Homeboy CLI are documented in this file. (This file is embedded into the CLI binary and...
Config Structures
Configuration ScopedExtensionConfig version — Version constraint string (e.g., ">=2.0.0", "^1.0"). settings — Settings passed to the extension at runtime. GitDeployConfig...
Homeboy CLI documentation
This directory contains the markdown docs embedded into the homeboy binary and displayed via homeboy docs. Homeboy is a config-driven...
Cross-Compilation Guide
Homeboy can orchestrate releases for any platform, but building native binaries requires access to that platform's toolchain. What Works Anywhere...
Code Factory
The code factory is homeboy's model for automated code maintenance: humans write features, the system maintains quality. It combines lint,...
Template Variables
Homeboy supports template variables in several contexts. Both single-brace ({var}) and double-brace ({{var}}) syntaxes are supported everywhere for backward compatibility....
`homeboy server`
Synopsis homeboy server <COMMAND> Subcommands create homeboy server create [--json <spec>] [--skip-existing] <id> --host <host> --user <user> [--port <port>] -...
Test Command
Run a component's extension-backed test suite. Synopsis homeboy test [component] [options] [-- <runner-args>] Description The test command resolves the component's...
`homeboy extension`
Synopsis homeboy extension <COMMAND> Subcommands list homeboy extension list [-p|--project <project_id>] show homeboy extension show <extension_id> Print detailed manifest, runtime,...
Lint Command
Lint a component using its linked extension's linting infrastructure. Synopsis homeboy lint [component] [options] Description The lint command resolves the...
Bench Command
Run performance benchmarks for a Homeboy component and surface regression deltas against a stored baseline. Synopsis homeboy bench <component> [options]...
`homeboy daemon`
Run and inspect the local-only Homeboy HTTP API daemon. Synopsis homeboy daemon <COMMAND> Subcommands start — start the local daemon...
Server Schema
Server configuration defines SSH server connections stored in servers/<id>.json. Schema { "id": "string", "name": "string", "host": "string", "port": number, "user":...
Extension Manifest Schema
Extension manifests define extension metadata, runtime behavior, platform behaviors, and integration points. Stored as <extension_id>/<extension_id>.json in the extension directory. Schema...
Component Schema
Component configuration defines buildable and deployable units stored in components/<id>.json. Schema { "id": "string", "name": "string", "local_path": "string", "remote_path": "string",...
Portable Component Config (`homeboy.json`)
A homeboy.json file in a repo root defines portable component configuration that travels with the code. Clone a repo, run...
Project Schema
Project configuration defines deployable environments stored in projects/<id>.json. Schema { "id": "string", "name": "string", "domain": "string", "server_id": "string", "base_path": "string",...
Fleet Schema
Fleet configuration defines named groups of projects stored in fleets/<id>.json. Schema { "id": "string", "project_ids": ["string"], "description": "string" } Fields...
Dead Guard Detection
Homeboy audit flags function_exists('…'), class_exists('…'), and defined('…') guards whose checked symbol is guaranteed to exist at runtime. Such guards are...
Repeated literal-shape detector
Detects inline associative array literals that appear many times with the same shape (ordered keys + value kinds) across a...
Shared scaffolding detector
Finds groups of classes in the same directory subtree that share the same overall method-shape (same method names, visibilities, and...
Audit Deprecation Age
Homeboy audit flags @deprecated X.Y.Z docblock tags that are significantly older than the component's current version. This surfaces ancient deprecations...
Compiler Warning Extension Contract Gap
Issue #2242 asks Homeboy core to move compiler-warning collection and compiler-warning fix generation behind extension-owned contracts. Validation and formatting already...
Verification phase contract
Homeboy's verification surface is deliberately split into isolated primitive commands that can be composed by higher-level workflows. Primitive phases The...
`homeboy` root command
Synopsis homeboy [OPTIONS] <COMMAND> Description homeboy is a CLI tool for development and deployment automation. Global flags These are provided...
JSON output contract
Homeboy prints JSON to stdout for most commands. Exceptions: homeboy docs prints raw markdown (or newline-delimited topic names for homeboy...
Runner contract
The contract between Homeboy core and runner scripts: what capabilities exist, what env vars flow in, what sidecar files scripts...
CI result JSON contract
Homeboy CI results are exposed through the existing global --output <path> flag. The flag writes the same JSON envelope Homeboy...
Trace Probes
Trace probes are passive observation helpers that run beside a trace workload and emit events into the existing trace timeline...
Rig Matrix Axis Composition
Design for deriving rig variants from one base rig plus explicit axis overlays. Tracked by Extra-Chill/homeboy#1844. Problem Rigs currently model...
Execution Context
Execution context is the environment Homeboy passes to extension runners and extension-backed pipeline steps. Overview When Homeboy executes an extension,...
Config Directory Structure
Important: Homeboy uses centralized configuration only. There is no repo-local config file (no .homeboy.toml or .homeboy directory). All configuration lives...
Architecture Overview
Homeboy is a development and deployment automation tool built in Rust with a config-driven architecture. Design Principles Single Source of...
Error Handling Patterns
Homeboy uses a centralized error system for consistent error reporting across all commands. Error Categories Errors are categorized by type...
Documentation Alignment
Instructions for keeping existing .md documentation synchronized with current codebase implementation. Scope Alignment covers documentation that describes current implementation only....
Documentation Generation
Instructions for creating comprehensive user-facing documentation from scratch by analyzing the codebase. Purpose Generate structured documentation in the /docs directory...
Documentation Structure
Standard patterns for organizing documentation files and directories. Directory Conventions /docs Directory User-facing documentation lives in /docs at the project...
Documentation Management
Homeboy provides AI agents with consistent instructions for documentation generation and maintenance. These docs serve as the single source of...