microsoft / microsoft/agentsleague

Project Butler - AI Agent for Project Documentation

Open
#141 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
286
Forks
92
Avg merge
12h 44m
Merged PRs (30d)
1

Description

Track

Creative Apps (GitHub Copilot)

Project Name

Project Butler

GitHub Username

huimingchen081-beep

Repository URL

https://github.com/huimingchen081-beep/project-butler

Project Description

Project Butler - AI Agent for Project Documentation

Project Butler is an AI-powered agent that generates complete project documentation from natural language descriptions. Tell it your project idea, and it produces PRDs, competitive analysis, financial models, pitch decks, and technical architecture documents — all in minutes.

Key Features
  • 📋 PRD Generation: Product Requirements Documents with user stories, acceptance criteria, and feature specs
  • 📊 Competitive Analysis: Market landscape, competitor comparison, SWOT analysis
  • 💰 Financial Models: Revenue projections, cost structures, unit economics (Excel output)
  • 🎯 Pitch Decks: Investor-ready presentation slides (PPTX output)
  • 🏗️ Tech Architecture: System design, tech stack recommendations, API specifications
How It Works
  1. User inputs a project description in natural language
  2. AI Planning Engine breaks down requirements into structured tasks
  3. Sequential pipeline executes 7 specialized agents:
    • Research Agent → Outline Agent → PRD Agent → Competitive Agent → Financial Agent → Pitch Agent → Architecture Agent
  4. Each agent validates outputs before passing to the next stage
  5. Final deliverables: PPTX, DOCX, XLSX files ready for download
Tech Stack
  • Runtime: Node.js (CLI tool)
  • LLM: DashScope / Qwen (Alibaba Cloud) via compatible-mode API
  • Output: python-pptx, python-docx, openpyxl for real Office file generation
  • Packaging: Node.js archiver for ZIP bundle of all deliverables
Demo Video

https://youtu.be/KXQiskRYGeM

Repository

https://github.com/huimingchen081-beep/project-butler

Demo Video or Screenshots

Demo Video: https://youtu.be/KXQiskRYGeM Screenshots: https://github.com/huimingchen081-beep/project-butler Live Demo: N/A (CLI tool)

Primary Programming Language

TypeScript/JavaScript

Key Technologies Used
  • Node.js (runtime, CLI tool)
  • DashScope API / Qwen LLM (Alibaba Cloud AI)
  • python-pptx / python-docx / openpyxl (Office document generation)
  • archiver (ZIP packaging)
Submission Type

Individual

Team Members

No response

Submission Requirements
  • My project meets the track-specific challenge requirements
  • My repository includes a comprehensive README.md with setup instructions
  • My code does not contain hardcoded API keys or secrets
  • I have included demo materials (video or screenshots)
  • My project is my own work with proper attribution for any third-party code
  • I agree to the Code of Conduct
  • I have read and agree to the Disclaimer
  • My submission does NOT contain any confidential, proprietary, or sensitive information
  • I confirm I have the rights to submit this content and grant the necessary licenses
Quick Setup Summary

Clone repo: git clone https://github.com/huimingchen081-beep/project-butler.git
Install dependencies: npm install && pip install python-pptx python-docx openpyxl
Configure env: copy .env.example to .env, set DASHSCOPE_API_KEY
Run: node agent.js "your project description"
Output files in output/ directory (ZIP bundle with PPTX, DOCX, XLSX)

Technical Highlights

Designed a 7-stage sequential Agent pipeline (Research > Outline > PRD > Competitive > Financial > Pitch > Architecture), with each agent running independently, validating output before passing to the next stage
Built an LLM-powered intelligent task planning engine that decomposes natural language into structured document generation tasks
Generates real editable Office files using Python libraries (python-pptx/python-docx/openpyxl), not fake PDF wrappers
API keys managed via .env — zero hardcoded secrets
Single CLI entry point, zero-config usage

Challenges & Learnings

The biggest challenge was ensuring output quality and format consistency across 7 collaborating agents. Each agent's output feeds into the next — a single error cascades through the entire pipeline. The solution was embedding self-validation into every agent, verifying output format and completeness before proceeding to the next stage.

Another challenge was Office file generation. Pure JavaScript solutions proved unreliable, so we adopted a Node.js + Python hybrid architecture: Node.js handles LLM orchestration and flow control, while Python handles professional document format generation — each doing what it does best.

Contact Information

chmchm811@163.com

Country/Region

China

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked Project Butler repository and its README.md, then inspect the agent.js CLI entry point and the Node.js/Python setup described in the issue. Run the documented npm and pip installation steps before trying the sample command. Done means the seven-stage pipeline produces the stated editable Office files and ZIP output without exposed API keys.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js, python, typescript
Domain
ai, cli, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.