Custom Crm
Skill Profile
(Select at least one profile to enable specific modules)
Overview
Building a custom CRM system requires careful architecture planning. This guide covers database design, core features, and implementation patterns for building scalable CRM systems that meet specific business needs.
Why This Matters
- Business Fit: Custom CRM matches exact business requirements
- Cost Control: No subscription fees for third-party CRM
- Integration: Easier integration with existing systems
- Flexibility: Full control over features and data
Core Concepts & Rules
1. Core Principles
- Follow established patterns and conventions
- Maintain consistency across codebase
- Document decisions and trade-offs
2. Implementation Guidelines
- Start with the simplest viable solution
- Iterate based on feedback and requirements
- Test thoroughly before deployment
Inputs / Outputs / Contracts
- Inputs:
- Contact data
- Deal information
- Activity records
- Company details
- Entry Conditions:
- Database schema designed
- API gateway configured
- Authentication system set up
- Outputs:
- CRM records
- Pipeline visualization
- Activity history
- Reports and analytics
- Artifacts Required (Deliverables):
- Database schema
- API services
- Frontend components
- Reporting dashboards
- Acceptance Evidence:
- Unit tests for all modules
- Integration tests for database
- E2E tests for user flows
- Success Criteria:
- API response < 200ms
- Database query < 100ms
- Pipeline visualization loads < 500ms
Skill Composition
- Depends on: Contact Management, Lead Management
- Compatible with: Sales Pipeline, HubSpot Integration
- Conflicts with: None
- Related Skills: API Design, Database, Frontend Patterns
Quick Start / Implementation Example
- Review requirements and constraints
- Set up development environment
- Implement core functionality following patterns
- Write tests for critical paths
- Run tests and fix issues
- Document any deviations or decisions
# Example implementation following best practices
def example_function():
# Your implementation here
pass
Assumptions / Constraints / Non-goals
- Assumptions:
- Development environment is properly configured
- Required dependencies are available
- Team has basic understanding of domain
- Constraints:
- Must follow existing codebase conventions
- Time and resource limitations
- Compatibility requirements
- Non-goals:
- This skill does not cover edge cases outside scope
- Not a replacement for formal training
Compatibility & Prerequisites
- Supported Versions:
- Python 3.8+
- Node.js 16+
- Modern browsers (Chrome, Firefox, Safari, Edge)
- Required AI Tools:
- Code editor (VS Code recommended)
- Testing framework appropriate for language
- Version control (Git)
- Dependencies:
- Language-specific package manager
- Build tools
- Testing libraries
- Environment Setup:
.env.example keys: API_KEY, DATABASE_URL (no values)
Test Scenario Matrix (QA Strategy)
| Type |
Focus Area |
Required Scenarios / Mocks |
| Unit |
Core Logic |
Must cover primary logic and at least 3 edge/error cases. Target minimum 80% coverage |
| Integration |
DB / API |
All external API calls or database connections must be mocked during unit tests |
| E2E |
User Journey |
Critical user flows to test |
| Performance |
Latency / Load |
Benchmark requirements |
| Security |
Vuln / Auth |
SAST/DAST or dependency audit |
| Frontend |
UX / A11y |
Accessibility checklist (WCAG), Performance Budget (Lighthouse score) |
Technical Guardrails & Security Threat Model
1. Security & Privacy (Threat Model)
- Top Threats: Injection attacks, authentication bypass, data exposure
2. Performance & Resources
3. Architecture & Scalability
4. Observability & Reliability
Agent Directives & Error Recovery
(ข้อกำหนดสำหรับ AI Agent ในการคิดและแก้ปัญหาเมื่อเกิดข้อผิดพลาด)
- Thinking Process: Analyze root cause before fixing. Do not brute-force.
- Fallback Strategy: Stop after 3 failed test attempts. Output root cause and ask for human intervention/clarification.
- Self-Review: Check against Guardrails & Anti-patterns before finalizing.
- Output Constraints: Output ONLY the modified code block. Do not explain unless asked.
Definition of Done (DoD) Checklist
Anti-patterns / Pitfalls
- ⛔ Don't: Log PII, catch-all exception, N+1 queries
- ⚠️ Watch out for: Common symptoms and quick fixes
- 💡 Instead: Use proper error handling, pagination, and logging
Reference Links & Examples
- Internal documentation and examples
- Official documentation and best practices
- Community resources and discussions
Versioning & Changelog
- Version: 1.0.0
- Changelog:
- 2026-02-22: Initial version with complete template structure
Converted and distributed by TomeVault — claim your Tome and manage your conversions.
1---2name: custom-crm3description: Building a custom CRM system requires careful architecture planning. Use when this capability is needed.4---56# Custom Crm78## Skill Profile9*(Select at least one profile to enable specific modules)*10- [ ] **DevOps**11- [x] **Backend**12- [ ] **Frontend**13- [ ] **AI-RAG**14- [ ] **Security Critical**1516## Overview17Building a custom CRM system requires careful architecture planning. This guide covers database design, core features, and implementation patterns for building scalable CRM systems that meet specific business needs.1819## Why This Matters20- **Business Fit**: Custom CRM matches exact business requirements21- **Cost Control**: No subscription fees for third-party CRM22- **Integration**: Easier integration with existing systems23- **Flexibility**: Full control over features and data2425---2627## Core Concepts & Rules2829### 1. Core Principles30- Follow established patterns and conventions31- Maintain consistency across codebase32- Document decisions and trade-offs3334### 2. Implementation Guidelines35- Start with the simplest viable solution36- Iterate based on feedback and requirements37- Test thoroughly before deployment383940## Inputs / Outputs / Contracts41* **Inputs**:42 - Contact data43 - Deal information44 - Activity records45 - Company details46* **Entry Conditions**:47 - Database schema designed48 - API gateway configured49 - Authentication system set up50* **Outputs**:51 - CRM records52 - Pipeline visualization53 - Activity history54 - Reports and analytics55* **Artifacts Required (Deliverables)**:56 - Database schema57 - API services58 - Frontend components59 - Reporting dashboards60* **Acceptance Evidence**:61 - Unit tests for all modules62 - Integration tests for database63 - E2E tests for user flows64* **Success Criteria**:65 - API response < 200ms66 - Database query < 100ms67 - Pipeline visualization loads < 500ms6869## Skill Composition70* **Depends on**: [Contact Management](32-crm-integration/contact-management/SKILL.md), [Lead Management](32-crm-integration/lead-management/SKILL.md)71* **Compatible with**: [Sales Pipeline](32-crm-integration/sales-pipeline/SKILL.md), [HubSpot Integration](32-crm-integration/hubspot-integration/SKILL.md)72* **Conflicts with**: None73* **Related Skills**: [API Design](03-backend-api/), [Database](04-database/), [Frontend Patterns](02-frontend/)7475---7677## Quick Start / Implementation Example78791. Review requirements and constraints802. Set up development environment813. Implement core functionality following patterns824. Write tests for critical paths835. Run tests and fix issues846. Document any deviations or decisions8586```python87# Example implementation following best practices88def example_function():89 # Your implementation here90 pass91```929394## Assumptions / Constraints / Non-goals9596* **Assumptions**:97 - Development environment is properly configured98 - Required dependencies are available99 - Team has basic understanding of domain100* **Constraints**:101 - Must follow existing codebase conventions102 - Time and resource limitations103 - Compatibility requirements104* **Non-goals**:105 - This skill does not cover edge cases outside scope106 - Not a replacement for formal training107108109## Compatibility & Prerequisites110111* **Supported Versions**:112 - Python 3.8+113 - Node.js 16+114 - Modern browsers (Chrome, Firefox, Safari, Edge)115* **Required AI Tools**:116 - Code editor (VS Code recommended)117 - Testing framework appropriate for language118 - Version control (Git)119* **Dependencies**:120 - Language-specific package manager121 - Build tools122 - Testing libraries123* **Environment Setup**:124 - `.env.example` keys: `API_KEY`, `DATABASE_URL` (no values)125126127## Test Scenario Matrix (QA Strategy)128129| Type | Focus Area | Required Scenarios / Mocks |130| :--- | :--- | :--- |131| **Unit** | Core Logic | Must cover primary logic and at least 3 edge/error cases. Target minimum 80% coverage |132| **Integration** | DB / API | All external API calls or database connections must be mocked during unit tests |133| **E2E** | User Journey | Critical user flows to test |134| **Performance** | Latency / Load | Benchmark requirements |135| **Security** | Vuln / Auth | SAST/DAST or dependency audit |136| **Frontend** | UX / A11y | Accessibility checklist (WCAG), Performance Budget (Lighthouse score) |137138139## Technical Guardrails & Security Threat Model140141### 1. Security & Privacy (Threat Model)142* **Top Threats**: Injection attacks, authentication bypass, data exposure143- [ ] **Data Handling**: Sanitize all user inputs to prevent Injection attacks. Never log raw PII144- [ ] **Secrets Management**: No hardcoded API keys. Use Env Vars/Secrets Manager145- [ ] **Authorization**: Validate user permissions before state changes146147### 2. Performance & Resources148- [ ] **Execution Efficiency**: Consider time complexity for algorithms149- [ ] **Memory Management**: Use streams/pagination for large data150- [ ] **Resource Cleanup**: Close DB connections/file handlers in finally blocks151152### 3. Architecture & Scalability153- [ ] **Design Pattern**: Follow SOLID principles, use Dependency Injection154- [ ] **Modularity**: Decouple logic from UI/Frameworks155156### 4. Observability & Reliability157- [ ] **Logging Standards**: Structured JSON, include trace IDs `request_id`158- [ ] **Metrics**: Track `error_rate`, `latency`, `queue_depth`159- [ ] **Error Handling**: Standardized error codes, no bare except160- [ ] **Observability Artifacts**:161 - **Log Fields**: timestamp, level, message, request_id162 - **Metrics**: request_count, error_count, response_time163 - **Dashboards/Alerts**: High Error Rate > 5%164165166## Agent Directives & Error Recovery167*(ข้อกำหนดสำหรับ AI Agent ในการคิดและแก้ปัญหาเมื่อเกิดข้อผิดพลาด)*168169- **Thinking Process**: Analyze root cause before fixing. Do not brute-force.170- **Fallback Strategy**: Stop after 3 failed test attempts. Output root cause and ask for human intervention/clarification.171- **Self-Review**: Check against Guardrails & Anti-patterns before finalizing.172- **Output Constraints**: Output ONLY the modified code block. Do not explain unless asked.173174175## Definition of Done (DoD) Checklist176177- [ ] Tests passed + coverage met178- [ ] Lint/Typecheck passed179- [ ] Logging/Metrics/Trace implemented180- [ ] Security checks passed181- [ ] Documentation/Changelog updated182- [ ] Accessibility/Performance requirements met (if frontend)183184185## Anti-patterns / Pitfalls186187* ⛔ **Don't**: Log PII, catch-all exception, N+1 queries188* ⚠️ **Watch out for**: Common symptoms and quick fixes189* 💡 **Instead**: Use proper error handling, pagination, and logging190191192## Reference Links & Examples193194* Internal documentation and examples195* Official documentation and best practices196* Community resources and discussions197198199## Versioning & Changelog200201* **Version**: 1.0.0202* **Changelog**:203 - 2026-02-22: Initial version with complete template structure204205---206> Converted and distributed by [TomeVault](https://tomevault.io/claim/amnadtaowsoam) — claim your Tome and manage your conversions.207<!-- tomevault:4.0:skill_md:2026-04-13 -->