[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6PSF0WH8ARGPXMPSCY2C91T":3,"skill-same:01M6PSF0WH8ARGPXMPSCY2C91T":102},{"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":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":57,"commitSha":58,"skillDirectory":59,"forksCount":14,"repositoryHtmlUrl":60,"repositoryHomepageUrl":6,"ownerHtmlUrl":61,"ownerBlogUrl":62,"ownerDescription":6,"updatedAt":63,"install":64,"resources":77},"01M6PSF0WH8ARGPXMPSCY2C91T","tao-run-on-brev",null,"Brev managed GPU instances with Docker support. Use when running TAO training, evaluation, or inference on Brev GPU instances, managing Brev deployments, or dispatching TAO jobs through the Brev CLI. Trigger phrases include \"run on Brev\", \"Brev GPU instance\", \"submit job to Brev\", \"Brev CLI deployment\".","headmktlucca-ui\u002Fneuroads-lp","headmktlucca-ui","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F247379838?v=4","01M6PDVAV6M1W96D1SR1PDF8CS","NeuroAds","01M6PDVAZ4P281GNDKD45CYTF5",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"tao run on brev","brev","tao","run","instances","instance-based","managed","login","submit","trigger","active","cli","read","Bash","NVIDIA","Evaluation","deployment","training","support","docker","2026-11-10 10:12:30",false,"---\nname: tao-run-on-brev\ndescription: Brev managed GPU instances with Docker support. Use when running TAO training, evaluation, or inference on\n  Brev GPU instances, managing Brev deployments, or dispatching TAO jobs through the Brev CLI. Trigger phrases include\n  \"run on Brev\", \"Brev GPU instance\", \"submit job to Brev\", \"Brev CLI deployment\".\nlicense: Apache-2.0\ncompatibility: Requires the brev CLI (https:\u002F\u002Fgithub.com\u002Fbrevdev\u002Fbrev-cli) and an active brev login.\nmetadata:\n  author: NVIDIA Corporation\n  version: \"0.1.0\"\nallowed-tools: Read Bash\ntags:\n- gpu\n- compute\n- instance-based\n- brev\n---\n\n# Brev\n\nNVIDIA Brev provides on-demand GPU instances across multiple cloud providers. Instances come pre-loaded with NVIDIA drivers, CUDA, Docker, and NVIDIA Container Toolkit.\n\nBrev is instance-based (not job-based like Lepton). You create an instance, run commands on it via `brev exec`, and delete it when done. The TAO SDK's BrevHandler wraps this into the standard job interface.\n\n## Preflight\n\nThis skill needs the `brev` CLI, its companion agent skill (`brev-cli`), and an active login. Check before proceeding:\n\n```bash\n# 1. brev CLI installed\ncommand -v brev >\u002Fdev\u002Fnull 2>&1 || {\n  echo \"MISSING: brev CLI not installed. Install:\"\n  echo \"  https:\u002F\u002Fdocs.nvidia.com\u002Fbrev\u002F\"\n  exit 1\n}\n\n# 2. brev-cli agent skill installed — provides the brev CLI's command reference to the agent\n[ -d \"$HOME\u002F.claude\u002Fskills\u002Fbrev-cli\" ] || [ -d \".claude\u002Fskills\u002Fbrev-cli\" ] || {\n  echo \"MISSING: brev-cli agent skill not installed. Run:\"\n  echo \"  brev agent-skill install\"\n  exit 1\n}\n\n# 3. brev login active — always token-login first when running headless.\n#    Plain `brev ls` will hit an interactive auth prompt (read: EOF on stdin)\n#    even when BREV_API_TOKEN is set, so refresh the session up front.\nif [ -n \"$BREV_API_TOKEN\" ]; then\n  brev login --token \"$BREV_API_TOKEN\" >\u002Fdev\u002Fnull 2>&1 || {\n    echo \"MISSING: brev token login failed. Verify BREV_API_TOKEN.\"\n    exit 1\n  }\nfi\n# Retry once after a forced re-login: cached creds occasionally desync and the\n# first `brev ls` returns auth EOF until the session is rebuilt.\nbrev ls >\u002Fdev\u002Fnull 2>&1 || {\n  [ -n \"$BREV_API_TOKEN\" ] && brev login --token \"$BREV_API_TOKEN\" >\u002Fdev\u002Fnull 2>&1\n  brev ls >\u002Fdev\u002Fnull 2>&1 || {\n    echo \"MISSING: not logged in to brev. Run:\"\n    echo \"  brev login                                    # interactive (opens browser)\"\n    echo \"  # or set BREV_API_TOKEN in ~\u002F.config\u002Ftao\u002F.env (then 'brev login --token \\$BREV_API_TOKEN')\"\n    exit 1\n  }\n}\n```\n\nIf any step fails, the agent prompts the user to authorize the fix via Bash, then re-runs the preflight before continuing. The TAO SDK is **not** required for Brev — `brev exec docker run …` is sufficient. Reach for the SDK only if you want Job handles, S3 I\u002FO wrapping via `script_runner`, or state persistence; `nvidia-tao-sdk` is on public PyPI, install the pinned Brev extra from `versions.yaml`: `pip install \"$(\"${TAO_SKILL_BANK_PATH:?}\u002Fscripts\u002Fresolve_versions_key.py\" wheels.tao_sdk_brev)\"`. **When going the SDK route, read `tao-skill-bank:tao-run-platform` for the `BrevSDK` kwarg reference, `build_entrypoint`, and `ActionWorkflow` patterns.**\n\n## Authentication\n\nTwo options:\n\n1. **Automated (recommended)**: Get an API token from the Brev console settings page. Set `BREV_API_TOKEN` as an environment variable (e.g., in `~\u002F.config\u002Ftao\u002F.env`). The handler auto-authenticates via `brev login --token` on first use — same UX as Lepton.\n\n2. **Manual**: Run `brev login` (opens browser). Tokens expire hourly — the handler refreshes automatically.\n\nS3 credentials (ACCESS_KEY, SECRET_KEY) are needed separately for data transfer.\n\n### Headless \u002F non-interactive\n\nIn a CI shell, container, or agent session with no controlling TTY, **always\nrun `brev login --token \"$BREV_API_TOKEN\"` before any other `brev` call** —\neven when the token is exported. Otherwise the CLI prompts on stdin and\nreturns an `EOF` auth error on commands like `brev ls`, `brev create`, or\n`brev exec`. Re-run the token login if a call returns auth-EOF; a single\nrefresh is usually enough.\n\n## Launch Preflight\n\nBefore generating scripts or submitting jobs:\n\n1. Verify `BREV_API_TOKEN` is set.\n2. Verify the `brev` CLI is installed and can list instances, for example\n   `brev ls --json`. If needed, authenticate with `brev login --token`.\n3. For `s3:\u002F\u002F` datasets\u002Fresults, verify `ACCESS_KEY` and `SECRET_KEY` are set\n   and the exact paths are readable with `aws s3 ls`.\n4. Do not accept local `\u002Fpath` inputs for Brev unless the user has proven those\n   paths exist on the target Brev instance or are mounted into it.\n5. Verify model-specific credentials such as `HF_TOKEN` before launch.\n\n## Instance Lifecycle\n\nThe agent controls instance lifecycle:\n\n- **Reuse**: Pass `instance_id` in `backend_details` to run multiple jobs on the same instance. Efficient for multi-step workflows.\n- **Ephemeral**: Omit `instance_id` — the handler creates a new instance per job. Clean but slower (instance boot ~2-5 min).\n\n### Creating an instance — placement info\n\nFor accounts with more than one cloud credential or workspace group, plain\n`brev create` rejects the call with a placement error. Pass the account-specific\nIDs explicitly:\n\n```bash\nbrev create my-instance \\\n  --gpu L40S:1 \\\n  --cloud-cred-id \u003CcloudCredId> \\\n  --workspace-group-id \u003CworkspaceGroupId>\n```\n\nDiscover the values once and stash them in `~\u002F.config\u002Ftao\u002F.env`:\n\n```bash\nbrev ls --json | jq -r '.workspaces[0].workspaceGroupId'   # default group\nbrev orgs --json | jq -r '.[0].cloudCredentials[].id'      # cloud credential\n```\n\nWhen using the SDK, pass them through `backend_details`:\n\n```python\nBrevSDK().create_job(\n    ...,\n    backend_details={\n        \"cloud_cred_id\": \"\u003CcloudCredId>\",\n        \"workspace_group_id\": \"\u003CworkspaceGroupId>\",\n    },\n)\n```\n\n## Multi-GPU and multi-node\n\n**Multi-node is not supported on Brev.** Brev is instance-based — one job runs on one instance, with no cross-instance coordination.\n\nMulti-GPU **on a single instance** is supported (instances available with up to 8× H100 \u002F A100 \u002F L40S). `gpu_count` maps to the GPU count on the instance; `torchrun --nproc-per-node=N` or PyTorch DDP work within the instance.\n\n## GPU Types\n\nAvailable via `brev search`:\n- L40S, A100 80GB, H100 (availability varies by provider)\n- Use `--gpu-name` to filter, `--min-vram` for memory requirements\n\n## Storage\n\nNo shared NFS\u002FLustre. All data flows through S3 via the script_runner's fsspec integration. Instance-local disk under the login user's home directory (`$HOME`) persists across stop\u002Fstart but not across delete\u002Fcreate.\n\n## Docker on Brev\n\nVM Mode instances have Docker pre-installed. For TAO container images:\n\n```bash\n# NGC auth (one-time per instance)\nbrev exec \u003Cinstance> -- docker login nvcr.io -u '$oauthtoken' -p \u003CNGC_KEY>\n\n# Run a TAO training job\nbrev exec \u003Cinstance> -- docker run --gpus all --rm \\\n  -v $HOME\u002Fdata:\u002Fdata \\\n  nvcr.io\u002Fnvidia\u002Ftao\u002Ftao-toolkit:6.26.3-pyt \\\n  visual_changenet train -e \u002Fdata\u002Fspec.yaml\n```\n\n### Wait for instance readiness before the first `brev exec`\n\nA freshly created instance reports `RUNNING` long before sshd, hostname\nresolution, and the user shell are ready. The first `brev exec` against an\nunsettled instance fails with `hostname not resolvable`,\n`Connection refused`, or a silent timeout. Always poll until a trivial exec\nsucceeds before issuing real work:\n\n```bash\n# Wait up to 5 minutes for shell readiness — covers the SSH bring-up window.\nfor i in $(seq 1 60); do\n  brev exec \u003Cinstance> -- true >\u002Fdev\u002Fnull 2>&1 && break\n  sleep 5\ndone\nbrev exec \u003Cinstance> -- true >\u002Fdev\u002Fnull 2>&1 || {\n  echo \"instance \u003Cinstance> never became exec-ready\"; exit 1;\n}\n```\n\n### `brev exec` timeout for cold-start workloads\n\n`brev exec` inherits no default timeout, but anything that wraps it (the SDK\nhandler, CI step wrappers, `timeout` shell builtins) must allow time for both\nthe SSH bring-up window and the container pull on a fresh instance. Use\n**≥ 600 s (10 min)** for the first exec on a new instance; the previous\n60–120 s default truncates remote startup and surfaces as a spurious\n`exec failed` even though the remote command is still progressing.\n\n## Mixed-Platform Workflows\n\nBrev can be mixed with Lepton in the same workflow. Per-stage platform assignment:\n\n```json\n{\"skill\": \"vcn-gap-analysis\", \"action\": \"analyze\", \"platform\": \"brev\"},\n{\"skill\": \"visual-changenet\", \"action\": \"train\", \"platform\": \"lepton\"}\n```\n\nCPU stages (gap analysis, data merge) run cheaply on Brev. GPU stages (training) run on Lepton H100s.\n\n## Cleanup\n\n```bash\nbrev delete \u003Cinstance>      # plain delete — no flags\n```\n\nThe CLI does not accept `--yes` \u002F `-y`; passing it errors with\n`unknown flag: --yes`. `brev delete \u003Cinstance>` is already non-interactive on\nrecent CLIs, so no confirmation flag is needed.\n\n## Error Patterns\n\n**brev CLI not found**: Install from https:\u002F\u002Fdocs.nvidia.com\u002Fbrev\u002F.\n\n**`brev ls` returns auth EOF even with `BREV_API_TOKEN` set**: Headless shell\nhas no stdin for the interactive auth prompt. Run\n`brev login --token \"$BREV_API_TOKEN\"` first, then retry. If the failure\npersists across a single retry, the token itself is stale — mint a fresh one.\n\n**Token expired**: Handler auto-refreshes via `brev login --token`. If\npersistent, run `brev login` manually.\n\n**`brev create` rejected with placement error (`cloudCredId` \u002F\n`workspaceGroupId` required)**: Multi-credential or multi-workspace accounts\nmust pass `--cloud-cred-id` and\u002For `--workspace-group-id`. See\n*Creating an instance — placement info* above.\n\n**`brev exec` fails with `hostname not resolvable` or `Connection refused`\nright after create**: Instance reports `RUNNING` before sshd is up. Use the\nreadiness-wait loop in *Wait for instance readiness before the first `brev\nexec`* before issuing the real command.\n\n**SDK exec timeout \u002F `exec failed` on a fresh instance**: The SDK's\n`brev exec` wrapper timed out before remote startup finished. Raise the\ntimeout to ≥ 600 s for cold-start runs (see *`brev exec` timeout for\ncold-start workloads*).\n\n**`brev delete --yes`: `unknown flag: --yes`**: The CLI has no confirmation\nflag. Use plain `brev delete \u003Cinstance>`.\n\n**Instance stuck in provisioning**: Some GPU types have limited availability. Try a different `--gpu-name` or provider.\n\n**Docker pull fails on nvcr.io**: NGC_KEY not set or expired. Run `docker login nvcr.io` on the instance.\n","# Brev\n\nNVIDIA Brev provides on-demand GPU instances across multiple cloud providers. Instances come pre-loaded with NVIDIA drivers, CUDA, Docker, and NVIDIA Container Toolkit.\n\nBrev is instance-based (not job-based like Lepton). You create an instance, run commands on it via `brev exec`, and delete it when done. The TAO SDK's BrevHandler wraps this into the standard job interface.\n\n## Preflight\n\nThis skill needs the `brev` CLI, its companion agent skill (`brev-cli`), and an active login. Check before proceeding:\n\n```bash\n# 1. brev CLI installed\ncommand -v brev >\u002Fdev\u002Fnull 2>&1 || {\n  echo \"MISSING: brev CLI not installed. Install:\"\n  echo \"  https:\u002F\u002Fdocs.nvidia.com\u002Fbrev\u002F\"\n  exit 1\n}\n\n# 2. brev-cli agent skill installed — provides the brev CLI's command reference to the agent\n[ -d \"$HOME\u002F.claude\u002Fskills\u002Fbrev-cli\" ] || [ -d \".claude\u002Fskills\u002Fbrev-cli\" ] || {\n  echo \"MISSING: brev-cli agent skill not installed. Run:\"\n  echo \"  brev agent-skill install\"\n  exit 1\n}\n\n# 3. brev login active — always token-login first when running headless.\n#    Plain `brev ls` will hit an interactive auth prompt (read: EOF on stdin)\n#    even when BREV_API_TOKEN is set, so refresh the session up front.\nif [ -n \"$BREV_API_TOKEN\" ]; then\n  brev login --token \"$BREV_API_TOKEN\" >\u002Fdev\u002Fnull 2>&1 || {\n    echo \"MISSING: brev token login failed. Verify BREV_API_TOKEN.\"\n    exit 1\n  }\nfi\n# Retry once after a forced re-login: cached creds occasionally desync and the\n# first `brev ls` returns auth EOF until the session is rebuilt.\nbrev ls >\u002Fdev\u002Fnull 2>&1 || {\n  [ -n \"$BREV_API_TOKEN\" ] && brev login --token \"$BREV_API_TOKEN\" >\u002Fdev\u002Fnull 2>&1\n  brev ls >\u002Fdev\u002Fnull 2>&1 || {\n    echo \"MISSING: not logged in to brev. Run:\"\n    echo \"  brev login                                    # interactive (opens browser)\"\n    echo \"  # or set BREV_API_TOKEN in ~\u002F.config\u002Ftao\u002F.env (then 'brev login --token \\$BREV_API_TOKEN')\"\n    exit 1\n  }\n}\n```\n\nIf any step fails, the agent prompts the user to authorize the fix via Bash, then re-runs the preflight before continuing. The TAO SDK is **not** required for Brev — `brev exec docker run …` is sufficient. Reach for the SDK only if you want Job handles, S3 I\u002FO wrapping via `script_runner`, or state persistence; `nvidia-tao-sdk` is on public PyPI, install the pinned Brev extra from `versions.yaml`: `pip install \"$(\"${TAO_SKILL_BANK_PATH:?}\u002Fscripts\u002Fresolve_versions_key.py\" wheels.tao_sdk_brev)\"`. **When going the SDK route, read `tao-skill-bank:tao-run-platform` for the `BrevSDK` kwarg reference, `build_entrypoint`, and `ActionWorkflow` patterns.**\n\n## Authentication\n\nTwo options:\n\n1. **Automated (recommended)**: Get an API token from the Brev console settings page. Set `BREV_API_TOKEN` as an environment variable (e.g., in `~\u002F.config\u002Ftao\u002F.env`). The handler auto-authenticates via `brev login --token` on first use — same UX as Lepton.\n\n2. **Manual**: Run `brev login` (opens browser). Tokens expire hourly — the handler refreshes automatically.\n\nS3 credentials (ACCESS_KEY, SECRET_KEY) are needed separately for data transfer.\n\n### Headless \u002F non-interactive\n\nIn a CI shell, container, or agent session with no controlling TTY, **always\nrun `brev login --token \"$BREV_API_TOKEN\"` before any other `brev` call** —\neven when the token is exported. Otherwise the CLI prompts on stdin and\nreturns an `EOF` auth error on commands like `brev ls`, `brev create`, or\n`brev exec`. Re-run the token login if a call returns auth-EOF; a single\nrefresh is usually enough.\n\n## Launch Preflight\n\nBefore generating scripts or submitting jobs:\n\n1. Verify `BREV_API_TOKEN` is set.\n2. Verify the `brev` CLI is installed and can list instances, for example\n   `brev ls --json`. If needed, authenticate with `brev login --token`.\n3. For `s3:\u002F\u002F` datasets\u002Fresults, verify `ACCESS_KEY` and `SECRET_KEY` are set\n   and the exact paths are readable with `aws s3 ls`.\n4. Do not accept local `\u002Fpath` inputs for Brev unless the user has proven those\n   paths exist on the target Brev instance or are mounted into it.\n5. Verify model-specific credentials such as `HF_TOKEN` before launch.\n\n## Instance Lifecycle\n\nThe agent controls instance lifecycle:\n\n- **Reuse**: Pass `instance_id` in `backend_details` to run multiple jobs on the same instance. Efficient for multi-step workflows.\n- **Ephemeral**: Omit `instance_id` — the handler creates a new instance per job. Clean but slower (instance boot ~2-5 min).\n\n### Creating an instance — placement info\n\nFor accounts with more than one cloud credential or workspace group, plain\n`brev create` rejects the call with a placement error. Pass the account-specific\nIDs explicitly:\n\n```bash\nbrev create my-instance \\\n  --gpu L40S:1 \\\n  --cloud-cred-id \u003CcloudCredId> \\\n  --workspace-group-id \u003CworkspaceGroupId>\n```\n\nDiscover the values once and stash them in `~\u002F.config\u002Ftao\u002F.env`:\n\n```bash\nbrev ls --json | jq -r '.workspaces[0].workspaceGroupId'   # default group\nbrev orgs --json | jq -r '.[0].cloudCredentials[].id'      # cloud credential\n```\n\nWhen using the SDK, pass them through `backend_details`:\n\n```python\nBrevSDK().create_job(\n    ...,\n    backend_details={\n        \"cloud_cred_id\": \"\u003CcloudCredId>\",\n        \"workspace_group_id\": \"\u003CworkspaceGroupId>\",\n    },\n)\n```\n\n## Multi-GPU and multi-node\n\n**Multi-node is not supported on Brev.** Brev is instance-based — one job runs on one instance, with no cross-instance coordination.\n\nMulti-GPU **on a single instance** is supported (instances available with up to 8× H100 \u002F A100 \u002F L40S). `gpu_count` maps to the GPU count on the instance; `torchrun --nproc-per-node=N` or PyTorch DDP work within the instance.\n\n## GPU Types\n\nAvailable via `brev search`:\n- L40S, A100 80GB, H100 (availability varies by provider)\n- Use `--gpu-name` to filter, `--min-vram` for memory requirements\n\n## Storage\n\nNo shared NFS\u002FLustre. All data flows through S3 via the script_runner's fsspec integration. Instance-local disk under the login user's home directory (`$HOME`) persists across stop\u002Fstart but not across delete\u002Fcreate.\n\n## Docker on Brev\n\nVM Mode instances have Docker pre-installed. For TAO container images:\n\n```bash\n# NGC auth (one-time per instance)\nbrev exec \u003Cinstance> -- docker login nvcr.io -u '$oauthtoken' -p \u003CNGC_KEY>\n\n# Run a TAO training job\nbrev exec \u003Cinstance> -- docker run --gpus all --rm \\\n  -v $HOME\u002Fdata:\u002Fdata \\\n  nvcr.io\u002Fnvidia\u002Ftao\u002Ftao-toolkit:6.26.3-pyt \\\n  visual_changenet train -e \u002Fdata\u002Fspec.yaml\n```\n\n### Wait for instance readiness before the first `brev exec`\n\nA freshly created instance reports `RUNNING` long before sshd, hostname\nresolution, and the user shell are ready. The first `brev exec` against an\nunsettled instance fails with `hostname not resolvable`,\n`Connection refused`, or a silent timeout. Always poll until a trivial exec\nsucceeds before issuing real work:\n\n```bash\n# Wait up to 5 minutes for shell readiness — covers the SSH bring-up window.\nfor i in $(seq 1 60); do\n  brev exec \u003Cinstance> -- true >\u002Fdev\u002Fnull 2>&1 && break\n  sleep 5\ndone\nbrev exec \u003Cinstance> -- true >\u002Fdev\u002Fnull 2>&1 || {\n  echo \"instance \u003Cinstance> never became exec-ready\"; exit 1;\n}\n```\n\n### `brev exec` timeout for cold-start workloads\n\n`brev exec` inherits no default timeout, but anything that wraps it (the SDK\nhandler, CI step wrappers, `timeout` shell builtins) must allow time for both\nthe SSH bring-up window and the container pull on a fresh instance. Use\n**≥ 600 s (10 min)** for the first exec on a new instance; the previous\n60–120 s default truncates remote startup and surfaces as a spurious\n`exec failed` even though the remote command is still progressing.\n\n## Mixed-Platform Workflows\n\nBrev can be mixed with Lepton in the same workflow. Per-stage platform assignment:\n\n```json\n{\"skill\": \"vcn-gap-analysis\", \"action\": \"analyze\", \"platform\": \"brev\"},\n{\"skill\": \"visual-changenet\", \"action\": \"train\", \"platform\": \"lepton\"}\n```\n\nCPU stages (gap analysis, data merge) run cheaply on Brev. GPU stages (training) run on Lepton H100s.\n\n## Cleanup\n\n```bash\nbrev delete \u003Cinstance>      # plain delete — no flags\n```\n\nThe CLI does not accept `--yes` \u002F `-y`; passing it errors with\n`unknown flag: --yes`. `brev delete \u003Cinstance>` is already non-interactive on\nrecent CLIs, so no confirmation flag is needed.\n\n## Error Patterns\n\n**brev CLI not found**: Install from https:\u002F\u002Fdocs.nvidia.com\u002Fbrev\u002F.\n\n**`brev ls` returns auth EOF even with `BREV_API_TOKEN` set**: Headless shell\nhas no stdin for the interactive auth prompt. Run\n`brev login --token \"$BREV_API_TOKEN\"` first, then retry. If the failure\npersists across a single retry, the token itself is stale — mint a fresh one.\n\n**Token expired**: Handler auto-refreshes via `brev login --token`. If\npersistent, run `brev login` manually.\n\n**`brev create` rejected with placement error (`cloudCredId` \u002F\n`workspaceGroupId` required)**: Multi-credential or multi-workspace accounts\nmust pass `--cloud-cred-id` and\u002For `--workspace-group-id`. See\n*Creating an instance — placement info* above.\n\n**`brev exec` fails with `hostname not resolvable` or `Connection refused`\nright after create**: Instance reports `RUNNING` before sshd is up. Use the\nreadiness-wait loop in *Wait for instance readiness before the first `brev\nexec`* before issuing the real command.\n\n**SDK exec timeout \u002F `exec failed` on a fresh instance**: The SDK's\n`brev exec` wrapper timed out before remote startup finished. Raise the\ntimeout to ≥ 600 s for cold-start runs (see *`brev exec` timeout for\ncold-start workloads*).\n\n**`brev delete --yes`: `unknown flag: --yes`**: The CLI has no confirmation\nflag. Use plain `brev delete \u003Cinstance>`.\n\n**Instance stuck in provisioning**: Some GPU types have limited availability. Try a different `--gpu-name` or provider.\n\n**Docker pull fails on nvcr.io**: NGC_KEY not set or expired. Run `docker login nvcr.io` on the instance.\n",{"name":5,"tags":49,"license":15,"metadata":52,"description":7,"allowed-tools":55,"compatibility":56},[50,51,29,25],"gpu","compute",{"author":53,"version":54},"NVIDIA Corporation","0.1.0","Read Bash","Requires the brev CLI (https:\u002F\u002Fgithub.com\u002Fbrevdev\u002Fbrev-cli) and an active brev login.","main","7a940b8e5af16c95e5c190a524421d32fc7445a9",".claude\u002Fskills\u002Ftao-run-on-brev","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui","https:\u002F\u002Fneuroads.com.br","2026-08-12 00:42:44",{"source":8,"skillName":5,"commands":65,"prompt":75,"zipAvailable":76},[66,69,72],{"tool":67,"command":68},"npx","npx skills add headmktlucca-ui\u002Fneuroads-lp --skill tao-run-on-brev",{"tool":70,"command":71},"bunx","bunx skills add headmktlucca-ui\u002Fneuroads-lp --skill tao-run-on-brev",{"tool":73,"command":74},"pnpm","pnpm dlx skills add headmktlucca-ui\u002Fneuroads-lp --skill tao-run-on-brev","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002FSKILL.md",true,[78,84,88,92,96],{"path":79,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"BENCHMARK.md","REFERENCE","参考文档",4334,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002FBENCHMARK.md",{"path":85,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":86,"sourceHtmlUrl":87},"evals\u002Fevals.json",747,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002Fevals\u002Fevals.json",{"path":89,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":90,"sourceHtmlUrl":91},"references\u002Fskill_info.yaml",439,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002Freferences\u002Fskill_info.yaml",{"path":93,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":94,"sourceHtmlUrl":95},"skill-card.md",3874,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002Fskill-card.md",{"path":97,"resourceType":98,"resourceTypeDesc":99,"sizeBytes":100,"sourceHtmlUrl":101},"skill.oms.sig","OTHER","其他",4825,"https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Ftao-run-on-brev\u002Fskill.oms.sig",[103,128,153,179,197,232],{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":116,"publishedAt":44},"01M6PTDCZTXTGSTX4RFK901YSZ","xunit-skill","Generates xUnit.net tests in C#. Covers Fact\u002FTheory, constructor injection, IClassFixture, and FluentAssertions. Use when user mentions \"xUnit\", \"[Fact]\", \"[Theory]\", \"Assert.Equal\", \"C# xUnit\". Triggers on: \"xUnit\", \"[Fact]\", \"[Theory]\", \"Assert.Equal C#\", \"xUnit.net\".","MIT","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fxunit-skill\u002FSKILL.md",[110,113],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":114,"categoryName":115,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[117,118,119,120,121,122,123,124,125,126,127],"xunit","xunit skill","testing","injection","user","use","tests","triggers","unit","unit-testing","C#",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":136,"publishedAt":44},"01M6PTCB59ZTG5FTMWGPYEMMBP","xcuitest-skill","Generates XCUITest UI tests for iOS\u002FiPadOS apps in Swift. Apple's native testing framework for reliable, fast UI automation. Supports local simulators and TestMu AI cloud real devices. Use when user mentions \"XCUITest\", \"XCTest\", \"iOS UI test\", \"Swift test\", \"XCUIApplication\". Triggers on: \"XCUITest\", \"XCTest UI\", \"iOS UI test\", \"Swift UI test\", \"XCUIApplication\", \"TestMu\".","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fxcuitest-skill\u002FSKILL.md",[134,135],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":114,"categoryName":115,"taxonomyType":21,"taxonomyTypeDesc":22},[137,138,119,139,140,141,142,143,122,144,145,146,147,148,123,124,149,150,151,152],"xcuitest","xcuitest skill","automation","test","testing framework","ios","devices","mobile","mobile-testing","ui test","local","apple","apps","native","for","objective",{"skillNo":154,"name":155,"nameZh":6,"description":156,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":163,"publishedAt":44},"01M6PTATMNTY9NF4J7KSR76YK6","world-builder","Create and manage generative game zones for Dorothy's Pokemon-style world. Use this skill when creating, updating, or designing game worlds via MCP tools.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fworld-builder\u002FSKILL.md",[159,162],{"categoryNo":160,"categoryName":161,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":114,"categoryName":115,"taxonomyType":21,"taxonomyTypeDesc":22},[164,165,166,167,168,169,170,171,122,172,173,174,175,176,177,151,178],"builder","world","world builder","MCP","create","mcp tools","Tools","game","pokemon","manage","style","via","theme","zone","generative",{"skillNo":180,"name":181,"nameZh":6,"description":182,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":183,"categories":184,"keywords":187,"publishedAt":44},"01M6PT9Z92JTSQEHE1QR0NNW5F","webdriverio-skill","Generates WebdriverIO (WDIO) automation tests in JavaScript or TypeScript. Supports local and TestMu AI cloud. Use when user mentions \"WebdriverIO\", \"WDIO\", \"wdio.conf\", \"browser.url\", \"$\", \"$$\". Triggers on: \"WebdriverIO\", \"WDIO\", \"wdio\", \"browser.$\".","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fwebdriverio-skill\u002FSKILL.md",[185,186],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":114,"categoryName":115,"taxonomyType":21,"taxonomyTypeDesc":22},[188,119,189,139,190,191,192,193,121,122,194,147,123,124,195,196],"webdriverio skill","typescript","javascript","browser","cloud","e2e","e2e-testing","URL","conf",{"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":107,"licenseFileUrl":6,"sourceHtmlUrl":201,"categories":202,"keywords":212,"publishedAt":44},"01M6PT9NVK36ZWCQ69YXK3FR4K","web-design-guidelines","Web platform design and accessibility guidelines. Use when building web interfaces, auditing accessibility, implementing responsive layouts, or reviewing web UI code. Triggers on tasks involving HTML, CSS, web components, WCAG compliance, responsive design, or web performance.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fweb\u002FSKILL.md",[203,206,207],{"categoryNo":204,"categoryName":205,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":160,"categoryName":161,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":208,"categoryName":209,"taxonomyType":210,"taxonomyTypeDesc":211},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,124,231],"design","web","guidelines","web design guidelines","web design","css","performance","components","web components","tasks","code","web performance","ui","platform design","html","responsive design","responsive","platform","implementing",{"skillNo":233,"name":234,"nameZh":6,"description":235,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":107,"licenseFileUrl":6,"sourceHtmlUrl":236,"categories":237,"keywords":240,"publishedAt":44},"01M6PT9A3JKRE3X34276F2FW5R","watchos-design-guidelines","Apple Human Interface Guidelines for Apple Watch. Use when building watchOS apps, complications, or workout features. Triggers on tasks involving Watch UI, Digital Crown, glanceable interfaces, or wrist-based interactions.","https:\u002F\u002Fgithub.com\u002Fheadmktlucca-ui\u002Fneuroads-lp\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fwatchos\u002FSKILL.md",[238,239],{"categoryNo":160,"categoryName":161,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":208,"categoryName":209,"taxonomyType":210,"taxonomyTypeDesc":211},[213,215,241,222,225,122,242,243,148,230,244,124,149,245,151,246,247],"watchos design guidelines","workout","human","watch","interface","platform-design","features"]