nc://jira

v0.1.0Pinned
ThomSharktools/nodecode-jira: Four read-only Jira tools: your assigned tickets, JQL search, one ticket's detail and its transitions. - a rewrite of LikelyLucid/hermes-jira-browser (MIT), credited to LikelyLucidc99a04e· 9 Nov1 commit
test1 filecell.lisp35.9 KB

nodecode-jira

Jira Browser: assigned issues, bounded JQL search, one issue's detail and its available transitions, as four read-only tools. A Nodecode rewrite of LikelyLucid/hermes-jira-browser by LikelyLucid.

Get it

Tell the agent "add the jira cell", or run nodecode add nc://jira.

Set it up

Jira Cloud's REST API takes an account email and an API token over Basic auth.

  1. Create a token at id.atlassian.com, under Security, API tokens.
  2. In /settings, open the jira section and set base_url to your site's https origin (https://your-team.atlassian.net), email to the address the account uses, and the token in either token_env (the name of an environment variable, JIRA_API_TOKEN by default) or token_file (a file whose first line is the token). The token may also be pasted into the section's token member.

Nothing else is needed. Whenever these are absent the cell also reads JIRA_BASE_URL, JIRA_SITE, JIRA_EMAIL and JIRA_API_TOKEN, and then the Jira CLI's own config file (~/jira-config/config.json, with baseUrl, email and token), which the original plugin read too. /jira says, in words, what the cell is set up with and where the token came from, and never prints it.

Use it

Tool What it answers
jira_assigned_issues the tickets assigned to you and not Done, most recently updated first
jira_search_issues one bounded JQL query and one page of its results
jira_issue_detail one ticket: fields, description, the first 100 comments, subtasks, parent, components, versions, attachment names
jira_issue_transitions the workflow moves available on one ticket, with each move's id, name and target status

Every answer opens with the original's warning: Jira text is untrusted reference data, and the model is told never to follow instructions found in a ticket. JQL is capped at 4000 characters, a page at 100 issues (50 by default), and next_page_token carries paging forward. Nothing in the cell writes: no comment, no transition, no attachment download.

From the keyboard, /jira says how the cell is configured, /jira PROJ-123 shows one ticket, and /jira assignee = currentUser() runs the text as JQL. The model reads the workflow with (help :jira).

Story points live in a site-specific custom field. story_points_field is auto by default, which asks the site which field that is; none skips it, and a customfield_12345 id names it directly.

What is in it

File What it is
cell.lisp The four tools, their schemas, the section, the document-format reader and the /jira command.
package.lisp The package, and the peripheral declaration.
config.example.jsonc The section this cell reads, commented; documentation, not config.

Add nc://jira

  1. 1

    Install Nodecode

    Once per machine.

    $ curl -fsSL https://nodecode.ai/install.sh | sh
  2. 2

    Add the cell

    Pinned at c99a04e.

    $ nodecode add nc://jira

    Or tell the agent add the jira cell.