agentops-accelerator 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- agentops_accelerator-0.3.0/.claude-plugin/marketplace.json +29 -0
- agentops_accelerator-0.3.0/.github/actions/azure-oidc-login/action.yml +75 -0
- agentops_accelerator-0.3.0/.github/code-quality-py.instructions.md +103 -0
- agentops_accelerator-0.3.0/.github/copilot-instructions.md +93 -0
- agentops_accelerator-0.3.0/.github/dependabot.yml +30 -0
- agentops_accelerator-0.3.0/.github/extensions/agentops-skills/extension.mjs +149 -0
- agentops_accelerator-0.3.0/.github/plugin/marketplace.json +29 -0
- agentops_accelerator-0.3.0/.github/skills/release-management/SKILL.md +227 -0
- agentops_accelerator-0.3.0/.github/workflows/_build.yml +117 -0
- agentops_accelerator-0.3.0/.github/workflows/agentops-watchdog.yml +120 -0
- agentops_accelerator-0.3.0/.github/workflows/ci.yml +235 -0
- agentops_accelerator-0.3.0/.github/workflows/cut-release.yml +211 -0
- agentops_accelerator-0.3.0/.github/workflows/e2e.yml +540 -0
- agentops_accelerator-0.3.0/.github/workflows/release.yml +548 -0
- agentops_accelerator-0.3.0/.github/workflows/staging.yml +474 -0
- agentops_accelerator-0.3.0/.gitignore +466 -0
- agentops_accelerator-0.3.0/.pre-commit-config.yaml +7 -0
- agentops_accelerator-0.3.0/.vscode/launch.json +38 -0
- agentops_accelerator-0.3.0/.vscode/settings.json +14 -0
- agentops_accelerator-0.3.0/.vscode/tasks.json +10 -0
- agentops_accelerator-0.3.0/AGENTS.md +565 -0
- agentops_accelerator-0.3.0/CHANGELOG.md +377 -0
- agentops_accelerator-0.3.0/CONTRIBUTING.md +238 -0
- agentops_accelerator-0.3.0/LICENSE +21 -0
- agentops_accelerator-0.3.0/PKG-INFO +278 -0
- agentops_accelerator-0.3.0/README.md +225 -0
- agentops_accelerator-0.3.0/SECURITY.md +14 -0
- agentops_accelerator-0.3.0/docs/bundles.md +193 -0
- agentops_accelerator-0.3.0/docs/ci-github-actions.md +507 -0
- agentops_accelerator-0.3.0/docs/concepts.md +210 -0
- agentops_accelerator-0.3.0/docs/doctor-checks.md +171 -0
- agentops_accelerator-0.3.0/docs/doctor-explained.md +419 -0
- agentops_accelerator-0.3.0/docs/e2e-live-architecture.md +82 -0
- agentops_accelerator-0.3.0/docs/e2e-live-setup.md +226 -0
- agentops_accelerator-0.3.0/docs/foundry-evaluation-sdk-built-in-evaluators.md +218 -0
- agentops_accelerator-0.3.0/docs/how-it-works.md +712 -0
- agentops_accelerator-0.3.0/docs/media/agentops-diagrams.vsdx +0 -0
- agentops_accelerator-0.3.0/docs/media/foundry-control-plane.png +0 -0
- agentops_accelerator-0.3.0/docs/release-process.md +861 -0
- agentops_accelerator-0.3.0/docs/tutorial-end-to-end.md +876 -0
- agentops_accelerator-0.3.0/docs/tutorial-hosted-agent-quickstart.md +768 -0
- agentops_accelerator-0.3.0/docs/tutorial-prompt-agent-quickstart.md +922 -0
- agentops_accelerator-0.3.0/docs/verifying-tombstones.md +204 -0
- agentops_accelerator-0.3.0/examples/flat-quickstart/README.md +15 -0
- agentops_accelerator-0.3.0/examples/flat-quickstart/agentops.yaml +26 -0
- agentops_accelerator-0.3.0/examples/flat-quickstart/dataset.jsonl +3 -0
- agentops_accelerator-0.3.0/icon.png +0 -0
- agentops_accelerator-0.3.0/infra/e2e/agent-app/Dockerfile +24 -0
- agentops_accelerator-0.3.0/infra/e2e/agent-app/app.py +175 -0
- agentops_accelerator-0.3.0/infra/e2e/agent-app/requirements.txt +4 -0
- agentops_accelerator-0.3.0/infra/e2e/bootstrap.bicep +211 -0
- agentops_accelerator-0.3.0/infra/e2e/bootstrap.parameters.example.json +12 -0
- agentops_accelerator-0.3.0/infra/e2e/perrun.bicep +121 -0
- agentops_accelerator-0.3.0/launch.json +43 -0
- agentops_accelerator-0.3.0/media/foundry.svg +71 -0
- agentops_accelerator-0.3.0/media/quickstart.gif +0 -0
- agentops_accelerator-0.3.0/plugins/agentops/.vscodeignore +12 -0
- agentops_accelerator-0.3.0/plugins/agentops/LICENSE +21 -0
- agentops_accelerator-0.3.0/plugins/agentops/README.md +87 -0
- agentops_accelerator-0.3.0/plugins/agentops/package.json +66 -0
- agentops_accelerator-0.3.0/plugins/agentops/plugin.json +10 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-agent/SKILL.md +137 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-config/SKILL.md +113 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-dataset/SKILL.md +84 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-eval/SKILL.md +189 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-report/SKILL.md +71 -0
- agentops_accelerator-0.3.0/plugins/agentops/skills/agentops-workflow/SKILL.md +471 -0
- agentops_accelerator-0.3.0/pyproject.toml +83 -0
- agentops_accelerator-0.3.0/scripts/create_support_agent.py +351 -0
- agentops_accelerator-0.3.0/scripts/cut-release.ps1 +131 -0
- agentops_accelerator-0.3.0/scripts/cut-release.sh +120 -0
- agentops_accelerator-0.3.0/scripts/e2e_aggregate_summary.py +134 -0
- agentops_accelerator-0.3.0/scripts/e2e_data/basic.jsonl +3 -0
- agentops_accelerator-0.3.0/scripts/e2e_data/rag.jsonl +2 -0
- agentops_accelerator-0.3.0/scripts/e2e_data/tools.jsonl +3 -0
- agentops_accelerator-0.3.0/scripts/e2e_demo.py +252 -0
- agentops_accelerator-0.3.0/scripts/e2e_hosted_agent.py +199 -0
- agentops_accelerator-0.3.0/scripts/e2e_make_transcript.py +211 -0
- agentops_accelerator-0.3.0/scripts/e2e_render_config.py +335 -0
- agentops_accelerator-0.3.0/scripts/release.ps1 +177 -0
- agentops_accelerator-0.3.0/scripts/release.sh +172 -0
- agentops_accelerator-0.3.0/scripts/setup-e2e-new-tenant.ps1 +204 -0
- agentops_accelerator-0.3.0/scripts/staging.ps1 +154 -0
- agentops_accelerator-0.3.0/scripts/staging.sh +147 -0
- agentops_accelerator-0.3.0/scripts/sync-skills.ps1 +38 -0
- agentops_accelerator-0.3.0/scripts/sync-skills.sh +37 -0
- agentops_accelerator-0.3.0/scripts/verify_tombstones.py +673 -0
- agentops_accelerator-0.3.0/setup.cfg +4 -0
- agentops_accelerator-0.3.0/src/agentops/__init__.py +10 -0
- agentops_accelerator-0.3.0/src/agentops/__main__.py +6 -0
- agentops_accelerator-0.3.0/src/agentops/agent/__init__.py +12 -0
- agentops_accelerator-0.3.0/src/agentops/agent/_legacy_ids.py +92 -0
- agentops_accelerator-0.3.0/src/agentops/agent/analyzer.py +207 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/catalog.py +880 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/errors.py +279 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/foundry_config.py +75 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/latency.py +84 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/opex.py +157 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/opex_workspace.py +874 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture.py +36 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/__init__.py +53 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/content_filter.py +59 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/diagnostics.py +74 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/local_auth.py +55 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/managed_identity.py +59 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/posture_rules/network.py +68 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/regression.py +78 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/release_readiness.py +182 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/safety.py +247 -0
- agentops_accelerator-0.3.0/src/agentops/agent/checks/spec_conformance.py +375 -0
- agentops_accelerator-0.3.0/src/agentops/agent/cockpit.py +5159 -0
- agentops_accelerator-0.3.0/src/agentops/agent/config.py +240 -0
- agentops_accelerator-0.3.0/src/agentops/agent/findings.py +113 -0
- agentops_accelerator-0.3.0/src/agentops/agent/history.py +142 -0
- agentops_accelerator-0.3.0/src/agentops/agent/knowledge/__init__.py +182 -0
- agentops_accelerator-0.3.0/src/agentops/agent/knowledge/waf-checklist.csv +39 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/__init__.py +16 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_base.py +124 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_bundle_rule.py +154 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_client.py +347 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_dataset_rules.py +191 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_engine.py +106 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_prompt_rules.py +291 -0
- agentops_accelerator-0.3.0/src/agentops/agent/llm_assist/_spec_rules.py +235 -0
- agentops_accelerator-0.3.0/src/agentops/agent/production_telemetry.py +430 -0
- agentops_accelerator-0.3.0/src/agentops/agent/report.py +207 -0
- agentops_accelerator-0.3.0/src/agentops/agent/server/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/agent/server/app.py +84 -0
- agentops_accelerator-0.3.0/src/agentops/agent/server/auth.py +94 -0
- agentops_accelerator-0.3.0/src/agentops/agent/server/chat.py +44 -0
- agentops_accelerator-0.3.0/src/agentops/agent/server/protocol.py +72 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/azure_monitor.py +523 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/azure_resources.py +602 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/foundry_control.py +174 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/results_history.py +494 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/spec_detectors/__init__.py +42 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/spec_detectors/_base.py +58 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/spec_detectors/agents_md.py +75 -0
- agentops_accelerator-0.3.0/src/agentops/agent/sources/spec_detectors/spec_kit.py +172 -0
- agentops_accelerator-0.3.0/src/agentops/agent/time_range.py +117 -0
- agentops_accelerator-0.3.0/src/agentops/cli/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/cli/app.py +4823 -0
- agentops_accelerator-0.3.0/src/agentops/core/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/core/agentops_config.py +592 -0
- agentops_accelerator-0.3.0/src/agentops/core/config_loader.py +22 -0
- agentops_accelerator-0.3.0/src/agentops/core/evaluators.py +480 -0
- agentops_accelerator-0.3.0/src/agentops/core/release_evidence.py +56 -0
- agentops_accelerator-0.3.0/src/agentops/core/results.py +117 -0
- agentops_accelerator-0.3.0/src/agentops/mcp/__init__.py +10 -0
- agentops_accelerator-0.3.0/src/agentops/mcp/server.py +232 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/__init__.py +8 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/cloud_results.py +189 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/cloud_runner.py +901 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/comparison.py +108 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/diagnostics.py +51 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/invocations.py +535 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/official_eval.py +414 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/orchestrator.py +775 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/prompt_deploy.py +377 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/publisher.py +121 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/reporter.py +202 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/runtime.py +409 -0
- agentops_accelerator-0.3.0/src/agentops/pipeline/thresholds.py +84 -0
- agentops_accelerator-0.3.0/src/agentops/services/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/services/cicd.py +720 -0
- agentops_accelerator-0.3.0/src/agentops/services/eval_analysis.py +848 -0
- agentops_accelerator-0.3.0/src/agentops/services/evidence_pack.py +757 -0
- agentops_accelerator-0.3.0/src/agentops/services/initializer.py +86 -0
- agentops_accelerator-0.3.0/src/agentops/services/preflight.py +470 -0
- agentops_accelerator-0.3.0/src/agentops/services/setup_wizard.py +709 -0
- agentops_accelerator-0.3.0/src/agentops/services/skills.py +643 -0
- agentops_accelerator-0.3.0/src/agentops/services/trace_promotion.py +300 -0
- agentops_accelerator-0.3.0/src/agentops/services/workflow_analysis.py +1129 -0
- agentops_accelerator-0.3.0/src/agentops/templates/.gitignore +15 -0
- agentops_accelerator-0.3.0/src/agentops/templates/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/templates/agent-server/Dockerfile +23 -0
- agentops_accelerator-0.3.0/src/agentops/templates/agent-server/README.md +61 -0
- agentops_accelerator-0.3.0/src/agentops/templates/agent-server/main.bicep +94 -0
- agentops_accelerator-0.3.0/src/agentops/templates/agent.yaml +87 -0
- agentops_accelerator-0.3.0/src/agentops/templates/agentops.yaml +58 -0
- agentops_accelerator-0.3.0/src/agentops/templates/foundry.svg +71 -0
- agentops_accelerator-0.3.0/src/agentops/templates/icon.png +0 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-dev-azd.yml +118 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-dev.yml +73 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-prod-azd.yml +141 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-prod.yml +94 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-prompt-agent.yml +167 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-qa-azd.yml +118 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-deploy-qa.yml +68 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-pr-prompt-agent.yml +210 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-pr.yml +155 -0
- agentops_accelerator-0.3.0/src/agentops/templates/pipelines/azuredevops/agentops-watchdog.yml +106 -0
- agentops_accelerator-0.3.0/src/agentops/templates/project.gitignore +36 -0
- agentops_accelerator-0.3.0/src/agentops/templates/sample-traces.jsonl +3 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-agent/SKILL.md +137 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-config/SKILL.md +113 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-dataset/SKILL.md +84 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-eval/SKILL.md +189 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-report/SKILL.md +71 -0
- agentops_accelerator-0.3.0/src/agentops/templates/skills/agentops-workflow/SKILL.md +471 -0
- agentops_accelerator-0.3.0/src/agentops/templates/smoke.jsonl +3 -0
- agentops_accelerator-0.3.0/src/agentops/templates/waf-checklist.README.md +84 -0
- agentops_accelerator-0.3.0/src/agentops/templates/waf-checklist.csv +22 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-dev-azd.yml +166 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-dev.yml +187 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-prod-azd.yml +183 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-prod.yml +171 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-prompt-agent.yml +197 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-qa-azd.yml +156 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-deploy-qa.yml +145 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-pr-prompt-agent.yml +210 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-pr.yml +148 -0
- agentops_accelerator-0.3.0/src/agentops/templates/workflows/agentops-watchdog.yml +122 -0
- agentops_accelerator-0.3.0/src/agentops/utils/__init__.py +1 -0
- agentops_accelerator-0.3.0/src/agentops/utils/azd_env.py +435 -0
- agentops_accelerator-0.3.0/src/agentops/utils/azure_endpoints.py +62 -0
- agentops_accelerator-0.3.0/src/agentops/utils/colors.py +47 -0
- agentops_accelerator-0.3.0/src/agentops/utils/dotenv_loader.py +105 -0
- agentops_accelerator-0.3.0/src/agentops/utils/foundry_discovery.py +229 -0
- agentops_accelerator-0.3.0/src/agentops/utils/logging.py +59 -0
- agentops_accelerator-0.3.0/src/agentops/utils/telemetry.py +554 -0
- agentops_accelerator-0.3.0/src/agentops/utils/yaml.py +36 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/PKG-INFO +278 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/SOURCES.txt +306 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/dependency_links.txt +1 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/entry_points.txt +2 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/requires.txt +25 -0
- agentops_accelerator-0.3.0/src/agentops_accelerator.egg-info/top_level.txt +1 -0
- agentops_accelerator-0.3.0/tests/TESTING.md +80 -0
- agentops_accelerator-0.3.0/tests/fixtures/fake_adapter.py +31 -0
- agentops_accelerator-0.3.0/tests/fixtures/fake_eval_runner.py +66 -0
- agentops_accelerator-0.3.0/tests/integration/.gitkeep +1 -0
- agentops_accelerator-0.3.0/tests/integration/test_cli_flat_schema.py +124 -0
- agentops_accelerator-0.3.0/tests/integration/test_pipeline_smoke.py +144 -0
- agentops_accelerator-0.3.0/tests/unit/.gitkeep +1 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_analyzer.py +77 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_categories.py +189 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_errors.py +162 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_foundry_config.py +48 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_opex.py +133 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_opex_workspace.py +456 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_regression.py +65 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_safety.py +218 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_checks_spec_conformance.py +272 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_cli.py +169 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_config.py +45 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_findings.py +30 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_history.py +119 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_opex_workspace_check.py +116 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_posture_rules.py +300 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_results_history.py +205 -0
- agentops_accelerator-0.3.0/tests/unit/test_agent_server.py +58 -0
- agentops_accelerator-0.3.0/tests/unit/test_agentops_config.py +332 -0
- agentops_accelerator-0.3.0/tests/unit/test_azd_env.py +205 -0
- agentops_accelerator-0.3.0/tests/unit/test_azure_endpoints.py +54 -0
- agentops_accelerator-0.3.0/tests/unit/test_azure_resources_discovery.py +315 -0
- agentops_accelerator-0.3.0/tests/unit/test_cicd.py +1009 -0
- agentops_accelerator-0.3.0/tests/unit/test_cli_cockpit_connection_summary.py +117 -0
- agentops_accelerator-0.3.0/tests/unit/test_cli_cockpit_port_conflict.py +97 -0
- agentops_accelerator-0.3.0/tests/unit/test_cli_commands.py +85 -0
- agentops_accelerator-0.3.0/tests/unit/test_cli_explain.py +114 -0
- agentops_accelerator-0.3.0/tests/unit/test_cloud_results.py +123 -0
- agentops_accelerator-0.3.0/tests/unit/test_cloud_runner.py +679 -0
- agentops_accelerator-0.3.0/tests/unit/test_cockpit.py +1353 -0
- agentops_accelerator-0.3.0/tests/unit/test_diagnostics.py +50 -0
- agentops_accelerator-0.3.0/tests/unit/test_doctor_catalog.py +151 -0
- agentops_accelerator-0.3.0/tests/unit/test_doctor_cli_explain.py +150 -0
- agentops_accelerator-0.3.0/tests/unit/test_dotenv_loader.py +123 -0
- agentops_accelerator-0.3.0/tests/unit/test_e2e_render.py +132 -0
- agentops_accelerator-0.3.0/tests/unit/test_eval_analysis.py +170 -0
- agentops_accelerator-0.3.0/tests/unit/test_evaluators.py +240 -0
- agentops_accelerator-0.3.0/tests/unit/test_foundry_discovery.py +306 -0
- agentops_accelerator-0.3.0/tests/unit/test_init_command.py +490 -0
- agentops_accelerator-0.3.0/tests/unit/test_initializer.py +52 -0
- agentops_accelerator-0.3.0/tests/unit/test_invocations.py +54 -0
- agentops_accelerator-0.3.0/tests/unit/test_knowledge_loader.py +173 -0
- agentops_accelerator-0.3.0/tests/unit/test_llm_assist.py +483 -0
- agentops_accelerator-0.3.0/tests/unit/test_llm_assist_spec_rules.py +198 -0
- agentops_accelerator-0.3.0/tests/unit/test_mcp_server.py +101 -0
- agentops_accelerator-0.3.0/tests/unit/test_official_eval.py +138 -0
- agentops_accelerator-0.3.0/tests/unit/test_pipeline_publisher.py +393 -0
- agentops_accelerator-0.3.0/tests/unit/test_pipeline_reporter.py +83 -0
- agentops_accelerator-0.3.0/tests/unit/test_preflight.py +205 -0
- agentops_accelerator-0.3.0/tests/unit/test_production_telemetry.py +254 -0
- agentops_accelerator-0.3.0/tests/unit/test_prompt_deploy.py +126 -0
- agentops_accelerator-0.3.0/tests/unit/test_release_evidence.py +235 -0
- agentops_accelerator-0.3.0/tests/unit/test_runtime_conversation.py +132 -0
- agentops_accelerator-0.3.0/tests/unit/test_setup_wizard.py +657 -0
- agentops_accelerator-0.3.0/tests/unit/test_skills.py +756 -0
- agentops_accelerator-0.3.0/tests/unit/test_skills_sync.py +81 -0
- agentops_accelerator-0.3.0/tests/unit/test_telemetry.py +743 -0
- agentops_accelerator-0.3.0/tests/unit/test_time_range.py +85 -0
- agentops_accelerator-0.3.0/tests/unit/test_trace_promotion.py +112 -0
- agentops_accelerator-0.3.0/tests/unit/test_workflow_analysis.py +229 -0
- agentops_accelerator-0.3.0/tombstones/pypi/README.md +47 -0
- agentops_accelerator-0.3.0/tombstones/pypi/pyproject.toml +40 -0
- agentops_accelerator-0.3.0/tombstones/vscode/.vscodeignore +9 -0
- agentops_accelerator-0.3.0/tombstones/vscode/CDN_DEPRECATION_REQUEST.md +31 -0
- agentops_accelerator-0.3.0/tombstones/vscode/CHANGELOG.md +13 -0
- agentops_accelerator-0.3.0/tombstones/vscode/LICENSE +21 -0
- agentops_accelerator-0.3.0/tombstones/vscode/README.md +12 -0
- agentops_accelerator-0.3.0/tombstones/vscode/icon.png +0 -0
- agentops_accelerator-0.3.0/tombstones/vscode/package.json +42 -0
- agentops_accelerator-0.3.0/tombstones/vscode/src/extension.ts +74 -0
- agentops_accelerator-0.3.0/tombstones/vscode/tsconfig.json +16 -0
- agentops_accelerator-0.3.0/uv.lock +3508 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "agentops",
|
|
3
|
+
"metadata": {
|
|
4
|
+
"description": "AgentOps Toolkit plugin marketplace — evaluation skills for Microsoft Foundry agents",
|
|
5
|
+
"version": "1.0.0"
|
|
6
|
+
},
|
|
7
|
+
"owner": {
|
|
8
|
+
"name": "AgentOps Toolkit",
|
|
9
|
+
"email": "agentops@microsoft.com"
|
|
10
|
+
},
|
|
11
|
+
"plugins": [
|
|
12
|
+
{
|
|
13
|
+
"name": "agentops-accelerator",
|
|
14
|
+
"source": "../../plugins/agentops",
|
|
15
|
+
"description": "Copilot agent skills for running standardized evaluation workflows with AgentOps Toolkit and Microsoft Foundry agents.",
|
|
16
|
+
"version": "0.3.0",
|
|
17
|
+
"keywords": [
|
|
18
|
+
"agentops",
|
|
19
|
+
"evaluation",
|
|
20
|
+
"foundry",
|
|
21
|
+
"copilot",
|
|
22
|
+
"agent-skills",
|
|
23
|
+
"ai-evaluation"
|
|
24
|
+
],
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"repository": "https://github.com/Azure/agentops"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
name: Azure OIDC login (composite, no node20 deps)
|
|
2
|
+
description: |
|
|
3
|
+
Drop-in replacement for azure/login that performs the OIDC federated token
|
|
4
|
+
exchange entirely in bash, so it does not pull JavaScript action runtime
|
|
5
|
+
dependencies into the login step.
|
|
6
|
+
|
|
7
|
+
After this step runs, the az CLI is authenticated and AZURE_* environment
|
|
8
|
+
variables are exported for downstream tools (azure-identity etc).
|
|
9
|
+
|
|
10
|
+
inputs:
|
|
11
|
+
client-id:
|
|
12
|
+
description: "Microsoft Entra application (client) ID"
|
|
13
|
+
required: true
|
|
14
|
+
tenant-id:
|
|
15
|
+
description: "Microsoft Entra tenant ID"
|
|
16
|
+
required: true
|
|
17
|
+
subscription-id:
|
|
18
|
+
description: "Azure subscription ID"
|
|
19
|
+
required: true
|
|
20
|
+
audience:
|
|
21
|
+
description: "Federated identity audience"
|
|
22
|
+
required: false
|
|
23
|
+
default: "api://AzureADTokenExchange"
|
|
24
|
+
|
|
25
|
+
runs:
|
|
26
|
+
using: composite
|
|
27
|
+
steps:
|
|
28
|
+
- name: Federated OIDC login (bash)
|
|
29
|
+
shell: bash
|
|
30
|
+
env:
|
|
31
|
+
AZURE_CLIENT_ID: ${{ inputs.client-id }}
|
|
32
|
+
AZURE_TENANT_ID: ${{ inputs.tenant-id }}
|
|
33
|
+
AZURE_SUBSCRIPTION_ID: ${{ inputs.subscription-id }}
|
|
34
|
+
OIDC_AUDIENCE: ${{ inputs.audience }}
|
|
35
|
+
run: |
|
|
36
|
+
set -euo pipefail
|
|
37
|
+
|
|
38
|
+
: "${ACTIONS_ID_TOKEN_REQUEST_TOKEN:?id-token permission missing on the job}"
|
|
39
|
+
: "${ACTIONS_ID_TOKEN_REQUEST_URL:?id-token permission missing on the job}"
|
|
40
|
+
|
|
41
|
+
echo "::group::Requesting OIDC ID token from GitHub"
|
|
42
|
+
ID_TOKEN_JSON=$(curl -sS \
|
|
43
|
+
-H "Authorization: bearer ${ACTIONS_ID_TOKEN_REQUEST_TOKEN}" \
|
|
44
|
+
-H "Accept: application/json" \
|
|
45
|
+
"${ACTIONS_ID_TOKEN_REQUEST_URL}&audience=${OIDC_AUDIENCE}")
|
|
46
|
+
ID_TOKEN=$(printf '%s' "$ID_TOKEN_JSON" | python3 -c 'import sys,json;print(json.load(sys.stdin)["value"])')
|
|
47
|
+
if [[ -z "${ID_TOKEN}" || "${ID_TOKEN}" == "null" ]]; then
|
|
48
|
+
echo "Failed to obtain GitHub OIDC ID token. Response was:" >&2
|
|
49
|
+
echo "$ID_TOKEN_JSON" >&2
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
52
|
+
echo "::endgroup::"
|
|
53
|
+
|
|
54
|
+
echo "::group::az login --federated-token"
|
|
55
|
+
az login \
|
|
56
|
+
--service-principal \
|
|
57
|
+
--username "${AZURE_CLIENT_ID}" \
|
|
58
|
+
--tenant "${AZURE_TENANT_ID}" \
|
|
59
|
+
--federated-token "${ID_TOKEN}" \
|
|
60
|
+
--allow-no-subscriptions \
|
|
61
|
+
--output none
|
|
62
|
+
az account set --subscription "${AZURE_SUBSCRIPTION_ID}"
|
|
63
|
+
echo "::endgroup::"
|
|
64
|
+
|
|
65
|
+
# Export the same env vars azure/login sets for DefaultAzureCredential
|
|
66
|
+
# and other downstream Azure SDKs.
|
|
67
|
+
{
|
|
68
|
+
echo "AZURE_CLIENT_ID=${AZURE_CLIENT_ID}"
|
|
69
|
+
echo "AZURE_TENANT_ID=${AZURE_TENANT_ID}"
|
|
70
|
+
echo "AZURE_SUBSCRIPTION_ID=${AZURE_SUBSCRIPTION_ID}"
|
|
71
|
+
echo "AZURE_FEDERATED_TOKEN=${ID_TOKEN}"
|
|
72
|
+
} >> "${GITHUB_ENV}"
|
|
73
|
+
|
|
74
|
+
# The federated token is short-lived and a secret; mask it.
|
|
75
|
+
echo "::add-mask::${ID_TOKEN}"
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
applyTo: '**/*.py'
|
|
3
|
+
---
|
|
4
|
+
# Systematic Code-Quality Pass Instructions for Python Codebase
|
|
5
|
+
|
|
6
|
+
> Should check copilot-instructions.md for general guidelines first, but these are specific to Python files and should be applied in addition to any general instructions.
|
|
7
|
+
|
|
8
|
+
You are performing a systematic code-quality pass on a Python codebase. Work through every folder one at a time. For each Python file, apply ALL of the following rules, then compile-check every edited file before moving to the next folder.
|
|
9
|
+
|
|
10
|
+
## 1. Copyright & Module Docstring
|
|
11
|
+
- Every `.py` file (except empty `__init__.py`) must start with:
|
|
12
|
+
```
|
|
13
|
+
# Copyright (c) Microsoft Corporation.
|
|
14
|
+
# Licensed under the MIT License.
|
|
15
|
+
```
|
|
16
|
+
- Immediately after, add or replace the module-level docstring. It must:
|
|
17
|
+
- Describe what the module does in 1-2 sentences.
|
|
18
|
+
- Mention its role in the broader system (e.g., which pipeline stage, what it depends on).
|
|
19
|
+
- NOT contain generic filler like "This module provides utilities for…"
|
|
20
|
+
|
|
21
|
+
## 2. Package `__init__.py`
|
|
22
|
+
- If empty, add the copyright header and a package docstring listing sub-modules with one-line descriptions.
|
|
23
|
+
|
|
24
|
+
## 3. Class Docstrings
|
|
25
|
+
- Replace generic class docstrings with structured ones:
|
|
26
|
+
```
|
|
27
|
+
"""One-line summary.
|
|
28
|
+
|
|
29
|
+
Responsibilities:
|
|
30
|
+
1. First responsibility.
|
|
31
|
+
2. Second responsibility.
|
|
32
|
+
|
|
33
|
+
Attributes:
|
|
34
|
+
attr_name: Description.
|
|
35
|
+
"""
|
|
36
|
+
```
|
|
37
|
+
- For dataclasses / Pydantic models, list all fields under "Attributes:".
|
|
38
|
+
|
|
39
|
+
## 4. Method / Function Docstrings
|
|
40
|
+
- Every public and non-trivial private method must have a docstring.
|
|
41
|
+
- Use this structure:
|
|
42
|
+
```
|
|
43
|
+
"""One-line summary.
|
|
44
|
+
|
|
45
|
+
Steps: ← only for complex multi-step methods
|
|
46
|
+
1. First step.
|
|
47
|
+
2. Second step.
|
|
48
|
+
|
|
49
|
+
Args:
|
|
50
|
+
param: Description.
|
|
51
|
+
|
|
52
|
+
Returns:
|
|
53
|
+
Description.
|
|
54
|
+
|
|
55
|
+
Raises:
|
|
56
|
+
ExceptionType: When condition.
|
|
57
|
+
"""
|
|
58
|
+
```
|
|
59
|
+
- Simple one-line methods (getters, delegates) get a single-line docstring.
|
|
60
|
+
|
|
61
|
+
## 5. Comment Cleanup - REMOVE These
|
|
62
|
+
- **Redundant inline comments** that just restate the code:
|
|
63
|
+
`# Create Claim_Process entry in Cosmos DB` above `new_claim_process = Claim_Process(...)`
|
|
64
|
+
- **Banner comments** / section dividers:
|
|
65
|
+
`############################################################`
|
|
66
|
+
`## Initialize AgentFrameworkHelper and add it to the app ##`
|
|
67
|
+
`############################################################`
|
|
68
|
+
- **Commented-out code** (dead imports, print statements, old logic).
|
|
69
|
+
- **Heritage/provenance comments** referencing deleted files:
|
|
70
|
+
`Replaces create_quiet_logger() from quiet_logging.py`
|
|
71
|
+
- **Placeholder comments** that describe unimplemented intent:
|
|
72
|
+
`# Placeholder for document processing logic`
|
|
73
|
+
- **"For demonstration" / "Here you would typically"** comments.
|
|
74
|
+
|
|
75
|
+
## 6. Comment Cleanup - KEEP These
|
|
76
|
+
- **Actionable TODOs** with clear intent: `# TODO: Make configurable if needed`
|
|
77
|
+
- **Non-obvious "why" comments** that explain a design decision:
|
|
78
|
+
`# Avoid unbounded growth on very chatty endpoints.`
|
|
79
|
+
- **Contract/protocol comments** that document external API behavior:
|
|
80
|
+
`# Image files bypass the 'extract' step.`
|
|
81
|
+
|
|
82
|
+
## 7. Fix Stale References
|
|
83
|
+
- Search for outdated terminology (old project names, old class names, old pipeline descriptions) and correct them to match the current code.
|
|
84
|
+
|
|
85
|
+
## 8. Remove Dead Code
|
|
86
|
+
- Delete unused imports.
|
|
87
|
+
- Delete `pass` in `else` blocks that only existed to hold a now-deleted comment.
|
|
88
|
+
- Delete redundant assignments like `claim_id = claim_id`.
|
|
89
|
+
- Delete duplicate imports (e.g., `import os` at module level AND inside a function).
|
|
90
|
+
|
|
91
|
+
## 9. Compile-Check
|
|
92
|
+
- After finishing each folder, run `python -m py_compile <file>` on every edited file.
|
|
93
|
+
- Fix any errors before proceeding to the next folder.
|
|
94
|
+
|
|
95
|
+
## Working Process
|
|
96
|
+
1. List the directory tree of the target folder.
|
|
97
|
+
2. Read all Python files in the folder.
|
|
98
|
+
3. Create a TODO list for the folder (one item per file + one for compile-check).
|
|
99
|
+
4. Edit files, marking each TODO as you go.
|
|
100
|
+
5. Compile-check all edited files.
|
|
101
|
+
6. Move to the next folder.
|
|
102
|
+
|
|
103
|
+
Start with the folder I specify and work through it completely before asking what to do next.
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# Copilot Instructions for AgentOps
|
|
2
|
+
|
|
3
|
+
AgentOps Toolkit is a Python 3.11+ CLI, local Cockpit, and coding-agent skill
|
|
4
|
+
set that helps teams answer two release questions for Microsoft Foundry agents:
|
|
5
|
+
can we ship it, and where is the proof? Foundry runs the agent. AgentOps proves
|
|
6
|
+
the release is ready with eval gates, Doctor readiness, CI/CD, release evidence,
|
|
7
|
+
and trace-driven regression loops.
|
|
8
|
+
|
|
9
|
+
Read these first for detailed architecture and product context:
|
|
10
|
+
|
|
11
|
+
- `AGENTS.md`
|
|
12
|
+
- `docs/how-it-works.md`
|
|
13
|
+
- `CONTRIBUTING.md`
|
|
14
|
+
- `README.md`
|
|
15
|
+
|
|
16
|
+
## Current public CLI surface
|
|
17
|
+
|
|
18
|
+
- `agentops --version`
|
|
19
|
+
- `agentops explain [COMMAND...] [--no-pager] [--format text|markdown|html] [--out PATH] [--open]`
|
|
20
|
+
- `agentops init [--force] [--dir PATH] [--no-prompt] [--no-appinsights] [--azd-env NAME] [--project-endpoint URL] [--agent REF] [--dataset PATH] [--appinsights-connection-string STR]`
|
|
21
|
+
- `agentops init show [--dir PATH] [--reveal-secrets]`
|
|
22
|
+
- `agentops eval analyze [--dir PATH] [--format text|markdown|json] [--out PATH]`
|
|
23
|
+
- `agentops eval run [--config PATH] [--baseline PATH] [--output DIR]`
|
|
24
|
+
- `agentops eval promote-traces --source PATH [--out PATH] [--max-rows N] [--label-mode self-similarity|pending] [--apply]`
|
|
25
|
+
- `agentops report generate [--in PATH] [--out PATH]`
|
|
26
|
+
- `agentops workflow analyze [--dir PATH] [--format text|markdown|json] [--out PATH]`
|
|
27
|
+
- `agentops workflow generate [--force] [--dir PATH] [--kinds pr,dev,qa,prod,watchdog] [--platform github|azure-devops] [--deploy-mode auto|placeholder|azd|prompt-agent] [--doctor-gate critical|warning|none]`
|
|
28
|
+
- `agentops skills install [--platform copilot|claude] [--from SOURCE] [--prompt] [--force] [--dir PATH]`
|
|
29
|
+
- `agentops mcp serve`
|
|
30
|
+
- `agentops doctor [--workspace PATH] [--config PATH] [--out PATH] [--lookback-days N] [--severity-fail SEVERITY] [--evidence-pack] [--evidence-out PATH]`
|
|
31
|
+
- `agentops doctor explain [--no-pager] [--format text|markdown|html] [--out PATH] [--open]`
|
|
32
|
+
- `agentops cockpit [--host HOST] [--port PORT] [--workspace PATH] [--no-preflight]`
|
|
33
|
+
- `agentops agent serve [--host HOST] [--port PORT] [--config PATH] [--no-verify] [--workers N]`
|
|
34
|
+
|
|
35
|
+
Do not add commands or flags unless the product discussion explicitly calls for
|
|
36
|
+
them. Keep `--help` terse and put long-form manual content under `explain`.
|
|
37
|
+
|
|
38
|
+
## Architecture rules
|
|
39
|
+
|
|
40
|
+
- Keep `src/agentops/cli/app.py` thin: parse arguments, print concise output,
|
|
41
|
+
and delegate to `pipeline/` or `services/`.
|
|
42
|
+
- Keep `src/agentops/core/` pure: no Azure SDK imports, no network calls.
|
|
43
|
+
- Use `pathlib.Path` for paths.
|
|
44
|
+
- Prefer small focused functions and explicit user-friendly errors.
|
|
45
|
+
- Azure SDK imports must be lazy inside runtime functions.
|
|
46
|
+
- No import-time side effects beyond the existing dotenv loader behavior in the
|
|
47
|
+
CLI entry point.
|
|
48
|
+
|
|
49
|
+
Where to put common changes:
|
|
50
|
+
|
|
51
|
+
| Change | Location |
|
|
52
|
+
|---|---|
|
|
53
|
+
| `agentops.yaml` schema | `src/agentops/core/agentops_config.py` |
|
|
54
|
+
| `results.json` schema | `src/agentops/core/results.py` |
|
|
55
|
+
| Release evidence schema | `src/agentops/core/release_evidence.py` |
|
|
56
|
+
| Eval execution | `src/agentops/pipeline/` |
|
|
57
|
+
| Doctor checks | `src/agentops/agent/checks/` |
|
|
58
|
+
| Release evidence writer | `src/agentops/services/evidence_pack.py` |
|
|
59
|
+
| Trace export to dataset candidates | `src/agentops/services/trace_promotion.py` |
|
|
60
|
+
| Workflow generation | `src/agentops/services/cicd.py` and `src/agentops/templates/` |
|
|
61
|
+
|
|
62
|
+
## Product principles
|
|
63
|
+
|
|
64
|
+
- Use Foundry for hosted agents, cloud evaluations, traces, monitoring,
|
|
65
|
+
red teaming, datasets, and operations.
|
|
66
|
+
- Use AgentOps for repo-controlled release readiness: eval config, CI gates,
|
|
67
|
+
normalized artifacts, Doctor diagnostics, release evidence,
|
|
68
|
+
trace-to-dataset promotion, and Cockpit links to Foundry/Azure Monitor.
|
|
69
|
+
- `agentops doctor --evidence-pack` is a readiness projection over existing
|
|
70
|
+
signals; do not create a second exit-code contract.
|
|
71
|
+
- Trace promotion is review-first. `self-similarity` labels support drift
|
|
72
|
+
detection, not human-verified correctness.
|
|
73
|
+
- Doctor and Cockpit stay read-only; data promotion belongs in services/CLI.
|
|
74
|
+
|
|
75
|
+
## Exit codes
|
|
76
|
+
|
|
77
|
+
- `0` = execution succeeded and all thresholds passed
|
|
78
|
+
- `2` = execution succeeded but one or more thresholds or configured finding
|
|
79
|
+
gates failed
|
|
80
|
+
- `1` = runtime or configuration error
|
|
81
|
+
|
|
82
|
+
Do not reinterpret these codes.
|
|
83
|
+
|
|
84
|
+
## Testing
|
|
85
|
+
|
|
86
|
+
Use existing tests only. The standard full-suite command is:
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
python -m pytest tests/ -x -q
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Add focused unit tests for new schema, services, Doctor checks, CLI flags, and
|
|
93
|
+
workflow template behavior. Azure SDK calls must be mocked or avoided in tests.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
|
|
3
|
+
updates:
|
|
4
|
+
# Python dependencies (pyproject.toml)
|
|
5
|
+
- package-ecosystem: "pip"
|
|
6
|
+
directory: "/"
|
|
7
|
+
schedule:
|
|
8
|
+
interval: "weekly"
|
|
9
|
+
target-branch: "develop"
|
|
10
|
+
labels:
|
|
11
|
+
- "dependencies"
|
|
12
|
+
|
|
13
|
+
# GitHub Actions
|
|
14
|
+
- package-ecosystem: "github-actions"
|
|
15
|
+
directory: "/"
|
|
16
|
+
schedule:
|
|
17
|
+
interval: "weekly"
|
|
18
|
+
target-branch: "develop"
|
|
19
|
+
labels:
|
|
20
|
+
- "dependencies"
|
|
21
|
+
- "github-actions"
|
|
22
|
+
|
|
23
|
+
# VS Code extension (plugins/agentops/package.json)
|
|
24
|
+
- package-ecosystem: "npm"
|
|
25
|
+
directory: "/plugins/agentops"
|
|
26
|
+
schedule:
|
|
27
|
+
interval: "weekly"
|
|
28
|
+
target-branch: "develop"
|
|
29
|
+
labels:
|
|
30
|
+
- "dependencies"
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
// Extension: agentops-skills
|
|
2
|
+
// Injects AgentOps workflow skills as context when relevant prompts are detected.
|
|
3
|
+
|
|
4
|
+
import { joinSession } from "@github/copilot-sdk/extension";
|
|
5
|
+
|
|
6
|
+
const SKILLS = {
|
|
7
|
+
"run-evals": {
|
|
8
|
+
keywords: [
|
|
9
|
+
"run eval", "start agentops", "run.yaml", "regenerate report",
|
|
10
|
+
"evaluation results", "agentops init", "agentops eval", "agentops report generate",
|
|
11
|
+
"run an evaluation", "initialize agentops", "results.json", "report.md",
|
|
12
|
+
"eval run", "run config", "evaluation output",
|
|
13
|
+
],
|
|
14
|
+
context: `## Skill: Run Evaluations
|
|
15
|
+
|
|
16
|
+
### Purpose
|
|
17
|
+
Guide through the implemented AgentOps evaluation workflow from workspace setup to report interpretation.
|
|
18
|
+
|
|
19
|
+
### Available Commands
|
|
20
|
+
- agentops init [--path <dir>] — Initialize workspace
|
|
21
|
+
- agentops eval run — Execute evaluation
|
|
22
|
+
- agentops report generate — Regenerate report from results.json
|
|
23
|
+
|
|
24
|
+
### Typical Workflow
|
|
25
|
+
1. Initialize workspace: agentops init
|
|
26
|
+
2. Confirm run config exists (.agentops/run.yaml)
|
|
27
|
+
3. Execute evaluation: agentops eval run
|
|
28
|
+
4. Regenerate markdown report: agentops report generate
|
|
29
|
+
5. Inspect outputs under .agentops/results/latest/
|
|
30
|
+
|
|
31
|
+
### Outputs
|
|
32
|
+
- results.json (machine-readable normalized results)
|
|
33
|
+
- report.md (human-readable summary)
|
|
34
|
+
- cloud_evaluation.json (cloud evaluation flows only)
|
|
35
|
+
- Latest pointers: .agentops/results/latest/
|
|
36
|
+
|
|
37
|
+
### Interpretation
|
|
38
|
+
- Start with report.md for quick pass/fail narrative and threshold view.
|
|
39
|
+
- Use results.json for metric-level details, row-level checks, and automation.
|
|
40
|
+
- Distinguish: thresholds passing, threshold failures, runtime/config errors.
|
|
41
|
+
|
|
42
|
+
### Guardrails
|
|
43
|
+
- Do not invent commands or flags beyond documented CLI behavior.
|
|
44
|
+
- Planned commands (compare, run-history) are stubbed — pivot to artifact inspection.`,
|
|
45
|
+
},
|
|
46
|
+
|
|
47
|
+
"investigate-regression": {
|
|
48
|
+
keywords: [
|
|
49
|
+
"regression", "score dropped", "threshold started failing",
|
|
50
|
+
"compare runs", "eval got worse", "debug evaluation",
|
|
51
|
+
"evaluation drift", "quality drop", "pass rate dropped",
|
|
52
|
+
"ci failing", "scores lower", "metrics degraded",
|
|
53
|
+
],
|
|
54
|
+
context: `## Skill: Investigate Regression
|
|
55
|
+
|
|
56
|
+
### Purpose
|
|
57
|
+
Guide through regression investigation using currently available AgentOps outputs.
|
|
58
|
+
|
|
59
|
+
### Available Commands
|
|
60
|
+
- agentops eval run — Generate fresh artifacts
|
|
61
|
+
- agentops report generate — Regenerate report
|
|
62
|
+
|
|
63
|
+
### Planned (not implemented)
|
|
64
|
+
- agentops eval compare --runs ID1,ID2
|
|
65
|
+
|
|
66
|
+
### Investigation Steps
|
|
67
|
+
1. Run fresh evaluation: agentops eval run
|
|
68
|
+
2. Regenerate report: agentops report generate
|
|
69
|
+
3. Compare current artifacts to baseline manually
|
|
70
|
+
4. Report factual deltas, then propose controlled next steps
|
|
71
|
+
|
|
72
|
+
### Required Inputs
|
|
73
|
+
- At least one recent artifact set (results.json + report.md)
|
|
74
|
+
- Preferably a baseline for side-by-side comparison
|
|
75
|
+
- Context about what changed (prompt, model, dataset, bundle, backend, environment)
|
|
76
|
+
|
|
77
|
+
### Interpretation
|
|
78
|
+
- Separate observations (artifact-backed) from hypotheses (plausible causes).
|
|
79
|
+
- Prioritize impact: which thresholds flipped, which metrics degraded most, broad vs concentrated failures.
|
|
80
|
+
- End with actionable next checks (rerun with controlled changes, validate dataset, verify config).
|
|
81
|
+
|
|
82
|
+
### Guardrails
|
|
83
|
+
- agentops eval compare is NOT implemented — use manual artifact comparison.
|
|
84
|
+
- Do not infer causality from correlation alone.
|
|
85
|
+
- Keep remediation tied to reproducible checks.`,
|
|
86
|
+
},
|
|
87
|
+
|
|
88
|
+
"observability-triage": {
|
|
89
|
+
keywords: [
|
|
90
|
+
"tracing", "monitoring", "cockpit", "alerts", "triage",
|
|
91
|
+
"observability", "run health", "production triage",
|
|
92
|
+
"monitor evals", "set up tracing", "failed evaluation",
|
|
93
|
+
"quality monitoring",
|
|
94
|
+
],
|
|
95
|
+
context: `## Skill: Observability Triage
|
|
96
|
+
|
|
97
|
+
### Purpose
|
|
98
|
+
Provide honest observability guidance: use current reporting artifacts today, frame tracing/monitoring as planned future work.
|
|
99
|
+
|
|
100
|
+
### Available Commands (for triage today)
|
|
101
|
+
- agentops eval run
|
|
102
|
+
- agentops report generate
|
|
103
|
+
|
|
104
|
+
### Planned/Stubbed (NOT implemented)
|
|
105
|
+
- agentops trace init
|
|
106
|
+
- agentops monitor setup
|
|
107
|
+
- agentops monitor show
|
|
108
|
+
- agentops monitor configure
|
|
109
|
+
|
|
110
|
+
### Current Triage Approach
|
|
111
|
+
- Use report.md for quick operational triage (what failed, severity).
|
|
112
|
+
- Use results.json for detailed metric and threshold inspection.
|
|
113
|
+
- Keep run artifacts organized for future compare/monitor automation.
|
|
114
|
+
|
|
115
|
+
### When Users Ask for Unimplemented Features
|
|
116
|
+
1. State explicitly: planned/stubbed, not available yet.
|
|
117
|
+
2. Provide immediate fallback: artifact-based troubleshooting.
|
|
118
|
+
3. Suggest preparation: organize artifacts for future tooling.
|
|
119
|
+
|
|
120
|
+
### Guardrails
|
|
121
|
+
- Do not present tracing or monitoring commands as available.
|
|
122
|
+
- Do not imply real-time cockpits/alerts exist in CLI.
|
|
123
|
+
- Always pivot to concrete available outputs (results.json, report.md).`,
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
function matchSkills(prompt) {
|
|
128
|
+
const lower = prompt.toLowerCase();
|
|
129
|
+
const matched = [];
|
|
130
|
+
for (const [name, skill] of Object.entries(SKILLS)) {
|
|
131
|
+
if (skill.keywords.some((kw) => lower.includes(kw))) {
|
|
132
|
+
matched.push(skill.context);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return matched;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
const session = await joinSession({
|
|
139
|
+
hooks: {
|
|
140
|
+
onUserPromptSubmitted: async (input) => {
|
|
141
|
+
const matched = matchSkills(input.prompt);
|
|
142
|
+
if (matched.length > 0) {
|
|
143
|
+
return {
|
|
144
|
+
additionalContext: `<agentops_skills>\n${matched.join("\n\n---\n\n")}\n</agentops_skills>`,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
},
|
|
149
|
+
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "agentops",
|
|
3
|
+
"metadata": {
|
|
4
|
+
"description": "AgentOps Toolkit plugin marketplace — evaluation skills for Microsoft Foundry agents",
|
|
5
|
+
"version": "1.0.0"
|
|
6
|
+
},
|
|
7
|
+
"owner": {
|
|
8
|
+
"name": "AgentOps Toolkit",
|
|
9
|
+
"email": "agentops@microsoft.com"
|
|
10
|
+
},
|
|
11
|
+
"plugins": [
|
|
12
|
+
{
|
|
13
|
+
"name": "agentops-accelerator",
|
|
14
|
+
"source": "../../plugins/agentops",
|
|
15
|
+
"description": "Copilot agent skills for running standardized evaluation workflows with AgentOps Toolkit and Microsoft Foundry agents.",
|
|
16
|
+
"version": "0.3.0",
|
|
17
|
+
"keywords": [
|
|
18
|
+
"agentops",
|
|
19
|
+
"evaluation",
|
|
20
|
+
"foundry",
|
|
21
|
+
"copilot",
|
|
22
|
+
"agent-skills",
|
|
23
|
+
"ai-evaluation"
|
|
24
|
+
],
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"repository": "https://github.com/Azure/agentops"
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|