AGENTS.md
This is a Nimbalyst extension project. Read CLAUDE.md before making changes.
What This Project Is
- Extension ID:
com.developer.my-nimbalyst-extension - Template:
starter - Build output is declared by
manifest.json - Source lives in
src/ dist/is generated output and should not be edited by hand
Documentation
Use these docs in this order:
- Bundled SDK docs in packaged Nimbalyst:
- Runtime path:
path.join(process.resourcesPath, 'extension-sdk-docs') - macOS example:
/Applications/Nimbalyst.app/Contents/Resources/extension-sdk-docs - Windows example:
<Nimbalyst install dir>\\resources\\extension-sdk-docs
- Runtime path:
- Monorepo source docs when available:
packages/extension-sdk-docs/README.mdpackages/extension-sdk-docs/getting-started.mdpackages/extension-sdk-docs/custom-editors.mdpackages/extension-sdk-docs/ai-tools.mdpackages/extension-sdk-docs/manifest-reference.mdpackages/extension-sdk-docs/api-reference.mdpackages/extension-sdk-docs/examples/
- Hosted docs:
https://docs.nimbalyst.com/extensions
Required Workflow
- Run
npm installonce before the first build - Build with
mcp__nimbalyst-extension-dev__extension_build - Install with
mcp__nimbalyst-extension-dev__extension_install - Iterate with
mcp__nimbalyst-extension-dev__extension_reload - Check status with
mcp__nimbalyst-extension-dev__extension_get_status - Use main and renderer log MCP tools for debugging
- Do not restart Nimbalyst unless the user explicitly asks
- When possible, create a representative sample file and use it to verify the extension after install or reload
- After a successful install, tell the user the extension is installed and available across all of their Nimbalyst projects
Validation Checklist
manifest.json > mainmatches the file Vite emits indist/- Every
customEditors[].componententry matches a key in the exportedcomponentsobject - Every tool name listed in
contributions.aiToolshas a matching exported handler - Custom editors use
host.loadContent(),host.onSaveRequested(),host.onFileChanged(), andhost.setDirty() - Styling uses Nimbalyst CSS variables such as
--nim-bg,--nim-text, and--nim-border
When Unsure
- Follow CLAUDE.md as the authoritative project guide
- Prefer SDK docs and local examples over inventing patterns