project-create-topology

Automate the creation and migration of Netdata topology producers and schema-compliant Function payloads.

80.4k|6.6k|Updated Jun 17, 2013
One-click install
npx skills add https://github.com/netdata/netdata --skill project-create-topology
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: project-create-topology
Source: https://github.com/netdata/netdata/tree/main/.agents/skills/project-create-topology
Command: npx skills add https://github.com/netdata/netdata --skill project-create-topology

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the complexity of maintaining consistent, high-performance topology data across Netdata's backend, aggregator, and UI, ensuring that developers follow the strict netdata.topology.v1 schema contract.

Core Features & Use Cases

  • Schema Compliance: Validates topology producers against the production FUNCTION_TOPOLOGY_SCHEMA.json to prevent payload errors.
  • Workflow Guidance: Provides standardized procedures for defining actors, graph links, evidence rows, and telemetry overlays.
  • Use Case: When migrating a legacy network-connections producer to the v1 schema, use this Skill to ensure correct actor identity, link directionality, and modal composition.

Quick Start

Use the project-create-topology skill to validate the current topology producer implementation against the v1 schema and generate the required payload structure.

Frequently Asked Questions about project-create-topology

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate a legacy topology producer to v1?

Migrate by adopting the `netdata.topology.v1` schema, replacing legacy payload models with Go-based builders in `src/go/pkg/topology/v1`, and ensuring all evidence rows are typed and scalar-compliant.

What is the difference between detailed and aggregated topology modes?

Detailed mode preserves the finest evidence grain for troubleshooting, while aggregated mode groups evidence into compact relationships for map readability. Producers must declare support for these modes in `data.view.supported_modes`.

How should I handle high-cardinality evidence in topology payloads?

Encode high-cardinality evidence using compact columnar tables with dictionary references for strings and typed scalar columns, avoiding raw JSON columns to maintain performance and aggregation semantics.

Why are my topology links not showing arrows?

Arrows are derived from `orientation` and `direction_role`. Ensure `direction_role` is explicitly set to `flow`, `dependency`, or `ownership` to trigger automatic arrow rendering in the UI.

Can I use raw JSON for actor detail tables?

Raw JSON is permitted only for custom actor-owned detail cells that must preserve nested producer-owned values; it is not recommended for relationship evidence or high-cardinality data.