[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M698XZP43T1HMZY6PC5FWTNW":3,"skill-same:01M698XZP43T1HMZY6PC5FWTNW":81},{"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":22,"publishedAt":42,"linkOnly":43,"markdownContent":44,"markdownBody":45,"frontMatter":46,"refName":58,"commitSha":59,"skillDirectory":60,"forksCount":61,"repositoryHtmlUrl":62,"repositoryHomepageUrl":63,"ownerHtmlUrl":64,"ownerBlogUrl":63,"ownerDescription":65,"updatedAt":66,"install":67,"resources":80},"01M698XZP43T1HMZY6PC5FWTNW","oracle",null,"Oracle CLI second-model review\u002Fdebug\u002Frefactor\u002Fdesign with selected files, dry-run token checks, API or browser engine.","openclaw\u002Fopenclaw","openclaw","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F252820863?v=4","01M698P3FSAZ6B4R928ZF19KPT","01M698PDMDRVH56MV30D253NFP",394302,"MIT","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Foracle\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[5,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],"engine","second","with","dry","browser engine","token","files","install","node","model","design","api","https","browser","dev","run","debug","cli","review","2026-11-10 10:12:30",false,"---\nname: oracle\ndescription: \"Oracle CLI second-model review\u002Fdebug\u002Frefactor\u002Fdesign with selected files, dry-run token checks, API or browser engine.\"\nhomepage: https:\u002F\u002Faskoracle.dev\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"?\",\n        \"requires\": { \"bins\": [\"oracle\"] },\n        \"install\":\n          [\n            {\n              \"id\": \"node\",\n              \"kind\": \"node\",\n              \"package\": \"@steipete\u002Foracle\",\n              \"bins\": [\"oracle\"],\n              \"label\": \"Install oracle (node)\",\n            },\n          ],\n      },\n  }\n---\n\n# oracle\n\nOracle bundles a prompt + selected files for one second-model pass. Treat output as advisory; verify against code + tests.\n\n## Main path\n\nCurrent CLI default model: `gpt-5.5-pro`. Browser engine is useful for long ChatGPT Pro runs; API engine is useful when `OPENAI_API_KEY` or Azure config is ready.\n\nRecommended defaults:\n\n- Preview first: `--dry-run summary --files-report`\n- Browser long run: `--engine browser --model gpt-5.5-pro`\n- API explicit: `--engine api --model gpt-5.5`\n\n## Golden path\n\n1. Pick a tight file set (fewest files that still contain the truth).\n2. Preview payload + token spend (`--dry-run` + `--files-report`).\n3. Use browser mode for long Pro thinking; API mode for explicit API calls.\n4. If the run detaches\u002Ftimeouts: reattach to the stored session. Do not blindly re-run.\n\n## Commands (preferred)\n\n- Help:\n  - `oracle --help`\n  - If the binary isn't installed: `npx -y @steipete\u002Foracle --help` (avoid `pnpx` here; sqlite bindings).\n\n- Preview (no tokens):\n  - `oracle --dry-run summary -p \"\u003Ctask>\" --file \"src\u002F**\" --file \"!**\u002F*.test.*\"`\n  - `oracle --dry-run full -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Token sanity:\n  - `oracle --dry-run summary --files-report -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Browser run (main path; long-running is normal):\n  - `oracle --engine browser --model gpt-5.5-pro -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Manual paste fallback:\n  - `oracle --render --copy -p \"\u003Ctask>\" --file \"src\u002F**\"`\n  - Note: `--copy` is a hidden alias for `--copy-markdown`.\n\n## Attaching files (`--file`)\n\n`--file` accepts files, directories, and globs. You can pass it multiple times; entries can be comma-separated.\n\n- Include:\n  - `--file \"src\u002F**\"`\n  - `--file src\u002Findex.ts`\n  - `--file docs --file README.md`\n\n- Exclude:\n  - `--file \"src\u002F**\" --file \"!src\u002F**\u002F*.test.ts\" --file \"!**\u002F*.snap\"`\n\n- Defaults (implementation behavior):\n  - Default-ignored dirs: `node_modules`, `dist`, `coverage`, `.git`, `.turbo`, `.next`, `build`, `tmp` (skipped unless explicitly passed as literal dirs\u002Ffiles).\n  - Honors `.gitignore` when expanding globs.\n  - Does not follow symlinks.\n  - Dotfiles filtered unless opted in via pattern (e.g. `--file \".github\u002F**\"`).\n  - Files > 1 MB rejected.\n\n## Engines (API vs browser)\n\n- Auto-pick: `api` when `OPENAI_API_KEY` is set; otherwise `browser`.\n- Browser supports GPT + Gemini only; use `--engine api` for Claude\u002FGrok\u002FCodex or multi-model runs.\n- Browser attachments:\n  - `--browser-attachments auto|never|always` (auto pastes inline up to ~60k chars then uploads).\n- Remote browser host:\n  - Host: `oracle serve --host 0.0.0.0 --port 9473 --token \u003Csecret>`\n  - Client: `oracle --engine browser --remote-host \u003Chost:port> --remote-token \u003Csecret> -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n## Sessions + slugs\n\n- Stored under `~\u002F.oracle\u002Fsessions` (override with `ORACLE_HOME_DIR`).\n- Runs may detach or take a long time (browser + Pro often does). If the CLI times out: do not re-run; reattach.\n  - List: `oracle status --hours 72`\n  - Attach: `oracle session \u003Cid> --render`\n- Use `--slug \"\u003C3-5 words>\"` to keep session IDs readable.\n- Duplicate prompt guard exists; use `--force` only when you truly want a fresh run.\n\n## Prompt template (high signal)\n\nOracle starts with **zero** project knowledge. Assume the model cannot infer your stack, build tooling, conventions, or \"obvious\" paths. Include:\n\n- Project briefing (stack + build\u002Ftest commands + platform constraints).\n- \"Where things live\" (key directories, entrypoints, config files, boundaries).\n- Exact question + what you tried + the error text (verbatim).\n- Constraints (\"don't change X\", \"must keep public API\", etc).\n- Desired output (\"return patch plan + tests\", \"give 3 options with tradeoffs\").\n\n## Attachments\n\n- Leave `.env`, key files, and auth tokens out of attachments unless the user asks to include them.\n\n## \"Exhaustive prompt\" restoration pattern\n\nFor long investigations, write a standalone prompt + file set so you can rerun days later:\n\n- 6-30 sentence project briefing + the goal.\n- Repro steps + exact errors + what you tried.\n- Attach all context files needed (entrypoints, configs, key modules, docs).\n\nOracle runs are one-shot; the model doesn't remember prior runs. \"Restoring context\" means re-running with the same prompt + `--file …` set (or reattaching a still-running stored session).\n","# oracle\n\nOracle bundles a prompt + selected files for one second-model pass. Treat output as advisory; verify against code + tests.\n\n## Main path\n\nCurrent CLI default model: `gpt-5.5-pro`. Browser engine is useful for long ChatGPT Pro runs; API engine is useful when `OPENAI_API_KEY` or Azure config is ready.\n\nRecommended defaults:\n\n- Preview first: `--dry-run summary --files-report`\n- Browser long run: `--engine browser --model gpt-5.5-pro`\n- API explicit: `--engine api --model gpt-5.5`\n\n## Golden path\n\n1. Pick a tight file set (fewest files that still contain the truth).\n2. Preview payload + token spend (`--dry-run` + `--files-report`).\n3. Use browser mode for long Pro thinking; API mode for explicit API calls.\n4. If the run detaches\u002Ftimeouts: reattach to the stored session. Do not blindly re-run.\n\n## Commands (preferred)\n\n- Help:\n  - `oracle --help`\n  - If the binary isn't installed: `npx -y @steipete\u002Foracle --help` (avoid `pnpx` here; sqlite bindings).\n\n- Preview (no tokens):\n  - `oracle --dry-run summary -p \"\u003Ctask>\" --file \"src\u002F**\" --file \"!**\u002F*.test.*\"`\n  - `oracle --dry-run full -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Token sanity:\n  - `oracle --dry-run summary --files-report -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Browser run (main path; long-running is normal):\n  - `oracle --engine browser --model gpt-5.5-pro -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n- Manual paste fallback:\n  - `oracle --render --copy -p \"\u003Ctask>\" --file \"src\u002F**\"`\n  - Note: `--copy` is a hidden alias for `--copy-markdown`.\n\n## Attaching files (`--file`)\n\n`--file` accepts files, directories, and globs. You can pass it multiple times; entries can be comma-separated.\n\n- Include:\n  - `--file \"src\u002F**\"`\n  - `--file src\u002Findex.ts`\n  - `--file docs --file README.md`\n\n- Exclude:\n  - `--file \"src\u002F**\" --file \"!src\u002F**\u002F*.test.ts\" --file \"!**\u002F*.snap\"`\n\n- Defaults (implementation behavior):\n  - Default-ignored dirs: `node_modules`, `dist`, `coverage`, `.git`, `.turbo`, `.next`, `build`, `tmp` (skipped unless explicitly passed as literal dirs\u002Ffiles).\n  - Honors `.gitignore` when expanding globs.\n  - Does not follow symlinks.\n  - Dotfiles filtered unless opted in via pattern (e.g. `--file \".github\u002F**\"`).\n  - Files > 1 MB rejected.\n\n## Engines (API vs browser)\n\n- Auto-pick: `api` when `OPENAI_API_KEY` is set; otherwise `browser`.\n- Browser supports GPT + Gemini only; use `--engine api` for Claude\u002FGrok\u002FCodex or multi-model runs.\n- Browser attachments:\n  - `--browser-attachments auto|never|always` (auto pastes inline up to ~60k chars then uploads).\n- Remote browser host:\n  - Host: `oracle serve --host 0.0.0.0 --port 9473 --token \u003Csecret>`\n  - Client: `oracle --engine browser --remote-host \u003Chost:port> --remote-token \u003Csecret> -p \"\u003Ctask>\" --file \"src\u002F**\"`\n\n## Sessions + slugs\n\n- Stored under `~\u002F.oracle\u002Fsessions` (override with `ORACLE_HOME_DIR`).\n- Runs may detach or take a long time (browser + Pro often does). If the CLI times out: do not re-run; reattach.\n  - List: `oracle status --hours 72`\n  - Attach: `oracle session \u003Cid> --render`\n- Use `--slug \"\u003C3-5 words>\"` to keep session IDs readable.\n- Duplicate prompt guard exists; use `--force` only when you truly want a fresh run.\n\n## Prompt template (high signal)\n\nOracle starts with **zero** project knowledge. Assume the model cannot infer your stack, build tooling, conventions, or \"obvious\" paths. Include:\n\n- Project briefing (stack + build\u002Ftest commands + platform constraints).\n- \"Where things live\" (key directories, entrypoints, config files, boundaries).\n- Exact question + what you tried + the error text (verbatim).\n- Constraints (\"don't change X\", \"must keep public API\", etc).\n- Desired output (\"return patch plan + tests\", \"give 3 options with tradeoffs\").\n\n## Attachments\n\n- Leave `.env`, key files, and auth tokens out of attachments unless the user asks to include them.\n\n## \"Exhaustive prompt\" restoration pattern\n\nFor long investigations, write a standalone prompt + file set so you can rerun days later:\n\n- 6-30 sentence project briefing + the goal.\n- Repro steps + exact errors + what you tried.\n- Attach all context files needed (entrypoints, configs, key modules, docs).\n\nOracle runs are one-shot; the model doesn't remember prior runs. \"Restoring context\" means re-running with the same prompt + `--file …` set (or reattaching a still-running stored session).\n",{"name":5,"homepage":47,"metadata":48,"description":7},"https:\u002F\u002Faskoracle.dev",{"openclaw":49},{"emoji":50,"install":51,"requires":56},"?",[52],{"id":31,"bins":53,"kind":31,"label":54,"package":55},[5],"Install oracle (node)","@steipete\u002Foracle",{"bins":57},[5],"main","f1c93577085244aa96aa87b53a2df9b59d293bd7","skills\u002Foracle",82862,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw","https:\u002F\u002Fopenclaw.ai","https:\u002F\u002Fgithub.com\u002Fopenclaw","Your personal, open source AI assistant.","2026-11-11 08:46:30",{"source":8,"skillName":5,"commands":68,"prompt":78,"zipAvailable":79},[69,72,75],{"tool":70,"command":71},"npx","npx skills add openclaw\u002Fopenclaw --skill oracle",{"tool":73,"command":74},"bunx","bunx skills add openclaw\u002Fopenclaw --skill oracle",{"tool":76,"command":77},"pnpm","pnpm dlx skills add openclaw\u002Fopenclaw --skill oracle","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Foracle\u002FSKILL.md",true,[],[82,88,107,123,143,164],{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":42},"01M698VP84FNM6G9MR1HPX7MF7","lobster","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fextensions\u002Flobster\u002FSKILL.md",[],[84],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":42},"01M698YY8QGQ7S8TJNKJG6VTPH","xurl","xurl CLI for authenticated X posts, replies, reads\u002Fsearch, DMs, media upload, followers, auth status, or raw v2 API calls.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fxurl\u002FSKILL.md",[],[90,95,34,96,97,98,99,100,30,101,31,102,103,104,105,106,40],"for","calls","replies","posts","upload","tap","brew","Media","search","npm","status","auth",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":113,"publishedAt":42},"01M698YWT1CJ0WK88WB909R9RT","weather","Current weather and forecasts with web_fetch, falling back to wttr.in curl for locations, rain, temperature, travel planning.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fweather\u002FSKILL.md",[],[109,114,115,30,116,101,117,35,118,119,120,121,95,122,25],"travel planning","travel","fetch","curl","help","planning","web","back","temperature",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":132,"publishedAt":42},"01M698YV2Q0R0JJKAWGFS21K0N","visualize","Create inline visuals for code and explanations, or author persistent OpenClaw dashboard widgets with show_widget.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Fvisualize\u002FSKILL.md",[129],{"categoryNo":130,"categoryName":131,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000033","数据分析师",[125,133,134,135,136,95,25,137,138,139,140,141,9,142],"widgets","openclaw dashboard","author","inline","show","code","create","visuals","dashboard","widget",{"skillNo":144,"name":145,"nameZh":6,"description":146,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":147,"categories":148,"keywords":155,"publishedAt":42},"01M698YS2TRJH9ENG28HD9CD87","trello","Manage Trello boards, lists, and cards via the Trello REST API.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Ftrello\u002FSKILL.md",[149,154],{"categoryNo":150,"categoryName":151,"taxonomyType":152,"taxonomyTypeDesc":153},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[145,35,156,157,158,159,28,160,30,101,161,117,34,162,163],"cloud","manage","via","rest api","atlassian","jq","REST","developer",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":170,"publishedAt":42},"01M698YQ9Q3M4W78EWV2KSCSVW","tmux","Control tmux sessions\u002Fpanes for interactive CLIs: list, capture output, send keys, paste text, monitor prompts.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw\u002Fblob\u002Fmain\u002Fskills\u002Ftmux\u002FSKILL.md",[],[166,30,171,172,95,173,174,175,176,177,178,179,101,180,181,182,183,184,185],"send","darwin","keys","paste","output","control","prompts","interactive","list","capture","panes","text","monitor","sessions","linux"]