Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

LAT4MRE — LLM-Assisted Tool for Multilingual Requirements Elicitation

LAT4MRE is a small web app that lets people describe software requirements in their own native language through a chatbot, and automatically turns the conversation into structured English-language user stories that get pushed to Jira.

How it works

  • Chatbot — a conversational agent (built with n8n + an LLM) that talks to the stakeholder in whatever language they use, asks clarifying questions, and keeps track of the conversation.
  • Extraction pipeline — once the conversation is going, a second LLM step reads the transcript and pulls out concrete requirements, converting each one into a As a <user>, I want <goal> so that <benefit> user story, along with the original wording and the language it was expressed in.
  • Jira export — the generated user stories can be sent straight to a Jira project as issues.

Folder structure

server/
  server.js      # Node.js HTTP server + reverse proxy to the n8n webhooks
  index.html     # Chat frontend (no external dependencies)
n8n/
  LAT4MRE.json   # The n8n workflow (chatbot + extraction pipeline)

Setup

  1. Import the workflow. Open n8n, import n8n/LAT4MRE.json, and add your own credentials for the LLM provider (the workflow was built for Claude models via n8n's LangChain nodes. but any other model should be fine) and Jira. You'll also need to update the hardcoded Jira project/issue type in the "Create an issue" node to match your own project.

  2. Activate the workflow and grab the webhook URLs n8n generates for it (chat, history, requirements, reset, jira-trigger).

  3. Configure the server. Open server/server.js and fill in the five webhook URL constants at the top:

    const CHAT_WEBHOOK_URL         = '';
    const HISTORY_WEBHOOK_URL      = '';
    const REQUIREMENTS_WEBHOOK_URL = '';
    const RESET_WEBHOOK_URL        = '';
    const JIRA_WEBHOOK_URL         = '';
  4. Run it:

    node server/server.js

    Then open http://localhost:6967 (or whatever PORT you set) in your browser.

Notes

  • The frontend keeps all webhook URLs on the server side and only talks to /api/... routes itself, so nothing sensitive needs to live in the browser.
  • The n8n workflow writes conversation memory to /files/memory.json on disk — make sure that path exists and is writable wherever you run n8n.
  • Because the chat webhook is public by design (n8n chat triggers need to be reachable from the browser), keep an eye on who has your deployed URL, and consider regenerating the webhook ID if you fork this for your own use.

About

Tool for LLM-assisted Multilingual Requirements Elicitation

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages