Files
gstack/hosts/claude.ts
Garry Tan d82d2c5650 refactor: preamble, co-author trailer, and resolver suppression use host configs
- preamble.ts: hostConfigDir derived from config.globalRoot instead of
  hardcoded Record
- utility.ts: generateCoAuthorTrailer reads from config.coAuthorTrailer
  instead of host switch statement
- gen-skill-docs.ts: suppressedResolvers from config skip resolver
  execution at placeholder replacement time (belt+suspenders with
  existing ctx.host checks in individual resolvers)

Golden-file comparison: all 3 hosts produce IDENTICAL output to baselines.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-03 16:31:29 -07:00

46 lines
1.0 KiB
TypeScript

import type { HostConfig } from '../scripts/host-config';
const claude: HostConfig = {
name: 'claude',
displayName: 'Claude Code',
cliCommand: 'claude',
cliAliases: [],
globalRoot: '.claude/skills/gstack',
localSkillRoot: '.claude/skills/gstack',
hostSubdir: '.claude',
usesEnvVars: false,
frontmatter: {
mode: 'denylist',
stripFields: ['sensitive', 'voice-triggers'],
descriptionLimit: null,
},
generation: {
generateMetadata: false,
skipSkills: [],
},
pathRewrites: [], // Claude is the primary host — no rewrites needed
toolRewrites: {},
suppressedResolvers: [],
runtimeRoot: {
globalSymlinks: ['bin', 'browse/dist', 'browse/bin', 'gstack-upgrade', 'ETHOS.md'],
globalFiles: {
'review': ['checklist.md', 'TODOS-format.md'],
},
},
install: {
prefixable: true,
linkingStrategy: 'real-dir-symlink',
},
coAuthorTrailer: 'Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>',
learningsMode: 'full',
};
export default claude;