[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71AFMN804PTH3G8QXVTDT2V":3,"skill-same:01M71AFMN804PTH3G8QXVTDT2V":80},{"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":23,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":60,"commitSha":61,"skillDirectory":62,"forksCount":14,"repositoryHtmlUrl":63,"repositoryHomepageUrl":6,"ownerHtmlUrl":64,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":65,"install":66,"resources":79},"01M71AFMN804PTH3G8QXVTDT2V","codex",null,"Delegate coding tasks to OpenAI Codex CLI agent. Use for building features, refactoring, PR reviews, and batch issue fixing. Requires the codex CLI and a git repository.","sapsapshen\u002Fai-memory-router","sapsapshen","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F20347959?v=4","01M6XDQEF1DP50DKF37H81J3J5","shenmian","01M6XDQEJPE41Y3DT2763X8ZJN",0,"MIT","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fhermes\u002Fcodex\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[5,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"repository","features","for","reviews","hermes-agent","openai codex","issue","use","delegate","refactoring","review","batch","code-review","git","code","tasks","pr","codex cli","cli","2026-11-10 10:12:30",false,"---\nname: codex\ndescription: Delegate coding tasks to OpenAI Codex CLI agent. Use for building features, refactoring, PR reviews, and batch issue fixing. Requires the codex CLI and a git repository.\nversion: 1.0.0\nauthor: Hermes Agent\nlicense: MIT\nmetadata:\n  hermes:\n    tags: [Coding-Agent, Codex, OpenAI, Code-Review, Refactoring]\n    related_skills: [claude-code, hermes-agent]\n---\n\n# Codex CLI\n\nDelegate coding tasks to [Codex](https:\u002F\u002Fgithub.com\u002Fopenai\u002Fcodex) via the Hermes terminal. Codex is OpenAI's autonomous coding agent CLI.\n\n## Prerequisites\n\n- Codex installed: `npm install -g @openai\u002Fcodex`\n- OpenAI API key configured\n- **Must run inside a git repository** — Codex refuses to run outside one\n- Use `pty=true` in terminal calls — Codex is an interactive terminal app\n\n## One-Shot Tasks\n\n```\nterminal(command=\"codex exec 'Add dark mode toggle to settings'\", workdir=\"~\u002Fproject\", pty=true)\n```\n\nFor scratch work (Codex needs a git repo):\n```\nterminal(command=\"cd $(mktemp -d) && git init && codex exec 'Build a snake game in Python'\", pty=true)\n```\n\n## Background Mode (Long Tasks)\n\n```\n# Start in background with PTY\nterminal(command=\"codex exec --full-auto 'Refactor the auth module'\", workdir=\"~\u002Fproject\", background=true, pty=true)\n# Returns session_id\n\n# Monitor progress\nprocess(action=\"poll\", session_id=\"\u003Cid>\")\nprocess(action=\"log\", session_id=\"\u003Cid>\")\n\n# Send input if Codex asks a question\nprocess(action=\"submit\", session_id=\"\u003Cid>\", data=\"yes\")\n\n# Kill if needed\nprocess(action=\"kill\", session_id=\"\u003Cid>\")\n```\n\n## Key Flags\n\n| Flag | Effect |\n|------|--------|\n| `exec \"prompt\"` | One-shot execution, exits when done |\n| `--full-auto` | Sandboxed but auto-approves file changes in workspace |\n| `--yolo` | No sandbox, no approvals (fastest, most dangerous) |\n\n## PR Reviews\n\nClone to a temp directory for safe review:\n\n```\nterminal(command=\"REVIEW=$(mktemp -d) && git clone https:\u002F\u002Fgithub.com\u002Fuser\u002Frepo.git $REVIEW && cd $REVIEW && gh pr checkout 42 && codex review --base origin\u002Fmain\", pty=true)\n```\n\n## Parallel Issue Fixing with Worktrees\n\n```\n# Create worktrees\nterminal(command=\"git worktree add -b fix\u002Fissue-78 \u002Ftmp\u002Fissue-78 main\", workdir=\"~\u002Fproject\")\nterminal(command=\"git worktree add -b fix\u002Fissue-99 \u002Ftmp\u002Fissue-99 main\", workdir=\"~\u002Fproject\")\n\n# Launch Codex in each\nterminal(command=\"codex --yolo exec 'Fix issue #78: \u003Cdescription>. Commit when done.'\", workdir=\"\u002Ftmp\u002Fissue-78\", background=true, pty=true)\nterminal(command=\"codex --yolo exec 'Fix issue #99: \u003Cdescription>. Commit when done.'\", workdir=\"\u002Ftmp\u002Fissue-99\", background=true, pty=true)\n\n# Monitor\nprocess(action=\"list\")\n\n# After completion, push and create PRs\nterminal(command=\"cd \u002Ftmp\u002Fissue-78 && git push -u origin fix\u002Fissue-78\")\nterminal(command=\"gh pr create --repo user\u002Frepo --head fix\u002Fissue-78 --title 'fix: ...' --body '...'\")\n\n# Cleanup\nterminal(command=\"git worktree remove \u002Ftmp\u002Fissue-78\", workdir=\"~\u002Fproject\")\n```\n\n## Batch PR Reviews\n\n```\n# Fetch all PR refs\nterminal(command=\"git fetch origin '+refs\u002Fpull\u002F*\u002Fhead:refs\u002Fremotes\u002Forigin\u002Fpr\u002F*'\", workdir=\"~\u002Fproject\")\n\n# Review multiple PRs in parallel\nterminal(command=\"codex exec 'Review PR #86. git diff origin\u002Fmain...origin\u002Fpr\u002F86'\", workdir=\"~\u002Fproject\", background=true, pty=true)\nterminal(command=\"codex exec 'Review PR #87. git diff origin\u002Fmain...origin\u002Fpr\u002F87'\", workdir=\"~\u002Fproject\", background=true, pty=true)\n\n# Post results\nterminal(command=\"gh pr comment 86 --body '\u003Creview>'\", workdir=\"~\u002Fproject\")\n```\n\n## Rules\n\n1. **Always use `pty=true`** — Codex is an interactive terminal app and hangs without a PTY\n2. **Git repo required** — Codex won't run outside a git directory. Use `mktemp -d && git init` for scratch\n3. **Use `exec` for one-shots** — `codex exec \"prompt\"` runs and exits cleanly\n4. **`--full-auto` for building** — auto-approves changes within the sandbox\n5. **Background for long tasks** — use `background=true` and monitor with `process` tool\n6. **Don't interfere** — monitor with `poll`\u002F`log`, be patient with long-running tasks\n7. **Parallel is fine** — run multiple Codex processes at once for batch work\n","# Codex CLI\n\nDelegate coding tasks to [Codex](https:\u002F\u002Fgithub.com\u002Fopenai\u002Fcodex) via the Hermes terminal. Codex is OpenAI's autonomous coding agent CLI.\n\n## Prerequisites\n\n- Codex installed: `npm install -g @openai\u002Fcodex`\n- OpenAI API key configured\n- **Must run inside a git repository** — Codex refuses to run outside one\n- Use `pty=true` in terminal calls — Codex is an interactive terminal app\n\n## One-Shot Tasks\n\n```\nterminal(command=\"codex exec 'Add dark mode toggle to settings'\", workdir=\"~\u002Fproject\", pty=true)\n```\n\nFor scratch work (Codex needs a git repo):\n```\nterminal(command=\"cd $(mktemp -d) && git init && codex exec 'Build a snake game in Python'\", pty=true)\n```\n\n## Background Mode (Long Tasks)\n\n```\n# Start in background with PTY\nterminal(command=\"codex exec --full-auto 'Refactor the auth module'\", workdir=\"~\u002Fproject\", background=true, pty=true)\n# Returns session_id\n\n# Monitor progress\nprocess(action=\"poll\", session_id=\"\u003Cid>\")\nprocess(action=\"log\", session_id=\"\u003Cid>\")\n\n# Send input if Codex asks a question\nprocess(action=\"submit\", session_id=\"\u003Cid>\", data=\"yes\")\n\n# Kill if needed\nprocess(action=\"kill\", session_id=\"\u003Cid>\")\n```\n\n## Key Flags\n\n| Flag | Effect |\n|------|--------|\n| `exec \"prompt\"` | One-shot execution, exits when done |\n| `--full-auto` | Sandboxed but auto-approves file changes in workspace |\n| `--yolo` | No sandbox, no approvals (fastest, most dangerous) |\n\n## PR Reviews\n\nClone to a temp directory for safe review:\n\n```\nterminal(command=\"REVIEW=$(mktemp -d) && git clone https:\u002F\u002Fgithub.com\u002Fuser\u002Frepo.git $REVIEW && cd $REVIEW && gh pr checkout 42 && codex review --base origin\u002Fmain\", pty=true)\n```\n\n## Parallel Issue Fixing with Worktrees\n\n```\n# Create worktrees\nterminal(command=\"git worktree add -b fix\u002Fissue-78 \u002Ftmp\u002Fissue-78 main\", workdir=\"~\u002Fproject\")\nterminal(command=\"git worktree add -b fix\u002Fissue-99 \u002Ftmp\u002Fissue-99 main\", workdir=\"~\u002Fproject\")\n\n# Launch Codex in each\nterminal(command=\"codex --yolo exec 'Fix issue #78: \u003Cdescription>. Commit when done.'\", workdir=\"\u002Ftmp\u002Fissue-78\", background=true, pty=true)\nterminal(command=\"codex --yolo exec 'Fix issue #99: \u003Cdescription>. Commit when done.'\", workdir=\"\u002Ftmp\u002Fissue-99\", background=true, pty=true)\n\n# Monitor\nprocess(action=\"list\")\n\n# After completion, push and create PRs\nterminal(command=\"cd \u002Ftmp\u002Fissue-78 && git push -u origin fix\u002Fissue-78\")\nterminal(command=\"gh pr create --repo user\u002Frepo --head fix\u002Fissue-78 --title 'fix: ...' --body '...'\")\n\n# Cleanup\nterminal(command=\"git worktree remove \u002Ftmp\u002Fissue-78\", workdir=\"~\u002Fproject\")\n```\n\n## Batch PR Reviews\n\n```\n# Fetch all PR refs\nterminal(command=\"git fetch origin '+refs\u002Fpull\u002F*\u002Fhead:refs\u002Fremotes\u002Forigin\u002Fpr\u002F*'\", workdir=\"~\u002Fproject\")\n\n# Review multiple PRs in parallel\nterminal(command=\"codex exec 'Review PR #86. git diff origin\u002Fmain...origin\u002Fpr\u002F86'\", workdir=\"~\u002Fproject\", background=true, pty=true)\nterminal(command=\"codex exec 'Review PR #87. git diff origin\u002Fmain...origin\u002Fpr\u002F87'\", workdir=\"~\u002Fproject\", background=true, pty=true)\n\n# Post results\nterminal(command=\"gh pr comment 86 --body '\u003Creview>'\", workdir=\"~\u002Fproject\")\n```\n\n## Rules\n\n1. **Always use `pty=true`** — Codex is an interactive terminal app and hangs without a PTY\n2. **Git repo required** — Codex won't run outside a git directory. Use `mktemp -d && git init` for scratch\n3. **Use `exec` for one-shots** — `codex exec \"prompt\"` runs and exits cleanly\n4. **`--full-auto` for building** — auto-approves changes within the sandbox\n5. **Background for long tasks** — use `background=true` and monitor with `process` tool\n6. **Don't interfere** — monitor with `poll`\u002F`log`, be patient with long-running tasks\n7. **Parallel is fine** — run multiple Codex processes at once for batch work\n",{"name":5,"author":48,"license":15,"version":49,"metadata":50,"description":7},"Hermes Agent","1.0.0",{"hermes":51},{"tags":52,"related_skills":58},[53,54,55,56,57],"Coding-Agent","Codex","OpenAI","Code-Review","Refactoring",[59,28],"claude-code","main","7a38d8e7073e61c16eda85681cb32fb68a8657a5","skills-store\u002Fhermes\u002Fcodex","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router","https:\u002F\u002Fgithub.com\u002Fsapsapshen","2026-04-14 21:12:12",{"source":8,"skillName":5,"commands":67,"prompt":77,"zipAvailable":78},[68,71,74],{"tool":69,"command":70},"npx","npx skills add sapsapshen\u002Fai-memory-router --skill codex",{"tool":72,"command":73},"bunx","bunx skills add sapsapshen\u002Fai-memory-router --skill codex",{"tool":75,"command":76},"pnpm","pnpm dlx skills add sapsapshen\u002Fai-memory-router --skill codex","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fhermes\u002Fcodex\u002FSKILL.md",true,[],[81,105,131,141,154,170],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":92,"publishedAt":43},"01M71ATQRKG48SH06FQ697T5G9","wechat-search","Search WeChat Official Account articles using OpenClaw's web search and fetch capabilities with compliance-focused design.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fwechat-search-release\u002FSKILL.md",[87],{"categoryNo":88,"categoryName":89,"taxonomyType":90,"taxonomyTypeDesc":91},"01JBSEEDCAT000000000000037","律师与法务","PROFESSION","适用职业",[93,94,95,96,97,98,99,100,101,102,103,104],"wechat search","wechat","search","capabilities","openclaw","design","web search","compliance","web","official","fetch","with",{"skillNo":106,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":43},"01M71ATNAVGZB35PFYM2GC5N00","trend-tap","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend tap', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-tap\u002FSKILL.md",[],[112,113,114,115,116,117,95,118,119,120,121,122,123,124,125,126,127,128,129,130],"trend","trend tap","tap","api keys","Bash","time","trending","hacker","aggregator","do","when","brew","live","data","google","install","read","across","api",{"skillNo":132,"name":133,"nameZh":6,"description":134,"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":43},"01M71ATJ9AM5KM15AA8PS302EB","trend-radar","Real-time trending topics aggregator across 7 platforms (X\u002FTwitter, Reddit, Google Trends, Hacker News, Zhihu, Bilibili, Weibo). Trigger: when user says 'trend', 'trends', 'trend pulse', '热点', '热搜', or asks what is trending\u002Fhot. Do NOT use web_search — this skill already fetches live data from all platforms with zero API keys.","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftrend-radar\u002FSKILL.md",[],[138,139,112,123,124,125,126,116,95,128,140,129,130,122,120,119,118,127,117,115],"trend radar","radar","pulse",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":43},"01M71ATGF095N3EJM9G8SD0BB5","tech-news-daily","每日科技新闻汇——从全球多个 RSS 源抓取最新科技新闻，翻译（英→中）、去重、排版成每日简报。当用户询问科技新闻、科技新鲜事、每日科技、技术动态、Daily Tech News 或类似表达时触发此技能。","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Ftech-news-daily\u002FSKILL.md",[],[148,149,150,151,152,153],"news","tech","tech news daily","daily","rss","翻译",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":163,"publishedAt":43},"01M71ATFAEAMQ17M70NQNY7SR8","summarize","Summarize URLs or files with the summarize CLI (web, PDFs, images, audio, YouTube).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsummarize\u002FSKILL.md",[160],{"categoryNo":161,"categoryName":162,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",[156,101,164,42,165,104,123,166,167,168,114,169,127],"Audio","youtube","images","https","files","pdfs",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":43},"01M71ATDNS3R0M4H936PACQAWZ","sonoscli","Control Sonos speakers (discover\u002Fstatus\u002Fplay\u002Fvolume\u002Fgroup).","https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fopenclaw\u002Fsonoscli\u002FSKILL.md",[],[172,177,178,179,127,180,167,181,182,183,184,185],"status","play","go","latest","github","discover","control","cmd","volume"]