`homeboy changelog`
Synopsis
homeboy changelog [COMMAND]Description
homeboy changelog prints the embedded Homeboy CLI changelog documentation (from docs/changelog.md) as raw markdown by default.
In JSON output mode, the default show output is returned as JSON (with a content field containing the markdown).
Note: Homeboy generates changelog entries automatically from conventional-prefixed commits (
feat:/fix:/ etc.) at release time. There is nochangelog addcommand — users don’t hand-curate changelog bullets. Seehomeboy releaseand the commits since the last tag.
Subcommands
Default (show)
homeboy changelog
homeboy changelog --self
homeboy changelog show
homeboy changelog show <component_id>Note: Homeboy generates changelog entries automatically from conventional-prefixed commits (feat: / fix: / etc.) at release time. There is no changelog add command — users don’t hand-curate changelog bullets. See homeboy release and the commits since the last tag.
Note: Homeboy generates changelog entries automatically from conventional-prefixed commits (feat: / fix: / etc.) at release time. There is no changelog add command — users don’t hand-curate changelog bullets. See homeboy release and the commits since the last tag.
--self: Show Homeboy’s own changelog (release notes) instead of a component’s changelog
Shows the embedded Homeboy CLI changelog documentation (from docs/changelog.md), or a specific component’s changelog when a component ID is provided.
Prerequisites
Options:
homeboy component set <id> --changelog-target "CHANGELOG.md"This prints raw markdown to stdout.
Configure the changelog path:
Changelog Resolution
This is required for release.
Release can bootstrap a missing configured changelog target on the first release. Changelog setup is owned by component configuration; there is no manual changelog initialization command.
- Changelog path resolution:
- If
changelog_targetis set in the component config, that path is used (relative tocomponent.local_pathunless it’s absolute). - If
changelog_targetis not configured, the command errors with instructions to set it.
- If
- "Next section" resolution:
- If no label is configured, Homeboy defaults to
Unreleased. - If no aliases are configured, Homeboy matches both
Unreleasedand[Unreleased]. - If aliases are configured, Homeboy ensures the label and bracketed label are included for matching.
- Config overrides (most specific first): component config → project config → defaults.
- If no label is configured, Homeboy defaults to
Homeboy resolves the changelog from the component’s changelog_target configuration for show (when a component ID is given) and for release-time finalization.
- If
changelog_targetis set in the component config, that path is used (relative tocomponent.local_pathunless it’s absolute). - If
changelog_targetis not configured, the command errors with instructions to set it.
JSON output
Note: all command output is wrapped in the global JSON envelope described in the JSON output contract. The object below is the
datapayload.
Configuration / defaults (strict by default):
- If no label is configured, Homeboy defaults to
Unreleased. - If no aliases are configured, Homeboy matches both
Unreleasedand[Unreleased]. - If aliases are configured, Homeboy ensures the label and bracketed label are included for matching.
- Config overrides (most specific first): component config → project config → defaults.
JSON output (default / show)
Note: all command output is wrapped in the global JSON envelope described in the JSON output contract. The object below is the data payload.
{
"command": "show",
"topic_label": "changelog",
"content": "<markdown content>"
}Errors
- If
changelog_targetis set in the component config, that path is used (relative tocomponent.local_pathunless it’s absolute). - If
changelog_targetis not configured, the command errors with instructions to set it.
Related
- If no label is configured, Homeboy defaults to
Unreleased. - If no aliases are configured, Homeboy matches both
Unreleasedand[Unreleased]. - If aliases are configured, Homeboy ensures the label and bracketed label are included for matching.
- Config overrides (most specific first): component config → project config → defaults.