Conversation
@grafana/create-plugin
@grafana/eslint-config
@grafana/eslint-plugin-plugins
@grafana/plugin-docs-cli
@grafana/plugin-docs-parser
@grafana/plugin-e2e
@grafana/plugin-meta-extractor
@grafana/plugin-types-bundler
@grafana/react-detect
@grafana/sign-plugin
@grafana/tsconfig
commit: |
sunker
force-pushed
the
eriksundell/panel-docs-codemod-with-ai
branch
2 times, most recently
from
September 9, 2026 11:39
0f6471e to
f059bc2
Compare
sunker
force-pushed
the
eriksundell/panel-docs-codemod-with-ai
branch
from
September 9, 2026 11:47
f059bc2 to
7a1b0e7
Compare
Contributor
Author
|
closing in favour of #2834 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Adds AI authoring assistance to the
panel-docscodemod: a conventions file the coding agent reads automatically, plus onebootstrap-plugin-docsskill for the initial fill.The shape changed substantially from the first draft of this PR (four slash-command skills behind a required
--agentLoopflag), after looking at what comparable tooling actually ships. Three findings drove it:templates/common/scaffolds rootAGENTS.md/CLAUDE.md/GEMINI.mdpointers into.config/AGENTS/, with topic files likee2e-testing.md. This PR follows that rather than inventing a parallel convention.Changes
write-plugin-docs,review-plugin-docsandvalidate-plugin-docsare gone. The first two were conventions, the third wrappednpm run docs:validate. All three fold into the authoring guide.bootstrap-plugin-docsstays: it is a genuine multi-step workflow..config/AGENTS/plugin-docs.md, next toe2e-testing.md, reached by a pointer line appended to.config/AGENTS/instructions.md.--agentLoopis replaced by--no-agents(defaults on).Two things worth reviewing closely
The guide cannot live inside
docsPath. It was atdocs/AGENTS.md. Anything insidedocsPathis validated as a publishable page, sonpm run docs:validatefailed on it with 8 errors. Moving it out fixes that, and theinstructions.mdpointer is also what makes it reachable from Claude Code, which never readsAGENTS.md.The skill is written whole to both
.claude/skills/and.agents/skills/, not shimmed. The one-line@importshim pattern used by the existingbuild-pluginandvalidate-pluginskills does not work in Claude Code: the docs confirm@importsare unsupported inSKILL.md, and aSKILL.mdwhose first line isn't---is treated as literal content, so such a skill registers no description and cannot be invoked. Duplication is deliberate:Contextwrites string content so symlinking isn't available, and these are committed team-shared files, so detecting the scaffolder's own agent would give their teammates the wrong answer..agents/covers Codex, Cursor, Copilot, Gemini CLI and Amp, so there is no separate.codex/copy.Which issue(s) this PR fixes:
N/A
Special notes for your reviewer:
Stacked on #2834, which must merge first.
Verified end to end against a scratch panel plugin: both skill copies are byte-identical and spec-valid (frontmatter present,
namematches directory), every@-import in the instructions chain resolves, no{{placeholders}}leak,--no-agentswrites the docs stubs and nothing else, andplugin-docs-cli validate --strictreports✓ Documentation is valid.Separately: the existing
build-pluginandvalidate-pluginskills intemplates/common/are broken in Claude Code for the same reason described above. Out of scope here since fixing them changes what every new plugin gets.