[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M698S5V2C2TV1ZQ22GED2CP7":3,"skill-same:01M698S5V2C2TV1ZQ22GED2CP7":62},{"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":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":39,"commitSha":40,"skillDirectory":41,"forksCount":42,"repositoryHtmlUrl":43,"repositoryHomepageUrl":6,"ownerHtmlUrl":44,"ownerBlogUrl":45,"ownerDescription":46,"updatedAt":47,"install":48,"resources":61},"01M698S5V2C2TV1ZQ22GED2CP7","enterprise-testing",null,"Select proportional Enterprise validation and diagnose exact CI runs, distinguishing product, harness, infrastructure, and credential failures.","openclaw\u002Fopenclaw-enterprise","openclaw","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F252820863?v=4","01M698P3FSAZ6B4R928ZF19KPT","01M698RXWTJDQTZKRZTTBJTJT2",469,"MIT","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fenterprise-testing\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33],"enterprise testing","testing","Enterprise","harness","product","diagnose","select","ci","validation","credential","infrastructure","2026-11-10 10:12:30",false,"---\nname: enterprise-testing\ndescription: Select proportional Enterprise validation and diagnose exact CI runs, distinguishing product, harness, infrastructure, and credential failures.\n---\n\n# Enterprise Testing\n\nProve the changed contract with the smallest meaningful check, complete required\nchecks, then stop. Broaden or repeat for new changes, failures, or unresolved\nrisks. Use [test-audit](..\u002Ftest-audit\u002FSKILL.md) when authoring or reviewing tests;\ndo not create tests that merely mirror a reversible documentation or style edit.\n\nRead the touched scope's `AGENTS.md` and the selected\n[testing guide](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002FREADME.md). Run commands from the repository\nroot. Use Node.js 24 or newer and repository-pinned pnpm with matching installed\ndependencies. Report missing prerequisites; dependency-independent checks prove only\ntheir own scope. Never run `npm run precommit`.\n\n## Select proof\n\n| Changed contract                         | Starting proof and owner                                                                                                                                         |\n| ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Domain or Driver behavior                | `node --test tests\u002Fconformance\u002F\u003Cname>.test.mjs`; broaden to `pnpm test:conformance` when relevant.                                                               |\n| API or controller behavior               | `node --test tests\u002Fintegration\u002F\u003Cname>.test.mjs`; broaden to `pnpm test:integration`. See [local checks](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md).                         |\n| PostgreSQL persistence                   | `pnpm test:postgres` after the [database prerequisites](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fpostgresql.md); use the actual database for persisted invariants.                  |\n| Docker runtime                           | `pnpm docker:test` with explicit selectors, images, and credentials from [Docker testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fdocker.md).                                      |\n| Kubernetes                               | Select the exact fixture or runtime file from [Kubernetes testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fkubernetes.md), with its disposable cluster and database prerequisites. |\n| Console UI                               | `pnpm test:console-browser` with the prepared browser described in [browser testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md#console-browser-checks).                     |\n| Types, package boundaries, generated API | `pnpm typecheck` (builds packages and checks test types); `pnpm openapi:check` for API changes.                                                                  |\n| Documentation or skills                  | `pnpm docs:check`, relevant links, and `git diff --check`; no runtime tests solely for prose changes.                                                            |\n| CI or test selection                     | `node scripts\u002Fci\u002Frun-tests.ts audit`; inspect [CI ownership](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fci.md), and use `actionlint` for workflow edits when available.              |\n\nRun `pnpm check:workspace` and applicable `pnpm format:check` with the installed\ngraph. The root formatter does not include `.agents\u002Fskills\u002F**\u002F*.md`; inspect\nadapted skill Markdown separately. Keep autoreview implementation and test changes in `openclaw\u002Fagent-skills`.\nUse the [local checks guide](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md) for formatting and\ngenerated-artifact procedures. Resolve `\u003Cname>` to existing owner\u002Fsibling tests;\ndo not run placeholder commands. When all conformance and integration contracts\nneed proof, `pnpm test` selects both; browser and credentialed coverage still\ndepend on their documented selection and prerequisites.\n\n## Real-runtime boundaries\n\nUse only owned disposable resources and authorized credentials. Scope selection\nvariables to the chosen process; preserve shared dependencies, services,\ndatabases, kubeconfig, and unrelated clusters. Do not run untrusted contributor\ntooling against a credentialed local environment; use an approved isolated CI\nenvironment. Setup and credentialed execution need their existing authorization.\n\nFollow [repository integration requirements](..\u002F..\u002F..\u002FAGENTS.md#running-integration-tests)\nand each suite's guide for images, model selection, database roles, credential\nplacement, networking, and cleanup. Do not bypass missing credentials, disable\nisolation, or substitute a fake for requested runtime proof. Selected required\ncluster\u002Fruntime cases must pass without skips. Fixture or in-memory success does\nnot prove genuine gateway, Codex WebSocket, model execution, or production\ndeployment. A green PR aggregate does not prove manual credentialed lanes ran.\n\n## Diagnose CI\n\n```sh\ngh pr view \u003Cpr> --json headRefOid,statusCheckRollup\ngh run view \u003Crun-id> --json status,conclusion,headSha,url,jobs\ngh run view \u003Crun-id> --job \u003Cjob-id> --log\n```\n\nBind evidence to the PR head, actual run SHA, run ID, and job ID. A pull-request\nrun may test a merge commit: record that relation rather than assuming its SHA\nequals the branch head. Inspect the latest attempt for that source; confirm\nwhether a newer run superseded a cancellation. Fetch relevant leaf logs and\nresult artifacts, not just the rollup status. Use [CI result accounting and\ncoverage](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fci.md) to interpret selected lanes and skips.\n\n- **Product:** supported behavior fails with valid setup; reproduce narrowly,\n  repair the owning implementation, and rerun that proof.\n- **Harness:** selection, setup, assertions, or result accounting are wrong;\n  repair the harness without weakening required outcomes.\n- **Infrastructure:** provisioning, image availability, networking, or capacity\n  fails; retain evidence and retry the affected job only when justified.\n- **Credentials:** approved credentials, access, or protected-environment approval\n  is missing; report the gap without exposing values or substituting mock proof.\n\nDo not infer a category solely from a check name. State uncertainty when logs\nare unavailable. Route unrelated failures with evidence instead of expanding\nthe task; never rerun a broad workflow merely to erase a failure. Report commands,\nsource\u002Frun\u002Fjob identity, pass\u002Ffail\u002Fskip counts, proof limits, and remaining blockers.\n\n## Provenance\n\nAdapted from OpenClaw; see [source and intentional adaptations](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fdeveloper-skills.md#provenance-and-updates).\n","# Enterprise Testing\n\nProve the changed contract with the smallest meaningful check, complete required\nchecks, then stop. Broaden or repeat for new changes, failures, or unresolved\nrisks. Use [test-audit](..\u002Ftest-audit\u002FSKILL.md) when authoring or reviewing tests;\ndo not create tests that merely mirror a reversible documentation or style edit.\n\nRead the touched scope's `AGENTS.md` and the selected\n[testing guide](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002FREADME.md). Run commands from the repository\nroot. Use Node.js 24 or newer and repository-pinned pnpm with matching installed\ndependencies. Report missing prerequisites; dependency-independent checks prove only\ntheir own scope. Never run `npm run precommit`.\n\n## Select proof\n\n| Changed contract                         | Starting proof and owner                                                                                                                                         |\n| ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Domain or Driver behavior                | `node --test tests\u002Fconformance\u002F\u003Cname>.test.mjs`; broaden to `pnpm test:conformance` when relevant.                                                               |\n| API or controller behavior               | `node --test tests\u002Fintegration\u002F\u003Cname>.test.mjs`; broaden to `pnpm test:integration`. See [local checks](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md).                         |\n| PostgreSQL persistence                   | `pnpm test:postgres` after the [database prerequisites](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fpostgresql.md); use the actual database for persisted invariants.                  |\n| Docker runtime                           | `pnpm docker:test` with explicit selectors, images, and credentials from [Docker testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fdocker.md).                                      |\n| Kubernetes                               | Select the exact fixture or runtime file from [Kubernetes testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fkubernetes.md), with its disposable cluster and database prerequisites. |\n| Console UI                               | `pnpm test:console-browser` with the prepared browser described in [browser testing](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md#console-browser-checks).                     |\n| Types, package boundaries, generated API | `pnpm typecheck` (builds packages and checks test types); `pnpm openapi:check` for API changes.                                                                  |\n| Documentation or skills                  | `pnpm docs:check`, relevant links, and `git diff --check`; no runtime tests solely for prose changes.                                                            |\n| CI or test selection                     | `node scripts\u002Fci\u002Frun-tests.ts audit`; inspect [CI ownership](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fci.md), and use `actionlint` for workflow edits when available.              |\n\nRun `pnpm check:workspace` and applicable `pnpm format:check` with the installed\ngraph. The root formatter does not include `.agents\u002Fskills\u002F**\u002F*.md`; inspect\nadapted skill Markdown separately. Keep autoreview implementation and test changes in `openclaw\u002Fagent-skills`.\nUse the [local checks guide](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Flocal.md) for formatting and\ngenerated-artifact procedures. Resolve `\u003Cname>` to existing owner\u002Fsibling tests;\ndo not run placeholder commands. When all conformance and integration contracts\nneed proof, `pnpm test` selects both; browser and credentialed coverage still\ndepend on their documented selection and prerequisites.\n\n## Real-runtime boundaries\n\nUse only owned disposable resources and authorized credentials. Scope selection\nvariables to the chosen process; preserve shared dependencies, services,\ndatabases, kubeconfig, and unrelated clusters. Do not run untrusted contributor\ntooling against a credentialed local environment; use an approved isolated CI\nenvironment. Setup and credentialed execution need their existing authorization.\n\nFollow [repository integration requirements](..\u002F..\u002F..\u002FAGENTS.md#running-integration-tests)\nand each suite's guide for images, model selection, database roles, credential\nplacement, networking, and cleanup. Do not bypass missing credentials, disable\nisolation, or substitute a fake for requested runtime proof. Selected required\ncluster\u002Fruntime cases must pass without skips. Fixture or in-memory success does\nnot prove genuine gateway, Codex WebSocket, model execution, or production\ndeployment. A green PR aggregate does not prove manual credentialed lanes ran.\n\n## Diagnose CI\n\n```sh\ngh pr view \u003Cpr> --json headRefOid,statusCheckRollup\ngh run view \u003Crun-id> --json status,conclusion,headSha,url,jobs\ngh run view \u003Crun-id> --job \u003Cjob-id> --log\n```\n\nBind evidence to the PR head, actual run SHA, run ID, and job ID. A pull-request\nrun may test a merge commit: record that relation rather than assuming its SHA\nequals the branch head. Inspect the latest attempt for that source; confirm\nwhether a newer run superseded a cancellation. Fetch relevant leaf logs and\nresult artifacts, not just the rollup status. Use [CI result accounting and\ncoverage](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fci.md) to interpret selected lanes and skips.\n\n- **Product:** supported behavior fails with valid setup; reproduce narrowly,\n  repair the owning implementation, and rerun that proof.\n- **Harness:** selection, setup, assertions, or result accounting are wrong;\n  repair the harness without weakening required outcomes.\n- **Infrastructure:** provisioning, image availability, networking, or capacity\n  fails; retain evidence and retry the affected job only when justified.\n- **Credentials:** approved credentials, access, or protected-environment approval\n  is missing; report the gap without exposing values or substituting mock proof.\n\nDo not infer a category solely from a check name. State uncertainty when logs\nare unavailable. Route unrelated failures with evidence instead of expanding\nthe task; never rerun a broad workflow merely to erase a failure. Report commands,\nsource\u002Frun\u002Fjob identity, pass\u002Ffail\u002Fskip counts, proof limits, and remaining blockers.\n\n## Provenance\n\nAdapted from OpenClaw; see [source and intentional adaptations](..\u002F..\u002F..\u002Fdocs\u002Ftesting\u002Fdeveloper-skills.md#provenance-and-updates).\n",{"name":5,"description":7},"main","d6401b3ae7f8e11e7ee92a72cac0797ca89724a9",".agents\u002Fskills\u002Fenterprise-testing",117,"https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise","https:\u002F\u002Fgithub.com\u002Fopenclaw","https:\u002F\u002Fopenclaw.ai","Your personal, open source AI assistant.","2026-11-15 03:02:16",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add openclaw\u002Fopenclaw-enterprise --skill enterprise-testing",{"tool":54,"command":55},"bunx","bunx skills add openclaw\u002Fopenclaw-enterprise --skill enterprise-testing",{"tool":57,"command":58},"pnpm","pnpm dlx skills add openclaw\u002Fopenclaw-enterprise --skill enterprise-testing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fenterprise-testing\u002FSKILL.md",true,[],[63,79,99,134,148,169],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":34},"01M698SJZ34S9AS3B1JBK8GX3H","oce-google","Use the managed Google Workspace CLI on the dedicated worker.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002Fapps\u002Fcontroller\u002Fplugins\u002Foce-google-workspace\u002Fskills\u002Foce-google\u002FSKILL.md",[],[70,71,72,73,74,75,76,77,78],"google","oce google","google workspace cli","google workspace","workspace","cli","managed","worker","use",{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":86,"publishedAt":34},"01M698SHYHVGNMVGSM6C9AGBAD","test-audit","Gate new or changed Enterprise tests and audit existing tests for observable behavior, credible regressions, duplicate coverage, and test-only production seams.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftest-audit\u002FSKILL.md",[85],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[87,88,89,90,91,92,93,94,95,25,96,97,98],"test audit","test","audit","duplicate","Existing","Production","only","tests","gate","behavior","for","coverage",{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":113,"publishedAt":34},"01M698SG8MF291NMXSNEHXJ7H9","technical-writing","Write, organize, name, edit, or review Enterprise developer documentation, specifications, and technical instructions; ground claims in current source and finish with a plain-language cleanup.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftechnical-writing\u002FSKILL.md",[105,108],{"categoryNo":106,"categoryName":107,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":109,"categoryName":110,"taxonomyType":111,"taxonomyTypeDesc":112},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[114,115,116,117,25,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133],"technical","technical writing","writing","finish","organize","edit","write","name","specifications","instructions","claims","with","documentation","plain-language","cleanup","source","plain","language","review","developer documentation",{"skillNo":135,"name":136,"nameZh":6,"description":137,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":138,"categories":139,"keywords":140,"publishedAt":34},"01M698SEBHNN6T1MY8ZSPYGTTH","spec","Draft or update OpenClaw Enterprise RFCs and implementation plans with repository numbering and lifecycle rules.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fspec\u002FSKILL.md",[],[136,141,142,114,143,144,145,146,25,101,125,147,24,9,116],"update","Rules","implementation","plans","lifecycle","repository","draft",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":34},"01M698SD35D39GMDRV8W4KTTQZ","pr-walkthrough","Record a readable Console walkthrough for a pull request. Use when reviewers need to see an interaction, transition, recovery, or keyboard flow.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fpr-walkthrough\u002FSKILL.md",[],[155,156,157,158,97,159,160,161,162,163,164,165,166,167,78,168],"walkthrough","pr","pr walkthrough","request","pull request","recovery","interaction","transition","record","keyboard","pull","console","when","flow",{"skillNo":170,"name":171,"nameZh":6,"description":172,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":9,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":173,"categories":174,"keywords":175,"publishedAt":34},"01M698SBCNJ4VSNNTYHEJBZGJT","oceinteg","Run named OpenClaw Enterprise end-to-end integration scenarios against real supported installations. Use only when explicitly invoked.","https:\u002F\u002Fgithub.com\u002Fopenclaw\u002Fopenclaw-enterprise\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Foceinteg\u002FSKILL.md",[],[171,176,177,25,178,167,78,93,24,9],"end","integration","run"]