Supported Tools
GitHub Issues
Uses
gh CLI (no additional auth required)Jira
REST API v3 with email + API token
Linear
GraphQL API with API key
Notion
REST API with integration token
Quick Setup
Run the interactive setup wizard:Configuration
Set your project management tool in.devdaily.json:
.devdaily.json
enum
default:"github"
Primary project management tool:
github, jira, linear, notion, or nonestring
Ticket ID prefix (e.g.,
PROJ, ENG, DEV). Used to extract ticket numbers from branch names and commits.string (regex)
Custom regex pattern for ticket extraction (advanced). Overrides default patterns.
GitHub Issues
Authentication
GitHub Issues uses thegh CLI, which must be authenticated:
gh session.
Configuration
.devdaily.json
Ticket ID Patterns
GitHub Issues are referenced by number:#123- Issue number 123gh-123- Alternative format
- Branch names:
feature/123-auth-refactor,fix/#456-bug - Commit messages:
Fix #123: Add authentication
Example
Jira
Authentication
Jira requires:- Base URL: Your Jira instance URL
- Email: Your Jira account email
- API Token: Generate at https://id.atlassian.com/manage-profile/security/api-tokens
1
Generate API Token
- Go to https://id.atlassian.com/manage-profile/security/api-tokens
- Click “Create API token”
- Name it “DevDaily” and copy the token
2
Store Credentials
Add to
~/.config/devdaily/secrets.json:3
Configure Tool
Set in
.devdaily.json:4
Test Connection
Configuration
string
required
Jira instance URL (e.g.,
https://yourcompany.atlassian.net)string
Default project key for searches (e.g.,
PROJ, ENG)boolean
default:"true"
Use API token authentication (recommended)
Ticket ID Patterns
Jira tickets follow the formatPROJECT-123:
PROJ-123- Standard formatENG-456- Different project
- Branch names:
feature/PROJ-123-auth,PROJ-456/implementation - Commit messages:
PROJ-123: Add authentication
Environment Variables
Example
Linear
Authentication
Linear requires an API key:1
Generate API Key
- Go to https://linear.app/settings/api
- Click “Create new API key”
- Name it “DevDaily” and copy the key
2
Store API Key
Add to
~/.config/devdaily/secrets.json:3
Configure Tool
.devdaily.json
Configuration
string
Team identifier (e.g.,
ENG, DEV, PROD)boolean
default:"true"
Use Linear API (vs CLI - API recommended)
Ticket ID Patterns
Linear tickets use formatTEAM-123:
ENG-123- Engineering team issueDEV-456- Development team issue
- Branch names:
feature/ENG-123-auth,ENG-456/bugfix - Commit messages:
ENG-123: Implement OAuth
Environment Variables
Example
Notion
Authentication
Notion requires:- Integration Token: Create an integration at https://www.notion.so/my-integrations
- Database ID: The ID of your tasks/issues database
1
Create Integration
- Go to https://www.notion.so/my-integrations
- Click “New integration”
- Name it “DevDaily” and save
- Copy the “Internal Integration Token”
2
Share Database
- Open your tasks/issues database in Notion
- Click ”…” → “Add connections”
- Select your “DevDaily” integration
3
Get Database ID
From the database URL:
4
Store Credentials
~/.config/devdaily/secrets.json
Configuration
string
required
Notion database ID containing tasks/issues
boolean
default:"true"
Use Notion API (recommended)
Ticket ID Patterns
Notion uses UUIDs:a1b2c3d4-e5f6-7890-abcd-ef1234567890- Full UUIDa1b2c3d4e5f67890abcdef1234567890- UUID without hyphens
Notion integration is limited compared to other tools because Notion doesn’t have built-in issue tracking. Best used with structured databases.
Environment Variables
Ticket Extraction
DevDaily automatically extracts ticket IDs from:Branch Names
Common patterns:Commit Messages
Custom Patterns
For non-standard formats, use a custom regex:.devdaily.json
Fetched Metadata
DevDaily fetches the following ticket data:string
Ticket ID (e.g.,
PROJ-123, #456, ENG-789)string
Ticket title/summary
string
Full ticket description
string
Current status (e.g.,
In Progress, Done, open)enum
Issue type:
bug, feature, task, story, epic, or otherenum
Priority level:
low, medium, high, or criticalstring
Assigned person’s name
string[]
Associated labels/tags
string
Direct link to ticket
Testing Connection
Verify your PM integration is working:Usage in Commands
Standup
Tickets are automatically included in standups:PR Descriptions
Ticket data enriches PR descriptions:Weekly Summaries
Disabling PM Integration
To disable project management integration:.devdaily.json
Troubleshooting
Authentication Errors
Linear: Invalid API Key
Linear: Invalid API Key
- Verify API key in secrets.json starts with
lin_api_ - Regenerate at https://linear.app/settings/api
- Check key has required permissions
GitHub: Not authenticated
GitHub: Not authenticated
- Run
gh auth login - Verify:
gh auth status - Ensure gh CLI version >= 2.0
Notion: 404 Not Found
Notion: 404 Not Found
- Verify database ID is correct
- Check integration has access to database
- Re-share database with integration
Tickets Not Found
-
Check ticket ID format:
-
Verify ticketPrefix:
-
Test extraction manually:
Rate Limiting
API rate limits:- Jira: 10 req/sec per user
- Linear: 2000 req/hour
- GitHub: 5000 req/hour (authenticated)
Best Practices
1
Use consistent branch naming
Always include ticket ID in branch names:
2
Reference tickets in commits
3
Configure ticketPrefix
Set your team’s standard prefix:
4
Test before relying on automation
Related Configuration
Configuration Overview
Learn about all configuration options
PR Templates
Customize how ticket data appears in PRs