[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71V5RAD05Q8HRSF8MPADFYQ":3,"skill-same:01M71V5RAD05Q8HRSF8MPADFYQ":72},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":53,"commitSha":54,"skillDirectory":55,"forksCount":14,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":58,"install":59,"resources":71},"01M71V5RAD05Q8HRSF8MPADFYQ","phoenix-cli",null,"Debug LLM applications using the Phoenix CLI. Fetch traces, analyze errors, review experiments, inspect datasets, and query the GraphQL API. Use when debugging AI\u002FLLM applications, analyzing trace data, working with Phoenix observability, or investigating LLM performance issues.","TorchiaHub\u002FSkills","TorchiaHub","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F125223386?v=4","01M71Q3SNKHMKJYN4HGMSQ2CEY","Mattia Torchia","01M71Q3SP6T1Z9NBADBCFP7GM5",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fphoenix-cli\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"Phoenix","phoenix cli","cli","use","graphql api","when","for","inspect","errors","LLM Applications","processing","query","npx","fetch","applications","observability","issues","debugging","debug","performance","2026-11-10 13:02:02",false,"---\nname: phoenix-cli\ndescription: Debug LLM applications using the Phoenix CLI. Fetch traces, analyze errors, review experiments, inspect datasets, and query the GraphQL API. Use when debugging AI\u002FLLM applications, analyzing trace data, working with Phoenix observability, or investigating LLM performance issues.\nlicense: Apache-2.0\ncompatibility: Requires Node.js (for npx) or global install of @arizeai\u002Fphoenix-cli. Optionally requires jq for JSON processing.\nmetadata:\n  author: arize-ai\n  version: \"2.0.0\"\n---\n\n# Phoenix CLI\n\n## Invocation\n\n```bash\npx \u003Cresource> \u003Caction>                          # if installed globally\nnpx @arizeai\u002Fphoenix-cli \u003Cresource> \u003Caction>    # no install required\n```\n\nThe CLI uses singular resource commands with subcommands like `list` and `get`:\n\n```bash\npx trace list\npx trace get \u003Ctrace-id>\npx span list\npx dataset list\npx dataset get \u003Cname>\n```\n\n## Setup\n\n```bash\nexport PHOENIX_HOST=http:\u002F\u002Flocalhost:6006\nexport PHOENIX_PROJECT=my-project\nexport PHOENIX_API_KEY=your-api-key  # if auth is enabled\n```\n\nAlways use `--format raw --no-progress` when piping to `jq`.\n\n## Traces\n\n```bash\npx trace list --limit 20 --format raw --no-progress | jq .\npx trace list --last-n-minutes 60 --limit 20 --format raw --no-progress | jq '.[] | select(.status == \"ERROR\")'\npx trace list --format raw --no-progress | jq 'sort_by(-.duration) | .[0:5]'\npx trace get \u003Ctrace-id> --format raw | jq .\npx trace get \u003Ctrace-id> --format raw | jq '.spans[] | select(.status_code != \"OK\")'\n```\n\n## Spans\n\n```bash\npx span list --limit 20                                    # recent spans (table view)\npx span list --last-n-minutes 60 --limit 50                # spans from last hour\npx span list --span-kind LLM --limit 10                    # only LLM spans\npx span list --status-code ERROR --limit 20                # only errored spans\npx span list --name chat_completion --limit 10             # filter by span name\npx span list --trace-id \u003Cid> --format raw --no-progress | jq .   # all spans for a trace\npx span list --include-annotations --limit 10              # include annotation scores\npx span list output.json --limit 100                       # save to JSON file\npx span list --format raw --no-progress | jq '.[] | select(.status_code == \"ERROR\")'\n```\n\n### Span JSON shape\n\n```\nSpan\n  name, span_kind (\"LLM\"|\"CHAIN\"|\"TOOL\"|\"RETRIEVER\"|\"EMBEDDING\"|\"AGENT\"|\"RERANKER\"|\"GUARDRAIL\"|\"EVALUATOR\"|\"UNKNOWN\")\n  status_code (\"OK\"|\"ERROR\"|\"UNSET\"), status_message\n  context.span_id, context.trace_id, parent_id\n  start_time, end_time\n  attributes (same as trace span attributes above)\n  annotations[] (with --include-annotations)\n    name, result { score, label, explanation }\n```\n\n### Trace JSON shape\n\n```\nTrace\n  traceId, status (\"OK\"|\"ERROR\"), duration (ms), startTime, endTime\n  rootSpan  — top-level span (parent_id: null)\n  spans[]\n    name, span_kind (\"LLM\"|\"CHAIN\"|\"TOOL\"|\"RETRIEVER\"|\"EMBEDDING\"|\"AGENT\")\n    status_code (\"OK\"|\"ERROR\"), parent_id, context.span_id\n    attributes\n      input.value, output.value          — raw input\u002Foutput\n      llm.model_name, llm.provider\n      llm.token_count.prompt\u002Fcompletion\u002Ftotal\n      llm.token_count.prompt_details.cache_read\n      llm.token_count.completion_details.reasoning\n      llm.input_messages.{N}.message.role\u002Fcontent\n      llm.output_messages.{N}.message.role\u002Fcontent\n      llm.invocation_parameters          — JSON string (temperature, etc.)\n      exception.message                  — set if span errored\n```\n\n## Sessions\n\n```bash\npx session list --limit 10 --format raw --no-progress | jq .\npx session list --order asc --format raw --no-progress | jq '.[].session_id'\npx session get \u003Csession-id> --format raw | jq .\npx session get \u003Csession-id> --include-annotations --format raw | jq '.annotations'\n```\n\n### Session JSON shape\n\n```\nSessionData\n  id, session_id, project_id\n  start_time, end_time\n  traces[]\n    id, trace_id, start_time, end_time\n\nSessionAnnotation (with --include-annotations)\n  id, name, annotator_kind (\"LLM\"|\"CODE\"|\"HUMAN\"), session_id\n  result { label, score, explanation }\n  metadata, identifier, source, created_at, updated_at\n```\n\n## Datasets \u002F Experiments \u002F Prompts\n\n```bash\npx dataset list --format raw --no-progress | jq '.[].name'\npx dataset get \u003Cname> --format raw | jq '.examples[] | {input, output: .expected_output}'\npx experiment list --dataset \u003Cname> --format raw --no-progress | jq '.[] | {id, name, failed_run_count}'\npx experiment get \u003Cid> --format raw --no-progress | jq '.[] | select(.error != null) | {input, error}'\npx prompt list --format raw --no-progress | jq '.[].name'\npx prompt get \u003Cname> --format text --no-progress   # plain text, ideal for piping to AI\n```\n\n## GraphQL\n\nFor ad-hoc queries not covered by the commands above. Output is `{\"data\": {...}}`.\n\n```bash\npx api graphql '{ projectCount datasetCount promptCount evaluatorCount }'\npx api graphql '{ projects { edges { node { name traceCount tokenCountTotal } } } }' | jq '.data.projects.edges[].node'\npx api graphql '{ datasets { edges { node { name exampleCount experimentCount } } } }' | jq '.data.datasets.edges[].node'\npx api graphql '{ evaluators { edges { node { name kind } } } }' | jq '.data.evaluators.edges[].node'\n\n# Introspect any type\npx api graphql '{ __type(name: \"Project\") { fields { name type { name } } } }' | jq '.data.__type.fields[]'\n```\n\nKey root fields: `projects`, `datasets`, `prompts`, `evaluators`, `projectCount`, `datasetCount`, `promptCount`, `evaluatorCount`, `viewer`.\n\n## Docs\n\nDownload Phoenix documentation markdown for local use by coding agents.\n\n```bash\npx docs fetch                                # fetch default workflow docs to .px\u002Fdocs\npx docs fetch --workflow tracing             # fetch only tracing docs\npx docs fetch --workflow tracing --workflow evaluation\npx docs fetch --dry-run                      # preview what would be downloaded\npx docs fetch --refresh                      # clear .px\u002Fdocs and re-download\npx docs fetch --output-dir .\u002Fmy-docs         # custom output directory\n```\n\nKey options: `--workflow` (repeatable, values: `tracing`, `evaluation`, `datasets`, `prompts`, `integrations`, `sdk`, `self-hosting`, `all`), `--dry-run`, `--refresh`, `--output-dir` (default `.px\u002Fdocs`), `--workers` (default 10).\n","# Phoenix CLI\n\n## Invocation\n\n```bash\npx \u003Cresource> \u003Caction>                          # if installed globally\nnpx @arizeai\u002Fphoenix-cli \u003Cresource> \u003Caction>    # no install required\n```\n\nThe CLI uses singular resource commands with subcommands like `list` and `get`:\n\n```bash\npx trace list\npx trace get \u003Ctrace-id>\npx span list\npx dataset list\npx dataset get \u003Cname>\n```\n\n## Setup\n\n```bash\nexport PHOENIX_HOST=http:\u002F\u002Flocalhost:6006\nexport PHOENIX_PROJECT=my-project\nexport PHOENIX_API_KEY=your-api-key  # if auth is enabled\n```\n\nAlways use `--format raw --no-progress` when piping to `jq`.\n\n## Traces\n\n```bash\npx trace list --limit 20 --format raw --no-progress | jq .\npx trace list --last-n-minutes 60 --limit 20 --format raw --no-progress | jq '.[] | select(.status == \"ERROR\")'\npx trace list --format raw --no-progress | jq 'sort_by(-.duration) | .[0:5]'\npx trace get \u003Ctrace-id> --format raw | jq .\npx trace get \u003Ctrace-id> --format raw | jq '.spans[] | select(.status_code != \"OK\")'\n```\n\n## Spans\n\n```bash\npx span list --limit 20                                    # recent spans (table view)\npx span list --last-n-minutes 60 --limit 50                # spans from last hour\npx span list --span-kind LLM --limit 10                    # only LLM spans\npx span list --status-code ERROR --limit 20                # only errored spans\npx span list --name chat_completion --limit 10             # filter by span name\npx span list --trace-id \u003Cid> --format raw --no-progress | jq .   # all spans for a trace\npx span list --include-annotations --limit 10              # include annotation scores\npx span list output.json --limit 100                       # save to JSON file\npx span list --format raw --no-progress | jq '.[] | select(.status_code == \"ERROR\")'\n```\n\n### Span JSON shape\n\n```\nSpan\n  name, span_kind (\"LLM\"|\"CHAIN\"|\"TOOL\"|\"RETRIEVER\"|\"EMBEDDING\"|\"AGENT\"|\"RERANKER\"|\"GUARDRAIL\"|\"EVALUATOR\"|\"UNKNOWN\")\n  status_code (\"OK\"|\"ERROR\"|\"UNSET\"), status_message\n  context.span_id, context.trace_id, parent_id\n  start_time, end_time\n  attributes (same as trace span attributes above)\n  annotations[] (with --include-annotations)\n    name, result { score, label, explanation }\n```\n\n### Trace JSON shape\n\n```\nTrace\n  traceId, status (\"OK\"|\"ERROR\"), duration (ms), startTime, endTime\n  rootSpan  — top-level span (parent_id: null)\n  spans[]\n    name, span_kind (\"LLM\"|\"CHAIN\"|\"TOOL\"|\"RETRIEVER\"|\"EMBEDDING\"|\"AGENT\")\n    status_code (\"OK\"|\"ERROR\"), parent_id, context.span_id\n    attributes\n      input.value, output.value          — raw input\u002Foutput\n      llm.model_name, llm.provider\n      llm.token_count.prompt\u002Fcompletion\u002Ftotal\n      llm.token_count.prompt_details.cache_read\n      llm.token_count.completion_details.reasoning\n      llm.input_messages.{N}.message.role\u002Fcontent\n      llm.output_messages.{N}.message.role\u002Fcontent\n      llm.invocation_parameters          — JSON string (temperature, etc.)\n      exception.message                  — set if span errored\n```\n\n## Sessions\n\n```bash\npx session list --limit 10 --format raw --no-progress | jq .\npx session list --order asc --format raw --no-progress | jq '.[].session_id'\npx session get \u003Csession-id> --format raw | jq .\npx session get \u003Csession-id> --include-annotations --format raw | jq '.annotations'\n```\n\n### Session JSON shape\n\n```\nSessionData\n  id, session_id, project_id\n  start_time, end_time\n  traces[]\n    id, trace_id, start_time, end_time\n\nSessionAnnotation (with --include-annotations)\n  id, name, annotator_kind (\"LLM\"|\"CODE\"|\"HUMAN\"), session_id\n  result { label, score, explanation }\n  metadata, identifier, source, created_at, updated_at\n```\n\n## Datasets \u002F Experiments \u002F Prompts\n\n```bash\npx dataset list --format raw --no-progress | jq '.[].name'\npx dataset get \u003Cname> --format raw | jq '.examples[] | {input, output: .expected_output}'\npx experiment list --dataset \u003Cname> --format raw --no-progress | jq '.[] | {id, name, failed_run_count}'\npx experiment get \u003Cid> --format raw --no-progress | jq '.[] | select(.error != null) | {input, error}'\npx prompt list --format raw --no-progress | jq '.[].name'\npx prompt get \u003Cname> --format text --no-progress   # plain text, ideal for piping to AI\n```\n\n## GraphQL\n\nFor ad-hoc queries not covered by the commands above. Output is `{\"data\": {...}}`.\n\n```bash\npx api graphql '{ projectCount datasetCount promptCount evaluatorCount }'\npx api graphql '{ projects { edges { node { name traceCount tokenCountTotal } } } }' | jq '.data.projects.edges[].node'\npx api graphql '{ datasets { edges { node { name exampleCount experimentCount } } } }' | jq '.data.datasets.edges[].node'\npx api graphql '{ evaluators { edges { node { name kind } } } }' | jq '.data.evaluators.edges[].node'\n\n# Introspect any type\npx api graphql '{ __type(name: \"Project\") { fields { name type { name } } } }' | jq '.data.__type.fields[]'\n```\n\nKey root fields: `projects`, `datasets`, `prompts`, `evaluators`, `projectCount`, `datasetCount`, `promptCount`, `evaluatorCount`, `viewer`.\n\n## Docs\n\nDownload Phoenix documentation markdown for local use by coding agents.\n\n```bash\npx docs fetch                                # fetch default workflow docs to .px\u002Fdocs\npx docs fetch --workflow tracing             # fetch only tracing docs\npx docs fetch --workflow tracing --workflow evaluation\npx docs fetch --dry-run                      # preview what would be downloaded\npx docs fetch --refresh                      # clear .px\u002Fdocs and re-download\npx docs fetch --output-dir .\u002Fmy-docs         # custom output directory\n```\n\nKey options: `--workflow` (repeatable, values: `tracing`, `evaluation`, `datasets`, `prompts`, `integrations`, `sdk`, `self-hosting`, `all`), `--dry-run`, `--refresh`, `--output-dir` (default `.px\u002Fdocs`), `--workers` (default 10).\n",{"name":5,"license":15,"metadata":49,"description":7,"compatibility":52},{"author":50,"version":51},"arize-ai","2.0.0","Requires Node.js (for npx) or global install of @arizeai\u002Fphoenix-cli. Optionally requires jq for JSON processing.","master","e3489bc4e504668e9a2ff8fb73dc086da71328ab","01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fphoenix-cli","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills","https:\u002F\u002Fgithub.com\u002FTorchiaHub","2026-06-21 20:40:46",{"source":8,"skillName":5,"commands":60,"prompt":69,"zipAvailable":70},[61,63,66],{"tool":36,"command":62},"npx skills add TorchiaHub\u002FSkills --skill phoenix-cli",{"tool":64,"command":65},"bunx","bunx skills add TorchiaHub\u002FSkills --skill phoenix-cli",{"tool":67,"command":68},"pnpm","pnpm dlx skills add TorchiaHub\u002FSkills --skill phoenix-cli","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fphoenix-cli\u002FSKILL.md",true,[],[73,109,139,170,196,219],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":77,"sourceHtmlUrl":78,"categories":79,"keywords":88,"publishedAt":44},"01M71VC09WZH7EYAA8YDKJQ0E1","resemble-detect","Deepfake detection and media safety — detect AI-generated audio, images, video, and text, trace synthesis sources, apply watermarks, verify speaker identity, and analyze media intelligence using Resemble AI","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fresemble-detect\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fresemble-detect\u002FSKILL.md",[80,85],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":86,"categoryName":87,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000016","图像与多媒体",[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108],"resemble detect","detect","images","Video","SET","app","sources","Media","Audio","detect ai","local","generated","ai api","api","analyze","text","paths","Safety","intelligence","deepfake detection",{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":122,"publishedAt":44},"01M71VBN3ZPGZT29DK7N7VCT4P","refactor","Surgical code refactoring to improve maintainability without changing behavior. Covers extracting functions, renaming variables, breaking down god functions, improving type safety, eliminating code smells, and applying design patterns. Less drastic than repo-rebuilder; use for gradual improvements.","MIT","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Frefactor\u002FSKILL.md",[116,119],{"categoryNo":117,"categoryName":118,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000007","代码审查",{"categoryNo":120,"categoryName":121,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000015","视觉设计",[111,123,124,125,126,127,128,129,130,106,131,132,133,134,30,135,27,136,137,138],"design patterns","extracting","improve","design","Variables","code","refactoring","Type Safety","patterns","surgical","code refactoring","down","repo","type","functions","behavior",{"skillNo":140,"name":141,"nameZh":6,"description":142,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":143,"sourceHtmlUrl":144,"categories":145,"keywords":150,"publishedAt":44},"01M71VA75R4MGJXGR0JS727PBV","quality-playbook","Explore any codebase from scratch and generate six quality artifacts: a quality constitution (QUALITY.md), spec-traced functional tests, a code review protocol with regression test generation, an integration testing protocol, a multi-model spec audit (Council of Three), and an AI bootstrap file (AGENTS.md). Includes state machine completeness analysis and missing safeguard detection. Works with any language (Python, Java, Scala, TypeScript, Go, Rust, etc.). Use this skill whenever the user asks to set up a quality playbook, generate functional tests from specifications, create a quality constitution, build testing protocols, audit code against specs, or establish a repeatable quality system for a project. Also trigger when the user mentions 'quality playbook', 'spec audit', 'Council of Three', 'fitness-to-purpose', 'coverage theater', or wants to go beyond basic test generation to build a full quality system grounded in their actual codebase.","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fquality-playbook\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fquality-playbook\u002FSKILL.md",[146,147],{"categoryNo":117,"categoryName":118,"taxonomyType":83,"taxonomyTypeDesc":84},{"categoryNo":148,"categoryName":149,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000008","测试与质量",[151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,30,169],"playbook","quality playbook","quality","project","code review","integration testing","explore","testing","create","functional","generate","spec audit","typescript","go","state machine","full","multi-model","three","system",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":179,"publishedAt":44},"01M71V7TYJZ1C5XD0RRH2P340K","prd","Generate high-quality Product Requirements Documents (PRDs) for software systems and AI-powered features. Includes executive summaries, user stories, technical specifications, and risk analysis.","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fprd\u002FSKILL.md",[176],{"categoryNo":177,"categoryName":178,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000031","产品经理",[172,180,30,181,182,183,184,185,186,187,188,161,189,190,153,191,192,193,194,195],"risk","technical","documents","requirements","analysis","stories","summaries","high","product","specifications","risk analysis","features","systems","software","user stories","Product Requirements",{"skillNo":197,"name":198,"nameZh":6,"description":199,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":6,"sourceHtmlUrl":200,"categories":201,"keywords":202,"publishedAt":44},"01M71V7JFHSJ61847CEY1EM48A","power-platform-architect","Use this skill when the user needs to transform business requirements, use case descriptions, or meeting transcripts into a technical Power Platform solution architecture, including component selection and Mermaid.js diagrams.","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fpower-platform-architect\u002FSKILL.md",[],[203,204,205,206,207,208,209,181,27,210,29,183,211,212,213,214,215,216,217,218],"power","platform","power platform","architect","power platform architect","diagrams","selection","business","architecture","needs","case","solution architecture","component","solution","mermaid","meeting",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":113,"licenseFileUrl":6,"sourceHtmlUrl":223,"categories":224,"keywords":225,"publishedAt":44},"01M71V65KR84TMS1WARE3R11VZ","plantuml-ascii","Generate ASCII art diagrams using PlantUML text mode. Use when user asks to create ASCII diagrams, text-based diagrams, terminal-friendly diagrams, or mentions plantuml ascii, text diagram, ascii art diagram. Supports: Converting PlantUML diagrams to ASCII art, Creating sequence diagrams, class diagrams, flowcharts in ASCII format, Generating Unicode-enhanced ASCII art with -utxt flag","https:\u002F\u002Fgithub.com\u002FTorchiaHub\u002FSkills\u002Fblob\u002Fmaster\u002F01-Inbox\u002Fdownloads\u002Fgithub-awesome-copilot\u002F20260429T140243Z\u002Fsource\u002Fskills\u002Fplantuml-ascii\u002FSKILL.md",[],[226,227,228,208,229,230,231,29,232,104,159,233,161,234,235,236,237,238,239,27],"plantuml","ascii","plantuml ascii","Unicode","mode","Art","Bash","diagram","terminal","read","write","sequence","plantuml diagrams","ascii art"]