PrisM turns a one-line product idea into a validated strategy: 14 specialized AI agents run across an interactive graph, branch into parallel variations, converge into recommendations, and push approved work straight into JIRA as real tickets.
FastAPI · React 19 · TypeScript · ReactFlow · NVIDIA NIM (Llama 3.1 Nemotron 253B) · Auth0 · JIRA REST v3
Building a feature, running agents across the strategy graph, and auto-creating JIRA tickets on approval.
PrisM_demo.mp4
▶️ Video not playing? Watch it on YouTube instead.
Requires an NVIDIA API key and an Auth0 SPA app - see Environment Setup for exactly which keys and where they go.
# backend
cd backend && python3 -m venv .venv && source .venv/bin/activate
python3 -m pip install -r requirements.txt
python3 -m uvicorn app.main:app --reload # http://localhost:8000
# frontend (new terminal)
cd frontend && npm install && npm run dev # http://localhost:5173- Multi-Agent Workflow System: 14 specialized AI agents across 5 workflow categories
- Interactive Strategy Graph: Visual workflow representation with real-time agent execution
- JIRA Integration: Automatic project and ticket creation when nodes are approved
- Feature Management: Create, track, and iterate on product features
- Branch Exploration: Run parallel variations of agent outputs for deeper insights
- Convergence Analysis: Synthesize multiple perspectives into actionable recommendations
-
Project & Ideation
- Idea Brainstormer
- Market Sizing Estimator
- Scenario Planner
- Needs & Goals Mapper
- Convergence Synthesizer
-
Requirements & Development
- Story Refinement Agent
- Backlog Prioritization Agent
-
Customer & Market Research
- Competitor Analysis Agent
- Industry Trends Synthesis Agent
-
Prototyping & Testing
- Test Case Generator Agent
- Design Iteration Agent
-
Go-to-Market Execution
- GTM Strategy Agent
- Release Notes Agent
- Stakeholder Communication Agent
- FastAPI: Modern Python web framework for building APIs
- OpenAI: LLM integration via NVIDIA API endpoints
- JIRA REST API v3: Project and issue management integration
- Pydantic: Data validation and settings management
- Python 3.x: Core programming language
- React 19: UI framework
- TypeScript: Type-safe JavaScript
- Vite: Fast build tool and dev server
- ReactFlow: Interactive node-based graph visualization
- Tailwind CSS: Utility-first CSS framework
- shadcn/ui: Beautifully designed component library
- Auth0: Authentication and authorization
- File-based Storage: JSON-based feature persistence
- Environment Variables: Secure credential management
- Python 3.8+
- Node.js 18+
- npm (or pnpm)
- NVIDIA API key - required, agents will not run without it
- Auth0 tenant - required, the dashboard and graph pages are auth-gated
- JIRA account (optional, for ticket automation)
PrisM needs two .env files in different directories - the backend reads the project root, and Vite only reads frontend/. Copy the templates:
cp .env.example .env
cp frontend/.env.example frontend/.envYou need to bring your own keys. Nothing here ships with credentials.
| Variable | Required | What it's for |
|---|---|---|
NVIDIA_API_KEY |
Yes | All LLM calls. Agent runs return HTTP 503 without it. Get one at build.nvidia.com → pick any model → Get API Key |
NVIDIA_API_BASE_URL |
No | Defaults to https://integrate.api.nvidia.com/v1 |
JIRA_BASE_URL |
No | e.g. https://your-instance.atlassian.net |
JIRA_EMAIL |
No | Atlassian account email |
JIRA_API_TOKEN |
No | Create a token |
Without the JIRA trio, features and agents work normally - only automatic project/ticket creation is skipped.
| Variable | Required | What it's for |
|---|---|---|
VITE_AUTH0_DOMAIN |
Yes | Auth0 tenant, e.g. your-tenant.us.auth0.com |
VITE_AUTH0_CLIENT_ID |
Yes | Auth0 SPA client ID |
VITE_API_BASE_URL |
No | Defaults to http://localhost:8000 |
⚠️ /feature-dashboardand/graphare behind<ProtectedRoute>. If the two Auth0 variables are missing, Auth0 never initializes and both pages render blank with no visible error (check the browser console for the warning). The landing page still loads.
To set up Auth0: create a free Single Page Application at manage.auth0.com, then set both Allowed Callback URLs and Allowed Web Origins to http://localhost:5173.
cd backend
python3 -m venv .venv && source .venv/bin/activate
python3 -m pip install -r requirements.txt
python3 -m uvicorn app.main:app --reloadThe API will be available at http://localhost:8000 - check GET /health.
cd frontend
npm install # or: pnpm install
npm run dev # or: pnpm run devThe frontend will be available at http://localhost:5173
- Navigate to the Feature Dashboard
- Click "Create a new feature"
- Enter a feature name and problem statement
- A JIRA project is automatically created (if configured)
- Navigate to the strategy graph to begin exploration
- Select an agent node in the graph
- Provide input based on the agent's requirements
- Click "Run" to execute the agent
- Review the structured output
- Optionally run branch explorations for variations
- Review agent outputs in the graph
- Mark nodes as "approved" when satisfied
- JIRA tickets are automatically created for approved nodes:
- Story Refinement → User Stories
- GTM Strategy → GTM tasks
- Backlog Prioritization → Prioritized tasks
Run complete workflows end-to-end:
- Project & Ideation: Generate and validate ideas
- Requirements & Development: Refine stories and prioritize backlog
- Customer & Market Research: Analyze competition and trends
- Prototyping & Testing: Generate tests and iterate designs
- Go-to-Market Execution: Plan launch and communicate
- Full Strategy Pipeline: Run all agents sequentially
GET /v1/features- List all featuresPOST /v1/features- Create a new feature (with JIRA project)GET /v1/features/{id}- Get feature detailsPATCH /v1/features/{id}- Update feature (triggers JIRA ticket creation on approval)
GET /v1/agents/graph- Get agent graph structurePOST /v1/agents/query- Query a single agentPOST /v1/agents/branch-converge- Converge branch explorationsPOST /v1/agents/converge- Synthesize all agent outputs
GET /v1/pipelines- List available pipelinesPOST /v1/pipelines/run- Execute a pipeline workflow
- On-Demand JIRA Projects: Automatically creates JIRA projects per feature for organized tracking
- Intelligent Context Propagation: Each agent receives feature context for better responses
- Branch & Converge Pattern: Explore multiple variations and synthesize insights
- Real-Time Notifications: Toast notifications for JIRA project/ticket creation
- Visual Workflow Editor: Interactive graph showing agent relationships and execution flow
Prism/
├── backend/
│ ├── app/
│ │ ├── main.py # FastAPI application & agent logic
│ │ └── data/
│ │ └── features.json # Feature storage
│ └── requirements.txt # Python dependencies
├── frontend/
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── pages/ # Page components
│ │ ├── lib/ # Utility helpers
│ │ └── types/ # TypeScript type definitions
│ ├── .env # Auth0 + API base URL (gitignored)
│ ├── .env.example
│ ├── package.json
│ └── vite.config.ts
├── .env # NVIDIA + JIRA credentials (gitignored)
├── .env.example
└── README.md
This project was built for HackUTD 2025. Contributions, issues, and feature requests are welcome!
MIT License - see LICENSE file for details
- Built with NVIDIA AI APIs
- Powered by OpenAI's language models
- Integrated with Atlassian JIRA
- UI components from shadcn/ui
- Graph visualization by ReactFlow
HackUTD 2025 | Built with ❤️ by Team PrisM