{"id":"a8030c88-893b-4cec-a213-9923e5b0d7ee","entityType":"agent","slug":"clawhub-jewellzhu-antom-copilot","name":"Antom Copilot","canonicalUrl":"https://www.xpersona.co/agent/clawhub-jewellzhu-antom-copilot","canonicalPath":"/agent/clawhub-jewellzhu-antom-copilot","generatedAt":"2026-10-14T15:21:35.981Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":null},"description":"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rat...","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 964 downloads reported by the source. Last updated 10/12/2026.","installCommand":"clawhub skill install s17ffj82f65mab4crhkwa929p183mw16:antom-copilot","sourceUrl":"https://clawhub.ai/jewellzhu/antom-copilot","homepage":"https://clawhub.ai/jewellzhu/skills/antom-copilot","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/jewellzhu/antom-copilot","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/jewellzhu/skills/antom-copilot","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":41,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Antom Copilot technical dossier on Xpersona with agent coverage, OPENCLEW support, and live trust metadata."},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":null},"stars":null,"forks":null,"downloads":964,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"2.0.6","tractionLabel":"964 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":null},"lastUpdatedAt":"2026-10-12T01:00:22.643Z","lastCrawledAt":"2026-10-12T01:00:22.643Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-13T01:00:22.643Z","lastVerifiedAt":null,"highlights":[{"version":"2.0.6","createdAt":"2026-04-14T12:07:45.649Z","changelog":"Version 2.0.6 of antom-copilot - No file changes detected for this release. - All features and documentation remain unchanged.","fileCount":9,"zipByteSize":34212},{"version":"2.0.2","createdAt":"2026-04-14T12:01:23.968Z","changelog":"Version 2.0.1 of antom-copilot - No file changes detected in this release. - Documentation and user instructions remain unchanged. - Existing features and capabilities are maintained.","fileCount":8,"zipByteSize":33027},{"version":"2.0.0","createdAt":"2026-03-27T07:19:26.051Z","changelog":"Remove hard-coded tokens","fileCount":8,"zipByteSize":33341},{"version":"1.0.0","createdAt":"2026-03-26T11:39:13.283Z","changelog":"Antom Copilot 1.0.0 – Initial Release - Introduces Antom Intelligent Assistant for handling all Antom-related queries and operations. - Requires setup with a configuration file containing merchant token and email details. - Integrates a Payment Success Rate Expert for analyzing and reporting payment success data. - Supports automatic intent recognition and delegation to the sub-expert. - Provides clear guidance on setup, configuration, and usage.","fileCount":7,"zipByteSize":32891}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17ffj82f65mab4crhkwa929p183mw16:antom-copilot","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17ffj82f65mab4crhkwa929p183mw16:antom-copilot` in an isolated environment before connecting it to live workloads.","No published capability contract is available yet, so validate auth and request/response behavior manually.","Review the upstream CLAWHUB listing at https://clawhub.ai/jewellzhu/antom-copilot before using production credentials."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-14T15:21:35.979Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-jewellzhu-antom-copilot/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":null},"readme":"Skill: Antom Copilot\n\nOwner: jewellzhu\n\nSummary: Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rat...\n\nTags: latest:2.0.6\n\nVersion history:\n\nv2.0.6 | 2026-04-14T12:07:45.649Z | user\n\nVersion 2.0.6 of antom-copilot\n\n- No file changes detected for this release.\n- All features and documentation remain unchanged.\n\nv2.0.2 | 2026-04-14T12:01:23.968Z | user\n\nVersion 2.0.1 of antom-copilot\n\n- No file changes detected in this release.\n- Documentation and user instructions remain unchanged.\n- Existing features and capabilities are maintained.\n\nv2.0.0 | 2026-03-27T07:19:26.051Z | user\n\nRemove hard-coded tokens\n\nv1.0.0 | 2026-03-26T11:39:13.283Z | user\n\nAntom Copilot 1.0.0 – Initial Release\n\n- Introduces Antom Intelligent Assistant for handling all Antom-related queries and operations.\n- Requires setup with a configuration file containing merchant token and email details.\n- Integrates a Payment Success Rate Expert for analyzing and reporting payment success data.\n- Supports automatic intent recognition and delegation to the sub-expert.\n- Provides clear guidance on setup, configuration, and usage.\n\nArchive index:\n\nArchive v2.0.6: 9 files, 34212 bytes\n\nFiles: payment_success_rate_expert/api_config.json (4b), payment_success_rate_expert/requirements.txt (280b), payment_success_rate_expert/scripts/analyse_and_gen_report.py (75936b), payment_success_rate_expert/scripts/query_antom_psr_data.py (12075b), payment_success_rate_expert/scripts/send_psr_report.py (14613b), payment_success_rate_expert/SKILL.md (15795b), skill-card.md (2540b), SKILL.md (2489b), _meta.json (132b)\n\nFile v2.0.6:payment_success_rate_expert/SKILL.md\n\n---\nname: payment_success_rate_expert\ndescription: \"Antom Payment Success Rate Expert - Focused on payment success rate data pulling, analysis, report generation, and sending\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"📊\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Payment Success Rate Expert\nHello! I am the Antom Payment Success Rate Expert, focusing on payment success rate data processing and reporting.\n\n## 🔧 Prerequisites and Configuration Requirements\n\n### System Requirements\n- **Operating System**: macOS, Linux, or Windows\n- **Python Version**: Python 3.6+\n\n### Python Dependencies\n\n#### Capability One: query_antom_psr_data.py\n```bash\npip install requests\n```\n\n#### Capability Two: analyse_and_gen_report.py\n```bash\npip install matplotlib reportlab numpy\n```\n\n#### Capability Three: send_psr_report.py\n- Uses only Python standard library, no additional installation required\n\n### Configuration File Requirements\n\n**Configuration File Location**: `~/antom/conf.json`\n\n**Configuration File Format**:\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required for capability three)\n  - `smtp_server`: SMTP server address\n  - `smtp_port`: SMTP port number (usually 587)\n  - `username`: Sender email address\n  - `password`: Email password or app-specific password\n  - `use_tls`: Whether to use TLS encryption (default: true)\n\n### Directory Structure Requirements\n\nScripts will automatically create the following directory structure:\n```\n~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png\n```\n\n### API Endpoint\n\n**query_antom_psr_data.py** uses the following API endpoint:\n- **URL**: `https://ibotservice.alipayplus.com/almpapi/v1/message/chat`\n- **Method**: POST\n- **Authentication**: Uses merchant_id and merchant_token from configuration\n- **Request Format**: JSON\n- **Timeout Setting**: 30 seconds\n\n### Execution Order Dependencies\n\n**Normal Workflow**:\n1. **Step One**: Run `query_antom_psr_data.py` to pull data\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", use yesterday's data (since today's data is not yet generated)\n   - Output: `~/antom/success rate/{date}_raw_data.json` (7 files total)\n   \n2. **Step Two**: Run `analyse_and_gen_report.py` to generate report\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", analyze yesterday's data\n   - Dependency: Raw data files generated in step one\n   - Output: PDF report, executive summary, and charts\n   \n3. **Step Three**: Run `send_psr_report.py` to send report\n   - Input: Target date and recipient email\n   - **T+1 Logic**: Only when sending \"today's\" report, use yesterday's report\n   - Dependency: PDF report and executive summary generated in step two\n   - Output: Email sent\n\n**Note**: The three capabilities must be executed in sequence. Subsequent capabilities depend on the output files from the previous step.\n\n**Important Note - T+1 Data Generation Logic**:\nSince Antom data is generated on a T+1 basis (today's data can only be retrieved the next day), the script automatically handles this logic:\n- When user queries \"today\" (e.g., 20260325): Automatically uses yesterday's data (20260324)\n- When user queries a historical date (e.g., 20260320): Directly uses that date's data (20260320)\n- This is implemented through the internal `calculate_t1_date()` function\n- Users don't need to manually calculate dates, just provide the date you want to query\n\n## 📋 Capability List\n\n### Capability One: Pull Merchant Payment Success Rate Data\n- Pull payment success rate data from Antom server\n- Available script: `query_antom_psr_data.py`\n- Accepts parameter: Date range (format: YYYYMMDD~YYYYMMDD)\n- Prerequisite: Configuration file must contain valid merchant_token\n- Output file: `~/antom/success rate/{start_date}_raw_data.json`\n\n### Capability Two: Analyze Data and Generate PDF Report\n- Analyze merchant payment success rate data\n- Generate PDF analysis report with charts and executive summary\n- Available script: `analyse_and_gen_report.py`\n- Accepts parameter: Date (format: YYYYMMDD)\n- Prerequisites:\n  - Capability one has been executed and raw data files generated\n- Output files:\n  - PDF report: `~/antom/success rate/{date}/{date}-Payment-Success-Rate-Report.pdf`\n  - Executive summary: `~/antom/success rate/{date}/{date}_executive_summary.txt`\n  - Chart files: Stored in `~/antom/success rate/{date}/images/` directory\n\n### Capability Three: Send Payment Success Rate Report\n- Send the generated report to specified recipients\n- Available script: `send_psr_report.py`\n- Accepts parameters:\n  - Parameter one: Date (format: YYYYMMDD)\n  - Parameter two: Recipient email address\n- Prerequisites:\n  - Capability two has been executed and PDF report generated\n  - Configuration file must contain complete email_conf\n- Features:\n  - Automatically analyzes data and generates intelligent risk insights\n  - Supports attachment sending (PDF report)\n  - Includes executive summary in email body\n\n## 💡 Usage Examples\n\n### Complete Workflow Example\n\n**Example 1: Generate Today's Report (Using T+1 Logic)**\n```bash\n# Step One: Pull yesterday's data (automatically applies T+1 logic)\n# Assuming today is 20260325, will actually query 20260324 and the previous week\npython query_antom_psr_data.py --date 20260325\n\n# Step Two: Generate yesterday's report\npython analyse_and_gen_report.py --date 20260325\n\n# Step Three: Send report\npython send_psr_report.py --date 20260325 --recipient merchant@example.com\n```\n\n**Important Note**: \n- Users don't need to worry about T+1 details, just provide the date you want to report\n- Scripts automatically adjust the date (actual date = user specified date - 1 day)\n- Analysis reports and emails will display the user-specified target date\n\n**Simplified Command (Using Automation Script)**:\n```bash\n# One-click generate and send today's report (actually yesterday's data)\n./generate_today_report.sh merchant@example.com\n```\n\n## ⚠️ Common Issues\n\n1. **Configuration File Not Found Error**\n   - Ensure `~/antom/conf.json` has been created\n   - Check if configuration file format is correct (valid JSON)\n\n2. **Missing Dependency Package Error**\n   - Install corresponding Python packages based on capability requirements\n   - Use `pip install -r requirements.txt` for batch installation\n\n3. **File Not Found Error**\n   - Ensure scripts are executed in sequence\n   - Check if previous step completed successfully and generated output files\n\n4. **Email Sending Failure**\n   - Check if email_conf configuration is correct\n   - Confirm SMTP server address and port\n   - Verify email account and password (app-specific password recommended)\n\n## ✨ Enhanced Features (v2.0)\n\n### Automatic Data Recovery\n- **Smart Date Selection**: When target date has no data, automatically searches backwards up to 7 days to find the most recent valid data\n- **Graceful Degradation**: If no data is found for a specific payment method (Card or APM), the report will skip that section without failing\n- **Enhanced Validation**: Improved data validity checking that accepts either Card or APM data (instead of requiring both)\n\n### Robust Data Handling\n- **Missing Field Tolerance**: Automatically handles missing data fields (e.g., 3DS authentication data) without crashing\n- **Section-Based Generation**: Only generates report sections for which data is available\n- **Detailed Diagnostics**: Provides clear console output showing what data was found and what sections will be generated\n\n### Error Prevention\n- **Pre-Flight Checks**: Validates data existence and content before attempting report generation\n- **Informative Messages**: Clear error messages with actionable steps when issues are detected\n- **Graceful Failures**: Continues report generation even when some metrics are unavailable\n\n### Smart Display Logic (v2.1)\n- **Conditional Auth Display**: Only displays 3DS and Non-3DS authentication rates when the data actually exists, preventing misleading 0% displays\n- **Adaptive Executive Summary**: Executive summary dynamically adjusts to show only available authentication methods\n- **Data Quality Filtering**: Automatically filters out low-quality or unknown data types (e.g., 'unknown' authentication category) from analysis\n\n**Bug Fix (v2.1)**: Fixed issue where missing 3DS data would display as \"3DS Success Rate: 0.0%\" in analysis summaries, which was misleading. Now only displays rates for authentication methods that actually have data.\n\n### Chart Display Improvement (v2.1)\n- **Fixed Y-Axis Range**: Success rate charts now use a fixed 0-100% y-axis range, ensuring consistent visualization\n- **Clear Rate Indication**: Prevents misinterpretation when success rates are high (e.g., 83% no longer appears near the bottom of the chart)\n- **Better Visual Comparison**: Makes it easy to quickly assess performance at a glance\n\n**Bug Fix (v2.1)**: Fixed visual issue where success rate line charts could appear to show ~0% when the actual rate was high (e.g., 83%). This was caused by matplotlib's auto-scaling when all data points had similar values. Charts now explicitly use 0-100% y-axis range.\n\n### Enhanced Analysis Sections (v2.2)\n\n#### Dynamic Section Numbering\n- **Independent Counters**: Card and APM sections now use separate counters (`card_section_counter` and `apm_section_counter`)\n- **Automatic Numbering**: Sections are numbered dynamically based on available data, preventing numbering gaps when sections are skipped\n- **Clean Layout**: Ensures consistent numbering whether error data or optional sections are present\n\n**Feature Enhancement (v2.2)**: Implemented dynamic section numbering to handle conditional sections gracefully.\n\n#### Country & Bank Analysis Enhancement\n- **Top 10 by Improvement**: Displays top 10 countries and banks sorted by **success rate change** (today vs yesterday), highlighting biggest improvements\n- **Bottom 10 by Decline**: Shows bottom 10 countries and banks by success rate change, filtering by minimum transaction threshold (5 for banks, countries also have volume threshold)\n- **Action-Oriented Sorting**: Both top and bottom performers are ordered by change magnitude rather than volume, making it easy to identify what improved and what needs attention\n- **Smart Analysis Summary**: When bank count exceeds 20, analysis summary only examines Top 10 and Bottom 10 banks (filtering low performers), preventing information overload while maintaining actionable insights\n- **Comprehensive Coverage**: Country analysis now matches bank analysis in depth and presentation style\n\n**Feature Enhancement (v2.2)**: Country and bank analysis now focus on change detection rather than static rankings, providing more actionable insights for merchant optimization. Merchants can quickly identify:\n- Which countries/banks' performance is improving most (top 10 by change)\n- Which countries/banks' performance is declining (bottom 10 by change)\n\n#### APM Terminal Analysis Addition\n- **Terminal Type Breakdown**: New section analyzing APM performance by terminal type (e.g., APP, WEB, WAP)\n- **Volume and Rate Tracking**: Shows success rates, transaction volumes, and changes vs. previous periods\n- **Baseline Data Handling**: Missing yesterday/week data are handled intelligently (yesterday defaults to 0%, week avg equals today's rate when only one day available)\n- **Actionable Insights**: Automatically highlights underperforming terminal types with specific recommendations\n\n**Feature Addition (v2.2)**: Added comprehensive terminal analysis for APM payments, enabling merchants to identify and optimize performance issues across different channels (mobile app, web, mobile web).\n\n#### Historical Data Handling (v2.2)\n- **Yesterday Baseline**: When previous day data is unavailable, defaults to 0% (showing improvement from zero baseline)\n- **Week Average Logic**: When only one day of data exists, week average equals today's rate (resulting in zero weekly change, which is statistically correct)\n- **Clear Visual Indicators**: Table clearly shows when baseline data is missing vs. when actual historical data exists\n\n**Bug Fix (v2.2)**: Fixed terminal analysis to properly handle missing historical data. Yesterday now defaults to 0% and week average defaults to today's rate when only one day of data is available, preventing misleading change calculations.\n\n#### Executive Summary Risk Classification (v2.2)\n- **Volume Change Categorization**: Significant volume changes are now properly categorized based on direction\n  - **Increases >50%**: Classified as \"Significant volume increase\" in POSITIVE PERFORMANCE\n  - **Declines <-50%**: Classified as \"⚠️ Significant volume decline\" in KEY RISKS AND CONCERNS\n- **Authentication Performance Context**: Authentication method descriptions now include performance context\n  - **Success rate ≥80%**: \"strong performance\" or \"performing well\"\n  - **Success rate 70-80%**: \"acceptable\"\n  - **Success rate <70%**: \"⚠️ needs improvement\" (moved to WARNINGS)\n- **Accurate Risk Representation**: Volume declines and underperforming authentication methods are no longer misrepresented as positive observations\n\n**Bug Fix (v2.2)**: Fixed executive summary to properly categorize volume declines as risks and provide context for authentication performance ratings. Previously, both increases and declines >50% were placed in POSITIVE PERFORMANCE section, and authentication methods lacked performance context.\n\nThis ensures the report generation is resilient to data gaps and provides maximum value even when some data sources are unavailable.\n\n## 📞 Technical Support\n\nFor any issues, please contact Antom technical support or visit: https://global.alipay.com\n\n---\n\nThis skill is automatically called by the antom_copilot main skill based on user intent, primarily handling queries and operations related to payment success rate.\n\n### v2.3 (Current) - Enhanced Compatibility & Robustness\n- **Week Data Validation**: Sections automatically hide if week data is completely empty (no historical context)\n- **Zero-Fill for Missing Data**: When today has no transactions but historical data exists, displays 0 for today while preserving week average calculations\n- **Smart Display Logic**: \n  - Country/Bank analysis shows **all entries** when ≤20 total\n  - Shows **Top 10 + Bottom 10** when >20 total (maintains performance)\n- **Display Consistency**: Country analysis now matches bank analysis logic\n\n**Compatibility Enhancement (v2.3)**: The report generation is now more resilient to data gaps:\n- Sections won't display if there's no week data (avoiding empty/meaningless sections)\n- Historical data can still be shown even when today has no transactions\n- Prevents information overload while maintaining depth when needed\n\nFile v2.0.6:SKILL.md\n\n---\nname: antom_copilot\ndescription: \"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rate Expert\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"🤖\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Antom Copilot\n\nHello! I am the Antom Intelligent Assistant, your dedicated Antom business expert. I can help you handle all Antom-related queries and operations.\n\n## 🔧 Initial Setup\n\nBefore using Antom Copilot, you need to configure your merchant information:\n\n### Configuration File Location\n- **macOS/Linux**: `~/antom/conf.json`\n- **Windows**: `%USERPROFILE%\\\\antom\\\\conf.json`\n\n### Configuration Parameters\nThe configuration file needs to include the following parameters:\n\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required, for sending reports)\n\n### How to Obtain Configuration Information\n\nYou can visit the Antom Portal to get your `merchant_token`:\n\n🔗 **Antom Portal Address**: https://dashboard.antom.com/\n\nIn the portal, you can:\n1. Log in to your merchant account\n2. Ask antom copilot for the merchant token, for example: \"I need to get the merchant token for antom copilot skill\"\n3. If you have questions, you can contact Antom technical support\n\n💡 **Tip**: Keep your merchant_token secure and do not share it with others.\n\n## Sub-Expert Team\n\n### 📊 Payment Success Rate Expert\nFocused on payment success rate data processing and report generation:\n- Pull merchant payment success rate data (query_antom_psr_data.py)\n- Analyze data and generate PDF reports (analyse_and_gen_report.py)\n- Send payment success rate reports (send_psr_report.py)\n\n## Intent Recognition and Delegation Rules\n\nWhen you ask questions, I will analyze your intent and automatically delegate to the Payment Success Rate Expert for:\n- Pull payment success rate data\n- Generate payment success rate reports\n- Send payment success rate reports\n\n## Current Status\n\nThe Payment Success Rate Expert is ready:\n\n- ✅ Payment Success Rate Expert: payment_success_rate_expert helloworld!\n\nYou can now ask any payment success rate related questions!\n\nFile v2.0.6:_meta.json\n\n{\n  \"ownerId\": \"kn75yzkd2rmc46xb28z9x65kd583m9xm\",\n  \"slug\": \"antom-copilot\",\n  \"version\": \"2.0.6\",\n  \"publishedAt\": 1776168465649\n}\n\nFile v2.0.6:skill-card.md\n\n## Description:\n\nAntom Copilot is an Antom intelligent assistant that analyzes user intent and delegates payment success rate data retrieval, analysis, report generation, and report sending to a payment success rate expert.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[jewellzhu](https://clawhub.ai/user/jewellzhu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal merchants and operators use this skill to retrieve Antom payment success rate data, generate PDF and text reports with charts and executive summaries, and send those reports to selected recipients by email.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The workflow stores and uses merchant and SMTP credentials.\n\nMitigation: Use scoped and revocable merchant tokens, an app-specific SMTP password, restrictive permissions on ~/antom/conf.json, and TLS-only SMTP.\n\nRisk: Payment success rate reports can be sent by email to user-supplied recipients.\n\nMitigation: Review recipient addresses and report contents before sending reports.\n\nRisk: The merchant token is sent to an API host that differs from the endpoint named in the documentation.\n\nMitigation: Install and run the skill only after verifying that the actual Antom API host used by the code is trusted for the merchant account.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/jewellzhu/skills/antom-copilot)\n- [Antom Portal](https://dashboard.antom.com/)\n- [Documented Antom API endpoint](https://ibotservice.alipayplus.com/almpapi/v1/message/chat)\n- [Antom Copilot API host used by query script](https://antomaplusai.antom.com/antomcopilotai/mcp/api/v1/antomcopilot/RECALL_data)\n- [Antom support](https://global.alipay.com)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, files, guidance]\n\n**Output Format:** [Markdown guidance with shell commands; generated JSON data, PDF reports, text executive summaries, chart images, and email messages.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires a local Antom configuration file with merchant and SMTP credentials; report generation depends on date input and prior workflow steps.]\n\n## Skill Version(s):\n\n2.0.6 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.0.6:payment_success_rate_expert/api_config.json\n\n{\n}\n\nFile v2.0.6:payment_success_rate_expert/requirements.txt\n\n# Payment Success Rate Expert - Python Dependencies\n\n# 能力一：query_antom_psr_data.py\nrequests>=2.25.0\n\n# 能力二：analyse_and_gen_report.py\nmatplotlib>=3.3.0\nreportlab>=3.6.0\nnumpy>=1.19.0\n\n# 能力三：send_psr_report.py\n# 仅使用Python标准库，无需额外依赖\n\nArchive v2.0.2: 8 files, 33027 bytes\n\nFiles: payment_success_rate_expert/api_config.json (205b), payment_success_rate_expert/requirements.txt (280b), payment_success_rate_expert/scripts/analyse_and_gen_report.py (75936b), payment_success_rate_expert/scripts/query_antom_psr_data.py (12075b), payment_success_rate_expert/scripts/send_psr_report.py (14613b), payment_success_rate_expert/SKILL.md (15795b), SKILL.md (2489b), _meta.json (132b)\n\nFile v2.0.2:payment_success_rate_expert/SKILL.md\n\n---\nname: payment_success_rate_expert\ndescription: \"Antom Payment Success Rate Expert - Focused on payment success rate data pulling, analysis, report generation, and sending\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"📊\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Payment Success Rate Expert\nHello! I am the Antom Payment Success Rate Expert, focusing on payment success rate data processing and reporting.\n\n## 🔧 Prerequisites and Configuration Requirements\n\n### System Requirements\n- **Operating System**: macOS, Linux, or Windows\n- **Python Version**: Python 3.6+\n\n### Python Dependencies\n\n#### Capability One: query_antom_psr_data.py\n```bash\npip install requests\n```\n\n#### Capability Two: analyse_and_gen_report.py\n```bash\npip install matplotlib reportlab numpy\n```\n\n#### Capability Three: send_psr_report.py\n- Uses only Python standard library, no additional installation required\n\n### Configuration File Requirements\n\n**Configuration File Location**: `~/antom/conf.json`\n\n**Configuration File Format**:\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required for capability three)\n  - `smtp_server`: SMTP server address\n  - `smtp_port`: SMTP port number (usually 587)\n  - `username`: Sender email address\n  - `password`: Email password or app-specific password\n  - `use_tls`: Whether to use TLS encryption (default: true)\n\n### Directory Structure Requirements\n\nScripts will automatically create the following directory structure:\n```\n~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png\n```\n\n### API Endpoint\n\n**query_antom_psr_data.py** uses the following API endpoint:\n- **URL**: `https://ibotservice.alipayplus.com/almpapi/v1/message/chat`\n- **Method**: POST\n- **Authentication**: Uses merchant_id and merchant_token from configuration\n- **Request Format**: JSON\n- **Timeout Setting**: 30 seconds\n\n### Execution Order Dependencies\n\n**Normal Workflow**:\n1. **Step One**: Run `query_antom_psr_data.py` to pull data\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", use yesterday's data (since today's data is not yet generated)\n   - Output: `~/antom/success rate/{date}_raw_data.json` (7 files total)\n   \n2. **Step Two**: Run `analyse_and_gen_report.py` to generate report\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", analyze yesterday's data\n   - Dependency: Raw data files generated in step one\n   - Output: PDF report, executive summary, and charts\n   \n3. **Step Three**: Run `send_psr_report.py` to send report\n   - Input: Target date and recipient email\n   - **T+1 Logic**: Only when sending \"today's\" report, use yesterday's report\n   - Dependency: PDF report and executive summary generated in step two\n   - Output: Email sent\n\n**Note**: The three capabilities must be executed in sequence. Subsequent capabilities depend on the output files from the previous step.\n\n**Important Note - T+1 Data Generation Logic**:\nSince Antom data is generated on a T+1 basis (today's data can only be retrieved the next day), the script automatically handles this logic:\n- When user queries \"today\" (e.g., 20260325): Automatically uses yesterday's data (20260324)\n- When user queries a historical date (e.g., 20260320): Directly uses that date's data (20260320)\n- This is implemented through the internal `calculate_t1_date()` function\n- Users don't need to manually calculate dates, just provide the date you want to query\n\n## 📋 Capability List\n\n### Capability One: Pull Merchant Payment Success Rate Data\n- Pull payment success rate data from Antom server\n- Available script: `query_antom_psr_data.py`\n- Accepts parameter: Date range (format: YYYYMMDD~YYYYMMDD)\n- Prerequisite: Configuration file must contain valid merchant_token\n- Output file: `~/antom/success rate/{start_date}_raw_data.json`\n\n### Capability Two: Analyze Data and Generate PDF Report\n- Analyze merchant payment success rate data\n- Generate PDF analysis report with charts and executive summary\n- Available script: `analyse_and_gen_report.py`\n- Accepts parameter: Date (format: YYYYMMDD)\n- Prerequisites:\n  - Capability one has been executed and raw data files generated\n- Output files:\n  - PDF report: `~/antom/success rate/{date}/{date}-Payment-Success-Rate-Report.pdf`\n  - Executive summary: `~/antom/success rate/{date}/{date}_executive_summary.txt`\n  - Chart files: Stored in `~/antom/success rate/{date}/images/` directory\n\n### Capability Three: Send Payment Success Rate Report\n- Send the generated report to specified recipients\n- Available script: `send_psr_report.py`\n- Accepts parameters:\n  - Parameter one: Date (format: YYYYMMDD)\n  - Parameter two: Recipient email address\n- Prerequisites:\n  - Capability two has been executed and PDF report generated\n  - Configuration file must contain complete email_conf\n- Features:\n  - Automatically analyzes data and generates intelligent risk insights\n  - Supports attachment sending (PDF report)\n  - Includes executive summary in email body\n\n## 💡 Usage Examples\n\n### Complete Workflow Example\n\n**Example 1: Generate Today's Report (Using T+1 Logic)**\n```bash\n# Step One: Pull yesterday's data (automatically applies T+1 logic)\n# Assuming today is 20260325, will actually query 20260324 and the previous week\npython query_antom_psr_data.py --date 20260325\n\n# Step Two: Generate yesterday's report\npython analyse_and_gen_report.py --date 20260325\n\n# Step Three: Send report\npython send_psr_report.py --date 20260325 --recipient merchant@example.com\n```\n\n**Important Note**: \n- Users don't need to worry about T+1 details, just provide the date you want to report\n- Scripts automatically adjust the date (actual date = user specified date - 1 day)\n- Analysis reports and emails will display the user-specified target date\n\n**Simplified Command (Using Automation Script)**:\n```bash\n# One-click generate and send today's report (actually yesterday's data)\n./generate_today_report.sh merchant@example.com\n```\n\n## ⚠️ Common Issues\n\n1. **Configuration File Not Found Error**\n   - Ensure `~/antom/conf.json` has been created\n   - Check if configuration file format is correct (valid JSON)\n\n2. **Missing Dependency Package Error**\n   - Install corresponding Python packages based on capability requirements\n   - Use `pip install -r requirements.txt` for batch installation\n\n3. **File Not Found Error**\n   - Ensure scripts are executed in sequence\n   - Check if previous step completed successfully and generated output files\n\n4. **Email Sending Failure**\n   - Check if email_conf configuration is correct\n   - Confirm SMTP server address and port\n   - Verify email account and password (app-specific password recommended)\n\n## ✨ Enhanced Features (v2.0)\n\n### Automatic Data Recovery\n- **Smart Date Selection**: When target date has no data, automatically searches backwards up to 7 days to find the most recent valid data\n- **Graceful Degradation**: If no data is found for a specific payment method (Card or APM), the report will skip that section without failing\n- **Enhanced Validation**: Improved data validity checking that accepts either Card or APM data (instead of requiring both)\n\n### Robust Data Handling\n- **Missing Field Tolerance**: Automatically handles missing data fields (e.g., 3DS authentication data) without crashing\n- **Section-Based Generation**: Only generates report sections for which data is available\n- **Detailed Diagnostics**: Provides clear console output showing what data was found and what sections will be generated\n\n### Error Prevention\n- **Pre-Flight Checks**: Validates data existence and content before attempting report generation\n- **Informative Messages**: Clear error messages with actionable steps when issues are detected\n- **Graceful Failures**: Continues report generation even when some metrics are unavailable\n\n### Smart Display Logic (v2.1)\n- **Conditional Auth Display**: Only displays 3DS and Non-3DS authentication rates when the data actually exists, preventing misleading 0% displays\n- **Adaptive Executive Summary**: Executive summary dynamically adjusts to show only available authentication methods\n- **Data Quality Filtering**: Automatically filters out low-quality or unknown data types (e.g., 'unknown' authentication category) from analysis\n\n**Bug Fix (v2.1)**: Fixed issue where missing 3DS data would display as \"3DS Success Rate: 0.0%\" in analysis summaries, which was misleading. Now only displays rates for authentication methods that actually have data.\n\n### Chart Display Improvement (v2.1)\n- **Fixed Y-Axis Range**: Success rate charts now use a fixed 0-100% y-axis range, ensuring consistent visualization\n- **Clear Rate Indication**: Prevents misinterpretation when success rates are high (e.g., 83% no longer appears near the bottom of the chart)\n- **Better Visual Comparison**: Makes it easy to quickly assess performance at a glance\n\n**Bug Fix (v2.1)**: Fixed visual issue where success rate line charts could appear to show ~0% when the actual rate was high (e.g., 83%). This was caused by matplotlib's auto-scaling when all data points had similar values. Charts now explicitly use 0-100% y-axis range.\n\n### Enhanced Analysis Sections (v2.2)\n\n#### Dynamic Section Numbering\n- **Independent Counters**: Card and APM sections now use separate counters (`card_section_counter` and `apm_section_counter`)\n- **Automatic Numbering**: Sections are numbered dynamically based on available data, preventing numbering gaps when sections are skipped\n- **Clean Layout**: Ensures consistent numbering whether error data or optional sections are present\n\n**Feature Enhancement (v2.2)**: Implemented dynamic section numbering to handle conditional sections gracefully.\n\n#### Country & Bank Analysis Enhancement\n- **Top 10 by Improvement**: Displays top 10 countries and banks sorted by **success rate change** (today vs yesterday), highlighting biggest improvements\n- **Bottom 10 by Decline**: Shows bottom 10 countries and banks by success rate change, filtering by minimum transaction threshold (5 for banks, countries also have volume threshold)\n- **Action-Oriented Sorting**: Both top and bottom performers are ordered by change magnitude rather than volume, making it easy to identify what improved and what needs attention\n- **Smart Analysis Summary**: When bank count exceeds 20, analysis summary only examines Top 10 and Bottom 10 banks (filtering low performers), preventing information overload while maintaining actionable insights\n- **Comprehensive Coverage**: Country analysis now matches bank analysis in depth and presentation style\n\n**Feature Enhancement (v2.2)**: Country and bank analysis now focus on change detection rather than static rankings, providing more actionable insights for merchant optimization. Merchants can quickly identify:\n- Which countries/banks' performance is improving most (top 10 by change)\n- Which countries/banks' performance is declining (bottom 10 by change)\n\n#### APM Terminal Analysis Addition\n- **Terminal Type Breakdown**: New section analyzing APM performance by terminal type (e.g., APP, WEB, WAP)\n- **Volume and Rate Tracking**: Shows success rates, transaction volumes, and changes vs. previous periods\n- **Baseline Data Handling**: Missing yesterday/week data are handled intelligently (yesterday defaults to 0%, week avg equals today's rate when only one day available)\n- **Actionable Insights**: Automatically highlights underperforming terminal types with specific recommendations\n\n**Feature Addition (v2.2)**: Added comprehensive terminal analysis for APM payments, enabling merchants to identify and optimize performance issues across different channels (mobile app, web, mobile web).\n\n#### Historical Data Handling (v2.2)\n- **Yesterday Baseline**: When previous day data is unavailable, defaults to 0% (showing improvement from zero baseline)\n- **Week Average Logic**: When only one day of data exists, week average equals today's rate (resulting in zero weekly change, which is statistically correct)\n- **Clear Visual Indicators**: Table clearly shows when baseline data is missing vs. when actual historical data exists\n\n**Bug Fix (v2.2)**: Fixed terminal analysis to properly handle missing historical data. Yesterday now defaults to 0% and week average defaults to today's rate when only one day of data is available, preventing misleading change calculations.\n\n#### Executive Summary Risk Classification (v2.2)\n- **Volume Change Categorization**: Significant volume changes are now properly categorized based on direction\n  - **Increases >50%**: Classified as \"Significant volume increase\" in POSITIVE PERFORMANCE\n  - **Declines <-50%**: Classified as \"⚠️ Significant volume decline\" in KEY RISKS AND CONCERNS\n- **Authentication Performance Context**: Authentication method descriptions now include performance context\n  - **Success rate ≥80%**: \"strong performance\" or \"performing well\"\n  - **Success rate 70-80%**: \"acceptable\"\n  - **Success rate <70%**: \"⚠️ needs improvement\" (moved to WARNINGS)\n- **Accurate Risk Representation**: Volume declines and underperforming authentication methods are no longer misrepresented as positive observations\n\n**Bug Fix (v2.2)**: Fixed executive summary to properly categorize volume declines as risks and provide context for authentication performance ratings. Previously, both increases and declines >50% were placed in POSITIVE PERFORMANCE section, and authentication methods lacked performance context.\n\nThis ensures the report generation is resilient to data gaps and provides maximum value even when some data sources are unavailable.\n\n## 📞 Technical Support\n\nFor any issues, please contact Antom technical support or visit: https://global.alipay.com\n\n---\n\nThis skill is automatically called by the antom_copilot main skill based on user intent, primarily handling queries and operations related to payment success rate.\n\n### v2.3 (Current) - Enhanced Compatibility & Robustness\n- **Week Data Validation**: Sections automatically hide if week data is completely empty (no historical context)\n- **Zero-Fill for Missing Data**: When today has no transactions but historical data exists, displays 0 for today while preserving week average calculations\n- **Smart Display Logic**: \n  - Country/Bank analysis shows **all entries** when ≤20 total\n  - Shows **Top 10 + Bottom 10** when >20 total (maintains performance)\n- **Display Consistency**: Country analysis now matches bank analysis logic\n\n**Compatibility Enhancement (v2.3)**: The report generation is now more resilient to data gaps:\n- Sections won't display if there's no week data (avoiding empty/meaningless sections)\n- Historical data can still be shown even when today has no transactions\n- Prevents information overload while maintaining depth when needed\n\nFile v2.0.2:SKILL.md\n\n---\nname: antom_copilot\ndescription: \"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rate Expert\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"🤖\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Antom Copilot\n\nHello! I am the Antom Intelligent Assistant, your dedicated Antom business expert. I can help you handle all Antom-related queries and operations.\n\n## 🔧 Initial Setup\n\nBefore using Antom Copilot, you need to configure your merchant information:\n\n### Configuration File Location\n- **macOS/Linux**: `~/antom/conf.json`\n- **Windows**: `%USERPROFILE%\\\\antom\\\\conf.json`\n\n### Configuration Parameters\nThe configuration file needs to include the following parameters:\n\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required, for sending reports)\n\n### How to Obtain Configuration Information\n\nYou can visit the Antom Portal to get your `merchant_token`:\n\n🔗 **Antom Portal Address**: https://dashboard.antom.com/\n\nIn the portal, you can:\n1. Log in to your merchant account\n2. Ask antom copilot for the merchant token, for example: \"I need to get the merchant token for antom copilot skill\"\n3. If you have questions, you can contact Antom technical support\n\n💡 **Tip**: Keep your merchant_token secure and do not share it with others.\n\n## Sub-Expert Team\n\n### 📊 Payment Success Rate Expert\nFocused on payment success rate data processing and report generation:\n- Pull merchant payment success rate data (query_antom_psr_data.py)\n- Analyze data and generate PDF reports (analyse_and_gen_report.py)\n- Send payment success rate reports (send_psr_report.py)\n\n## Intent Recognition and Delegation Rules\n\nWhen you ask questions, I will analyze your intent and automatically delegate to the Payment Success Rate Expert for:\n- Pull payment success rate data\n- Generate payment success rate reports\n- Send payment success rate reports\n\n## Current Status\n\nThe Payment Success Rate Expert is ready:\n\n- ✅ Payment Success Rate Expert: payment_success_rate_expert helloworld!\n\nYou can now ask any payment success rate related questions!\n\nFile v2.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn75yzkd2rmc46xb28z9x65kd583m9xm\",\n  \"slug\": \"antom-copilot\",\n  \"version\": \"2.0.2\",\n  \"publishedAt\": 1776168083968\n}\n\nFile v2.0.2:payment_success_rate_expert/api_config.json\n\n{\n  \"bot_id\": \"2026032410103613803\",\n  \"biz_user_id\": \"antom open claw\",\n  \"token\": \"82af54a4-3e12-4c3b-90de-8314576626b7\",\n  \"api_endpoint\": \"https://ibotservice.alipayplus.com/almpapi/v1/message/chat\"\n}\n\nFile v2.0.2:payment_success_rate_expert/requirements.txt\n\n# Payment Success Rate Expert - Python Dependencies\n\n# 能力一：query_antom_psr_data.py\nrequests>=2.25.0\n\n# 能力二：analyse_and_gen_report.py\nmatplotlib>=3.3.0\nreportlab>=3.6.0\nnumpy>=1.19.0\n\n# 能力三：send_psr_report.py\n# 仅使用Python标准库，无需额外依赖\n\nArchive v2.0.0: 8 files, 33341 bytes\n\nFiles: payment_success_rate_expert/api_config.json (205b), payment_success_rate_expert/requirements.txt (280b), payment_success_rate_expert/scripts/analyse_and_gen_report.py (75936b), payment_success_rate_expert/scripts/query_antom_psr_data.py (13533b), payment_success_rate_expert/scripts/send_psr_report.py (14613b), payment_success_rate_expert/SKILL.md (15795b), SKILL.md (2489b), _meta.json (132b)\n\nFile v2.0.0:payment_success_rate_expert/SKILL.md\n\n---\nname: payment_success_rate_expert\ndescription: \"Antom Payment Success Rate Expert - Focused on payment success rate data pulling, analysis, report generation, and sending\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"📊\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Payment Success Rate Expert\nHello! I am the Antom Payment Success Rate Expert, focusing on payment success rate data processing and reporting.\n\n## 🔧 Prerequisites and Configuration Requirements\n\n### System Requirements\n- **Operating System**: macOS, Linux, or Windows\n- **Python Version**: Python 3.6+\n\n### Python Dependencies\n\n#### Capability One: query_antom_psr_data.py\n```bash\npip install requests\n```\n\n#### Capability Two: analyse_and_gen_report.py\n```bash\npip install matplotlib reportlab numpy\n```\n\n#### Capability Three: send_psr_report.py\n- Uses only Python standard library, no additional installation required\n\n### Configuration File Requirements\n\n**Configuration File Location**: `~/antom/conf.json`\n\n**Configuration File Format**:\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required for capability three)\n  - `smtp_server`: SMTP server address\n  - `smtp_port`: SMTP port number (usually 587)\n  - `username`: Sender email address\n  - `password`: Email password or app-specific password\n  - `use_tls`: Whether to use TLS encryption (default: true)\n\n### Directory Structure Requirements\n\nScripts will automatically create the following directory structure:\n```\n~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png\n```\n\n### API Endpoint\n\n**query_antom_psr_data.py** uses the following API endpoint:\n- **URL**: `https://ibotservice.alipayplus.com/almpapi/v1/message/chat`\n- **Method**: POST\n- **Authentication**: Uses merchant_id and merchant_token from configuration\n- **Request Format**: JSON\n- **Timeout Setting**: 30 seconds\n\n### Execution Order Dependencies\n\n**Normal Workflow**:\n1. **Step One**: Run `query_antom_psr_data.py` to pull data\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", use yesterday's data (since today's data is not yet generated)\n   - Output: `~/antom/success rate/{date}_raw_data.json` (7 files total)\n   \n2. **Step Two**: Run `analyse_and_gen_report.py` to generate report\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", analyze yesterday's data\n   - Dependency: Raw data files generated in step one\n   - Output: PDF report, executive summary, and charts\n   \n3. **Step Three**: Run `send_psr_report.py` to send report\n   - Input: Target date and recipient email\n   - **T+1 Logic**: Only when sending \"today's\" report, use yesterday's report\n   - Dependency: PDF report and executive summary generated in step two\n   - Output: Email sent\n\n**Note**: The three capabilities must be executed in sequence. Subsequent capabilities depend on the output files from the previous step.\n\n**Important Note - T+1 Data Generation Logic**:\nSince Antom data is generated on a T+1 basis (today's data can only be retrieved the next day), the script automatically handles this logic:\n- When user queries \"today\" (e.g., 20260325): Automatically uses yesterday's data (20260324)\n- When user queries a historical date (e.g., 20260320): Directly uses that date's data (20260320)\n- This is implemented through the internal `calculate_t1_date()` function\n- Users don't need to manually calculate dates, just provide the date you want to query\n\n## 📋 Capability List\n\n### Capability One: Pull Merchant Payment Success Rate Data\n- Pull payment success rate data from Antom server\n- Available script: `query_antom_psr_data.py`\n- Accepts parameter: Date range (format: YYYYMMDD~YYYYMMDD)\n- Prerequisite: Configuration file must contain valid merchant_token\n- Output file: `~/antom/success rate/{start_date}_raw_data.json`\n\n### Capability Two: Analyze Data and Generate PDF Report\n- Analyze merchant payment success rate data\n- Generate PDF analysis report with charts and executive summary\n- Available script: `analyse_and_gen_report.py`\n- Accepts parameter: Date (format: YYYYMMDD)\n- Prerequisites:\n  - Capability one has been executed and raw data files generated\n- Output files:\n  - PDF report: `~/antom/success rate/{date}/{date}-Payment-Success-Rate-Report.pdf`\n  - Executive summary: `~/antom/success rate/{date}/{date}_executive_summary.txt`\n  - Chart files: Stored in `~/antom/success rate/{date}/images/` directory\n\n### Capability Three: Send Payment Success Rate Report\n- Send the generated report to specified recipients\n- Available script: `send_psr_report.py`\n- Accepts parameters:\n  - Parameter one: Date (format: YYYYMMDD)\n  - Parameter two: Recipient email address\n- Prerequisites:\n  - Capability two has been executed and PDF report generated\n  - Configuration file must contain complete email_conf\n- Features:\n  - Automatically analyzes data and generates intelligent risk insights\n  - Supports attachment sending (PDF report)\n  - Includes executive summary in email body\n\n## 💡 Usage Examples\n\n### Complete Workflow Example\n\n**Example 1: Generate Today's Report (Using T+1 Logic)**\n```bash\n# Step One: Pull yesterday's data (automatically applies T+1 logic)\n# Assuming today is 20260325, will actually query 20260324 and the previous week\npython query_antom_psr_data.py --date 20260325\n\n# Step Two: Generate yesterday's report\npython analyse_and_gen_report.py --date 20260325\n\n# Step Three: Send report\npython send_psr_report.py --date 20260325 --recipient merchant@example.com\n```\n\n**Important Note**: \n- Users don't need to worry about T+1 details, just provide the date you want to report\n- Scripts automatically adjust the date (actual date = user specified date - 1 day)\n- Analysis reports and emails will display the user-specified target date\n\n**Simplified Command (Using Automation Script)**:\n```bash\n# One-click generate and send today's report (actually yesterday's data)\n./generate_today_report.sh merchant@example.com\n```\n\n## ⚠️ Common Issues\n\n1. **Configuration File Not Found Error**\n   - Ensure `~/antom/conf.json` has been created\n   - Check if configuration file format is correct (valid JSON)\n\n2. **Missing Dependency Package Error**\n   - Install corresponding Python packages based on capability requirements\n   - Use `pip install -r requirements.txt` for batch installation\n\n3. **File Not Found Error**\n   - Ensure scripts are executed in sequence\n   - Check if previous step completed successfully and generated output files\n\n4. **Email Sending Failure**\n   - Check if email_conf configuration is correct\n   - Confirm SMTP server address and port\n   - Verify email account and password (app-specific password recommended)\n\n## ✨ Enhanced Features (v2.0)\n\n### Automatic Data Recovery\n- **Smart Date Selection**: When target date has no data, automatically searches backwards up to 7 days to find the most recent valid data\n- **Graceful Degradation**: If no data is found for a specific payment method (Card or APM), the report will skip that section without failing\n- **Enhanced Validation**: Improved data validity checking that accepts either Card or APM data (instead of requiring both)\n\n### Robust Data Handling\n- **Missing Field Tolerance**: Automatically handles missing data fields (e.g., 3DS authentication data) without crashing\n- **Section-Based Generation**: Only generates report sections for which data is available\n- **Detailed Diagnostics**: Provides clear console output showing what data was found and what sections will be generated\n\n### Error Prevention\n- **Pre-Flight Checks**: Validates data existence and content before attempting report generation\n- **Informative Messages**: Clear error messages with actionable steps when issues are detected\n- **Graceful Failures**: Continues report generation even when some metrics are unavailable\n\n### Smart Display Logic (v2.1)\n- **Conditional Auth Display**: Only displays 3DS and Non-3DS authentication rates when the data actually exists, preventing misleading 0% displays\n- **Adaptive Executive Summary**: Executive summary dynamically adjusts to show only available authentication methods\n- **Data Quality Filtering**: Automatically filters out low-quality or unknown data types (e.g., 'unknown' authentication category) from analysis\n\n**Bug Fix (v2.1)**: Fixed issue where missing 3DS data would display as \"3DS Success Rate: 0.0%\" in analysis summaries, which was misleading. Now only displays rates for authentication methods that actually have data.\n\n### Chart Display Improvement (v2.1)\n- **Fixed Y-Axis Range**: Success rate charts now use a fixed 0-100% y-axis range, ensuring consistent visualization\n- **Clear Rate Indication**: Prevents misinterpretation when success rates are high (e.g., 83% no longer appears near the bottom of the chart)\n- **Better Visual Comparison**: Makes it easy to quickly assess performance at a glance\n\n**Bug Fix (v2.1)**: Fixed visual issue where success rate line charts could appear to show ~0% when the actual rate was high (e.g., 83%). This was caused by matplotlib's auto-scaling when all data points had similar values. Charts now explicitly use 0-100% y-axis range.\n\n### Enhanced Analysis Sections (v2.2)\n\n#### Dynamic Section Numbering\n- **Independent Counters**: Card and APM sections now use separate counters (`card_section_counter` and `apm_section_counter`)\n- **Automatic Numbering**: Sections are numbered dynamically based on available data, preventing numbering gaps when sections are skipped\n- **Clean Layout**: Ensures consistent numbering whether error data or optional sections are present\n\n**Feature Enhancement (v2.2)**: Implemented dynamic section numbering to handle conditional sections gracefully.\n\n#### Country & Bank Analysis Enhancement\n- **Top 10 by Improvement**: Displays top 10 countries and banks sorted by **success rate change** (today vs yesterday), highlighting biggest improvements\n- **Bottom 10 by Decline**: Shows bottom 10 countries and banks by success rate change, filtering by minimum transaction threshold (5 for banks, countries also have volume threshold)\n- **Action-Oriented Sorting**: Both top and bottom performers are ordered by change magnitude rather than volume, making it easy to identify what improved and what needs attention\n- **Smart Analysis Summary**: When bank count exceeds 20, analysis summary only examines Top 10 and Bottom 10 banks (filtering low performers), preventing information overload while maintaining actionable insights\n- **Comprehensive Coverage**: Country analysis now matches bank analysis in depth and presentation style\n\n**Feature Enhancement (v2.2)**: Country and bank analysis now focus on change detection rather than static rankings, providing more actionable insights for merchant optimization. Merchants can quickly identify:\n- Which countries/banks' performance is improving most (top 10 by change)\n- Which countries/banks' performance is declining (bottom 10 by change)\n\n#### APM Terminal Analysis Addition\n- **Terminal Type Breakdown**: New section analyzing APM performance by terminal type (e.g., APP, WEB, WAP)\n- **Volume and Rate Tracking**: Shows success rates, transaction volumes, and changes vs. previous periods\n- **Baseline Data Handling**: Missing yesterday/week data are handled intelligently (yesterday defaults to 0%, week avg equals today's rate when only one day available)\n- **Actionable Insights**: Automatically highlights underperforming terminal types with specific recommendations\n\n**Feature Addition (v2.2)**: Added comprehensive terminal analysis for APM payments, enabling merchants to identify and optimize performance issues across different channels (mobile app, web, mobile web).\n\n#### Historical Data Handling (v2.2)\n- **Yesterday Baseline**: When previous day data is unavailable, defaults to 0% (showing improvement from zero baseline)\n- **Week Average Logic**: When only one day of data exists, week average equals today's rate (resulting in zero weekly change, which is statistically correct)\n- **Clear Visual Indicators**: Table clearly shows when baseline data is missing vs. when actual historical data exists\n\n**Bug Fix (v2.2)**: Fixed terminal analysis to properly handle missing historical data. Yesterday now defaults to 0% and week average defaults to today's rate when only one day of data is available, preventing misleading change calculations.\n\n#### Executive Summary Risk Classification (v2.2)\n- **Volume Change Categorization**: Significant volume changes are now properly categorized based on direction\n  - **Increases >50%**: Classified as \"Significant volume increase\" in POSITIVE PERFORMANCE\n  - **Declines <-50%**: Classified as \"⚠️ Significant volume decline\" in KEY RISKS AND CONCERNS\n- **Authentication Performance Context**: Authentication method descriptions now include performance context\n  - **Success rate ≥80%**: \"strong performance\" or \"performing well\"\n  - **Success rate 70-80%**: \"acceptable\"\n  - **Success rate <70%**: \"⚠️ needs improvement\" (moved to WARNINGS)\n- **Accurate Risk Representation**: Volume declines and underperforming authentication methods are no longer misrepresented as positive observations\n\n**Bug Fix (v2.2)**: Fixed executive summary to properly categorize volume declines as risks and provide context for authentication performance ratings. Previously, both increases and declines >50% were placed in POSITIVE PERFORMANCE section, and authentication methods lacked performance context.\n\nThis ensures the report generation is resilient to data gaps and provides maximum value even when some data sources are unavailable.\n\n## 📞 Technical Support\n\nFor any issues, please contact Antom technical support or visit: https://global.alipay.com\n\n---\n\nThis skill is automatically called by the antom_copilot main skill based on user intent, primarily handling queries and operations related to payment success rate.\n\n### v2.3 (Current) - Enhanced Compatibility & Robustness\n- **Week Data Validation**: Sections automatically hide if week data is completely empty (no historical context)\n- **Zero-Fill for Missing Data**: When today has no transactions but historical data exists, displays 0 for today while preserving week average calculations\n- **Smart Display Logic**: \n  - Country/Bank analysis shows **all entries** when ≤20 total\n  - Shows **Top 10 + Bottom 10** when >20 total (maintains performance)\n- **Display Consistency**: Country analysis now matches bank analysis logic\n\n**Compatibility Enhancement (v2.3)**: The report generation is now more resilient to data gaps:\n- Sections won't display if there's no week data (avoiding empty/meaningless sections)\n- Historical data can still be shown even when today has no transactions\n- Prevents information overload while maintaining depth when needed\n\nFile v2.0.0:SKILL.md\n\n---\nname: antom_copilot\ndescription: \"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rate Expert\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"🤖\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Antom Copilot\n\nHello! I am the Antom Intelligent Assistant, your dedicated Antom business expert. I can help you handle all Antom-related queries and operations.\n\n## 🔧 Initial Setup\n\nBefore using Antom Copilot, you need to configure your merchant information:\n\n### Configuration File Location\n- **macOS/Linux**: `~/antom/conf.json`\n- **Windows**: `%USERPROFILE%\\\\antom\\\\conf.json`\n\n### Configuration Parameters\nThe configuration file needs to include the following parameters:\n\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required, for sending reports)\n\n### How to Obtain Configuration Information\n\nYou can visit the Antom Portal to get your `merchant_token`:\n\n🔗 **Antom Portal Address**: https://dashboard.antom.com/\n\nIn the portal, you can:\n1. Log in to your merchant account\n2. Ask antom copilot for the merchant token, for example: \"I need to get the merchant token for antom copilot skill\"\n3. If you have questions, you can contact Antom technical support\n\n💡 **Tip**: Keep your merchant_token secure and do not share it with others.\n\n## Sub-Expert Team\n\n### 📊 Payment Success Rate Expert\nFocused on payment success rate data processing and report generation:\n- Pull merchant payment success rate data (query_antom_psr_data.py)\n- Analyze data and generate PDF reports (analyse_and_gen_report.py)\n- Send payment success rate reports (send_psr_report.py)\n\n## Intent Recognition and Delegation Rules\n\nWhen you ask questions, I will analyze your intent and automatically delegate to the Payment Success Rate Expert for:\n- Pull payment success rate data\n- Generate payment success rate reports\n- Send payment success rate reports\n\n## Current Status\n\nThe Payment Success Rate Expert is ready:\n\n- ✅ Payment Success Rate Expert: payment_success_rate_expert helloworld!\n\nYou can now ask any payment success rate related questions!\n\nFile v2.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn75yzkd2rmc46xb28z9x65kd583m9xm\",\n  \"slug\": \"antom-copilot\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1774595966051\n}\n\nFile v2.0.0:payment_success_rate_expert/api_config.json\n\n{\n  \"bot_id\": \"2026032410103613803\",\n  \"biz_user_id\": \"antom open claw\",\n  \"token\": \"82af54a4-3e12-4c3b-90de-8314576626b7\",\n  \"api_endpoint\": \"https://ibotservice.alipayplus.com/almpapi/v1/message/chat\"\n}\n\nFile v2.0.0:payment_success_rate_expert/requirements.txt\n\n# Payment Success Rate Expert - Python Dependencies\n\n# 能力一：query_antom_psr_data.py\nrequests>=2.25.0\n\n# 能力二：analyse_and_gen_report.py\nmatplotlib>=3.3.0\nreportlab>=3.6.0\nnumpy>=1.19.0\n\n# 能力三：send_psr_report.py\n# 仅使用Python标准库，无需额外依赖\n\nArchive v1.0.0: 7 files, 32891 bytes\n\nFiles: payment_success_rate_expert/requirements.txt (280b), payment_success_rate_expert/scripts/analyse_and_gen_report.py (75936b), payment_success_rate_expert/scripts/query_antom_psr_data.py (12447b), payment_success_rate_expert/scripts/send_psr_report.py (14613b), payment_success_rate_expert/SKILL.md (15795b), SKILL.md (2486b), _meta.json (132b)\n\nFile v1.0.0:payment_success_rate_expert/SKILL.md\n\n---\nname: payment_success_rate_expert\ndescription: \"Antom Payment Success Rate Expert - Focused on payment success rate data pulling, analysis, report generation, and sending\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"📊\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Payment Success Rate Expert\nHello! I am the Antom Payment Success Rate Expert, focusing on payment success rate data processing and reporting.\n\n## 🔧 Prerequisites and Configuration Requirements\n\n### System Requirements\n- **Operating System**: macOS, Linux, or Windows\n- **Python Version**: Python 3.6+\n\n### Python Dependencies\n\n#### Capability One: query_antom_psr_data.py\n```bash\npip install requests\n```\n\n#### Capability Two: analyse_and_gen_report.py\n```bash\npip install matplotlib reportlab numpy\n```\n\n#### Capability Three: send_psr_report.py\n- Uses only Python standard library, no additional installation required\n\n### Configuration File Requirements\n\n**Configuration File Location**: `~/antom/conf.json`\n\n**Configuration File Format**:\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required for capability three)\n  - `smtp_server`: SMTP server address\n  - `smtp_port`: SMTP port number (usually 587)\n  - `username`: Sender email address\n  - `password`: Email password or app-specific password\n  - `use_tls`: Whether to use TLS encryption (default: true)\n\n### Directory Structure Requirements\n\nScripts will automatically create the following directory structure:\n```\n~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png\n```\n\n### API Endpoint\n\n**query_antom_psr_data.py** uses the following API endpoint:\n- **URL**: `https://ibotservice.alipayplus.com/almpapi/v1/message/chat`\n- **Method**: POST\n- **Authentication**: Uses merchant_id and merchant_token from configuration\n- **Request Format**: JSON\n- **Timeout Setting**: 30 seconds\n\n### Execution Order Dependencies\n\n**Normal Workflow**:\n1. **Step One**: Run `query_antom_psr_data.py` to pull data\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", use yesterday's data (since today's data is not yet generated)\n   - Output: `~/antom/success rate/{date}_raw_data.json` (7 files total)\n   \n2. **Step Two**: Run `analyse_and_gen_report.py` to generate report\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: Only when querying \"today\", analyze yesterday's data\n   - Dependency: Raw data files generated in step one\n   - Output: PDF report, executive summary, and charts\n   \n3. **Step Three**: Run `send_psr_report.py` to send report\n   - Input: Target date and recipient email\n   - **T+1 Logic**: Only when sending \"today's\" report, use yesterday's report\n   - Dependency: PDF report and executive summary generated in step two\n   - Output: Email sent\n\n**Note**: The three capabilities must be executed in sequence. Subsequent capabilities depend on the output files from the previous step.\n\n**Important Note - T+1 Data Generation Logic**:\nSince Antom data is generated on a T+1 basis (today's data can only be retrieved the next day), the script automatically handles this logic:\n- When user queries \"today\" (e.g., 20260325): Automatically uses yesterday's data (20260324)\n- When user queries a historical date (e.g., 20260320): Directly uses that date's data (20260320)\n- This is implemented through the internal `calculate_t1_date()` function\n- Users don't need to manually calculate dates, just provide the date you want to query\n\n## 📋 Capability List\n\n### Capability One: Pull Merchant Payment Success Rate Data\n- Pull payment success rate data from Antom server\n- Available script: `query_antom_psr_data.py`\n- Accepts parameter: Date range (format: YYYYMMDD~YYYYMMDD)\n- Prerequisite: Configuration file must contain valid merchant_token\n- Output file: `~/antom/success rate/{start_date}_raw_data.json`\n\n### Capability Two: Analyze Data and Generate PDF Report\n- Analyze merchant payment success rate data\n- Generate PDF analysis report with charts and executive summary\n- Available script: `analyse_and_gen_report.py`\n- Accepts parameter: Date (format: YYYYMMDD)\n- Prerequisites:\n  - Capability one has been executed and raw data files generated\n- Output files:\n  - PDF report: `~/antom/success rate/{date}/{date}-Payment-Success-Rate-Report.pdf`\n  - Executive summary: `~/antom/success rate/{date}/{date}_executive_summary.txt`\n  - Chart files: Stored in `~/antom/success rate/{date}/images/` directory\n\n### Capability Three: Send Payment Success Rate Report\n- Send the generated report to specified recipients\n- Available script: `send_psr_report.py`\n- Accepts parameters:\n  - Parameter one: Date (format: YYYYMMDD)\n  - Parameter two: Recipient email address\n- Prerequisites:\n  - Capability two has been executed and PDF report generated\n  - Configuration file must contain complete email_conf\n- Features:\n  - Automatically analyzes data and generates intelligent risk insights\n  - Supports attachment sending (PDF report)\n  - Includes executive summary in email body\n\n## 💡 Usage Examples\n\n### Complete Workflow Example\n\n**Example 1: Generate Today's Report (Using T+1 Logic)**\n```bash\n# Step One: Pull yesterday's data (automatically applies T+1 logic)\n# Assuming today is 20260325, will actually query 20260324 and the previous week\npython query_antom_psr_data.py --date 20260325\n\n# Step Two: Generate yesterday's report\npython analyse_and_gen_report.py --date 20260325\n\n# Step Three: Send report\npython send_psr_report.py --date 20260325 --recipient merchant@example.com\n```\n\n**Important Note**: \n- Users don't need to worry about T+1 details, just provide the date you want to report\n- Scripts automatically adjust the date (actual date = user specified date - 1 day)\n- Analysis reports and emails will display the user-specified target date\n\n**Simplified Command (Using Automation Script)**:\n```bash\n# One-click generate and send today's report (actually yesterday's data)\n./generate_today_report.sh merchant@example.com\n```\n\n## ⚠️ Common Issues\n\n1. **Configuration File Not Found Error**\n   - Ensure `~/antom/conf.json` has been created\n   - Check if configuration file format is correct (valid JSON)\n\n2. **Missing Dependency Package Error**\n   - Install corresponding Python packages based on capability requirements\n   - Use `pip install -r requirements.txt` for batch installation\n\n3. **File Not Found Error**\n   - Ensure scripts are executed in sequence\n   - Check if previous step completed successfully and generated output files\n\n4. **Email Sending Failure**\n   - Check if email_conf configuration is correct\n   - Confirm SMTP server address and port\n   - Verify email account and password (app-specific password recommended)\n\n## ✨ Enhanced Features (v2.0)\n\n### Automatic Data Recovery\n- **Smart Date Selection**: When target date has no data, automatically searches backwards up to 7 days to find the most recent valid data\n- **Graceful Degradation**: If no data is found for a specific payment method (Card or APM), the report will skip that section without failing\n- **Enhanced Validation**: Improved data validity checking that accepts either Card or APM data (instead of requiring both)\n\n### Robust Data Handling\n- **Missing Field Tolerance**: Automatically handles missing data fields (e.g., 3DS authentication data) without crashing\n- **Section-Based Generation**: Only generates report sections for which data is available\n- **Detailed Diagnostics**: Provides clear console output showing what data was found and what sections will be generated\n\n### Error Prevention\n- **Pre-Flight Checks**: Validates data existence and content before attempting report generation\n- **Informative Messages**: Clear error messages with actionable steps when issues are detected\n- **Graceful Failures**: Continues report generation even when some metrics are unavailable\n\n### Smart Display Logic (v2.1)\n- **Conditional Auth Display**: Only displays 3DS and Non-3DS authentication rates when the data actually exists, preventing misleading 0% displays\n- **Adaptive Executive Summary**: Executive summary dynamically adjusts to show only available authentication methods\n- **Data Quality Filtering**: Automatically filters out low-quality or unknown data types (e.g., 'unknown' authentication category) from analysis\n\n**Bug Fix (v2.1)**: Fixed issue where missing 3DS data would display as \"3DS Success Rate: 0.0%\" in analysis summaries, which was misleading. Now only displays rates for authentication methods that actually have data.\n\n### Chart Display Improvement (v2.1)\n- **Fixed Y-Axis Range**: Success rate charts now use a fixed 0-100% y-axis range, ensuring consistent visualization\n- **Clear Rate Indication**: Prevents misinterpretation when success rates are high (e.g., 83% no longer appears near the bottom of the chart)\n- **Better Visual Comparison**: Makes it easy to quickly assess performance at a glance\n\n**Bug Fix (v2.1)**: Fixed visual issue where success rate line charts could appear to show ~0% when the actual rate was high (e.g., 83%). This was caused by matplotlib's auto-scaling when all data points had similar values. Charts now explicitly use 0-100% y-axis range.\n\n### Enhanced Analysis Sections (v2.2)\n\n#### Dynamic Section Numbering\n- **Independent Counters**: Card and APM sections now use separate counters (`card_section_counter` and `apm_section_counter`)\n- **Automatic Numbering**: Sections are numbered dynamically based on available data, preventing numbering gaps when sections are skipped\n- **Clean Layout**: Ensures consistent numbering whether error data or optional sections are present\n\n**Feature Enhancement (v2.2)**: Implemented dynamic section numbering to handle conditional sections gracefully.\n\n#### Country & Bank Analysis Enhancement\n- **Top 10 by Improvement**: Displays top 10 countries and banks sorted by **success rate change** (today vs yesterday), highlighting biggest improvements\n- **Bottom 10 by Decline**: Shows bottom 10 countries and banks by success rate change, filtering by minimum transaction threshold (5 for banks, countries also have volume threshold)\n- **Action-Oriented Sorting**: Both top and bottom performers are ordered by change magnitude rather than volume, making it easy to identify what improved and what needs attention\n- **Smart Analysis Summary**: When bank count exceeds 20, analysis summary only examines Top 10 and Bottom 10 banks (filtering low performers), preventing information overload while maintaining actionable insights\n- **Comprehensive Coverage**: Country analysis now matches bank analysis in depth and presentation style\n\n**Feature Enhancement (v2.2)**: Country and bank analysis now focus on change detection rather than static rankings, providing more actionable insights for merchant optimization. Merchants can quickly identify:\n- Which countries/banks' performance is improving most (top 10 by change)\n- Which countries/banks' performance is declining (bottom 10 by change)\n\n#### APM Terminal Analysis Addition\n- **Terminal Type Breakdown**: New section analyzing APM performance by terminal type (e.g., APP, WEB, WAP)\n- **Volume and Rate Tracking**: Shows success rates, transaction volumes, and changes vs. previous periods\n- **Baseline Data Handling**: Missing yesterday/week data are handled intelligently (yesterday defaults to 0%, week avg equals today's rate when only one day available)\n- **Actionable Insights**: Automatically highlights underperforming terminal types with specific recommendations\n\n**Feature Addition (v2.2)**: Added comprehensive terminal analysis for APM payments, enabling merchants to identify and optimize performance issues across different channels (mobile app, web, mobile web).\n\n#### Historical Data Handling (v2.2)\n- **Yesterday Baseline**: When previous day data is unavailable, defaults to 0% (showing improvement from zero baseline)\n- **Week Average Logic**: When only one day of data exists, week average equals today's rate (resulting in zero weekly change, which is statistically correct)\n- **Clear Visual Indicators**: Table clearly shows when baseline data is missing vs. when actual historical data exists\n\n**Bug Fix (v2.2)**: Fixed terminal analysis to properly handle missing historical data. Yesterday now defaults to 0% and week average defaults to today's rate when only one day of data is available, preventing misleading change calculations.\n\n#### Executive Summary Risk Classification (v2.2)\n- **Volume Change Categorization**: Significant volume changes are now properly categorized based on direction\n  - **Increases >50%**: Classified as \"Significant volume increase\" in POSITIVE PERFORMANCE\n  - **Declines <-50%**: Classified as \"⚠️ Significant volume decline\" in KEY RISKS AND CONCERNS\n- **Authentication Performance Context**: Authentication method descriptions now include performance context\n  - **Success rate ≥80%**: \"strong performance\" or \"performing well\"\n  - **Success rate 70-80%**: \"acceptable\"\n  - **Success rate <70%**: \"⚠️ needs improvement\" (moved to WARNINGS)\n- **Accurate Risk Representation**: Volume declines and underperforming authentication methods are no longer misrepresented as positive observations\n\n**Bug Fix (v2.2)**: Fixed executive summary to properly categorize volume declines as risks and provide context for authentication performance ratings. Previously, both increases and declines >50% were placed in POSITIVE PERFORMANCE section, and authentication methods lacked performance context.\n\nThis ensures the report generation is resilient to data gaps and provides maximum value even when some data sources are unavailable.\n\n## 📞 Technical Support\n\nFor any issues, please contact Antom technical support or visit: https://global.alipay.com\n\n---\n\nThis skill is automatically called by the antom_copilot main skill based on user intent, primarily handling queries and operations related to payment success rate.\n\n### v2.3 (Current) - Enhanced Compatibility & Robustness\n- **Week Data Validation**: Sections automatically hide if week data is completely empty (no historical context)\n- **Zero-Fill for Missing Data**: When today has no transactions but historical data exists, displays 0 for today while preserving week average calculations\n- **Smart Display Logic**: \n  - Country/Bank analysis shows **all entries** when ≤20 total\n  - Shows **Top 10 + Bottom 10** when >20 total (maintains performance)\n- **Display Consistency**: Country analysis now matches bank analysis logic\n\n**Compatibility Enhancement (v2.3)**: The report generation is now more resilient to data gaps:\n- Sections won't display if there's no week data (avoiding empty/meaningless sections)\n- Historical data can still be shown even when today has no transactions\n- Prevents information overload while maintaining depth when needed\n\nFile v1.0.0:SKILL.md\n\n---\nname: antom_copilot\ndescription: \"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rate Expert\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"🤖\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Antom Copilot\n\nHello! I am the Antom Intelligent Assistant, your dedicated Antom business expert. I can help you handle all Antom-related queries and operations.\n\n## 🔧 Initial Setup\n\nBefore using Antom Copilot, you need to configure your merchant information:\n\n### Configuration File Location\n- **macOS/Linux**: `~/antom/conf.json`\n- **Windows**: `%USERPROFILE%\\\\antom\\\\conf.json`\n\n### Configuration Parameters\nThe configuration file needs to include the following parameters:\n\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required, for sending reports)\n\n### How to Obtain Configuration Information\n\nYou can visit the Antom Portal to get your `merchant_token`:\n\n🔗 **Antom Portal Address**: https://global.alipay.com\n\nIn the portal, you can:\n1. Log in to your merchant account\n2. Ask antom copilot for the merchant token, for example: \"I need to get the merchant token for antom copilot skill\"\n3. If you have questions, you can contact Antom technical support\n\n💡 **Tip**: Keep your merchant_token secure and do not share it with others.\n\n## Sub-Expert Team\n\n### 📊 Payment Success Rate Expert\nFocused on payment success rate data processing and report generation:\n- Pull merchant payment success rate data (query_antom_psr_data.py)\n- Analyze data and generate PDF reports (analyse_and_gen_report.py)\n- Send payment success rate reports (send_psr_report.py)\n\n## Intent Recognition and Delegation Rules\n\nWhen you ask questions, I will analyze your intent and automatically delegate to the Payment Success Rate Expert for:\n- Pull payment success rate data\n- Generate payment success rate reports\n- Send payment success rate reports\n\n## Current Status\n\nThe Payment Success Rate Expert is ready:\n\n- ✅ Payment Success Rate Expert: payment_success_rate_expert helloworld!\n\nYou can now ask any payment success rate related questions!\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn75yzkd2rmc46xb28z9x65kd583m9xm\",\n  \"slug\": \"antom-copilot\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1774525153283\n}\n\nFile v1.0.0:payment_success_rate_expert/requirements.txt\n\n# Payment Success Rate Expert - Python Dependencies\n\n# 能力一：query_antom_psr_data.py\nrequests>=2.25.0\n\n# 能力二：analyse_and_gen_report.py\nmatplotlib>=3.3.0\nreportlab>=3.6.0\nnumpy>=1.19.0\n\n# 能力三：send_psr_report.py\n# 仅使用Python标准库，无需额外依赖","readmeExcerpt":"Skill: Antom Copilot Owner: jewellzhu Summary: Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rat... Tags: latest:2.0.6 Version history: v2.0.6 | 2026-04-14T12:07:45.649Z | user Version 2.0.6 of antom-copilot - No file changes detected for this release. - All features and documentation remain unchanged. v2.0.2 |","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"pip install requests"},{"language":"bash","snippet":"pip install matplotlib reportlab numpy"},{"language":"json","snippet":"{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}"},{"language":"text","snippet":"~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png"},{"language":"bash","snippet":"# Step One: Pull yesterday's data (automatically applies T+1 logic)\n# Assuming today is 20260325, will actually query 20260324 and the previous week\npython query_antom_psr_data.py --date 20260325\n\n# Step Two: Generate yesterday's report\npython analyse_and_gen_report.py --date 20260325\n\n# Step Three: Send report\npython send_psr_report.py --date 20260325 --recipient merchant@example.com"},{"language":"bash","snippet":"# One-click generate and send today's report (actually yesterday's data)\n./generate_today_report.sh merchant@example.com"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"payment_success_rate_expert/SKILL.md","content":"---\nname: payment_success_rate_expert\ndescription: \"Antom Payment Success Rate Expert - Focused on payment success rate data pulling, analysis, report generation, and sending\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"📊\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Payment Success Rate Expert\nHello! I am the Antom Payment Success Rate Expert, focusing on payment success rate data processing and reporting.\n\n## 🔧 Prerequisites and Configuration Requirements\n\n### System Requirements\n- **Operating System**: macOS, Linux, or Windows\n- **Python Version**: Python 3.6+\n\n### Python Dependencies\n\n#### Capability One: query_antom_psr_data.py\n```bash\npip install requests\n```\n\n#### Capability Two: analyse_and_gen_report.py\n```bash\npip install matplotlib reportlab numpy\n```\n\n#### Capability Three: send_psr_report.py\n- Uses only Python standard library, no additional installation required\n\n### Configuration File Requirements\n\n**Configuration File Location**: `~/antom/conf.json`\n\n**Configuration File Format**:\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required for capability three)\n  - `smtp_server`: SMTP server address\n  - `smtp_port`: SMTP port number (usually 587)\n  - `username`: Sender email address\n  - `password`: Email password or app-specific password\n  - `use_tls`: Whether to use TLS encryption (default: true)\n\n### Directory Structure Requirements\n\nScripts will automatically create the following directory structure:\n```\n~/antom/\n├── conf.json                # Configuration file\n└── success rate/            # Data storage directory\n    ├── 20260323_raw_data.json              # Raw data file (output of capability one)\n    └── 20260323/                           # Report directory (created by capability two)\n        ├── 20260323-Payment-Success-Rate-Report-{merchant_id}.pdf  # PDF report (output of capability two)\n        ├── 20260323_executive_summary.txt   # Executive summary (output of capability two)\n        └── images/                          # Charts directory (created by capability two)\n            ├── card_overall.png\n            ├── card_error_pie.png\n            ├── apm_overall.png\n            └── apm_error_pie.png\n```\n\n### API Endpoint\n\n**query_antom_psr_data.py** uses the following API endpoint:\n- **URL**: `https://ibotservice.alipayplus.com/almpapi/v1/message/chat`\n- **Method**: POST\n- **Authentication**: Uses merchant_id and merchant_token from configuration\n- **Request Format**: JSON\n- **Timeout Setting**: 30 seconds\n\n### Execution Order Dependencies\n\n**Normal Workflow**:\n1. **Step One**: Run `query_antom_psr_data.py` to pull data\n   - Input: Target date (e.g., 20260325)\n   - **T+1 Logic**: On"},{"path":"SKILL.md","content":"---\nname: antom_copilot\ndescription: \"Antom Intelligent Assistant - Central control for all Antom-related requirements, intelligently analyzes user intent and delegates to the Payment Success Rate Expert\"\nmetadata:\n  {\n    \"copaw\":\n      {\n        \"emoji\": \"🤖\",\n        \"requires\": {}\n      }\n  }\n---\n\n# Antom Copilot\n\nHello! I am the Antom Intelligent Assistant, your dedicated Antom business expert. I can help you handle all Antom-related queries and operations.\n\n## 🔧 Initial Setup\n\nBefore using Antom Copilot, you need to configure your merchant information:\n\n### Configuration File Location\n- **macOS/Linux**: `~/antom/conf.json`\n- **Windows**: `%USERPROFILE%\\\\antom\\\\conf.json`\n\n### Configuration Parameters\nThe configuration file needs to include the following parameters:\n\n```json\n{\n  \"merchant_token\": \"Your Merchant Token\",\n  \"email_conf\": {\n    \"smtp_server\": \"smtp.gmail.com\",\n    \"smtp_port\": 587,\n    \"username\": \"your-email@gmail.com\",\n    \"password\": \"your-app-password\",\n    \"use_tls\": true\n  }\n}\n```\n\n**Configuration Parameter Description**:\n- `merchant_token`: Merchant Token (required, for API authentication)\n- `email_conf`: Email configuration (required, for sending reports)\n\n### How to Obtain Configuration Information\n\nYou can visit the Antom Portal to get your `merchant_token`:\n\n🔗 **Antom Portal Address**: https://dashboard.antom.com/\n\nIn the portal, you can:\n1. Log in to your merchant account\n2. Ask antom copilot for the merchant token, for example: \"I need to get the merchant token for antom copilot skill\"\n3. If you have questions, you can contact Antom technical support\n\n💡 **Tip**: Keep your merchant_token secure and do not share it with others.\n\n## Sub-Expert Team\n\n### 📊 Payment Success Rate Expert\nFocused on payment success rate data processing and report generation:\n- Pull merchant payment success rate data (query_antom_psr_data.py)\n- Analyze data and generate PDF reports (analyse_and_gen_report.py)\n- Send payment success rate reports (send_psr_report.py)\n\n## Intent Recognition and Delegation Rules\n\nWhen you ask questions, I will analyze your intent and automatically delegate to the Payment Success Rate Expert for:\n- Pull payment success rate data\n- Generate payment success rate reports\n- Send payment success rate reports\n\n## Current Status\n\nThe Payment Success Rate Expert is ready:\n\n- ✅ Payment Success Rate Expert: payment_success_rate_expert helloworld!\n\nYou can now ask any payment success rate related questions!"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn75yzkd2rmc46xb28z9x65kd583m9xm\",\n  \"slug\": \"antom-copilot\",\n  \"version\": \"2.0.6\",\n  \"publishedAt\": 1776168465649\n}"},{"path":"skill-card.md","content":"## Description:\n\nAntom Copilot is an Antom intelligent assistant that analyzes user intent and delegates payment success rate data retrieval, analysis, report generation, and report sending to a payment success rate expert.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[jewellzhu](https://clawhub.ai/user/jewellzhu)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal merchants and operators use this skill to retrieve Antom payment success rate data, generate PDF and text reports with charts and executive summaries, and send those reports to selected recipients by email.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The workflow stores and uses merchant and SMTP credentials.\n\nMitigation: Use scoped and revocable merchant tokens, an app-specific SMTP password, restrictive permissions on ~/antom/conf.json, and TLS-only SMTP.\n\nRisk: Payment success rate reports can be sent by email to user-supplied recipients.\n\nMitigation: Review recipient addresses and report contents before sending reports.\n\nRisk: The merchant token is sent to an API host that differs from the endpoint named in the documentation.\n\nMitigation: Install and run the skill only after verifying that the actual Antom API host used by the code is trusted for the merchant account.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/jewellzhu/skills/antom-copilot)\n- [Antom Portal](https://dashboard.antom.com/)\n- [Documented Antom API endpoint](https://ibotservice.alipayplus.com/almpapi/v1/message/chat)\n- [Antom Copilot API host used by query script](https://antomaplusai.antom.com/antomcopilotai/mcp/api/v1/antomcopilot/RECALL_data)\n- [Antom support](https://global.alipay.com)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, files, guidance]\n\n**Output Format:** [Markdown guidance with shell commands; generated JSON data, PDF reports, text executive summaries, chart images, and email messages.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires a local Antom configuration file with merchant and SMTP credentials; report generation depends on date input and prior workflow steps.]\n\n## Skill Version(s):\n\n2.0.6 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."},{"path":"payment_success_rate_expert/api_config.json","content":"{\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1328,"uniquenessScore":42,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-12T01:00:22.643Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-14T15:21:35.981Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}