[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6XDJS1N062672WRSPKVZT68":3,"skill-same:01M6XDJS1N062672WRSPKVZT68":121},{"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":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":70,"commitSha":71,"skillDirectory":72,"forksCount":14,"repositoryHtmlUrl":73,"repositoryHomepageUrl":6,"ownerHtmlUrl":74,"ownerBlogUrl":6,"ownerDescription":75,"updatedAt":76,"install":77,"resources":90},"01M6XDJS1N062672WRSPKVZT68","handoff",null,"Transfer conversation context between agentic CLIs (Claude Code, GitHub Copilot CLI, OpenAI Codex CLI) locally and across machines. Reads a source session transcript by UUID and produces either an inline summary, a paste-ready handoff digest, a written markdown file, or a branch in a user-owned private git repo that another machine can fetch. Use when switching agents mid-task, recovering context, or moving between Windows\u002FLinux\u002FmacOS setups. Triggers on: \"handoff\", \"transfer context\", \"continue in codex\", \"continue in claude\", \"continue in copilot\", \"switch to codex\", \"switch to claude\", \"what was that session about\", \"claude --resume\", \"copilot --resume\", \"codex resume\", \"find the session where\", \"search sessions\", \"which session did I\", \"push handoff\", \"fetch handoff\", \"handoff to other machine\", \"resume on my other laptop\".","kaiohenricunha\u002Fdotbabel","kaiohenricunha","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F69804490?v=4","01M6XCZD37W0KPCDGEA40Y610V","Kaio Cunha","01M6XCZD7SX714D114H3ZPNW09",0,"MIT","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[5,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"conversation","routine","inline","which","paste","sonnet","github copilot cli","openai codex cli","digest","either","ready","list","write","read","branch","prune","search","git","transcript","2026-11-10 10:12:30",false,"---\nid: handoff\nname: handoff\ntype: skill\nversion: 1.3.0\ndomain:\n  - devex\nplatform:\n  - none\ntask:\n  - documentation\n  - debugging\nmaturity: draft\nowner: \"@kaiohenricunha\"\ncreated: 2026-04-17T00:00:00.000Z\nupdated: 2026-05-04T00:00:00.000Z\ndescription: |\n  Transfer conversation context between agentic CLIs (Claude Code, GitHub Copilot CLI, OpenAI Codex CLI) locally and across machines. Reads a source session transcript by UUID and produces either an inline summary, a paste-ready handoff digest, a written markdown file, or a branch in a user-owned private git repo that another machine can fetch. Use when switching agents mid-task, recovering context, or moving between Windows\u002FLinux\u002FmacOS setups. Triggers on: \"handoff\", \"transfer context\", \"continue in codex\", \"continue in claude\", \"continue in copilot\", \"switch to codex\", \"switch to claude\", \"what was that session about\", \"claude --resume\", \"copilot --resume\", \"codex resume\", \"find the session where\", \"search sessions\", \"which session did I\", \"push handoff\", \"fetch handoff\", \"handoff to other machine\", \"resume on my other laptop\".\nargument-hint: \"[pull|push|fetch|list|search|prune|doctor] [args...]\"\ntools: Glob, Read, Grep, Bash, Write\neffort: medium\nmodel: sonnet\ndotbabel:\n  compute:\n    mode: dynamic\n    requirement: routine\n    binding: consumer\n    rationale: The coordinator maps user intent to a bounded context-transfer CLI and verifies its output.\n---\n\n# Handoff — Cross-CLI Session Context Transfer\n\nThin wrapper around the `dotbabel handoff` binary. The binary is the\nauthoritative contract; run `dotbabel handoff --help` for the full\nsub-command list and flag reference. This file maps natural language to\nthe right invocation.\n\n## Auto-trigger phrase mapping\n\n| Trigger phrase                                                         | Invocation                                          |\n| ---------------------------------------------------------------------- | --------------------------------------------------- |\n| `handoff \u003Cid>` \u002F resume-command fragments                              | `dotbabel handoff pull \u003Cid>`                        |\n| `continue in \u003Ccli>` \u002F `switch to \u003Ccli>` \u002F `pull from \u003Ccli>`            | `dotbabel handoff pull \u003Cid> --from \u003Ccli>`           |\n| `what was that session about` + identifier                             | `dotbabel handoff pull \u003Cid> --summary`              |\n| `push handoff` \u002F `send to other machine` \u002F `save this`                 | `dotbabel handoff push --from \u003Chost-cli> [--tag …]` |\n| `pull handoff` \u002F `fetch handoff` \u002F `continue from yesterday's machine` | `dotbabel handoff fetch [\u003Cquery>]`                  |\n\nExtract `\u003Cid>` from the user message (UUID, short UUID, or a deliberate-label\nalias: claude `customTitle`\u002F`aiTitle`, codex `thread_name`, copilot\n`workspace.yaml:name`, or gemini `checkpoint`). Aliases match\ncase-insensitively. Resolution precedence: UUID > short-UUID > `latest` >\nalias (no fall-through on miss).\nThe resolver probes Claude \u002F Copilot \u002F Codex \u002F Gemini roots automatically. If the\nquery is missing or ambiguous, ask one clarifying question before proceeding.\n\n## The `--from` filling rule\n\nWhen invoking `dotbabel handoff push` without a query positional,\ninclude `--from \u003Cyour-cli>` where `\u003Cyour-cli>` is the agent the host LLM\nis running in (`claude` for Claude Code, `copilot` for GitHub Copilot CLI,\n`codex` for Codex). The flag is required in that mode; the binary exits\n64 without it.\n\n## Layered fidelity (Approach A and Approach B)\n\nThe digest combines two layers of context fidelity. Justification and\ntradeoffs are captured in\n`docs\u002Fexperiments\u002Fhandoff-hardening-2026-05-08.md` (added in PR #206;\nthis PR must merge after #206 for the link to resolve).\n\n- **B-floor (always on).** Mechanical extraction the binary performs\n  unconditionally: TodoWrite mining in claude\u002Fcodex transcripts,\n  user-prompt cap of 50 (prompt 1 pinned + last 49), and assistant\n  turn sampling (first turn + last 3). This is what every `push` and\n  `pull` produces with no extra flags. See\n  `references\u002Fdigest-schema.md` for the schema and size bounds.\n- **Approach A (opt-in via `--state-file`).** When\n  `dotbabel handoff push --state-file \u003Cpath>` is passed, the file's\n  raw content (typically a `\u003Chandoff-state>` YAML block authored by\n  the source agent) is prepended above the mechanical `\u003Chandoff>`\n  block. This lets the agent author intent, decisions, and goals\n  verbatim instead of relying on extraction heuristics. The block\n  flows through the same secret scrubber. See\n  `references\u002Fdigest-schema.md` for the rendered shape.\n\n## Tool execution failures\n\nWhen the `dotbabel` binary cannot be executed for any reason —\npermission denied, binary not found, network failure, sandbox\nrestriction — do NOT fabricate, reconstruct, or synthesize a\n`\u003Chandoff>` block from raw session JSONL files. Report the\ntool-execution error verbatim and stop; instruct the user to run\nthe command manually in a shell where `dotbabel` is available.\n\nSpecifically:\n\n1. Quote the exact command attempted and the failure message.\n2. Tell the user to run it themselves and paste the output back.\n3. Do not infer, summarize, or proceed as if the call had succeeded.\n\nWhy: the binary is the authoritative producer of `\u003Chandoff>` blocks\n— it owns the scrub passes (`push` redaction) and the extraction\nlogic §4 data flow depends on. Fabricated output may pass shape\nvalidation but bypasses scrubbing entirely; the consumer cannot\ndistinguish a hand-rolled block from a real one.\n\n## Cross-cutting flags\n\nBrief reference. `dotbabel handoff --help` is authoritative.\n\n- `--from \u003Ccli>` narrows source-CLI auto-detection on `push`, `fetch`, `pull`; filters `list`, `search`, and `prune`.\n  For `pull latest`, omitting `--from` triggers host auto-detection: `CLAUDECODE=1` \u002F `COPILOT_*` \u002F `CODEX_*` \u002F `GEMINI_CLI*` env signals → narrowed to that CLI's root; host undetectable → cross-root union (newest mtime across all four roots).\n- `--summary` is `pull`-only; `fetch --summary` exits 64 because `fetch` retrieves the rendered remote `handoff.md`.\n- `-o \u003Cpath>` (on `pull`) controls output: `-` forces stdout; `auto` writes to `\u003Crepo>\u002Fdocs\u002Fhandoffs\u002F\u003Cdate>-\u003Ccli>-\u003Cshort>.md`; any other string is a literal path.\n- `--since \u003CISO>` cuts off `list` and `search` (default 30 days for `search`).\n- `--limit \u003CN>` caps the row count.\n- `--tag \u003Clabel>` annotates a `push` (repeatable). On `fetch \u003Ctag>`, exact-tag matches are preferred over description substring fallback.\n- `--fixed` \u002F `-F` treats the `search` query as a literal string instead of a regex.\n- `--json` is honoured by `list`, `pull`, `search`.\n- `--state-file \u003Cpath>` (on `push`) prepends a free-form state block (Approach A) to the digest before the mechanical extraction. The block is scrubbed for secrets like any other content.\n\n## Out of scope\n\n- **Invoking the target CLI directly.** The skill prints; the user pastes. Keeps the transfer auditable.\n- **End-to-end encryption.** The git transport is access-controlled by the host (private repo + auth); content is plaintext on the remote. `push` runs the scrubber and fails closed (exit 2) if it can't run. Best-effort pattern pass — see `references\u002Fredaction.md`.\n- **Fuzzy or semantic search.** `search` is substring\u002Fregex only.\n\n## Internal references\n\n- `dotbabel handoff --help` — authoritative flag and sub-command list.\n- `references\u002Fprerequisites.md` — install matrix and remote-transport setup.\n- `references\u002Ffrom-codex.md` — Codex-specific notes.\n- `references\u002Fredaction.md` — scrubber behavior.\n","# Handoff — Cross-CLI Session Context Transfer\n\nThin wrapper around the `dotbabel handoff` binary. The binary is the\nauthoritative contract; run `dotbabel handoff --help` for the full\nsub-command list and flag reference. This file maps natural language to\nthe right invocation.\n\n## Auto-trigger phrase mapping\n\n| Trigger phrase                                                         | Invocation                                          |\n| ---------------------------------------------------------------------- | --------------------------------------------------- |\n| `handoff \u003Cid>` \u002F resume-command fragments                              | `dotbabel handoff pull \u003Cid>`                        |\n| `continue in \u003Ccli>` \u002F `switch to \u003Ccli>` \u002F `pull from \u003Ccli>`            | `dotbabel handoff pull \u003Cid> --from \u003Ccli>`           |\n| `what was that session about` + identifier                             | `dotbabel handoff pull \u003Cid> --summary`              |\n| `push handoff` \u002F `send to other machine` \u002F `save this`                 | `dotbabel handoff push --from \u003Chost-cli> [--tag …]` |\n| `pull handoff` \u002F `fetch handoff` \u002F `continue from yesterday's machine` | `dotbabel handoff fetch [\u003Cquery>]`                  |\n\nExtract `\u003Cid>` from the user message (UUID, short UUID, or a deliberate-label\nalias: claude `customTitle`\u002F`aiTitle`, codex `thread_name`, copilot\n`workspace.yaml:name`, or gemini `checkpoint`). Aliases match\ncase-insensitively. Resolution precedence: UUID > short-UUID > `latest` >\nalias (no fall-through on miss).\nThe resolver probes Claude \u002F Copilot \u002F Codex \u002F Gemini roots automatically. If the\nquery is missing or ambiguous, ask one clarifying question before proceeding.\n\n## The `--from` filling rule\n\nWhen invoking `dotbabel handoff push` without a query positional,\ninclude `--from \u003Cyour-cli>` where `\u003Cyour-cli>` is the agent the host LLM\nis running in (`claude` for Claude Code, `copilot` for GitHub Copilot CLI,\n`codex` for Codex). The flag is required in that mode; the binary exits\n64 without it.\n\n## Layered fidelity (Approach A and Approach B)\n\nThe digest combines two layers of context fidelity. Justification and\ntradeoffs are captured in\n`docs\u002Fexperiments\u002Fhandoff-hardening-2026-05-08.md` (added in PR #206;\nthis PR must merge after #206 for the link to resolve).\n\n- **B-floor (always on).** Mechanical extraction the binary performs\n  unconditionally: TodoWrite mining in claude\u002Fcodex transcripts,\n  user-prompt cap of 50 (prompt 1 pinned + last 49), and assistant\n  turn sampling (first turn + last 3). This is what every `push` and\n  `pull` produces with no extra flags. See\n  `references\u002Fdigest-schema.md` for the schema and size bounds.\n- **Approach A (opt-in via `--state-file`).** When\n  `dotbabel handoff push --state-file \u003Cpath>` is passed, the file's\n  raw content (typically a `\u003Chandoff-state>` YAML block authored by\n  the source agent) is prepended above the mechanical `\u003Chandoff>`\n  block. This lets the agent author intent, decisions, and goals\n  verbatim instead of relying on extraction heuristics. The block\n  flows through the same secret scrubber. See\n  `references\u002Fdigest-schema.md` for the rendered shape.\n\n## Tool execution failures\n\nWhen the `dotbabel` binary cannot be executed for any reason —\npermission denied, binary not found, network failure, sandbox\nrestriction — do NOT fabricate, reconstruct, or synthesize a\n`\u003Chandoff>` block from raw session JSONL files. Report the\ntool-execution error verbatim and stop; instruct the user to run\nthe command manually in a shell where `dotbabel` is available.\n\nSpecifically:\n\n1. Quote the exact command attempted and the failure message.\n2. Tell the user to run it themselves and paste the output back.\n3. Do not infer, summarize, or proceed as if the call had succeeded.\n\nWhy: the binary is the authoritative producer of `\u003Chandoff>` blocks\n— it owns the scrub passes (`push` redaction) and the extraction\nlogic §4 data flow depends on. Fabricated output may pass shape\nvalidation but bypasses scrubbing entirely; the consumer cannot\ndistinguish a hand-rolled block from a real one.\n\n## Cross-cutting flags\n\nBrief reference. `dotbabel handoff --help` is authoritative.\n\n- `--from \u003Ccli>` narrows source-CLI auto-detection on `push`, `fetch`, `pull`; filters `list`, `search`, and `prune`.\n  For `pull latest`, omitting `--from` triggers host auto-detection: `CLAUDECODE=1` \u002F `COPILOT_*` \u002F `CODEX_*` \u002F `GEMINI_CLI*` env signals → narrowed to that CLI's root; host undetectable → cross-root union (newest mtime across all four roots).\n- `--summary` is `pull`-only; `fetch --summary` exits 64 because `fetch` retrieves the rendered remote `handoff.md`.\n- `-o \u003Cpath>` (on `pull`) controls output: `-` forces stdout; `auto` writes to `\u003Crepo>\u002Fdocs\u002Fhandoffs\u002F\u003Cdate>-\u003Ccli>-\u003Cshort>.md`; any other string is a literal path.\n- `--since \u003CISO>` cuts off `list` and `search` (default 30 days for `search`).\n- `--limit \u003CN>` caps the row count.\n- `--tag \u003Clabel>` annotates a `push` (repeatable). On `fetch \u003Ctag>`, exact-tag matches are preferred over description substring fallback.\n- `--fixed` \u002F `-F` treats the `search` query as a literal string instead of a regex.\n- `--json` is honoured by `list`, `pull`, `search`.\n- `--state-file \u003Cpath>` (on `push`) prepends a free-form state block (Approach A) to the digest before the mechanical extraction. The block is scrubbed for secrets like any other content.\n\n## Out of scope\n\n- **Invoking the target CLI directly.** The skill prints; the user pastes. Keeps the transfer auditable.\n- **End-to-end encryption.** The git transport is access-controlled by the host (private repo + auth); content is plaintext on the remote. `push` runs the scrubber and fails closed (exit 2) if it can't run. Best-effort pattern pass — see `references\u002Fredaction.md`.\n- **Fuzzy or semantic search.** `search` is substring\u002Fregex only.\n\n## Internal references\n\n- `dotbabel handoff --help` — authoritative flag and sub-command list.\n- `references\u002Fprerequisites.md` — install matrix and remote-transport setup.\n- `references\u002Ffrom-codex.md` — Codex-specific notes.\n- `references\u002Fredaction.md` — scrubber behavior.\n",{"id":5,"name":5,"task":48,"type":51,"model":29,"owner":52,"tools":53,"domain":54,"effort":56,"created":57,"updated":58,"version":59,"dotbabel":60,"maturity":65,"platform":66,"description":68,"argument-hint":69},[49,50],"documentation","debugging","skill","@kaiohenricunha","Glob, Read, Grep, Bash, Write",[55],"devex","medium",1776384000000,1777852800000,"1.3.0",{"compute":61},{"mode":62,"binding":63,"rationale":64,"requirement":25},"dynamic","consumer","The coordinator maps user intent to a bounded context-transfer CLI and verifies its output.","draft",[67],"none","Transfer conversation context between agentic CLIs (Claude Code, GitHub Copilot CLI, OpenAI Codex CLI) locally and across machines. Reads a source session transcript by UUID and produces either an inline summary, a paste-ready handoff digest, a written markdown file, or a branch in a user-owned private git repo that another machine can fetch. Use when switching agents mid-task, recovering context, or moving between Windows\u002FLinux\u002FmacOS setups. Triggers on: \"handoff\", \"transfer context\", \"continue in codex\", \"continue in claude\", \"continue in copilot\", \"switch to codex\", \"switch to claude\", \"what was that session about\", \"claude --resume\", \"copilot --resume\", \"codex resume\", \"find the session where\", \"search sessions\", \"which session did I\", \"push handoff\", \"fetch handoff\", \"handoff to other machine\", \"resume on my other laptop\".\n","[pull|push|fetch|list|search|prune|doctor] [args...]","main","91c337164997b99943fbcc64e8e362577b67bc81","skills\u002Fhandoff","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha","I'm a Platform\u002FInfra engineer who happens to work in cybersec and write Go code.","2026-10-26 14:12:51",{"source":8,"skillName":5,"commands":78,"prompt":88,"zipAvailable":89},[79,82,85],{"tool":80,"command":81},"npx","npx skills add kaiohenricunha\u002Fdotbabel --skill handoff",{"tool":83,"command":84},"bunx","bunx skills add kaiohenricunha\u002Fdotbabel --skill handoff",{"tool":86,"command":87},"pnpm","pnpm dlx skills add kaiohenricunha\u002Fdotbabel --skill handoff","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002FSKILL.md",true,[91,97,101,105,109,113,117],{"path":92,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":95,"sourceHtmlUrl":96},"references\u002Fclaude-code.md","REFERENCE","参考文档",5387,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fclaude-code.md",{"path":98,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":99,"sourceHtmlUrl":100},"references\u002Fcodex.md",4921,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fcodex.md",{"path":102,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":103,"sourceHtmlUrl":104},"references\u002Fcopilot.md",4085,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fcopilot.md",{"path":106,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":107,"sourceHtmlUrl":108},"references\u002Fdigest-schema.md",4023,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fdigest-schema.md",{"path":110,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":111,"sourceHtmlUrl":112},"references\u002Ffrom-codex.md",2655,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Ffrom-codex.md",{"path":114,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":115,"sourceHtmlUrl":116},"references\u002Fprerequisites.md",3603,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fprerequisites.md",{"path":118,"resourceType":93,"resourceTypeDesc":94,"sizeBytes":119,"sourceHtmlUrl":120},"references\u002Fredaction.md",4367,"https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fhandoff\u002Freferences\u002Fredaction.md",[122,148,182,203,224,247],{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":129,"publishedAt":43},"01M6XDQ7QMASPFZ355MYKCD06T","yolo","Start temporary autonomy for the current task or an explicit scope with a required --for expiry. Codex permits scoped pushes, merges, deploys, and releases after strict testing and validation; Full access is a separate runtime setting. Claude Code uses a session permission hook with a protected-action denylist.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fyolo\u002FSKILL.md",[128],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[124,130,131,132,133,134,135,136,137,138,139,140,141,142,55,143,144,145,146,147],"testing","merge","code","start","access","session","ops","autonomy","releases","permission","full","runtime","scope","hook","true","action","for","scoped",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":162,"publishedAt":43},"01M6XDQ1N21VE4KH98JWGZ7GN9","veracity-audit","Audit a data pipeline for Veracity and Value. Dispatches data-scientist, compliance-auditor, and data-engineer agents with project context injected at dispatch time. All source paths are supplied via flags — no defaults, no project assumptions. Subcommands: audit (full pipeline walk), score-check (scoring math only), gate-check (gate coverage only), source-trace \u003Clabel> (single source end-to-end). Invoke when: \"audit pipeline\", \"veracity check\", \"scoring math correct?\", \"check gates\", \"trace source\", \"verify quality gates\", \"formula correct?\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fveracity-audit\u002FSKILL.md",[154,159],{"categoryNo":155,"categoryName":156,"taxonomyType":157,"taxonomyTypeDesc":158},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",{"categoryNo":160,"categoryName":161,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000037","律师与法务",[163,164,130,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],"audit","veracity audit","review","data pipeline","pipeline","Bash","math","coverage","only","engineer","formula","scoring","time","project","worker","end","at","invoke","when",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":188,"publishedAt":43},"01M6XDPVDKBR376C06CEK9BC5S","validate-spec","Audit an already-implemented spec against the codebase. Walks each constraint (ARCH-N, PERF-N, KD-N, etc.) and acceptance criterion, grounds findings in file:line evidence, runs the spec.json acceptance_commands, and writes a single audit doc to docs\u002Faudits\u002F. Use whenever the user asks to \"validate a spec\", \"audit a spec\", \"check if spec is implemented\", \"verify the spec is done\", \"is this spec really done\", or otherwise wants closure on spec-driven work. Read-only against the spec — produces an audit, never modifies the spec itself.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fvalidate-spec\u002FSKILL.md",[],[189,190,191,130,165,192,193,163,168,194,37,195,171,196,197,198,199,200,201,202],"spec","validate","validate spec","run","acceptance","work","never","max","done","arch","line","2025","spec-driven","closure",{"skillNo":204,"name":205,"nameZh":6,"description":206,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":207,"categories":208,"keywords":212,"publishedAt":43},"01M6XDPMMECH82RAW553Y94HDS","terragrunt-specialist","Deep-dive Terragrunt hierarchy review, DRY pattern audits, and run-all orchestration analysis. Use for structured investigations of multi-environment Terragrunt layouts, dependency graphs, remote state config, and hook correctness. Triggers on: \"Terragrunt audit\", \"run-all review\", \"dependency block\", \"DRY pattern review\", \"env hierarchy audit\", \"mock_outputs\", \"terragrunt hooks\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fterragrunt-specialist\u002FSKILL.md",[209],{"categoryNo":210,"categoryName":211,"taxonomyType":157,"taxonomyTypeDesc":158},"01JBSEEDCAT000000000000011","运维与部署",[213,214,215,165,216,50,192,163,217,168,37,218,219,196,220,221,200,222,179,223],"terragrunt","specialist","terragrunt specialist","orchestration","analysis","dependency","hooks","deep","dry","remote","hierarchy",{"skillNo":225,"name":226,"nameZh":6,"description":227,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":228,"categories":229,"keywords":237,"publishedAt":43},"01M6XDPFJS2HGSE13RXF1HV8S7","terraform-specialist","Deep-dive Terraform architecture review, module design, state management, and migration. Use for structured investigations of Terraform workspaces, provider configuration, module coupling, import workflows, and test coverage. Triggers on: \"Terraform audit\", \"module review\", \"state management\", \"Terraform import\", \"workspace design\", \"provider config review\", \"Terraform testing\".","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fterraform-specialist\u002FSKILL.md",[230,233,234],{"categoryNo":231,"categoryName":232,"taxonomyType":157,"taxonomyTypeDesc":158},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":210,"categoryName":211,"taxonomyType":157,"taxonomyTypeDesc":158},{"categoryNo":235,"categoryName":236,"taxonomyType":157,"taxonomyTypeDesc":158},"01JBSEEDCAT000000000000015","视觉设计",[238,239,214,130,240,165,241,242,243,50,163,168,37,170,244,245,220,246,200,179],"terraform","terraform specialist","design","workflows","architecture","architecture review","test coverage","workspaces","problem",{"skillNo":248,"name":189,"nameZh":6,"description":249,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":250,"categories":251,"keywords":256,"publishedAt":43},"01M6XDP7V6H8WYPSXVEKYE6HJ6","Create structured engineering specs through interactive pairing. Use when the user wants to create a spec, design doc, technical specification, architecture document, RFC, or engineering plan. Triggers on \"let's spec this out\", \"create a spec\", \"design doc\", \"write a technical plan\", \"plan the architecture\". Works for greenfield and brownfield projects. Outputs to docs\u002Fspecs\u002F.","https:\u002F\u002Fgithub.com\u002Fkaiohenricunha\u002Fdotbabel\u002Fblob\u002Fmain\u002Fskills\u002Fspec\u002FSKILL.md",[252,253],{"categoryNo":235,"categoryName":236,"taxonomyType":157,"taxonomyTypeDesc":158},{"categoryNo":254,"categoryName":255,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000032","设计师",[189,240,257,242,258,259,260,36,261,262,263,264,265,266,267,146,268,269,270,271],"component","create","plan","projects","interactive","use","document","specification","triggers","opus","technical specification","trade-offs","technical plan","outputs","frontier"]