adpa-enterprise-framework-automation
Version:
Modular, standards-compliant Node.js/TypeScript automation framework for enterprise requirements, project, and data management. Provides CLI and API for BABOK v3, PMBOK 7th Edition, and DMBOK 2.0 (in progress). Production-ready Express.js API with TypeSpe
736 lines (571 loc) • 16.9 kB
Markdown
# ADPA CLI Execution Guide
## Table of Contents
- [Overview](#overview)
- [Installation](#installation)
- [Quick Start](#quick-start)
- [Configuration](#configuration)
- [Core Commands](#core-commands)
- [Document Generation](#document-generation)
- [Integration Commands](#integration-commands)
- [Advanced Usage](#advanced-usage)
- [Troubleshooting](#troubleshooting)
- [Examples](#examples)
## Overview
The ADPA (Advanced Document Processing & Automation) CLI provides a comprehensive command-line interface for generating professional documentation following industry standards including BABOK v3, PMBOK 7th Edition, and DMBOK 2.0.
### Key Features
- 🤖 **Multi-AI Provider Support** - Google AI, Azure OpenAI, GitHub AI, Ollama
- 📋 **Standards Compliance** - BABOK v3, PMBOK 7th Edition, DMBOK 2.0
- 🔄 **Retry Logic** - Built-in retry mechanisms with configurable backoff
- 🌐 **Integration Ready** - Confluence, SharePoint, Git integration
- ✅ **Validation** - PMBOK compliance validation
- 📊 **Rich Output** - Multiple formats (Markdown, JSON, YAML)
## Installation
### Global Installation (Recommended)
```bash
npm install -g adpa-enterprise-framework-automation
```
### Local Installation
```bash
npm install adpa-enterprise-framework-automation
npx adpa --help
```
### From Source
```bash
git clone https://github.com/mdresch/requirements-gathering-agent.git
cd requirements-gathering-agent
npm install
npm run build
npm link
```
## Quick Start
### 1. Initial Setup
```bash
# Run interactive setup wizard
adpa setup
# Check system status
adpa status
# List available document templates
adpa list-templates
```
### 2. Generate Your First Document
```bash
# Generate a project charter
adpa generate project-charter
# Generate all documents in a category
adpa generate-category pmbok
# Generate core analysis documents
adpa generate-core-analysis
```
### 3. Validate Documents
```bash
# Validate generated documents against PMBOK standards
adpa validate
```
## Configuration
### Environment Variables
Create a `.env` file in your project directory:
```bash
# Google AI Configuration
GOOGLE_AI_API_KEY=your_google_ai_api_key
GOOGLE_AI_MODEL=gemini-1.5-flash
# Azure OpenAI Configuration
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
AZURE_OPENAI_API_KEY=your_azure_api_key
DEPLOYMENT_NAME=gpt-4
USE_ENTRA_ID=false
# GitHub AI Configuration
GITHUB_TOKEN=your_github_token
GITHUB_ENDPOINT=https://models.github.ai/inference/
REQUIREMENTS_AGENT_MODEL=gpt-4o-mini
# Ollama Configuration
OLLAMA_ENDPOINT=http://localhost:11434
OLLAMA_MODEL=llama3.1
# General Configuration
CURRENT_PROVIDER=google-ai
DEFAULT_OUTPUT_DIR=./generated-documents
DEBUG=false
```
### Configuration Files
#### config-rga.json
```json
{
"currentProvider": "google-ai",
"providers": {
"google-ai": {
"model": "gemini-1.5-flash"
},
"azure-ai": {
"model": "gpt-4"
}
}
}
```
## Core Commands
### Setup Command
Interactive setup wizard for configuring AI providers.
```bash
# Run setup wizard
adpa setup
```
**Example Output:**
```
🧙♂️ Interactive Setup Wizard
Select AI provider (google/azure/github/ollama): google
Enter your Google AI API Key: [your-key]
Enter Google AI Model (default: gemini-1.5-flash):
Update config-rga.json with provider/model? (y/n): y
Run npm install now? (y/n): y
```
### Status Command
Display comprehensive system status and configuration.
```bash
# Show system status
adpa status
# Quiet mode
adpa status --quiet
# Verbose mode
adpa status --verbose
```
**Example Output:**
```
🔍 Requirements Gathering Agent - System Status
📋 VERSION INFO:
🚀 CLI Version: 3.2.0
📁 Working Directory: /path/to/project
🟢 Node.js: v18.17.0
💻 Platform: win32 (x64)
⚙️ CURRENT CONFIGURATION:
Active Provider: google-ai
Output Directory: ./generated-documents
Debug Mode: ❌ Disabled
🤖 AI PROVIDER STATUS:
🟣 Google AI Studio:
Status: ✅ Configured
Model: gemini-1.5-flash
```
### Analyze Command
Analyze workspace without generating documents.
```bash
# Analyze current workspace
adpa analyze
```
### List Templates Command
Show all available document templates organized by category.
```bash
# List all available templates
adpa list-templates
```
**Example Output:**
```
📋 Available Document Templates by Category:
📁 BABOK:
📊 Business Analysis Planning and Monitoring (business-analysis-planning-and-monitoring)
🤝 Elicitation and Collaboration (elicitation-and-collaboration)
📋 Requirements Analysis and Design Definition (requirements-analysis-and-design-definition)
📁 PMBOK:
📋 Project Charter (project-charter)
📊 Project Management Plan (project-management-plan)
✅ Close Project or Phase (close-project-or-phase)
Total: 85 templates available
```
## Document Generation
### Generate Single Document
Generate a specific document by its key.
```bash
# Basic generation
adpa generate project-charter
# With custom output directory
adpa generate project-charter --output ./my-docs
# With specific format
adpa generate project-charter --format json
# With retry configuration
adpa generate project-charter --retries 3 --retry-backoff 1000
# Quiet mode
adpa generate project-charter --quiet
```
**Available Options:**
- `--output` - Output directory (default: ./generated-documents)
- `--format` - Output format: markdown, json, yaml (default: markdown)
- `--quiet` - Suppress output
- `--retries` - Number of retries (default: 0)
- `--retry-backoff` - Initial retry backoff in ms (default: 1000)
- `--retry-max-delay` - Maximum retry delay in ms (default: 30000)
### Generate Category
Generate all documents in a specific category.
```bash
# Generate all PMBOK documents
adpa generate-category pmbok
# Generate all BABOK documents
adpa generate-category babok
# Generate all DMBOK documents
adpa generate-category dmbok
# With retry configuration
adpa generate-category pmbok --retries 2 --retry-backoff 2000
```
**Available Categories:**
- `babok` - Business Analysis Body of Knowledge documents
- `pmbok` - Project Management Body of Knowledge documents
- `dmbok` - Data Management Body of Knowledge documents
- `basic-docs` - Basic project documents
- `planning` - Planning artifacts
- `quality-assurance` - QA documents
- `risk-management` - Risk management documents
- `stakeholder-management` - Stakeholder documents
- `technical-analysis` - Technical analysis documents
- `technical-design` - Technical design documents
### Generate All Documents
Generate all available documents.
```bash
# Generate all documents
adpa generate-all
# With custom output and retry settings
adpa generate-all --output ./complete-docs --retries 3
```
### Generate Core Analysis
Generate essential core analysis documents.
```bash
# Generate core analysis documents
adpa generate-core-analysis
# With custom settings
adpa generate-core-analysis --output ./core-docs --retries 2
```
## Integration Commands
### Confluence Integration
#### Initialize Confluence
```bash
# Initialize Confluence configuration
adpa confluence init
```
#### Test Connection
```bash
# Test Confluence connection
adpa confluence test
```
#### OAuth2 Authentication
```bash
# Start OAuth2 authentication
adpa confluence oauth2 login
# Check authentication status
adpa confluence oauth2 status
# Debug authentication issues
adpa confluence oauth2 debug
```
#### Publish Documents
```bash
# Basic publish
adpa confluence publish
# With specific options
adpa confluence publish \
--documents-path ./generated-documents \
--parent-page "Project Documentation" \
--label-prefix "adpa-" \
--dry-run
# Force publish (overwrite existing)
adpa confluence publish --force
```
#### Check Status
```bash
# Show Confluence integration status
adpa confluence status
```
### SharePoint Integration
#### Initialize SharePoint
```bash
# Initialize SharePoint configuration
adpa sharepoint init
```
#### Test Connection
```bash
# Test SharePoint connection
adpa sharepoint test
```
#### OAuth2 Authentication
```bash
# Start OAuth2 authentication
adpa sharepoint oauth2 login
# Check authentication status
adpa sharepoint oauth2 status
# Debug authentication issues
adpa sharepoint oauth2 debug
```
#### Publish Documents
```bash
# Basic publish
adpa sharepoint publish
# With specific options
adpa sharepoint publish \
--documents-path ./generated-documents \
--folder-path "/sites/project/documents" \
--label-prefix "adpa-" \
--dry-run
# Force publish
adpa sharepoint publish --force
```
#### Check Status
```bash
# Show SharePoint integration status
adpa sharepoint status
```
### Version Control System (VCS)
#### Initialize Git Repository
```bash
# Initialize Git repository in output directory
adpa vcs init
# Initialize in custom directory
adpa vcs init --output ./my-docs
```
#### Check Git Status
```bash
# Show Git repository status
adpa vcs status
# Check status in custom directory
adpa vcs status --output ./my-docs
```
#### Commit Changes
```bash
# Commit with default message
adpa vcs commit
# Commit with custom message
adpa vcs commit --message "Add new project documentation"
# Commit in custom directory
adpa vcs commit --output ./my-docs --message "Update documents"
```
#### Push Changes
```bash
# Push to default remote (origin/main)
adpa vcs push
# Push to specific remote and branch
adpa vcs push --remote upstream --branch develop
# Push from custom directory
adpa vcs push --output ./my-docs
```
## Advanced Usage
### Validation
#### Validate Documents
```bash
# Validate all generated documents against PMBOK standards
adpa validate
# Validate with custom output directory
adpa validate --output ./my-docs
# Quiet validation
adpa validate --quiet
```
**Validation Output:**
- `compliance-report.md` - Detailed compliance report
- `prompt-adjustment-report.txt` - Suggestions for prompt improvements
### Batch Operations
#### Generate Multiple Categories
```bash
# Generate multiple categories sequentially
adpa generate-category babok && \
adpa generate-category pmbok && \
adpa generate-category dmbok
```
#### Complete Workflow
```bash
# Complete workflow: setup, generate, validate, commit
adpa setup
adpa generate-all --retries 3
adpa validate
adpa vcs init
adpa vcs commit --message "Initial document generation"
```
### Error Handling and Retries
#### Retry Configuration
```bash
# Configure retry behavior for unreliable networks
adpa generate-all \
--retries 5 \
--retry-backoff 2000 \
--retry-max-delay 60000
```
#### Debug Mode
```bash
# Enable debug mode via environment variable
DEBUG=true adpa generate project-charter
```
## Troubleshooting
### Common Issues
#### 1. API Key Not Found
```bash
# Error: API key not configured
# Solution: Run setup wizard
adpa setup
```
#### 2. Network Timeouts
```bash
# Use retry configuration for network issues
adpa generate-all --retries 3 --retry-backoff 5000
```
#### 3. Permission Errors
```bash
# Error: Permission denied writing to output directory
# Solution: Check directory permissions or use different output
adpa generate project-charter --output ./user-writable-directory
```
#### 4. Git Not Initialized
```bash
# Error: Not a git repository
# Solution: Initialize git repository
adpa vcs init
```
### Diagnostic Commands
#### Check System Status
```bash
# Comprehensive system check
adpa status
# Check specific provider configuration
adpa status --verbose
```
#### Test AI Provider Connection
```bash
# Test by generating a simple document
adpa generate project-summary --quiet
```
#### Validate Environment
```bash
# Check if all required files exist
adpa analyze
```
## Examples
### Example 1: Complete Project Setup
```bash
# 1. Install ADPA globally
npm install -g adpa-enterprise-framework-automation
# 2. Create new project directory
mkdir my-project && cd my-project
# 3. Run setup wizard
adpa setup
# 4. Check status
adpa status
# 5. Generate core documents
adpa generate-core-analysis
# 6. Validate documents
adpa validate
# 7. Initialize git and commit
adpa vcs init
adpa vcs commit --message "Initial project documentation"
```
### Example 2: BABOK Documentation Generation
```bash
# Generate all BABOK documents with retry logic
adpa generate-category babok \
--output ./babok-docs \
--retries 3 \
--retry-backoff 2000
# Validate BABOK compliance
adpa validate --output ./babok-docs
# List what was generated
ls -la ./babok-docs/
```
### Example 3: Enterprise Integration Workflow
```bash
# 1. Generate all documents
adpa generate-all --output ./enterprise-docs
# 2. Validate compliance
adpa validate --output ./enterprise-docs
# 3. Initialize Confluence
adpa confluence init
# 4. Test Confluence connection
adpa confluence test
# 5. Publish to Confluence (dry run first)
adpa confluence publish \
--documents-path ./enterprise-docs \
--parent-page "Enterprise Documentation" \
--dry-run
# 6. Actual publish
adpa confluence publish \
--documents-path ./enterprise-docs \
--parent-page "Enterprise Documentation"
```
### Example 4: Multi-Provider Failover Setup
```bash
# Setup primary provider (Google AI)
adpa setup
# Select: google
# Enter: your-google-ai-key
# Test generation
adpa generate project-charter
# If primary fails, setup secondary provider
adpa setup
# Select: azure
# Enter: azure-endpoint and key
# Generate with retry logic
adpa generate-all --retries 5
```
### Example 5: Custom Document Generation
```bash
# List available templates
adpa list-templates
# Generate specific business analysis documents
adpa generate business-analysis-planning-and-monitoring
adpa generate elicitation-and-collaboration
adpa generate requirements-analysis-and-design-definition
# Generate project management documents
adpa generate project-charter
adpa generate project-management-plan
adpa generate work-breakdown-structure
# Generate data management documents
adpa generate data-governance-framework
adpa generate data-quality-management-plan
adpa generate master-data-management-strategy
```
### Example 6: Continuous Integration Setup
```bash
#!/bin/bash
# ci-generate-docs.sh
set -e
echo "🚀 Starting ADPA document generation..."
# Setup (assuming environment variables are set)
adpa status
# Generate all documents with retries
adpa generate-all \
--output ./generated-docs \
--retries 3 \
--retry-backoff 2000 \
--quiet
# Validate documents
adpa validate \
--output ./generated-docs \
--quiet
# Commit if in git repository
if [ -d .git ]; then
adpa vcs commit \
--output ./generated-docs \
--message "CI: Update generated documentation [skip ci]"
fi
echo "✅ Document generation complete!"
```
### Example 7: SharePoint Integration
```bash
# Initialize SharePoint integration
adpa sharepoint init
# Authenticate with OAuth2
adpa sharepoint oauth2 login
# Test connection
adpa sharepoint test
# Generate documents
adpa generate-category pmbok --output ./pmbok-docs
# Publish to SharePoint
adpa sharepoint publish \
--documents-path ./pmbok-docs \
--folder-path "/sites/project/Shared Documents/PMBOK" \
--label-prefix "pmbok-"
# Check status
adpa sharepoint status
```
## Command Reference Quick Guide
| Command | Description | Example |
|---------|-------------|---------|
| `adpa setup` | Interactive setup wizard | `adpa setup` |
| `adpa status` | Show system status | `adpa status` |
| `adpa list-templates` | List available templates | `adpa list-templates` |
| `adpa generate [key]` | Generate specific document | `adpa generate project-charter` |
| `adpa generate-category <cat>` | Generate category documents | `adpa generate-category pmbok` |
| `adpa generate-all` | Generate all documents | `adpa generate-all --retries 3` |
| `adpa validate` | Validate documents | `adpa validate` |
| `adpa confluence init` | Setup Confluence | `adpa confluence init` |
| `adpa sharepoint init` | Setup SharePoint | `adpa sharepoint init` |
| `adpa vcs init` | Initialize Git | `adpa vcs init` |
For more detailed information, use `adpa --help` or `adpa <command> --help`.