sophhub 0.4.19 → 0.4.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +199 -187
- package/agents/ai-cs-admin/.config.json +51 -51
- package/agents/ai-cs-admin/AGENTS.md +293 -293
- package/agents/ai-cs-admin/HEARTBEAT.md +18 -18
- package/agents/ai-cs-qa/.config.json +47 -47
- package/agents/ai-cs-qa/BOOTSTRAP.md +22 -22
- package/agents/ai-cs-qa/scripts/setup_links.sh +39 -39
- package/agents/beauty/.config.json +17 -17
- package/agents/beauty/AGENTS.md +234 -234
- package/agents/beauty/BOOTSTRAP.md +55 -55
- package/agents/beauty/HEARTBEAT.md +5 -5
- package/agents/beauty/IDENTITY.md +5 -5
- package/agents/beauty/MEMORY.md +44 -44
- package/agents/beauty/SOUL.md +64 -64
- package/agents/beauty/TOOLS.md +160 -160
- package/agents/beauty/USER.md +114 -114
- package/agents/intern-admin/.config.json +60 -60
- package/agents/intern-admin/AGENTS.md +267 -267
- package/agents/intern-admin/BOOTSTRAP.md +21 -21
- package/agents/intern-admin/HEARTBEAT.md +3 -3
- package/agents/intern-admin/IDENTITY.md +6 -6
- package/agents/intern-admin/MEMORY.md +21 -21
- package/agents/intern-admin/SOUL.md +23 -23
- package/agents/intern-admin/TOOLS.md +93 -93
- package/agents/intern-admin/USER.md +16 -16
- package/agents/intern-admin/scripts/init_workspace.sh +27 -27
- package/agents/intern-qa/.config.json +46 -46
- package/agents/intern-qa/AGENTS.md +303 -303
- package/agents/intern-qa/BOOTSTRAP.md +16 -16
- package/agents/intern-qa/HEARTBEAT.md +3 -3
- package/agents/intern-qa/IDENTITY.md +6 -6
- package/agents/intern-qa/MEMORY.md +22 -22
- package/agents/intern-qa/SOUL.md +24 -24
- package/agents/intern-qa/TOOLS.md +24 -24
- package/agents/intern-qa/USER.md +27 -27
- package/agents/intern-qa/scripts/setup_links.sh +54 -54
- package/agents/parent-toddler/.config.json +37 -37
- package/agents/parent-toddler/AGENTS.md +51 -51
- package/agents/parent-toddler/BOOTSTRAP.md +55 -55
- package/agents/parent-toddler/HEARTBEAT.md +5 -5
- package/agents/parent-toddler/IDENTITY.md +5 -5
- package/agents/parent-toddler/MEMORY.md +22 -22
- package/agents/parent-toddler/SOUL.md +35 -35
- package/agents/parent-toddler/TOOLS.md +31 -31
- package/agents/parent-toddler/USER.md +44 -44
- package/agents/vip-admin/.config.json +51 -51
- package/agents/vip-admin/AGENTS.md +314 -314
- package/agents/vip-admin/BOOTSTRAP.md +21 -21
- package/agents/vip-admin/HEARTBEAT.md +19 -19
- package/agents/vip-admin/IDENTITY.md +6 -6
- package/agents/vip-admin/MEMORY.md +30 -30
- package/agents/vip-admin/SOUL.md +25 -25
- package/agents/vip-admin/TOOLS.md +108 -108
- package/agents/vip-admin/USER.md +31 -31
- package/agents/vip-qa/.config.json +58 -58
- package/agents/vip-qa/AGENTS.md +319 -319
- package/agents/vip-qa/BOOTSTRAP.md +73 -73
- package/agents/vip-qa/HEARTBEAT.md +23 -23
- package/agents/vip-qa/IDENTITY.md +7 -7
- package/agents/vip-qa/MEMORY.md +23 -23
- package/agents/vip-qa/SOUL.md +34 -34
- package/agents/vip-qa/TOOLS.md +41 -41
- package/agents/vip-qa/USER.md +16 -16
- package/agents/vip-qa/scripts/setup_links.sh +39 -39
- package/bin/sophhub.js +25 -25
- package/package.json +35 -33
- package/skills/agent-install/skill.json +34 -34
- package/skills/agent-install/src/SKILL.md +240 -240
- package/skills/agent-install/src/pyproject.toml +6 -6
- package/skills/agent-install/src/scripts/backup_agent.py +120 -120
- package/skills/agent-install/src/scripts/check_installed.py +479 -479
- package/skills/agent-install/src/scripts/common.py +568 -568
- package/skills/agent-install/src/scripts/copy_agent_files.py +59 -59
- package/skills/agent-install/src/scripts/list_agents.py +285 -285
- package/skills/agent-install/src/scripts/resolve_install_params.py +90 -90
- package/skills/agent-install/src/scripts/update_agent_md.py +76 -76
- package/skills/agent-install/src/scripts/update_openclaw.py +193 -193
- package/skills/agent-install/src/scripts/verify_download.py +148 -148
- package/skills/aippt/skill.json +20 -20
- package/skills/aippt/src/SKILL.md +235 -235
- package/skills/aippt/src/pyproject.toml +8 -8
- package/skills/aippt/src/scripts/auth.py +122 -122
- package/skills/aippt/src/scripts/ppt.py +361 -361
- package/skills/aippt/src/scripts/provider_docmee.py +299 -299
- package/skills/beauty-salon-inventory/skill.json +16 -16
- package/skills/beauty-salon-inventory/src/SKILL.md +69 -69
- package/skills/beauty-salon-inventory/src/scripts/init_salon_inventory.py +39 -39
- package/skills/beauty-salon-inventory/src/scripts/init_salon_inventory.sh +4 -4
- package/skills/beauty-salon-inventory/src/scripts/salon_inventory_cli.py +244 -244
- package/skills/beauty-salon-marketing/skill.json +10 -10
- package/skills/beauty-salon-marketing/src/SKILL.md +36 -36
- package/skills/beauty-salon-marketing/src/playbooks/beauty-salon-festival.md +19 -19
- package/skills/beauty-salon-marketing/src/playbooks/beauty-salon-segment.md +18 -18
- package/skills/beauty-salon-marketing/src/scripts/beauty_marketing_cli.py +99 -99
- package/skills/beauty-salon-marketing/src/scripts/member_segment.py +114 -114
- package/skills/beauty-salon-member-appointment/skill.json +10 -10
- package/skills/beauty-salon-member-appointment/src/SKILL.md +36 -36
- package/skills/beauty-salon-member-appointment/src/pyproject.toml +9 -9
- package/skills/beauty-salon-member-appointment/src/scripts/run_e2e_smoke.py +160 -160
- package/skills/beauty-salon-member-appointment/src/src/member_appt_cli/__init__.py +1 -1
- package/skills/beauty-salon-member-appointment/src/src/member_appt_cli/__main__.py +4 -4
- package/skills/beauty-salon-member-appointment/src/src/member_appt_cli/cli.py +921 -921
- package/skills/beauty-salon-member-appointment/src/src/member_appt_cli/db.py +30 -30
- package/skills/beauty-salon-membership/skill.json +20 -20
- package/skills/beauty-salon-membership/src/SKILL.md +67 -67
- package/skills/beauty-salon-product-service/skill.json +12 -12
- package/skills/beauty-salon-product-service/src/SKILL.md +42 -42
- package/skills/beauty-salon-product-service/src/pyproject.toml +9 -9
- package/skills/beauty-salon-product-service/src/src/product_service_cli/__init__.py +1 -1
- package/skills/beauty-salon-product-service/src/src/product_service_cli/__main__.py +4 -4
- package/skills/beauty-salon-product-service/src/src/product_service_cli/cli.py +329 -329
- package/skills/beauty-salon-product-service/src/src/product_service_cli/db.py +29 -29
- package/skills/beauty-salon-staff/skill.json +10 -10
- package/skills/beauty-salon-staff/src/SKILL.md +37 -37
- package/skills/beauty-salon-staff/src/pyproject.toml +9 -9
- package/skills/beauty-salon-staff/src/src/staff_cli/__init__.py +1 -1
- package/skills/beauty-salon-staff/src/src/staff_cli/__main__.py +4 -4
- package/skills/beauty-salon-staff/src/src/staff_cli/cli.py +479 -479
- package/skills/beauty-salon-staff/src/src/staff_cli/db.py +28 -28
- package/skills/beauty-salon-suite/skill.json +13 -13
- package/skills/beauty-salon-suite/src/SKILL.md +18 -18
- package/skills/beauty-salon-suite/src/beauty_db/__init__.py +2 -2
- package/skills/beauty-salon-suite/src/beauty_db/db.py +249 -249
- package/skills/beauty-salon-traffic/skill.json +20 -20
- package/skills/beauty-salon-traffic/src/SKILL.md +84 -84
- package/skills/bing-image-search/skill.json +20 -20
- package/skills/bing-image-search/src/SKILL.md +105 -105
- package/skills/bot-api-status/skill.json +44 -44
- package/skills/bot-api-status/src/SKILL.md +99 -99
- package/skills/bot-api-status/src/pyproject.toml +5 -5
- package/skills/bot-api-status/src/scripts/secret.py +496 -496
- package/skills/bot-secret/skill.json +35 -35
- package/skills/bot-secret/src/SKILL.md +51 -51
- package/skills/bot-secret/src/pyproject.toml +5 -5
- package/skills/bot-secret/src/scripts/secret.py +120 -120
- package/skills/cake-flower-holiday-campaign/skill.json +20 -20
- package/skills/cake-flower-holiday-campaign/src/SKILL.md +68 -68
- package/skills/cake-flower-order-sop/skill.json +20 -20
- package/skills/cake-flower-order-sop/src/SKILL.md +65 -65
- package/skills/claw-agent-get-send/skill.json +32 -32
- package/skills/claw-agent-get-send/src/SKILL.md +43 -43
- package/skills/claw-agent-get-send/src/pyproject.toml +5 -5
- package/skills/claw-agent-get-send/src/scripts/appia_claw.py +379 -379
- package/skills/compact-context/skill.json +20 -20
- package/skills/compact-context/src/SKILL.md +133 -133
- package/skills/compact-context/src/scripts/check.sh +381 -381
- package/skills/compact-context/src/scripts/set-keep-recent.mjs +1337 -1337
- package/skills/compact-context/src/scripts/setup.sh +96 -96
- package/skills/consensus/skill.json +20 -20
- package/skills/consensus/src/SKILL.md +93 -93
- package/skills/deepwiki/skill.json +20 -20
- package/skills/deepwiki/src/SKILL.md +45 -45
- package/skills/deepwiki/src/_meta.json +5 -5
- package/skills/deepwiki/src/scripts/deepwiki.js +135 -135
- package/skills/didi-ride/skill.json +20 -20
- package/skills/didi-ride/src/SKILL.md +309 -309
- package/skills/didi-ride/src/_meta.json +5 -5
- package/skills/didi-ride/src/assets/PREFERENCE.md +58 -58
- package/skills/didi-ride/src/package.json +15 -15
- package/skills/didi-ride/src/references/api_references.md +171 -171
- package/skills/didi-ride/src/references/error_handling.md +68 -68
- package/skills/didi-ride/src/references/setup.md +73 -73
- package/skills/didi-ride/src/references/workflow.md +150 -150
- package/skills/feishu-bitable/skill.json +20 -20
- package/skills/feishu-bitable/src/CHECKLIST.md +149 -149
- package/skills/feishu-bitable/src/README.md +177 -177
- package/skills/feishu-bitable/src/SKILL.md +113 -113
- package/skills/feishu-bitable/src/_meta.json +5 -5
- package/skills/feishu-bitable/src/api.js +380 -380
- package/skills/feishu-bitable/src/bin/cli.js +283 -283
- package/skills/feishu-bitable/src/description.md +142 -142
- package/skills/feishu-bitable/src/examples/create-records.json +51 -51
- package/skills/feishu-bitable/src/examples/create-table.json +63 -63
- package/skills/feishu-bitable/src/package-lock.json +324 -324
- package/skills/feishu-bitable/src/package.json +32 -32
- package/skills/feishu-bitable/src/publish-config.json +13 -13
- package/skills/feishu-bitable/src/test-simple.js +60 -60
- package/skills/feishu-bitable/src/utils.js +260 -260
- package/skills/feishu-notes-assistant-universal/skill.json +20 -20
- package/skills/feishu-notes-assistant-universal/src/README.md +55 -55
- package/skills/feishu-notes-assistant-universal/src/SKILL.md +159 -159
- package/skills/feishu-notes-assistant-universal/src/scripts/_resolve_lark_cli.py +58 -58
- package/skills/feishu-notes-assistant-universal/src/scripts/openclaw_meeting_minutes.py +462 -462
- package/skills/feishu-notes-assistant-universal/src/scripts/openclaw_notes_crud.py +547 -547
- package/skills/feishu-notes-assistant-universal/src/scripts/openclaw_notes_crud_test.py +181 -181
- package/skills/feishu-notes-assistant-universal/src/scripts/run_meeting_minutes.py +80 -80
- package/skills/feishu-notes-assistant-universal/src/scripts/run_meeting_minutes.sh +5 -5
- package/skills/feishu-notes-assistant-universal/src/scripts/run_note_crud.py +32 -32
- package/skills/feishu-notes-assistant-universal/src/scripts/run_note_crud.sh +5 -5
- package/skills/flight-booking/skill.json +36 -36
- package/skills/flight-booking/src/SKILL.md +288 -288
- package/skills/flight-booking/src/scripts/flight_booking.py +1237 -1237
- package/skills/flyai/skill.json +20 -20
- package/skills/flyai/src/SKILL.md +119 -119
- package/skills/flyai/src/references/fliggy-fast-search.md +53 -53
- package/skills/flyai/src/references/search-flight.md +89 -89
- package/skills/flyai/src/references/search-hotels.md +57 -57
- package/skills/flyai/src/references/search-poi.md +48 -48
- package/skills/google-maps/skill.json +20 -20
- package/skills/google-maps/src/SKILL.md +237 -237
- package/skills/google-maps/src/_meta.json +5 -5
- package/skills/google-maps/src/lib/map_helper.py +912 -912
- package/skills/image-classify/skill.json +42 -42
- package/skills/image-classify/src/SKILL.md +368 -368
- package/skills/image-classify/src/references/config.json +4 -4
- package/skills/image-classify/src/scripts/face_search.py +1276 -1276
- package/skills/image-description/skill.json +34 -34
- package/skills/image-description/src/SKILL.md +33 -33
- package/skills/image-description/src/pyproject.toml +8 -8
- package/skills/image-description/src/scripts/ana_image.py +112 -112
- package/skills/image-identify-world/skill.json +20 -20
- package/skills/image-identify-world/src/SKILL.md +40 -40
- package/skills/image-identify-world/src/pyproject.toml +8 -8
- package/skills/image-identify-world/src/scripts/identify_world.py +115 -115
- package/skills/insurance-policy-review/skill.json +27 -27
- package/skills/insurance-policy-review/src/SKILL.md +75 -75
- package/skills/insurance-sales-playbook/skill.json +20 -20
- package/skills/insurance-sales-playbook/src/SKILL.md +58 -58
- package/skills/inventory-management/skill.json +20 -20
- package/skills/inventory-management/src/SKILL.md +241 -241
- package/skills/inventory-management/src/scripts/inventory.py +1844 -1844
- package/skills/large-task-router/skill.json +20 -20
- package/skills/large-task-router/src/SKILL.md +79 -79
- package/skills/large-task-router/src/templates/plan.md +74 -74
- package/skills/lawding-contract-review/skill.json +20 -20
- package/skills/lawding-contract-review/src/SKILL.md +284 -284
- package/skills/lawding-contract-review/src/references/legal-language-library.md +1385 -1385
- package/skills/lawding-contract-review/src/scripts/build_reminders.py +471 -471
- package/skills/lawding-contract-review/src/scripts/register_contract_cron.py +457 -457
- package/skills/md2pdf-converter/skill.json +20 -20
- package/skills/md2pdf-converter/src/SKILL.md +244 -244
- package/skills/md2pdf-converter/src/_meta.json +5 -5
- package/skills/md2pdf-converter/src/scripts/generate_emoji_mapping.py +74 -74
- package/skills/md2pdf-converter/src/scripts/md2pdf-local.sh +291 -291
- package/skills/notes-hub-assistant/skill.json +20 -20
- package/skills/notes-hub-assistant/src/SKILL.md +233 -233
- package/skills/notes-hub-assistant/src/scripts/_resolve_lark_cli.py +48 -48
- package/skills/notes-hub-assistant/src/scripts/openclaw_meeting_minutes.py +473 -473
- package/skills/notes-hub-assistant/src/scripts/openclaw_notes_crud.py +596 -596
- package/skills/notes-hub-assistant/src/scripts/openclaw_wolai_notes_crud.py +364 -364
- package/skills/notes-hub-assistant/src/scripts/run_meeting_minutes.py +79 -79
- package/skills/notes-hub-assistant/src/scripts/run_note_crud.py +37 -37
- package/skills/notes-hub-assistant/src/scripts/run_notionbot.py +36 -36
- package/skills/notes-hub-assistant/src/scripts/run_wolai_note_crud.py +27 -27
- package/skills/schedule-reminder/skill.json +20 -20
- package/skills/schedule-reminder/src/SKILL.md +619 -619
- package/skills/schedule-reminder/src/schedule_template.md +68 -68
- package/skills/schedule-reminder/src/scripts/append_event.py +204 -204
- package/skills/schedule-reminder/src/scripts/create_reminders.sh +163 -163
- package/skills/schedule-reminder/src/scripts/daily_activate.sh +175 -175
- package/skills/schedule-reminder/src/scripts/parse_schedule.py +704 -704
- package/skills/schedule-reminder/src/scripts/setup.sh +242 -242
- package/skills/schedule-reminder/src//347/224/250/346/210/267/346/214/207/345/215/227.md +311 -311
- package/skills/sessions-analysis/skill.json +34 -34
- package/skills/sessions-analysis/src/SKILL.md +81 -81
- package/skills/sessions-analysis/src/pyproject.toml +5 -5
- package/skills/sessions-analysis/src/scripts/ana_logs.py +205 -205
- package/skills/share-skill/skill.json +20 -20
- package/skills/share-skill/src/SKILL.md +261 -261
- package/skills/share-skill/src/scripts/share_skill_to_friend.py +1031 -1031
- package/skills/skill-creator/skill.json +20 -20
- package/skills/skill-creator/src/SKILL.md +370 -370
- package/skills/skill-creator/src/license.txt +202 -202
- package/skills/skill-creator/src/scripts/init_skill.py +378 -378
- package/skills/skill-creator/src/scripts/package_skill.py +111 -111
- package/skills/skill-creator/src/scripts/quick_validate.py +101 -101
- package/skills/skillhub/skill.json +27 -27
- package/skills/skillhub/src/SKILL.md +121 -121
- package/skills/sophnet-age-appearance/skill.json +20 -20
- package/skills/sophnet-age-appearance/src/SKILL.md +83 -83
- package/skills/sophnet-age-appearance/src/pyproject.toml +10 -10
- package/skills/sophnet-age-appearance/src/scripts/age_appearance.py +395 -395
- package/skills/sophnet-age-appearance/src/scripts/age_face_crop.py +313 -313
- package/skills/sophnet-bot-client/skill.json +20 -20
- package/skills/sophnet-bot-client/src/SKILL.md +255 -255
- package/skills/sophnet-bot-client/src/pyproject.toml +13 -13
- package/skills/sophnet-bot-client/src/scripts/bot_client_proxy.py +165 -165
- package/skills/sophnet-bot-client/src/scripts/bot_client_safe.sh +29 -29
- package/skills/sophnet-bot-client/src/scripts/bot_client_setup.py +502 -502
- package/skills/sophnet-bot-client/src/tests/test_bot_client_proxy.py +255 -255
- package/skills/sophnet-bot-client/src/tests/test_bot_client_setup.py +679 -679
- package/skills/sophnet-bot-client/src/uv.lock +8 -8
- package/skills/sophnet-customer-management/skill.json +20 -20
- package/skills/sophnet-customer-management/src/SKILL.md +270 -270
- package/skills/sophnet-customer-management/src/pyproject.toml +15 -15
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/__init__.py +2 -2
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/__main__.py +5 -5
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/cli.py +67 -67
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/__init__.py +2 -2
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/customer.py +60 -60
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/export_file.py +18 -18
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/import_file.py +15 -15
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/reminder.py +26 -26
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/commands/schema.py +28 -28
- package/skills/sophnet-customer-management/src/src/customer_mgmt_cli/config.py +54 -54
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/__init__.py +2 -2
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/exporter.py +85 -85
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/models.py +84 -84
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/normalizer.py +144 -144
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/parser.py +241 -241
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/query.py +109 -109
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/reminder.py +121 -121
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/repository.py +397 -397
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/schema.py +106 -106
- package/skills/sophnet-customer-management/src/src/customer_mgmt_core/service.py +565 -565
- package/skills/sophnet-customer-management/src/uv.lock +48 -48
- package/skills/sophnet-customized-marketing/skill.json +28 -28
- package/skills/sophnet-customized-marketing/src/SKILL.md +144 -144
- package/skills/sophnet-customized-marketing/src/playbooks/campaign-planning.md +187 -187
- package/skills/sophnet-customized-marketing/src/playbooks/content-generation.md +124 -124
- package/skills/sophnet-customized-marketing/src/playbooks/marketing-calendar.md +59 -59
- package/skills/sophnet-customized-marketing/src/playbooks/multi-channel-bundle.md +94 -94
- package/skills/sophnet-customized-marketing/src/playbooks/poster-generation.md +182 -182
- package/skills/sophnet-customized-marketing/src/playbooks/style-profile-workflow.md +103 -103
- package/skills/sophnet-customized-marketing/src/pyproject.toml +8 -8
- package/skills/sophnet-customized-marketing/src/references/campaign-mechanics.md +168 -168
- package/skills/sophnet-customized-marketing/src/references/content-safety.md +26 -26
- package/skills/sophnet-customized-marketing/src/references/marketing-date-checklist.md +99 -99
- package/skills/sophnet-customized-marketing/src/references/platform-writing-guidelines.md +88 -88
- package/skills/sophnet-customized-marketing/src/references/quality-checklist.md +44 -44
- package/skills/sophnet-customized-marketing/src/scripts/generate_poster.py +572 -572
- package/skills/sophnet-customized-marketing/src/scripts/style_profile.py +215 -215
- package/skills/sophnet-dailynews/skill.json +20 -20
- package/skills/sophnet-dailynews/src/SKILL.md +179 -179
- package/skills/sophnet-dailynews/src/cache.json +150 -150
- package/skills/sophnet-dailynews/src/sources.json +230 -230
- package/skills/sophnet-docx/skill.json +20 -20
- package/skills/sophnet-docx/src/SKILL.md +463 -463
- package/skills/sophnet-docx/src/package-lock.json +208 -208
- package/skills/sophnet-docx/src/package.json +16 -16
- package/skills/sophnet-docx/src/pyproject.toml +11 -11
- package/skills/sophnet-docx/src/scripts/__init__.py +1 -1
- package/skills/sophnet-docx/src/scripts/accept_changes.py +135 -135
- package/skills/sophnet-docx/src/scripts/comment.py +318 -318
- package/skills/sophnet-docx/src/scripts/ensure_uv_env.sh +68 -68
- package/skills/sophnet-docx/src/scripts/office/helpers/merge_runs.py +199 -199
- package/skills/sophnet-docx/src/scripts/office/helpers/simplify_redlines.py +197 -197
- package/skills/sophnet-docx/src/scripts/office/pack.py +159 -159
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
- package/skills/sophnet-docx/src/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
- package/skills/sophnet-docx/src/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
- package/skills/sophnet-docx/src/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
- package/skills/sophnet-docx/src/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
- package/skills/sophnet-docx/src/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
- package/skills/sophnet-docx/src/scripts/office/schemas/mce/mc.xsd +75 -75
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-2010.xsd +560 -560
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-2012.xsd +67 -67
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-2018.xsd +14 -14
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -20
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -13
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
- package/skills/sophnet-docx/src/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -8
- package/skills/sophnet-docx/src/scripts/office/soffice.py +183 -183
- package/skills/sophnet-docx/src/scripts/office/unpack.py +132 -132
- package/skills/sophnet-docx/src/scripts/office/validate.py +111 -111
- package/skills/sophnet-docx/src/scripts/office/validators/__init__.py +15 -15
- package/skills/sophnet-docx/src/scripts/office/validators/base.py +847 -847
- package/skills/sophnet-docx/src/scripts/office/validators/docx.py +446 -446
- package/skills/sophnet-docx/src/scripts/office/validators/pptx.py +275 -275
- package/skills/sophnet-docx/src/scripts/office/validators/redlining.py +247 -247
- package/skills/sophnet-docx/src/scripts/templates/comments.xml +3 -3
- package/skills/sophnet-docx/src/scripts/templates/commentsExtended.xml +3 -3
- package/skills/sophnet-docx/src/scripts/templates/commentsExtensible.xml +3 -3
- package/skills/sophnet-docx/src/scripts/templates/commentsIds.xml +3 -3
- package/skills/sophnet-docx/src/scripts/templates/people.xml +3 -3
- package/skills/sophnet-docx/src/scripts/upload_file.sh +96 -96
- package/skills/sophnet-docx/src/uv.lock +320 -320
- package/skills/sophnet-face-search/skill.json +20 -20
- package/skills/sophnet-face-search/src/SKILL.md +115 -115
- package/skills/sophnet-face-search/src/pyproject.toml +11 -11
- package/skills/sophnet-face-search/src/scripts/face_search.py +335 -335
- package/skills/sophnet-face-search/src/uv.lock +508 -508
- package/skills/sophnet-id-photo/skill.json +20 -20
- package/skills/sophnet-id-photo/src/SKILL.md +107 -107
- package/skills/sophnet-id-photo/src/pyproject.toml +10 -10
- package/skills/sophnet-id-photo/src/scripts/id_photo.py +540 -540
- package/skills/sophnet-id-photo/src/scripts/id_photo_compliance.py +215 -215
- package/skills/sophnet-id-photo/src/scripts/id_photo_face_crop.py +313 -313
- package/skills/sophnet-image-edit/skill.json +20 -20
- package/skills/sophnet-image-edit/src/SKILL.md +140 -140
- package/skills/sophnet-image-edit/src/pyproject.toml +9 -9
- package/skills/sophnet-image-edit/src/scripts/edit_and_preview.sh +68 -68
- package/skills/sophnet-image-edit/src/scripts/edit_image.py +279 -279
- package/skills/sophnet-image-edit/src/uv.lock +234 -234
- package/skills/sophnet-image-generate/skill.json +20 -20
- package/skills/sophnet-image-generate/src/SKILL.md +62 -62
- package/skills/sophnet-image-generate/src/pyproject.toml +9 -9
- package/skills/sophnet-image-generate/src/scripts/generate_image.py +156 -156
- package/skills/sophnet-image-generate/src/uv.lock +234 -234
- package/skills/sophnet-image-ocr/skill.json +20 -20
- package/skills/sophnet-image-ocr/src/SKILL.md +167 -167
- package/skills/sophnet-image-ocr/src/pyproject.toml +13 -13
- package/skills/sophnet-image-ocr/src/scripts/ocr.py +225 -225
- package/skills/sophnet-image-ocr/src/uv.lock +234 -234
- package/skills/sophnet-infinite-talk/skill.json +20 -20
- package/skills/sophnet-infinite-talk/src/SKILL.md +140 -140
- package/skills/sophnet-infinite-talk/src/pyproject.toml +9 -9
- package/skills/sophnet-infinite-talk/src/scripts/gen.py +172 -172
- package/skills/sophnet-oss/skill.json +27 -27
- package/skills/sophnet-oss/src/SKILL.md +118 -118
- package/skills/sophnet-oss/src/pyproject.toml +8 -8
- package/skills/sophnet-oss/src/scripts/upload_file.py +43 -43
- package/skills/sophnet-pdf/skill.json +20 -20
- package/skills/sophnet-pdf/src/SKILL.md +413 -413
- package/skills/sophnet-pdf/src/forms.md +297 -297
- package/skills/sophnet-pdf/src/pyproject.toml +14 -14
- package/skills/sophnet-pdf/src/reference.md +611 -611
- package/skills/sophnet-pdf/src/scripts/check_bounding_boxes.py +65 -65
- package/skills/sophnet-pdf/src/scripts/check_fillable_fields.py +11 -11
- package/skills/sophnet-pdf/src/scripts/convert_pdf_to_images.py +33 -33
- package/skills/sophnet-pdf/src/scripts/create_validation_image.py +37 -37
- package/skills/sophnet-pdf/src/scripts/enhance_tutorial.py +557 -557
- package/skills/sophnet-pdf/src/scripts/ensure_uv_env.sh +68 -68
- package/skills/sophnet-pdf/src/scripts/extract_form_field_info.py +122 -122
- package/skills/sophnet-pdf/src/scripts/extract_form_structure.py +115 -115
- package/skills/sophnet-pdf/src/scripts/extract_pdf_content.py +34 -34
- package/skills/sophnet-pdf/src/scripts/fill_fillable_fields.py +98 -98
- package/skills/sophnet-pdf/src/scripts/fill_pdf_form_with_annotations.py +107 -107
- package/skills/sophnet-pdf/src/scripts/upload_file.sh +88 -88
- package/skills/sophnet-pdf/src/uv.lock +537 -537
- package/skills/sophnet-qa-install/skill.json +27 -27
- package/skills/sophnet-qa-install/src/SKILL.md +210 -210
- package/skills/sophnet-qa-install/src/pyproject.toml +6 -6
- package/skills/sophnet-qa-install/src/scripts/backup_md.py +35 -35
- package/skills/sophnet-qa-install/src/scripts/check_installed.py +143 -143
- package/skills/sophnet-qa-install/src/scripts/update_config.py +142 -142
- package/skills/sophnet-qa-install/src/scripts/update_md.py +73 -73
- package/skills/sophnet-schedule/skill.json +20 -20
- package/skills/sophnet-schedule/src/ARCHITECTURE.md +321 -321
- package/skills/sophnet-schedule/src/IMPROVEMENTS.md +145 -145
- package/skills/sophnet-schedule/src/SKILL.md +1050 -1050
- package/skills/sophnet-schedule/src/_meta.json +6 -6
- package/skills/sophnet-schedule/src/api/models.py +245 -245
- package/skills/sophnet-schedule/src/apps/add_event.py +237 -237
- package/skills/sophnet-schedule/src/apps/check_reminders.py +112 -112
- package/skills/sophnet-schedule/src/apps/check_roc.py +246 -246
- package/skills/sophnet-schedule/src/apps/generate_daily_plan.py +342 -342
- package/skills/sophnet-schedule/src/apps/import_events.py +216 -216
- package/skills/sophnet-schedule/src/apps/monitor_calendar_changes.py +140 -140
- package/skills/sophnet-schedule/src/apps/register_tasks.py +169 -169
- package/skills/sophnet-schedule/src/apps/sync_roc_to_gcal.py +174 -174
- package/skills/sophnet-schedule/src/compat.py +66 -66
- package/skills/sophnet-schedule/src/config/reminder_rules.yaml +96 -96
- package/skills/sophnet-schedule/src/config/roc_events.yaml +44 -44
- package/skills/sophnet-schedule/src/config/settings.py +133 -133
- package/skills/sophnet-schedule/src/config/task_registry.yaml +92 -92
- package/skills/sophnet-schedule/src/docs/FRONTEND_INTEGRATION_GUIDE.md +437 -437
- package/skills/sophnet-schedule/src/gcal/client.py +374 -374
- package/skills/sophnet-schedule/src/gcal/models.py +91 -91
- package/skills/sophnet-schedule/src/requirements.txt +6 -6
- package/skills/sophnet-schedule/src/scripts/setup_gcal_token.py +85 -85
- package/skills/sophnet-schedule/src/server.py +669 -669
- package/skills/sophnet-schedule/src/services/calendar_backend.py +139 -139
- package/skills/sophnet-schedule/src/services/conflict_detector.py +96 -96
- package/skills/sophnet-schedule/src/services/datetime_utils.py +117 -117
- package/skills/sophnet-schedule/src/services/event_classifier.py +100 -100
- package/skills/sophnet-schedule/src/services/event_diff.py +160 -160
- package/skills/sophnet-schedule/src/services/google_integration.py +500 -500
- package/skills/sophnet-schedule/src/services/job_store.py +100 -100
- package/skills/sophnet-schedule/src/services/local_event_store.py +266 -266
- package/skills/sophnet-schedule/src/services/reminder_planner.py +116 -116
- package/skills/sophnet-schedule/src/services/runtime_utils.py +31 -31
- package/skills/sophnet-schedule/src/services/table_parser.py +286 -286
- package/skills/sophnet-schedule/src/services/task_builder.py +167 -167
- package/skills/sophnet-schedule/src/services/time_window.py +72 -72
- package/skills/sophnet-sticker-edit/skill.json +27 -27
- package/skills/sophnet-sticker-edit/src/SKILL.md +80 -80
- package/skills/sophnet-sticker-edit/src/pyproject.toml +9 -9
- package/skills/sophnet-sticker-edit/src/scripts/edit_sticker_image.py +403 -403
- package/skills/sophnet-stock/skill.json +20 -20
- package/skills/sophnet-stock/src/App-Plan.md +442 -442
- package/skills/sophnet-stock/src/README.md +214 -214
- package/skills/sophnet-stock/src/SKILL.md +236 -236
- package/skills/sophnet-stock/src/TODO.md +394 -394
- package/skills/sophnet-stock/src/_meta.json +5 -5
- package/skills/sophnet-stock/src/docs/ARCHITECTURE.md +408 -408
- package/skills/sophnet-stock/src/docs/CONCEPT.md +233 -233
- package/skills/sophnet-stock/src/docs/HOT_SCANNER.md +288 -288
- package/skills/sophnet-stock/src/docs/README.md +95 -95
- package/skills/sophnet-stock/src/docs/USAGE.md +465 -465
- package/skills/sophnet-stock/src/scripts/analyze_stock.py +2565 -2565
- package/skills/sophnet-stock/src/scripts/dividends.py +365 -365
- package/skills/sophnet-stock/src/scripts/hot_scanner.py +582 -582
- package/skills/sophnet-stock/src/scripts/portfolio.py +548 -548
- package/skills/sophnet-stock/src/scripts/rumor_scanner.py +342 -342
- package/skills/sophnet-stock/src/scripts/test_stock_analysis.py +409 -409
- package/skills/sophnet-stock/src/scripts/watchlist.py +336 -336
- package/skills/sophnet-training-install/skill.json +27 -27
- package/skills/sophnet-training-install/src/SKILL.md +211 -211
- package/skills/sophnet-training-install/src/pyproject.toml +6 -6
- package/skills/sophnet-training-install/src/scripts/backup_md.py +35 -35
- package/skills/sophnet-training-install/src/scripts/check_installed.py +144 -144
- package/skills/sophnet-training-install/src/scripts/update_config.py +142 -142
- package/skills/sophnet-training-install/src/scripts/update_md.py +73 -73
- package/skills/sophnet-tts/skill.json +20 -20
- package/skills/sophnet-tts/src/SKILL.md +79 -79
- package/skills/sophnet-tts/src/pyproject.toml +9 -9
- package/skills/sophnet-tts/src/scripts/gen_tts.py +130 -130
- package/skills/sophnet-video-generate/skill.json +37 -37
- package/skills/sophnet-video-generate/src/SKILL.md +117 -117
- package/skills/sophnet-video-generate/src/scripts/gen_video.py +321 -321
- package/skills/sophnet-xlsx/skill.json +20 -20
- package/skills/sophnet-xlsx/src/SKILL.md +399 -399
- package/skills/sophnet-xlsx/src/pyproject.toml +11 -11
- package/skills/sophnet-xlsx/src/scripts/ensure_uv_env.sh +68 -68
- package/skills/sophnet-xlsx/src/scripts/office/helpers/merge_runs.py +199 -199
- package/skills/sophnet-xlsx/src/scripts/office/helpers/simplify_redlines.py +197 -197
- package/skills/sophnet-xlsx/src/scripts/office/pack.py +159 -159
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -1499
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -146
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -1085
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -11
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -3081
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -23
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -185
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -287
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -1676
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -28
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -144
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -174
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -25
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -18
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -59
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -56
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -195
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -582
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -25
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -4439
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -570
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -509
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -12
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -108
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -96
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -3646
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -116
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -42
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -50
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -49
- package/skills/sophnet-xlsx/src/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -33
- package/skills/sophnet-xlsx/src/scripts/office/schemas/mce/mc.xsd +75 -75
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-2010.xsd +560 -560
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-2012.xsd +67 -67
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-2018.xsd +14 -14
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -20
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -13
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -4
- package/skills/sophnet-xlsx/src/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -8
- package/skills/sophnet-xlsx/src/scripts/office/soffice.py +183 -183
- package/skills/sophnet-xlsx/src/scripts/office/unpack.py +132 -132
- package/skills/sophnet-xlsx/src/scripts/office/validate.py +111 -111
- package/skills/sophnet-xlsx/src/scripts/office/validators/__init__.py +15 -15
- package/skills/sophnet-xlsx/src/scripts/office/validators/base.py +847 -847
- package/skills/sophnet-xlsx/src/scripts/office/validators/docx.py +446 -446
- package/skills/sophnet-xlsx/src/scripts/office/validators/pptx.py +275 -275
- package/skills/sophnet-xlsx/src/scripts/office/validators/redlining.py +247 -247
- package/skills/sophnet-xlsx/src/scripts/recalc.py +184 -184
- package/skills/sophnet-xlsx/src/scripts/upload_file.sh +96 -96
- package/skills/sophnet-xlsx/src/uv.lock +319 -319
- package/skills/ui-ux-pro-max/skill.json +20 -20
- package/skills/ui-ux-pro-max/src/SKILL.md +377 -377
- package/skills/ui-ux-pro-max/src/data/icons.csv +101 -101
- package/skills/ui-ux-pro-max/src/data/react-performance.csv +45 -45
- package/skills/ui-ux-pro-max/src/data/stacks/astro.csv +54 -54
- package/skills/ui-ux-pro-max/src/data/stacks/jetpack-compose.csv +53 -53
- package/skills/ui-ux-pro-max/src/data/stacks/nuxt-ui.csv +51 -51
- package/skills/ui-ux-pro-max/src/data/stacks/nuxtjs.csv +59 -59
- package/skills/ui-ux-pro-max/src/data/stacks/shadcn.csv +61 -61
- package/skills/ui-ux-pro-max/src/data/typography.csv +57 -57
- package/skills/ui-ux-pro-max/src/data/ui-reasoning.csv +101 -101
- package/skills/ui-ux-pro-max/src/data/web-interface.csv +31 -31
- package/skills/ui-ux-pro-max/src/scripts/core.py +253 -253
- package/skills/ui-ux-pro-max/src/scripts/design_system.py +1067 -1067
- package/skills/video-understand/skill.json +20 -20
- package/skills/video-understand/src/SKILL.md +79 -79
- package/skills/video-understand/src/scripts/video_understand.py +204 -204
- package/skills/weather/skill.json +19 -19
- package/skills/weather/src/SKILL.md +112 -112
- package/skills/web-scraper/skill.json +20 -20
- package/skills/web-scraper/src/SKILL.md +101 -101
- package/skills/web-scraper/src/scripts/scrape.py +270 -270
- package/skills/website-builder/skill.json +20 -20
- package/skills/website-builder/src/SKILL.md +266 -266
- package/skills/website-builder/src/scripts/deploy_site.sh +46 -46
- package/skills/wechat-article-publisher/skill.json +20 -20
- package/skills/wechat-article-publisher/src/SKILL.md +60 -60
- package/skills/wechat-article-publisher/src/config.json +6 -6
- package/skills/wechat-article-publisher/src/pyproject.toml +12 -12
- package/skills/wechat-article-publisher/src/scripts/publish_wechat.py +825 -825
- package/skills/xiaohongshu/skill.json +20 -20
- package/skills/xiaohongshu/src/SKILL.md +91 -91
- package/skills/xiaohongshu/src/_meta.json +5 -5
- package/skills/xiaohongshu/src/assets/card.html +216 -216
- package/skills/xiaohongshu/src/assets/cover.html +82 -82
- package/skills/xiaohongshu/src/assets/example.md +84 -84
- package/skills/xiaohongshu/src/assets/styles.css +318 -318
- package/skills/xiaohongshu/src/scripts/render_xhs_v2.py +737 -737
- package/skills/xiaohongshu/src/scripts/sign_server.py +158 -158
- package/skills/xiaohongshu/src/scripts/stealth.min.js +6 -6
- package/skills/xiaohongshu/src/scripts/xhs_tool.py +186 -186
- package/skills/xiaohongshu/src/workflow.py +185 -185
- package/src/commands/agent.js +112 -112
- package/src/commands/download.js +101 -101
- package/src/commands/info.js +58 -58
- package/src/commands/list.js +71 -71
- package/src/utils/agents.js +36 -36
- package/src/utils/config.js +22 -22
- package/src/utils/paths.js +31 -31
- package/src/utils/versions.js +57 -57
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
# 用户偏好设置
|
|
2
|
-
|
|
3
|
-
> 此文件存储用户的个性化偏好数据,用于优化打车体验。当用户的 query 中没有明确指定时,系统会根据此文件的偏好自动匹配。注意:当起终点是从偏好推断的(非用户明确指定),必须先向用户确认后再执行。
|
|
4
|
-
|
|
5
|
-
## 优先级说明
|
|
6
|
-
|
|
7
|
-
1. **用户 query 参数**(优先级最高):用户在当前对话中明确指定的地址、车型等
|
|
8
|
-
2. **PREFERENCE.md 偏好数据**(优先级次之):用户预设的个性化偏好
|
|
9
|
-
|
|
10
|
-
## 地址别名
|
|
11
|
-
|
|
12
|
-
| 别名 | 地址名称 | 经度 | 纬度 | 城市 |
|
|
13
|
-
| ---- | -------- | ---- | ---- | ---- |
|
|
14
|
-
| 家 | | | | |
|
|
15
|
-
| 公司 | | | | |
|
|
16
|
-
|
|
17
|
-
> 说明:
|
|
18
|
-
> - "家"和"公司"为内置别名,支持"从家到公司"、"打车回家"等经典简化表达。
|
|
19
|
-
> - 此表可自由扩展行数,用户可添加任意别名(如"妈妈家"、"儿子的学校"、"健身房"等)。
|
|
20
|
-
> - **精确优先,语义兜底**:优先精确匹配别名("家"只匹配"家",不会匹配"妈妈家");无精确匹配时用语义理解("接孩子"可匹配"儿子的学校")。
|
|
21
|
-
|
|
22
|
-
## 场景车型偏好
|
|
23
|
-
|
|
24
|
-
| 场景 | 偏好车型 | 品类代码 | 说明 |
|
|
25
|
-
| ------ | -------- | -------- | -------- |
|
|
26
|
-
| 上班 | | | |
|
|
27
|
-
| 下班 | | | |
|
|
28
|
-
| 其他 | | | |
|
|
29
|
-
|
|
30
|
-
> 说明:当用户说"我要上班"或"下班回家"时,自动使用对应的车型偏好
|
|
31
|
-
>
|
|
32
|
-
> 品类代码来自 `taxi_estimate` 返回的 `product_category` 字段。常见值:快车=1,特惠快车=201,滴滴轻享=193,专车=8,豪华车=17。
|
|
33
|
-
> ⚠️ 注意:可用车型以 API 实际返回为准,新增车型会自动出现在预估结果中。支持多车型时用英文逗号分隔,如 `1,201`
|
|
34
|
-
|
|
35
|
-
## 默认偏好
|
|
36
|
-
|
|
37
|
-
| 配置项 | 值 | 说明 |
|
|
38
|
-
| ---------- | ---- | ---- |
|
|
39
|
-
| 默认车型 | | 无明确需求时使用 |
|
|
40
|
-
| 叫车手机号 | | 默认叫车号码 |
|
|
41
|
-
|
|
42
|
-
## 使用示例
|
|
43
|
-
|
|
44
|
-
1. **地址别名使用**(语义匹配,精确优先):
|
|
45
|
-
- "我要回家" → 精确匹配别名"家"(用户自己的家),不会匹配"妈妈家"
|
|
46
|
-
- "从家到公司" → 精确匹配"家"为起点,"公司"为终点
|
|
47
|
-
- "从家去公司" → 同上,"家"= 用户自己的家
|
|
48
|
-
- "去妈妈家" / "去我妈那儿" → 匹配别名"妈妈家"(需明确含"妈妈"语义)
|
|
49
|
-
- "送儿子上学" / "接孩子" → 匹配别名"儿子的学校"
|
|
50
|
-
- "去健身" → 匹配别名"健身房"
|
|
51
|
-
|
|
52
|
-
2. **场景偏好使用**:
|
|
53
|
-
- "我要上班" → 自动使用"上班"场景的车型偏好
|
|
54
|
-
- "下班了" → 自动使用"下班"场景的车型偏好
|
|
55
|
-
|
|
56
|
-
## 更新日志
|
|
57
|
-
|
|
58
|
-
- 2026-03-11: 初始化偏好文件
|
|
1
|
+
# 用户偏好设置
|
|
2
|
+
|
|
3
|
+
> 此文件存储用户的个性化偏好数据,用于优化打车体验。当用户的 query 中没有明确指定时,系统会根据此文件的偏好自动匹配。注意:当起终点是从偏好推断的(非用户明确指定),必须先向用户确认后再执行。
|
|
4
|
+
|
|
5
|
+
## 优先级说明
|
|
6
|
+
|
|
7
|
+
1. **用户 query 参数**(优先级最高):用户在当前对话中明确指定的地址、车型等
|
|
8
|
+
2. **PREFERENCE.md 偏好数据**(优先级次之):用户预设的个性化偏好
|
|
9
|
+
|
|
10
|
+
## 地址别名
|
|
11
|
+
|
|
12
|
+
| 别名 | 地址名称 | 经度 | 纬度 | 城市 |
|
|
13
|
+
| ---- | -------- | ---- | ---- | ---- |
|
|
14
|
+
| 家 | | | | |
|
|
15
|
+
| 公司 | | | | |
|
|
16
|
+
|
|
17
|
+
> 说明:
|
|
18
|
+
> - "家"和"公司"为内置别名,支持"从家到公司"、"打车回家"等经典简化表达。
|
|
19
|
+
> - 此表可自由扩展行数,用户可添加任意别名(如"妈妈家"、"儿子的学校"、"健身房"等)。
|
|
20
|
+
> - **精确优先,语义兜底**:优先精确匹配别名("家"只匹配"家",不会匹配"妈妈家");无精确匹配时用语义理解("接孩子"可匹配"儿子的学校")。
|
|
21
|
+
|
|
22
|
+
## 场景车型偏好
|
|
23
|
+
|
|
24
|
+
| 场景 | 偏好车型 | 品类代码 | 说明 |
|
|
25
|
+
| ------ | -------- | -------- | -------- |
|
|
26
|
+
| 上班 | | | |
|
|
27
|
+
| 下班 | | | |
|
|
28
|
+
| 其他 | | | |
|
|
29
|
+
|
|
30
|
+
> 说明:当用户说"我要上班"或"下班回家"时,自动使用对应的车型偏好
|
|
31
|
+
>
|
|
32
|
+
> 品类代码来自 `taxi_estimate` 返回的 `product_category` 字段。常见值:快车=1,特惠快车=201,滴滴轻享=193,专车=8,豪华车=17。
|
|
33
|
+
> ⚠️ 注意:可用车型以 API 实际返回为准,新增车型会自动出现在预估结果中。支持多车型时用英文逗号分隔,如 `1,201`
|
|
34
|
+
|
|
35
|
+
## 默认偏好
|
|
36
|
+
|
|
37
|
+
| 配置项 | 值 | 说明 |
|
|
38
|
+
| ---------- | ---- | ---- |
|
|
39
|
+
| 默认车型 | | 无明确需求时使用 |
|
|
40
|
+
| 叫车手机号 | | 默认叫车号码 |
|
|
41
|
+
|
|
42
|
+
## 使用示例
|
|
43
|
+
|
|
44
|
+
1. **地址别名使用**(语义匹配,精确优先):
|
|
45
|
+
- "我要回家" → 精确匹配别名"家"(用户自己的家),不会匹配"妈妈家"
|
|
46
|
+
- "从家到公司" → 精确匹配"家"为起点,"公司"为终点
|
|
47
|
+
- "从家去公司" → 同上,"家"= 用户自己的家
|
|
48
|
+
- "去妈妈家" / "去我妈那儿" → 匹配别名"妈妈家"(需明确含"妈妈"语义)
|
|
49
|
+
- "送儿子上学" / "接孩子" → 匹配别名"儿子的学校"
|
|
50
|
+
- "去健身" → 匹配别名"健身房"
|
|
51
|
+
|
|
52
|
+
2. **场景偏好使用**:
|
|
53
|
+
- "我要上班" → 自动使用"上班"场景的车型偏好
|
|
54
|
+
- "下班了" → 自动使用"下班"场景的车型偏好
|
|
55
|
+
|
|
56
|
+
## 更新日志
|
|
57
|
+
|
|
58
|
+
- 2026-03-11: 初始化偏好文件
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "didi-ride-skill",
|
|
3
|
-
"version": "1.1.0",
|
|
4
|
-
"description": "DiDi Ride Skill for OpenClaw - 打车、路线规划、周边搜索",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"author": "DiDi MCP Team",
|
|
7
|
-
"homepage": "https://mcp.didichuxing.com",
|
|
8
|
-
"keywords": [
|
|
9
|
-
"didi",
|
|
10
|
-
"taxi",
|
|
11
|
-
"mcp",
|
|
12
|
-
"openclaw",
|
|
13
|
-
"mobility"
|
|
14
|
-
]
|
|
15
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "didi-ride-skill",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "DiDi Ride Skill for OpenClaw - 打车、路线规划、周边搜索",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"author": "DiDi MCP Team",
|
|
7
|
+
"homepage": "https://mcp.didichuxing.com",
|
|
8
|
+
"keywords": [
|
|
9
|
+
"didi",
|
|
10
|
+
"taxi",
|
|
11
|
+
"mcp",
|
|
12
|
+
"openclaw",
|
|
13
|
+
"mobility"
|
|
14
|
+
]
|
|
15
|
+
}
|
|
@@ -1,171 +1,171 @@
|
|
|
1
|
-
# API 文档
|
|
2
|
-
|
|
3
|
-
## 响应格式说明
|
|
4
|
-
|
|
5
|
-
所有工具均返回 `content[].text`(自然语言文本)。部分工具(网约车类)额外返回 `structuredContent`(结构化数据)。
|
|
6
|
-
|
|
7
|
-
- 如果响应中存在 `structuredContent`,优先使用其中的字段做逻辑判断和字段提取
|
|
8
|
-
- 如果没有 `structuredContent`,则解析 `content[].text` 获取所需信息
|
|
9
|
-
|
|
10
|
-
## 函数签名
|
|
11
|
-
|
|
12
|
-
```
|
|
13
|
-
/**
|
|
14
|
-
* 根据用户输入的起点终点坐标,规划骑行通勤方案
|
|
15
|
-
*
|
|
16
|
-
* @param destination 终点坐标,格式为:经度,纬度
|
|
17
|
-
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
18
|
-
* @param origin 起点坐标,格式为:经度,纬度
|
|
19
|
-
*/
|
|
20
|
-
function maps_direction_bicycling(destination: string, need_geo?: boolean, origin: string);
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* 根据用户起终点经纬度坐标规划以小客车、轿车通勤出行的方案
|
|
24
|
-
*
|
|
25
|
-
* @param destination 终点坐标,格式为:经度,纬度
|
|
26
|
-
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
27
|
-
* @param origin 起点坐标,格式为:经度,纬度
|
|
28
|
-
*/
|
|
29
|
-
function maps_direction_driving(destination: string, need_geo?: boolean, origin: string);
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* 根据用户起终点坐标,规划综合公交、地铁的通勤方案
|
|
33
|
-
*
|
|
34
|
-
* @param city 查询城市(**必须使用完整格式,如"北京市"而非"北京"**)
|
|
35
|
-
* @param destination 终点坐标,格式为:经度,纬度
|
|
36
|
-
* @param origin 起点坐标,格式为:经度,纬度
|
|
37
|
-
*/
|
|
38
|
-
function maps_direction_transit(city: string, destination: string, origin: string);
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* 根据用户输入的起点终点坐标,规划步行通勤方案
|
|
42
|
-
*
|
|
43
|
-
* @param destination 终点坐标,格式为:经度,纬度
|
|
44
|
-
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
45
|
-
* @param origin 起点坐标,格式为:经度,纬度
|
|
46
|
-
*/
|
|
47
|
-
function maps_direction_walking(destination: string, need_geo?: boolean, origin: string);
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* 根据用户传入关键词和位置坐标,搜索出周边的POI地点信息
|
|
51
|
-
*
|
|
52
|
-
* @param keywords 搜索关键词
|
|
53
|
-
* @param location 位置坐标,格式为:经度,纬度
|
|
54
|
-
* @param max_distance? 搜索半径,单位:米
|
|
55
|
-
*/
|
|
56
|
-
function maps_place_around(keywords: string, location: string, max_distance?: string);
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* 将经纬度坐标转换为地址信息
|
|
60
|
-
*
|
|
61
|
-
* @param location 位置坐标,格式为:经度,纬度
|
|
62
|
-
*/
|
|
63
|
-
function maps_regeocode(location: string);
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* 根据用户传入关键词和城市,搜索出相关的POI地点信息
|
|
67
|
-
*
|
|
68
|
-
* @param city 查询城市(**必须使用完整格式,如"北京市"而非"北京"**)
|
|
69
|
-
* @param keywords 搜索关键词
|
|
70
|
-
* @param location? 位置坐标,格式为:经度,纬度
|
|
71
|
-
*/
|
|
72
|
-
function maps_textsearch(city: string, keywords: string, location?: string);
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* 取消打车订单
|
|
76
|
-
*
|
|
77
|
-
* @param order_id 订单ID,从订单创建或查询结果中获取
|
|
78
|
-
* @param reason? 取消原因,可选参数。例如:不需要了、等待时间太长、临时有事等
|
|
79
|
-
*/
|
|
80
|
-
function taxi_cancel_order(order_id: string, reason?: string);
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* 直接通过API创建打车订单,无需打开任何应用程序界面,系统自动完成整个发单流程
|
|
84
|
-
*
|
|
85
|
-
* @param caller_car_phone? 叫车人手机号,如果有就要传递,没有就不传
|
|
86
|
-
* @param estimate_trace_id 预估流程ID,从预估结果中获取
|
|
87
|
-
* @param product_category 车型品类标识,从预估结果中获取,传入多个车型时,用英文逗号分割,不要带空格
|
|
88
|
-
* @returns structuredContent.orderId 订单ID,后续查询/取消订单使用
|
|
89
|
-
* @returns structuredContent.status 订单初始状态(created)
|
|
90
|
-
*/
|
|
91
|
-
function taxi_create_order(caller_car_phone?: string, estimate_trace_id: string, product_category: string);
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* 查看当前可用的网约车车型,请先获取对应地点的经纬度信息,如果有maps_textsearch的tool,优先使用maps_textsearch进行经纬度的获取。
|
|
95
|
-
*
|
|
96
|
-
* @param from_lat 出发纬度,必须从地图相关的工具获取,不能假设
|
|
97
|
-
* @param from_lng 出发经度,必须从地图相关的工具获取,不能假设
|
|
98
|
-
* @param from_name 出发地名称
|
|
99
|
-
* @param to_lat 目的纬度,必须从地图相关的工具获取,不能假设
|
|
100
|
-
* @param to_lng 目的经度,必须从地图相关的工具获取,不能假设
|
|
101
|
-
* @param to_name 目的地名称
|
|
102
|
-
* @returns structuredContent.traceId 预估流程ID,创建订单时必须传入
|
|
103
|
-
* @returns structuredContent.items[] 可用车型列表
|
|
104
|
-
* @returns structuredContent.items[].productName 车型名称
|
|
105
|
-
* @returns structuredContent.items[].productCategory 车型品类代码,创建订单时传入
|
|
106
|
-
* @returns structuredContent.items[].priceText 预估价格(元)
|
|
107
|
-
*/
|
|
108
|
-
function taxi_estimate(from_lat: string, from_lng: string, from_name: string, to_lat: string, to_lng: string, to_name: string);
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* 根据起点、终点和车型生成打开移动应用或小程序的深度链接,用户点击后将跳转到相应的打车应用完成发单操作
|
|
112
|
-
*
|
|
113
|
-
* @param from_lat 出发纬度,必须从地图相关的工具获取,不能假设
|
|
114
|
-
* @param from_lng 出发经度,必须从地图相关的工具获取,不能假设
|
|
115
|
-
* @param product_category? 车型品类标识列表,从预估结果中获取,支持多个车型,仅当用户明确指定某个或某些品类时才传递此参数,格式为英文逗号,分割
|
|
116
|
-
* @param to_lat 目的地纬度,必须从地图相关的工具获取,不能假设
|
|
117
|
-
* @param to_lng 目的经度,必须从地图相关的工具获取,不能假设
|
|
118
|
-
*/
|
|
119
|
-
function taxi_generate_ride_app_link(from_lat: string, from_lng: string, product_category?: string, to_lat: string, to_lng: string);
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* 获取打车订单对应司机的实时位置经纬度
|
|
123
|
-
*
|
|
124
|
-
* @param order_id 打车订单ID
|
|
125
|
-
*/
|
|
126
|
-
function taxi_get_driver_location(order_id: string);
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* 查询打车订单的状态和信息,如司机联系方式、车牌号、预估到达时间
|
|
130
|
-
*
|
|
131
|
-
* ⚠️ 重要:此函数单次调用仅返回当前状态。
|
|
132
|
-
* 单次调用返回当前状态,详见 SKILL.md `### 3.6 查询订单`。
|
|
133
|
-
*
|
|
134
|
-
* @param order_id? 订单ID,从创建订单结果中获取,如果有就要传递,如果没有,会查询当前账号下未完成的订单
|
|
135
|
-
* @returns structuredContent.statusCode 订单状态码(见下表)
|
|
136
|
-
* @returns structuredContent.statusText 状态文本描述
|
|
137
|
-
* @returns structuredContent.driver 司机信息(name/phone/carModel/carPlate),接单后可用
|
|
138
|
-
* @returns structuredContent.map.distanceKm 距离(公里),行程中可用
|
|
139
|
-
* @returns structuredContent.map.eta 预计剩余时间(分钟),行程中可用
|
|
140
|
-
* @returns structuredContent.map.phase 当前阶段:to_pickup(前往上车点)| to_dropoff(前往终点)
|
|
141
|
-
*
|
|
142
|
-
* 订单状态码:
|
|
143
|
-
* 0 匹配中(非终态)
|
|
144
|
-
* 1 司机已接单(非终态)
|
|
145
|
-
* 2 司机已到达(非终态,里程碑通知)
|
|
146
|
-
* 3 未知状态(终态)
|
|
147
|
-
* 4 行程开始(非终态,里程碑通知)
|
|
148
|
-
* 5 订单完成(终态)✅
|
|
149
|
-
* 6 订单已被系统取消(终态)✅
|
|
150
|
-
* 7 订单已被取消(终态)✅
|
|
151
|
-
* 8 未知状态(终态)✅
|
|
152
|
-
* 9 未知状态(终态)✅
|
|
153
|
-
* 10 未知状态(终态)✅
|
|
154
|
-
* 11 客服关闭订单(终态)✅
|
|
155
|
-
* 12 未能完成服务(终态)✅
|
|
156
|
-
*/
|
|
157
|
-
function taxi_query_order(order_id?: string);
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
Examples:
|
|
161
|
-
|
|
162
|
-
```bash
|
|
163
|
-
# 设置 MCP_URL 变量
|
|
164
|
-
MCP_URL="https://mcp.didichuxing.com/mcp-servers?key=$DIDI_MCP_KEY"
|
|
165
|
-
|
|
166
|
-
# 地址解析(city 建议使用完整行政区名称)
|
|
167
|
-
mcporter call "$MCP_URL" maps_textsearch --args '{"keywords":"望京SOHO","city":"北京市"}'
|
|
168
|
-
|
|
169
|
-
# 价格预估(注意:所有参数值必须加引号,使用字符串格式)
|
|
170
|
-
mcporter call "$MCP_URL" taxi_estimate --args '{"from_lat":"39.9","from_lng":"116.4","from_name":"望京SOHO","to_lat":"39.9","to_lng":"116.4","to_name":"国贸"}'
|
|
171
|
-
```
|
|
1
|
+
# API 文档
|
|
2
|
+
|
|
3
|
+
## 响应格式说明
|
|
4
|
+
|
|
5
|
+
所有工具均返回 `content[].text`(自然语言文本)。部分工具(网约车类)额外返回 `structuredContent`(结构化数据)。
|
|
6
|
+
|
|
7
|
+
- 如果响应中存在 `structuredContent`,优先使用其中的字段做逻辑判断和字段提取
|
|
8
|
+
- 如果没有 `structuredContent`,则解析 `content[].text` 获取所需信息
|
|
9
|
+
|
|
10
|
+
## 函数签名
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
/**
|
|
14
|
+
* 根据用户输入的起点终点坐标,规划骑行通勤方案
|
|
15
|
+
*
|
|
16
|
+
* @param destination 终点坐标,格式为:经度,纬度
|
|
17
|
+
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
18
|
+
* @param origin 起点坐标,格式为:经度,纬度
|
|
19
|
+
*/
|
|
20
|
+
function maps_direction_bicycling(destination: string, need_geo?: boolean, origin: string);
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* 根据用户起终点经纬度坐标规划以小客车、轿车通勤出行的方案
|
|
24
|
+
*
|
|
25
|
+
* @param destination 终点坐标,格式为:经度,纬度
|
|
26
|
+
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
27
|
+
* @param origin 起点坐标,格式为:经度,纬度
|
|
28
|
+
*/
|
|
29
|
+
function maps_direction_driving(destination: string, need_geo?: boolean, origin: string);
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* 根据用户起终点坐标,规划综合公交、地铁的通勤方案
|
|
33
|
+
*
|
|
34
|
+
* @param city 查询城市(**必须使用完整格式,如"北京市"而非"北京"**)
|
|
35
|
+
* @param destination 终点坐标,格式为:经度,纬度
|
|
36
|
+
* @param origin 起点坐标,格式为:经度,纬度
|
|
37
|
+
*/
|
|
38
|
+
function maps_direction_transit(city: string, destination: string, origin: string);
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* 根据用户输入的起点终点坐标,规划步行通勤方案
|
|
42
|
+
*
|
|
43
|
+
* @param destination 终点坐标,格式为:经度,纬度
|
|
44
|
+
* @param need_geo? 是否需要返回途经的点序列,默认值为true
|
|
45
|
+
* @param origin 起点坐标,格式为:经度,纬度
|
|
46
|
+
*/
|
|
47
|
+
function maps_direction_walking(destination: string, need_geo?: boolean, origin: string);
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* 根据用户传入关键词和位置坐标,搜索出周边的POI地点信息
|
|
51
|
+
*
|
|
52
|
+
* @param keywords 搜索关键词
|
|
53
|
+
* @param location 位置坐标,格式为:经度,纬度
|
|
54
|
+
* @param max_distance? 搜索半径,单位:米
|
|
55
|
+
*/
|
|
56
|
+
function maps_place_around(keywords: string, location: string, max_distance?: string);
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* 将经纬度坐标转换为地址信息
|
|
60
|
+
*
|
|
61
|
+
* @param location 位置坐标,格式为:经度,纬度
|
|
62
|
+
*/
|
|
63
|
+
function maps_regeocode(location: string);
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* 根据用户传入关键词和城市,搜索出相关的POI地点信息
|
|
67
|
+
*
|
|
68
|
+
* @param city 查询城市(**必须使用完整格式,如"北京市"而非"北京"**)
|
|
69
|
+
* @param keywords 搜索关键词
|
|
70
|
+
* @param location? 位置坐标,格式为:经度,纬度
|
|
71
|
+
*/
|
|
72
|
+
function maps_textsearch(city: string, keywords: string, location?: string);
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* 取消打车订单
|
|
76
|
+
*
|
|
77
|
+
* @param order_id 订单ID,从订单创建或查询结果中获取
|
|
78
|
+
* @param reason? 取消原因,可选参数。例如:不需要了、等待时间太长、临时有事等
|
|
79
|
+
*/
|
|
80
|
+
function taxi_cancel_order(order_id: string, reason?: string);
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* 直接通过API创建打车订单,无需打开任何应用程序界面,系统自动完成整个发单流程
|
|
84
|
+
*
|
|
85
|
+
* @param caller_car_phone? 叫车人手机号,如果有就要传递,没有就不传
|
|
86
|
+
* @param estimate_trace_id 预估流程ID,从预估结果中获取
|
|
87
|
+
* @param product_category 车型品类标识,从预估结果中获取,传入多个车型时,用英文逗号分割,不要带空格
|
|
88
|
+
* @returns structuredContent.orderId 订单ID,后续查询/取消订单使用
|
|
89
|
+
* @returns structuredContent.status 订单初始状态(created)
|
|
90
|
+
*/
|
|
91
|
+
function taxi_create_order(caller_car_phone?: string, estimate_trace_id: string, product_category: string);
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* 查看当前可用的网约车车型,请先获取对应地点的经纬度信息,如果有maps_textsearch的tool,优先使用maps_textsearch进行经纬度的获取。
|
|
95
|
+
*
|
|
96
|
+
* @param from_lat 出发纬度,必须从地图相关的工具获取,不能假设
|
|
97
|
+
* @param from_lng 出发经度,必须从地图相关的工具获取,不能假设
|
|
98
|
+
* @param from_name 出发地名称
|
|
99
|
+
* @param to_lat 目的纬度,必须从地图相关的工具获取,不能假设
|
|
100
|
+
* @param to_lng 目的经度,必须从地图相关的工具获取,不能假设
|
|
101
|
+
* @param to_name 目的地名称
|
|
102
|
+
* @returns structuredContent.traceId 预估流程ID,创建订单时必须传入
|
|
103
|
+
* @returns structuredContent.items[] 可用车型列表
|
|
104
|
+
* @returns structuredContent.items[].productName 车型名称
|
|
105
|
+
* @returns structuredContent.items[].productCategory 车型品类代码,创建订单时传入
|
|
106
|
+
* @returns structuredContent.items[].priceText 预估价格(元)
|
|
107
|
+
*/
|
|
108
|
+
function taxi_estimate(from_lat: string, from_lng: string, from_name: string, to_lat: string, to_lng: string, to_name: string);
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* 根据起点、终点和车型生成打开移动应用或小程序的深度链接,用户点击后将跳转到相应的打车应用完成发单操作
|
|
112
|
+
*
|
|
113
|
+
* @param from_lat 出发纬度,必须从地图相关的工具获取,不能假设
|
|
114
|
+
* @param from_lng 出发经度,必须从地图相关的工具获取,不能假设
|
|
115
|
+
* @param product_category? 车型品类标识列表,从预估结果中获取,支持多个车型,仅当用户明确指定某个或某些品类时才传递此参数,格式为英文逗号,分割
|
|
116
|
+
* @param to_lat 目的地纬度,必须从地图相关的工具获取,不能假设
|
|
117
|
+
* @param to_lng 目的经度,必须从地图相关的工具获取,不能假设
|
|
118
|
+
*/
|
|
119
|
+
function taxi_generate_ride_app_link(from_lat: string, from_lng: string, product_category?: string, to_lat: string, to_lng: string);
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* 获取打车订单对应司机的实时位置经纬度
|
|
123
|
+
*
|
|
124
|
+
* @param order_id 打车订单ID
|
|
125
|
+
*/
|
|
126
|
+
function taxi_get_driver_location(order_id: string);
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* 查询打车订单的状态和信息,如司机联系方式、车牌号、预估到达时间
|
|
130
|
+
*
|
|
131
|
+
* ⚠️ 重要:此函数单次调用仅返回当前状态。
|
|
132
|
+
* 单次调用返回当前状态,详见 SKILL.md `### 3.6 查询订单`。
|
|
133
|
+
*
|
|
134
|
+
* @param order_id? 订单ID,从创建订单结果中获取,如果有就要传递,如果没有,会查询当前账号下未完成的订单
|
|
135
|
+
* @returns structuredContent.statusCode 订单状态码(见下表)
|
|
136
|
+
* @returns structuredContent.statusText 状态文本描述
|
|
137
|
+
* @returns structuredContent.driver 司机信息(name/phone/carModel/carPlate),接单后可用
|
|
138
|
+
* @returns structuredContent.map.distanceKm 距离(公里),行程中可用
|
|
139
|
+
* @returns structuredContent.map.eta 预计剩余时间(分钟),行程中可用
|
|
140
|
+
* @returns structuredContent.map.phase 当前阶段:to_pickup(前往上车点)| to_dropoff(前往终点)
|
|
141
|
+
*
|
|
142
|
+
* 订单状态码:
|
|
143
|
+
* 0 匹配中(非终态)
|
|
144
|
+
* 1 司机已接单(非终态)
|
|
145
|
+
* 2 司机已到达(非终态,里程碑通知)
|
|
146
|
+
* 3 未知状态(终态)
|
|
147
|
+
* 4 行程开始(非终态,里程碑通知)
|
|
148
|
+
* 5 订单完成(终态)✅
|
|
149
|
+
* 6 订单已被系统取消(终态)✅
|
|
150
|
+
* 7 订单已被取消(终态)✅
|
|
151
|
+
* 8 未知状态(终态)✅
|
|
152
|
+
* 9 未知状态(终态)✅
|
|
153
|
+
* 10 未知状态(终态)✅
|
|
154
|
+
* 11 客服关闭订单(终态)✅
|
|
155
|
+
* 12 未能完成服务(终态)✅
|
|
156
|
+
*/
|
|
157
|
+
function taxi_query_order(order_id?: string);
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Examples:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
# 设置 MCP_URL 变量
|
|
164
|
+
MCP_URL="https://mcp.didichuxing.com/mcp-servers?key=$DIDI_MCP_KEY"
|
|
165
|
+
|
|
166
|
+
# 地址解析(city 建议使用完整行政区名称)
|
|
167
|
+
mcporter call "$MCP_URL" maps_textsearch --args '{"keywords":"望京SOHO","city":"北京市"}'
|
|
168
|
+
|
|
169
|
+
# 价格预估(注意:所有参数值必须加引号,使用字符串格式)
|
|
170
|
+
mcporter call "$MCP_URL" taxi_estimate --args '{"from_lat":"39.9","from_lng":"116.4","from_name":"望京SOHO","to_lat":"39.9","to_lng":"116.4","to_name":"国贸"}'
|
|
171
|
+
```
|
|
@@ -1,68 +1,68 @@
|
|
|
1
|
-
# 错误处理指南
|
|
2
|
-
|
|
3
|
-
本文档说明 didi-ride-skill skill 使用过程中可能遇到的错误及解决方案。
|
|
4
|
-
|
|
5
|
-
> `<skill-dir>` 代表 didi-ride-skill 技能的安装根目录(即 SKILL.md 所在目录),可通过 `openclaw skills info didi-ride-skill` 获取。
|
|
6
|
-
|
|
7
|
-
## 目录
|
|
8
|
-
|
|
9
|
-
- [错误处理指南](#错误处理指南)
|
|
10
|
-
- [目录](#目录)
|
|
11
|
-
- [统一错误码表](#统一错误码表)
|
|
12
|
-
- [API 返回 400 错误](#400-错误排查)
|
|
13
|
-
- [常见问题 (FAQ)](#常见问题-faq)
|
|
14
|
-
- [获取帮助](#获取帮助)
|
|
15
|
-
|
|
16
|
-
***
|
|
17
|
-
|
|
18
|
-
## 统一错误码表
|
|
19
|
-
|
|
20
|
-
所有 MCP 工具返回的统一错误码对照:
|
|
21
|
-
|
|
22
|
-
| 错误码 | 说明 | 解决方案 |
|
|
23
|
-
|--------|------|----------|
|
|
24
|
-
| `-32001` | 命中限流 | 请等待一段时间后重试(配额限制按时间窗口重置) |
|
|
25
|
-
| `-32002` | 鉴权失败(`auth failed`) | Key 存在但无效或已过期,执行 `### 3.9 MCP KEY 与配置` 的引导流程(含发送二维码) |
|
|
26
|
-
| `-32010` | 参数验证失败 | 检查参数格式,确保所有值为字符串 |
|
|
27
|
-
| `-32011` | 订单不存在 | 确认订单ID正确 |
|
|
28
|
-
| `-32021` | 预估结果过期 | 重新调用价格预估获取新的 traceId |
|
|
29
|
-
| `-32030` | 不支持订单类型 | 该类型订单不支持此操作 |
|
|
30
|
-
| `-32031` | 订单未支付 | 订单未进入支付状态 |
|
|
31
|
-
| `-32040` | 订单已经取消过了 | 订单已被取消,无需重复操作 |
|
|
32
|
-
| `-32041` | 订单无法被取消 | 司机已接单或订单已完成,无法通过 API 取消 |
|
|
33
|
-
| `-32050` | 内部错误 | 稍后重试,如持续失败请联系客服 |
|
|
34
|
-
| `-32060` | 支付失败 | 检查支付账户状态或更换支付方式 |
|
|
35
|
-
|
|
36
|
-
***
|
|
37
|
-
|
|
38
|
-
## 400 错误排查
|
|
39
|
-
|
|
40
|
-
> 💡 **故障排查**:如果配置后 API 返回 400 错误,请检查:
|
|
41
|
-
> 1. 参数名是否正确(如 `keywords` 而非 `keyword`)
|
|
42
|
-
> 2. 城市名称是否使用完整格式(如 `"北京市"` 而非 `"北京"`)
|
|
43
|
-
> 3. 所有参数值是否为字符串格式(加引号)
|
|
44
|
-
|
|
45
|
-
***
|
|
46
|
-
|
|
47
|
-
## 常见问题 (FAQ)
|
|
48
|
-
|
|
49
|
-
**Q: 为什么说"我要上班"没反应?**
|
|
50
|
-
A: 需要先配置 `assets/PREFERENCE.md` 中的家和公司地址,以及上班场景的车型偏好。
|
|
51
|
-
|
|
52
|
-
**Q: 预估价格和实际价格不一致?**
|
|
53
|
-
A: 预估价格为参考值,实际费用以行程完成后为准。
|
|
54
|
-
|
|
55
|
-
**Q: 如何查看历史订单?**
|
|
56
|
-
A: 当前 API 仅支持查询 MCP 渠道未完成订单,历史订单请在滴滴 App 中查看。
|
|
57
|
-
|
|
58
|
-
**Q: 支持哪些城市?**
|
|
59
|
-
A: 支持滴滴服务覆盖的所有中国大陆城市。
|
|
60
|
-
|
|
61
|
-
***
|
|
62
|
-
|
|
63
|
-
## 获取帮助
|
|
64
|
-
|
|
65
|
-
如果以上方案无法解决问题,请:
|
|
66
|
-
|
|
67
|
-
1. 检查 [workflow.md](./workflow.md) 确认操作流程
|
|
68
|
-
2. 访问 <https://mcp.didichuxing.com> 获取最新文档
|
|
1
|
+
# 错误处理指南
|
|
2
|
+
|
|
3
|
+
本文档说明 didi-ride-skill skill 使用过程中可能遇到的错误及解决方案。
|
|
4
|
+
|
|
5
|
+
> `<skill-dir>` 代表 didi-ride-skill 技能的安装根目录(即 SKILL.md 所在目录),可通过 `openclaw skills info didi-ride-skill` 获取。
|
|
6
|
+
|
|
7
|
+
## 目录
|
|
8
|
+
|
|
9
|
+
- [错误处理指南](#错误处理指南)
|
|
10
|
+
- [目录](#目录)
|
|
11
|
+
- [统一错误码表](#统一错误码表)
|
|
12
|
+
- [API 返回 400 错误](#400-错误排查)
|
|
13
|
+
- [常见问题 (FAQ)](#常见问题-faq)
|
|
14
|
+
- [获取帮助](#获取帮助)
|
|
15
|
+
|
|
16
|
+
***
|
|
17
|
+
|
|
18
|
+
## 统一错误码表
|
|
19
|
+
|
|
20
|
+
所有 MCP 工具返回的统一错误码对照:
|
|
21
|
+
|
|
22
|
+
| 错误码 | 说明 | 解决方案 |
|
|
23
|
+
|--------|------|----------|
|
|
24
|
+
| `-32001` | 命中限流 | 请等待一段时间后重试(配额限制按时间窗口重置) |
|
|
25
|
+
| `-32002` | 鉴权失败(`auth failed`) | Key 存在但无效或已过期,执行 `### 3.9 MCP KEY 与配置` 的引导流程(含发送二维码) |
|
|
26
|
+
| `-32010` | 参数验证失败 | 检查参数格式,确保所有值为字符串 |
|
|
27
|
+
| `-32011` | 订单不存在 | 确认订单ID正确 |
|
|
28
|
+
| `-32021` | 预估结果过期 | 重新调用价格预估获取新的 traceId |
|
|
29
|
+
| `-32030` | 不支持订单类型 | 该类型订单不支持此操作 |
|
|
30
|
+
| `-32031` | 订单未支付 | 订单未进入支付状态 |
|
|
31
|
+
| `-32040` | 订单已经取消过了 | 订单已被取消,无需重复操作 |
|
|
32
|
+
| `-32041` | 订单无法被取消 | 司机已接单或订单已完成,无法通过 API 取消 |
|
|
33
|
+
| `-32050` | 内部错误 | 稍后重试,如持续失败请联系客服 |
|
|
34
|
+
| `-32060` | 支付失败 | 检查支付账户状态或更换支付方式 |
|
|
35
|
+
|
|
36
|
+
***
|
|
37
|
+
|
|
38
|
+
## 400 错误排查
|
|
39
|
+
|
|
40
|
+
> 💡 **故障排查**:如果配置后 API 返回 400 错误,请检查:
|
|
41
|
+
> 1. 参数名是否正确(如 `keywords` 而非 `keyword`)
|
|
42
|
+
> 2. 城市名称是否使用完整格式(如 `"北京市"` 而非 `"北京"`)
|
|
43
|
+
> 3. 所有参数值是否为字符串格式(加引号)
|
|
44
|
+
|
|
45
|
+
***
|
|
46
|
+
|
|
47
|
+
## 常见问题 (FAQ)
|
|
48
|
+
|
|
49
|
+
**Q: 为什么说"我要上班"没反应?**
|
|
50
|
+
A: 需要先配置 `assets/PREFERENCE.md` 中的家和公司地址,以及上班场景的车型偏好。
|
|
51
|
+
|
|
52
|
+
**Q: 预估价格和实际价格不一致?**
|
|
53
|
+
A: 预估价格为参考值,实际费用以行程完成后为准。
|
|
54
|
+
|
|
55
|
+
**Q: 如何查看历史订单?**
|
|
56
|
+
A: 当前 API 仅支持查询 MCP 渠道未完成订单,历史订单请在滴滴 App 中查看。
|
|
57
|
+
|
|
58
|
+
**Q: 支持哪些城市?**
|
|
59
|
+
A: 支持滴滴服务覆盖的所有中国大陆城市。
|
|
60
|
+
|
|
61
|
+
***
|
|
62
|
+
|
|
63
|
+
## 获取帮助
|
|
64
|
+
|
|
65
|
+
如果以上方案无法解决问题,请:
|
|
66
|
+
|
|
67
|
+
1. 检查 [workflow.md](./workflow.md) 确认操作流程
|
|
68
|
+
2. 访问 <https://mcp.didichuxing.com> 获取最新文档
|