[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6X1S5V7RN7Q3RPHBSAVRSAJ":3,"skill-same:01M6X1S5V7RN7Q3RPHBSAVRSAJ":65},{"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":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":44,"repositoryHtmlUrl":45,"repositoryHomepageUrl":46,"ownerHtmlUrl":47,"ownerBlogUrl":48,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6X1S5V7RN7Q3RPHBSAVRSAJ","secret-handling",null,"Never read .env files or write secrets to .squad\u002F committed files","github\u002Fsquad","github","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F9919?v=4","01M6AC83DS133TPXFSP1DHNCC6","GitHub","01M6X0MZ6B0WYMMDPK3Q61KER6",3388,"MIT","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fpackages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Fsecret-handling\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"secret handling","security","collaboration","squad","file","secrets","team","read","write","operations","never","issue","files","env","high","2026-11-10 10:12:30",false,"---\nname: secret-handling\ndescription: Never read .env files or write secrets to .squad\u002F committed files\ndomain: security, file-operations, team-collaboration\nconfidence: high\nsource: earned (issue #267 — credential leak incident)\n---\n\n## Context\n\nSpawned agents have read access to the entire repository, including `.env` files containing live credentials. If an agent reads secrets and writes them to `.squad\u002F` files (decisions, logs, history), Scribe auto-commits them to git, exposing them in remote history. This skill codifies absolute prohibitions and safe alternatives.\n\n## Patterns\n\n### Prohibited File Reads\n\n**NEVER read these files:**\n- `.env` (production secrets)\n- `.env.local` (local dev secrets)\n- `.env.production` (production environment)\n- `.env.development` (development environment)\n- `.env.staging` (staging environment)\n- `.env.test` (test environment with real credentials)\n- Any file matching `.env.*` UNLESS explicitly allowed (see below)\n\n**Allowed alternatives:**\n- `.env.example` (safe — contains placeholder values, no real secrets)\n- `.env.sample` (safe — documentation template)\n- `.env.template` (safe — schema\u002Fstructure reference)\n\n**If you need config info:**\n1. **Ask the user directly** — \"What's the database connection string?\"\n2. **Read `.env.example`** — shows structure without exposing secrets\n3. **Read documentation** — check `README.md`, `docs\u002F`, config guides\n\n**NEVER assume you can \"just peek at .env to understand the schema.\"** Use `.env.example` or ask.\n\n### Prohibited Output Patterns\n\n**NEVER write these to `.squad\u002F` files:**\n\n| Pattern Type | Examples | Regex Pattern (for scanning) |\n|--------------|----------|-------------------------------|\n| API Keys | `OPENAI_API_KEY=sk-proj-...`, `GITHUB_TOKEN=ghp_...` | `[A-Z_]+(?:KEY|TOKEN|SECRET)=[^\\s]+` |\n| Passwords | `DB_PASSWORD=super_secret_123`, `password: \"...\"` | `(?:PASSWORD|PASS|PWD)[:=]\\s*[\"']?[^\\s\"']+` |\n| Connection Strings | `postgres:\u002F\u002Fuser:pass@host:5432\u002Fdb`, `Server=...;Password=...` | `(?:postgres|mysql|mongodb):\u002F\u002F[^@]+@|(?:Server|Host)=.*(?:Password|Pwd)=` |\n| JWT Tokens | `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...` | `eyJ[A-Za-z0-9_-]+\\.eyJ[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+` |\n| Private Keys | `-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----` | `-----BEGIN [A-Z ]+PRIVATE KEY-----` |\n| AWS Credentials | `AKIA...`, `aws_secret_access_key=...` | `AKIA[0-9A-Z]{16}|aws_secret_access_key=[^\\s]+` |\n| Email Addresses | `user@example.com` (PII violation per team decision) | `[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}` |\n\n**What to write instead:**\n- Placeholder values: `DATABASE_URL=\u003Cset in .env>`\n- Redacted references: `API key configured (see .env.example)`\n- Architecture notes: \"App uses JWT auth — token stored in session\"\n- Schema documentation: \"Requires OPENAI_API_KEY, GITHUB_TOKEN (see .env.example for format)\"\n\n### Scribe Pre-Commit Validation\n\n**Before committing `.squad\u002F` changes, Scribe MUST:**\n\n1. **Scan all staged files** for secret patterns (use regex table above)\n2. **Check for prohibited file names** (don't commit `.env` even if manually staged)\n3. **If secrets detected:**\n   - STOP the commit (do NOT proceed)\n   - Remove the file from staging: `git reset HEAD \u003Cfile>`\n   - Report to user:\n     ```\n     ? SECRET DETECTED — commit blocked\n\n     File: .squad\u002Fdecisions\u002Finbox\u002Friver-db-config.md\n     Pattern: DATABASE_URL=postgres:\u002F\u002Fuser:password@localhost:5432\u002Fprod\n\n     This file contains credentials and MUST NOT be committed.\n     Please remove the secret, replace with placeholder, and try again.\n     ```\n   - Exit with error (never silently skip)\n\n4. **If no secrets detected:**\n   - Proceed with commit as normal\n\n**Implementation note for Scribe:**\n- Run validation AFTER staging files, BEFORE calling `git commit`\n- Use PowerShell `Select-String` or `git diff --cached` to scan staged content\n- Fail loud — secret leaks are unacceptable, blocking the commit is correct behavior\n\n### Remediation — If a Secret Was Already Committed\n\n**If you discover a secret in git history:**\n\n1. **STOP immediately** — do not make more commits\n2. **Alert the user:**\n   ```\n   ? CREDENTIAL LEAK DETECTED\n\n   A secret was found in git history:\n   Commit: abc1234\n   File: .squad\u002Fdecisions\u002Finbox\u002Fagent-config.md\n   Pattern: API_KEY=sk-proj-...\n\n   This requires immediate remediation:\n   1. Revoke the exposed credential (regenerate API key, rotate password)\n   2. Remove from git history (git filter-repo or BFG)\n   3. Force-push the cleaned history\n\n   Do NOT proceed with new work until this is resolved.\n   ```\n3. **Do NOT attempt to fix it yourself** — secret removal requires specialized tools\n4. **Wait for user confirmation** before resuming work\n\n## Examples\n\n### ✓ Correct: Reading Config Schema\n\n**Agent needs to know what environment variables are required:**\n\n```\nAgent: \"What environment variables does this app need?\"\n→ Reads `.env.example`:\n    OPENAI_API_KEY=sk-...\n    DATABASE_URL=postgres:\u002F\u002Fuser:pass@localhost:5432\u002Fdb\n    REDIS_URL=redis:\u002F\u002Flocalhost:6379\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-env-setup.md:\n    \"App requires three environment variables:\n    - OPENAI_API_KEY (OpenAI API key, format: sk-...)\n    - DATABASE_URL (Postgres connection string)\n    - REDIS_URL (Redis connection string)\n    See .env.example for full schema.\"\n```\n\n### ✗ Incorrect: Reading Live Credentials\n\n**Agent needs to know database schema:**\n\n```\nAgent: (reads .env)\n    DATABASE_URL=postgres:\u002F\u002Fadmin:super_secret_pw@prod.example.com:5432\u002Fappdb\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-db-schema.md:\n    \"Database connection: postgres:\u002F\u002Fadmin:super_secret_pw@prod.example.com:5432\u002Fappdb\"\n\n? VIOLATION: Live credential written to committed file\n```\n\n**Correct approach:**\n```\nAgent: (reads .env.example OR asks user)\nUser: \"It's a Postgres database, schema is in migrations\u002F\"\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-db-schema.md:\n    \"Database: Postgres (connection configured in .env). Schema defined in db\u002Fmigrations\u002F.\"\n```\n\n### ✓ Correct: Scribe Pre-Commit Validation\n\n**Scribe is about to commit:**\n\n```powershell\n# Stage files\ngit add .squad\u002F\n\n# Scan staged content for secrets\n$stagedContent = git diff --cached\n$secretPatterns = @(\n    '[A-Z_]+(?:KEY|TOKEN|SECRET)=[^\\s]+',\n    '(?:PASSWORD|PASS|PWD)[:=]\\s*[\"'']?[^\\s\"'']+',\n    'eyJ[A-Za-z0-9_-]+\\.eyJ[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+'\n)\n\n$detected = $false\nforeach ($pattern in $secretPatterns) {\n    if ($stagedContent -match $pattern) {\n        $detected = $true\n        Write-Host \"? SECRET DETECTED: $($matches[0])\"\n        break\n    }\n}\n\nif ($detected) {\n    # Remove from staging, report, exit\n    git reset HEAD .squad\u002F\n    Write-Error \"Commit blocked — secret detected in staged files\"\n    exit 1\n}\n\n# Safe to commit\ngit commit -F $msgFile\n```\n\n## Anti-Patterns\n\n- ❌ Reading `.env` \"just to check the schema\" — use `.env.example` instead\n- ❌ Writing \"sanitized\" connection strings that still contain credentials\n- ❌ Assuming \"it's just a dev environment\" makes secrets safe to commit\n- ❌ Committing first, scanning later — validation MUST happen before commit\n- ❌ Silently skipping secret detection — fail loud, never silent\n- ❌ Trusting agents to \"know better\" — enforce at multiple layers (prompt, hook, architecture)\n- ❌ Writing secrets to \"temporary\" files in `.squad\u002F` — Scribe commits ALL `.squad\u002F` changes\n- ❌ Extracting \"just the host\" from a connection string — still leaks infrastructure topology\n","## Context\n\nSpawned agents have read access to the entire repository, including `.env` files containing live credentials. If an agent reads secrets and writes them to `.squad\u002F` files (decisions, logs, history), Scribe auto-commits them to git, exposing them in remote history. This skill codifies absolute prohibitions and safe alternatives.\n\n## Patterns\n\n### Prohibited File Reads\n\n**NEVER read these files:**\n- `.env` (production secrets)\n- `.env.local` (local dev secrets)\n- `.env.production` (production environment)\n- `.env.development` (development environment)\n- `.env.staging` (staging environment)\n- `.env.test` (test environment with real credentials)\n- Any file matching `.env.*` UNLESS explicitly allowed (see below)\n\n**Allowed alternatives:**\n- `.env.example` (safe — contains placeholder values, no real secrets)\n- `.env.sample` (safe — documentation template)\n- `.env.template` (safe — schema\u002Fstructure reference)\n\n**If you need config info:**\n1. **Ask the user directly** — \"What's the database connection string?\"\n2. **Read `.env.example`** — shows structure without exposing secrets\n3. **Read documentation** — check `README.md`, `docs\u002F`, config guides\n\n**NEVER assume you can \"just peek at .env to understand the schema.\"** Use `.env.example` or ask.\n\n### Prohibited Output Patterns\n\n**NEVER write these to `.squad\u002F` files:**\n\n| Pattern Type | Examples | Regex Pattern (for scanning) |\n|--------------|----------|-------------------------------|\n| API Keys | `OPENAI_API_KEY=sk-proj-...`, `GITHUB_TOKEN=ghp_...` | `[A-Z_]+(?:KEY|TOKEN|SECRET)=[^\\s]+` |\n| Passwords | `DB_PASSWORD=super_secret_123`, `password: \"...\"` | `(?:PASSWORD|PASS|PWD)[:=]\\s*[\"']?[^\\s\"']+` |\n| Connection Strings | `postgres:\u002F\u002Fuser:pass@host:5432\u002Fdb`, `Server=...;Password=...` | `(?:postgres|mysql|mongodb):\u002F\u002F[^@]+@|(?:Server|Host)=.*(?:Password|Pwd)=` |\n| JWT Tokens | `eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...` | `eyJ[A-Za-z0-9_-]+\\.eyJ[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+` |\n| Private Keys | `-----BEGIN PRIVATE KEY-----`, `-----BEGIN RSA PRIVATE KEY-----` | `-----BEGIN [A-Z ]+PRIVATE KEY-----` |\n| AWS Credentials | `AKIA...`, `aws_secret_access_key=...` | `AKIA[0-9A-Z]{16}|aws_secret_access_key=[^\\s]+` |\n| Email Addresses | `user@example.com` (PII violation per team decision) | `[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}` |\n\n**What to write instead:**\n- Placeholder values: `DATABASE_URL=\u003Cset in .env>`\n- Redacted references: `API key configured (see .env.example)`\n- Architecture notes: \"App uses JWT auth — token stored in session\"\n- Schema documentation: \"Requires OPENAI_API_KEY, GITHUB_TOKEN (see .env.example for format)\"\n\n### Scribe Pre-Commit Validation\n\n**Before committing `.squad\u002F` changes, Scribe MUST:**\n\n1. **Scan all staged files** for secret patterns (use regex table above)\n2. **Check for prohibited file names** (don't commit `.env` even if manually staged)\n3. **If secrets detected:**\n   - STOP the commit (do NOT proceed)\n   - Remove the file from staging: `git reset HEAD \u003Cfile>`\n   - Report to user:\n     ```\n     ? SECRET DETECTED — commit blocked\n\n     File: .squad\u002Fdecisions\u002Finbox\u002Friver-db-config.md\n     Pattern: DATABASE_URL=postgres:\u002F\u002Fuser:password@localhost:5432\u002Fprod\n\n     This file contains credentials and MUST NOT be committed.\n     Please remove the secret, replace with placeholder, and try again.\n     ```\n   - Exit with error (never silently skip)\n\n4. **If no secrets detected:**\n   - Proceed with commit as normal\n\n**Implementation note for Scribe:**\n- Run validation AFTER staging files, BEFORE calling `git commit`\n- Use PowerShell `Select-String` or `git diff --cached` to scan staged content\n- Fail loud — secret leaks are unacceptable, blocking the commit is correct behavior\n\n### Remediation — If a Secret Was Already Committed\n\n**If you discover a secret in git history:**\n\n1. **STOP immediately** — do not make more commits\n2. **Alert the user:**\n   ```\n   ? CREDENTIAL LEAK DETECTED\n\n   A secret was found in git history:\n   Commit: abc1234\n   File: .squad\u002Fdecisions\u002Finbox\u002Fagent-config.md\n   Pattern: API_KEY=sk-proj-...\n\n   This requires immediate remediation:\n   1. Revoke the exposed credential (regenerate API key, rotate password)\n   2. Remove from git history (git filter-repo or BFG)\n   3. Force-push the cleaned history\n\n   Do NOT proceed with new work until this is resolved.\n   ```\n3. **Do NOT attempt to fix it yourself** — secret removal requires specialized tools\n4. **Wait for user confirmation** before resuming work\n\n## Examples\n\n### ✓ Correct: Reading Config Schema\n\n**Agent needs to know what environment variables are required:**\n\n```\nAgent: \"What environment variables does this app need?\"\n→ Reads `.env.example`:\n    OPENAI_API_KEY=sk-...\n    DATABASE_URL=postgres:\u002F\u002Fuser:pass@localhost:5432\u002Fdb\n    REDIS_URL=redis:\u002F\u002Flocalhost:6379\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-env-setup.md:\n    \"App requires three environment variables:\n    - OPENAI_API_KEY (OpenAI API key, format: sk-...)\n    - DATABASE_URL (Postgres connection string)\n    - REDIS_URL (Redis connection string)\n    See .env.example for full schema.\"\n```\n\n### ✗ Incorrect: Reading Live Credentials\n\n**Agent needs to know database schema:**\n\n```\nAgent: (reads .env)\n    DATABASE_URL=postgres:\u002F\u002Fadmin:super_secret_pw@prod.example.com:5432\u002Fappdb\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-db-schema.md:\n    \"Database connection: postgres:\u002F\u002Fadmin:super_secret_pw@prod.example.com:5432\u002Fappdb\"\n\n? VIOLATION: Live credential written to committed file\n```\n\n**Correct approach:**\n```\nAgent: (reads .env.example OR asks user)\nUser: \"It's a Postgres database, schema is in migrations\u002F\"\n\n→ Writes to .squad\u002Fdecisions\u002Finbox\u002Friver-db-schema.md:\n    \"Database: Postgres (connection configured in .env). Schema defined in db\u002Fmigrations\u002F.\"\n```\n\n### ✓ Correct: Scribe Pre-Commit Validation\n\n**Scribe is about to commit:**\n\n```powershell\n# Stage files\ngit add .squad\u002F\n\n# Scan staged content for secrets\n$stagedContent = git diff --cached\n$secretPatterns = @(\n    '[A-Z_]+(?:KEY|TOKEN|SECRET)=[^\\s]+',\n    '(?:PASSWORD|PASS|PWD)[:=]\\s*[\"'']?[^\\s\"'']+',\n    'eyJ[A-Za-z0-9_-]+\\.eyJ[A-Za-z0-9_-]+\\.[A-Za-z0-9_-]+'\n)\n\n$detected = $false\nforeach ($pattern in $secretPatterns) {\n    if ($stagedContent -match $pattern) {\n        $detected = $true\n        Write-Host \"? SECRET DETECTED: $($matches[0])\"\n        break\n    }\n}\n\nif ($detected) {\n    # Remove from staging, report, exit\n    git reset HEAD .squad\u002F\n    Write-Error \"Commit blocked — secret detected in staged files\"\n    exit 1\n}\n\n# Safe to commit\ngit commit -F $msgFile\n```\n\n## Anti-Patterns\n\n- ❌ Reading `.env` \"just to check the schema\" — use `.env.example` instead\n- ❌ Writing \"sanitized\" connection strings that still contain credentials\n- ❌ Assuming \"it's just a dev environment\" makes secrets safe to commit\n- ❌ Committing first, scanning later — validation MUST happen before commit\n- ❌ Silently skipping secret detection — fail loud, never silent\n- ❌ Trusting agents to \"know better\" — enforce at multiple layers (prompt, hook, architecture)\n- ❌ Writing secrets to \"temporary\" files in `.squad\u002F` — Scribe commits ALL `.squad\u002F` changes\n- ❌ Extracting \"just the host\" from a connection string — still leaks infrastructure topology\n",{"name":5,"domain":39,"source":40,"confidence":33,"description":7},"security, file-operations, team-collaboration","earned (issue","dev","7b731ec97f35346bdc4fa87c3edaf16b808fc0ae","packages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Fsecret-handling",518,"https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad","https:\u002F\u002Fgithub.github.io\u002Fsquad\u002F","https:\u002F\u002Fgithub.com\u002Fgithub","https:\u002F\u002Fgithub.com\u002Fabout","How people build software.","2026-11-14 03:47:34",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add github\u002Fsquad --skill secret-handling",{"tool":57,"command":58},"bunx","bunx skills add github\u002Fsquad --skill secret-handling",{"tool":60,"command":61},"pnpm","pnpm dlx skills add github\u002Fsquad --skill secret-handling","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fpackages\u002Fsquad-sdk\u002Ftemplates\u002Fskills\u002Fsecret-handling\u002FSKILL.md",true,[],[66,74,81,88,118,130],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":73},"01M76742ST8ZMSD38226TH61CN","squad-coordinator-init-mode","Squad coordinator only: Init Mode, proposing and casting a new team. Load when team.md is missing or has an empty roster, or when asked to set up or cast a team.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fplugins\u002Fsquad\u002Fskills\u002Fsquad-coordinator-init-mode\u002FSKILL.md",[],[],"2026-11-12 13:55:43",{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":73},"01M7673KYSME979M20YQTVV8P6","retro-enforcement","Keep retrospectives on schedule and track their action items as GitHub Issues, not markdown checklists","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fplugins\u002Fsquad\u002Fskills\u002Fretro-enforcement\u002FSKILL.md",[],[],{"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":73},"01M7670QCHBSR4W2XSX8XPA2ZB","cli-wiring","Checklist for wiring a new Squad CLI command: route it in cli-entry.ts, add help text, and test that it is reachable","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fplugins\u002Fsquad\u002Fskills\u002Fcli-wiring\u002FSKILL.md",[],[],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":99,"publishedAt":34},"01M6X287DVJK1S91END9DSHETN","gh-aw-enlistment","Enlist a repository into Squad by installing the supported GitHub Agentic Workflows (gh-aw) bootstrap — with strict compilation, an explicit safe-update allowlist, and a human-reviewed bootstrap PR. Never auto-merges.","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Fworkflows\u002Fskills\u002Fgh-aw-enlistment\u002FSKILL.md",[94],{"categoryNo":95,"categoryName":96,"taxonomyType":97,"taxonomyTypeDesc":98},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[100,101,102,103,104,105,22,106,107,108,109,110,111,112,113,114,31,115,116,117],"gh aw enlistment","gh","preflight","guide","identity","compiling","pr creation","Safety","safe","update","human","github cli","lock","workflows","auto","agentic workflows","ci","actions",{"skillNo":119,"name":120,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":121,"categories":122,"keywords":124,"publishedAt":34},"01M6X27Y5119CSRQFFJCV6432R","My Skill","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fmy-skill\u002FSKILL.md",[123],{"categoryNo":95,"categoryName":96,"taxonomyType":97,"taxonomyTypeDesc":98},[125,126,127,128,129],"my","my skill","tester","testing","vitest",{"skillNo":131,"name":132,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":136,"publishedAt":34},"01M6X27RWAYB2X9ER0MVRRKXGA","bad-skill","https:\u002F\u002Fgithub.com\u002Fgithub\u002Fsquad\u002Fblob\u002Fdev\u002Ftest-fixtures\u002Fskills-test-abb30454\u002Fbad-skill\u002FSKILL.md",[135],{"categoryNo":95,"categoryName":96,"taxonomyType":97,"taxonomyTypeDesc":98},[137,138],"bad","bad skill"]