Help us improve
Share bugs, ideas, or general feedback.
npx claudepluginhub rjroy/vibe-garden --plugin compass-roseHow this skill is triggered — by the user, by Claude, or both
Slash command
/compass-rose:add-itemThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
---
Captures backlog items via MCP server in guided, quick, or autonomous modes. Validates fields, detects duplicates, creates GitHub issues for P0/P1 priorities.
Manages GitHub Projects v2 via gh CLI: create/edit/list projects, add issues/PRs as items, manage fields, link repos, automate workflows.
Creates p5.js generative art with seeded randomness, noise fields, and interactive parameter exploration. Use for algorithmic art, flow fields, or particle systems.
Share bugs, ideas, or general feedback.
You are now in Add Item Mode. Your role is to interactively gather details about a new work item, create a repository issue, link it to the configured GitHub Project, and set appropriate custom fields.
gh issue creategh-api-scripts add-to-projectgh-api-scripts operations (set-status, set-priority, set-size)IMPORTANT: Before performing any GitHub Project operations, you MUST invoke the compass-rose:gh-api-scripts skill using the Skill tool:
Skill(compass-rose:gh-api-scripts)
This skill provides:
add-to-project - Link issue to projectset-status - Set status fieldset-priority - Set priority fieldset-size - Set size fieldDo NOT use raw gh project commands. The skill documentation shows exact command syntax using ${CLAUDE_PLUGIN_ROOT}.
The gh-api-scripts skill handles configuration loading and validation. Verify config exists before gathering user input:
# Check config exists (detailed validation done by gh-api-scripts operations)
if [ ! -f .compass-rose/config.json ]; then
echo "Error: Configuration file not found."
echo ""
echo "Please create .compass-rose/config.json with your project details."
exit 1
fi
Configuration validation is performed by the add-to-project operation - if config is missing or invalid, it returns structured error responses.
Interactively prompt the user for the following details:
What is the title of the new item?
Example: "Fix login timeout bug" or "Add dark mode support"
Validation:
Provide a description for this item (optional, press Enter to skip):
Include:
- What needs to be done
- Why it's important
- Any relevant context or links
- Acceptance criteria (for larger items)
Default: Empty string if user skips
Select priority for this item:
Available options:
1. P0 - Critical
2. P1 - High
3. P2 - Medium
4. P3 - Low
Enter number (1-4) or press Enter for P2 (default):
Default: P2 (medium priority) if user skips Validation: Must be one of the project's configured priority options
Select size estimate for this item:
Available options:
1. S - Small (< 4 hours)
2. M - Medium (1-2 days)
3. L - Large (3-5 days)
4. XL - Extra Large (> 1 week, consider spec)
Enter number (1-4) or press Enter for M (default):
Default: M (medium) if user skips Validation: Must be one of the project's configured size options
XL Warning: If user selects XL:
XL items typically benefit from formal specification.
Consider using /lore-development:specify to create a detailed spec before implementation.
This ensures clear success criteria and reduces scope creep.
Continue with XL size? (y/n):
Select initial status for this item:
Available options:
1. Ready - Ready for implementation
2. To Do - Backlog (needs refinement)
3. Blocked - Cannot proceed yet
Enter number (1-3) or press Enter for "Ready" (default):
Default: "Ready" if user skips Validation: Must be one of the project's configured status options
Use gh issue create to create the issue first:
# Get repository name from git remote
REPO=$(gh repo view --json nameWithOwner --jq .nameWithOwner)
# Create issue and capture URL
ISSUE_URL=$(gh issue create \
--title "$TITLE" \
--body "$DESCRIPTION" \
--repo "$REPO" \
--json url \
--jq .url)
# Extract issue number from URL (for confirmation message)
ISSUE_NUMBER=$(echo "$ISSUE_URL" | grep -oP '\d+$')
Error Handling:
Error: Failed to create repository issue.
Verify that:
1. You have write access to the repository
2. You are authenticated: gh auth status
3. The repository exists: gh repo view
Use the add-to-project operation from the gh-api-scripts skill (which you invoked earlier). The skill documentation shows the exact command syntax using ${CLAUDE_PLUGIN_ROOT}.
Note: The config must include a repository field for add-to-project to work. The script returns structured errors for missing config or authentication issues.
Use the set-status, set-priority, and set-size operations from the gh-api-scripts skill. Each operation handles field discovery internally. The skill documentation shows the exact command syntax using ${CLAUDE_PLUGIN_ROOT}.
Notes:
FIELD_NOT_FOUND error indicates the project doesn't have that field configuredError Handling:
Warning: Failed to set <field> field.
The item was created successfully but some fields could not be set.
You can manually update these fields in the GitHub Projects web UI.
Display summary of created item:
Item created successfully!
Issue: #<issue-number> - <title>
Link: <issue-url>
Fields set:
- Priority: <priority-value>
- Size: <size-value>
- Status: <status-value>
View in project: https://github.com/orgs/<owner>/projects/<number>
If any fields failed to set:
Item created successfully!
Issue: #<issue-number> - <title>
Link: <issue-url>
Fields set:
- Priority: <priority-value>
- Size: <size-value>
Could not set: Status (manual update required)
View in project: https://github.com/orgs/<owner>/projects/<number>
No Custom Fields Available:
Note: This project has no custom fields configured. Only title and description
will be set.
The item will be created as a basic repository issue linked to the project.
Authentication Issues:
Error: GitHub CLI is not authenticated.
Run the following command to authenticate:
gh auth login
After authentication, you may need to add the 'project' scope:
gh auth refresh -s project
Repository Not Found:
Error: Could not determine repository.
Verify that:
1. You are in a git repository: git status
2. Repository has a GitHub remote: git remote -v
3. You have access to the repository: gh repo view
User Cancellation: If user enters "cancel" or "exit" at any prompt:
Item creation cancelled. No changes made.
This skill implements the following specification requirements:
Performance Targets:
Data Flow:
CLI Dependencies:
gh CLI installed and authenticatedproject scope authorized (gh auth refresh -s project)jq for JSON parsinggit for repository contextgh-api-scripts skillTwo-Step Creation Process: Following TD-5 from the plan, we ALWAYS create repository issues first, then link to project. This ensures:
--- Create New Item ---
What is the title of the new item?
> Fix authentication timeout on mobile
Provide a description for this item (optional, press Enter to skip):
> Users on mobile devices are experiencing session timeouts after 30 seconds
> of inactivity. The web app timeout is configured for 30 minutes.
>
> Acceptance criteria:
> - Mobile timeout matches web (30 minutes)
> - Existing sessions are not affected
> - Timeout is configurable via environment variable
Select priority for this item:
Available options:
1. P0 - Critical
2. P1 - High
3. P2 - Medium
4. P3 - Low
Enter number (1-4) or press Enter for P2 (default):
> 1
Select size estimate for this item:
Available options:
1. S - Small (< 4 hours)
2. M - Medium (1-2 days)
3. L - Large (3-5 days)
4. XL - Extra Large (> 1 week, consider spec)
Enter number (1-4) or press Enter for M (default):
> 1
Select initial status for this item:
Available options:
1. Ready - Ready for implementation
2. To Do - Backlog (needs refinement)
3. Blocked - Cannot proceed yet
Enter number (1-3) or press Enter for "Ready" (default):
> 1
Creating repository issue...
Issue created: #156
Linking to project...
Added to project
Setting custom fields...
Priority set to P0
Size set to S
Status set to Ready
Item created successfully!
Issue: #156 - Fix authentication timeout on mobile
Link: https://github.com/my-org/my-repo/issues/156
Fields set:
- Priority: P0
- Size: S
- Status: Ready
View in project: https://github.com/orgs/my-org/projects/123
gh CLI authentication/compass-rose:next-item - Find next work item to tackle/compass-rose:backlog - Review entire backlog/compass-rose:start-work - Begin implementation of item/lore-development:specify - Create formal spec for large items (Lore Development integration)compass-rose/skills/gh-api-scripts/SKILL.md (GitHub Project API operations)