[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G8FSZ46VRN48QB9THJSNQN":3,"skill-same:01M6G8FSZ46VRN48QB9THJSNQN":73},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6G8FSZ46VRN48QB9THJSNQN","spool",null,"Threads CLI - Read, post, reply, and search on Meta's Threads using OpenClaw browser tool. Use when the user wants to interact with Threads: posting, reading timeline, viewing profiles, replying to threads, or searching.","kbarbel640-del\u002Fskills","kbarbel640-del","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F255315490?v=4","01M6CJPPQGCCESXMG3K7BBGQ5J","01M6CJPPX2PB2BCZERFVM2C2B3",1,"MIT","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzizi-cat\u002Fspool\u002FSKILL.md",[],[5,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"user","threads","reading","profiles","with","post","cat","posting","use","openclaw","read","tool","timeline","Meta","https","search","browser","github","cli","2026-11-10 10:12:30",false,"---\nname: spool\ndescription: \"Threads CLI - Read, post, reply, and search on Meta's Threads using OpenClaw browser tool. Use when the user wants to interact with Threads: posting, reading timeline, viewing profiles, replying to threads, or searching.\"\nhomepage: https:\u002F\u002Fgithub.com\u002Fzizi-cat\u002Fspool\nmetadata: {\"clawdhub\":{\"emoji\":\"?\"}}\n---\n\n# spool\n\nOpenClaw browser 도구로 Threads (threads.net) 조작하기.\n\n## Prerequisites\n\n### 환경 요구사항\n- OpenClaw with browser tool enabled\n- `openclaw` browser profile\n- Threads 계정 로그인 완료\n\n### Headless 서버인 경우 (GUI 없음)\n\nXvfb 가상 디스플레이 필요:\n\n```bash\n# 1. Xvfb 설치 및 서비스 등록\nsudo apt install -y xvfb\nsudo tee \u002Fetc\u002Fsystemd\u002Fsystem\u002Fxvfb.service \u003C\u003C 'EOF'\n[Unit]\nDescription=X Virtual Frame Buffer\nAfter=network.target\n[Service]\nType=simple\nExecStart=\u002Fusr\u002Fbin\u002FXvfb :99 -screen 0 1920x1080x24\nRestart=always\n[Install]\nWantedBy=multi-user.target\nEOF\nsudo systemctl enable --now xvfb\n\n# 2. OpenClaw Gateway에 DISPLAY 환경변수 추가\nmkdir -p ~\u002F.config\u002Fsystemd\u002Fuser\u002Fopenclaw-gateway.service.d\necho -e '[Service]\\nEnvironment=DISPLAY=:99' > ~\u002F.config\u002Fsystemd\u002Fuser\u002Fopenclaw-gateway.service.d\u002Fdisplay.conf\nsystemctl --user daemon-reload\nsystemctl --user restart openclaw-gateway\n```\n\n### 로그인 (처음 한 번만)\n\n```\nbrowser action=start profile=openclaw\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002Flogin\"\n# 사용자에게 수동 로그인 요청\n```\n\n---\n\n## 사용법\n\n### 1. 타임라인 읽기\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n결과에서 각 게시물의 작성자, 내용, 좋아요\u002F댓글 수 확인 가능.\n\n### 2. 포스팅 (전체 플로우)\n\n**Step 1: 홈으로 이동**\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n**Step 2: \"What's new?\" 버튼 찾아서 클릭**\nsnapshot에서 `\"What's new?\"` 또는 `\"Empty text field\"` 포함된 button의 ref 찾기\n```\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"e14\"}\n```\n(ref는 snapshot마다 다름! 반드시 snapshot에서 확인)\n\n**Step 3: 다이얼로그에서 텍스트 입력**\n```\nbrowser action=snapshot profile=openclaw compact=true\n```\n`textbox` ref 찾아서:\n```\nbrowser action=act profile=openclaw request={\"kind\":\"type\",\"ref\":\"e14\",\"text\":\"포스팅 내용\"}\n```\n\n**Step 4: Post 버튼 클릭**\n```\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"e22\"}\n```\n(Post 버튼 ref도 snapshot에서 확인)\n\n**Step 5: 확인**\n```\nbrowser action=snapshot profile=openclaw compact=true\n```\n→ \"Posted\" 텍스트와 \"View\" 링크가 보이면 성공!\n\n### 3. 프로필 보기\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002F@username\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n### 4. 검색\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002Fsearch?q=검색어\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n### 5. 답글 달기\n\n```\n# 게시물 열기\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002F@user\u002Fpost\u002FPOSTID\"\nbrowser action=snapshot profile=openclaw compact=true\n\n# Reply 버튼 클릭 (ref 확인 후)\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"\u003Creply-ref>\"}\n\n# 텍스트 입력 및 게시 (포스팅과 동일)\n```\n\n---\n\n## 핵심 포인트\n\n1. **snapshot 먼저!** - 모든 작업 전에 snapshot으로 현재 페이지 상태와 ref 확인\n2. **ref는 매번 달라짐** - snapshot 결과에서 항상 새로 찾기\n3. **compact=true** - 토큰 절약을 위해 항상 사용\n4. **targetId 유지** - 같은 탭에서 작업하려면 targetId 파라미터 사용\n5. **포스팅 전 확인** - 사용자에게 내용 확인받고 포스팅\n\n---\n\n## 트러블슈팅\n\n| 문제 | 해결 |\n|------|------|\n| browser 도구 안 됨 | Xvfb 실행 확인, DISPLAY=:99 설정 확인, Gateway 재시작 |\n| 로그인 안 됨 | `\u002Flogin` 페이지로 이동 후 수동 로그인 요청 |\n| ref 못 찾음 | snapshot 다시 찍고 비슷한 텍스트\u002F버튼 찾기 |\n| 포스팅 안 됨 | Post 버튼이 disabled인지 확인 (텍스트 입력 필요) |\n","# spool\n\nOpenClaw browser 도구로 Threads (threads.net) 조작하기.\n\n## Prerequisites\n\n### 환경 요구사항\n- OpenClaw with browser tool enabled\n- `openclaw` browser profile\n- Threads 계정 로그인 완료\n\n### Headless 서버인 경우 (GUI 없음)\n\nXvfb 가상 디스플레이 필요:\n\n```bash\n# 1. Xvfb 설치 및 서비스 등록\nsudo apt install -y xvfb\nsudo tee \u002Fetc\u002Fsystemd\u002Fsystem\u002Fxvfb.service \u003C\u003C 'EOF'\n[Unit]\nDescription=X Virtual Frame Buffer\nAfter=network.target\n[Service]\nType=simple\nExecStart=\u002Fusr\u002Fbin\u002FXvfb :99 -screen 0 1920x1080x24\nRestart=always\n[Install]\nWantedBy=multi-user.target\nEOF\nsudo systemctl enable --now xvfb\n\n# 2. OpenClaw Gateway에 DISPLAY 환경변수 추가\nmkdir -p ~\u002F.config\u002Fsystemd\u002Fuser\u002Fopenclaw-gateway.service.d\necho -e '[Service]\\nEnvironment=DISPLAY=:99' > ~\u002F.config\u002Fsystemd\u002Fuser\u002Fopenclaw-gateway.service.d\u002Fdisplay.conf\nsystemctl --user daemon-reload\nsystemctl --user restart openclaw-gateway\n```\n\n### 로그인 (처음 한 번만)\n\n```\nbrowser action=start profile=openclaw\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002Flogin\"\n# 사용자에게 수동 로그인 요청\n```\n\n---\n\n## 사용법\n\n### 1. 타임라인 읽기\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n결과에서 각 게시물의 작성자, 내용, 좋아요\u002F댓글 수 확인 가능.\n\n### 2. 포스팅 (전체 플로우)\n\n**Step 1: 홈으로 이동**\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n**Step 2: \"What's new?\" 버튼 찾아서 클릭**\nsnapshot에서 `\"What's new?\"` 또는 `\"Empty text field\"` 포함된 button의 ref 찾기\n```\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"e14\"}\n```\n(ref는 snapshot마다 다름! 반드시 snapshot에서 확인)\n\n**Step 3: 다이얼로그에서 텍스트 입력**\n```\nbrowser action=snapshot profile=openclaw compact=true\n```\n`textbox` ref 찾아서:\n```\nbrowser action=act profile=openclaw request={\"kind\":\"type\",\"ref\":\"e14\",\"text\":\"포스팅 내용\"}\n```\n\n**Step 4: Post 버튼 클릭**\n```\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"e22\"}\n```\n(Post 버튼 ref도 snapshot에서 확인)\n\n**Step 5: 확인**\n```\nbrowser action=snapshot profile=openclaw compact=true\n```\n→ \"Posted\" 텍스트와 \"View\" 링크가 보이면 성공!\n\n### 3. 프로필 보기\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002F@username\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n### 4. 검색\n\n```\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002Fsearch?q=검색어\"\nbrowser action=snapshot profile=openclaw compact=true\n```\n\n### 5. 답글 달기\n\n```\n# 게시물 열기\nbrowser action=open profile=openclaw targetUrl=\"https:\u002F\u002Fwww.threads.net\u002F@user\u002Fpost\u002FPOSTID\"\nbrowser action=snapshot profile=openclaw compact=true\n\n# Reply 버튼 클릭 (ref 확인 후)\nbrowser action=act profile=openclaw request={\"kind\":\"click\",\"ref\":\"\u003Creply-ref>\"}\n\n# 텍스트 입력 및 게시 (포스팅과 동일)\n```\n\n---\n\n## 핵심 포인트\n\n1. **snapshot 먼저!** - 모든 작업 전에 snapshot으로 현재 페이지 상태와 ref 확인\n2. **ref는 매번 달라짐** - snapshot 결과에서 항상 새로 찾기\n3. **compact=true** - 토큰 절약을 위해 항상 사용\n4. **targetId 유지** - 같은 탭에서 작업하려면 targetId 파라미터 사용\n5. **포스팅 전 확인** - 사용자에게 내용 확인받고 포스팅\n\n---\n\n## 트러블슈팅\n\n| 문제 | 해결 |\n|------|------|\n| browser 도구 안 됨 | Xvfb 실행 확인, DISPLAY=:99 설정 확인, Gateway 재시작 |\n| 로그인 안 됨 | `\u002Flogin` 페이지로 이동 후 수동 로그인 요청 |\n| ref 못 찾음 | snapshot 다시 찍고 비슷한 텍스트\u002F버튼 찾기 |\n| 포스팅 안 됨 | Post 버튼이 disabled인지 확인 (텍스트 입력 필요) |\n",{"name":5,"homepage":42,"metadata":43,"description":7},"https:\u002F\u002Fgithub.com\u002Fzizi-cat\u002Fspool",{"clawdhub":44},{"emoji":45},"?","main","e7e336ac628c3e3bd771aff1aaa469c93778f94a","skills\u002Fzizi-cat\u002Fspool",0,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del","2026-08-23 22:39:37",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add kbarbel640-del\u002Fskills --skill spool",{"tool":59,"command":60},"bunx","bunx skills add kbarbel640-del\u002Fskills --skill spool",{"tool":62,"command":63},"pnpm","pnpm dlx skills add kbarbel640-del\u002Fskills --skill spool","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzizi-cat\u002Fspool\u002FSKILL.md",true,[67],{"path":68,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":72},"_meta.json","REFERENCE","参考文档",442,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzizi-cat\u002Fspool\u002F_meta.json",[74,102,128,148,154,174],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":85,"publishedAt":37},"01M6G8J55967D6281ACMKAKTEQ","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\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzzadrian\u002Fcrowd-prompting\u002FSKILL.md",[80],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[86,87,88,22,89,90,91,92,93,94,95,29,96,97,98,99,32,100,101],"crowd prompting","prompting","api","tokens","domain","world","prompts","operations","instructions","text","system","improve","productivity","marketplace","content","ai agents",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":113,"publishedAt":37},"01M6G8J0PKPAYVET6BWE8W4C26","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\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzyori\u002Fdilemm-ai\u002FSKILL.md",[108],{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[114,88,115,116,34,117,118,119,120,121,27,122,123,124,125,126,127,92,26],"dilemm ai","arena","analyze","openclaw agent","create","automation","browser automation","bot","design","strategy","headless","compete","submit","matchmaking",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":137,"publishedAt":37},"01M6G8HWAF3K9SW7NP3Z83CPJ6","arxiv-paper-reviews","Interact with arXiv Crawler API to fetch papers, read reviews, and submit comments. Use when working with arXiv papers, fetching paper lists by date\u002Fcategory\u002Finterest, viewing paper details with comments, or submitting paper reviews via API at http:\u002F\u002F150.158.152.82:8000.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Fweak-accept\u002FSKILL.md",[134],{"categoryNo":135,"categoryName":136,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000021","资料检索与研究",[138,139,140,141,142,143,144,22,145,126,26,28,88,146,147],"arxiv paper reviews","reviews","arxiv","paper","crawler","papers","comments","fetch","http","via",{"skillNo":149,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":153,"publishedAt":37},"01M6G8HQJ7N7WMY6YV7D7SSJ16","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[152],{"categoryNo":135,"categoryName":136,"taxonomyType":111,"taxonomyTypeDesc":112},[141,140,139,138,147,143,144,22,142,126,26,145,28,88,146],{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":160,"publishedAt":37},"01M6G8HM95Y64JNVFC2HN4E2BG","git-summary","Get a quick summary of the current Git repository including status, recent commits, branches, and contributors.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzweack\u002Fgit-summary\u002FSKILL.md",[],[161,162,163,164,165,166,167,168,169,170,171,172,173],"git","summary","git summary","commits","repository","win32","status","linux","contributors","true","quick","get","branches",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":184,"publishedAt":37},"01M6G8HGEGF05CNEJCGVYFSC4R","agent-constitution","Interact with AgentConstitution governance contracts on Base Sepolia. Check compliance, read rules, log actions, query governance state.","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fztsalexey\u002Fagent-constitution\u002FSKILL.md",[180,181],{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},{"categoryNo":182,"categoryName":183,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000037","律师与法务",[185,186,187,188,22,189,190,46,191,28,192,193,194,195,196,32,197,198,35],"agent constitution","constitution","contracts","tree","query","base","log","check","Rules","projects","compliance","actions","state","governance"]