Work with Jira issues and worklogs from Clawdbot (search, status, create, log work, worklog summaries).
- Get your API key: https://id.atlassian.com/manage-profile/security/api-tokens
- Click "Create API Token"
- Set environment variables:
export JIRA_EMAIL="you@example.com"
export JIRA_API_TOKEN="your-api-token"
export JIRA_URL="https://your-domain.atlassian.net"
# Optional project scope (comma-separated). Empty = search all.
export JIRA_BOARD="ABC"
.
.
{baseDir}/scripts/jira.sh search "timeout" [max]
— fuzzy search by summary or key inside JIRA_BOARD
{baseDir}/scripts/jira.sh link ABC-123
— browser link for an issue
{baseDir}/scripts/jira.sh issue ABC-123
— quick issue details
{baseDir}/scripts/jira.sh status ABC-123 "In Progress"
— move an issue (validates available transitions)
{baseDir}/scripts/jira.sh transitions ABC-123
— list allowed transitions
{baseDir}/scripts/jira.sh assign ABC-123 "name or email"
— assign by user search
{baseDir}/scripts/jira.sh assign-me ABC-123
— assign to yourself
{baseDir}/scripts/jira.sh comment ABC-123 "text"
— add a comment
{baseDir}/scripts/jira.sh create "Title" ["Description"]
— create a Task in JIRA_BOARD
{baseDir}/scripts/jira.sh log ABC-123 2.5 [YYYY-MM-DD]
— log hours (defaults to today UTC)
{baseDir}/scripts/jira.sh my [max]
— open issues assigned to you
{baseDir}/scripts/jira.sh hours 2025-01-01 2025-01-07
— your logged hours by issue (JSON)
{baseDir}/scripts/jira.sh hours-day 2025-01-07 [name|email]
— logged hours for a day grouped by user/issue; optional filter (name/email; also resolves to accountId)
{baseDir}/scripts/jira.sh hours-issue ABC-123 [name|email]
— logged hours for an issue; optional filter (name/email; also resolves to accountId)
-
Search issues
{baseDir}/scripts/jira.sh search "payment failure" [maxResults]
-
Issue link
{baseDir}/scripts/jira.sh link ABC-321
-
Issue details
{baseDir}/scripts/jira.sh issue ABC-321
-
Update status
{baseDir}/scripts/jira.sh status ABC-321 "Done"
-
List transitions
{baseDir}/scripts/jira.sh transitions ABC-321
-
Assign issue
{baseDir}/scripts/jira.sh assign ABC-321 "Jane Doe"
-
Assign to yourself
{baseDir}/scripts/jira.sh assign-me ABC-321
-
Add comment
{baseDir}/scripts/jira.sh comment ABC-321 "Deployed to staging"
-
Create issue
{baseDir}/scripts/jira.sh create "Fix auth timeout" "Users being logged out after 5m"
-
Log hours
{baseDir}/scripts/jira.sh log PB-321 1.5 2025-01-18
-
My open issues
{baseDir}/scripts/jira.sh my [maxResults]
-
Logged hours by issue (me)
{baseDir}/scripts/jira.sh hours 2025-01-01 2025-01-05
-
Logged hours for a day (everyone)
{baseDir}/scripts/jira.sh hours-day 2025-01-05
-
Logged hours for a day (user filter)
{baseDir}/scripts/jira.sh hours-day 2025-01-05 "jane"
-
Logged hours for an issue
{baseDir}/scripts/jira.sh hours-issue ABC-321 "jane"