Oodle Discovery Agent Skills
Runs entirely in your environment · Read-only operations only · No data shared externally
Automated tech stack and observability discovery for AI coding agents. Install the skill, run a single prompt, and get a verifiable HTML report of your infrastructure, observability tools, scale, observability costs, and pain points.
What It Does
The discovery agent systematically examines your environment to produce a tailored report covering:
- Environments — Cloud accounts, Kubernetes clusters, regions, dev/staging/prod
- Tech Stack — Languages, frameworks, databases, message queues, caches
- Infrastructure — Compute scale and telemetry-relevant managed services (broad inventory only)
- Observability Stack — Monitoring, logging, tracing, alerting tools
- Scale — Telemetry volumes (metrics, log GB/day, trace ingestion) measured by deterministic collector scripts
- Costs — Observability spend only (vendor usage/billing APIs); never your overall cloud bill
- Pain Points — Observability-specific: alert fatigue, coverage gaps, tool sprawl, cost concerns
The agent presents a plan before proceeding, asks clarifying questions when it can't find information programmatically, and never performs destructive operations.
How figures stay accurate
Detection is agent-driven, but every volume and cost figure in the report is computed by a
deterministic collector script (collectors/<tool>/collect.py) — not by the AI agent:
- Collectors query the same authoritative APIs that back each vendor's own usage/billing pages
(e.g., the Datadog hourly usage and estimated-cost APIs).
- Every raw API response is saved (with credentials redacted) under
discovery-output/<tool>/evidence/,
and every figure records the endpoint, query, derivation method, and time window that produced it.
- Anything that couldn't be collected appears in the report's Coverage & Gaps section with the
reason (e.g.,
permission_denied) and a remediation — never silently omitted, never guessed.
- The report itself is rendered by
report/generate_report.py; the agent cannot edit figures.
Collector status: Datadog, AWS CloudWatch, GCP Cloud Operations, Elasticsearch, OpenSearch, Grafana Mimir, and Kubernetes inventory (nodes/vCPU/memory/services via kubectl) are available today. Prometheus/Thanos/VictoriaMetrics/Loki/Tempo
collectors are in progress;
until they ship, those tools are covered by user-reported numbers, clearly marked as unverified.
Install
Claude Code / Gemini CLI / Codex / Windsurf
npx skills add -g oodle-ai/discovery-agent-skills -y
Cursor
npx skills add -g oodle-ai/discovery-agent-skills --agent cursor -y
Manual
git clone https://github.com/oodle-ai/discovery-agent-skills.git
cp -r discovery-agent-skills/skills/* ~/.<agent>/skills/
Usage
After installing, tell your coding agent:
Run the oodle-discovery skill
Or simply:
Discover my tech stack and observability setup and generate a report
The agent will:
- Present a discovery plan for your approval
- Run read-only commands to discover your environment
- Run the matching collector script for each observability tool it finds (asking for read-only API credentials where needed)
- Ask clarifying questions for anything it can't measure automatically
- Generate a self-contained HTML report, walk you through any coverage gaps, and open it in your browser
Safety
- Read-only — Never modifies, creates, or deletes any resources
- Rate-limited — Throttles API calls to avoid overwhelming systems; collectors self-throttle with circuit breakers
- Credentials stay local — Passed to collectors via environment variables, redacted from all saved output
- Transparent — Shows you the plan before executing; every figure links to its raw API evidence
- Graceful — Skips checks it can't perform (missing tools, no credentials) and reports gaps explicitly
Output
The report is a single self-contained HTML file (no external dependencies) saved to ./discovery-report.html and opened in your default browser. It includes:
- Executive summary with measured scale and observability-spend figures
- Per-environment breakdown and tech-stack tags
- Coverage & Gaps — what could not be measured and how to fix it
- Collapsible per-tool deep dives
- Provenance appendix — every figure mapped to its source API, query, and evidence file
Raw evidence lives in ./discovery-output/ so any figure can be re-derived offline
(uv run collectors/<tool>/collect.py --report-only --output-dir ./discovery-output/<tool>).