mirror of
https://github.com/garrytan/gstack.git
synced 2026-05-02 11:45:20 +02:00
8b5256342b
Three new hosts added to the declarative config system. Each is a typed HostConfig object with paths, frontmatter rules, and path rewrites. All generate valid SKILL.md output with zero .claude/skills path leakage. - hosts/opencode.ts: OpenCode (opencode.ai), skills at ~/.config/opencode/ - hosts/slate.ts: Slate (Random Labs), skills at ~/.slate/ - hosts/cursor.ts: Cursor, skills at ~/.cursor/ - .gitignore: add .kiro/, .opencode/, .slate/, .cursor/, .openclaw/ Zero code changes needed — just config files + re-export in index.ts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
47 lines
1.1 KiB
TypeScript
47 lines
1.1 KiB
TypeScript
import type { HostConfig } from '../scripts/host-config';
|
|
|
|
const opencode: HostConfig = {
|
|
name: 'opencode',
|
|
displayName: 'OpenCode',
|
|
cliCommand: 'opencode',
|
|
cliAliases: [],
|
|
|
|
globalRoot: '.config/opencode/skills/gstack',
|
|
localSkillRoot: '.opencode/skills/gstack',
|
|
hostSubdir: '.opencode',
|
|
usesEnvVars: true,
|
|
|
|
frontmatter: {
|
|
mode: 'allowlist',
|
|
keepFields: ['name', 'description'],
|
|
descriptionLimit: null,
|
|
},
|
|
|
|
generation: {
|
|
generateMetadata: false,
|
|
skipSkills: ['codex'],
|
|
},
|
|
|
|
pathRewrites: [
|
|
{ from: '~/.claude/skills/gstack', to: '~/.config/opencode/skills/gstack' },
|
|
{ from: '.claude/skills/gstack', to: '.opencode/skills/gstack' },
|
|
{ from: '.claude/skills', to: '.opencode/skills' },
|
|
],
|
|
|
|
runtimeRoot: {
|
|
globalSymlinks: ['bin', 'browse/dist', 'browse/bin', 'gstack-upgrade', 'ETHOS.md'],
|
|
globalFiles: {
|
|
'review': ['checklist.md', 'TODOS-format.md'],
|
|
},
|
|
},
|
|
|
|
install: {
|
|
prefixable: false,
|
|
linkingStrategy: 'symlink-generated',
|
|
},
|
|
|
|
learningsMode: 'basic',
|
|
};
|
|
|
|
export default opencode;
|