{"id":31814477,"url":"https://github.com/vxcontrol/cloud","last_synced_at":"2025-10-11T08:51:36.950Z","repository":{"id":316834742,"uuid":"1065039682","full_name":"vxcontrol/cloud","owner":"vxcontrol","description":"SDK for VXControl Cloud Intelligence Platform and Services","archived":false,"fork":false,"pushed_at":"2025-09-27T18:45:10.000Z","size":188,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-08T12:46:25.255Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vxcontrol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-27T00:51:07.000Z","updated_at":"2025-09-27T18:45:13.000Z","dependencies_parsed_at":"2025-09-27T02:40:55.649Z","dependency_job_id":"f568f88e-8a89-4d66-8881-48731638c8e3","html_url":"https://github.com/vxcontrol/cloud","commit_stats":null,"previous_names":["vxcontrol/cloud"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vxcontrol/cloud","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vxcontrol%2Fcloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vxcontrol%2Fcloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vxcontrol%2Fcloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vxcontrol%2Fcloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vxcontrol","download_url":"https://codeload.github.com/vxcontrol/cloud/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vxcontrol%2Fcloud/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279006638,"owners_count":26084150,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-11T08:51:35.891Z","updated_at":"2025-10-11T08:51:36.939Z","avatar_url":"https://github.com/vxcontrol.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VXControl Cloud SDK\n\n\u003cdiv align=\"center\" style=\"font-size: 1.5em; margin: 20px 0;\"\u003e\n    Enterprise-grade Go SDK for secure integration with VXControl Cloud Intelligence Platform and Services.\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\n\u003e 🚀 **Join the Community!** Connect with security researchers, AI enthusiasts, and fellow ethical hackers. Get support, share insights, and stay updated with the latest PentAGI developments.\n\n[![Discord](https://img.shields.io/badge/Discord-7289DA?logo=discord\u0026logoColor=white)](https://discord.gg/2xrMh7qX6m)⠀[![Telegram](https://img.shields.io/badge/Telegram-2CA5E0?logo=telegram\u0026logoColor=white)](https://t.me/+Ka9i6CNwe71hMWQy)\n\n\u003c/div\u003e\n\n## Overview\n\nThe VXControl Cloud SDK enables developers to integrate their security tools and applications with the VXControl Cloud Intelligence Platform, providing access to advanced cybersecurity services including threat intelligence, vulnerability databases, computational resources, AI-powered troubleshooting, and automated update systems.\n\n## Key Features\n\n- **Type-Safe API**: 24 strongly-typed function patterns covering all request/response scenarios\n- **Transparent Security**: Automatic proof-of-work solving and end-to-end encryption\n- **Performance Optimized**: HTTP/2 support, connection pooling, streaming encryption\n- **Enterprise Ready**: Comprehensive error handling, retry logic, and production monitoring\n- **License Integration**: Built-in premium feature validation and tier management\n\n## Quick Start\n\n### Installation\n\n```bash\ngo get github.com/vxcontrol/cloud/sdk\n```\n\n### Basic Usage\n\n```go\npackage main\n\nimport (\n    \"context\"\n    \"encoding/json\"\n    \"log\"\n\n    \"github.com/vxcontrol/cloud/models\"\n    \"github.com/vxcontrol/cloud/sdk\"\n    \"github.com/vxcontrol/cloud/system\"\n\n    \"github.com/sirupsen/logrus\"\n)\n\ntype Client struct {\n    UpdatesCheck  sdk.CallReqBytesRespBytes\n    ReportError   sdk.CallReqBytesRespBytes\n}\n\nfunc main() {\n    var client Client\n\n    // Configure endpoints\n    configs := []sdk.CallConfig{\n        {\n            Calls:  []any{\u0026client.UpdatesCheck},\n            Host:   \"update.pentagi.com\",\n            Name:   \"updates_check\",\n            Path:   \"/api/v1/updates/check\",\n            Method: sdk.CallMethodPOST,\n        },\n        {\n            Calls:  []any{\u0026client.ReportError},\n            Host:   \"support.pentagi.com\",\n            Name:   \"error_report\",\n            Path:   \"/api/v1/errors/report\",\n            Method: sdk.CallMethodPOST,\n        },\n    }\n\n    // Initialize SDK\n    err := sdk.Build(configs,\n        sdk.WithClient(\"MySecTool\", \"1.0.0\"),\n        sdk.WithInstallationID(system.GetInstallationID()),\n        sdk.WithLogger(sdk.WrapLogrus(logrus.StandardLogger())),\n        sdk.WithLicenseKey(\"XXXX-XXXX-XXXX-XXXX\"),\n    )\n    if err != nil {\n        log.Fatal(\"SDK initialization failed:\", err)\n    }\n\n    // Check for updates\n    updateReq := models.CheckUpdatesRequest{\n        InstallerVersion: \"1.0.0\",\n        InstallerOS:      models.OSTypeLinux,\n        InstallerArch:    models.ArchTypeAMD64,\n    }\n\n    data, _ := json.Marshal(updateReq)\n    response, err := client.UpdatesCheck(context.Background(), data)\n    if err != nil {\n        log.Fatal(\"Update check failed:\", err)\n    }\n\n    var updateResp models.CheckUpdatesResponse\n    json.Unmarshal(response, \u0026updateResp)\n    log.Printf(\"Available updates: %+v\", updateResp.Updates)\n}\n```\n\n## Architecture\n\n```mermaid\ngraph TD\n    A[Your Security Application] --\u003e B[VXControl Cloud SDK]\n    B --\u003e C[PoW Challenge System]\n    B --\u003e D[Encrypted Transport Layer]\n    D --\u003e E[VXControl Cloud Platform]\n\n    E --\u003e F[Update Services]\n    E --\u003e G[Package Management]\n    E --\u003e H[Error Reporting \u0026 AI Support]\n    E --\u003e I[Threat Intelligence Hub]\n    E --\u003e J[Vulnerability Database]\n    E --\u003e K[Computational Resources]\n    E --\u003e L[Knowledge Base]\n\n    A --\u003e M[PentAGI]\n    A --\u003e N[Security Tools]\n    A --\u003e O[SOC Systems]\n    A --\u003e P[Red Team Tools]\n    A --\u003e Q[Custom Applications]\n\n    C --\u003e R[Memory-Hard Algorithm]\n    C --\u003e S[Rate Limiting]\n    D --\u003e T[End-to-End Encryption]\n    D --\u003e V[Forward Secrecy]\n    D --\u003e X[Ed25519 Signatures]\n```\n\n## Cloud Services Integration\n\n### Update Management\nKeep PentAGI with automated update checking:\n\n```go\nimport \"github.com/vxcontrol/cloud/models\"\n\n// Check for component updates\nupdateReq := models.CheckUpdatesRequest{\n    InstallerVersion: \"1.0.0\",\n    InstallerOS:      models.OSTypeLinux,\n    InstallerArch:    models.ArchTypeAMD64,\n    Components: []models.ComponentInfo{\n        {\n            Component: models.ComponentTypePentagi,\n            Status:    models.ComponentStatusRunning,\n            Version:   \u0026[]string{\"1.2.0\"}[0],\n        },\n    },\n}\n\ndata, _ := json.Marshal(updateReq)\nresponse, err := client.UpdatesCheck(ctx, data)\n\nvar updateResp models.CheckUpdatesResponse\njson.Unmarshal(response, \u0026updateResp)\n```\n\n### Error Reporting \u0026 AI Support\nGet intelligent assistance for troubleshooting:\n\n```go\n// Report an error for analysis\nerrorReq := models.SupportErrorRequest{\n    Component:    models.ComponentTypePentagi,\n    Version:      \"1.0.0\",\n    OS:          models.OSTypeLinux,\n    Arch:        models.ArchTypeAMD64,\n    ErrorDetails: map[string]any{\n        \"error_type\": \"connection_timeout\",\n        \"message\":    \"Failed to connect to target\",\n        \"context\":    map[string]string{\"target\": \"192.168.1.1\", \"port\": \"443\"},\n    },\n}\n\ndata, _ := json.Marshal(errorReq)\nresponse, err := client.ReportError(ctx, data)\n```\n\n### Package Management\nDownload and validate software packages:\n\n```go\n// Get package information\npackageReq := models.PackageInfoRequest{\n    Component: models.ComponentTypePentagi,\n    Version:   \"1.0.0\",\n    OS:        models.OSTypeLinux,\n    Arch:      models.ArchTypeAMD64,\n}\n\n// Validate package integrity with signatures\nsignature := models.SignatureValue(\"base64-encoded-signature\")\nfileData, _ := os.ReadFile(\"package.tar.gz\")\nif err := signature.ValidateData(fileData); err != nil {\n    log.Fatal(\"Package signature validation failed:\", err)\n}\n```\n\n### AI-Powered Troubleshooting\nInteractive support with investigation capabilities:\n\n```go\n// Create support issue\nissueReq := models.SupportIssueRequest{\n    Component:    models.ComponentTypeEngine,\n    Version:      \"2.0.0\",\n    OS:          models.OSTypeDarwin,\n    Arch:        models.ArchTypeARM64,\n    ErrorDetails: \"Scanner fails to detect specific vulnerability patterns\",\n    Logs: []models.SupportLogs{\n        {\n            Component: models.ComponentTypeEngine,\n            Logs:      []string{\"ERROR: Pattern matching timeout\", \"WARN: Memory usage high\"},\n        },\n    },\n}\n\n// Investigate with AI assistance\ninvestigationReq := models.SupportInvestigationRequest{\n    IssueID:   receivedIssueID,\n    UserInput: \"The scanner works fine with other patterns but fails on this specific CVE\",\n}\n```\n\n## Call Function Types\n\nThe SDK supports 24 function patterns to handle different request/response scenarios:\n\n| Pattern | Request | Response | Use Case |\n|---------|---------|----------|----------|\n| `CallReqRespBytes` | None | Bytes | Simple data retrieval |\n| `CallReqQueryRespBytes` | Query params | Bytes | Filtered data queries |\n| `CallReqWithArgsRespBytes` | Path args | Bytes | Resource-specific requests |\n| `CallReqBytesRespBytes` | Body data | Bytes | Data submission/processing |\n| `CallReqReaderRespReader` | Stream | Stream | Large file processing |\n| `CallReqReaderRespWriter` | Stream | Writer | Direct output streaming |\n\n[Complete function reference](https://pkg.go.dev/github.com/vxcontrol/cloud/sdk)\n\n## Configuration Options\n\n### Basic Configuration\n\n```go\nerr := sdk.Build(configs,\n    // Required: Client identification\n    sdk.WithClient(\"MyApp\", \"1.0.0\"),\n\n    // Optional: Premium features\n    sdk.WithLicenseKey(\"XXXX-XXXX-XXXX-XXXX\"),\n\n    // Optional: Performance tuning\n    sdk.WithPowTimeout(30*time.Second),\n    sdk.WithMaxRetries(3),\n)\n```\n\n### Advanced Configuration\n\n```go\n// Custom transport for proxies/certificates\ntransport := sdk.DefaultTransport()\ntransport.TLSClientConfig = \u0026tls.Config{\n    MinVersion: tls.VersionTLS12,\n    // custom certificate validation\n}\ntransport.Proxy = http.ProxyURL(proxyURL)\n\n// Custom structured logging\nlogger := logrus.New()\nlogger.SetLevel(logrus.InfoLevel)\n\nerr := sdk.Build(configs,\n    sdk.WithTransport(transport),\n    sdk.WithLogger(sdk.WrapLogrus(logger)),\n    sdk.WithInstallationID(system.GetInstallationID()),\n)\n```\n\n## Security Model\n\n### Proof-of-Work Protection\nAll API calls require solving computational challenges to prevent abuse and DDoS attacks. The SDK automatically:\n- Requests challenge tickets from the server\n- Solves memory-hard proof-of-work puzzles\n- Includes cryptographic signatures with requests\n\n### End-to-End Encryption\n- **Session Keys**: Ephemeral AES keys for each request\n- **NaCL Encryption**: Secure key exchange using Curve25519\n- **Streaming Cipher**: AES-GCM for large data transfers\n- **Forward Secrecy**: Cypher key rotation\n\n### Rate Limiting Integration\n- **Adaptive Difficulty**: PoW complexity scales with server load\n- **Tier-Based Access**: License validation determines API quotas\n- **Intelligent Retry**: Automatic backoff with server-provided timing\n\n## Error Handling\n\n### Automatic Retry Logic\n\n```go\n// Temporary errors (automatically retried):\n// - Server overload (sdk.ErrBadGateway, sdk.ErrServerInternal)\n// - Rate limits (sdk.ErrTooManyRequests, sdk.ErrTooManyRequestsRPM)\n// - PoW timeouts (sdk.ErrExperimentTimeout)\n\n// Fatal errors (no retry):\n// - Invalid requests (sdk.ErrBadRequest, sdk.ErrForbidden)\n// - Missing resources (sdk.ErrNotFound)\n// - Long-term limits (sdk.ErrTooManyRequestsRPH, sdk.ErrTooManyRequestsRPD)\n```\n\n### Custom Error Handling\n\n```go\ndata, err := api.QueryThreats(ctx, []byte(threatQuery))\nif err != nil {\n    switch {\n    case errors.Is(err, sdk.ErrTooManyRequestsRPM):\n        // Wait and retry with exponential backoff\n        time.Sleep(60 * time.Second)\n\n    case errors.Is(err, sdk.ErrForbidden):\n        // Check license validity or authentication\n        log.Error(\"access denied - verify license key\")\n\n    case errors.Is(err, sdk.ErrExperimentTimeout):\n        // Increase PoW timeout for slower systems\n        // Reconfigure with sdk.WithPowTimeout(60*time.Second)\n\n    default:\n        log.Error(\"unexpected error:\", err)\n    }\n}\n```\n\n## Performance Characteristics\n\n### Benchmarks\n- **License validation**: ~334,000 operations/sec\n- **Function generation**: ~2M path templates/sec\n- **Streaming encryption**: ~50MB/sec throughput\n- **Connection pooling**: 300 connections/host, 50 total idle\n\n### Memory Usage\n- **Per request**: ~300 bytes (context + headers + keys)\n- **Per SDK instance**: ~200KB (connection pools + crypto keys)\n- **PoW solving**: 20-1024KB (reused across attempts)\n\n### Optimization Tips\n\n```go\n// Reuse SDK instances across requests\nerr := sdk.Build(configs, options...)\n\n// Use streaming for large data\nreader, err := api.ProcessLargeDataset(ctx, dataStream, dataSize)\n\n// Configure connection pooling for high throughput\ntransport := sdk.DefaultTransport()\ntransport.MaxConnsPerHost = 500\nsdk.WithTransport(transport)\n```\n\n## Production Deployment\n\n### Required Configuration\n\n```go\n// Minimum production setup\nerr := sdk.Build(configs,\n    sdk.WithClient(\"YourApp\", version),    // Required: Identification\n    sdk.WithLicenseKey(licenseKey),        // Optional: Authentication\n    sdk.WithLogger(productionLogger),      // Recommended: Monitoring\n)\n```\n\n### Monitoring Integration\n\n```go\n// Custom logger for metrics collection\ntype MetricsLogger struct {\n    *logrus.Logger\n    metrics MetricsCollector\n}\n\nfunc (m *MetricsLogger) WithError(err error) sdk.Entry {\n    // Track error rates by type\n    m.metrics.IncrementErrorCounter(err)\n    return m.Logger.WithError(err)\n}\n\n// Integration\nlogger := \u0026MetricsLogger{Logger: logrus.New(), metrics: yourMetrics}\nsdk.WithLogger(logger)\n```\n\n### Security Considerations\n\n- **Certificate Validating**: Validate server certificates in production\n- **Proxy Support**: Configure corporate proxy settings if required\n- **Timeout Tuning**: Adjust PoW timeouts based on hardware capabilities\n- **Rate Limit Monitoring**: Track API quota usage and plan capacity\n\n## Use Cases\n\n### Security Tool Integration\n\n```go\n// Integrate update checking into security tools\nfunc checkSecurityToolUpdates(components []models.ComponentInfo) error {\n    updateReq := models.CheckUpdatesRequest{\n        InstallerVersion: getCurrentVersion(),\n        InstallerOS:      getCurrentOS(),\n        InstallerArch:    getCurrentArch(),\n        Components:       components,\n    }\n\n    data, _ := json.Marshal(updateReq)\n    response, err := client.UpdatesCheck(context.Background(), data)\n    if err != nil {\n        return err\n    }\n\n    var updateResp models.CheckUpdatesResponse\n    json.Unmarshal(response, \u0026updateResp)\n\n    for _, update := range updateResp.Updates {\n        if update.HasUpdate {\n            log.Printf(\"Update available for %s: %s -\u003e %s\",\n                update.Stack, *update.CurrentVersion, *update.LatestVersion)\n        }\n    }\n\n    return nil\n}\n```\n\n### Automated Error Reporting\n\n```go\n// Integrate error reporting into application error handling\nfunc reportSecurityToolError(component models.ComponentType, err error) error {\n    errorReq := models.SupportErrorRequest{\n        Component:    component,\n        Version:      getComponentVersion(component),\n        OS:          getCurrentOS(),\n        Arch:        getCurrentArch(),\n        ErrorDetails: map[string]any{\n            \"error_message\": err.Error(),\n            \"stack_trace\":   getStackTrace(),\n            \"context\":       getCurrentContext(),\n        },\n    }\n\n    data, _ := json.Marshal(errorReq)\n    _, reportErr := client.ReportError(context.Background(), data)\n    return reportErr\n}\n```\n\n### Package Integrity Validation\n\n```go\n// Validate downloaded packages before installation\nfunc validatePackageIntegrity(packagePath, signatureStr string) error {\n    signature := models.SignatureValue(signatureStr)\n\n    // Validate file signature\n    if err := signature.ValidateFile(packagePath); err != nil {\n        return fmt.Errorf(\"package signature validation failed: %w\", err)\n    }\n\n    log.Println(\"Package integrity verified successfully\")\n    return nil\n}\n\n// Validate data integrity in memory\nfunc validateDataIntegrity(data []byte, signatureStr string) error {\n    signature := models.SignatureValue(signatureStr)\n\n    if err := signature.ValidateData(data); err != nil {\n        return fmt.Errorf(\"data signature validation failed: %w\", err)\n    }\n\n    return nil\n}\n```\n\n## Advanced Features\n\n### Multiple Service Endpoints\n\n```go\n// Connect to different service clusters\ntype FullClient struct {\n    UpdatesCheck     sdk.CallReqBytesRespBytes\n    ErrorReport      sdk.CallReqBytesRespBytes\n    PackageInfo      sdk.CallReqBytesRespBytes\n    SupportIssue     sdk.CallReqBytesRespBytes\n}\n\nconfigs := []sdk.CallConfig{\n    {\n        Calls:  []any{\u0026client.UpdatesCheck},\n        Host:   \"update.pentagi.com\",\n        Name:   \"check_updates\",\n        Path:   \"/api/v1/updates/check\",\n        Method: sdk.CallMethodPOST,\n    },\n    {\n        Calls:  []any{\u0026client.ErrorReport},\n        Host:   \"support.pentagi.com\",\n        Name:   \"error_report\",\n        Path:   \"/api/v1/errors/report\",\n        Method: sdk.CallMethodPOST,\n    },\n    {\n        Calls:  []any{\u0026client.PackageInfo},\n        Host:   \"update.pentagi.com\",\n        Name:   \"package_info\",\n        Path:   \"/api/v1/packages/info\",\n        Method: sdk.CallMethodPOST,\n    },\n}\n```\n\n### Timeout and Retry Configuration\n\n```go\n// Configure timeouts for different operation types\nerr := sdk.Build(configs,\n    sdk.WithPowTimeout(30*time.Second),  // For slower systems (max 60s, default 10s)\n    sdk.WithMaxRetries(5),               // For rate limiting and network issues\n    sdk.WithTransport(customTransport),  // Custom HTTP configuration\n)\n\n// Per-request timeouts\nctx, cancel := context.WithTimeout(context.Background(), 2*time.Minute)\ndefer cancel()\n\nresponse, err := client.UpdatesCheck(ctx, requestData)\n```\n\n## Error Reference\n\n| Error | Type | Retry | Description |\n|-------|------|-------|-------------|\n| `sdk.ErrBadGateway` | Temporary | Yes (3s) | Server maintenance/overload |\n| `sdk.ErrTooManyRequestsRPM` | Temporary | Yes (server-defined) | Rate limit exceeded |\n| `sdk.ErrExperimentTimeout` | Temporary | Yes (10s) | PoW solving timeout |\n| `sdk.ErrForbidden` | Fatal | No | Invalid license or authentication |\n| `sdk.ErrBadRequest` | Fatal | No | Invalid request format |\n| `sdk.ErrNotFound` | Fatal | No | Unknown endpoint or resource |\n\n## Available Models\n\nThe SDK provides strongly-typed models for all API interactions:\n\n### Component Management\n- `ComponentType`: pentagi, scraper, langfuse-worker, langfuse-web, grafana, otelcol, worker, installer, engine\n- `ComponentStatus`: unused, connected, installed, running\n- `ProductStack`: pentagi, langfuse, observability, worker, installer, engine\n- `OSType`: windows, linux, darwin\n- `ArchType`: amd64, arm64\n\n### Update Service Models\n- `CheckUpdatesRequest` / `CheckUpdatesResponse`: Check for component updates\n- `ComponentInfo`: Information about installed components\n- `UpdateInfo`: Available update details with changelog\n\n### Package Service Models\n- `PackageInfoRequest` / `PackageInfoResponse`: Get package metadata\n- `DownloadPackageRequest`: Request package downloads\n- `SignatureValue`: Cryptographic signature validation\n\n### Support Service Models\n- `SupportErrorRequest` / `SupportErrorResponse`: Automated error reporting\n- `SupportIssueRequest` / `SupportIssueResponse`: Manual issue creation with AI\n- `SupportLogs`: Component log collection\n- `SupportInvestigationRequest` / `SupportInvestigationResponse`: AI-powered troubleshooting\n\n### System Utilities\n- `system.GetInstallationID()`: Generates stable, machine-specific UUID for installation tracking\n\n## Service Tiers\n\n### Free Tier\n- **Basic error reporting**: Automated error submission\n- **Package validation**: Ed25519 signature verification\n- **Rate limiting**: Standard PoW difficulty\n\n### Professional Tier\n- **AI troubleshooting**: x5 investigation sessions/day\n- **Package downloads**: Access to all packages\n- **Rate limiting**: Reduced PoW difficulty\n\n### Enterprise Tier\n- **Advanced AI troubleshooting**: x50 investigation sessions/day\n- **Custom integrations**: Specialized endpoints and workflows\n- **Priority processing**: Minimal PoW difficulty and fast-track handling\n\n## Future Roadmap\n\nThe VXControl Cloud Platform is actively expanding. Future releases may include:\n\n- **Threat Intelligence Services**: IOC/IOA database access and threat analysis\n- **Vulnerability Assessment**: CVE database integration and security scanning\n- **Computational Resources**: Cloud-based intensive task processing\n- **Advanced Analytics**: Security metrics and reporting dashboards\n- **Custom Workflows**: Specialized security automation pipelines\n\n*Note: These features are in development and not yet available in the current SDK version.*\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'feat: add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## Support\n\n- **Documentation**: [API Reference](API.md) | [Examples](examples/)\n- **Issues**: [GitHub Issues](https://github.com/vxcontrol/cloud/issues)\n- **Enterprise Support**: support@vxcontrol.com\n- **Community**: [Discord](https://discord.gg/2xrMh7qX6m) and [Telegram](https://t.me/+Ka9i6CNwe71hMWQy)\n\n## License and Terms\n\n### SDK License\n\nCopyright (c) 2025 VXControl LLC. All rights reserved.\n\nThe **SDK code** is licensed under **GNU Affero General Public License v3.0 (AGPL-3.0)** with specific exceptions:\n\n**Open Source Use:**\n- **Free for open source projects** under AGPL-3.0 terms  \n- **Academic research and education**  \n- **Non-commercial projects**\n\n**Commercial Use:**  \n- **Commercial/proprietary use requires a separate license**  \n- **Enterprise licenses available** - Contact info@vxcontrol.com\n\n**Special Exception:**  \n- **Official PentAGI project** has a specific licensing exception - see [LICENSE](LICENSE) for details.\n\n### Cloud Services Terms\n\n⚠️ **Important:** Using VXControl Cloud Services requires compliance with additional terms.\n\nThe SDK provides access to **sensitive cybersecurity data**, **threat intelligence**, **vulnerability information**, and **AI-powered assistance**. Use of these cloud services and obtained data is governed by our [Terms of Service](TERMS_OF_SERVICE.md).\n\n**Cloud services may ONLY be used for:**\n- ✅ Defensive cybersecurity and authorized security testing\n- ✅ Academic research and education in controlled environments  \n- ✅ Incident response and compliance assessment\n- ❌ **Prohibited:** Unauthorized access, malicious activities, or illegal purposes\n\n📋 **Before using cloud services, read:** [TERMS_OF_SERVICE.md](TERMS_OF_SERVICE.md)\n\n### Contact\n\nFor licensing questions: **info@vxcontrol.com**  \nFor Terms of Service violations: **info@vxcontrol.com** (Subject: \"Cloud Services Terms\")\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvxcontrol%2Fcloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvxcontrol%2Fcloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvxcontrol%2Fcloud/lists"}