{"id":"38d77ac8-e1f2-4ac6-92f7-9b503a6d1667","entityType":"agent","slug":"clawhub-upkuajing-global-company-person-education","name":"Fetch personal academic records from global databases via individual ID lookup queries. Extract complete educational profiles covering attended institutions,awarded degrees, majors and GPA metrics.Recruiters, HR teams and hiring managers validate applican","canonicalUrl":"https://www.xpersona.co/agent/clawhub-upkuajing-global-company-person-education","canonicalPath":"/agent/clawhub-upkuajing-global-company-person-education","generatedAt":"2026-10-14T22:38:52.585Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:30:01.212Z","emptyReason":null},"description":"Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring. Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 967 downloads reported by the source. Last updated 10/12/2026.","installCommand":"clawhub skill install s17304xrt0p2xssnmr7datqzks83gvsr:global-company-person-education","sourceUrl":"https://clawhub.ai/upkuajing/global-company-person-education","homepage":"https://clawhub.ai/upkuajing/skills/global-company-person-education","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/upkuajing/global-company-person-education","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/upkuajing/skills/global-company-person-education","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Fetch personal academic records from global databases via individual ID lookup queries. Extract complete educational profiles covering attended institutions,awa"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:30:01.212Z","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-12T00:30:01.212Z","emptyReason":null},"stars":null,"forks":null,"downloads":967,"likes":null,"task":null,"library":null,"packageName":null,"latestVersion":"1.0.4","tractionLabel":"967 downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-12T00:30:01.148Z","emptyReason":null},"lastUpdatedAt":"2026-10-12T00:30:01.212Z","lastCrawledAt":"2026-10-12T00:30:01.148Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-13T00:30:01.148Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.4","createdAt":"2026-08-24T09:17:35.185Z","changelog":"updated","fileCount":11,"zipByteSize":18667},{"version":"1.0.3","createdAt":"2026-07-16T09:00:49.874Z","changelog":"updated","fileCount":9,"zipByteSize":15859},{"version":"1.0.2","createdAt":"2026-07-16T06:25:40.533Z","changelog":"updated","fileCount":9,"zipByteSize":15908},{"version":"1.0.1","createdAt":"2026-07-10T09:50:04.504Z","changelog":"updated","fileCount":9,"zipByteSize":15719},{"version":"1.0.0","createdAt":"2026-07-10T08:15:08.892Z","changelog":"updated","fileCount":9,"zipByteSize":15665}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17304xrt0p2xssnmr7datqzks83gvsr:global-company-person-education","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17304xrt0p2xssnmr7datqzks83gvsr:global-company-person-education` 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/upkuajing/global-company-person-education 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-upkuajing-global-company-person-education/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/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-14T22:38:52.584Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-education/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-12T00:30:01.212Z","emptyReason":null},"readme":"Skill: Fetch personal academic records from global databases via individual ID lookup queries. Extract complete educational profiles covering attended institutions,awarded degrees, majors and GPA metrics.Recruiters, HR teams and hiring managers validate applicant education histories, assess candidate credentials anddeliver data-backed hiring judgements. Streamline pre-employment screening, formal background verification and end-to-end talent assessment workflows forcorporate recruitment teams.\n\nOwner: upkuajing\n\nSummary: Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring. Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation\n\nTags: HR:1.0.4, academic:1.0.4, background:1.0.4, candidate:1.0.4, education:1.0.4, latest:1.0.4, people-enrichment:1.0.4, profile:1.0.4, school:1.0.4\n\nVersion history:\n\nv1.0.4 | 2026-08-24T09:17:35.185Z | user\n\nupdated\n\nv1.0.3 | 2026-07-16T09:00:49.874Z | user\n\nupdated\n\nv1.0.2 | 2026-07-16T06:25:40.533Z | user\n\nupdated\n\nv1.0.1 | 2026-07-10T09:50:04.504Z | user\n\nupdated\n\nv1.0.0 | 2026-07-10T08:15:08.892Z | user\n\nupdated\n\nArchive index:\n\nArchive v1.0.4: 11 files, 18667 bytes\n\nFiles: references/person-education-list-api.md (1470b), references/skill-error-report-api.md (2070b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/error_report.py (1845b), scripts/person_education_list.py (1801b), scripts/version_check.py (4933b), skill-card.md (2608b), SKILL.md (8637b), _meta.json (150b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: global-company-person-education\ndescription: \"Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring.\\n\\n Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation\"\nmetadata: {\"version\":\"1.0.4\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n### **Report Skill Call Errors**\nWhen an API call fails or returns abnormal data (server error, timeout, malformed response, etc.), explain the anomaly to the user in natural language and ask whether to report it to the platform for troubleshooting. Only run the report after user confirmation:\n```bash\npython scripts/error_report.py --params '{\"requestPath\":\"/agent/search/depth_company/person/education/list\",\"requestId\":\"f47ac10b58cc4372a5670e02b2c3d479\",\"context\":\"Education history query failed with a server error\"}'\n```\n- Do not report normal business conditions (insufficient balance, invalid API key, parameter errors) — handle them via their own flows\n- Error reporting does not incur query fees\n- **Parameters**: See [Error Report API](references/skill-error-report-api.md)\n\n## Fees\n\n**All API calls incur fees**, different interfaces have different billing methods.\n\n**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)\nOr use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)\n\n### Query Billing Rules\n\nBilled by **number of calls**, each call returns one page of education records:\n- Each API call incurs a fee\n- Use `--cursor` to get additional pages (each page is a separate call)\n- **Before execution:**\n  1. Inform user that this query will incur a fee\n  2. Stop, wait for explicit user confirmation in a separate message, then execute script\n\n### Fee Confirmation Principle\n\n**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**\n\n## Workflow\n\n### Decision Guide\n\n| User Intent | Use API |\n|-------------|---------|\n| \"Find education history of person H_67890\" | Education History List Query |\n\n## Usage Examples\n\n### Query Education History List\n\n**User request**: \"Find education history of person H_67890\"\n```bash\npython scripts/person_education_list.py --hid H_67890\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'\n```\n\n## Error Handling\n\n- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file\n- **Insufficient balance**: Guide user to top up\n- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess\n- **Skill call errors / abnormal responses**: Explain to the user and, with user confirmation, report to the platform via `python scripts/error_report.py` (see [Report Skill Call Errors](#report-skill-call-errors))\n\n### API Documentation Reference\n\n- Education History List: Check [references/person-education-list-api.md](references/person-education-list-api.md)\n- Error Report: Check [references/skill-error-report-api.md](references/skill-error-report-api.md)\n\n## Best Practices\n\n1. **Check API documentation**:\n   - **Before executing queries, must first check the corresponding API reference documentation**\n   - Check [references/person-education-list-api.md](references/person-education-list-api.md)\n   - Do not guess parameter names, get accurate parameter names and formats from documentation\n\n2. **Pagination**:\n   - When the response returns a non-empty `cursor`, more data is available\n   - Pass the `cursor` value to get the next page\n   - An empty `cursor` means there is no more data\n\n3. **Cross-skill usage**:\n   - The `sid` (school ID) from education results can be used with **global-company-person-school-detail** to look up detailed school information including name, location, and website\n\n## Notes\n- Education records use `hid` as the person unique identifier; `sid` is the school identifier\n- `degrees` is an array of academic degrees; `majors` and `minors` are arrays of study fields\n- File paths use forward slashes on all platforms\n- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language\n- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information\n- **Do not** guess parameter names, get accurate parameter names and formats from documentation\n\n## Related Skills\n\nOther UpKuaJing skills you might find useful:\n\n- global-company-search — Search companies from the global company database\n- global-company-person-search — Search people from the global company database\n- global-company-shareholder — Query shareholder list from the global company database\n- global-company-employee — Query employee list from the global company database\n- global-company-person-colleague — Query colleague list from the global company database\n- global-company-person-alumni — Query alumni list from the global company database\n- global-company-person-experience — Query work experience list from the global company database\n- global-company-person-school-detail — Query school detail from the global company database\n- linkedin-person-search — Search people from LinkedIn data\n- linkedin-company-search — Search companies from LinkedIn data\n- upkuajing-global-company-people-search — Unified company and people search across all sources\n- upkuajing-customs-trade-company-search — Search customs trade companies\n- upkuajing-contact-info-validity-check — Check contact info validity\n- phone-validity-check — Check phone number validity\n- email-validity-check — Check email address validity\n- domain-validity-check — Check domain validity and security\n\nFile v1.0.4:_meta.json\n\n{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1787563055185\n}\n\nFile v1.0.4:references/person-education-list-api.md\n\n# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/depth_company/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结\n\nFile v1.0.4:references/skill-error-report-api.md\n\n# Agent调用Skill异常上报 API 参考\n\n> 上报 Agent 调用 Skill 异常，用于平台侧问题追踪与优化。异常上报不产生查询费用。\n> 接口路径：`POST /agent/skill/error/report`\n> 鉴权：需要 Bearer 令牌（UPKUAJING_API_KEY）\n\n## python脚本参数\n\n- `--params`：JSON格式的上报参数（必填）\n- 未传 `skillId`/`skillVersion` 时，脚本会自动从当前 Skill 目录名与 SKILL.md 读取并填充\n- 必填参数：`skillId`、`skillVersion`、`requestId`、`requestPath`、`context`；其中 `requestId` 从出问题的请求响应（ApiResp.requestId）中获取\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| skillId | string | 是 | Skill 标识（最大128字符），如\"customs-analysis-area\" |\n| skillVersion | string | 是 | Skill 版本（最大32字符） |\n| agentName | string | 否 | Agent 名称（最大128字符） |\n| modelName | string | 否 | 模型名称（最大128字符） |\n| requestPath | string | 是 | 出问题的站内接口路径，以 / 开头（最大255字符），如\"/agent/customs/analysis/area\" |\n| requestId | string | 是 | 全请求唯一关联号（最大128字符），取失败请求响应中的 requestId |\n| requestTime | long | 否 | 请求发起时间戳（毫秒，≥0） |\n| requestParams | object | 否 | 请求参数（原始入参，敏感字段会自动脱敏；序列化后≤64KB） |\n| responseData | object | 否 | 响应数据（异常发生时的返回内容，敏感字段会自动脱敏；序列化后≤64KB） |\n| durationMs | long | 否 | 本次调用耗时（毫秒，≥0） |\n| context | string | 是 | 异常上下文（堆栈/错误信息，用于定位根因，最大2000字符） |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：状态码，0 表示成功\n- msg（string）：提示信息\n- requestId（string）：全请求唯一关联号（32位无横线，与 MDC traceId 同值）\n\n### data 字段\n\n| 字段 | 类型 | 说明 |\n|------|------|------|\n| reportId | long | 上报记录 ID |\n\nFile v1.0.4:skill-card.md\n\n## Description:\n\nQueries UpKuaJing for person-level education history, including attended schools, degrees, majors, minors, GPA, summaries, pagination, fees, and request identifiers.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[upkuajing](https://clawhub.ai/user/upkuajing)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nRecruiters, HR teams, hiring managers, and background-screening workflows can use this skill to retrieve education-history records for a known person ID when validating applicant credentials. Users should obtain appropriate authorization before querying candidate data.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill queries paid education-history data and can expose candidate records.\n\nMitigation: Require human approval before each paid query, confirm a legitimate screening purpose, and avoid printing unnecessary candidate data.\n\nRisk: The skill can read or create a local API key file under ~/.upkuajing/.env.\n\nMitigation: Inject UPKUAJING_API_KEY through a secure secret manager where possible; if a local file is used, restrict file permissions and do not allow the agent to print the file.\n\nRisk: Top-up and payment helper flows can initiate account funding actions.\n\nMitigation: Require separate explicit human approval before any top-up order or payment-page flow.\n\nRisk: Error reports may include request context or candidate-related inputs.\n\nMitigation: Ask for human confirmation before sending error reports and minimize candidate data in the report context.\n\n## Reference(s):\n\n- [Education History List API](references/person-education-list-api.md)\n- [Skill Error Report API](references/skill-error-report-api.md)\n- [UpKuaJing homepage](https://www.upkuajing.com)\n- [UpKuaJing developer platform](https://developer.upkuajing.com/)\n- [UpKuaJing OpenAPI pricing](https://www.upkuajing.com/web/openapi/price.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with shell commands and JSON API results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Education queries return paginated JSON records with billing metadata and request identifiers.]\n\n## Skill Version(s):\n\n1.0.4 (source: frontmatter and release evidence)\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 v1.0.4:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.3: 9 files, 15859 bytes\n\nFiles: references/person-education-list-api.md (1470b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_education_list.py (1598b), scripts/version_check.py (4933b), skill-card.md (2707b), SKILL.md (7535b), _meta.json (150b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: global-company-person-education\ndescription: \"Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring.\\n\\n Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation\"\nmetadata: {\"version\":\"1.0.3\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n## Fees\n\n**All API calls incur fees**, different interfaces have different billing methods.\n\n**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)\nOr use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)\n\n### Query Billing Rules\n\nBilled by **number of calls**, each call returns one page of education records:\n- Each API call incurs a fee\n- Use `--cursor` to get additional pages (each page is a separate call)\n- **Before execution:**\n  1. Inform user that this query will incur a fee\n  2. Stop, wait for explicit user confirmation in a separate message, then execute script\n\n### Fee Confirmation Principle\n\n**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**\n\n## Workflow\n\n### Decision Guide\n\n| User Intent | Use API |\n|-------------|---------|\n| \"Find education history of person H_67890\" | Education History List Query |\n\n## Usage Examples\n\n### Query Education History List\n\n**User request**: \"Find education history of person H_67890\"\n```bash\npython scripts/person_education_list.py --hid H_67890\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'\n```\n\n## Error Handling\n\n- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file\n- **Insufficient balance**: Guide user to top up\n- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess\n\n### API Documentation Reference\n\n- Education History List: Check [references/person-education-list-api.md](references/person-education-list-api.md)\n\n## Best Practices\n\n1. **Check API documentation**:\n   - **Before executing queries, must first check the corresponding API reference documentation**\n   - Check [references/person-education-list-api.md](references/person-education-list-api.md)\n   - Do not guess parameter names, get accurate parameter names and formats from documentation\n\n2. **Pagination**:\n   - When the response returns a non-empty `cursor`, more data is available\n   - Pass the `cursor` value to get the next page\n   - An empty `cursor` means there is no more data\n\n3. **Cross-skill usage**:\n   - The `sid` (school ID) from education results can be used with **global-company-person-school-detail** to look up detailed school information including name, location, and website\n\n## Notes\n- Education records use `hid` as the person unique identifier; `sid` is the school identifier\n- `degrees` is an array of academic degrees; `majors` and `minors` are arrays of study fields\n- File paths use forward slashes on all platforms\n- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language\n- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information\n- **Do not** guess parameter names, get accurate parameter names and formats from documentation\n\n## Related Skills\n\nOther UpKuaJing skills you might find useful:\n\n- global-company-search — Search companies from the global company database\n- global-company-person-search — Search people from the global company database\n- global-company-shareholder — Query shareholder list from the global company database\n- global-company-employee — Query employee list from the global company database\n- global-company-person-colleague — Query colleague list from the global company database\n- global-company-person-alumni — Query alumni list from the global company database\n- global-company-person-experience — Query work experience list from the global company database\n- global-company-person-school-detail — Query school detail from the global company database\n- linkedin-person-search — Search people from LinkedIn data\n- linkedin-company-search — Search companies from LinkedIn data\n- upkuajing-global-company-people-search — Unified company and people search across all sources\n- upkuajing-customs-trade-company-search — Search customs trade companies\n- upkuajing-contact-info-validity-check — Check contact info validity\n- phone-validity-check — Check phone number validity\n- email-validity-check — Check email address validity\n- domain-validity-check — Check domain validity and security\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1784192449874\n}\n\nFile v1.0.3:references/person-education-list-api.md\n\n# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/depth_company/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nVerifies overseas candidates' education history, including schools attended, degrees, majors, minors, GPA, and summaries, through the UpKuaJing API. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[upkuajing](https://clawhub.ai/user/upkuajing) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nRecruiters, HR teams, and hiring managers use this skill to validate applicant education histories during pre-employment screening, credential checks, and talent assessment workflows. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Candidate or person identifiers are sent to UpKuaJing's paid API. <br>\nMitigation: Use the skill only when the organization is authorized to submit those identifiers to UpKuaJing and the user has confirmed the paid query. <br>\nRisk: The API key is stored locally in ~/.upkuajing/.env. <br>\nMitigation: Avoid displaying the file contents in chat or logs and use organizational secret-management controls for production deployments. <br>\nRisk: Each query and pagination request may incur fees or require account top-up. <br>\nMitigation: Confirm paid API calls and top-up actions explicitly before execution, and check current pricing through the documented UpKuaJing pricing flow. <br>\nRisk: Runtime dependency versions are not pinned beyond a lower bound. <br>\nMitigation: Pin dependencies in managed production environments if reproducible installs or stricter supply-chain controls are required. <br>\n\n\n## Reference(s): <br>\n- [Education History List API Reference](references/person-education-list-api.md) <br>\n- [UpKuaJing Homepage](https://www.upkuajing.com) <br>\n- [UpKuaJing Developer Platform](https://developer.upkuajing.com/) <br>\n- [UpKuaJing OpenAPI Pricing](https://www.upkuajing.com/web/openapi/price.html) <br>\n- [ClawHub Skill Listing](https://clawhub.ai/upkuajing/skills/global-company-person-education) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, JSON, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with shell commands and JSON API responses] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Results may include paginated education records and fee information returned by the UpKuaJing API.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: frontmatter and release evidence) <br>\n\n## Ethical Considerations: <br>\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. <br>\n\nFile v1.0.3:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.2: 9 files, 15908 bytes\n\nFiles: references/person-education-list-api.md (1470b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_education_list.py (1598b), scripts/version_check.py (4933b), skill-card.md (2845b), SKILL.md (7535b), _meta.json (150b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: global-company-person-education\ndescription: \"Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring.\\n\\n Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation\"\nmetadata: {\"version\":\"1.0.2\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n## Fees\n\n**All API calls incur fees**, different interfaces have different billing methods.\n\n**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)\nOr use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)\n\n### Query Billing Rules\n\nBilled by **number of calls**, each call returns one page of education records:\n- Each API call incurs a fee\n- Use `--cursor` to get additional pages (each page is a separate call)\n- **Before execution:**\n  1. Inform user that this query will incur a fee\n  2. Stop, wait for explicit user confirmation in a separate message, then execute script\n\n### Fee Confirmation Principle\n\n**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**\n\n## Workflow\n\n### Decision Guide\n\n| User Intent | Use API |\n|-------------|---------|\n| \"Find education history of person H_67890\" | Education History List Query |\n\n## Usage Examples\n\n### Query Education History List\n\n**User request**: \"Find education history of person H_67890\"\n```bash\npython scripts/person_education_list.py --hid H_67890\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'\n```\n\n## Error Handling\n\n- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file\n- **Insufficient balance**: Guide user to top up\n- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess\n\n### API Documentation Reference\n\n- Education History List: Check [references/person-education-list-api.md](references/person-education-list-api.md)\n\n## Best Practices\n\n1. **Check API documentation**:\n   - **Before executing queries, must first check the corresponding API reference documentation**\n   - Check [references/person-education-list-api.md](references/person-education-list-api.md)\n   - Do not guess parameter names, get accurate parameter names and formats from documentation\n\n2. **Pagination**:\n   - When the response returns a non-empty `cursor`, more data is available\n   - Pass the `cursor` value to get the next page\n   - An empty `cursor` means there is no more data\n\n3. **Cross-skill usage**:\n   - The `sid` (school ID) from education results can be used with **global-company-person-school-detail** to look up detailed school information including name, location, and website\n\n## Notes\n- Education records use `hid` as the person unique identifier; `sid` is the school identifier\n- `degrees` is an array of academic degrees; `majors` and `minors` are arrays of study fields\n- File paths use forward slashes on all platforms\n- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language\n- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information\n- **Do not** guess parameter names, get accurate parameter names and formats from documentation\n\n## Related Skills\n\nOther UpKuaJing skills you might find useful:\n\n- global-company-search — Search companies from the global company database\n- global-company-person-search — Search people from the global company database\n- global-company-shareholder — Query shareholder list from the global company database\n- global-company-employee — Query employee list from the global company database\n- global-company-person-colleague — Query colleague list from the global company database\n- global-company-person-alumni — Query alumni list from the global company database\n- global-company-person-experience — Query work experience list from the global company database\n- global-company-person-school-detail — Query school detail from the global company database\n- linkedin-person-search — Search people from LinkedIn data\n- linkedin-company-search — Search companies from LinkedIn data\n- upkuajing-global-company-people-search — Unified company and people search across all sources\n- upkuajing-customs-trade-company-search — Search customs trade companies\n- upkuajing-contact-info-validity-check — Check contact info validity\n- phone-validity-check — Check phone number validity\n- email-validity-check — Check email address validity\n- domain-validity-check — Check domain validity and security\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1784183140533\n}\n\nFile v1.0.2:references/person-education-list-api.md\n\n# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/depth_company/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结\n\nFile v1.0.2:skill-card.md\n\n## Description: <br>\nVerifies overseas candidates' education history through the UpKuaJing Open Platform API, including schools, degrees, majors, minors, and GPA data. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[upkuajing](https://clawhub.ai/user/upkuajing) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nRecruiters, HR teams, and hiring managers use this skill to check a candidate's education records by person identifier during background verification and qualification review. Because the skill handles hiring-related personal data through a paid third-party API, users should confirm authority, consent, and billing before running queries. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends candidate education identifiers to a third-party paid API for hiring-related background checks. <br>\nMitigation: Use it only when you have legal authority and candidate consent for the requested verification. <br>\nRisk: The API key may be stored locally in ~/.upkuajing/.env. <br>\nMitigation: Restrict access to the file, avoid sharing its contents, and rotate the key if exposure is suspected. <br>\nRisk: Queries and top-up actions can incur fees. <br>\nMitigation: Confirm pricing and get explicit approval before each billable API call or payment flow. <br>\nRisk: Request and response logging can record personal data or account details if enabled. <br>\nMitigation: Keep logging disabled unless logs are protected with appropriate access controls and retention limits. <br>\nRisk: The skill performs update checks against the UpKuaJing API. <br>\nMitigation: Review this network behavior before use in restricted environments and monitor the local version cache if enabled. <br>\n\n\n## Reference(s): <br>\n- [Education History List API Reference](references/person-education-list-api.md) <br>\n- [UpKuaJing Homepage](https://www.upkuajing.com) <br>\n- [UpKuaJing Open Platform](https://developer.upkuajing.com/) <br>\n- [UpKuaJing API Pricing](https://www.upkuajing.com/web/openapi/price.html) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [JSON, Shell commands, Configuration, Guidance] <br>\n**Output Format:** [JSON API responses with concise natural-language guidance] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires UPKUAJING_API_KEY; billable calls return fee details and paginated education records.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: SKILL.md metadata and server release metadata) <br>\n\n## Ethical Considerations: <br>\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. <br>\n\nFile v1.0.2:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.1: 9 files, 15719 bytes\n\nFiles: references/person-education-list-api.md (1470b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_education_list.py (1598b), scripts/version_check.py (4933b), skill-card.md (2576b), SKILL.md (7296b), _meta.json (150b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: global-company-person-education\ndescription: Official skill for upkuajing (跨境魔方). Query education history list (教育经历列表) from the global company database (全球企业库). Get person education background including schools, degrees, majors, and GPAs, with cursor-based pagination.\nmetadata: {\"version\":\"1.0.1\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n## Fees\n\n**All API calls incur fees**, different interfaces have different billing methods.\n\n**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)\nOr use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)\n\n### Query Billing Rules\n\nBilled by **number of calls**, each call returns one page of education records:\n- Each API call incurs a fee\n- Use `--cursor` to get additional pages (each page is a separate call)\n- **Before execution:**\n  1. Inform user that this query will incur a fee\n  2. Stop, wait for explicit user confirmation in a separate message, then execute script\n\n### Fee Confirmation Principle\n\n**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**\n\n## Workflow\n\n### Decision Guide\n\n| User Intent | Use API |\n|-------------|---------|\n| \"Find education history of person H_67890\" | Education History List Query |\n\n## Usage Examples\n\n### Query Education History List\n\n**User request**: \"Find education history of person H_67890\"\n```bash\npython scripts/person_education_list.py --hid H_67890\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'\n```\n\n## Error Handling\n\n- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file\n- **Insufficient balance**: Guide user to top up\n- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess\n\n### API Documentation Reference\n\n- Education History List: Check [references/person-education-list-api.md](references/person-education-list-api.md)\n\n## Best Practices\n\n1. **Check API documentation**:\n   - **Before executing queries, must first check the corresponding API reference documentation**\n   - Check [references/person-education-list-api.md](references/person-education-list-api.md)\n   - Do not guess parameter names, get accurate parameter names and formats from documentation\n\n2. **Pagination**:\n   - When the response returns a non-empty `cursor`, more data is available\n   - Pass the `cursor` value to get the next page\n   - An empty `cursor` means there is no more data\n\n3. **Cross-skill usage**:\n   - The `sid` (school ID) from education results can be used with **global-company-person-school-detail** to look up detailed school information including name, location, and website\n\n## Notes\n- Education records use `hid` as the person unique identifier; `sid` is the school identifier\n- `degrees` is an array of academic degrees; `majors` and `minors` are arrays of study fields\n- File paths use forward slashes on all platforms\n- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language\n- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information\n- **Do not** guess parameter names, get accurate parameter names and formats from documentation\n\n## Related Skills\n\nOther UpKuaJing skills you might find useful:\n\n- global-company-search — Search companies from the global company database\n- global-company-person-search — Search people from the global company database\n- global-company-shareholder — Query shareholder list from the global company database\n- global-company-employee — Query employee list from the global company database\n- global-company-person-colleague — Query colleague list from the global company database\n- global-company-person-alumni — Query alumni list from the global company database\n- global-company-person-experience — Query work experience list from the global company database\n- global-company-person-school-detail — Query school detail from the global company database\n- linkedin-person-search — Search people from LinkedIn data\n- linkedin-company-search — Search companies from LinkedIn data\n- upkuajing-global-company-people-search — Unified company and people search across all sources\n- upkuajing-customs-trade-company-search — Search customs trade companies\n- upkuajing-contact-info-validity-check — Check contact info validity\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1783677004504\n}\n\nFile v1.0.1:references/person-education-list-api.md\n\n# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/depth_company/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结\n\nFile v1.0.1:skill-card.md\n\n## Description: <br>\nQueries UpKuaJing's global company database for a person's education history by person ID, including schools, degrees, majors, GPAs, and paginated results. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[upkuajing](https://clawhub.ai/user/upkuajing) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nRecruiters, HR teams, hiring managers, and agents use this skill to retrieve education records for a known person ID from the UpKuaJing global company database. It supports candidate screening and background review workflows where school, degree, major, GPA, and pagination details are needed. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill stores the UpKuaJing API key in plaintext under ~/.upkuajing. <br>\nMitigation: Use a scoped key where possible, restrict filesystem access to the account profile, and avoid displaying or sharing the .env file contents. <br>\nRisk: The skill uses a paid API and includes account and payment-order flows. <br>\nMitigation: Require explicit user review before fee-bearing queries, account actions, or top-up order creation. <br>\nRisk: The skill performs an automatic version-check network call with local persistence. <br>\nMitigation: Review this behavior before deployment and disable or remove it in sensitive environments. <br>\n\n\n## Reference(s): <br>\n- [Education History List API Reference](references/person-education-list-api.md) <br>\n- [UpKuaJing Homepage](https://www.upkuajing.com) <br>\n- [UpKuaJing Open Platform](https://developer.upkuajing.com/) <br>\n- [UpKuaJing OpenAPI Pricing](https://www.upkuajing.com/web/openapi/price.html) <br>\n- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-education) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [API Calls, Shell commands, Configuration instructions, Guidance] <br>\n**Output Format:** [JSON responses with Markdown guidance and inline shell commands] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires an UpKuaJing API key; education results are cursor-paginated and API calls may incur fees.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release evidence and skill metadata) <br>\n\n## Ethical Considerations: <br>\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. <br>\n\nFile v1.0.1:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.0: 9 files, 15665 bytes\n\nFiles: references/person-education-list-api.md (1456b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_education_list.py (1584b), scripts/version_check.py (4933b), skill-card.md (2438b), SKILL.md (7296b), _meta.json (150b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: global-company-person-education\ndescription: Official skill for upkuajing (跨境魔方). Query education history list (教育经历列表) from the global company database (全球企业库). Get person education background including schools, degrees, majors, and GPAs, with cursor-based pagination.\nmetadata: {\"version\":\"1.0.0\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n## Fees\n\n**All API calls incur fees**, different interfaces have different billing methods.\n\n**Latest pricing**: Users can visit [Detailed Price Description](https://www.upkuajing.com/web/openapi/price.html)\nOr use: `python scripts/auth.py --price_info` (returns complete pricing for all interfaces)\n\n### Query Billing Rules\n\nBilled by **number of calls**, each call returns one page of education records:\n- Each API call incurs a fee\n- Use `--cursor` to get additional pages (each page is a separate call)\n- **Before execution:**\n  1. Inform user that this query will incur a fee\n  2. Stop, wait for explicit user confirmation in a separate message, then execute script\n\n### Fee Confirmation Principle\n\n**Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.**\n\n## Workflow\n\n### Decision Guide\n\n| User Intent | Use API |\n|-------------|---------|\n| \"Find education history of person H_67890\" | Education History List Query |\n\n## Usage Examples\n\n### Query Education History List\n\n**User request**: \"Find education history of person H_67890\"\n```bash\npython scripts/person_education_list.py --hid H_67890\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'\n```\n\n## Error Handling\n\n- **API key invalid/non-existent**: Check `UPKUAJING_API_KEY` in `~/.upkuajing/.env` file\n- **Insufficient balance**: Guide user to top up\n- **Invalid parameters**: **Must first check the corresponding API documentation in references/ directory**, get correct parameter names and formats from documentation, do not guess\n\n### API Documentation Reference\n\n- Education History List: Check [references/person-education-list-api.md](references/person-education-list-api.md)\n\n## Best Practices\n\n1. **Check API documentation**:\n   - **Before executing queries, must first check the corresponding API reference documentation**\n   - Check [references/person-education-list-api.md](references/person-education-list-api.md)\n   - Do not guess parameter names, get accurate parameter names and formats from documentation\n\n2. **Pagination**:\n   - When the response returns a non-empty `cursor`, more data is available\n   - Pass the `cursor` value to get the next page\n   - An empty `cursor` means there is no more data\n\n3. **Cross-skill usage**:\n   - The `sid` (school ID) from education results can be used with **global-company-person-school-detail** to look up detailed school information including name, location, and website\n\n## Notes\n- Education records use `hid` as the person unique identifier; `sid` is the school identifier\n- `degrees` is an array of academic degrees; `majors` and `minors` are arrays of study fields\n- File paths use forward slashes on all platforms\n- **Prohibit outputting technical parameter format**: Do not display code-style parameters in responses, convert to natural language\n- **Do not** estimate or guess per-call fees — use `python scripts/auth.py --price_info` to get accurate pricing information\n- **Do not** guess parameter names, get accurate parameter names and formats from documentation\n\n## Related Skills\n\nOther UpKuaJing skills you might find useful:\n\n- global-company-search — Search companies from the global company database\n- global-company-person-search — Search people from the global company database\n- global-company-shareholder — Query shareholder list from the global company database\n- global-company-employee — Query employee list from the global company database\n- global-company-person-colleague — Query colleague list from the global company database\n- global-company-person-alumni — Query alumni list from the global company database\n- global-company-person-experience — Query work experience list from the global company database\n- global-company-person-school-detail — Query school detail from the global company database\n- linkedin-person-search — Search people from LinkedIn data\n- linkedin-company-search — Search companies from LinkedIn data\n- upkuajing-global-company-people-search — Unified company and people search across all sources\n- upkuajing-customs-trade-company-search — Search customs trade companies\n- upkuajing-contact-info-validity-check — Check contact info validity\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1783671308892\n}\n\nFile v1.0.0:references/person-education-list-api.md\n\n# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结\n\nFile v1.0.0:skill-card.md\n\n## Description: <br>\nQueries UpKuaJing's global company database for a person's education history, including schools, degrees, majors, minors, GPAs, summaries, and cursor-based pagination. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[upkuajing](https://clawhub.ai/user/upkuajing) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nRecruiters, HR teams, hiring managers, and agents supporting hiring workflows use this skill to retrieve education-history records by person ID for candidate screening, academic background review, and talent evaluation. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill sends queried person identifiers to UpKuaJing and retrieves education-history data. <br>\nMitigation: Install and use it only when the user trusts UpKuaJing with those identifiers and has an appropriate basis for the lookup. <br>\nRisk: API calls and top-up actions may cost money. <br>\nMitigation: Confirm any paid query or top-up action with the user before running the scripts. <br>\nRisk: The API key may be stored in ~/.upkuajing/.env. <br>\nMitigation: Keep the file private and avoid pasting, displaying, or logging its contents. <br>\n\n\n## Reference(s): <br>\n- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-education) <br>\n- [UpKuaJing Homepage](https://www.upkuajing.com) <br>\n- [UpKuaJing Open Platform](https://developer.upkuajing.com/) <br>\n- [UpKuaJing OpenAPI Pricing](https://www.upkuajing.com/web/openapi/price.html) <br>\n- [Education History List API Reference](references/person-education-list-api.md) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with shell commands and JSON API results] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires Python and UPKUAJING_API_KEY; each successful lookup returns education records and fee information when provided by the API.] <br>\n\n## Skill Version(s): <br>\n1.0.0 (source: server release and skill metadata) <br>\n\n## Ethical Considerations: <br>\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. <br>\n\nFile v1.0.0:requirements.txt\n\nhttpx>=0.23.0","readmeExcerpt":"Skill: Fetch personal academic records from global databases via individual ID lookup queries. Extract complete educational profiles covering attended institutions,awarded degrees, majors and GPA metrics.Recruiters, HR teams and hiring managers validate applicant education histories, assess candidate credentials anddeliver data-backed hiring judgements. Streamline pre-employment screening, formal background verificat","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"cat ~/.upkuajing/.env"},{"language":"text","snippet":"UPKUAJING_API_KEY=your_api_key_here"},{"language":"bash","snippet":"python scripts/error_report.py --params '{\"requestPath\":\"/agent/search/depth_company/person/education/list\",\"requestId\":\"f47ac10b58cc4372a5670e02b2c3d479\",\"context\":\"Education history query failed with a server error\"}'"},{"language":"bash","snippet":"python scripts/person_education_list.py --hid H_67890"},{"language":"bash","snippet":"python scripts/person_education_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'"},{"language":"bash","snippet":"cat ~/.upkuajing/.env"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: global-company-person-education\ndescription: \"Verify overseas candidates’ education history including degrees, majors and GPA. Help HR teams run background checks and select qualified applicants for hiring.\\n\\n Trigger: educational background verification, candidate qualification assessment, overseas applicant screening, GPA check, hiring background validation\"\nmetadata: {\"version\":\"1.0.4\",\"homepage\":\"https://www.upkuajing.com\",\"clawdbot\":{\"emoji\":\"📚\",\"requires\":{\"bins\":[\"python\"],\"env\":[\"UPKUAJING_API_KEY\"]},\"primaryEnv\":\"UPKUAJING_API_KEY\"}}\n---\n\n# Global Company Person Education Query\n\nQuery education history data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person education history from UpKuaJing's global company database. Given a person ID (hid), it returns the list of education records including schools attended, degrees obtained, majors, minors, and GPAs.\n\n## Running Scripts\n\n### Environment Setup\n\n1. **Check Python**: `python --version`\n2. **Install dependencies**: `pip install -r requirements.txt`\n\nScript directory: `scripts/*.py`\nRun example: `python scripts/*.py`\n\n**Important**: Always use direct script invocation like `python scripts/person_education_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_education_list.py`\n\n### Education History List Query (`person_education_list.py`)\n- **Return granularity**: Each education record as one record\n- **Use cases**: View a person's education background, find out where someone studied\n- **Examples**:\n  - \"Find education history of person H_67890\"\n  - \"Get more education records using the next page cursor\"\n- **Parameters**: See [Education History List API](references/person-education-list-api.md)\n\n## API Key and Top-up\n\nThis skill requires an API key. The API key is stored in the `~/.upkuajing/.env` file:\n```bash\ncat ~/.upkuajing/.env\n```\n**Example file content**:\n```\nUPKUAJING_API_KEY=your_api_key_here\n```\n### **API Key Not Set**\nFirst check if the `~/.upkuajing/.env` file has UPKUAJING_API_KEY;\nIf UPKUAJING_API_KEY is not set, prompt the user to choose:\n1. User has one: User provides it (manually add to ~/.upkuajing/.env file)\n2. User doesn't have one: You can apply using the interface (`auth.py --new_key`), the new key will be automatically saved to ~/.upkuajing/.env\nWait for user selection;\n\n### **Account Top-up**\nWhen API response indicates insufficient balance, explain and guide user to top up:\n1. Create top-up order (`auth.py --new_rec_order`)\n2. Based on order response, send payment page URL to user, guide user to open URL and pay, user confirms after successful payment;\n\n### **Get Account Information**\nUse this script to get account information for UPKUAJING_API_KEY: `auth.py --account_info`\n\n## API Key and UpKuaJing Account\n- Newly applied API key: Register and login at [UpKuaJing Open Platform](https://developer.upkuajing.com/), then bind account\n\n### **Report Ski"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-education\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1787563055185\n}"},{"path":"references/person-education-list-api.md","content":"# 全球企业库教育经历列表 API 参考\n\n> 根据人物ID获取某人的教育经历列表，支持游标翻页。\n> 接口路径：`POST /agent/search/depth_company/person/education/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| cursor | string | 否 | 分页游标，首次请求不传，翻页时传入上一次响应返回的cursor |\n| limit | integer | 否 | 每页条数，默认20 |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：响应码，0 表示成功\n- msg（string）：响应消息\n- data：教育经历列表数据（见下）\n- fee：计费信息（apiCost 本次扣费、accountBalance 账户余额、uuid 调用标识）\n\n### data 字段\n\n- cursor（string）：下一页游标，为空表示无更多数据\n- list（array）：教育经历列表\n\n### list 教育经历字段\n\n- hid（string）：人物ID\n- sid（string）：学校ID\n- startDate（integer）：开始时间（秒级时间戳）\n- endDate（integer）：结束时间（秒级时间戳）\n- degrees（array[string]）：学业程度列表\n- majors（array[string]）：专业列表\n- minors（array[string]）：辅修科目列表\n- gpa（string）：平均学分绩点\n- summary（string）：总结"},{"path":"references/skill-error-report-api.md","content":"# Agent调用Skill异常上报 API 参考\n\n> 上报 Agent 调用 Skill 异常，用于平台侧问题追踪与优化。异常上报不产生查询费用。\n> 接口路径：`POST /agent/skill/error/report`\n> 鉴权：需要 Bearer 令牌（UPKUAJING_API_KEY）\n\n## python脚本参数\n\n- `--params`：JSON格式的上报参数（必填）\n- 未传 `skillId`/`skillVersion` 时，脚本会自动从当前 Skill 目录名与 SKILL.md 读取并填充\n- 必填参数：`skillId`、`skillVersion`、`requestId`、`requestPath`、`context`；其中 `requestId` 从出问题的请求响应（ApiResp.requestId）中获取\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| skillId | string | 是 | Skill 标识（最大128字符），如\"customs-analysis-area\" |\n| skillVersion | string | 是 | Skill 版本（最大32字符） |\n| agentName | string | 否 | Agent 名称（最大128字符） |\n| modelName | string | 否 | 模型名称（最大128字符） |\n| requestPath | string | 是 | 出问题的站内接口路径，以 / 开头（最大255字符），如\"/agent/customs/analysis/area\" |\n| requestId | string | 是 | 全请求唯一关联号（最大128字符），取失败请求响应中的 requestId |\n| requestTime | long | 否 | 请求发起时间戳（毫秒，≥0） |\n| requestParams | object | 否 | 请求参数（原始入参，敏感字段会自动脱敏；序列化后≤64KB） |\n| responseData | object | 否 | 响应数据（异常发生时的返回内容，敏感字段会自动脱敏；序列化后≤64KB） |\n| durationMs | long | 否 | 本次调用耗时（毫秒，≥0） |\n| context | string | 是 | 异常上下文（堆栈/错误信息，用于定位根因，最大2000字符） |\n\n## 响应数据\n\n### 外层结构\n\n- code（integer）：状态码，0 表示成功\n- msg（string）：提示信息\n- requestId（string）：全请求唯一关联号（32位无横线，与 MDC traceId 同值）\n\n### data 字段\n\n| 字段 | 类型 | 说明 |\n|------|------|------|\n| reportId | long | 上报记录 ID |"},{"path":"skill-card.md","content":"## Description:\n\nQueries UpKuaJing for person-level education history, including attended schools, degrees, majors, minors, GPA, summaries, pagination, fees, and request identifiers.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[upkuajing](https://clawhub.ai/user/upkuajing)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nRecruiters, HR teams, hiring managers, and background-screening workflows can use this skill to retrieve education-history records for a known person ID when validating applicant credentials. Users should obtain appropriate authorization before querying candidate data.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill queries paid education-history data and can expose candidate records.\n\nMitigation: Require human approval before each paid query, confirm a legitimate screening purpose, and avoid printing unnecessary candidate data.\n\nRisk: The skill can read or create a local API key file under ~/.upkuajing/.env.\n\nMitigation: Inject UPKUAJING_API_KEY through a secure secret manager where possible; if a local file is used, restrict file permissions and do not allow the agent to print the file.\n\nRisk: Top-up and payment helper flows can initiate account funding actions.\n\nMitigation: Require separate explicit human approval before any top-up order or payment-page flow.\n\nRisk: Error reports may include request context or candidate-related inputs.\n\nMitigation: Ask for human confirmation before sending error reports and minimize candidate data in the report context.\n\n## Reference(s):\n\n- [Education History List API](references/person-education-list-api.md)\n- [Skill Error Report API](references/skill-error-report-api.md)\n- [UpKuaJing homepage](https://www.upkuajing.com)\n- [UpKuaJing developer platform](https://developer.upkuajing.com/)\n- [UpKuaJing OpenAPI pricing](https://www.upkuajing.com/web/openapi/price.html)\n\n## Skill Output:\n\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance]\n\n**Output Format:** [Markdown guidance with shell commands and JSON API results]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Education queries return paginated JSON records with billing metadata and request identifiers.]\n\n## Skill Version(s):\n\n1.0.4 (source: frontmatter and release evidence)\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."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1602,"uniquenessScore":38,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-12T00:30:01.212Z","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-12T00:30:01.212Z","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-14T22:38:52.585Z","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"}]}}}