[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6RTQM0PCGTCKCZCK312PAWJ":3,"skill-same:01M6RTQM0PCGTCKCZCK312PAWJ":179},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"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":43,"commitSha":44,"skillDirectory":45,"forksCount":13,"repositoryHtmlUrl":46,"repositoryHomepageUrl":6,"ownerHtmlUrl":47,"ownerBlogUrl":48,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6RTQM0PCGTCKCZCK312PAWJ","xmtp-comms-guard",null,"Security middleware for all XMTP communications in EverClaw. Enforces guarded client usage with validation, integrity checks, and fail-closed security policies. Integrates approval flows for sensitive operations. Use when integrating XMTP messaging, configuring communication security, or auditing guarded client enforcement.","EverClaw\u002Fbuddybots.org","EverClaw","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F262691656?v=4","01M6RTE2R7A5898VSQ3HAZNTRN","01M6RTE2WCCGNTM8VWGPZY3NTT",0,"MIT","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"comms","guard","xmtp comms guard","client","when","for","everclaw","usage","with","flows","middleware","communications","integrity checks","enforcement","use","operations","integrity","messaging","communication","validation","2026-11-10 10:12:30",false,"---\nname: xmtp-comms-guard\ndescription: \"Security middleware for all XMTP communications in EverClaw. Enforces guarded client usage with validation, integrity checks, and fail-closed security policies. Integrates approval flows for sensitive operations. Use when integrating XMTP messaging, configuring communication security, or auditing guarded client enforcement.\"\n---\n\n# xmtp-comms-guard — Skill Integration Guide (V6)\n\n**Type:** Critical Security\n**Version:** 6.0.0\n**Required peer dependencies:** bagman, pii-guard, prompt-guard\n\n## Mandatory Usage\n\nAll XMTP communication MUST go through the guarded client:\n\n```ts\nimport { createGuardedXmtpClient } from \"xmtp-comms-guard\";\nconst { client, middleware } = await createGuardedXmtpClient(rawClient, userWallet);\n```\n\nRaw `@xmtp\u002Fclient` imports are blocked by ESLint rules and SkillGuard scan.\n\n## Three-Shift Integration\n\nThree-Shift = EverClaw's standard approval flow with three options:\n- **Approve** — allow the action\n- **Redact** — downgrade\u002Fsanitize\n- **Block** — deny the action\n\nUsed for: peer revocation review, key rotation re-approval, introduction chain re-evaluation.\n\n## Enforcement Model\n\nEnforcement is convention-based + build-time gates:\n- **ESLint rule** blocks `@xmtp\u002Fclient` direct imports\n- **SkillGuard scan** detects raw client usage patterns\n- No runtime interception of raw imports (honestly documented)\n\nSee `enforcement.md` for full details.\n\n## Fail-Closed Conditions\n\nThe skill refuses to operate when:\n- Hash chain integrity check fails on startup\n- SQLCipher encryption check fails\n- Nonce cache detects replay\n- Unknown topic in message\n- Unknown sensitivity level\n- Message exceeds 64KB\n- Protocol version is not \"6.0\"\n- Peer not in registry or blocked\n\n## Threat Model\n\nCovered in `threat-model.md`:\n- Malicious external agent → blocked by schema + checks\n- Compromised internal agent → blocked by middleware + SkillGuard gates\n- Host compromise → limited by Bagman + HMAC chain + fail-closed\n- Replay attacks → nonce cache (90s TTL) + hash chain\n- Data exfiltration → PII Guard + trust context rules\n","# xmtp-comms-guard — Skill Integration Guide (V6)\n\n**Type:** Critical Security\n**Version:** 6.0.0\n**Required peer dependencies:** bagman, pii-guard, prompt-guard\n\n## Mandatory Usage\n\nAll XMTP communication MUST go through the guarded client:\n\n```ts\nimport { createGuardedXmtpClient } from \"xmtp-comms-guard\";\nconst { client, middleware } = await createGuardedXmtpClient(rawClient, userWallet);\n```\n\nRaw `@xmtp\u002Fclient` imports are blocked by ESLint rules and SkillGuard scan.\n\n## Three-Shift Integration\n\nThree-Shift = EverClaw's standard approval flow with three options:\n- **Approve** — allow the action\n- **Redact** — downgrade\u002Fsanitize\n- **Block** — deny the action\n\nUsed for: peer revocation review, key rotation re-approval, introduction chain re-evaluation.\n\n## Enforcement Model\n\nEnforcement is convention-based + build-time gates:\n- **ESLint rule** blocks `@xmtp\u002Fclient` direct imports\n- **SkillGuard scan** detects raw client usage patterns\n- No runtime interception of raw imports (honestly documented)\n\nSee `enforcement.md` for full details.\n\n## Fail-Closed Conditions\n\nThe skill refuses to operate when:\n- Hash chain integrity check fails on startup\n- SQLCipher encryption check fails\n- Nonce cache detects replay\n- Unknown topic in message\n- Unknown sensitivity level\n- Message exceeds 64KB\n- Protocol version is not \"6.0\"\n- Peer not in registry or blocked\n\n## Threat Model\n\nCovered in `threat-model.md`:\n- Malicious external agent → blocked by schema + checks\n- Compromised internal agent → blocked by middleware + SkillGuard gates\n- Host compromise → limited by Bagman + HMAC chain + fail-closed\n- Replay attacks → nonce cache (90s TTL) + hash chain\n- Data exfiltration → PII Guard + trust context rules\n",{"name":5,"description":7},"main","b15f4b37683ab5d816814787927959993ef4398c","skills\u002Fxmtp-comms-guard","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org","https:\u002F\u002Fgithub.com\u002FEverClaw","https:\u002F\u002Feverclaw.xyz","AI Inference You Own, Forever Powering Your OpenClaw Agents. Open-source skill connecting OpenClaw to the Morpheus decentralized inference network — GLM-5","2026-09-02 03:56:55",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add EverClaw\u002Fbuddybots.org --skill xmtp-comms-guard",{"tool":57,"command":58},"bunx","bunx skills add EverClaw\u002Fbuddybots.org --skill xmtp-comms-guard",{"tool":60,"command":61},"pnpm","pnpm dlx skills add EverClaw\u002Fbuddybots.org --skill xmtp-comms-guard","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002FSKILL.md",true,[65,71,77,81,85,89,93,99,103,107,111,115,119,123,127,131,135,139,143,147,151,155,159,163,167,171,175],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},".eslintrc.json","REFERENCE","参考文档",248,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002F.eslintrc.json",{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},".gitignore","OTHER","其他",39,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002F.gitignore",{"path":78,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":79,"sourceHtmlUrl":80},"enforcement.md",1592,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fenforcement.md",{"path":82,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":83,"sourceHtmlUrl":84},"package.json",1079,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fpackage.json",{"path":86,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":87,"sourceHtmlUrl":88},"PUBLISH-CHECKLIST.md",598,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002FPUBLISH-CHECKLIST.md",{"path":90,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":91,"sourceHtmlUrl":92},"README.md",1121,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002FREADME.md",{"path":94,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":97,"sourceHtmlUrl":98},"src\u002Fchecks\u002Fhandshake.ts","SCRIPT","脚本",3126,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002Fhandshake.ts",{"path":100,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":101,"sourceHtmlUrl":102},"src\u002Fchecks\u002Findex.ts",242,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002Findex.ts",{"path":104,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":105,"sourceHtmlUrl":106},"src\u002Fchecks\u002FinjectionCheck.ts",854,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002FinjectionCheck.ts",{"path":108,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":109,"sourceHtmlUrl":110},"src\u002Fchecks\u002FpeerAuth.ts",476,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002FpeerAuth.ts",{"path":112,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":113,"sourceHtmlUrl":114},"src\u002Fchecks\u002FpiiCheck.ts",923,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002FpiiCheck.ts",{"path":116,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":117,"sourceHtmlUrl":118},"src\u002Fchecks\u002FrateLimit.ts",743,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002FrateLimit.ts",{"path":120,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":121,"sourceHtmlUrl":122},"src\u002Fchecks\u002FtrustContextCheck.ts",1769,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fchecks\u002FtrustContextCheck.ts",{"path":124,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":125,"sourceHtmlUrl":126},"src\u002Fcli\u002Findex.ts",1520,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fcli\u002Findex.ts",{"path":128,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":129,"sourceHtmlUrl":130},"src\u002Fcrypto\u002Feip191.ts",2849,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fcrypto\u002Feip191.ts",{"path":132,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":133,"sourceHtmlUrl":134},"src\u002Findex.ts",1294,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Findex.ts",{"path":136,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":137,"sourceHtmlUrl":138},"src\u002Fmiddleware\u002FcommsGuard.ts",2568,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fmiddleware\u002FcommsGuard.ts",{"path":140,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":141,"sourceHtmlUrl":142},"src\u002Frevocation.ts",2029,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Frevocation.ts",{"path":144,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":145,"sourceHtmlUrl":146},"src\u002Fschemas\u002Findex.ts",687,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fschemas\u002Findex.ts",{"path":148,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":149,"sourceHtmlUrl":150},"src\u002Fsecurity\u002Ferc8004Cache.ts",728,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fsecurity\u002Ferc8004Cache.ts",{"path":152,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":153,"sourceHtmlUrl":154},"src\u002Fsecurity\u002FhashChain.ts",1252,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fsecurity\u002FhashChain.ts",{"path":156,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":157,"sourceHtmlUrl":158},"src\u002Fsecurity\u002FnonceCache.ts",305,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fsecurity\u002FnonceCache.ts",{"path":160,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":161,"sourceHtmlUrl":162},"src\u002Fstorage\u002FbagmanStorage.ts",3283,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Fstorage\u002FbagmanStorage.ts",{"path":164,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":165,"sourceHtmlUrl":166},"src\u002Ftypes.ts",1082,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fsrc\u002Ftypes.ts",{"path":168,"resourceType":95,"resourceTypeDesc":96,"sizeBytes":169,"sourceHtmlUrl":170},"test\u002Fadversarial\u002Fbasic.test.ts",3049,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Ftest\u002Fadversarial\u002Fbasic.test.ts",{"path":172,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":173,"sourceHtmlUrl":174},"threat-model.md",1980,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Fthreat-model.md",{"path":176,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":177,"sourceHtmlUrl":178},"tsconfig.json",266,"https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fxmtp-comms-guard\u002Ftsconfig.json",[180,207,223,234,249,266],{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":38},"01M6RTQW04G5PH8910S8PTD85W","three-shifts","Cyclic shift execution engine. Plans tasks 3x daily (6 AM, 2 PM, 10 PM), decomposes them into granular steps, then executes via 15-minute cron cycles. Each cycle reads state files, picks the next step, executes it, writes results back. Errors are logged and skipped — never fatal. Planning uses Claude 4.6; execution uses GLM-5.","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fthree-shifts\u002FSKILL.md",[],[187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206],"three","three shifts","cron","errors","execution","state","planning","tasks","engine","next step","results","never","daily","files","back","cycle","glm","next","plans","pm",{"skillNo":208,"name":182,"nameZh":6,"description":209,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":210,"categories":211,"keywords":212,"publishedAt":38},"01M6RTQ1RGSH5JHN4GPYSECZR2","Daily standup engine. Plans tasks 3x daily (6 AM, 2 PM, 10 PM) and delivers them for approval. Execution happens in the main session via direct conversation. Night shifts auto-approve carryover from earlier in the day.","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fthree-shifts\u002FSKILL.md",[],[187,188,213,23,214,205,206,43,194,191,215,195,216,217,218,219,220,221,199,222],"approve","via","standup","daily standup","direct","main session","session","approval","auto","conversation",{"skillNo":224,"name":225,"nameZh":6,"description":226,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":227,"categories":228,"keywords":229,"publishedAt":38},"01M6RTPV7ZWGV38QFAMG5RXEDJ","super-helper","A helpful utility skill for agents","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fmalicious-skill\u002FSKILL.md",[],[230,231,232,23,233],"super","helper","super helper","utility",{"skillNo":235,"name":236,"nameZh":6,"description":237,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":238,"categories":239,"keywords":240,"publishedAt":38},"01M6RTPRM3GE8G43WD72BZK4Q7","github-issues","Fetch and manage GitHub issues via the API","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Flegit-api-skill\u002FSKILL.md",[],[241,242,243,244,245,246,247,248,214],"issues","github issues","github","api","curl","fetch","manage","token",{"skillNo":250,"name":251,"nameZh":6,"description":252,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":253,"categories":254,"keywords":260,"publishedAt":38},"01M6RTPME21Z0A1JF8BV6KTZT3","code-formatter","Format and lint code files","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fevasive-12-multi-stage\u002FSKILL.md",[255],{"categoryNo":256,"categoryName":257,"taxonomyType":258,"taxonomyTypeDesc":259},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[261,262,263,264,265,200],"formatter","code formatter","code","lint","format",{"skillNo":267,"name":268,"nameZh":6,"description":269,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":270,"categories":271,"keywords":272,"publishedAt":38},"01M6RTP2QZWN8PZ8HK4GND3D78","config-helper","Parse and validate configuration files","https:\u002F\u002Fgithub.com\u002FEverClaw\u002Fbuddybots.org\u002Fblob\u002Fmain\u002Fskills\u002Fskillguard\u002Ftest-fixtures\u002Fevasive-11-polyglot-json\u002FSKILL.md",[],[273,274,231,275,200,276,277],"config","config helper","validate","configuration","parse"]