[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6G9DAZS9FREPEE25TD5R5TX":3,"skill-same:01M6G9DAZS9FREPEE25TD5R5TX":74},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M6G9DAZS9FREPEE25TD5R5TX","hermes-provider-oauth-operations",null,"Configure Hermes model providers, fallback chains, and OAuth re-authentication from remote or messaging sessions, especially when the `hermes` executable is not on PATH and the repo checkout must be invoked with `python -m hermes_cli.main`.","zapabob\u002FSkills","zapabob","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F130830376?v=4","01M6DBMYZAGRTFQDSQYW3W764P","峯岸 亮","01M6DBMZ3GKDSJ01NZ9XTZD7JD",2,"MIT","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002F77\u002F77772447813d18d037e7fd739db9949cb2ed7f1b3af139367ff734045d5e71e2\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"hermes provider oauth operations","OAuth","hermes","provider","operations","repo","re","remote","checkout","remote-auth","openai-codex","xai-oauth","python","model","messaging","authentication","windows","auth","sessions","linux","2026-11-10 10:12:30",false,"---\r\nname: hermes-provider-oauth-operations\r\ndescription: Configure Hermes model providers, fallback chains, and OAuth re-authentication from remote or messaging sessions, especially when the `hermes` executable is not on PATH and the repo checkout must be invoked with `python -m hermes_cli.main`.\r\nversion: 1.0.0\r\nauthor: Hermes Agent\r\nlicense: MIT\r\nplatforms: [windows, linux, macos]\r\ntags: [hermes, model, provider, oauth, xai-oauth, grok, openai-codex, telegram, remote-auth]\r\n---\r\n\r\n# Hermes Provider OAuth Operations\r\n\r\nUse this skill when the user asks to change Hermes' primary model\u002Fprovider, set a fallback\u002Fsub model, or re-authenticate an OAuth-backed provider such as `xai-oauth`\u002FGrok from Telegram or another remote messaging channel.\r\n\r\nThis skill supplements the protected `hermes-agent` skill with operational patterns learned from real remote-auth sessions.\r\n\r\n## Core workflow\r\n\r\n1. Load `hermes-agent` first for canonical Hermes commands and config semantics.\r\n2. Prefer Hermes CLI config commands over direct file edits for `~\u002F.hermes\u002Fconfig.yaml`. For this user's current default, set Codex GPT-5.5 with low reasoning effort:\r\n   ```bash\r\n   hermes config set model.provider openai-codex\r\n   hermes config set model.default gpt-5.5\r\n   hermes config set agent.reasoning_effort low\r\n   hermes config set fallback_providers '[{\"provider\":\"xai-oauth\",\"model\":\"grok-build-0.1\"}]'\r\n   ```\r\n3. If `hermes` is not on PATH but the repo checkout is available, run the same CLI through the module entrypoint from the repo root:\r\n   ```bash\r\n   python -m hermes_cli.main config set model.provider openai-codex\r\n   python -m hermes_cli.main config set model.default gpt-5.5\r\n   python -m hermes_cli.main config set agent.reasoning_effort low\r\n   python -m hermes_cli.main config set fallback_providers '[{\"provider\":\"xai-oauth\",\"model\":\"grok-build-0.1\"}]'\r\n   ```\r\n4. Always verify the effective config after writes before declaring success:\r\n   ```bash\r\n   hermes config | sed -n '\u002F◆ Model\u002F,+6p'\r\n   python - \u003C\u003C'PY'\r\n   from pathlib import Path\r\n   import yaml\r\n   cfg = yaml.safe_load(Path.home().joinpath('.hermes','config.yaml').read_text(encoding='utf-8-sig'))\r\n   print(cfg.get('model', {}))\r\n   print('reasoning_effort:', cfg.get('agent', {}).get('reasoning_effort'))\r\n   PY\r\n   ```\r\n   If a Windows atomic replace\u002Fpermission error appears after one of several `config set` calls, inspect the file before retrying: a prior command may already have left the requested provider\u002Fmodel\u002Freasoning values in place.\r\n5. Start OAuth re-auth in an interactive PTY when the flow requires pasting a callback URL\u002Fcode:\r\n   ```bash\r\n   python -m hermes_cli.main auth add xai-oauth --no-browser --manual-paste --timeout 900\r\n   ```\r\n   Use `background=true` with `pty=true` so the process remains at `Callback URL:` instead of receiving EOF.\r\n6. Send the authorization URL to the user. Ask them to paste either:\r\n   - the full failed loopback callback URL, e.g. `http:\u002F\u002F127.0.0.1:\u003Cport>\u002Fcallback?code=...&state=...`, or\r\n   - the bare authorization code if the provider displays it in-page.\r\n7. Submit the pasted callback\u002Fcode to the waiting PTY process, then verify with:\r\n   ```bash\r\n   python -m hermes_cli.main auth list xai-oauth\r\n   python -m hermes_cli.main config | sed -n '1,20p'\r\n   ```\r\n8. If this is a gateway\u002FTelegram session, tell the user whether a gateway restart or `\u002Freset` is needed for the new model\u002Fprovider state to apply to future sessions.\r\n\r\n## Pitfalls\r\n\r\n- Do not patch `~\u002F.hermes\u002Fconfig.yaml` directly when Hermes refuses sensitive config writes. Use `hermes config set` or `python -m hermes_cli.main config set`.\r\n- Non-PTY background OAuth commands can exit immediately at the paste prompt with `missing authorization code` because stdin is closed. Restart the command with `pty=true` and keep the process running.\r\n- Treat `command not found: hermes` as a PATH\u002Fsetup condition, not as a Hermes failure. Use the repo module entrypoint if available.\r\n- Do not ask the user to send tokens, refresh tokens, or secrets. The callback URL\u002Fcode is an OAuth authorization artifact for the waiting local flow; handle it only by submitting it to the active auth process.\r\n- Avoid saying re-auth is complete until `auth list` or an equivalent command shows a new usable credential.\r\n\r\n## References\r\n\r\n- `references\u002Fgrok-oauth-telegram-manual-paste.md` — concise transcript-derived notes for xAI\u002FGrok OAuth via Telegram manual paste.\r\n","# Hermes Provider OAuth Operations\r\n\r\nUse this skill when the user asks to change Hermes' primary model\u002Fprovider, set a fallback\u002Fsub model, or re-authenticate an OAuth-backed provider such as `xai-oauth`\u002FGrok from Telegram or another remote messaging channel.\r\n\r\nThis skill supplements the protected `hermes-agent` skill with operational patterns learned from real remote-auth sessions.\r\n\r\n## Core workflow\r\n\r\n1. Load `hermes-agent` first for canonical Hermes commands and config semantics.\r\n2. Prefer Hermes CLI config commands over direct file edits for `~\u002F.hermes\u002Fconfig.yaml`. For this user's current default, set Codex GPT-5.5 with low reasoning effort:\r\n   ```bash\r\n   hermes config set model.provider openai-codex\r\n   hermes config set model.default gpt-5.5\r\n   hermes config set agent.reasoning_effort low\r\n   hermes config set fallback_providers '[{\"provider\":\"xai-oauth\",\"model\":\"grok-build-0.1\"}]'\r\n   ```\r\n3. If `hermes` is not on PATH but the repo checkout is available, run the same CLI through the module entrypoint from the repo root:\r\n   ```bash\r\n   python -m hermes_cli.main config set model.provider openai-codex\r\n   python -m hermes_cli.main config set model.default gpt-5.5\r\n   python -m hermes_cli.main config set agent.reasoning_effort low\r\n   python -m hermes_cli.main config set fallback_providers '[{\"provider\":\"xai-oauth\",\"model\":\"grok-build-0.1\"}]'\r\n   ```\r\n4. Always verify the effective config after writes before declaring success:\r\n   ```bash\r\n   hermes config | sed -n '\u002F◆ Model\u002F,+6p'\r\n   python - \u003C\u003C'PY'\r\n   from pathlib import Path\r\n   import yaml\r\n   cfg = yaml.safe_load(Path.home().joinpath('.hermes','config.yaml').read_text(encoding='utf-8-sig'))\r\n   print(cfg.get('model', {}))\r\n   print('reasoning_effort:', cfg.get('agent', {}).get('reasoning_effort'))\r\n   PY\r\n   ```\r\n   If a Windows atomic replace\u002Fpermission error appears after one of several `config set` calls, inspect the file before retrying: a prior command may already have left the requested provider\u002Fmodel\u002Freasoning values in place.\r\n5. Start OAuth re-auth in an interactive PTY when the flow requires pasting a callback URL\u002Fcode:\r\n   ```bash\r\n   python -m hermes_cli.main auth add xai-oauth --no-browser --manual-paste --timeout 900\r\n   ```\r\n   Use `background=true` with `pty=true` so the process remains at `Callback URL:` instead of receiving EOF.\r\n6. Send the authorization URL to the user. Ask them to paste either:\r\n   - the full failed loopback callback URL, e.g. `http:\u002F\u002F127.0.0.1:\u003Cport>\u002Fcallback?code=...&state=...`, or\r\n   - the bare authorization code if the provider displays it in-page.\r\n7. Submit the pasted callback\u002Fcode to the waiting PTY process, then verify with:\r\n   ```bash\r\n   python -m hermes_cli.main auth list xai-oauth\r\n   python -m hermes_cli.main config | sed -n '1,20p'\r\n   ```\r\n8. If this is a gateway\u002FTelegram session, tell the user whether a gateway restart or `\u002Freset` is needed for the new model\u002Fprovider state to apply to future sessions.\r\n\r\n## Pitfalls\r\n\r\n- Do not patch `~\u002F.hermes\u002Fconfig.yaml` directly when Hermes refuses sensitive config writes. Use `hermes config set` or `python -m hermes_cli.main config set`.\r\n- Non-PTY background OAuth commands can exit immediately at the paste prompt with `missing authorization code` because stdin is closed. Restart the command with `pty=true` and keep the process running.\r\n- Treat `command not found: hermes` as a PATH\u002Fsetup condition, not as a Hermes failure. Use the repo module entrypoint if available.\r\n- Do not ask the user to send tokens, refresh tokens, or secrets. The callback URL\u002Fcode is an OAuth authorization artifact for the waiting local flow; handle it only by submitting it to the active auth process.\r\n- Avoid saying re-auth is complete until `auth list` or an equivalent command shows a new usable credential.\r\n\r\n## References\r\n\r\n- `references\u002Fgrok-oauth-telegram-manual-paste.md` — concise transcript-derived notes for xAI\u002FGrok OAuth via Telegram manual paste.\r\n",{"name":5,"tags":44,"author":48,"license":15,"version":49,"platforms":50,"description":7},[21,32,22,45,30,46,29,47,28],"oauth","grok","telegram","Hermes Agent","1.0.0",[35,38,51],"macos","main","0d1434f89f4bc6b07e9d272accd8c1013768820f","archive\u002Fskill-md-reviewed\u002Fsha256\u002F77\u002F77772447813d18d037e7fd739db9949cb2ed7f1b3af139367ff734045d5e71e2",0,"https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills","https:\u002F\u002Fgithub.com\u002Fzapabob","The Open University of JAPAN　2019-now\r\n\r\nTokyo University of Science　2007-2010","2026-10-26 16:29:01",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add zapabob\u002FSkills --skill hermes-provider-oauth-operations",{"tool":66,"command":67},"bunx","bunx skills add zapabob\u002FSkills --skill hermes-provider-oauth-operations",{"tool":69,"command":70},"pnpm","pnpm dlx skills add zapabob\u002FSkills --skill hermes-provider-oauth-operations","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002F77\u002F77772447813d18d037e7fd739db9949cb2ed7f1b3af139367ff734045d5e71e2\u002FSKILL.md",true,[],[75,109,144,170,197,214],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":94,"publishedAt":39},"01M6GJTE1GESGGF9K028Y7753E","xurl","X\u002FTwitter via xurl CLI: post, search, DM, media, v2 API.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fxurl\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[81,86,89],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":87,"categoryName":88,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":90,"categoryName":91,"taxonomyType":92,"taxonomyTypeDesc":93},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[77,95,51,96,97,38,35,98,99,100,101,102,103,21,104,105,52,106,107,108],"openclaw","cli","github","official","search","https","social-media","api","Media","hermes agent","twitter","social","via","post",{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":126,"publishedAt":39},"01M6GJT8S1PXQ8WPXT1HSNBWH2","writing-plans","Write implementation plans: bite-sized tasks, paths, code.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwriting-plans\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[115,118,121,122,123],{"categoryNo":116,"categoryName":117,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":119,"categoryName":120,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":87,"categoryName":88,"taxonomyType":84,"taxonomyTypeDesc":85},{"categoryNo":90,"categoryName":91,"taxonomyType":92,"taxonomyTypeDesc":93},{"categoryNo":124,"categoryName":125,"taxonomyType":92,"taxonomyTypeDesc":93},"01JBSEEDCAT000000000000036","内容创作者",[127,128,129,130,51,131,38,132,35,133,134,135,136,137,138,139,140,141,142,143],"writing","writing plans","plans","design","review","workflow","documentation","tasks","development","code","planning","code-review","subagent","write","superpowers","paths","test-driven-development",{"skillNo":145,"name":146,"nameZh":6,"description":147,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":148,"categories":149,"keywords":153,"publishedAt":39},"01M6GJST0H5X7WHBJ3BZK0DVKH","whisper","OpenAI's general-purpose speech recognition model. Supports 99 languages, transcription, translation to English, and language identification. Six model sizes from tiny (39M params) to large (1550M params). Use for speech-to-text, podcast transcription, or multilingual audio processing. Best for robust, multilingual ASR.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwhisper\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[150],{"categoryNo":151,"categoryName":152,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000016","图像与多媒体",[146,51,38,154,155,156,157,158,159,160,32,161,162,163,164,165,166,167,168,169],"openai","speech","multimodal","Transformers","ASR","Audio","text","speech recognition","use","general","multilingual","translation","english","identification","processing","Audio Processing",{"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":179,"publishedAt":39},"01M6GJSMRQ8EETZTYMG72P70EA","weights-and-biases","W&B: log ML experiments, sweeps, model registry, dashboards.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fweights-and-biases\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[176],{"categoryNo":177,"categoryName":178,"taxonomyType":84,"taxonomyTypeDesc":85},"01JBSEEDCAT000000000000013","分析与可视化",[180,51,181,182,35,183,184,185,186,187,188,32,189,190,191,192,193,194,195,196],"weights and biases","tensorflow","experiments","pytorch","visualization","registry","real-time","tuning","dashboards","experiment","log","time","Experiment Tracking","Model Registry","Hyperparameter Tuning","WandB","Real-Time Visualization",{"skillNo":198,"name":199,"nameZh":6,"description":200,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":201,"categories":202,"keywords":204,"publishedAt":39},"01M6GJS19KDPRY112JTR326S06","watchers","Poll RSS, JSON APIs, and GitHub with watermark dedup.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwatchers\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[203],{"categoryNo":87,"categoryName":88,"taxonomyType":84,"taxonomyTypeDesc":85},[199,51,205,97,38,206,207,208,209,210,211,21,104,212,213],"terminal","automation","http","monitoring","cron","json","rss","devops","with",{"skillNo":215,"name":216,"nameZh":6,"description":217,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":218,"categories":219,"keywords":222,"publishedAt":39},"01M6GJRHJD2A6Q830SWF9W48BC","serving-llms-vllm","vLLM: high-throughput LLM serving, OpenAI API, quantization.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fvllm\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[220,221],{"categoryNo":82,"categoryName":83,"taxonomyType":84,"taxonomyTypeDesc":85},{"categoryNo":90,"categoryName":91,"taxonomyType":92,"taxonomyTypeDesc":93},[223,224,225,38,226,154,227,228,229,157,230,102,231,232,233,234,235,236,237,238],"llms","vLLM","serving llms vllm","research","openai api","tensor","Inference Serving","Production","llm serving","High Throughput","PagedAttention","Continuous Batching","Quantization","Tensor Parallelism","high-throughput","throughput"]