{"id":"d2ded97e-6632-4c23-a830-e129c418b903","entityType":"agent","slug":"clawhub-upkuajing-global-company-person-experience","name":"Run personnel ID searches across global corporate databases to pull employees’ complete academic backgrounds. Retrieve full education credentials includingattended institutions, awarded degrees, majors and official GPA records. Recruiters, HR teams and hi","canonicalUrl":"https://www.xpersona.co/agent/clawhub-upkuajing-global-company-person-experience","canonicalPath":"/agent/clawhub-upkuajing-global-company-person-experience","generatedAt":"2026-10-11T08:45:04.582Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:15:11.732Z","emptyReason":null},"description":"Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks. Trigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff background validation","descriptionLabel":"Source description","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s17304xrt0p2xssnmr7datqzks83gvsr:global-company-person-experience","sourceUrl":"https://clawhub.ai/upkuajing/global-company-person-experience","homepage":"https://clawhub.ai/upkuajing/skills/global-company-person-experience","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/upkuajing/global-company-person-experience","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/upkuajing/skills/global-company-person-experience","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Run personnel ID searches across global corporate databases to pull employees’ complete academic backgrounds. Retrieve full education credentials includingatten"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:15:11.732Z","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-11T06:15:11.732Z","emptyReason":null},"stars":null,"forks":null,"downloads":1136,"packageName":null,"latestVersion":"1.0.4","tractionLabel":"1.1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T06:15:11.714Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T06:15:11.732Z","lastCrawledAt":"2026-10-11T06:15:11.714Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T06:15:11.714Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.4","createdAt":"2026-08-24T09:23:03.833Z","changelog":"updated","fileCount":11,"zipByteSize":19055},{"version":"1.0.3","createdAt":"2026-07-16T09:01:04.503Z","changelog":"updated","fileCount":9,"zipByteSize":16212},{"version":"1.0.2","createdAt":"2026-07-16T06:27:55.342Z","changelog":"updated","fileCount":9,"zipByteSize":16279},{"version":"1.0.1","createdAt":"2026-07-10T09:50:30.250Z","changelog":"updated","fileCount":9,"zipByteSize":16345},{"version":"1.0.0","createdAt":"2026-07-10T08:15:35.952Z","changelog":"updated","fileCount":9,"zipByteSize":15983}]},"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-experience","setupComplexity":"low","setupSteps":["Install using `clawhub skill install s17304xrt0p2xssnmr7datqzks83gvsr:global-company-person-experience` 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-experience 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-experience/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/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-11T08:45:04.579Z"}},"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-experience/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-upkuajing-global-company-person-experience/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-11T06:15:11.732Z","emptyReason":null},"readme":"Skill: Run personnel ID searches across global corporate databases to pull employees’ complete academic backgrounds. Retrieve full education credentials includingattended institutions, awarded degrees, majors and official GPA records. Recruiters, HR teams and hiring managers verify applicants’ education history andassess candidate qualifications to make data-driven hiring decisions. Streamline pre-hire screening, official background verification and end-to-endcomprehensive talent assessment.\n\nOwner: upkuajing\n\nSummary: Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks. Trigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff background validation\n\nTags: applicant:1.0.4, background:1.0.4, career:1.0.4, education:1.0.4, employee data:1.0.4, experience:1.0.4, latest:1.0.4, lookup:1.0.4, people-enrichment:1.0.4, profile:1.0.4, work-history:1.0.4\n\nVersion history:\n\nv1.0.4 | 2026-08-24T09:23:03.833Z | user\n\nupdated\n\nv1.0.3 | 2026-07-16T09:01:04.503Z | user\n\nupdated\n\nv1.0.2 | 2026-07-16T06:27:55.342Z | user\n\nupdated\n\nv1.0.1 | 2026-07-10T09:50:30.250Z | user\n\nupdated\n\nv1.0.0 | 2026-07-10T08:15:35.952Z | user\n\nupdated\n\nArchive index:\n\nArchive v1.0.4: 11 files, 19055 bytes\n\nFiles: references/person-experience-list-api.md (1719b), 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_experience_list.py (2065b), scripts/version_check.py (4933b), skill-card.md (2806b), SKILL.md (9289b), _meta.json (151b)\n\nFile v1.0.4:SKILL.md\n\n---\nname: global-company-person-experience\ndescription: \"Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks.\\n\\nTrigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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/experience/list\",\"requestId\":\"f47ac10b58cc4372a5670e02b2c3d479\",\"context\":\"Work experience 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 work experience 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 work experience of person H_67890\" | Work Experience List Query |\n| \"Find work experience of person H_67890 at company US_12345\" | Work Experience List Query (with --pid) |\n\n## Usage Examples\n\n### Query Work Experience List\n\n**User request**: \"Find work experience of person H_67890\"\n```bash\npython scripts/person_experience_list.py --hid H_67890\n```\n\n**Filter by company**:\n```bash\npython scripts/person_experience_list.py --hid H_67890 --pid US_12345\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_experience_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- Work Experience List: Check [references/person-experience-list-api.md](references/person-experience-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-experience-list-api.md](references/person-experience-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 `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\n   - The `pid` (company ID) from work experience results can be used with **global-company-search** or **global-company-employee** to find more details about the company\n\n## Notes\n- Work experience records use `hid` as the person unique identifier; `pid` is the company identifier\n- `postStatus` indicates employment status: 0-unknown, 1-employed, 2-left, 3-uncertain\n- `endDate` of 0 means \"present\" (currently holds the position)\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-education — Query education history 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-experience\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1787563383833\n}\n\nFile v1.0.4:references/person-experience-list-api.md\n\n# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/depth_company/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\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\nThis skill uses the UpKuaJing Open Platform to query a person's work-experience records by personnel ID; server security evidence notes that the release metadata advertises education verification instead.\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 other authorized users can use this skill to request person work-experience records from UpKuaJing by personnel ID. Reviewers should resolve the documented mismatch between the education-verification release metadata and the artifact behavior before relying on it for screening workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The release metadata advertises education verification, but the artifact queries work-experience records.\n\nMitigation: Confirm the intended data category before use and install only if the needed workflow is employment-history lookup.\n\nRisk: The skill processes personal employment data by personnel ID.\n\nMitigation: Use it only with appropriate authorization and handle returned records under applicable privacy and hiring-screening policies.\n\nRisk: The skill uses UPKUAJING_API_KEY and references ~/.upkuajing/.env.\n\nMitigation: Store the API key with restrictive permissions or a credential manager, and do not print the environment file in agent-visible output.\n\nRisk: API queries and account top-up actions can incur costs.\n\nMitigation: Require explicit user confirmation before paid queries, top-up order creation, or payment-related actions.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-experience)\n- [UpKuaJing Homepage](https://www.upkuajing.com)\n- [UpKuaJing Open Platform](https://developer.upkuajing.com/)\n- [UpKuaJing API Pricing](https://www.upkuajing.com/web/openapi/price.html)\n- [Work Experience List API](references/person-experience-list-api.md)\n- [Skill Error Report API](references/skill-error-report-api.md)\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 responses]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires UPKUAJING_API_KEY; paid API calls may return paginated records, fee information, and request identifiers.]\n\n## Skill Version(s):\n\n1.0.4 (source: server release evidence and skill metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v1.0.4:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.3: 9 files, 16212 bytes\n\nFiles: references/person-experience-list-api.md (1719b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_experience_list.py (1862b), scripts/version_check.py (4933b), skill-card.md (2800b), SKILL.md (8188b), _meta.json (151b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: global-company-person-experience\ndescription: \"Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks.\\n\\nTrigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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 work experience 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 work experience of person H_67890\" | Work Experience List Query |\n| \"Find work experience of person H_67890 at company US_12345\" | Work Experience List Query (with --pid) |\n\n## Usage Examples\n\n### Query Work Experience List\n\n**User request**: \"Find work experience of person H_67890\"\n```bash\npython scripts/person_experience_list.py --hid H_67890\n```\n\n**Filter by company**:\n```bash\npython scripts/person_experience_list.py --hid H_67890 --pid US_12345\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_experience_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- Work Experience List: Check [references/person-experience-list-api.md](references/person-experience-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-experience-list-api.md](references/person-experience-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 `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\n   - The `pid` (company ID) from work experience results can be used with **global-company-search** or **global-company-employee** to find more details about the company\n\n## Notes\n- Work experience records use `hid` as the person unique identifier; `pid` is the company identifier\n- `postStatus` indicates employment status: 0-unknown, 1-employed, 2-left, 3-uncertain\n- `endDate` of 0 means \"present\" (currently holds the position)\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-education — Query education history 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-experience\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1784192464503\n}\n\nFile v1.0.3:references/person-experience-list-api.md\n\n# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/depth_company/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\n- summary（string）：经历总结\n\nFile v1.0.3:skill-card.md\n\n## Description: <br>\nThis skill queries UpKuaJing's global company database for a person's work experience records by personnel ID, with optional filtering by company ID. <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 staff, hiring managers, and analysts can use this skill to retrieve a person's work history from the UpKuaJing global company database. Server security evidence notes that the release advertises education verification, but the artifact behavior is work-experience lookup. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The release metadata advertises education verification, while the artifact queries work-experience records. <br>\nMitigation: Install and use the skill only when the intended task is work-experience lookup, and disclose the mismatch during review before relying on results. <br>\nRisk: Queries and account top-up actions can incur costs. <br>\nMitigation: Require explicit user confirmation in a separate message before any billable query or top-up order. <br>\nRisk: The skill can store the API key in plaintext under ~/.upkuajing/.env. <br>\nMitigation: Prefer a managed secret store or environment variable and avoid writing credentials to local plaintext files when possible. <br>\nRisk: The skill performs a daily version-check call to the provider during API use. <br>\nMitigation: Review outbound network behavior and provider endpoints before deployment in restricted environments. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/upkuajing/skills/global-company-person-experience) <br>\n- [UpKuaJing homepage](https://www.upkuajing.com) <br>\n- [UpKuaJing developer platform](https://developer.upkuajing.com/) <br>\n- [UpKuaJing API pricing](https://www.upkuajing.com/web/openapi/price.html) <br>\n- [Work Experience List API reference](references/person-experience-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 inline shell commands and JSON API results] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires Python and an UPKUAJING_API_KEY; API calls are billable and may return paginated results.] <br>\n\n## Skill Version(s): <br>\n1.0.3 (source: server release, artifact 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.3:requirements.txt\n\nhttpx>=0.23.0\n\nArchive v1.0.2: 9 files, 16279 bytes\n\nFiles: references/person-experience-list-api.md (1719b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_experience_list.py (1862b), scripts/version_check.py (4933b), skill-card.md (2850b), SKILL.md (8188b), _meta.json (151b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: global-company-person-experience\ndescription: \"Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks.\\n\\nTrigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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 work experience 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 work experience of person H_67890\" | Work Experience List Query |\n| \"Find work experience of person H_67890 at company US_12345\" | Work Experience List Query (with --pid) |\n\n## Usage Examples\n\n### Query Work Experience List\n\n**User request**: \"Find work experience of person H_67890\"\n```bash\npython scripts/person_experience_list.py --hid H_67890\n```\n\n**Filter by company**:\n```bash\npython scripts/person_experience_list.py --hid H_67890 --pid US_12345\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_experience_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- Work Experience List: Check [references/person-experience-list-api.md](references/person-experience-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-experience-list-api.md](references/person-experience-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 `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\n   - The `pid` (company ID) from work experience results can be used with **global-company-search** or **global-company-employee** to find more details about the company\n\n## Notes\n- Work experience records use `hid` as the person unique identifier; `pid` is the company identifier\n- `postStatus` indicates employment status: 0-unknown, 1-employed, 2-left, 3-uncertain\n- `endDate` of 0 means \"present\" (currently holds the position)\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-education — Query education history 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-experience\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1784183275342\n}\n\nFile v1.0.2:references/person-experience-list-api.md\n\n# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/depth_company/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\n- summary（string）：经历总结\n\nFile v1.0.2:skill-card.md\n\n## Description: <br>\nQueries employment-history records by person ID from UpKuaJing's global company database, returning company names, titles, employment dates, status, pagination, and fee information. <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, or investigators with proper authorization use this skill to retrieve work experience records for a known person ID, optionally filtered by company ID, for screening or background review. It should not be used for education verification unless a separate education-history skill is selected. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The public description and front matter describe education verification, but the artifact behavior queries employment-history records. <br>\nMitigation: Review the skill before installing and use it only for authorized employment-history lookup workflows. <br>\nRisk: API calls incur fees and pagination can trigger additional paid calls. <br>\nMitigation: Inform the user before each paid query and wait for explicit confirmation before executing. <br>\nRisk: The skill handles API keys and may save a newly issued key in plaintext at ~/.upkuajing/.env. <br>\nMitigation: Store credentials only with user consent, restrict local file access, and avoid exposing the key in responses or logs. <br>\nRisk: The skill can create account top-up orders. <br>\nMitigation: Require user approval before creating a top-up order and direct the user to complete payment themselves. <br>\n\n\n## Reference(s): <br>\n- [Work Experience List API Reference](references/person-experience-list-api.md) <br>\n- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-experience) <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):** [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; API calls are paid and may return paginated results.] <br>\n\n## Skill Version(s): <br>\n1.0.2 (source: server release metadata and SKILL.md 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, 16345 bytes\n\nFiles: references/person-experience-list-api.md (1719b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_experience_list.py (1862b), scripts/version_check.py (4933b), skill-card.md (3207b), SKILL.md (7927b), _meta.json (151b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: global-company-person-experience\ndescription: Official skill for upkuajing (跨境魔方). Query work experience list (工作经历列表) from the global company database (全球企业库). Get person work history including company names, job titles, and employment dates, 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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 work experience 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 work experience of person H_67890\" | Work Experience List Query |\n| \"Find work experience of person H_67890 at company US_12345\" | Work Experience List Query (with --pid) |\n\n## Usage Examples\n\n### Query Work Experience List\n\n**User request**: \"Find work experience of person H_67890\"\n```bash\npython scripts/person_experience_list.py --hid H_67890\n```\n\n**Filter by company**:\n```bash\npython scripts/person_experience_list.py --hid H_67890 --pid US_12345\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_experience_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- Work Experience List: Check [references/person-experience-list-api.md](references/person-experience-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-experience-list-api.md](references/person-experience-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 `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\n   - The `pid` (company ID) from work experience results can be used with **global-company-search** or **global-company-employee** to find more details about the company\n\n## Notes\n- Work experience records use `hid` as the person unique identifier; `pid` is the company identifier\n- `postStatus` indicates employment status: 0-unknown, 1-employed, 2-left, 3-uncertain\n- `endDate` of 0 means \"present\" (currently holds the position)\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-education — Query education history 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-experience\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1783677030250\n}\n\nFile v1.0.1:references/person-experience-list-api.md\n\n# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/depth_company/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\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 work experience history, including company names, job titles, employment dates, status, and pagination cursors. <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, sales teams, hiring managers, and other authorized users can query a person ID to review career history, verify professional experience, screen candidates, or qualify business contacts. The skill supports optional company filtering and pagination for longer work histories. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Queries use UpKuaJing's paid API and may incur per-call fees. <br>\nMitigation: Confirm paid execution before running a lookup, check current pricing through the documented pricing page or price-info command, and monitor the returned fee and balance information. <br>\nRisk: The skill may store the UpKuaJing API key in plaintext under ~/.upkuajing/.env. <br>\nMitigation: Protect the local account directory, restrict file permissions, avoid sharing logs or screenshots that include the key, and prefer an environment variable when operational policy requires tighter credential handling. <br>\nRisk: Top-up and payment helper flows can return payment URLs. <br>\nMitigation: Review any payment URL and account context before opening it or asking a user to pay. <br>\nRisk: If API logging is enabled, request and response data can be written to local log files. <br>\nMitigation: Keep API logging disabled unless local data retention is acceptable, and review log contents before sharing or archiving them. <br>\nRisk: The skill performs a limited update check against the UpKuaJing service. <br>\nMitigation: Allow outbound network access only where this behavior is expected and review upgrade notices before applying updates. <br>\n\n\n## Reference(s): <br>\n- [Work Experience List API Reference](artifact/references/person-experience-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 Page](https://clawhub.ai/upkuajing/skills/global-company-person-experience) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown guidance with Python shell commands and JSON API responses] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires python and UPKUAJING_API_KEY; work-experience calls use a person ID, optional company ID, and optional pagination cursor.] <br>\n\n## Skill Version(s): <br>\n1.0.1 (source: server release evidence and SKILL.md 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, 15983 bytes\n\nFiles: references/person-experience-list-api.md (1705b), requirements.txt (14b), scripts/auth.py (5860b), scripts/common.py (14567b), scripts/person_experience_list.py (1848b), scripts/version_check.py (4933b), skill-card.md (2437b), SKILL.md (7927b), _meta.json (151b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: global-company-person-experience\ndescription: Official skill for upkuajing (跨境魔方). Query work experience list (工作经历列表) from the global company database (全球企业库). Get person work history including company names, job titles, and employment dates, 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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 work experience 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 work experience of person H_67890\" | Work Experience List Query |\n| \"Find work experience of person H_67890 at company US_12345\" | Work Experience List Query (with --pid) |\n\n## Usage Examples\n\n### Query Work Experience List\n\n**User request**: \"Find work experience of person H_67890\"\n```bash\npython scripts/person_experience_list.py --hid H_67890\n```\n\n**Filter by company**:\n```bash\npython scripts/person_experience_list.py --hid H_67890 --pid US_12345\n```\n\n**Get next page** (use cursor returned from previous response):\n```bash\npython scripts/person_experience_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- Work Experience List: Check [references/person-experience-list-api.md](references/person-experience-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-experience-list-api.md](references/person-experience-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 `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\n   - The `pid` (company ID) from work experience results can be used with **global-company-search** or **global-company-employee** to find more details about the company\n\n## Notes\n- Work experience records use `hid` as the person unique identifier; `pid` is the company identifier\n- `postStatus` indicates employment status: 0-unknown, 1-employed, 2-left, 3-uncertain\n- `endDate` of 0 means \"present\" (currently holds the position)\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-education — Query education history 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-experience\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1783671335952\n}\n\nFile v1.0.0:references/person-experience-list-api.md\n\n# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\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 work history, including company names, job titles, employment dates, and cursor-based pagination by person ID. <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, sales teams, hiring managers, and talent operations users use this skill to retrieve a person's employment history from UpKuaJing by person ID, optionally filtering by company and continuing through paginated results. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Paid API calls can incur charges for each query page. <br>\nMitigation: Inform the user that the query will incur a fee and wait for explicit confirmation before executing paid calls. <br>\nRisk: The UpKuaJing API key is stored locally in ~/.upkuajing/.env. <br>\nMitigation: Keep the local environment file private and do not expose the API key in prompts, logs, or shared outputs. <br>\nRisk: Top-up helpers may return a payment URL. <br>\nMitigation: Review the payment URL before paying and proceed only after the user confirms the top-up flow. <br>\n\n\n## Reference(s): <br>\n- [Work Experience List API Reference](references/person-experience-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- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-experience) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [API Calls, JSON, Shell commands, Configuration instructions, Guidance] <br>\n**Output Format:** [Markdown guidance with inline shell commands and JSON API responses] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Requires Python and UPKUAJING_API_KEY; paid query calls must be confirmed before execution.] <br>\n\n## Skill Version(s): <br>\n1.0.0 (source: server release metadata 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: Run personnel ID searches across global corporate databases to pull employees’ complete academic backgrounds. Retrieve full education credentials includingattended institutions, awarded degrees, majors and official GPA records. Recruiters, HR teams and hiring managers verify applicants’ education history andassess candidate qualifications to make data-driven hiring decisions. Streamline pre-hire screening, off","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/experience/list\",\"requestId\":\"f47ac10b58cc4372a5670e02b2c3d479\",\"context\":\"Work experience query failed with a server error\"}'"},{"language":"bash","snippet":"python scripts/person_experience_list.py --hid H_67890"},{"language":"bash","snippet":"python scripts/person_experience_list.py --hid H_67890 --pid US_12345"},{"language":"bash","snippet":"python scripts/person_experience_list.py --hid H_67890 --cursor 'cursor_string_from_previous_response'"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: global-company-person-experience\ndescription: \"Check overseas staff’s education history via personnel ID. Access their university, degree, major and GPA data to support candidate screening and background checks.\\n\\nTrigger: employee education verification, personnel academic background check, candidate qualification assessment, pre‑hire screening, overseas staff 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 Work Experience Query\n\nQuery work experience data from the global company database (全球企业库) using the UpKuaJing Open Platform API.\n\n## Overview\n\nThis skill provides access to person work experience information from UpKuaJing's global company database. Given a person ID (hid), it returns the list of work experiences with company names, job titles, employment dates, and period status. Optionally filter by company ID (pid) to get only the experience at a specific company.\n\n- The `hid` (person ID) can be obtained from **global-company-person-search** (person search) results\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_experience_list.py`. **Do NOT use** shell compound commands like `cd scripts && python person_experience_list.py`\n\n### Work Experience List Query (`person_experience_list.py`)\n- **Return granularity**: Each work experience as one record\n- **Use cases**: View a person's work history, find out where someone has worked\n- **Examples**:\n  - \"Find work experience of person H_67890\"\n  - \"Find work experience of person H_67890 at company US_12345\"\n  - \"Get more work experience using the next page cursor\"\n- **Parameters**: See [Work Experience List API](references/person-experience-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 In"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn76ywjzma121r2rh959ejsf49834c6x\",\n  \"slug\": \"global-company-person-experience\",\n  \"version\": \"1.0.4\",\n  \"publishedAt\": 1787563383833\n}"},{"path":"references/person-experience-list-api.md","content":"# 全球企业库工作经历列表 API 参考\n\n> 根据人物ID获取某人的历史工作经历列表，支持游标翻页，可选传入公司ID(pid)筛选指定公司的工作经历。\n> 接口路径：`POST /agent/search/depth_company/person/experience/list`\n\n## python脚本参数\n\n- `--hid`：人物ID（必填），如 `H_67890`\n- `--pid`：公司ID（可选），如 `US_12345`，传入则代表查询指定公司的工作经历\n- `--cursor`：分页游标（可选），首次查询不传，翻页时传入上一次响应返回的cursor\n\n## API请求参数\n\n| 参数 | 类型 | 必填 | 说明 |\n|------|------|------|------|\n| hid | string | 是 | 人物ID |\n| pid | 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- pid（string）：公司ID\n- companyName（string）：公司名称\n- titleName（string）：职位名称\n- startDate（integer）：任职开始时间（秒级时间戳）\n- endDate（integer）：任职截止时间（秒级时间戳），0表示至今\n- postStatus（integer）：任职状态：0-未检测，1-在职，2-离职，3-不确定\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\nThis skill uses the UpKuaJing Open Platform to query a person's work-experience records by personnel ID; server security evidence notes that the release metadata advertises education verification instead.\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 other authorized users can use this skill to request person work-experience records from UpKuaJing by personnel ID. Reviewers should resolve the documented mismatch between the education-verification release metadata and the artifact behavior before relying on it for screening workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The release metadata advertises education verification, but the artifact queries work-experience records.\n\nMitigation: Confirm the intended data category before use and install only if the needed workflow is employment-history lookup.\n\nRisk: The skill processes personal employment data by personnel ID.\n\nMitigation: Use it only with appropriate authorization and handle returned records under applicable privacy and hiring-screening policies.\n\nRisk: The skill uses UPKUAJING_API_KEY and references ~/.upkuajing/.env.\n\nMitigation: Store the API key with restrictive permissions or a credential manager, and do not print the environment file in agent-visible output.\n\nRisk: API queries and account top-up actions can incur costs.\n\nMitigation: Require explicit user confirmation before paid queries, top-up order creation, or payment-related actions.\n\n## Reference(s):\n\n- [ClawHub Skill Page](https://clawhub.ai/upkuajing/skills/global-company-person-experience)\n- [UpKuaJing Homepage](https://www.upkuajing.com)\n- [UpKuaJing Open Platform](https://developer.upkuajing.com/)\n- [UpKuaJing API Pricing](https://www.upkuajing.com/web/openapi/price.html)\n- [Work Experience List API](references/person-experience-list-api.md)\n- [Skill Error Report API](references/skill-error-report-api.md)\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 responses]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires UPKUAJING_API_KEY; paid API calls may return paginated records, fee information, and request identifiers.]\n\n## Skill Version(s):\n\n1.0.4 (source: server release evidence and skill metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":null,"editorialQuality":{"score":100,"threshold":65,"status":"thin","wordCount":1629,"uniquenessScore":37,"reasons":["uniqueness-below-45"]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T06:15:11.732Z","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-11T06:15:11.732Z","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-11T08:45:04.582Z","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"}]}}}