Add Google Gemini exports as a second generated platform
Proves the PLATFORMS registry extends cleanly: adds Gemini (Gem instructions) alongside ChatGPT, generated from the same SKILL.md source. - scripts/build-exports.mjs: register `gemini` -> exports/gemini/<bundle>/<skill>/ GEM_INSTRUCTIONS.md (body + a one-line role primer from the description). - Fix: the root exports/README.md now always lists every registered platform, so `--platform x` no longer drops the others from the overview. - exports/gemini/: 172 generated Gem instruction files + index. - README "Ready-to-use exports" and CHANGELOG now list Gemini. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016JWn5jRD5tcEFKrubjQ6Px
This commit is contained in:
@@ -38,6 +38,17 @@ const PLATFORMS = {
|
||||
// "Description" field separate, so we emit the body only (no frontmatter).
|
||||
render: ({ body }) => `${body.trim()}\n`,
|
||||
},
|
||||
gemini: {
|
||||
label: 'Google Gemini — Gem instructions',
|
||||
dir: 'exports/gemini',
|
||||
file: 'GEM_INSTRUCTIONS.md',
|
||||
groupByBundle: true,
|
||||
// A Gemini Gem takes a single "Instructions" field. The skill body maps to
|
||||
// it directly; we add a one-line role primer from the description so the Gem
|
||||
// has framing even before the user's first message.
|
||||
render: ({ description, body }) =>
|
||||
`You are a specialised assistant. ${description}\n\nFollow these instructions:\n\n${body.trim()}\n`,
|
||||
},
|
||||
// Example of how a future platform slots in (kept commented, not generated):
|
||||
// cursor: {
|
||||
// label: 'Cursor — project rule (.mdc)',
|
||||
@@ -187,7 +198,9 @@ const planned = new Map();
|
||||
for (const [key, platform] of active) {
|
||||
for (const [path, content] of planPlatform(key, platform, skills)) planned.set(path, content);
|
||||
}
|
||||
planned.set(join(exportsDir, 'README.md'), writeRootReadme(active, skills.length));
|
||||
// The root index always lists every registered platform, not just the filtered
|
||||
// subset, so `--platform x` never drops the others from the overview.
|
||||
planned.set(join(exportsDir, 'README.md'), writeRootReadme(Object.entries(PLATFORMS), skills.length));
|
||||
|
||||
if (checkMode) {
|
||||
let drift = 0;
|
||||
|
||||
Reference in New Issue
Block a user