=== NEW === - studio/ — MCPEngine Studio scaffold (Next.js monorepo, build plan) - docs/FACTORY-V2.md — Factory v2 architecture doc - docs/CALENDLY_MCP_BUILD_SUMMARY.md — Calendly MCP build report === UPDATED SERVERS === - fieldedge: Added jobs-tools, UI build script, main entry update - lightspeed: Updated main + server entry points - squarespace: Added collection-browser + page-manager apps - toast: Added main + server entry points === INFRA === - infra/command-center/state.json — Updated pipeline state - infra/command-center/FACTORY-V2.md — Factory v2 operator playbook
49 lines
1.5 KiB
TypeScript
49 lines
1.5 KiB
TypeScript
// Skill Registry — maps logical skill names to skill data files
|
|
|
|
export interface SkillMapping {
|
|
name: string;
|
|
files: string[]; // filenames in skills/data/
|
|
description: string;
|
|
}
|
|
|
|
export const SKILL_REGISTRY: Record<string, SkillMapping> = {
|
|
analyzer: {
|
|
name: 'analyzer',
|
|
files: ['mcp-api-analyzer.md'],
|
|
description: 'API spec analysis — extract endpoints, auth, rate limits, and generate tool definitions',
|
|
},
|
|
builder: {
|
|
name: 'builder',
|
|
files: ['mcp-server-builder.md', 'mcp-server-development.md'],
|
|
description: 'MCP server code generation from analyzed tool definitions',
|
|
},
|
|
designer: {
|
|
name: 'designer',
|
|
files: ['mcp-app-designer.md', 'mcp-apps-official.md', 'mcp-apps-merged.md'],
|
|
description: 'MCP app UI design — dashboard, data-grid, form, and other patterns',
|
|
},
|
|
tester: {
|
|
name: 'tester',
|
|
files: ['mcp-qa-tester.md'],
|
|
description: 'Multi-layer QA — protocol, static, visual, functional, performance, security',
|
|
},
|
|
deployer: {
|
|
name: 'deployer',
|
|
files: ['mcp-deployment.md'],
|
|
description: 'Deployment orchestration — MCPEngine, npm, Docker, Cloudflare',
|
|
},
|
|
'apps-integration': {
|
|
name: 'apps-integration',
|
|
files: ['mcp-apps-integration.md'],
|
|
description: 'App-to-tool binding and integration wiring',
|
|
},
|
|
};
|
|
|
|
export type SkillName = keyof typeof SKILL_REGISTRY;
|
|
|
|
export function getSkillFiles(name: SkillName): string[] {
|
|
const mapping = SKILL_REGISTRY[name];
|
|
if (!mapping) throw new Error(`Unknown skill: ${name}`);
|
|
return mapping.files;
|
|
}
|