[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JK30ZK7FPRR7T7G0H98CBF":3,"skill-same:01M6JK30ZK7FPRR7T7G0H98CBF":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":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":47,"commitSha":48,"skillDirectory":49,"forksCount":50,"repositoryHtmlUrl":51,"repositoryHomepageUrl":6,"ownerHtmlUrl":52,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":53,"install":54,"resources":67},"01M6JK30ZK7FPRR7T7G0H98CBF","spark-build",null,"Build the cuda-* primate images (cuda-llama-cpp, cuda-comfy, cuda-vllm — the shared base for g.deceiver's six vLLM services) on a Blackwell GB10, freeing that box's unified memory first by stopping whatever it runs, then restarting it. NOTE the standalone coding cluster (qwen3-coder-next) was RETIRED 2026-09-05, so a \"drain\" is no longer a coding outage — it's a g.deceiver-service outage (hutch = memory stack; starsky = the live 27B brain, never build there mid-stream). Checks memory BEFORE stopping anything; --allow-outage \u002F --skip-drain control the trade.","jeffersonjhunt\u002Fcode-monkeys","jeffersonjhunt","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F2308584?v=4","01M6JK0Z7Y76REMWVB4JM2CQN9","Jefferson J Hunt","01M6JK0ZD5DFCQW66H6P76JGMG",1,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fspark-build\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"spark","spark build","build","qwen3","memory","for","standalone","drain","cluster","control","shared","trade","services","next","cpp","images","never","stack","first","vLLM","2026-11-10 10:12:30",false,"---\nname: spark-build\ndescription: Build the cuda-* primate images (cuda-llama-cpp, cuda-comfy, cuda-vllm — the shared base for g.deceiver's six vLLM services) on a Blackwell GB10, freeing that box's unified memory first by stopping whatever it runs, then restarting it. NOTE the standalone coding cluster (qwen3-coder-next) was RETIRED 2026-09-05, so a \"drain\" is no longer a coding outage — it's a g.deceiver-service outage (hutch = memory stack; starsky = the live 27B brain, never build there mid-stream). Checks memory BEFORE stopping anything; --allow-outage \u002F --skip-drain control the trade.\nlicense: Apache-2.0\nmetadata:\n  author: ooe\n  version: \"1.0\"\n---\n\n# spark-build\n\nThe spark-class primate images can only build on an NVIDIA-kernel host with a Blackwell GPU — in practice, one of the spark cluster replicas. Building from source while a vLLM container is loaded will exhaust the 128 GB unified memory and OOM the build. This skill handles the cluster-aware orchestration:\n\n1. **Check capacity first** — verify a *peer* replica is still serving (its own vLLM `\u002Fhealth`), before anything is stopped\n2. Drain the target node (stop `vllm`, freeing the unified memory) and confirm it actually stopped\n3. Sync the working tree to the build host (`rsync` by default, or `git pull` of a named ref)\n4. Build the requested spark images on the host (each `make \u003Cimg>.build` builds the shared `cuda-base` base — `:runtime` + `:devel` — first as a prerequisite; it carries `nvtop` and the codemonkey user, and is cached after the first run)\n5. Restart the vLLM container and wait for it to serve again (~2 min cold weight load)\n\n## When to Use\n\n- Bumping pins in `primates\u002F{cuda-llama-cpp,cuda-comfy,cuda-vllm}.dockerfile`\n- Rebuilding any spark image after a code change\n- Rolling a vLLM version through the cluster one replica at a time\n\nDo NOT use for the standard primates (claude \u002F opencode \u002F kiro \u002F etc.) — those build on the workstation (Mjolnir), don't touch the cluster, and the chain depends on `codemonkey:latest`.\n\n## Prerequisites\n\n- Passwordless SSH to the build host as `$SSH_USER` from `spark\u002Fcluster\u002Fcluster.env`\n- `$SSH_USER` is in the `docker` group on the host (so `make` works without sudo). **Root is not needed** — the build is a `docker build`. The service account (`gdeceiver`) deliberately has no sudo.\n- `spark\u002Fcluster\u002Fcluster.env` exists locally (gitignored — copy `cluster.env.example` and fill in)\n\n## Topology Assumptions\n\nThe skill reads `spark\u002Fcluster\u002Fcluster.env`:\n- `REPLICAS` — space-separated cluster hosts (currently one: `hutch.tworivers`)\n- `LB_HOST` — the host running the LB. Today that is `minerva.tworivers`, a standalone control-plane box running **LiteLLM** — not a replica, and not something you ever build on\n- `SSH_USER`, `VLLM_PORT`, `LB_PORT`, `LB_STATS_PORT` (the last is vestigial — it was HAProxy's stats port; LiteLLM has none)\n\nDefault build target is the first replica that is **not** `LB_HOST`. With `LB_HOST` off the replica list, that is simply the first entry of `$REPLICAS` (hutch). Override with `--host`.\n\n## DNS \u002F Hostname Notes\n\nThe cluster scripts use bare hostnames (e.g. `hutch`) which resolve on the workstation and on each cluster box. When run from **inside a primate container**, bare names may not resolve — pass the FQDN (e.g. `--host hutch.tworivers`).\n\nWhen `--host` is an FQDN and `LB_HOST` from `cluster.env` is bare, the skill auto-suffixes the LB SSH target with the same domain (so `--host hutch.tworivers` + `LB_HOST=minerva` → LB target `minerva.tworivers`). Override explicitly with `--lb-host`. The current `cluster.env` already uses FQDNs, so this is a no-op there.\n\n## Usage\n\n```bash\n# Build all three spark images on the default non-LB replica (rsync working tree)\n.\u002Fscripts\u002Fspark-build\n\n# Build just cuda-vllm on a specific host\n.\u002Fscripts\u002Fspark-build --host hutch.tworivers --image cuda-vllm\n\n# Build multiple images\n.\u002Fscripts\u002Fspark-build --image cuda-llama-cpp --image cuda-vllm\n\n# Build a specific committed ref instead of the working tree\n.\u002Fscripts\u002Fspark-build --sync git --ref master\n\n# Preview without doing anything (network-free)\n.\u002Fscripts\u002Fspark-build --dry-run\n\n# Already drained the host manually (e.g. mid-incident)\n.\u002Fscripts\u002Fspark-build --skip-drain --no-restart\n```\n\n## Flags\n\n| Flag | Default | Purpose |\n|------|---------|---------|\n| `--host HOST` | first non-`LB_HOST` in `$REPLICAS` | SSH target (use FQDN if bare name doesn't resolve) |\n| `--lb-host HOST` | `LB_HOST` from cluster.env (auto-suffixed with `--host`'s domain when `--host` is an FQDN) | Explicit SSH target for the LB host |\n| `--image NAME` | `all` (all three spark images) | Repeatable; image to build |\n| `--sync rsync\\|git` | `rsync` | How to get code onto the host |\n| `--ref REF` | current branch | Git ref for `--sync git` |\n| `--dry-run` | off | Print every step without executing |\n| `--skip-drain` | off | Don't stop vLLM before building (skips the capacity gate; the build then competes with the server for unified memory) |\n| `--allow-outage` | off | Proceed when draining leaves **no** serving replica (single-replica cluster). Without it the script refuses rather than silently taking the model offline |\n| `--no-restart` | off | Don't restart vLLM after building |\n| `--force` | off | Allow targeting `LB_HOST` (takes the API down) |\n| `--help` | — | Show usage |\n\n## Recovery\n\nIf the build is interrupted (Ctrl-C, network drop), an EXIT trap attempts to restart vLLM on the drained host so the cluster recovers. If the trap doesn't fire (kill -9, host crash), restart manually:\n\n```bash\nssh gdeceiver@hutch.tworivers 'cd ~\u002Fspark-deploy\u002Fvllm && docker compose up -d'\n```\n\nThe replica serves again ~2 min after restart (model cold-load); the script polls its `\u002Fhealth` and tells you when it's back.\n\n## ⚠️ The coding cluster is RETIRED (2026-09-05) — this builds a shared base, not a serving replica\n\nThe old premise — hutch is a `qwen3-coder-next` coding replica you drain so peers keep serving — is\n**gone**. The standalone coder (`RedHatAI\u002FQwen3-Coder-Next-NVFP4`) was retired 2026-09-05; coding\nfolded onto g.deceiver's `Qwen3.8-27B-FP8` on starsky (route renamed `qwen3-coder-next` → `code`; see\nthe g.deceiver `model-consolidation-27b` note). `REPLICAS=\"hutch.tworivers\"` no longer names a\n*coding* replica: **hutch now runs g.deceiver's memory stack** (embeddings + reranker), and **starsky\nruns the live co-host reasoning brain** (the 27B).\n\nThis skill still matters — **`cuda-vllm` is the shared base for all six g.deceiver vLLM services**, so\nit's still rebuilt here on a Blackwell (sm_121) GB10. But a \"drain\" is no longer a *coding* outage;\nit's whatever **g.deceiver service** shares the target GB10's UMA:\n\n- **Build on hutch** → contends with \u002F stops the **memory stack** (embeddings, reranker). Retrieval\n  degrades during the build; no coding impact — lower stakes.\n- **Build on starsky** → contends with the **live co-host brain** (reason + code + caption + vision).\n  **NEVER build on starsky while a stream is live** — it takes Gay's reasoning down mid-stream.\n- **`--skip-drain`** — build alongside the running g.deceiver service (no downtime, but competes for\n  the 128 GB UMA — slower, can OOM). Fine next to hutch's memory stack; risky next to starsky's 27B.\n\nThe `--allow-outage` \u002F capacity-gate machinery still runs, but \"peer replica serving\" maps onto\nnothing now — read the gate as \"is it safe to starve this box's g.deceiver service right now,\" which\nfor starsky means **not streaming**.\n\n## What This Skill Doesn't Do\n\n- It does not rebuild standard primates (`make all` on Mjolnir is the path for those)\n- It does not roll the build across the *whole* cluster — by design, only one replica at a time. Run it once per replica if you want fleet-wide updates\n- It does not run smoke tests against the new image — verify manually via the cluster runbook (`spark\u002Fcluster\u002Fdocs\u002Frunbook.md`)\n\n## Dependencies\n\n- `bash` 4+, `ssh`, `rsync` (workstation side)\n- `docker`, `docker compose`, `make`, `git`, `curl` (build host side)\n- A populated `spark\u002Fcluster\u002Fcluster.env`\n\n## Agent Instructions\n\nWhen the user asks to rebuild a spark-class image or roll a vLLM update through the cluster:\n\n1. Confirm which images and which host they want (default to the non-LB replica — today, hutch)\n2. **Warn which g.deceiver service the build starves** (the coding cluster is retired — see the ⚠️ section): building on **hutch** stops the memory stack (retrieval degrades — low stakes); building on **starsky** stops the live 27B brain — **confirm no stream is live first**, never take Gay's reasoning down mid-stream. The script still refuses to stop a box's service without `--allow-outage` and refuses *before* stopping anything. Get explicit agreement, then choose:\n   - `--allow-outage` — accept the service downtime, fastest build\n   - `--skip-drain` — no downtime, but the build competes for unified memory and can OOM (fine next to hutch's memory stack, risky next to starsky's 27B)\n3. Let the script's output stream so the user sees the memory check → stop → build → restore progression\n4. After a `cuda-vllm` rebuild, the six g.deceiver vLLM services (reasoning, embeddings, reranker, guard, …) that layer on it can be rebuilt\u002Fredeployed via the g.deceiver config-layer pipeline; test tool-calling on the `code`\u002F`reasoning` routes through minerva:8888\n5. Never build on both GB10s at once — starsky's is the live co-host brain\n","# spark-build\n\nThe spark-class primate images can only build on an NVIDIA-kernel host with a Blackwell GPU — in practice, one of the spark cluster replicas. Building from source while a vLLM container is loaded will exhaust the 128 GB unified memory and OOM the build. This skill handles the cluster-aware orchestration:\n\n1. **Check capacity first** — verify a *peer* replica is still serving (its own vLLM `\u002Fhealth`), before anything is stopped\n2. Drain the target node (stop `vllm`, freeing the unified memory) and confirm it actually stopped\n3. Sync the working tree to the build host (`rsync` by default, or `git pull` of a named ref)\n4. Build the requested spark images on the host (each `make \u003Cimg>.build` builds the shared `cuda-base` base — `:runtime` + `:devel` — first as a prerequisite; it carries `nvtop` and the codemonkey user, and is cached after the first run)\n5. Restart the vLLM container and wait for it to serve again (~2 min cold weight load)\n\n## When to Use\n\n- Bumping pins in `primates\u002F{cuda-llama-cpp,cuda-comfy,cuda-vllm}.dockerfile`\n- Rebuilding any spark image after a code change\n- Rolling a vLLM version through the cluster one replica at a time\n\nDo NOT use for the standard primates (claude \u002F opencode \u002F kiro \u002F etc.) — those build on the workstation (Mjolnir), don't touch the cluster, and the chain depends on `codemonkey:latest`.\n\n## Prerequisites\n\n- Passwordless SSH to the build host as `$SSH_USER` from `spark\u002Fcluster\u002Fcluster.env`\n- `$SSH_USER` is in the `docker` group on the host (so `make` works without sudo). **Root is not needed** — the build is a `docker build`. The service account (`gdeceiver`) deliberately has no sudo.\n- `spark\u002Fcluster\u002Fcluster.env` exists locally (gitignored — copy `cluster.env.example` and fill in)\n\n## Topology Assumptions\n\nThe skill reads `spark\u002Fcluster\u002Fcluster.env`:\n- `REPLICAS` — space-separated cluster hosts (currently one: `hutch.tworivers`)\n- `LB_HOST` — the host running the LB. Today that is `minerva.tworivers`, a standalone control-plane box running **LiteLLM** — not a replica, and not something you ever build on\n- `SSH_USER`, `VLLM_PORT`, `LB_PORT`, `LB_STATS_PORT` (the last is vestigial — it was HAProxy's stats port; LiteLLM has none)\n\nDefault build target is the first replica that is **not** `LB_HOST`. With `LB_HOST` off the replica list, that is simply the first entry of `$REPLICAS` (hutch). Override with `--host`.\n\n## DNS \u002F Hostname Notes\n\nThe cluster scripts use bare hostnames (e.g. `hutch`) which resolve on the workstation and on each cluster box. When run from **inside a primate container**, bare names may not resolve — pass the FQDN (e.g. `--host hutch.tworivers`).\n\nWhen `--host` is an FQDN and `LB_HOST` from `cluster.env` is bare, the skill auto-suffixes the LB SSH target with the same domain (so `--host hutch.tworivers` + `LB_HOST=minerva` → LB target `minerva.tworivers`). Override explicitly with `--lb-host`. The current `cluster.env` already uses FQDNs, so this is a no-op there.\n\n## Usage\n\n```bash\n# Build all three spark images on the default non-LB replica (rsync working tree)\n.\u002Fscripts\u002Fspark-build\n\n# Build just cuda-vllm on a specific host\n.\u002Fscripts\u002Fspark-build --host hutch.tworivers --image cuda-vllm\n\n# Build multiple images\n.\u002Fscripts\u002Fspark-build --image cuda-llama-cpp --image cuda-vllm\n\n# Build a specific committed ref instead of the working tree\n.\u002Fscripts\u002Fspark-build --sync git --ref master\n\n# Preview without doing anything (network-free)\n.\u002Fscripts\u002Fspark-build --dry-run\n\n# Already drained the host manually (e.g. mid-incident)\n.\u002Fscripts\u002Fspark-build --skip-drain --no-restart\n```\n\n## Flags\n\n| Flag | Default | Purpose |\n|------|---------|---------|\n| `--host HOST` | first non-`LB_HOST` in `$REPLICAS` | SSH target (use FQDN if bare name doesn't resolve) |\n| `--lb-host HOST` | `LB_HOST` from cluster.env (auto-suffixed with `--host`'s domain when `--host` is an FQDN) | Explicit SSH target for the LB host |\n| `--image NAME` | `all` (all three spark images) | Repeatable; image to build |\n| `--sync rsync\\|git` | `rsync` | How to get code onto the host |\n| `--ref REF` | current branch | Git ref for `--sync git` |\n| `--dry-run` | off | Print every step without executing |\n| `--skip-drain` | off | Don't stop vLLM before building (skips the capacity gate; the build then competes with the server for unified memory) |\n| `--allow-outage` | off | Proceed when draining leaves **no** serving replica (single-replica cluster). Without it the script refuses rather than silently taking the model offline |\n| `--no-restart` | off | Don't restart vLLM after building |\n| `--force` | off | Allow targeting `LB_HOST` (takes the API down) |\n| `--help` | — | Show usage |\n\n## Recovery\n\nIf the build is interrupted (Ctrl-C, network drop), an EXIT trap attempts to restart vLLM on the drained host so the cluster recovers. If the trap doesn't fire (kill -9, host crash), restart manually:\n\n```bash\nssh gdeceiver@hutch.tworivers 'cd ~\u002Fspark-deploy\u002Fvllm && docker compose up -d'\n```\n\nThe replica serves again ~2 min after restart (model cold-load); the script polls its `\u002Fhealth` and tells you when it's back.\n\n## ⚠️ The coding cluster is RETIRED (2026-09-05) — this builds a shared base, not a serving replica\n\nThe old premise — hutch is a `qwen3-coder-next` coding replica you drain so peers keep serving — is\n**gone**. The standalone coder (`RedHatAI\u002FQwen3-Coder-Next-NVFP4`) was retired 2026-09-05; coding\nfolded onto g.deceiver's `Qwen3.8-27B-FP8` on starsky (route renamed `qwen3-coder-next` → `code`; see\nthe g.deceiver `model-consolidation-27b` note). `REPLICAS=\"hutch.tworivers\"` no longer names a\n*coding* replica: **hutch now runs g.deceiver's memory stack** (embeddings + reranker), and **starsky\nruns the live co-host reasoning brain** (the 27B).\n\nThis skill still matters — **`cuda-vllm` is the shared base for all six g.deceiver vLLM services**, so\nit's still rebuilt here on a Blackwell (sm_121) GB10. But a \"drain\" is no longer a *coding* outage;\nit's whatever **g.deceiver service** shares the target GB10's UMA:\n\n- **Build on hutch** → contends with \u002F stops the **memory stack** (embeddings, reranker). Retrieval\n  degrades during the build; no coding impact — lower stakes.\n- **Build on starsky** → contends with the **live co-host brain** (reason + code + caption + vision).\n  **NEVER build on starsky while a stream is live** — it takes Gay's reasoning down mid-stream.\n- **`--skip-drain`** — build alongside the running g.deceiver service (no downtime, but competes for\n  the 128 GB UMA — slower, can OOM). Fine next to hutch's memory stack; risky next to starsky's 27B.\n\nThe `--allow-outage` \u002F capacity-gate machinery still runs, but \"peer replica serving\" maps onto\nnothing now — read the gate as \"is it safe to starve this box's g.deceiver service right now,\" which\nfor starsky means **not streaming**.\n\n## What This Skill Doesn't Do\n\n- It does not rebuild standard primates (`make all` on Mjolnir is the path for those)\n- It does not roll the build across the *whole* cluster — by design, only one replica at a time. Run it once per replica if you want fleet-wide updates\n- It does not run smoke tests against the new image — verify manually via the cluster runbook (`spark\u002Fcluster\u002Fdocs\u002Frunbook.md`)\n\n## Dependencies\n\n- `bash` 4+, `ssh`, `rsync` (workstation side)\n- `docker`, `docker compose`, `make`, `git`, `curl` (build host side)\n- A populated `spark\u002Fcluster\u002Fcluster.env`\n\n## Agent Instructions\n\nWhen the user asks to rebuild a spark-class image or roll a vLLM update through the cluster:\n\n1. Confirm which images and which host they want (default to the non-LB replica — today, hutch)\n2. **Warn which g.deceiver service the build starves** (the coding cluster is retired — see the ⚠️ section): building on **hutch** stops the memory stack (retrieval degrades — low stakes); building on **starsky** stops the live 27B brain — **confirm no stream is live first**, never take Gay's reasoning down mid-stream. The script still refuses to stop a box's service without `--allow-outage` and refuses *before* stopping anything. Get explicit agreement, then choose:\n   - `--allow-outage` — accept the service downtime, fastest build\n   - `--skip-drain` — no downtime, but the build competes for unified memory and can OOM (fine next to hutch's memory stack, risky next to starsky's 27B)\n3. Let the script's output stream so the user sees the memory check → stop → build → restore progression\n4. After a `cuda-vllm` rebuild, the six g.deceiver vLLM services (reasoning, embeddings, reranker, guard, …) that layer on it can be rebuilt\u002Fredeployed via the g.deceiver config-layer pipeline; test tool-calling on the `code`\u002F`reasoning` routes through minerva:8888\n5. Never build on both GB10s at once — starsky's is the live co-host brain\n",{"name":5,"license":15,"metadata":44,"description":7},{"author":45,"version":46},"ooe","1.0","master","dbe7ba1a341696481a7f736baf501fe0a6b0d449","007\u002Fskills\u002Fspark-build",0,"https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt","2026-10-22 00:14:11",{"source":8,"skillName":5,"commands":55,"prompt":65,"zipAvailable":66},[56,59,62],{"tool":57,"command":58},"npx","npx skills add jeffersonjhunt\u002Fcode-monkeys --skill spark-build",{"tool":60,"command":61},"bunx","bunx skills add jeffersonjhunt\u002Fcode-monkeys --skill spark-build",{"tool":63,"command":64},"pnpm","pnpm dlx skills add jeffersonjhunt\u002Fcode-monkeys --skill spark-build","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fspark-build\u002FSKILL.md",true,[68,74],{"path":69,"resourceType":70,"resourceTypeDesc":71,"sizeBytes":72,"sourceHtmlUrl":73},"CHANGELOG.md","REFERENCE","参考文档",254,"https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fspark-build\u002FCHANGELOG.md",{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"scripts\u002Fspark-build","SCRIPT","脚本",13185,"https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fspark-build\u002Fscripts\u002Fspark-build",[81,106,131,155,180,197],{"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":87,"publishedAt":39},"01M6JK2W2WVS2SX4VFCGRGG1FT","spark-bench","Run LLM evaluation harnesses (AIME 25, GPQA, LiveCodeBench v6, tau2-bench, SWE-Bench Verified via SWE-agent) against the spark-cluster from a dedicated x86 bench host (intel-nuc.tworivers). The harness runs in the spark-bench primate; only the OpenAI-compatible endpoint URL needs to change between baseline (cluster LB) and test (ad-hoc model server) runs.","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fspark-bench\u002FSKILL.md",[],[19,88,89,90,91,92,93,94,95,96,97,98,99,27,100,101,102,103,104,105],"spark bench","test","change","run","harness","server","baseline","model","only","container","host","via","ad","URL","openai-compatible","harnesses","lb","SWE",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":39},"01M6JK2NCXEKJXPFQ5XMXY3TG7","secret-ops","Decrypt\u002Fencrypt this project's SOPS+age secrets and manage the private hemlighet repo. Use whenever a task reads or changes a secret — sops, age, vault, hemlighet, a *.sops file, personal\u002F* dotfiles. Crypto runs on the configured secret host over ssh, NOT inside a primate. Host\u002Fidentity come from env or ~\u002F.config\u002Fsecret-ops.conf (never hardcoded here).","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fsecret-ops\u002FSKILL.md",[],[113,114,115,116,117,118,119,120,121,122,35,123,124,125,126,127,128,98,129,130],"ops","secret ops","config","encrypt","file","vault","secrets","dotfiles","repo","use","manage","task","crypto","project","age","env","sops","changes",{"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":39},"01M6JK2DY9DJYPPS8C0QB291NV","sdlc","The default software development lifecycle every agent follows — intake, plan, isolate, implement, verify, review, land, deploy, observe, release. Use at the start of any coding task, and whenever deciding whether work is ready to deploy or ready to merge.","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fsdlc\u002FSKILL.md",[],[133,138,139,140,141,142,143,144,145,146,147,122,148,149,150,151,124,152,153,154],"review","implement","merge","development","release","intake","lifecycle","verify","plan","work","ready","observe","default","development lifecycle","software development","software","at",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":166,"publishedAt":39},"01M6JK277C0HA9JGZSSR6Z5QF2","review-adversarial","Adversarial code review with structured findings and a review loop. Use when asked to critically review code, diffs, or design docs with an adversarial mindset.","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Freview-adversarial\u002FSKILL.md",[161],{"categoryNo":162,"categoryName":163,"taxonomyType":164,"taxonomyTypeDesc":165},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",[138,167,168,169,170,171,172,173,174,175,122,176,177,178,179],"review adversarial","code review","design","docs","diffs","code","loop","review code","review loop","mindset","structured","design docs","with",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":39},"01M6JK23MZG8D9WNSWHCJDX9YE","math-fibonacci","Create a fibonacci sequence, as a list, as ascii art to display the divine proportions, etc...","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fmath-fibonacci\u002FSKILL.md",[],[187,188,189,190,191,192,193,194,195,196],"math","math fibonacci","create","list","ascii art","Art","as","ascii","display","sequence",{"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":203,"publishedAt":39},"01M6JK1YKTX26HATGPE7B8FWJZ","img-sixel","Display images as SIXEL graphics in the terminal or convert SIXEL files to PNG. Use when asked to show an image inline, render graphics in a terminal, or convert between SIXEL and PNG formats.","https:\u002F\u002Fgithub.com\u002Fjeffersonjhunt\u002Fcode-monkeys\u002Fblob\u002Fmaster\u002F007\u002Fskills\u002Fimg-sixel\u002FSKILL.md",[],[204,205,206,207,208,209,210,122,34,211,212,193,213,214,195,215],"img","img sixel","image","terminal","graphics","convert","png","files","show","render","formats","inline"]