valantic-cec / aijira
Use OpenAI to generate sprint goals, a sprint review agenda or jira ticket field descriptions.
1.0.7
2023-09-25 09:16 UTC
Requires
- php: >=8.0
- ext-curl: *
- guzzlehttp/guzzle: ^7.7
- jfcherng/php-diff: ^6.15
- symfony/console: ^6.3
- symfony/process: ^6.3
Requires (Dev)
- phpunit/phpunit: ^9.5
README
Automization for regular project related tasks - no developer likes.
Usage
> aijira <COMMAND>
Setup
- install PHP
composer global require valantic-cec/aijira
- add environment variables mentioned below
Configuration
The following env parameters need to be configured, depending on the CLI commands you like to use (just configure them all):
- Retrieve your OpenAI API Key
- Retrieve your Jira API Key
- Retrieve your Gitlab Access Token
Scope | Variable |
---|---|
global | OPENAI_KEY |
aisprintgoals aiticketvalidator aiticketestimate aiticketinterview |
AI_JIRA_EMAIL (i.e. schoenfeld@nexus-netsoft.com) AI_JIRA_API_TOKEN (i.e. ATATT3xF...) AI_JIRA_URL (i.e. https://nexus-netsoft.atlassian.net/) AI_JIRA_PROJECT (i.e. SPRY) AI_JIRA_BOARD_ID (i.e. 10) |
aisprintreview aireleasenotes |
AI_GITLAB_URL (selfhosted i.e. https://gitlab.nxs360.com/, SaaS https://gitlab.example.com/) AI_GITLAB_TOKEN (i.e. 9s6h...) AI_GITLAB_PROJECT_IDS (i.e. 476,735) |
Examples
Use OpenAI to generate your sprint goals for a planned or existing sprint.
> aijira sprint:goals "<SPRINT-NAME>" > aijira ticket:sprintgoals "<Ticket1>,<Ticket2>,<Ticket3>"
Use OpenAI to generate a sprint review agenda.
> aijira sprint:review "<SPRINT-NAME>"
Use OpenAI to ask the right questions. (Works best with a Story)
> aijira ticket:ask "<TICKET-NR>"
Use OpenAI to get an estimation in hours for a specific task.
> aijira ticket:estimate "<TICKET-NR>"
Use OpenAI to score a given ticket for its completeness & quality on a scale between 1 and 10.
> aijira ticket:score "<TICKET-NR>"
Use OpenAI to improve ticket quality.
> aijira ticket:validate "<TICKET-NR>"
Use OpenAI to generate test-cases
> aijira ticket:test-cases "<TICKET-NR>"
Use OpenAI to generate your release notes to a given sprint. Its automatically collecting all merge requests.
> aijira sprint:release-notes "<SPRINT-NAME>"
Use OpenAI to generate testcases that allow manual check if ticket requirements are implemented correctly.
> aijira ticket:test-cases "<SPRINT-NAME>"
ToDo
None, code is perfect ;)