[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6F9ZP2EDAC50Y5Z5XHNBYYD":3,"skill-same:01M6F9ZP2EDAC50Y5Z5XHNBYYD":87},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":31,"publishedAt":52,"linkOnly":53,"markdownContent":54,"markdownBody":55,"frontMatter":56,"refName":64,"commitSha":65,"skillDirectory":66,"forksCount":67,"repositoryHtmlUrl":68,"repositoryHomepageUrl":69,"ownerHtmlUrl":70,"ownerBlogUrl":6,"ownerDescription":71,"updatedAt":72,"install":73,"resources":86},"01M6F9ZP2EDAC50Y5Z5XHNBYYD","documenso-hello-world",null,"Create a minimal working Documenso example.\nUse when starting a new Documenso integration, testing your setup,\nor learning basic document signing patterns.\nTrigger with phrases like \"documenso hello world\", \"documenso example\",\n\"documenso quick start\", \"simple documenso code\", \"first document\".","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fdocumenso-hello-world\u002FSKILL.md",[18,23,26],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],"documenso","hello world","hello","documenso hello world","world","example","quick","quick start","trigger","io","basic","patterns","testing","edit","write","read","start","code","create","openclaw","2026-11-10 10:12:30",false,"---\nname: documenso-hello-world\ndescription: |\n  Create a minimal working Documenso example.\n  Use when starting a new Documenso integration, testing your setup,\n  or learning basic document signing patterns.\n  Trigger with phrases like \"documenso hello world\", \"documenso example\",\n  \"documenso quick start\", \"simple documenso code\", \"first document\".\nallowed-tools: Read, Write, Edit\nversion: 1.0.0\nlicense: MIT\nauthor: Jeremy Longshore \u003Cjeremy@intentsolutions.io>\ncompatible-with: claude-code, codex, openclaw\ntags: [saas, documenso, testing]\n\n---\n# Documenso Hello World\n\n## Overview\n\nMinimal working example that creates a document, adds a recipient with a signature field, and sends it for signing — all in one script. Uses the Documenso TypeScript SDK (v2 API) with a Python equivalent.\n\n## Prerequisites\n\n- Completed `documenso-install-auth` setup\n- Valid API key in `DOCUMENSO_API_KEY` environment variable\n- A PDF file to upload (or generate a test one below)\n\n## Instructions\n\n### Step 1: Generate a Test PDF (Optional)\n\nIf you don't have a PDF handy:\n\n```bash\nnpm install pdf-lib\n```\n\n```typescript\n\u002F\u002F generate-test-pdf.ts\nimport { PDFDocument, StandardFonts } from \"pdf-lib\";\nimport { writeFileSync } from \"fs\";\n\nasync function createTestPdf() {\n  const pdf = PDFDocument.create();\n  const page = (await pdf).addPage([612, 792]); \u002F\u002F US Letter\n  const font = await (await pdf).embedFont(StandardFonts.Helvetica);\n  page.drawText(\"Please sign below:\", { x: 50, y: 700, size: 16, font });\n  const bytes = await (await pdf).save();\n  writeFileSync(\"test-contract.pdf\", bytes);\n  console.log(\"Created test-contract.pdf\");\n}\ncreateTestPdf();\n```\n\n### Step 2: Complete Signing Workflow (TypeScript)\n\n```typescript\n\u002F\u002F documenso-hello.ts\nimport { Documenso } from \"@documenso\u002Fsdk-typescript\";\nimport { readFileSync } from \"fs\";\n\nasync function main() {\n  const client = new Documenso({\n    apiKey: process.env.DOCUMENSO_API_KEY!,\n  });\n\n  \u002F\u002F 1. Create a document\n  const doc = await client.documents.createV0({\n    title: \"Hello World Contract\",\n  });\n  console.log(`Document created: ID ${doc.documentId}`);\n\n  \u002F\u002F 2. Upload the PDF\n  const pdfBuffer = readFileSync(\"test-contract.pdf\");\n  await client.documents.setFileV0(doc.documentId, {\n    file: new Blob([pdfBuffer], { type: \"application\u002Fpdf\" }),\n  });\n\n  \u002F\u002F 3. Add a recipient (signer)\n  const recipient = await client.documentsRecipients.createV0(doc.documentId, {\n    email: \"signer@example.com\",\n    name: \"Jane Doe\",\n    role: \"SIGNER\",\n  });\n  console.log(`Recipient added: ${recipient.recipientId}`);\n\n  \u002F\u002F 4. Add a signature field at specific coordinates\n  await client.documentsFields.createV0(doc.documentId, {\n    recipientId: recipient.recipientId,\n    type: \"SIGNATURE\",\n    pageNumber: 1,\n    pageX: 50,    \u002F\u002F X position (left offset, percentage-based 0-100)\n    pageY: 80,    \u002F\u002F Y position (top offset, percentage-based 0-100)\n    pageWidth: 30, \u002F\u002F Width as percentage of page\n    pageHeight: 5, \u002F\u002F Height as percentage of page\n  });\n\n  \u002F\u002F 5. Send for signing\n  await client.documents.sendV0(doc.documentId);\n  console.log(\"Document sent for signing!\");\n}\n\nmain().catch(console.error);\n```\n\nRun: `npx tsx documenso-hello.ts`\n\n### Step 3: Python Equivalent\n\n```python\n# documenso_hello.py\nimport os\nfrom documenso_sdk_python import Documenso\n\nclient = Documenso(api_key=os.environ[\"DOCUMENSO_API_KEY\"])\n\n# Create document\ndoc = client.documents.create_v0(title=\"Hello World Contract\")\nprint(f\"Document created: ID {doc.document_id}\")\n\n# Upload PDF\nwith open(\"test-contract.pdf\", \"rb\") as f:\n    client.documents.set_file_v0(doc.document_id, file=f.read())\n\n# Add recipient\nrecipient = client.documents_recipients.create_v0(\n    doc.document_id,\n    email=\"signer@example.com\",\n    name=\"Jane Doe\",\n    role=\"SIGNER\",\n)\n\n# Add signature field\nclient.documents_fields.create_v0(\n    doc.document_id,\n    recipient_id=recipient.recipient_id,\n    type=\"SIGNATURE\",\n    page_number=1,\n    page_x=50,\n    page_y=80,\n    page_width=30,\n    page_height=5,\n)\n\n# Send for signing\nclient.documents.send_v0(doc.document_id)\nprint(\"Document sent for signing!\")\n```\n\n### Step 4: REST API Equivalent (curl)\n\n```bash\n# Create document\nDOC=$(curl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\" \\\n  -F \"title=Hello World Contract\" \\\n  -F \"file=@test-contract.pdf\" | jq -r '.id')\n\n# Add recipient\nRECIP=$(curl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\u002F$DOC\u002Frecipients\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"email\":\"signer@example.com\",\"name\":\"Jane Doe\",\"role\":\"SIGNER\"}' \\\n  | jq -r '.id')\n\n# Send\ncurl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\u002F$DOC\u002Fsend\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\"\n```\n\n## Field Types Reference\n\n| Type | Description | Common Use |\n|------|-------------|------------|\n| `SIGNATURE` | Electronic signature capture | Contract signing |\n| `FREE_SIGNATURE` | Hand-drawn \u002F upload signature | Notarized documents |\n| `INITIALS` | Initials field | Page-by-page acknowledgment |\n| `NAME` | Auto-filled full name | Identity confirmation |\n| `EMAIL` | Auto-filled email address | Contact verification |\n| `DATE` | Date picker \u002F auto-date | Timestamp of signing |\n| `TEXT` | Free text input | Custom fields (title, address) |\n| `NUMBER` | Numeric input | Amounts, quantities |\n| `CHECKBOX` | Boolean check | Terms acceptance |\n| `DROPDOWN` | Select from options | Role selection |\n| `RADIO` | Radio button group | Single-choice options |\n\n## Document Lifecycle\n\n```\nDRAFT → (send) → PENDING → (all sign) → COMPLETED\n                          → (reject)  → REJECTED\n       → (cancel) →                     CANCELLED\n```\n\n## Error Handling\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `401 Unauthorized` | Invalid or missing API key | Verify `DOCUMENSO_API_KEY` is set |\n| `File too large` | PDF exceeds upload limit | Compress PDF or check plan limits |\n| `Invalid field position` | pageX\u002FpageY out of range | Use 0-100 range (percentage-based) |\n| `Recipient exists` | Duplicate email on document | Update existing recipient instead |\n| `Cannot send DRAFT` | Missing required fields | Add at least one recipient + field |\n\n## Resources\n\n- [Documenso Getting Started](https:\u002F\u002Fdocs.documenso.com\u002Fdevelopers)\n- [TypeScript SDK Docs](https:\u002F\u002Fgithub.com\u002Fdocumenso\u002Fsdk-typescript)\n- [API Reference (OpenAPI)](https:\u002F\u002Fopenapi.documenso.com\u002F)\n- [Field Types Documentation](https:\u002F\u002Fdocs.documenso.com\u002Fusers\u002Fdocuments\u002Ffields)\n\n## Next Steps\n\nProceed to `documenso-local-dev-loop` for development workflow setup or `documenso-core-workflow-a` for production document management.\n\n","# Documenso Hello World\n\n## Overview\n\nMinimal working example that creates a document, adds a recipient with a signature field, and sends it for signing — all in one script. Uses the Documenso TypeScript SDK (v2 API) with a Python equivalent.\n\n## Prerequisites\n\n- Completed `documenso-install-auth` setup\n- Valid API key in `DOCUMENSO_API_KEY` environment variable\n- A PDF file to upload (or generate a test one below)\n\n## Instructions\n\n### Step 1: Generate a Test PDF (Optional)\n\nIf you don't have a PDF handy:\n\n```bash\nnpm install pdf-lib\n```\n\n```typescript\n\u002F\u002F generate-test-pdf.ts\nimport { PDFDocument, StandardFonts } from \"pdf-lib\";\nimport { writeFileSync } from \"fs\";\n\nasync function createTestPdf() {\n  const pdf = PDFDocument.create();\n  const page = (await pdf).addPage([612, 792]); \u002F\u002F US Letter\n  const font = await (await pdf).embedFont(StandardFonts.Helvetica);\n  page.drawText(\"Please sign below:\", { x: 50, y: 700, size: 16, font });\n  const bytes = await (await pdf).save();\n  writeFileSync(\"test-contract.pdf\", bytes);\n  console.log(\"Created test-contract.pdf\");\n}\ncreateTestPdf();\n```\n\n### Step 2: Complete Signing Workflow (TypeScript)\n\n```typescript\n\u002F\u002F documenso-hello.ts\nimport { Documenso } from \"@documenso\u002Fsdk-typescript\";\nimport { readFileSync } from \"fs\";\n\nasync function main() {\n  const client = new Documenso({\n    apiKey: process.env.DOCUMENSO_API_KEY!,\n  });\n\n  \u002F\u002F 1. Create a document\n  const doc = await client.documents.createV0({\n    title: \"Hello World Contract\",\n  });\n  console.log(`Document created: ID ${doc.documentId}`);\n\n  \u002F\u002F 2. Upload the PDF\n  const pdfBuffer = readFileSync(\"test-contract.pdf\");\n  await client.documents.setFileV0(doc.documentId, {\n    file: new Blob([pdfBuffer], { type: \"application\u002Fpdf\" }),\n  });\n\n  \u002F\u002F 3. Add a recipient (signer)\n  const recipient = await client.documentsRecipients.createV0(doc.documentId, {\n    email: \"signer@example.com\",\n    name: \"Jane Doe\",\n    role: \"SIGNER\",\n  });\n  console.log(`Recipient added: ${recipient.recipientId}`);\n\n  \u002F\u002F 4. Add a signature field at specific coordinates\n  await client.documentsFields.createV0(doc.documentId, {\n    recipientId: recipient.recipientId,\n    type: \"SIGNATURE\",\n    pageNumber: 1,\n    pageX: 50,    \u002F\u002F X position (left offset, percentage-based 0-100)\n    pageY: 80,    \u002F\u002F Y position (top offset, percentage-based 0-100)\n    pageWidth: 30, \u002F\u002F Width as percentage of page\n    pageHeight: 5, \u002F\u002F Height as percentage of page\n  });\n\n  \u002F\u002F 5. Send for signing\n  await client.documents.sendV0(doc.documentId);\n  console.log(\"Document sent for signing!\");\n}\n\nmain().catch(console.error);\n```\n\nRun: `npx tsx documenso-hello.ts`\n\n### Step 3: Python Equivalent\n\n```python\n# documenso_hello.py\nimport os\nfrom documenso_sdk_python import Documenso\n\nclient = Documenso(api_key=os.environ[\"DOCUMENSO_API_KEY\"])\n\n# Create document\ndoc = client.documents.create_v0(title=\"Hello World Contract\")\nprint(f\"Document created: ID {doc.document_id}\")\n\n# Upload PDF\nwith open(\"test-contract.pdf\", \"rb\") as f:\n    client.documents.set_file_v0(doc.document_id, file=f.read())\n\n# Add recipient\nrecipient = client.documents_recipients.create_v0(\n    doc.document_id,\n    email=\"signer@example.com\",\n    name=\"Jane Doe\",\n    role=\"SIGNER\",\n)\n\n# Add signature field\nclient.documents_fields.create_v0(\n    doc.document_id,\n    recipient_id=recipient.recipient_id,\n    type=\"SIGNATURE\",\n    page_number=1,\n    page_x=50,\n    page_y=80,\n    page_width=30,\n    page_height=5,\n)\n\n# Send for signing\nclient.documents.send_v0(doc.document_id)\nprint(\"Document sent for signing!\")\n```\n\n### Step 4: REST API Equivalent (curl)\n\n```bash\n# Create document\nDOC=$(curl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\" \\\n  -F \"title=Hello World Contract\" \\\n  -F \"file=@test-contract.pdf\" | jq -r '.id')\n\n# Add recipient\nRECIP=$(curl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\u002F$DOC\u002Frecipients\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"email\":\"signer@example.com\",\"name\":\"Jane Doe\",\"role\":\"SIGNER\"}' \\\n  | jq -r '.id')\n\n# Send\ncurl -s -X POST \"https:\u002F\u002Fapp.documenso.com\u002Fapi\u002Fv1\u002Fdocuments\u002F$DOC\u002Fsend\" \\\n  -H \"Authorization: Bearer $DOCUMENSO_API_KEY\"\n```\n\n## Field Types Reference\n\n| Type | Description | Common Use |\n|------|-------------|------------|\n| `SIGNATURE` | Electronic signature capture | Contract signing |\n| `FREE_SIGNATURE` | Hand-drawn \u002F upload signature | Notarized documents |\n| `INITIALS` | Initials field | Page-by-page acknowledgment |\n| `NAME` | Auto-filled full name | Identity confirmation |\n| `EMAIL` | Auto-filled email address | Contact verification |\n| `DATE` | Date picker \u002F auto-date | Timestamp of signing |\n| `TEXT` | Free text input | Custom fields (title, address) |\n| `NUMBER` | Numeric input | Amounts, quantities |\n| `CHECKBOX` | Boolean check | Terms acceptance |\n| `DROPDOWN` | Select from options | Role selection |\n| `RADIO` | Radio button group | Single-choice options |\n\n## Document Lifecycle\n\n```\nDRAFT → (send) → PENDING → (all sign) → COMPLETED\n                          → (reject)  → REJECTED\n       → (cancel) →                     CANCELLED\n```\n\n## Error Handling\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `401 Unauthorized` | Invalid or missing API key | Verify `DOCUMENSO_API_KEY` is set |\n| `File too large` | PDF exceeds upload limit | Compress PDF or check plan limits |\n| `Invalid field position` | pageX\u002FpageY out of range | Use 0-100 range (percentage-based) |\n| `Recipient exists` | Duplicate email on document | Update existing recipient instead |\n| `Cannot send DRAFT` | Missing required fields | Add at least one recipient + field |\n\n## Resources\n\n- [Documenso Getting Started](https:\u002F\u002Fdocs.documenso.com\u002Fdevelopers)\n- [TypeScript SDK Docs](https:\u002F\u002Fgithub.com\u002Fdocumenso\u002Fsdk-typescript)\n- [API Reference (OpenAPI)](https:\u002F\u002Fopenapi.documenso.com\u002F)\n- [Field Types Documentation](https:\u002F\u002Fdocs.documenso.com\u002Fusers\u002Fdocuments\u002Ffields)\n\n## Next Steps\n\nProceed to `documenso-local-dev-loop` for development workflow setup or `documenso-core-workflow-a` for production document management.\n\n",{"name":5,"tags":57,"author":59,"license":15,"version":60,"description":61,"allowed-tools":62,"compatible-with":63},[58,32,44],"saas","Jeremy Longshore \u003Cjeremy@intentsolutions.io>","1.0.0","Create a minimal working Documenso example.\nUse when starting a new Documenso integration, testing your setup,\nor learning basic document signing patterns.\nTrigger with phrases like \"documenso hello world\", \"documenso example\",\n\"documenso quick start\", \"simple documenso code\", \"first document\".\n","Read, Write, Edit","claude-code, codex, openclaw","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fdocumenso-hello-world",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":8,"skillName":5,"commands":74,"prompt":84,"zipAvailable":85},[75,78,81],{"tool":76,"command":77},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill documenso-hello-world",{"tool":79,"command":80},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill documenso-hello-world",{"tool":82,"command":83},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill documenso-hello-world","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fdocumenso-hello-world\u002FSKILL.md",true,[],[88,100,110,119,125,132],{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":96,"publishedAt":52},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[93],{"categoryNo":94,"categoryName":95,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[97,98,99],"model","model hierarchy","model hierarchy skill",{"skillNo":101,"name":102,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":106,"publishedAt":52},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[105],{"categoryNo":94,"categoryName":95,"taxonomyType":21,"taxonomyTypeDesc":22},[107,108,109],"MCP","zoom","zoom mcp",{"skillNo":111,"name":112,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":115,"publishedAt":52},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[116,117,118,108],"sdk","zoom apps sdk","apps",{"skillNo":120,"name":121,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":124,"publishedAt":52},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[121],{"skillNo":126,"name":127,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":131,"publishedAt":52},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[130],{"categoryNo":94,"categoryName":95,"taxonomyType":21,"taxonomyTypeDesc":22},[127],{"skillNo":133,"name":134,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":137,"publishedAt":52},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[134]]