| name | sync-modules |
| description | Cerate or Update a GitHub Issue for each Module in the task document. |
| disable-model-invocation | true |
User Input
$ARGUMENTS
You MUST consider the user input before proceeding (if not empty).
Outline
-
Locate Feature & Tasks:
- Extract the feature name from the branch name or user input like
###-feature-name, e.g., 001-feature-name.
- Find the most likely feature in the specs directory, i.e.,
./specs/[###-feature-name]. The feature id and name must be exact match.
- The feature spec must has a task directory (i.e,
tasks/) including a metadata.md file and multiple module_i.md files. All paths must be absolute.
- Find the feature issue link in the
tasks/metadata.md file. If not exists, search the feature issue on the GitHub by the prefix [###-feature-name]. The feature id and name must be exact match. If not found, stop and report error "Feature issue not found: [###-feature-name]".
-
Check Current Modules:
- View the feature issue and its sub-issues on the GitHub to confirm the current modules.
- If some modules are missing, go to Step 3 to create them.
- If some modules are modified (local files and remote issues are different), synchronize them.
-
Create Module Issue: (For each module_i.md file)
- Create a new issue on the GitHub.
- The issue title is
[###-feature-name] Module <i>: <description>, e.g., [001-add-frontend] Module 1: Setup for biagent.
- The body is the
Goal (at the beginning of the module_i.md file) and tasks list (at metadata.md) of the module.
- The Assignee is given in the
module_i.md file. @me by default.
- The Labels are given in the
module_i.md file.
- The Milestone is given in the
module_i.md file. Skip if None is given.
- The Project is given in the
module_i.md file. Skip if None is given.
-
Link Sub-issue (Use GitHub Sub-issue api):