[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C1JVJDS6WSWKGK3AAPAVYJ":3,"skill-same:01M6C1JVJDS6WSWKGK3AAPAVYJ":76},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":57,"ownerHtmlUrl":58,"ownerBlogUrl":59,"ownerDescription":60,"updatedAt":61,"install":62,"resources":75},"01M6C1JVJDS6WSWKGK3AAPAVYJ","pipeline-status",null,"Show status overview of all LLM inference pipelines in the current project","jmagly\u002Faiwg","jmagly","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1159087?v=4","01M6C10AK8N2WCSQN11FYGTJWN","Joseph Magly","01M6C10AQ8A2RMED1Y1BSVY7NF",229,"MIT","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Fnlp-prod\u002Fskills\u002Fpipeline-status\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"status","pipeline","pipeline status","nlp","inference","json","haiku","llm inference","read","overview","pipelines","show","efficiency","project","false","2026-11-10 10:12:30",false,"---\nnamespace: aiwg\nname: pipeline-status\nplatforms: [all]\ndescription: Show status overview of all LLM inference pipelines in the current project\ncommandHint:\n  argumentHint: \"[--json]\"\n  allowedTools: Read, Glob\n  model: haiku\n  category: nlp-prod\n  orchestration: false\n  modelRole: efficiency\n  modelTier: economy\n---\n\n# Pipeline Status\n\n**You are the Pipeline Status Reporter** — scanning the current project for `nlp-prod` pipelines and reporting their health at a glance.\n\n## Natural Language Triggers\n\n- \"how are my pipelines\"\n- \"pipeline health\"\n- \"show all pipelines\"\n- \"pipeline status\"\n- \"what pipelines do I have\"\n\n## Parameters\n\n### --json (optional)\nOutput as JSON instead of formatted table.\n\n## Execution\n\n### Step 1: Discover Pipelines\n\nGlob for `**\u002Fpipeline.config.yaml` in the current directory (excluding `node_modules`, `.git`, `prod\u002F`).\n\n### Step 2: Read Each Pipeline\n\nFor each `pipeline.config.yaml`:\n- `name` — pipeline name\n- `pattern` — pipeline pattern\n- `language` — target language\n\nFor each pipeline, also check:\n- `eval\u002Fresults.jsonl` — most recent run date and pass rate\n- `prod\u002F` — whether production artifacts exist\n- `cost-model.yaml` — monthly cost at configured volume\n\n### Step 3: Compute Health Score\n\n| Check | Points |\n|-------|--------|\n| `pipeline.config.yaml` valid | 10 |\n| Prompt files exist | 10 |\n| Evaluator prompt exists and separate | 20 |\n| `eval\u002Fcases.jsonl` with ≥5 cases | 15 |\n| Most recent eval pass rate ≥85% | 25 |\n| Eval run within last 7 days | 10 |\n| `prod\u002F` artifacts exist | 10 |\n\nScore 90+ = Production Ready, 70-89 = Near Ready, \u003C70 = Needs Work\n\n### Step 4: Report\n\n```\nPipeline Status — \u003Cproject> (\u003Cdate>)\n\n┌─────────────────────┬────────────────┬──────────┬──────────────┬────────┬──────────────────┐\n│ Pipeline            │ Pattern        │ Lang     │ Eval Pass    │ Prod?  │ Health           │\n├─────────────────────┼────────────────┼──────────┼──────────────┼────────┼──────────────────┤\n│ product-extractor   │ simple-chain   │ Python   │ 91% (today)  │ ✓      │ Production Ready │\n│ doc-classifier      │ simple-chain   │ Python   │ 78% (3d ago) │ ✗      │ Near Ready       │\n│ qa-rag              │ rag-pipeline   │ TypeScript│ —           │ ✗      │ Needs Work       │\n└─────────────────────┴────────────────┴──────────┴──────────────┴────────┴──────────────────┘\n\nActions recommended:\n  doc-classifier: Pass rate 78% \u003C 85% threshold — run aiwg nlp eval pipelines\u002Fdoc-classifier\u002F\n  qa-rag: No eval run found — run aiwg nlp eval pipelines\u002Fqa-rag\u002F\n```\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fnlp-prod\u002FREADME.md — nlp-prod addon overview\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Frules\u002Fvague-discretion.md — Concrete health score thresholds and pass\u002Ffail criteria\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Frules\u002Fresearch-before-decision.md — Scan pipeline configs before reporting status\n- @$AIWG_ROOT\u002Fdocs\u002Fcli-reference.md — CLI reference for aiwg nlp and metrics commands\n","# Pipeline Status\n\n**You are the Pipeline Status Reporter** — scanning the current project for `nlp-prod` pipelines and reporting their health at a glance.\n\n## Natural Language Triggers\n\n- \"how are my pipelines\"\n- \"pipeline health\"\n- \"show all pipelines\"\n- \"pipeline status\"\n- \"what pipelines do I have\"\n\n## Parameters\n\n### --json (optional)\nOutput as JSON instead of formatted table.\n\n## Execution\n\n### Step 1: Discover Pipelines\n\nGlob for `**\u002Fpipeline.config.yaml` in the current directory (excluding `node_modules`, `.git`, `prod\u002F`).\n\n### Step 2: Read Each Pipeline\n\nFor each `pipeline.config.yaml`:\n- `name` — pipeline name\n- `pattern` — pipeline pattern\n- `language` — target language\n\nFor each pipeline, also check:\n- `eval\u002Fresults.jsonl` — most recent run date and pass rate\n- `prod\u002F` — whether production artifacts exist\n- `cost-model.yaml` — monthly cost at configured volume\n\n### Step 3: Compute Health Score\n\n| Check | Points |\n|-------|--------|\n| `pipeline.config.yaml` valid | 10 |\n| Prompt files exist | 10 |\n| Evaluator prompt exists and separate | 20 |\n| `eval\u002Fcases.jsonl` with ≥5 cases | 15 |\n| Most recent eval pass rate ≥85% | 25 |\n| Eval run within last 7 days | 10 |\n| `prod\u002F` artifacts exist | 10 |\n\nScore 90+ = Production Ready, 70-89 = Near Ready, \u003C70 = Needs Work\n\n### Step 4: Report\n\n```\nPipeline Status — \u003Cproject> (\u003Cdate>)\n\n┌─────────────────────┬────────────────┬──────────┬──────────────┬────────┬──────────────────┐\n│ Pipeline            │ Pattern        │ Lang     │ Eval Pass    │ Prod?  │ Health           │\n├─────────────────────┼────────────────┼──────────┼──────────────┼────────┼──────────────────┤\n│ product-extractor   │ simple-chain   │ Python   │ 91% (today)  │ ✓      │ Production Ready │\n│ doc-classifier      │ simple-chain   │ Python   │ 78% (3d ago) │ ✗      │ Near Ready       │\n│ qa-rag              │ rag-pipeline   │ TypeScript│ —           │ ✗      │ Needs Work       │\n└─────────────────────┴────────────────┴──────────┴──────────────┴────────┴──────────────────┘\n\nActions recommended:\n  doc-classifier: Pass rate 78% \u003C 85% threshold — run aiwg nlp eval pipelines\u002Fdoc-classifier\u002F\n  qa-rag: No eval run found — run aiwg nlp eval pipelines\u002Fqa-rag\u002F\n```\n\n## References\n\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Fnlp-prod\u002FREADME.md — nlp-prod addon overview\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Frules\u002Fvague-discretion.md — Concrete health score thresholds and pass\u002Ffail criteria\n- @$AIWG_ROOT\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Frules\u002Fresearch-before-decision.md — Scan pipeline configs before reporting status\n- @$AIWG_ROOT\u002Fdocs\u002Fcli-reference.md — CLI reference for aiwg nlp and metrics commands\n",{"name":5,"namespace":44,"platforms":45,"commandHint":47,"description":7},"aiwg",[46],"all",{"model":30,"category":48,"modelRole":36,"modelTier":49,"allowedTools":50,"argumentHint":51,"orchestration":40},"nlp-prod","economy","Read, Glob","[--json]","main","6754967c344ccb087a8de06972f55a41067b291b","agentic\u002Fcode\u002Faddons\u002Fnlp-prod\u002Fskills\u002Fpipeline-status",36,"https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg","https:\u002F\u002Faiwg.io","https:\u002F\u002Fgithub.com\u002Fjmagly","https:\u002F\u002Fintegrolabs.io","ml\u002Fai, industrial automation, safety\u002Fsecurity, ssi\r\n\r\nmagly.net\r\nintegrolabs.io\r\naiwg.io\r\nfortemi.com\r\npagenary.com\r\nbytecask.com","2026-11-14 02:10:01",{"source":8,"skillName":5,"commands":63,"prompt":73,"zipAvailable":74},[64,67,70],{"tool":65,"command":66},"npx","npx skills add jmagly\u002Faiwg --skill pipeline-status",{"tool":68,"command":69},"bunx","bunx skills add jmagly\u002Faiwg --skill pipeline-status",{"tool":71,"command":72},"pnpm","pnpm dlx skills add jmagly\u002Faiwg --skill pipeline-status","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Fnlp-prod\u002Fskills\u002Fpipeline-status\u002FSKILL.md",true,[],[77,104,128,134,141,155],{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":84,"publishedAt":39},"01M70QA0BSYJ49EES9V4RE8QH1","host-hardening","Read-only system hardening baseline and plan-first host hardening recommendations for SSH, Docker bind addresses, firewall persistence, datastores, exporters and audit retention.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[83],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[85,86,87,32,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103],"host","host hardening","hardening","re","recommendations","remediation","plan","port","verification","Bash","access","only","retention","audit","never","firewall","bind","secrets","request",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":114,"publishedAt":39},"01M70PNT2Z4HMZPRBTAF6073NN","exposure-analysis","Read-only firewall analysis and effective host exposure reconstruction for Docker published ports, UFW bypass, stale rules, CDN scope, IPv6 asymmetry and external probe allowlists.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fforensics\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[110,113],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[115,116,117,32,118,92,119,120,94,121,85,122,96,123,124,99,100,125,126,127],"exposure analysis","analysis","unknown","credentials","collection","ufw","ports","internet","local","scope","reconstruction","operator","write",{"skillNo":129,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":133,"publishedAt":39},"01M70P8QATMPKA78E4FT5D2TNA","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[132],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[87,85,86,95,32,103,90,89,98,91,92,93,94,102,96,97,88,99,100,101],{"skillNo":135,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":140,"publishedAt":39},"01M70NMPVJ5H0JH131P60FW4R8","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fforensics-complete\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[138,139],{"categoryNo":111,"categoryName":112,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[116,115,99,118,92,119,94,117,85,122,96,123,124,32,100,121,120,125,126,127],{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":148,"publishedAt":39},"01M6CB4DDR0B4NNCFK7ZK7449H","fixture-skill","Exercise rule delivery.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frule-delivery\u002Fskills\u002Ffixture-skill\u002FSKILL.md",[147],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[149,150,151,152,153,154],"fixture skill","fixture","rule","delivery","true","exercise",{"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":162,"publishedAt":39},"01M6CB4AVK1W76MFMPP0JP32CJ","pi-local","Pi-local duplicate-precedence fixture.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Fproviders\u002Fpi\u002Fproject\u002F.pi\u002Fskills\u002Fpi-local\u002FSKILL.md",[161],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[163,164,123,165,150],"pi","pi local","duplicate"]