UNPKG

@graphikartistry/cursor-doc-automation

Version:

Cursor IDE extension for autonomous documentation and ticket management

191 lines (145 loc) 4.37 kB
# Onboarding Guide for Cursor Documentation Automation ## Prerequisites Before you begin, ensure you have: - Node.js (v14 or higher) - npm or yarn package manager - Git installed and configured - Access to: - GitHub repository - Jira instance ## Step 1: Initial Setup 1. **Clone the Repository** ```bash git clone https://github.com/yourusername/cursor-doc-automation.git cd cursor-doc-automation ``` 2. **Install Dependencies** ```bash npm install ``` 3. **Configure Environment Variables** Create a `.env` file in the root directory: ```env # Jira Configuration JIRA_PROJECT_KEY=your_jira_project_key JIRA_API_TOKEN=your_jira_api_token JIRA_EMAIL=your_jira_email JIRA_DOMAIN=your_jira_domain # GitHub Configuration GITHUB_TOKEN=your_github_token GITHUB_REPOSITORY=your_github_repository ``` ## Step 2: Understanding the Extension The extension provides three main functionalities: 1. **Documentation Analysis** - Automatically analyzes code changes - Generates technical documentation - Identifies related components 2. **GitHub Integration** - Creates pull requests - Updates documentation - Manages branches 3. **Jira Integration** - Creates backlog items - Links documentation to tickets - Updates ticket status ## Step 3: Quick Start 1. **Build the Extension** ```bash npm run build ``` 2. **Run the Test Script** ```bash npm run test-docs ``` 3. **Check the Results** - Review the generated documentation in `docs/auto-generated.md` - Check your GitHub repository for the new pull request - Verify the Jira ticket creation ## Step 4: Using in Your Project 1. **Install the Extension** ```bash npm install /path/to/cursor-doc-automation-1.0.0.tgz ``` 2. **Basic Usage** ```typescript import { DocumentationService } from 'cursor-doc-automation'; const docService = new DocumentationService(); // Analyze changes const analysis = await docService.analyzeChanges(); // Create documentation PR await docService.createDocumentationPR(analysis); // Create Jira ticket await docService.createJiraBacklogItem(analysis); ``` ## Step 5: Testing The extension includes comprehensive automated tests: 1. **Run Tests** ```bash # Run all tests npm test # Run tests in watch mode npm run test:watch # Run tests with coverage report npm run test:coverage ``` 2. **Test Coverage** - Tests cover all major functionality - Includes unit tests for services - Integration tests for API clients - Error handling scenarios 3. **Writing Tests** ```typescript import { DocumentationService } from 'cursor-doc-automation'; describe('DocumentationService', () => { it('should analyze changes', async () => { const service = new DocumentationService(); const analysis = await service.analyzeChanges(); expect(analysis).toBeDefined(); }); }); ``` ## Step 6: Best Practices 1. **Documentation** - Keep documentation up to date - Review auto-generated content - Add manual notes when needed 2. **GitHub Workflow** - Create feature branches - Use meaningful commit messages - Review PRs before merging 3. **Jira Integration** - Link PRs to Jira tickets - Update ticket status - Add relevant comments 4. **Testing** - Run tests before committing - Maintain test coverage - Add tests for new features ## Troubleshooting Common issues and solutions: 1. **Environment Variables** - Verify all required variables are set - Check for typos in API keys - Ensure proper permissions 2. **GitHub Integration** - Verify GitHub token permissions - Check repository access - Ensure branch naming follows conventions 3. **Jira Integration** - Verify Jira API token - Check project key validity - Ensure proper permissions 4. **Testing Issues** - Check test environment setup - Verify mock implementations - Review test coverage reports ## Getting Help If you encounter issues: 1. Check the [GitHub Issues](https://github.com/yourusername/cursor-doc-automation/issues) 2. Review the documentation 3. Contact the development team ## Next Steps 1. Review the [API Documentation](API.md) 2. Explore [Advanced Features](ADVANCED.md) 3. Join the community discussions