From synapse-docs
Create comprehensive system documentation including architecture diagrams, data flows, and integration maps. Use after API discovery and script analysis to synthesize a complete system picture. Generates markdown documentation with Mermaid diagrams.
How this skill is triggered — by the user, by Claude, or both
Slash command
/synapse-docs:system-mapperThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Synthesizes discovered information (from API exploration, script analysis, etc.) into comprehensive system documentation including architecture diagrams, integration maps, and data flows.
Synthesizes discovered information (from API exploration, script analysis, etc.) into comprehensive system documentation including architecture diagrams, integration maps, and data flows.
Use this skill after:
Expected input files:
Generate a comprehensive system documentation package:
docs/
├── 00-system-overview.md
├── 01-architecture-diagrams.md
├── 02-data-model.md
├── 03-integration-map.md
├── 04-workflows.md
├── 05-deployment-topology.md
└── 06-security-and-access.md
# {System Name} - System Overview
## Purpose
[What the system does, why it exists]
## Key Capabilities
- Capability 1
- Capability 2
- Capability 3
## Users
- **User Type 1**: [Role and access level]
- **User Type 2**: [Role and access level]
## Technology Stack
- **Platform**: Zoho Creator / Custom / etc.
- **Database**: [Type and version]
- **Hosting**: Cloud / On-premise
- **Integrations**: [List major integrations]
## Critical Dependencies
1. Dependency 1 - [Purpose]
2. Dependency 2 - [Purpose]
## Metrics
- **Total Entities**: X
- **Total Scripts/Functions**: Y
- **External Integrations**: Z
- **Active Users**: ~N
# Architecture Diagrams
## High-Level System Architecture
```mermaid
graph TB
subgraph "User Layer"
WebUI[Web Interface]
MobileUI[Mobile Interface]
API[API Clients]
end
subgraph "Application Layer"
AppServer[Application Server]
BusinessLogic[Business Logic Engine]
WorkflowEngine[Workflow Engine]
end
subgraph "Data Layer"
Database[(Database)]
FileStorage[(File Storage)]
end
subgraph "Integration Layer"
PaymentGateway[Payment Gateway]
EmailService[Email Service]
ExternalAPI[External APIs]
end
WebUI --> AppServer
MobileUI --> AppServer
API --> AppServer
AppServer --> BusinessLogic
BusinessLogic --> WorkflowEngine
WorkflowEngine --> Database
WorkflowEngine --> FileStorage
BusinessLogic --> PaymentGateway
BusinessLogic --> EmailService
BusinessLogic --> ExternalAPI
C4Context
title System Context Diagram
Person(customer, "Customer", "External user")
Person(admin, "Admin", "System administrator")
System(system, "Main System", "Core application")
System_Ext(payment, "Payment Gateway", "Processes payments")
System_Ext(email, "Email Service", "Sends notifications")
System_Ext(warehouse, "Warehouse System", "Inventory management")
Rel(customer, system, "Uses")
Rel(admin, system, "Manages")
Rel(system, payment, "Processes payments via")
Rel(system, email, "Sends emails via")
Rel(system, warehouse, "Syncs inventory with")
graph TB
subgraph "Production Environment"
LB[Load Balancer]
App1[App Server 1]
App2[App Server 2]
DB[(Primary Database)]
DBReplica[(Read Replica)]
Cache[(Cache)]
end
Internet[Internet] --> LB
LB --> App1
LB --> App2
App1 --> Cache
App2 --> Cache
App1 --> DB
App2 --> DB
App1 --> DBReplica
App2 --> DBReplica
DB -.->|Replication| DBReplica
### 02-data-model.md
```markdown
# Data Model
## Entity-Relationship Diagram
[Include ER diagram from data-model-visualizer skill]
## Entities
### Entity 1: {Name}
**Purpose**: [What this entity represents]
**Key Fields**:
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| id | ID | Yes | Primary key |
| name | Text | Yes | Display name |
| ... | ... | ... | ... |
**Relationships**:
- **Parent**: [Entity name] (one-to-many)
- **Children**: [Entity name] (one-to-many)
- **References**: [Entity name] (lookup)
**Business Rules**:
- Rule 1: [Description]
- Rule 2: [Description]
**Sample Record**:
```json
{
"id": "12345",
"name": "Sample Product",
...
}
[Repeat for each entity]
| Entity | Estimated Records | Growth Rate |
|---|---|---|
| Products | 10,000 | 100/month |
| Orders | 50,000 | 500/month |
| ... | ... | ... |
### 03-integration-map.md
```markdown
# Integration Map
## External Systems
```mermaid
graph LR
System[Main System]
System -->|API| Payment[Payment Gateway]
System -->|SMTP| Email[Email Service]
System -->|REST| Warehouse[Warehouse System]
System -->|Webhook| Shipping[Shipping Provider]
Payment -.->|Webhook| System
Shipping -.->|Webhook| System
POST /v1/charges - Create paymentPOST /v1/refunds - Process refundcharge.succeededcharge.failedPOST /v2/checkout/orders - Create payment orderPOST /v2/payments/captures/{id}/refund - Process refundPAYMENT.CAPTURE.COMPLETEDPAYMENT.CAPTURE.DENIED[Repeat for each integration]
| Endpoint | Method | Purpose | Authentication | Rate Limit |
|---|---|---|---|---|
| /api/v1/products | GET | List products | OAuth 2.0 | 100/min |
| /api/v1/orders | POST | Create order | OAuth 2.0 | 50/min |
| ... | ... | ... | ... | ... |
### 04-workflows.md
```markdown
# Workflows
## Major Business Processes
### Workflow 1: Order Processing
**Trigger**: Customer submits order form
**Steps**:
1. Validate customer information
2. Check product availability
3. Calculate pricing (subtotal, tax, shipping, discounts)
4. Process payment
5. Create order record
6. Update inventory
7. Send confirmation email
8. Notify warehouse for fulfillment
**Flow Diagram**:
```mermaid
flowchart TD
Start[Order Submitted] --> Validate{Validate Input}
Validate -->|Invalid| Error[Show Error]
Validate -->|Valid| CheckInv{Check Inventory}
CheckInv -->|Available| CalcPrice[Calculate Pricing]
CheckInv -->|Out of Stock| Backorder[Create Backorder]
CalcPrice --> Payment{Process Payment}
Payment -->|Success| CreateOrder[Create Order]
Payment -->|Failure| PaymentError[Payment Failed]
CreateOrder --> UpdateInv[Update Inventory]
UpdateInv --> SendEmail[Send Confirmation]
SendEmail --> NotifyWarehouse[Notify Warehouse]
NotifyWarehouse --> End[Complete]
Backorder --> NotifyCustomer[Notify Customer]
NotifyCustomer --> End
Error --> End
PaymentError --> End
Involved Components:
process_order.ds, calculate_pricing.ds, update_inventory.dsException Handling:
[Repeat for each major workflow]
| Task | Schedule | Purpose | Script/Job |
|---|---|---|---|
| Inventory Sync | Hourly | Sync with warehouse system | sync_inventory.ds |
| Daily Reports | Daily 6am | Generate sales reports | generate_reports.ds |
| Cleanup | Weekly | Archive old records | archive_old_data.ds |
### 05-deployment-topology.md
```markdown
# Deployment Topology
## Current State
**Hosting**: Zoho Creator SaaS
**Environment**: Production only (no separate dev/staging in traditional sense)
**Data Center**: [Region, if known]
**Scaling**: Automatic (managed by Zoho)
**Backup**: Managed by Zoho (frequency and retention TBD)
## Access Patterns
**User Access**:
- Web: `https://creatorapp.zoho.com/{account}/{app}`
- Mobile: Zoho Creator mobile app
- API: `https://creator.zoho.com/api/v2.1/...`
**Admin Access**:
- Creator Builder: Via Zoho account with developer role
- Database: Via Creator UI only (no direct SQL access)
## Network Topology
```mermaid
graph TB
Internet[Internet]
subgraph "Zoho Infrastructure (Managed)"
CloudFront[CDN/WAF]
LoadBalancer[Load Balancer]
AppServers[Application Servers]
Database[(Database)]
Storage[(File Storage)]
end
Internet --> CloudFront
CloudFront --> LoadBalancer
LoadBalancer --> AppServers
AppServers --> Database
AppServers --> Storage
### 06-security-and-access.md
```markdown
# Security and Access Control
## Authentication
**Primary Method**: Zoho Accounts
**Supported Protocols**:
- OAuth 2.0
- SAML 2.0 (for SSO)
- Two-Factor Authentication (2FA)
## Authorization Model
**Roles**:
| Role | Permissions | User Count |
|------|-------------|------------|
| Admin | Full access | 2 |
| Manager | Read/write, no delete | 5 |
| User | Read-only | 100+ |
**Permission Levels**:
- Form-level: Who can view/edit specific forms
- Report-level: Who can access which reports
- Record-level: Row-level security based on ownership
## Data Security
**Sensitive Data**:
- Customer PII (names, emails, addresses)
- Payment information (handled by Stripe, not stored)
- [Other sensitive data types]
**Data Handling**:
- PII: Stored in Zoho Creator database, encrypted at rest
- Payment: Tokenized via Stripe, tokens stored
- Audit logs: Retention period [TBD]
**Compliance Requirements**:
- GDPR: [Compliance status]
- PCI DSS: Not applicable (no card data stored)
- [Other relevant standards]
## API Security
**Authentication**: OAuth 2.0
**Rate Limiting**:
- Standard tier: 100 calls/minute
- Premium tier: [TBD]
**IP Whitelisting**: Supported for API access
## Security Findings
[Link to security findings from Deluge analysis or security audit]
## Recommended Improvements
1. **Implement SSO**: Reduce password-based authentication risk
2. **Enable 2FA**: For all admin and manager accounts
3. **API Key Rotation**: Establish 90-day rotation policy
4. **Audit Log Review**: Monthly review of access logs
Collect all discovery artifacts:
# Find all discovery outputs
find . -name "*schema*.json" -o -name "*analysis*.md" -o -name "*inventory*.md"
Read:
Synthesize a high-level architecture:
Consolidate entity information:
Document all external touchpoints:
Extract business processes:
Document current deployment:
Aggregate security findings:
Checklist before finalizing:
After running this skill, you should have:
docs/storekeeper/
├── 00-system-overview.md (3-5 pages)
├── 01-architecture-diagrams.md (5-7 diagrams)
├── 02-data-model.md (15-30 pages, depending on entities)
├── 03-integration-map.md (5-10 pages)
├── 04-workflows.md (10-20 pages)
├── 05-deployment-topology.md (3-5 pages)
└── 06-security-and-access.md (5-8 pages)
This becomes the comprehensive system documentation for stakeholders, developers, and future migration efforts.
npx claudepluginhub millstonehq/synapse --plugin synapse-docsGenerates data model documentation including tables, constraints, indexes, retention policies, and migration notes from entities or PRD references.
Sets up Dataverse tables, columns, and relationships for Power Pages sites using OData API from ER diagrams or AI analysis after user approval.
Generates system architecture docs with overview, components list, Mermaid diagrams for components and data flows, external dependencies, ADRs links, and dev setup instructions.