This document describes all available public commands that can be executed via GitHub issue or pull request comments using the @holdex bot.
All commands follow the pattern:
@holdex <object> <action> [arguments...]
Arguments can be provided as:
--key=value or --key="value with spaces"Creates a Spec document for current issue.
Location: Issue comments only (not in pull requests)
Command:
@holdex issue create-spec
Example:
@holdex issue create-spec
Attaches a Spec document to current Goal.
Location: Goal issue comments only
Command:
@holdex issue attach-spec <doc> | --doc=<doc>
Arguments:
| Property | Type |
|---|---|
doc (*) |
string (min length: 1) |
(*) Required.
Example:
@holdex issue attach-spec https://docs.google.com/document/d/1234567890
Updates the ETA of the current Goal.
Location: Goal issue comments only
Command:
@holdex issue set-eta <eta> | --eta=<eta>
Arguments:
| Property | Description | Type |
|---|---|---|
eta (*) |
Estimated completion date in DD-MMM-YYYY format (e.g., 01-Jan-2026) | string (min length: 1) |
(*) Required.
Example:
@holdex issue set-eta 01-Jan-2026
Submits time spent on a pull request.
Location: Pull request comments only
Command:
@holdex pr submit-time <time> | --time=<time>
Arguments:
| Property | Description | Type |
|---|---|---|
time (*) |
Time spent on the PR in format like 15m, 1h, 2h30m, or 1.5h | string (min length: 1) |
(*) Required.
Example:
@holdex pr submit-time 2h30m
These commands use different event handling patterns and are processed separately from the standard command pipeline. It may use a different command pattern than the standard commands.
Important: Special commands must be placed at the start of the comment for them to be recognized.
Report the commit and author that introduced a bug. Use this when fixing a bug to attribute it to the original source.
Command Pattern:
@holdex bug commit <commit-url> && bug author @<username>
Example:
@holdex bug commit https://github.com/holdex/my-repo/commit/1234567890 && bug author @johndoe
Dispute a previous bug report after the PR has been merged. Use this to correct an incorrect bug attribution.
Command Pattern:
@holdex bug dispute <commit-url> && bug author @<username>
Example:
@holdex bug dispute https://github.com/holdex/my-repo/commit/1234567890 && bug author @johndoe
Report a guideline violation by referencing its ID (e.g., G123). Use this to flag code that violates project guidelines.
Command Pattern:
@holdex G<number>
Example:
@holdex G123
Command Execution Location: Each command has specific location restrictions (see individual command documentation above). Commands can be restricted to:
Command Pattern: Commands must follow the exact pattern @holdex <object> <action> [arguments...]. The object and action are case-insensitive and will be normalized to lowercase.
Error Handling: If a command fails, the bot will post a comment with error details, including the specific error message to help with troubleshooting.
Success Indication: Successful commands will add a reaction to your comment:
Asynchronous Execution: Commands are executed asynchronously. After parsing and validation, the command is triggered and runs in the background. The initial reaction (👀) indicates the command was accepted, while the final reaction (🚀) indicates completion.
Positional Arguments: Some commands support positional arguments as a convenience - they can be used instead of flags for common parameters. Positional arguments are captured for arguments that don't start with --.
Default Values: Some optional parameters have default values. Check individual command documentation above for details. If a parameter is not provided and has no default, it will be omitted.
Value Formatting:
--key="value with spaces" or --key='value with spaces'--key=value