Skip to content
Development
Skill

/scaffold-project

Scaffolds a new Go project for managing Grafana resources as code via gcx dev scaffold. Use when the user wants to create a new Grafana resources-as-code project, start a new dashboards-as-code repo, scaffold a gcx project, or asks "how do I get started with gcx". Triggers on

From plugin
gcx
53729 skills1 agent
Install
$ npx -y skills add grafana/gcx --skill scaffold-project --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/scaffold-project

Context preview

The summary Claude sees to decide when to auto-load this skill.

Scaffolds a new Go project for managing Grafana resources as code via gcx dev scaffold. Use when the user wants to create a new Grafana resources-as-code project, start a new dashboards-as-code repo, scaffold a gcx project, or asks "how do I get started with gcx". Triggers on

SKILL.md

scaffold-project.SKILL.md
name: scaffold-project
description: >
  Scaffolds a new Go project for managing Grafana resources as code via
  gcx dev scaffold. Use when the user wants to create a new Grafana
  resources-as-code project, start a new dashboards-as-code repo, scaffold
  a gcx project, or asks "how do I get started with gcx". Triggers on
  phrases like "new project", "scaffold", "bootstrap", "create project",
  "get started".

Scaffold a gcx Project

Scaffold a new Go project for managing Grafana resources as code using `gcx dev scaffold`.

Prerequisites

Verify gcx is installed:

gcx --version

If missing, see the `setup-gcx` skill.

Scaffolding

Interactive Mode (recommended for first-time users)

gcx dev scaffold

Prompts for:

  • **Project name** - becomes the directory name (kebab-cased)
  • **Go module path** - e.g. `github.com/myorg/my-dashboards`

Non-Interactive Mode

gcx dev scaffold --project my-dashboards --go-module-path github.com/myorg/my-dashboards

What Gets Generated

my-dashboards/
├── .github/workflows/deploy.yaml   # CI/CD workflow for gcx push
├── .gitignore
├── go.mod
├── main.go                         # Entrypoint — registers all resources
├── internal/
│   └── dashboards/
│       ├── all.go                  # Registry function returning all manifests
│       └── sample.go              # Example dashboard using foundation-sdk builders
└── README.md

Next Steps After Scaffolding

1. `cd my-dashboards && go mod tidy` 2. Configure gcx: `gcx config set stacks.default.grafana.server <URL>`, `gcx config set stacks.default.grafana.token <TOKEN>`, and `gcx config set contexts.default.stack default` 3. Edit `internal/dashboards/sample.go` or generate new stubs with `gcx dev generate` 4. Push to Grafana: `gcx resources push`

Common Issues

| Issue | Fix | |-------|-----| | `go mod tidy` fails | Ensure your Go toolchain meets the version required by the generated `go.mod` | | Project name has spaces | Names are auto-kebab-cased; spaces become hyphens | | Want to add alert rules | Create `internal/alerts/` and use `gcx dev generate alerts/my-rule.go` |

Read more
Ships withgcx

Grafana — in your terminal and your agentic coding environment. gcx works with Grafana Cloud, Enterprise, and OSS (Grafana 12+). See the compatibility matrix for details. Query production. Investigate alerts. Let the Assistant root-cause issues.

Get the whole plugin

Other skills on gcx.