[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7185DF5PSDCP8JCM8W1Q39K":3,"skill-same:01M7185DF5PSDCP8JCM8W1Q39K":183},{"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":52,"ownerHtmlUrl":53,"ownerBlogUrl":54,"ownerDescription":55,"updatedAt":56,"install":57,"resources":70},"01M7185DF5PSDCP8JCM8W1Q39K","viva-insights-causal-analysis",null,"Assess and analyse exposure-outcome relationships in Viva Insights Person Query exports using design-first panel diagnostics. Use when an analyst asks whether a workplace behaviour, Copilot metric or intervention affects another metric or a supplied organisational outcome, or requests within-person, prior-outcome, placebo or sensitivity comparisons. Verify actual outcome measurement frequency before using repeated organisational attributes as panel outcomes. Supports R and Python guidance with bounded synthetic examples. Do not use for routine descriptive dashboards, prediction-only tasks, arbitrary metric-pair scans or pipeline validation. An explicit request for the existing Copilot Causal Toolkit follows that toolkit's workflow.","microsoft\u002Fviva-insights-sample-code","microsoft","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6154722?v=4","01M698VYDXZ6JW5WH3CRV650R8","Microsoft","01M71857T5ED5KEB81YK82QV07",15,"MIT","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"insights","analysis","viva insights","viva insights causal analysis","routine","request","outcome","analyst","analyse","synthetic","tasks","query","workflow","when","only","design","prediction","copilot","pipeline","attributes","2026-11-10 10:12:30",false,"---\nname: viva-insights-causal-analysis\ndescription: >\n  Assess and analyse exposure-outcome relationships in Viva Insights Person\n  Query exports using design-first panel diagnostics. Use when an analyst asks\n  whether a workplace behaviour, Copilot metric or intervention affects another\n  metric or a supplied organisational outcome, or requests within-person,\n  prior-outcome, placebo or sensitivity comparisons. Verify actual outcome\n  measurement frequency before using repeated organisational attributes as\n  panel outcomes. Supports R and Python guidance with bounded synthetic\n  examples. Do not use for routine descriptive dashboards, prediction-only\n  tasks, arbitrary metric-pair scans or pipeline validation. An explicit request\n  for the existing Copilot Causal Toolkit follows that toolkit's workflow.\nmetadata:\n  version: \"1.0.1\"\n---\n\n# Person Query analysis and causal diagnostics\n\nOwn the design and diagnostic workflow, while keeping evidence claims within\nwhat the export can establish. An observational estimate is not automatically\ncausal because it uses fixed effects or several checks.\n\nThis is a guided skill, not a drop-in real-data modelling engine. Its bundled\nR and Python examples demonstrate readiness checks and a limited balanced-panel\nlinear model on fabricated data. They do not implement a general PPML, bootstrap,\nDML or quasi-experimental estimator.\n\n## Locate the shared rules\n\nInstall alongside `viva-insights-analysis` from the same repository revision.\nRead its [shared analysis policy](..\u002Fviva-insights-analysis\u002Freference\u002Fanalysis-policy.md),\n[workflow support](..\u002Fviva-insights-analysis\u002Freference\u002Fworkflow-support.md),\n[analysis conventions](..\u002Fviva-insights-analysis\u002Freference\u002Fanalysis-conventions.md)\nand [data pitfalls](..\u002Fviva-insights-analysis\u002Freference\u002Fdata-pitfalls.md) directly,\nrather than launching a second workflow for the same task. If those files are\nabsent, ask for the local sample-code checkout and read them there. If neither\nlocation is available, stop execution and explain the paired installation.\n\nUse the shared skill's package discovery guidance for imports, aggregation and\nplots. Verify functions against installed package versions. Do not assume the\nlive package documentation describes the installed environment. Existing\nsegmentation recipes do not authorise blanket zero-filling for inference.\n\nNo private services, personal skills, telemetry or credentials are required.\nDo not install packages, clone repositories, publish reports or send data\nelsewhere without the user's approval.\n\n## Workflow\n\n### 1. Scope the question and choose a mode\n\nFor discussion or readiness requests, return an assessment without fitting\nmodels. For execution, recover supplied choices before asking for:\n\n- Local input files, R\u002FPython preference and output location.\n- Audience, decision and proposed exposure-outcome contrast.\n- Raw field names, units and definitions for exposure and outcome.\n- Export grain and the **actual measurement window** of each selected variable.\n- Eligible population, query filters, licence\u002Fcoverage evidence and identity keys.\n- Baseline controls, intervention timing and known missingness.\n- Required privacy threshold and whether standalone or combined reports are wanted.\n\nIf an answer is skipped, record it as unknown. Do not invent outcome timing or\nturn a real-data request into a synthetic demonstration to make it succeed.\n\n**Output:** a short analysis contract and open questions. Confirm material design\nchoices before estimation. An approved plan need not be approved repeatedly.\n\n### 2. Establish the Person Query and outcome contract\n\nRead [Person Query contract](reference\u002Fperson-query-contract.md).\nInspect bounded summaries locally. Keep employee rows and identifiers out of\nprompts, logs and shareable files.\n\nValidate `(PersonId, MetricDate)` or a verified mapping, query grain, source\ncoverage, measurement rules and join cardinality. A numeric column is only a\ncandidate variable. Audit its support, within-person variation, denominator,\nderivation and temporal alignment.\n\n**Gate:** do not run weekly within-person outcome models on copied annual scores,\nmonthly stock values or quarterly totals. Native licensed-only M365 Copilot nulls\nmean unlicensed, rather than licensed inactivity. Failed joins and unresolved\ncoverage are not zero. Only absent activity within a supplied complete query's configured\nscope follows the shared omitted-inactivity zero rule, independently of eligibility.\nStop an affected analysis when source definitions, joins or timing are unresolved.\nAn explicit method rehearsal may proceed with a visible synthetic\u002Funverified label.\n\n**Output:** mapping and coverage audit plus per-analysis readiness status. Retain\nthe eligible denominator, and record the reason for every sample restriction.\n\n### 3. Select compatible comparisons and inference\n\nRead [Design and inference](reference\u002Fdesign-and-inference.md).\nChoose the primary model and compatible diagnostics rather than automatically\nrunning every M1\u002FM2\u002FM3\u002FP1 model. A static organisational outcome needs a\nperson-level outcome design, not weekly replication.\n\nRecord literal variables, formula, exposure contrast, outcome window, estimation\nsample and identifying assumptions. Use maintained statistical packages for\nreal-data estimation, checking convergence, support, separation and exclusions.\nDo not reuse the synthetic runner as a validated real-data adapter.\n\n**Gate:** a causal claim requires an identifying design and explicit assumptions.\nOtherwise proceed only with an agreed observational association. A missing\ndesign-specific inference implementation blocks that inferential claim, not a\nclearly labelled descriptive summary.\n\n### 4. Challenge the finding\n\nRun justified timing, sample, scale, influence and missingness checks. Record\nthe null and exchangeability assumption before any permutation test. Distinguish\ndifferent estimands from contradictory evidence.\n\nCheck controls for post-exposure measurement, mechanical overlap and leakage.\nReport unperformed diagnostics as unavailable, with reasons. Do not select the\nmost favourable p-value or subgroup. A non-significant placebo does not rule\nout confounding.\n\n**Output:** model results and an evidence table separating support, conflicts,\nunavailable checks and unresolved provenance.\n\n### 5. Produce and verify the deliverable\n\nRead [Report and verification](reference\u002Freport-and-verification.md).\nReturn the readiness assessment alone if blocked. After a supported analysis,\ngenerate reproducible scripts, audit\u002Fresults records and a self-contained HTML\nreport unless another format is requested.\n\nPreserve technical detail through disclosure panels. Show plain-language\nquestions, exact variables, model-labelled results, two-column evidence bullets,\nvisible caveats and hover\u002Ffocus\u002Ftap definitions. Generate standalone and combined\nreports from shared content.\n\n**Gate:** verify numerical consistency, privacy, offline packaging and browser\nbehaviour separately. If visual verification cannot run, report it as unverified.\nThe user reviews the claim and disclosure boundaries before external sharing.\n\n## Routing boundaries\n\n- Named process footprints and Meeting Query title\u002Fdate scoping belong to\n  `viva-insights-process-analysis`. Its descriptive cycle comparisons do not\n  become causal estimates through this skill. A Meeting Query event-level\n  intervention design needs its own inspected plan and implementation.\n- An explicit request to use the existing Copilot Causal Toolkit stays with its\n  documented notebooks and prescribed treatment. See the repository's\n  [toolkit prompt](..\u002F..\u002Fprompts\u002Fcopilot-adoption\u002Fcopilot-causal-toolkit.md) when\n  working from a checkout. For an installed-only skill, locate that prompt in\n  `repo_root` first. Do not modify its helpers or generalise its treatment silently.\n- For DML, difference-in-differences, event studies, IV or discontinuity requests,\n  propose the necessary design-specific plan. V1 does not automatically execute\n  those designs or endorse existing example implementations without inspection.\n- Dashboard-only tasks belong to the relevant dashboard skill. Prediction-only\n  tasks need held-out evaluation and should not inherit causal labels.\n\n## References and examples\n\n| Read | When |\n|---|---|\n| [Person Query contract](reference\u002Fperson-query-contract.md) | Before mapping or aggregating an export or organisational outcome |\n| [Design and inference](reference\u002Fdesign-and-inference.md) | Before selecting models, controls or diagnostic tests |\n| [Report and verification](reference\u002Freport-and-verification.md) | Before reporting or sharing results |\n| [Evaluation scenarios](reference\u002Fevaluation.md) | When testing or extending the skill |\n| [R and Python examples](examples\u002FREADME.md) | To run the synthetic readiness and balanced-panel demonstration |\n\n## Guardrails\n\n- Use only approved, local data access. Do not reconstruct identity mappings\n  through names, email guesses or combinations of organisational attributes.\n- Apply the organisation's minimum reporting size, with a floor of 10 distinct\n  people for this skill's published groups, or a stricter applicable requirement.\n  Suppress complementary cells when totals would reveal a small group.\n- Never publish individual performance rankings, identifiers or person-specific\n  effect estimates. Pseudonymised records remain sensitive.\n- Do not translate collaboration activity directly into productivity, burnout,\n  performance or ROI. Explain the measured behaviour and its limitations.\n- No statistical check establishes data provenance. Fractional values or\n  tier-shaped patterns justify questions, not a claim that outcomes are synthetic.\n","# Person Query analysis and causal diagnostics\n\nOwn the design and diagnostic workflow, while keeping evidence claims within\nwhat the export can establish. An observational estimate is not automatically\ncausal because it uses fixed effects or several checks.\n\nThis is a guided skill, not a drop-in real-data modelling engine. Its bundled\nR and Python examples demonstrate readiness checks and a limited balanced-panel\nlinear model on fabricated data. They do not implement a general PPML, bootstrap,\nDML or quasi-experimental estimator.\n\n## Locate the shared rules\n\nInstall alongside `viva-insights-analysis` from the same repository revision.\nRead its [shared analysis policy](..\u002Fviva-insights-analysis\u002Freference\u002Fanalysis-policy.md),\n[workflow support](..\u002Fviva-insights-analysis\u002Freference\u002Fworkflow-support.md),\n[analysis conventions](..\u002Fviva-insights-analysis\u002Freference\u002Fanalysis-conventions.md)\nand [data pitfalls](..\u002Fviva-insights-analysis\u002Freference\u002Fdata-pitfalls.md) directly,\nrather than launching a second workflow for the same task. If those files are\nabsent, ask for the local sample-code checkout and read them there. If neither\nlocation is available, stop execution and explain the paired installation.\n\nUse the shared skill's package discovery guidance for imports, aggregation and\nplots. Verify functions against installed package versions. Do not assume the\nlive package documentation describes the installed environment. Existing\nsegmentation recipes do not authorise blanket zero-filling for inference.\n\nNo private services, personal skills, telemetry or credentials are required.\nDo not install packages, clone repositories, publish reports or send data\nelsewhere without the user's approval.\n\n## Workflow\n\n### 1. Scope the question and choose a mode\n\nFor discussion or readiness requests, return an assessment without fitting\nmodels. For execution, recover supplied choices before asking for:\n\n- Local input files, R\u002FPython preference and output location.\n- Audience, decision and proposed exposure-outcome contrast.\n- Raw field names, units and definitions for exposure and outcome.\n- Export grain and the **actual measurement window** of each selected variable.\n- Eligible population, query filters, licence\u002Fcoverage evidence and identity keys.\n- Baseline controls, intervention timing and known missingness.\n- Required privacy threshold and whether standalone or combined reports are wanted.\n\nIf an answer is skipped, record it as unknown. Do not invent outcome timing or\nturn a real-data request into a synthetic demonstration to make it succeed.\n\n**Output:** a short analysis contract and open questions. Confirm material design\nchoices before estimation. An approved plan need not be approved repeatedly.\n\n### 2. Establish the Person Query and outcome contract\n\nRead [Person Query contract](reference\u002Fperson-query-contract.md).\nInspect bounded summaries locally. Keep employee rows and identifiers out of\nprompts, logs and shareable files.\n\nValidate `(PersonId, MetricDate)` or a verified mapping, query grain, source\ncoverage, measurement rules and join cardinality. A numeric column is only a\ncandidate variable. Audit its support, within-person variation, denominator,\nderivation and temporal alignment.\n\n**Gate:** do not run weekly within-person outcome models on copied annual scores,\nmonthly stock values or quarterly totals. Native licensed-only M365 Copilot nulls\nmean unlicensed, rather than licensed inactivity. Failed joins and unresolved\ncoverage are not zero. Only absent activity within a supplied complete query's configured\nscope follows the shared omitted-inactivity zero rule, independently of eligibility.\nStop an affected analysis when source definitions, joins or timing are unresolved.\nAn explicit method rehearsal may proceed with a visible synthetic\u002Funverified label.\n\n**Output:** mapping and coverage audit plus per-analysis readiness status. Retain\nthe eligible denominator, and record the reason for every sample restriction.\n\n### 3. Select compatible comparisons and inference\n\nRead [Design and inference](reference\u002Fdesign-and-inference.md).\nChoose the primary model and compatible diagnostics rather than automatically\nrunning every M1\u002FM2\u002FM3\u002FP1 model. A static organisational outcome needs a\nperson-level outcome design, not weekly replication.\n\nRecord literal variables, formula, exposure contrast, outcome window, estimation\nsample and identifying assumptions. Use maintained statistical packages for\nreal-data estimation, checking convergence, support, separation and exclusions.\nDo not reuse the synthetic runner as a validated real-data adapter.\n\n**Gate:** a causal claim requires an identifying design and explicit assumptions.\nOtherwise proceed only with an agreed observational association. A missing\ndesign-specific inference implementation blocks that inferential claim, not a\nclearly labelled descriptive summary.\n\n### 4. Challenge the finding\n\nRun justified timing, sample, scale, influence and missingness checks. Record\nthe null and exchangeability assumption before any permutation test. Distinguish\ndifferent estimands from contradictory evidence.\n\nCheck controls for post-exposure measurement, mechanical overlap and leakage.\nReport unperformed diagnostics as unavailable, with reasons. Do not select the\nmost favourable p-value or subgroup. A non-significant placebo does not rule\nout confounding.\n\n**Output:** model results and an evidence table separating support, conflicts,\nunavailable checks and unresolved provenance.\n\n### 5. Produce and verify the deliverable\n\nRead [Report and verification](reference\u002Freport-and-verification.md).\nReturn the readiness assessment alone if blocked. After a supported analysis,\ngenerate reproducible scripts, audit\u002Fresults records and a self-contained HTML\nreport unless another format is requested.\n\nPreserve technical detail through disclosure panels. Show plain-language\nquestions, exact variables, model-labelled results, two-column evidence bullets,\nvisible caveats and hover\u002Ffocus\u002Ftap definitions. Generate standalone and combined\nreports from shared content.\n\n**Gate:** verify numerical consistency, privacy, offline packaging and browser\nbehaviour separately. If visual verification cannot run, report it as unverified.\nThe user reviews the claim and disclosure boundaries before external sharing.\n\n## Routing boundaries\n\n- Named process footprints and Meeting Query title\u002Fdate scoping belong to\n  `viva-insights-process-analysis`. Its descriptive cycle comparisons do not\n  become causal estimates through this skill. A Meeting Query event-level\n  intervention design needs its own inspected plan and implementation.\n- An explicit request to use the existing Copilot Causal Toolkit stays with its\n  documented notebooks and prescribed treatment. See the repository's\n  [toolkit prompt](..\u002F..\u002Fprompts\u002Fcopilot-adoption\u002Fcopilot-causal-toolkit.md) when\n  working from a checkout. For an installed-only skill, locate that prompt in\n  `repo_root` first. Do not modify its helpers or generalise its treatment silently.\n- For DML, difference-in-differences, event studies, IV or discontinuity requests,\n  propose the necessary design-specific plan. V1 does not automatically execute\n  those designs or endorse existing example implementations without inspection.\n- Dashboard-only tasks belong to the relevant dashboard skill. Prediction-only\n  tasks need held-out evaluation and should not inherit causal labels.\n\n## References and examples\n\n| Read | When |\n|---|---|\n| [Person Query contract](reference\u002Fperson-query-contract.md) | Before mapping or aggregating an export or organisational outcome |\n| [Design and inference](reference\u002Fdesign-and-inference.md) | Before selecting models, controls or diagnostic tests |\n| [Report and verification](reference\u002Freport-and-verification.md) | Before reporting or sharing results |\n| [Evaluation scenarios](reference\u002Fevaluation.md) | When testing or extending the skill |\n| [R and Python examples](examples\u002FREADME.md) | To run the synthetic readiness and balanced-panel demonstration |\n\n## Guardrails\n\n- Use only approved, local data access. Do not reconstruct identity mappings\n  through names, email guesses or combinations of organisational attributes.\n- Apply the organisation's minimum reporting size, with a floor of 10 distinct\n  people for this skill's published groups, or a stricter applicable requirement.\n  Suppress complementary cells when totals would reveal a small group.\n- Never publish individual performance rankings, identifiers or person-specific\n  effect estimates. Pseudonymised records remain sensitive.\n- Do not translate collaboration activity directly into productivity, burnout,\n  performance or ROI. Explain the measured behaviour and its limitations.\n- No statistical check establishes data provenance. Fractional values or\n  tier-shaped patterns justify questions, not a claim that outcomes are synthetic.\n",{"name":5,"metadata":44,"description":46},{"version":45},"1.0.1","Assess and analyse exposure-outcome relationships in Viva Insights Person Query exports using design-first panel diagnostics. Use when an analyst asks whether a workplace behaviour, Copilot metric or intervention affects another metric or a supplied organisational outcome, or requests within-person, prior-outcome, placebo or sensitivity comparisons. Verify actual outcome measurement frequency before using repeated organisational attributes as panel outcomes. Supports R and Python guidance with bounded synthetic examples. Do not use for routine descriptive dashboards, prediction-only tasks, arbitrary metric-pair scans or pipeline validation. An explicit request for the existing Copilot Causal Toolkit follows that toolkit's workflow.\n","main","b89c0b14fb73bb1bef2e20a87b4deb16d7b6644a","frontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis",2,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code","https:\u002F\u002Fmicrosoft.github.io\u002Fviva-insights-sample-code\u002F","https:\u002F\u002Fgithub.com\u002Fmicrosoft","https:\u002F\u002Fopensource.microsoft.com","Open source projects and samples from Microsoft","2026-11-12 22:07:59",{"source":8,"skillName":5,"commands":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add microsoft\u002Fviva-insights-sample-code --skill viva-insights-causal-analysis",{"tool":63,"command":64},"bunx","bunx skills add microsoft\u002Fviva-insights-sample-code --skill viva-insights-causal-analysis",{"tool":66,"command":67},"pnpm","pnpm dlx skills add microsoft\u002Fviva-insights-sample-code --skill viva-insights-causal-analysis","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002FSKILL.md",true,[71,77,81,87,91,95,99,103,107,110,113,117,121,125,129,132,136,140,143,149,155,159,163,167,171,175,179],{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},".gitattributes","OTHER","其他",36,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002F.gitattributes",{"path":78,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":79,"sourceHtmlUrl":80},"examples\u002F.gitignore",60,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002F.gitignore",{"path":82,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":85,"sourceHtmlUrl":86},"examples\u002Ffixtures\u002Fsynthetic-annual.csv","ASSET","资产文件",30281,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-annual.csv",{"path":88,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":89,"sourceHtmlUrl":90},"examples\u002Ffixtures\u002Fsynthetic-annual.metadata.csv",855,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-annual.metadata.csv",{"path":92,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":93,"sourceHtmlUrl":94},"examples\u002Ffixtures\u002Fsynthetic-confounding.csv",31715,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-confounding.csv",{"path":96,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":97,"sourceHtmlUrl":98},"examples\u002Ffixtures\u002Fsynthetic-confounding.metadata.csv",841,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-confounding.metadata.csv",{"path":100,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":101,"sourceHtmlUrl":102},"examples\u002Ffixtures\u002Fsynthetic-effect.csv",31721,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-effect.csv",{"path":104,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":105,"sourceHtmlUrl":106},"examples\u002Ffixtures\u002Fsynthetic-effect.metadata.csv",843,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-effect.metadata.csv",{"path":108,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":101,"sourceHtmlUrl":109},"examples\u002Ffixtures\u002Fsynthetic-mechanical.csv","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-mechanical.csv",{"path":111,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":89,"sourceHtmlUrl":112},"examples\u002Ffixtures\u002Fsynthetic-mechanical.metadata.csv","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-mechanical.metadata.csv",{"path":114,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":115,"sourceHtmlUrl":116},"examples\u002Ffixtures\u002Fsynthetic-missing.csv",31201,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-missing.csv",{"path":118,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":119,"sourceHtmlUrl":120},"examples\u002Ffixtures\u002Fsynthetic-missing.metadata.csv",844,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-missing.metadata.csv",{"path":122,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":123,"sourceHtmlUrl":124},"examples\u002Ffixtures\u002Fsynthetic-one-period.csv",2719,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-one-period.csv",{"path":126,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":127,"sourceHtmlUrl":128},"examples\u002Ffixtures\u002Fsynthetic-one-period.metadata.csv",847,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-one-period.metadata.csv",{"path":130,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":101,"sourceHtmlUrl":131},"examples\u002Ffixtures\u002Fsynthetic-quarterly.csv","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-quarterly.csv",{"path":133,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":134,"sourceHtmlUrl":135},"examples\u002Ffixtures\u002Fsynthetic-quarterly.metadata.csv",861,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-quarterly.metadata.csv",{"path":137,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":138,"sourceHtmlUrl":139},"examples\u002Ffixtures\u002Fsynthetic-static.csv",31241,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-static.csv",{"path":141,"resourceType":83,"resourceTypeDesc":84,"sizeBytes":89,"sourceHtmlUrl":142},"examples\u002Ffixtures\u002Fsynthetic-static.metadata.csv","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ffixtures\u002Fsynthetic-static.metadata.csv",{"path":144,"resourceType":145,"resourceTypeDesc":146,"sizeBytes":147,"sourceHtmlUrl":148},"examples\u002Fgenerate_fixtures.py","SCRIPT","脚本",4649,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Fgenerate_fixtures.py",{"path":150,"resourceType":151,"resourceTypeDesc":152,"sizeBytes":153,"sourceHtmlUrl":154},"examples\u002FREADME.md","REFERENCE","参考文档",8150,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002FREADME.md",{"path":156,"resourceType":145,"resourceTypeDesc":146,"sizeBytes":157,"sourceHtmlUrl":158},"examples\u002Frun_example.py",7164,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Frun_example.py",{"path":160,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":161,"sourceHtmlUrl":162},"examples\u002Frun_example.R",7709,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Frun_example.R",{"path":164,"resourceType":145,"resourceTypeDesc":146,"sizeBytes":165,"sourceHtmlUrl":166},"examples\u002Ftest_examples.py",16281,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Fexamples\u002Ftest_examples.py",{"path":168,"resourceType":151,"resourceTypeDesc":152,"sizeBytes":169,"sourceHtmlUrl":170},"reference\u002Fdesign-and-inference.md",8881,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Freference\u002Fdesign-and-inference.md",{"path":172,"resourceType":151,"resourceTypeDesc":152,"sizeBytes":173,"sourceHtmlUrl":174},"reference\u002Fevaluation.md",7027,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Freference\u002Fevaluation.md",{"path":176,"resourceType":151,"resourceTypeDesc":152,"sizeBytes":177,"sourceHtmlUrl":178},"reference\u002Fperson-query-contract.md",7131,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Freference\u002Fperson-query-contract.md",{"path":180,"resourceType":151,"resourceTypeDesc":152,"sizeBytes":181,"sourceHtmlUrl":182},"reference\u002Freport-and-verification.md",4915,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-causal-analysis\u002Freference\u002Freport-and-verification.md",[184,213,238],{"skillNo":185,"name":186,"nameZh":6,"description":187,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":188,"categories":189,"keywords":198,"publishedAt":39},"01M7185MSSK4R4TJK4FDPEXYNS","viva-insights-process-analysis","Analyse collaboration around a named business process, such as an annual audit, financial close, planning cycle or review programme, using Viva Insights Meeting Query and optional purpose-specific Person Query exports. Use when defining which process meetings count, reviewing title\u002Fdate rules, comparing matched cycles, explaining changes in volume or meeting format, or refreshing a process report. Owns scope discovery, approved reporting, reconciliation and descriptive interpretation. Do not trigger for Purview audit-log parsing, compliance certification, event-log process mining, generic Copilot dashboards or an unrelated software audit.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-process-analysis\u002FSKILL.md",[190,195],{"categoryNo":191,"categoryName":192,"taxonomyType":193,"taxonomyTypeDesc":194},"01JBSEEDCAT000000000000034","行政与办公人员","PROFESSION","适用职业",{"categoryNo":196,"categoryName":197,"taxonomyType":193,"taxonomyTypeDesc":194},"01JBSEEDCAT000000000000037","律师与法务",[199,200,201,21,20,19,202,203,204,205,206,207,208,36,209,210,32,30,211,212],"viva insights process analysis","process","process analysis","programme","reconciliation","which","volume","interpretation","scope","cycle","purview","process meetings","log","review",{"skillNo":214,"name":215,"nameZh":6,"description":216,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":217,"categories":218,"keywords":222,"publishedAt":39},"01M7185J2TZH96E9QHEJ543QNQ","viva-insights-copilot-dashboards","Reproduce and customise the Viva Insights Consumption and Ways of Working or Developer Experience and Copilot reference dashboards with reusable R code. Use for building either demo, adapting Consumption or GitHub query exports into these dashboards, or changing their layout, grouping or periods. Do not use for general Person Query analysis, unrelated dashboards, direct GitHub API analytics, or causal impact estimation.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-copilot-dashboards\u002FSKILL.md",[219],{"categoryNo":220,"categoryName":221,"taxonomyType":193,"taxonomyTypeDesc":194},"01JBSEEDCAT000000000000030","开发工程师",[223,21,36,19,224,20,225,226,227,228,30,229,230,231,232,233,234,235,236,237],"viva insights copilot dashboards","dashboards","with","demo","api","code","do","for","general","grouping","estimation","impact","use","either","reusable",{"skillNo":239,"name":240,"nameZh":6,"description":241,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":242,"categories":243,"keywords":255,"publishedAt":39},"01M718599CJA70YB2VYD5NXTV9","viva-insights-analysis","Analyze Microsoft Viva Insights data with the open-source vivainsights R and Python packages. Use this skill whenever working with Viva Insights query exports (Person Query, Meeting Query, Consumption query, GitHub query, person-to-person or group-to-group network queries) or the vivainsights packages: importing and validating a query, computing metrics, segmenting Copilot usage (including experimental usage archetypes), building the standard visualisations, running network or information-value analysis, building a common deliverable (adoption dashboard, executive summary memo, ROI estimate), and avoiding the well-known export data pitfalls (IsManager strings, \"#N\u002FA\" text, non-English locales, privacy thresholds, trailing-window metric plateaus, holiday weeks). It also points to the viva-insights-sample-code repo and its Frontier Analytics toolkit for ready-made prompts, starter kits, and schema docs.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fviva-insights-sample-code\u002Fblob\u002Fmain\u002Ffrontier-analytics\u002Fskills\u002Fviva-insights-analysis\u002FSKILL.md",[244,249,252],{"categoryNo":245,"categoryName":246,"taxonomyType":247,"taxonomyTypeDesc":248},"01JBSEEDCAT000000000000013","分析与可视化","SCENARIO","使用场景",{"categoryNo":250,"categoryName":251,"taxonomyType":247,"taxonomyTypeDesc":248},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":253,"categoryName":254,"taxonomyType":193,"taxonomyTypeDesc":194},"01JBSEEDCAT000000000000033","数据分析师",[256,21,20,19,257,258,259,260,36,261,262,263,30,228,264,265,266,267,268,269],"viva insights analysis","text","ready","strings","executive summary","open","archetypes","information","common","analyze","english","packages","sample","dashboard"]