[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M75ERCSKAHCWGCG6KMZ4YN4D":3,"skill-same:01M75ERCSKAHCWGCG6KMZ4YN4D":61},{"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":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":38,"commitSha":39,"skillDirectory":40,"forksCount":41,"repositoryHtmlUrl":42,"repositoryHomepageUrl":6,"ownerHtmlUrl":43,"ownerBlogUrl":44,"ownerDescription":45,"updatedAt":46,"install":47,"resources":60},"01M75ERCSKAHCWGCG6KMZ4YN4D","make-pdf-safe",null,"Flatten a PDF into a non-interactive “safe” version by uploading it to the Solutions API, polling until completion, then returning a download URL for the flattened PDF.","javimosch\u002Fopen-claw-skills","javimosch","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F12900508?v=4","01M6D3F2AS6PV75ET9PZ1QGP8J","Javier Leandro Arancibia","01M75B8NCTAJG9WH5YNZH7C3D8",0,"MIT","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fcrossservicesolutions\u002Fmake-pdf-safe\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\r\nname: make-pdf-safe\r\ndescription: Flatten a PDF into a non-interactive “safe” version by uploading it to the Solutions API, polling until completion, then returning a download URL for the flattened PDF.\r\nlicense: MIT\r\ncompatibility:\r\n  agentskills: \">=0.1.0\"\r\nmetadata:\r\n  category: document-security\r\n  tags:\r\n    - pdf\r\n    - flatten\r\n    - sanitize\r\n    - security\r\n    - cross-service-solutions\r\n  provider: Cross-Service-Solutions (Solutions API)\r\nallowed-tools:\r\n  - http\r\n  - files\r\n---\r\n\r\n# make-pdf-safe\r\n\r\n## Purpose\r\nThis skill creates a “safe” PDF by converting the document into a single flattened layer without active functionality. The goal is to reduce risk from interactive PDF features.\r\n\r\nIn practical terms, the output PDF is intended to:\r\n- remove or neutralize interactive elements (e.g., scripts\u002Factions),\r\n- prevent editing of underlying objects\u002Fcontent structure,\r\n- behave like a flattened document layer (similar to a “print” representation).\r\n\r\nThis skill:\r\n1) accepts a PDF file from the user,\r\n2) uploads it to the Solutions API,\r\n3) polls the job status until it is finished,\r\n4) returns the download URL for the “safe” flattened PDF.\r\n\r\n## Credentials\r\nThe API requires an API key used as a Bearer token:\r\n- `Authorization: Bearer \u003CAPI_KEY>`\r\n\r\nHow the user gets an API key:\r\n- https:\u002F\u002Flogin.cross-service-solutions.com\u002Fregister\r\n- Or the user can provide an API key directly.\r\n\r\n**Rule:** never echo or log the API key.\r\n\r\n## API endpoints\r\nBase URL:\r\n- `https:\u002F\u002Fapi.xss-cross-service-solutions.com\u002Fsolutions\u002Fsolutions`\r\n\r\nCreate make-safe job:\r\n- `POST \u002Fapi\u002F41`\r\n- `multipart\u002Fform-data` parameters:\r\n  - `file` — required — PDF file\r\n\r\nGet result by ID:\r\n- `GET \u002Fapi\u002F\u003CID>`\r\n\r\nWhen done, the response contains:\r\n- `output.files[]` with `{ name, path }` where `path` is a downloadable URL.\r\n\r\n## Inputs\r\n### Required\r\n- PDF file (binary)\r\n- API key (string)\r\n\r\n### Optional\r\n- None\r\n\r\n## Output\r\nReturn a structured result:\r\n- `job_id` (number)\r\n- `status` (string)\r\n- `download_url` (string, when done)\r\n- `file_name` (string, when available)\r\n\r\nExample output:\r\n```json\r\n{\r\n  \"job_id\": 4101,\r\n  \"status\": \"done\",\r\n  \"download_url\": \"https:\u002F\u002F...\u002Fsafe.pdf\",\r\n  \"file_name\": \"safe.pdf\"\r\n}\r\n","# make-pdf-safe\r\n\r\n## Purpose\r\nThis skill creates a “safe” PDF by converting the document into a single flattened layer without active functionality. The goal is to reduce risk from interactive PDF features.\r\n\r\nIn practical terms, the output PDF is intended to:\r\n- remove or neutralize interactive elements (e.g., scripts\u002Factions),\r\n- prevent editing of underlying objects\u002Fcontent structure,\r\n- behave like a flattened document layer (similar to a “print” representation).\r\n\r\nThis skill:\r\n1) accepts a PDF file from the user,\r\n2) uploads it to the Solutions API,\r\n3) polls the job status until it is finished,\r\n4) returns the download URL for the “safe” flattened PDF.\r\n\r\n## Credentials\r\nThe API requires an API key used as a Bearer token:\r\n- `Authorization: Bearer \u003CAPI_KEY>`\r\n\r\nHow the user gets an API key:\r\n- https:\u002F\u002Flogin.cross-service-solutions.com\u002Fregister\r\n- Or the user can provide an API key directly.\r\n\r\n**Rule:** never echo or log the API key.\r\n\r\n## API endpoints\r\nBase URL:\r\n- `https:\u002F\u002Fapi.xss-cross-service-solutions.com\u002Fsolutions\u002Fsolutions`\r\n\r\nCreate make-safe job:\r\n- `POST \u002Fapi\u002F41`\r\n- `multipart\u002Fform-data` parameters:\r\n  - `file` — required — PDF file\r\n\r\nGet result by ID:\r\n- `GET \u002Fapi\u002F\u003CID>`\r\n\r\nWhen done, the response contains:\r\n- `output.files[]` with `{ name, path }` where `path` is a downloadable URL.\r\n\r\n## Inputs\r\n### Required\r\n- PDF file (binary)\r\n- API key (string)\r\n\r\n### Optional\r\n- None\r\n\r\n## Output\r\nReturn a structured result:\r\n- `job_id` (number)\r\n- `status` (string)\r\n- `download_url` (string, when done)\r\n- `file_name` (string, when available)\r\n\r\nExample output:\r\n```json\r\n{\r\n  \"job_id\": 4101,\r\n  \"status\": \"done\",\r\n  \"download_url\": \"https:\u002F\u002F...\u002Fsafe.pdf\",\r\n  \"file_name\": \"safe.pdf\"\r\n}\r\n",{"name":5,"license":15,"metadata":24,"description":7,"allowed-tools":33,"compatibility":36},{"tags":25,"category":31,"provider":32},[26,27,28,29,30],"pdf","flatten","sanitize","security","cross-service-solutions","document-security","Cross-Service-Solutions (Solutions API)",[34,35],"http","files",{"agentskills":37},">=0.1.0","main","f9d3fe7cf9ac8f1ea63a0d96e98e1f510a3814db","skills\u002Fcrossservicesolutions\u002Fmake-pdf-safe",1,"https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills","https:\u002F\u002Fgithub.com\u002Fjavimosch","intrane.fr","Building robust, open-source infrastructure for the commons. AI-leveraged, self-hosted, built to last.","2026-06-07 03:34:58",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":59},[49,52,55],{"tool":50,"command":51},"npx","npx skills add javimosch\u002Fopen-claw-skills --skill make-pdf-safe",{"tool":53,"command":54},"bunx","bunx skills add javimosch\u002Fopen-claw-skills --skill make-pdf-safe",{"tool":56,"command":57},"pnpm","pnpm dlx skills add javimosch\u002Fopen-claw-skills --skill make-pdf-safe","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fcrossservicesolutions\u002Fmake-pdf-safe\u002FSKILL.md",true,[],[62,70,77,84,91,98],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":69},"01M778GGXG2VQ0YF31W2MKGMQZ","crowd-prompting","A marketplace where AI agents improve prompts, system instructions, tool descriptions, and other text-based content with domain expertise from real-world operations — and earn tokens for valuable contributions.","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzzadrian\u002Fcrowd-prompting\u002FSKILL.md",[],[],"2026-11-15 14:19:17",{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":76,"publishedAt":69},"01M778G7BH8SBJ9FJ6C3G7CB1K","ceaser","Interact with the Ceaser privacy protocol on Base L2 using the ceaser-mcp MCP tools. This skill uses the ceaser-mcp npm package for ALL operations -- shield, unshield, note management, and protocol queries. All ceaser tool calls use CLI subcommands (npx -y ceaser-mcp \u003Csubcommand>). Ceaser is a privacy-preserving ETH wrapper using Noir\u002FUltraHonk zero-knowledge proofs on Base L2 (chain ID 8453).","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzyra-v21\u002Fceaser\u002FSKILL.md",[],[],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":69},"01M778FYCJQZWFKKX5FYMK3S47","ceaser-send","Fully automated private ETH transfer via Ceaser Protocol on Base L2 using the ceaser-mcp MCP tools. This skill uses the ceaser-mcp npm package for ALL operations -- all ceaser tool calls use CLI subcommands (npx -y ceaser-mcp \u003Csubcommand>). WARNING -- creates observable on-chain links between user wallet and hot wallet (see Privacy Warning). Generates an ephemeral hot wallet with BIP-39 mnemonic recovery, user funds it, agent signs and broadcasts the Shield TX automatically. Exactly one manual step required (funding the hot wallet with ETH). Uses Noir\u002FUltraHonk zero-knowledge proofs.","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzyra-v21\u002Fceaser-send\u002FSKILL.md",[],[],{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":69},"01M778FQQNSEYA3HJKZBPQ4M9Z","dilemm-ai","Compete in DilemmAI, the prisoner's dilemma AI arena at dilemm.ai. Use when an OpenClaw agent wants to create an account, design and submit strategy prompts for their bot, enter matchmaking, analyze historical matches and leaderboards, and iterate on bot strategy. Requires headless browser automation (no API available yet).","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzyori\u002Fdilemm-ai\u002FSKILL.md",[],[],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":69},"01M778FGVZX7QA2TF9BFMM37FY","moldium","Post and manage content on the Moldium blog platform. Triggered by \"post to Moldium\", \"write a blog post\", \"publish an article\", etc.","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzyom45\u002Fmoldium\u002FSKILL.md",[],[],{"skillNo":99,"name":100,"nameZh":6,"description":101,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":69},"01M778F88D8PQ9MQ0KNW2TJ8ZH","arxiv-paper-reviews","Interact with arXiv Crawler API to fetch papers, read reviews, submit comments, search papers, and import papers. Use when working with arXiv papers, fetching paper lists by date\u002Fcategory\u002Finterest, viewing paper details with comments, submitting paper reviews, searching papers by title, or importing papers from arXiv URLs via API at http:\u002F\u002Fweakaccept.top:8000\u002F.","https:\u002F\u002Fgithub.com\u002Fjavimosch\u002Fopen-claw-skills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[],[]]