[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G1JBXEF1JKJD53AT1SM3Z7":3,"skill-same:01M6G1JBXEF1JKJD53AT1SM3Z7":162},{"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":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":69,"commitSha":70,"skillDirectory":71,"forksCount":72,"repositoryHtmlUrl":73,"repositoryHomepageUrl":6,"ownerHtmlUrl":74,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":75,"install":76,"resources":89},"01M6G1JBXEF1JKJD53AT1SM3Z7","otp-challenger",null,"Enable agents and skills to challenge users for fresh two-factor authentication proof (TOTP or YubiKey) before executing sensitive actions. Use this for identity verification in approval workflows - deploy commands, financial operations, data access, admin operations, and change control.","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\u002Fryancnelson\u002Fotp-challenger\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"otp challenger","otp","node","change control","fresh","factor","commands","install","challenge","brew","workflows","python3","access","YubiKey","data","actions","verification","authentication","identity","change","2026-11-10 10:12:30",false,"---\nname: otp-challenger\nversion: 1.0.3\ndescription: Enable agents and skills to challenge users for fresh two-factor authentication proof (TOTP or YubiKey) before executing sensitive actions. Use this for identity verification in approval workflows - deploy commands, financial operations, data access, admin operations, and change control.\nmetadata: {\"openclaw\": {\"emoji\": \"?\", \"homepage\": \"https:\u002F\u002Fgithub.com\u002Fryancnelson\u002Fotp-challenger\", \"requires\": {\"bins\": [\"jq\", \"python3\"], \"anyBins\": [\"oathtool\", \"node\"]}, \"install\": [{\"id\": \"jq\", \"kind\": \"brew\", \"formula\": \"jq\", \"bins\": [\"jq\"], \"label\": \"Install jq via Homebrew\", \"os\": [\"darwin\", \"linux\"]}, {\"id\": \"python3\", \"kind\": \"brew\", \"formula\": \"python3\", \"bins\": [\"python3\"], \"label\": \"Install Python 3 via Homebrew\", \"os\": [\"darwin\", \"linux\"]}, {\"id\": \"oathtool\", \"kind\": \"brew\", \"formula\": \"oath-toolkit\", \"bins\": [\"oathtool\"], \"label\": \"Install OATH Toolkit via Homebrew\", \"os\": [\"darwin\", \"linux\"]}]}}\n---\n\n# OTP Identity Challenge Skill\n\nChallenge users for fresh two-factor authentication before sensitive actions.\n\n## When to Use\n\nRequire OTP verification before:\n- Deploy commands (`kubectl apply`, `terraform apply`)\n- Financial operations (transfers, payment approvals)\n- Data access (PII exports, customer data)\n- Admin operations (user modifications, permission changes)\n\n## Scripts\n\n### verify.sh\n\nVerify a user's OTP code and record verification state.\n\n```bash\n.\u002Fverify.sh \u003Cuser_id> \u003Ccode>\n```\n\n**Parameters:**\n- `user_id` - Identifier for the user (e.g., email, username)\n- `code` - Either 6-digit TOTP or 44-character YubiKey OTP\n\n**Exit codes:**\n- `0` - Verification successful\n- `1` - Invalid code or rate limited\n- `2` - Configuration error (missing secret, invalid format)\n\n**Output on success:**\n```\n✅ OTP verified for \u003Cuser_id> (valid for 24 hours)\n✅ YubiKey verified for \u003Cuser_id> (valid for 24 hours)\n```\n\n**Output on failure:**\n```\n❌ Invalid OTP code\n❌ Too many attempts. Try again in X minutes.\n❌ Invalid code format. Expected 6-digit TOTP or 44-character YubiKey OTP.\n```\n\n### check-status.sh\n\nCheck if a user's verification is still valid.\n\n```bash\n.\u002Fcheck-status.sh \u003Cuser_id>\n```\n\n**Exit codes:**\n- `0` - User has valid (non-expired) verification\n- `1` - User not verified or verification expired\n\n**Output:**\n```\n✅ Valid for 23 more hours\n⚠️ Expired 2 hours ago\n❌ Never verified\n```\n\n### generate-secret.sh\n\nGenerate a new TOTP secret with QR code (requires `qrencode` to be installed).\n\n```bash\n.\u002Fgenerate-secret.sh \u003Caccount_name>\n```\n\n## Usage Pattern\n\n```bash\n#!\u002Fbin\u002Fbash\nsource ..\u002Fotp\u002Fverify.sh\n\nif ! verify_otp \"$USER_ID\" \"$OTP_CODE\"; then\n  echo \"? This action requires OTP verification\"\n  exit 1\nfi\n\n# Proceed with sensitive action\n```\n\n## Configuration\n\n**Required for TOTP:**\n- `OTP_SECRET` - Base32 TOTP secret\n\n**Required for YubiKey:**\n- `YUBIKEY_CLIENT_ID` - Yubico API client ID\n- `YUBIKEY_SECRET_KEY` - Yubico API secret key (base64)\n\n**Optional:**\n- `OTP_INTERVAL_HOURS` - Verification expiry (default: 24)\n- `OTP_MAX_FAILURES` - Failed attempts before rate limiting (default: 3)\n- `OTP_STATE_FILE` - State file path (default: `memory\u002Fotp-state.json`)\n\nConfiguration can be set via environment variables or in `~\u002F.openclaw\u002Fconfig.yaml`:\n\n```yaml\nsecurity:\n  otp:\n    secret: \"BASE32_SECRET\"\n  yubikey:\n    clientId: \"12345\"\n    secretKey: \"base64secret\"\n```\n\n## Code Format Detection\n\nThe script auto-detects code type:\n- **6 digits** (`123456`) → TOTP validation\n- **44 ModHex characters** (`cccccc...`) → YubiKey validation\n\nModHex alphabet: `cbdefghijklnrtuv`\n\n## State File\n\nVerification state stored in `memory\u002Fotp-state.json`. Contains only timestamps, no secrets.\n\n## Human Documentation\n\nSee **[README.md](.\u002FREADME.md)** for:\n- Installation instructions\n- Setup guides (TOTP and YubiKey)\n- Security considerations\n- Troubleshooting\n- Examples\n","# OTP Identity Challenge Skill\n\nChallenge users for fresh two-factor authentication before sensitive actions.\n\n## When to Use\n\nRequire OTP verification before:\n- Deploy commands (`kubectl apply`, `terraform apply`)\n- Financial operations (transfers, payment approvals)\n- Data access (PII exports, customer data)\n- Admin operations (user modifications, permission changes)\n\n## Scripts\n\n### verify.sh\n\nVerify a user's OTP code and record verification state.\n\n```bash\n.\u002Fverify.sh \u003Cuser_id> \u003Ccode>\n```\n\n**Parameters:**\n- `user_id` - Identifier for the user (e.g., email, username)\n- `code` - Either 6-digit TOTP or 44-character YubiKey OTP\n\n**Exit codes:**\n- `0` - Verification successful\n- `1` - Invalid code or rate limited\n- `2` - Configuration error (missing secret, invalid format)\n\n**Output on success:**\n```\n✅ OTP verified for \u003Cuser_id> (valid for 24 hours)\n✅ YubiKey verified for \u003Cuser_id> (valid for 24 hours)\n```\n\n**Output on failure:**\n```\n❌ Invalid OTP code\n❌ Too many attempts. Try again in X minutes.\n❌ Invalid code format. Expected 6-digit TOTP or 44-character YubiKey OTP.\n```\n\n### check-status.sh\n\nCheck if a user's verification is still valid.\n\n```bash\n.\u002Fcheck-status.sh \u003Cuser_id>\n```\n\n**Exit codes:**\n- `0` - User has valid (non-expired) verification\n- `1` - User not verified or verification expired\n\n**Output:**\n```\n✅ Valid for 23 more hours\n⚠️ Expired 2 hours ago\n❌ Never verified\n```\n\n### generate-secret.sh\n\nGenerate a new TOTP secret with QR code (requires `qrencode` to be installed).\n\n```bash\n.\u002Fgenerate-secret.sh \u003Caccount_name>\n```\n\n## Usage Pattern\n\n```bash\n#!\u002Fbin\u002Fbash\nsource ..\u002Fotp\u002Fverify.sh\n\nif ! verify_otp \"$USER_ID\" \"$OTP_CODE\"; then\n  echo \"? This action requires OTP verification\"\n  exit 1\nfi\n\n# Proceed with sensitive action\n```\n\n## Configuration\n\n**Required for TOTP:**\n- `OTP_SECRET` - Base32 TOTP secret\n\n**Required for YubiKey:**\n- `YUBIKEY_CLIENT_ID` - Yubico API client ID\n- `YUBIKEY_SECRET_KEY` - Yubico API secret key (base64)\n\n**Optional:**\n- `OTP_INTERVAL_HOURS` - Verification expiry (default: 24)\n- `OTP_MAX_FAILURES` - Failed attempts before rate limiting (default: 3)\n- `OTP_STATE_FILE` - State file path (default: `memory\u002Fotp-state.json`)\n\nConfiguration can be set via environment variables or in `~\u002F.openclaw\u002Fconfig.yaml`:\n\n```yaml\nsecurity:\n  otp:\n    secret: \"BASE32_SECRET\"\n  yubikey:\n    clientId: \"12345\"\n    secretKey: \"base64secret\"\n```\n\n## Code Format Detection\n\nThe script auto-detects code type:\n- **6 digits** (`123456`) → TOTP validation\n- **44 ModHex characters** (`cccccc...`) → YubiKey validation\n\nModHex alphabet: `cbdefghijklnrtuv`\n\n## State File\n\nVerification state stored in `memory\u002Fotp-state.json`. Contains only timestamps, no secrets.\n\n## Human Documentation\n\nSee **[README.md](.\u002FREADME.md)** for:\n- Installation instructions\n- Setup guides (TOTP and YubiKey)\n- Security considerations\n- Troubleshooting\n- Examples\n",{"name":5,"version":43,"metadata":44,"description":7},"1.0.3",{"openclaw":45},{"emoji":46,"install":47,"homepage":65,"requires":66},"?",[48,55,59],{"id":49,"os":50,"bins":53,"kind":27,"label":54,"formula":49},"jq",[51,52],"darwin","linux",[49],"Install jq via Homebrew",{"id":29,"os":56,"bins":57,"kind":27,"label":58,"formula":29},[51,52],[29],"Install Python 3 via Homebrew",{"id":60,"os":61,"bins":62,"kind":27,"label":63,"formula":64},"oathtool",[51,52],[60],"Install OATH Toolkit via Homebrew","oath-toolkit","https:\u002F\u002Fgithub.com\u002Fryancnelson\u002Fotp-challenger",{"bins":67,"anyBins":68},[49,29],[60,20],"main","e7e336ac628c3e3bd771aff1aaa469c93778f94a","skills\u002Fryancnelson\u002Fotp-challenger",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":77,"prompt":87,"zipAvailable":88},[78,81,84],{"tool":79,"command":80},"npx","npx skills add kbarbel640-del\u002Fskills --skill otp-challenger",{"tool":82,"command":83},"bunx","bunx skills add kbarbel640-del\u002Fskills --skill otp-challenger",{"tool":85,"command":86},"pnpm","pnpm dlx skills add kbarbel640-del\u002Fskills --skill otp-challenger","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002FSKILL.md",true,[90,96,102,106,110,114,118,122,126,130,134,138,142,146,150,154,158],{"path":91,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":94,"sourceHtmlUrl":95},"_meta.json","REFERENCE","参考文档",815,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002F_meta.json",{"path":97,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":100,"sourceHtmlUrl":101},"check-status.sh","SCRIPT","脚本",2657,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fcheck-status.sh",{"path":103,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":104,"sourceHtmlUrl":105},"docs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_01.md",16392,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fdocs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_01.md",{"path":107,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":108,"sourceHtmlUrl":109},"docs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_02.md",12698,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fdocs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_02.md",{"path":111,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":112,"sourceHtmlUrl":113},"docs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_03.md",8713,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fdocs\u002Fimplementation-plans\u002F2025-01-31-yubikey-support\u002Fphase_03.md",{"path":115,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":116,"sourceHtmlUrl":117},"docs\u002Fplans\u002F2025-01-31-yubikey-support-design.md",4284,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fdocs\u002Fplans\u002F2025-01-31-yubikey-support-design.md",{"path":119,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":120,"sourceHtmlUrl":121},"examples\u002Fopenclaw\u002Fcron-expire.sh",533,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fexamples\u002Fopenclaw\u002Fcron-expire.sh",{"path":123,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":124,"sourceHtmlUrl":125},"examples\u002Fopenclaw\u002Finterceptor.sh",1063,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fexamples\u002Fopenclaw\u002Finterceptor.sh",{"path":127,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":128,"sourceHtmlUrl":129},"examples\u002Fopenclaw\u002FREADME.md",937,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fexamples\u002Fopenclaw\u002FREADME.md",{"path":131,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":132,"sourceHtmlUrl":133},"generate-secret.sh",2027,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fgenerate-secret.sh",{"path":135,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":136,"sourceHtmlUrl":137},"get-current-code.sh",1233,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fget-current-code.sh",{"path":139,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":140,"sourceHtmlUrl":141},"otp-skill-summary.md",9125,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fotp-skill-summary.md",{"path":143,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":144,"sourceHtmlUrl":145},"prepare-otp-challenger-for-update-and-upload.sh",922,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fprepare-otp-challenger-for-update-and-upload.sh",{"path":147,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":148,"sourceHtmlUrl":149},"README.md",13542,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002FREADME.md",{"path":151,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":152,"sourceHtmlUrl":153},"tests\u002Fopenclaw_interceptor.test.sh",2493,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Ftests\u002Fopenclaw_interceptor.test.sh",{"path":155,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":156,"sourceHtmlUrl":157},"totp.mjs",3753,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Ftotp.mjs",{"path":159,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":160,"sourceHtmlUrl":161},"verify.sh",14547,"https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fryancnelson\u002Fotp-challenger\u002Fverify.sh",[163,194,223,244,250,269],{"skillNo":164,"name":165,"nameZh":6,"description":166,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":167,"categories":168,"keywords":174,"publishedAt":38},"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",[169],{"categoryNo":170,"categoryName":171,"taxonomyType":172,"taxonomyTypeDesc":173},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],"crowd prompting","prompting","api","with","tokens","domain","world","prompts","operations","instructions","text","tool","system","improve","productivity","marketplace","https","content","ai agents",{"skillNo":195,"name":196,"nameZh":6,"description":197,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":198,"categories":199,"keywords":205,"publishedAt":38},"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",[200],{"categoryNo":201,"categoryName":202,"taxonomyType":203,"taxonomyTypeDesc":204},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[206,177,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,182,222],"dilemm ai","arena","analyze","browser","openclaw agent","create","automation","browser automation","bot","openclaw","design","strategy","headless","compete","submit","matchmaking","use",{"skillNo":224,"name":225,"nameZh":6,"description":226,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":227,"categories":228,"keywords":232,"publishedAt":38},"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",[229],{"categoryNo":230,"categoryName":231,"taxonomyType":203,"taxonomyTypeDesc":204},"01JBSEEDCAT000000000000021","资料检索与研究",[233,234,235,236,237,238,239,178,240,220,222,241,177,242,243],"arxiv paper reviews","reviews","arxiv","paper","crawler","papers","comments","fetch","read","http","via",{"skillNo":245,"name":225,"nameZh":6,"description":226,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":246,"categories":247,"keywords":249,"publishedAt":38},"01M6G8HQJ7N7WMY6YV7D7SSJ16","https:\u002F\u002Fgithub.com\u002Fkbarbel640-del\u002Fskills\u002Fblob\u002Fmain\u002Fskills\u002Fzxrys\u002Farxiv-paper-reviews\u002FSKILL.md",[248],{"categoryNo":230,"categoryName":231,"taxonomyType":203,"taxonomyTypeDesc":204},[236,235,234,233,243,238,239,178,237,220,222,240,241,177,242],{"skillNo":251,"name":252,"nameZh":6,"description":253,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":254,"categories":255,"keywords":256,"publishedAt":38},"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",[],[257,258,259,260,261,262,263,52,264,265,266,267,268],"git","summary","git summary","commits","repository","win32","status","contributors","true","quick","get","branches",{"skillNo":270,"name":271,"nameZh":6,"description":272,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":273,"categories":274,"keywords":279,"publishedAt":38},"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",[275,276],{"categoryNo":201,"categoryName":202,"taxonomyType":203,"taxonomyTypeDesc":204},{"categoryNo":277,"categoryName":278,"taxonomyType":172,"taxonomyTypeDesc":173},"01JBSEEDCAT000000000000037","律师与法务",[280,281,282,283,178,284,285,69,286,241,287,288,289,290,33,191,291,292,293],"agent constitution","constitution","contracts","tree","query","base","log","check","Rules","projects","compliance","state","governance","github"]