mirror of
https://github.com/pbakaus/impeccable.git
synced 2026-09-15 23:56:29 +03:00
Restore prefix toggle for i- prefixed skill bundles
Re-adds the toggle in the install section that lets users download bundles with all user-invokable skills prefixed with i- (e.g. /i-audit) to avoid naming conflicts. Build now produces both unprefixed and prefixed variants for all providers and universal ZIP. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
b628e208e3
commit
ee7eeae301
+17
-6
@@ -130,8 +130,8 @@ async function buildStaticSite() {
|
||||
/**
|
||||
* Assemble universal directory from all provider outputs
|
||||
*/
|
||||
function assembleUniversal(distDir) {
|
||||
const universalDir = path.join(distDir, 'universal');
|
||||
function assembleUniversal(distDir, suffix = '') {
|
||||
const universalDir = path.join(distDir, `universal${suffix}`);
|
||||
|
||||
// Clean and recreate
|
||||
if (fs.existsSync(universalDir)) {
|
||||
@@ -147,7 +147,7 @@ function assembleUniversal(distDir) {
|
||||
];
|
||||
|
||||
for (const { provider, configDir } of providerMappings) {
|
||||
const src = path.join(distDir, provider, configDir);
|
||||
const src = path.join(distDir, `${provider}${suffix}`, configDir);
|
||||
const dest = path.join(universalDir, configDir);
|
||||
if (fs.existsSync(src)) {
|
||||
copyDirSync(src, dest);
|
||||
@@ -156,10 +156,11 @@ function assembleUniversal(distDir) {
|
||||
|
||||
// Add a visible README so macOS users don't see an empty folder
|
||||
// (all provider dirs are dotfiles, hidden by default in Finder)
|
||||
const prefixNote = suffix ? '\nSkills in this bundle are prefixed with i- (e.g. /i-audit) to avoid conflicts.\n' : '';
|
||||
fs.writeFileSync(path.join(universalDir, 'README.txt'),
|
||||
`Impeccable — Design fluency for AI harnesses
|
||||
https://impeccable.style
|
||||
|
||||
${prefixNote}
|
||||
This folder contains skills for all supported tools:
|
||||
|
||||
.cursor/ → Cursor
|
||||
@@ -172,7 +173,8 @@ To install, copy the relevant folder(s) into your project root.
|
||||
These are hidden folders (dotfiles) — press Cmd+Shift+. in Finder to see them.
|
||||
`);
|
||||
|
||||
console.log(`✓ Assembled universal directory (${providerMappings.length} providers)`);
|
||||
const label = suffix ? ' (prefixed)' : '';
|
||||
console.log(`✓ Assembled universal${label} directory (${providerMappings.length} providers)`);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -210,8 +212,17 @@ async function build() {
|
||||
transformCodex(skills, DIST_DIR, patterns);
|
||||
transformAgents(skills, DIST_DIR, patterns);
|
||||
|
||||
// Assemble universal directory
|
||||
// Transform for each provider (prefixed with i-)
|
||||
const prefixOptions = { prefix: 'i-', outputSuffix: '-prefixed' };
|
||||
transformCursor(skills, DIST_DIR, patterns, prefixOptions);
|
||||
transformClaudeCode(skills, DIST_DIR, patterns, prefixOptions);
|
||||
transformGemini(skills, DIST_DIR, patterns, prefixOptions);
|
||||
transformCodex(skills, DIST_DIR, patterns, prefixOptions);
|
||||
transformAgents(skills, DIST_DIR, patterns, prefixOptions);
|
||||
|
||||
// Assemble universal directory (unprefixed and prefixed)
|
||||
assembleUniversal(DIST_DIR);
|
||||
assembleUniversal(DIST_DIR, '-prefixed');
|
||||
|
||||
// Create ZIP bundles (individual + universal)
|
||||
await createAllZips(DIST_DIR);
|
||||
|
||||
Reference in New Issue
Block a user