{"id":51849787,"url":"https://github.com/manojmallick/bidforge-agent","last_synced_at":"2026-07-23T17:03:47.778Z","repository":{"id":370786155,"uuid":"1296974177","full_name":"manojmallick/bidforge-agent","owner":"manojmallick","description":"Agentic RFP command center for requirements, proposals, risks, approvals, ROI, and governance.","archived":false,"fork":false,"pushed_at":"2026-07-10T23:44:45.000Z","size":3123,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-11T01:12:35.156Z","etag":null,"topics":["agentic-workflow","ai-agents","bid-management","governance","hackathon","python","react","rfp","typescript","vercel","vite"],"latest_commit_sha":null,"homepage":"https://web-three-delta-62.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manojmallick.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-07-10T23:23:46.000Z","updated_at":"2026-07-10T23:44:40.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/manojmallick/bidforge-agent","commit_stats":null,"previous_names":["manojmallick/bidforge-agent"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/manojmallick/bidforge-agent","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojmallick%2Fbidforge-agent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojmallick%2Fbidforge-agent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojmallick%2Fbidforge-agent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojmallick%2Fbidforge-agent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manojmallick","download_url":"https://codeload.github.com/manojmallick/bidforge-agent/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojmallick%2Fbidforge-agent/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35809506,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-23T02:00:06.683Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-workflow","ai-agents","bid-management","governance","hackathon","python","react","rfp","typescript","vercel","vite"],"created_at":"2026-07-23T17:03:46.976Z","updated_at":"2026-07-23T17:03:47.761Z","avatar_url":"https://github.com/manojmallick.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BidForge Agent\n\n![React](https://img.shields.io/badge/React-19-61DAFB?logo=react\u0026logoColor=111)\n![TypeScript](https://img.shields.io/badge/TypeScript-5-3178C6?logo=typescript\u0026logoColor=fff)\n![Vite](https://img.shields.io/badge/Vite-7-646CFF?logo=vite\u0026logoColor=fff)\n![Python](https://img.shields.io/badge/Python-3.9+-3776AB?logo=python\u0026logoColor=fff)\n![Agentic Workflow](https://img.shields.io/badge/Agentic_Workflow-7_agents-006B5F)\n![Automation](https://img.shields.io/badge/Automation-5_min_cadence-0F766E)\n![Governance](https://img.shields.io/badge/Governance-RBAC_+_Audit-111827)\n![Deployment](https://img.shields.io/badge/Deployment-Vercel-000000?logo=vercel\u0026logoColor=fff)\n![Status](https://img.shields.io/badge/Hackathon_Demo-Ready-10B981)\n\nBidForge Agent is a governed agentic RFP command center for enterprise bid teams. It turns an uploaded RFP into structured requirements, evidence-backed proposal drafts, risk registers, SME tasks, judge verification, approval gates, ROI evidence, and audit-ready workflow history.\n\nThis is not a chatbot demo. BidForge is designed as a bid operating system: it reads the RFP, coordinates specialist agents, routes human work, verifies output quality, measures business value, and keeps final export under human control.\n\n## Live Demo\n\n| Resource | Link |\n| --- | --- |\n| Live app | [https://web-three-delta-62.vercel.app](https://web-three-delta-62.vercel.app) |\n| Dashboard | [Open dashboard](https://web-three-delta-62.vercel.app/?view=dashboard) |\n| Upload RFP | [Open upload](https://web-three-delta-62.vercel.app/?view=upload) |\n| Automation API | [GET /api/automations/current](https://web-three-delta-62.vercel.app/api/automations/current) |\n| Demo Run API | [GET /api/runs/demo](https://web-three-delta-62.vercel.app/api/runs/demo) |\n| Pitch deck | [DECK.pdf](./DECK.pdf) |\n| Sample RFP PDF | [Northwind Bank sample RFP](./docs/sample-rfps/Northwind_Bank_Core_Banking_Cloud_Migration_RFP.pdf) |\n\n## Problem\n\nEnterprise RFP responses are slow, fragmented, and risky. Bid teams manually read long documents, extract requirements, search old proposal content, draft answers, route reviews to SMEs, chase approvals, and verify that every mandatory requirement is covered before submission.\n\nThat manual process creates five recurring failure modes:\n\n- **Missed requirements:** mandatory clauses are overlooked in large documents.\n- **Weak evidence reuse:** previous proposal content is hard to find, trust, and cite.\n- **Unclear ownership:** legal, finance, delivery, security, and SMEs receive work late or informally.\n- **Approval risk:** risky or unsupported claims can reach proposal drafts before review.\n- **Poor leadership visibility:** teams struggle to show readiness, risk, ROI, and bid confidence.\n\n## Solution\n\nBidForge converts the RFP response lifecycle into a governed multi-agent workflow:\n\n```text\nUpload RFP\n  -\u003e Extract metadata and requirements\n  -\u003e Match approved evidence\n  -\u003e Draft proposal sections\n  -\u003e Flag risks and unsupported claims\n  -\u003e Route SME tasks by owner\n  -\u003e Verify quality with a judge agent\n  -\u003e Track role approvals and audit trail\n  -\u003e Export bid package\n  -\u003e Measure ROI, benchmark quality, and automation reliability\n```\n\nThe result is a reviewer-ready bid workspace where bid managers, SMEs, legal, finance, security, delivery, sales leadership, and admins can work from one shared source of truth.\n\n## Why It Matters\n\n| Business Need | BidForge Response |\n| --- | --- |\n| Faster first draft | Extracts requirements, drafts sections, and refreshes artifacts automatically |\n| Better compliance | Creates a traceable compliance matrix with owners, evidence, and confidence |\n| Lower proposal risk | Marks unsupported claims and blocks final export while approval gates are open |\n| Clear accountability | Routes SME tasks to Legal, Finance, Security, Delivery, Sales, and Admin views |\n| Stronger leadership story | Produces win brief, ROI simulator, benchmark mode, and admin analytics |\n| Enterprise trust | Includes RBAC, audit trail, prompt-injection guardrails, and human approvals |\n\nDemo ROI assumptions show a 118-page RFP with 6 reviewers moving from about 197 manual hours to 63 assisted hours, saving around 134 hours and roughly USD 12,730 at a USD 95 blended hourly rate. These are configurable demo assumptions, not production claims.\n\n## What Makes It Agentic\n\nBidForge uses specialist agents rather than a single linear prompt:\n\n| Agent | Responsibility |\n| --- | --- |\n| Intake Agent | Normalize uploaded RFP text, detect metadata, detect prompt-injection patterns |\n| Requirement Agent | Extract requirements with ID, category, priority, owner, evidence, and confidence |\n| Capability Agent | Match requirements to reusable proposal-bank evidence and solution assets |\n| Proposal Agent | Draft proposal sections while marking unsupported assumptions |\n| Risk Agent | Flag legal, compliance, SLA, delivery, commercial, and security risks |\n| SME Router Agent | Convert risks and gaps into role-owned reviewer tasks |\n| Judge Agent | Score coverage, citations, hallucination control, risk detection, and readiness |\n\nThe agents produce structured artifacts that the UI turns into a governed operating workflow, not just generated text.\n\n## Product Capabilities\n\n| Area | Capability |\n| --- | --- |\n| Upload | Paste RFP text or upload `.pdf`, `.txt`, or `.md`; PDF text is extracted before review |\n| Dashboard | Run summary, quality score, requirements, risks, latency, cost, and agent timeline |\n| Compliance Matrix | Requirement IDs, category, priority, status, owner, evidence, and confidence |\n| Proposal Draft | Evidence-backed response sections with `Verified`, `Needs SME`, and `Unsupported` states |\n| Knowledge Base Studio | Approved snippets, stale evidence, linked requirements, claim governance, export |\n| Collaboration Inbox | Role queues, reviewer comments, decisions, SLA pressure, handoff approvals |\n| Risk Register | Legal, finance, SLA, delivery, and security risk cards with mitigation and approval state |\n| SME Task Board | Kanban workflow for pending, assigned, answered, and approved reviewer tasks |\n| Judge Report | Quality rubric for requirement coverage, citations, hallucination control, and readiness |\n| Executive Win Brief | Opportunity summary, win themes, major risks, missing inputs, and recommendation |\n| Win Strategy | Bid/no-bid recommendation, win probability, blockers, and role-owned next actions |\n| Competitive Strategy Lab | Competitor radar, differentiators, red-team objections, executive talk track |\n| Export Pack | JSON package, Markdown memo, Word-compatible proposal, and PDF-ready print view |\n| Admin Analytics | Readiness, bottlenecks, role workload, automation reliability, and audit summary |\n| SLA Forecasting | Delay prediction, escalation queue, automation cadence, and next 24-hour plan |\n| ROI Simulator | Editable assumptions and exportable ROI scenario |\n| Benchmark Mode | Manual baseline vs BidForge scorecard across sample RFPs |\n| Governance | RBAC roles, approval gates, controls, audit trail, blocked final export |\n| AI Governance Scorecard | Evidence grounding, prompt-injection quarantine, model risk, and human gates |\n| Integration Simulator | Mock SharePoint, Teams, CRM, pricing, legal, and audit sync status |\n| Automation | 5-minute cadence, run now, pause/resume, frequency edit, persisted history |\n\n## Screenshots\n\n| Dashboard | Role Flow |\n| --- | --- |\n| ![BidForge dashboard](docs/screenshots/dashboard.png) | ![BidForge role flow](docs/screenshots/role-flow.png) |\n\n| Win Strategy | Competitive Strategy |\n| --- | --- |\n| ![BidForge win strategy](docs/screenshots/strategy.png) | ![BidForge competitive strategy lab](docs/screenshots/competitive.png) |\n\n| Knowledge Base | Collaboration Inbox |\n| --- | --- |\n| ![BidForge knowledge base studio](docs/screenshots/knowledge.png) | ![BidForge collaboration inbox](docs/screenshots/inbox.png) |\n\n| Export Pack | Admin Analytics |\n| --- | --- |\n| ![BidForge export pack](docs/screenshots/package.png) | ![BidForge admin analytics](docs/screenshots/analytics.png) |\n\n| Governance | AI Governance |\n| --- | --- |\n| ![BidForge governance](docs/screenshots/governance.png) | ![BidForge AI governance scorecard](docs/screenshots/ai-governance.png) |\n\n## Demo Routes\n\nThe deployed demo uses shareable query routes, so each view can be opened directly without hash URLs.\n\n| View | Live Link |\n| --- | --- |\n| Dashboard | [Open](https://web-three-delta-62.vercel.app/?view=dashboard) |\n| Upload | [Open](https://web-three-delta-62.vercel.app/?view=upload) |\n| Compliance Matrix | [Open](https://web-three-delta-62.vercel.app/?view=matrix) |\n| Proposal Draft | [Open](https://web-three-delta-62.vercel.app/?view=proposal) |\n| Knowledge Base | [Open](https://web-three-delta-62.vercel.app/?view=knowledge) |\n| Collaboration Inbox | [Open](https://web-three-delta-62.vercel.app/?view=inbox) |\n| Risk Register | [Open](https://web-three-delta-62.vercel.app/?view=risks) |\n| SME Tasks | [Open](https://web-three-delta-62.vercel.app/?view=tasks) |\n| Judge Report | [Open](https://web-three-delta-62.vercel.app/?view=judge) |\n| Executive Win Brief | [Open](https://web-three-delta-62.vercel.app/?view=brief) |\n| Win Strategy | [Open](https://web-three-delta-62.vercel.app/?view=strategy) |\n| Competitive Strategy | [Open](https://web-three-delta-62.vercel.app/?view=competitive) |\n| Export Pack | [Open](https://web-three-delta-62.vercel.app/?view=package) |\n| Admin Analytics | [Open](https://web-three-delta-62.vercel.app/?view=analytics) |\n| SLA Forecasting | [Open](https://web-three-delta-62.vercel.app/?view=sla) |\n| ROI Simulator | [Open](https://web-three-delta-62.vercel.app/?view=roi) |\n| Benchmark Mode | [Open](https://web-three-delta-62.vercel.app/?view=benchmark) |\n| Role Flow | [Open](https://web-three-delta-62.vercel.app/?view=flow) |\n| Governance | [Open](https://web-three-delta-62.vercel.app/?view=governance) |\n| AI Governance | [Open](https://web-three-delta-62.vercel.app/?view=ai-governance) |\n| Integrations | [Open](https://web-three-delta-62.vercel.app/?view=integrations) |\n| Automation | [Open](https://web-three-delta-62.vercel.app/?view=automation) |\n\nFor local development, use the same `?view=` values with your local Vite URL, for example `http://localhost:5174?view=dashboard`.\n\n## Architecture\n\nBidForge is intentionally lightweight for hackathon reliability while keeping clear production upgrade paths.\n\n```text\nReact/Vite Command Center\n  -\u003e API client with production same-origin API and local fallback\n  -\u003e Vercel serverless demo endpoints for deployed API routes\n  -\u003e Python HTTP API for local orchestration\n  -\u003e BidForge Orchestrator\n  -\u003e 7 agent modules + deterministic workflow derivation\n  -\u003e Automation scheduler + JSON state + audit store\n```\n\nSee [architecture.md](./architecture.md) for diagrams and deeper system design.\n\n## Technology Stack\n\n| Layer | Technology |\n| --- | --- |\n| Frontend | React, TypeScript, Vite |\n| UI | lucide-react, responsive command-center CSS |\n| PDF intake | `pdfjs-dist` browser-side text extraction |\n| Local API | Python stdlib `ThreadingHTTPServer` |\n| Deployed API | Vercel serverless functions under `apps/web/api` |\n| Orchestration | Python agent classes and deterministic workflow derivation |\n| Persistence | Local JSON runtime state for automation and audit trail |\n| CI/CD | GitHub Actions validation and Vercel deployment workflow |\n| Validation | Python `unittest`, TypeScript build, Vercel API typecheck |\n| Design source | Stitch command-center references in `docs/stitch_bidforge_agent_command_center/` |\n\n## API Surface\n\nThe live Vercel deployment exposes the same key API routes used by the app:\n\n```text\nGET  /api/runs/demo\nPOST /api/runs\nGET  /api/automations/current\nPOST /api/automations/current\nPOST /api/automations/current/run\nPOST /api/automations/current/pause\nPOST /api/automations/current/resume\n```\n\nLocal Python API also includes:\n\n```text\nGET  /health\nPOST /api/automations/current/tick\n```\n\n## Quick Start\n\nInstall dependencies:\n\n```bash\nnpm install\n```\n\nRun the complete local demo:\n\n```bash\nnpm run demo\n```\n\nOr run web and API separately:\n\n```bash\nnpm run dev:api\nnpm run dev:web\n```\n\nLocal URLs:\n\n```text\nWeb: http://localhost:5174\nAPI: http://127.0.0.1:8787\n```\n\nOptional local environment override:\n\n```text\nVITE_BIDFORGE_API_BASE=http://127.0.0.1:8787\n```\n\nSample upload PDF:\n\n```text\ndocs/sample-rfps/Northwind_Bank_Core_Banking_Cloud_Migration_RFP.pdf\n```\n\n## Validation\n\n```bash\nnpm run build:web\nnpm run typecheck:web-api\nnpm run test:api\n```\n\nCurrent validation status:\n\n- Web production build: passing\n- Vercel API route typecheck: passing\n- Python API unit tests: 34 passing\n- Browser smoke testing completed across core routes and workflows\n\n## Security And Governance\n\nBidForge is designed around human-approved automation:\n\n- Prompt-injection patterns are detected and quarantined as document content.\n- Automation changes are restricted to `bid_manager` and `admin` roles in the local API.\n- Denied and completed actions are recorded in the audit trail.\n- Unsupported claims are marked before they can reach final export.\n- Final export remains blocked while required approval gates are open.\n- Admin views expose role workload, bottlenecks, automation reliability, and readiness.\n\n## Project Structure\n\n```text\nbidforge-agent/\n  apps/web/                         React/Vite command center and Vercel API routes\n  services/api/                     Python API, orchestration, agents, automation, audit\n  docs/                             Problem, demo, architecture, judging, and design docs\n  docs/screenshots/                 README screenshots\n  docs/sample-rfps/                 Uploadable sample RFP PDF\n  docs/submission-assets/           Submission background image and logo\n  scripts/                          Demo, PDF, deck, and asset helper scripts\n  architecture.md                   System architecture and flow\n  DECK.pdf                          Judge-facing pitch deck\n  SUBMISSION.md                     Submission checklist and pitch summary\n```\n\n## Judge-Friendly Artifacts\n\n| Artifact | Purpose |\n| --- | --- |\n| [DECK.pdf](./DECK.pdf) | Pitch deck for business value and solution overview |\n| [architecture.md](./architecture.md) | System architecture, flow, automation, and governance |\n| [docs/problem-statement.md](./docs/problem-statement.md) | Clear problem framing and target users |\n| [docs/solution-savings.md](./docs/solution-savings.md) | ROI assumptions and savings story |\n| [docs/final-demo-plan.md](./docs/final-demo-plan.md) | Presenter-ready demo plan |\n| [docs/judging-checklist.md](./docs/judging-checklist.md) | Review checklist for final submission readiness |\n| [docs/automation-feature.md](./docs/automation-feature.md) | Automation capability details |\n| [docs/submission-assets](./docs/submission-assets) | Project background image and logo |\n\n## Current Limitations\n\n- The hackathon demo uses deterministic derivation for repeatable judging. Production should use a governed LLM/RAG pipeline.\n- Knowledge snippets are mocked. Production should connect approved proposal repositories, SharePoint, CRM, pricing tools, and legal clause libraries.\n- Local persistence uses JSON state. Production should use a database, immutable audit log, and tenant-aware storage.\n- Vercel API routes mirror the demo API for deployment. Production should consolidate behind an enterprise API gateway or FastAPI service.\n- Browser-generated exports are sufficient for demo use. Production should render DOCX/PDF server-side with enterprise templates.\n\n## Production Roadmap\n\n| Phase | Upgrade |\n| --- | --- |\n| Pilot | Connect proposal repository, SharePoint folders, and sample CRM records |\n| Enterprise API | FastAPI/API gateway, SSO, database persistence, immutable audit |\n| Integrations | Teams, Outlook, CRM, pricing, legal clause library, ServiceNow/Jira approvals |\n| AI Layer | Governed LLM/RAG retrieval, vector search, citation policy, model evaluation |\n| Workflow | SLA reminders, reviewer escalations, approval routing, portfolio dashboards |\n| Security | Tenant isolation, encryption, policy engine, SIEM export, admin controls |\n\n## License\n\nHackathon prototype. Internal evaluation only unless a license is added.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanojmallick%2Fbidforge-agent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanojmallick%2Fbidforge-agent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanojmallick%2Fbidforge-agent/lists"}