Autonomy in action: from Jira ticket to PR
The payoff. Claude Code takes two real tickets from description to merged code — curating a dataset, then building a polished Next.js NDA app — and problem-solves around roadblocks along the way.
Everything is wired: Jira in, GitHub out, FeatureDev on the rails between them. Now we unleash it. In this page Claude Code takes two real tickets from description to merged code, almost untouched — and, just as valuably, we watch it hit a wall and problem-solve its way around it. This is the moment the whole week has been building toward.
01A meatier ticket: curate a dataset (PL-2)
Our first serious task is a one-off data-curation job. Pre-Legal needs a library of document templates to work from. There is a wonderful free source: Common Paper, a company that publishes standard legal agreements (a mutual NDA and more) as Markdown — exactly what LLMs love — under a permissive Creative Commons licence. In Jira we create PL-2 and give it a clear, human-level description:
“Create a dataset of legal document templates the system can later modify for the user. Browse the
Common Paper GitHub repos, pull down the Markdown files into a templates directory, add a
catalog.json describing each template, and include a licence file recognising the CC
licence.”
Notice the style: high-level and human, the kind of thing a product owner might write. It leaves the how to Claude.
02Per-project setup & the re-auth ritual
One gotcha: MCP servers can be registered per project. If you installed Atlassian while in a different folder,
add it again here, then /mcp → Re-authenticate (you will do this
before basically every big task — Approve, Accept, done). Now the plain-English kickoff:
Please carry out Jira issue PL-2 and raise a PR with your changes.
03Watch it problem-solve in real time
Off it goes: it fetches PL-2, reads what is needed, and starts pulling files with the GitHub tool. Then something remarkable happens.
Claude realises its first approach — pulling long files into its context one by one — is too slow and wasteful. So it stops, rethinks, and switches to a smarter method: run commands to download the files directly. It hit a roadblock, understood why, and engineered a better path around it — the kind of judgement that simply was not possible in earlier models.
The result: a templates/ directory full of Markdown agreements, a
catalog.json describing them, and a license.txt — exactly what
the ticket asked for. It even tried the GitHub command-line tool first, found it was not installed, and fell back to
its MCP tool to open the PR. Adaptive, resourceful, autonomous.
When Claude tried to mark PL-2 done in Jira, it hung — the auth had dropped again.
The fix is now muscle memory: Esc, /mcp, Re-authenticate, then
“please try marking the Jira issue complete again.” A calm retry is almost always the whole cure.
04Merge it — even without merge rights
With PL-2 marked done, we ask Claude to merge the PR and switch back to main. Interesting
twist: our fine-grained token does not grant merge permission. Rather than give up, Claude works around it by
merging locally and pushing to main — another route to the same outcome. Again: it understands
the reason behind the problem and finds a rational solution.
05The real feature: a Next.js NDA app (PL-3)
Now the headline build. In Jira we create PL-3, described the way a customer would — deliberately a little loose, so Claude has room to make good calls:
“A web application to create a mutual NDA document for a user. The user enters key information in a form; the website displays the mutual NDA with that information filled in; the user can download the completed document locally.”
This time we invoke the plugin directly — no need to say “use FeatureDev”:
feature-dev:feature-dev Please implement Jira issue PL-3 with a Next.js application in a directory called frontend and raise a PR when done.
One line ties it all together: Jira (MCP) for the ticket, FeatureDev (plugin) for the process, GitHub (MCP) for the PR. True to its rails, FeatureDev pauses at the clarify stage and asks smart questions — filling exactly the gaps we left loose:
| It asks… | We choose |
|---|---|
| What download format for the NDA? | PDF (its recommendation) |
| Single-step wizard or single-page form? | Single page |
| How should the preview display? | Side by side with the form |
| Simple prototype or styling polish? | Styling polish |
Then it builds — scaffolds the Next.js app, writes the components, and opens a PR. Run it with
cd frontend && npm run dev and there it is: a polished mutual-NDA creator. Fill the
form and the preview updates live as you type; press Download PDF and out comes a
clean, correctly-filled document with a cover sheet and the CC attribution. Zero-shot, from a ticket.
06“What did you actually test?”
It works — but did it follow every stage? We ask it plainly: “Based on the process you followed, what quality review or testing have you done?” Honest answer: it skipped the quality-review stage — no automated tests, no code-review agents, only a build check. Only because we asked did we learn a stage was missed.
We tell it: “Yes to all three — add extensive automated and manual tests, and have the code-reviewer agents review.” It works for ~10 minutes, writes 8,000+ lines including a real test suite, survives an auto-compact of its own context, and lands 76 tests passing across 5 suites. Then we re-authenticate one last time and have it merge the PR, push to main, and mark PL-3 done.
Autonomy does not mean “walk away.” It means Claude does the heavy lifting while you guide, question, and verify at each stage. Great questions from you (“what did you test?”) catch the gaps a staged process can still leave.
✓ Key takeaways
- Write tickets at a human, high level; let Claude decide the how.
- Claude can problem-solve mid-task — switching from a slow approach to a better one, or routing around missing merge rights by merging locally.
- Invoke a plugin directly with
feature-dev:feature-dev …— one line spans Jira, the build process, and the GitHub PR. - FeatureDev pauses to ask clarifying questions; your answers shape the build.
- Verify every stage: it can skip quality review and only admit it when asked — then a nudge produces a 76-test suite.