@forgespace/branding-mcp 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +41 -5
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/branding-core/ai/claude-interpreter.d.ts.map +1 -1
- package/dist/lib/branding-core/ai/claude-interpreter.js +8 -19
- package/dist/lib/branding-core/ai/claude-interpreter.js.map +1 -1
- package/dist/lib/branding-core/exporters/style-dictionary.d.ts +19 -0
- package/dist/lib/branding-core/exporters/style-dictionary.d.ts.map +1 -0
- package/dist/lib/branding-core/exporters/style-dictionary.js +85 -0
- package/dist/lib/branding-core/exporters/style-dictionary.js.map +1 -0
- package/dist/lib/branding-core/generators/brand-voice.d.ts +3 -0
- package/dist/lib/branding-core/generators/brand-voice.d.ts.map +1 -0
- package/dist/lib/branding-core/generators/brand-voice.js +338 -0
- package/dist/lib/branding-core/generators/brand-voice.js.map +1 -0
- package/dist/lib/branding-core/index.d.ts +2 -0
- package/dist/lib/branding-core/index.d.ts.map +1 -1
- package/dist/lib/branding-core/index.js +2 -0
- package/dist/lib/branding-core/index.js.map +1 -1
- package/dist/lib/branding-core/validators/token-schema.d.ts +1 -1
- package/dist/lib/branding-core/validators/token-schema.d.ts.map +1 -1
- package/dist/lib/branding-core/validators/token-schema.js +9 -1
- package/dist/lib/branding-core/validators/token-schema.js.map +1 -1
- package/dist/lib/config.d.ts +3 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +5 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/http-server.d.ts +3 -0
- package/dist/lib/http-server.d.ts.map +1 -0
- package/dist/lib/http-server.js +93 -0
- package/dist/lib/http-server.js.map +1 -0
- package/dist/lib/types.d.ts +27 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/tools/export-design-tokens.d.ts.map +1 -1
- package/dist/tools/export-design-tokens.js +2 -1
- package/dist/tools/export-design-tokens.js.map +1 -1
- package/dist/tools/generate-brand-voice.d.ts +3 -0
- package/dist/tools/generate-brand-voice.d.ts.map +1 -0
- package/dist/tools/generate-brand-voice.js +51 -0
- package/dist/tools/generate-brand-voice.js.map +1 -0
- package/dist/tools/generate-design-system.d.ts.map +1 -1
- package/dist/tools/generate-design-system.js +2 -1
- package/dist/tools/generate-design-system.js.map +1 -1
- package/package.json +21 -3
- package/server.json +41 -0
- package/.env.example +0 -3
- package/.github/CODEOWNERS +0 -1
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -22
- package/.github/PULL_REQUEST_TEMPLATE.md +0 -22
- package/.github/dependabot.yml +0 -17
- package/.github/workflows/ci.yml +0 -55
- package/.github/workflows/codeql.yml +0 -47
- package/.github/workflows/release-automation.yml +0 -56
- package/.github/workflows/secret-scan.yml +0 -13
- package/.github/workflows/security-scan.yml +0 -37
- package/.github/workflows/semgrep.yml +0 -12
- package/.github/workflows/trivy.yml +0 -17
- package/.gitleaks.toml +0 -14
- package/.husky/commit-msg +0 -1
- package/.nvmrc +0 -1
- package/.prettierrc.json +0 -10
- package/CHANGELOG.md +0 -114
- package/CONTRIBUTING.md +0 -203
- package/catalog-info.yaml +0 -16
- package/commitlint.config.cjs +0 -24
- package/data/README.md +0 -13
- package/docs/API.md +0 -110
- package/docs/DATA_SOURCES.md +0 -69
- package/docs/INTEGRATION.md +0 -58
- package/eslint.config.js +0 -52
- package/jest.config.js +0 -40
- package/knip.json +0 -10
- package/src/__tests__/integration/brand-generation.test.ts +0 -84
- package/src/__tests__/integration/mcp-server.test.ts +0 -18
- package/src/__tests__/unit/ai-interpreter.test.ts +0 -172
- package/src/__tests__/unit/border-system.test.ts +0 -77
- package/src/__tests__/unit/color-palette.test.ts +0 -161
- package/src/__tests__/unit/contrast-checker.test.ts +0 -124
- package/src/__tests__/unit/design-system-tool.test.ts +0 -176
- package/src/__tests__/unit/design-tokens.test.ts +0 -184
- package/src/__tests__/unit/favicon-generator.test.ts +0 -80
- package/src/__tests__/unit/gradient-system.test.ts +0 -122
- package/src/__tests__/unit/logo-generator.test.ts +0 -146
- package/src/__tests__/unit/motion-system.test.ts +0 -91
- package/src/__tests__/unit/og-image-generator.test.ts +0 -115
- package/src/__tests__/unit/shadow-system.test.ts +0 -63
- package/src/__tests__/unit/spacing-scale.test.ts +0 -60
- package/src/__tests__/unit/typography-system.test.ts +0 -71
- package/src/index.ts +0 -76
- package/src/lib/branding-core/ai/brand-interpreter.ts +0 -30
- package/src/lib/branding-core/ai/claude-interpreter.ts +0 -76
- package/src/lib/branding-core/ai/intent-applier.ts +0 -59
- package/src/lib/branding-core/ai/keyword-interpreter.ts +0 -95
- package/src/lib/branding-core/ai/prompts.ts +0 -93
- package/src/lib/branding-core/ai/types.ts +0 -36
- package/src/lib/branding-core/documents/html-generator.ts +0 -32
- package/src/lib/branding-core/documents/pdf-generator.ts +0 -21
- package/src/lib/branding-core/exporters/css-variables.ts +0 -71
- package/src/lib/branding-core/exporters/design-tokens.ts +0 -86
- package/src/lib/branding-core/exporters/figma-tokens.ts +0 -87
- package/src/lib/branding-core/exporters/react-theme.ts +0 -69
- package/src/lib/branding-core/exporters/sass-variables.ts +0 -74
- package/src/lib/branding-core/exporters/tailwind-preset.ts +0 -67
- package/src/lib/branding-core/generators/border-system.ts +0 -41
- package/src/lib/branding-core/generators/color-palette.ts +0 -147
- package/src/lib/branding-core/generators/favicon-generator.ts +0 -33
- package/src/lib/branding-core/generators/gradient-system.ts +0 -120
- package/src/lib/branding-core/generators/logo-generator.ts +0 -152
- package/src/lib/branding-core/generators/motion-system.ts +0 -98
- package/src/lib/branding-core/generators/og-image-generator.ts +0 -97
- package/src/lib/branding-core/generators/shadow-system.ts +0 -66
- package/src/lib/branding-core/generators/spacing-scale.ts +0 -29
- package/src/lib/branding-core/generators/typography-system.ts +0 -128
- package/src/lib/branding-core/index.ts +0 -28
- package/src/lib/branding-core/validators/brand-consistency.ts +0 -79
- package/src/lib/branding-core/validators/contrast-checker.ts +0 -37
- package/src/lib/branding-core/validators/token-schema.ts +0 -50
- package/src/lib/config.ts +0 -13
- package/src/lib/logger.ts +0 -12
- package/src/lib/types.ts +0 -236
- package/src/resources/brand-knowledge.ts +0 -60
- package/src/resources/brand-templates.ts +0 -385
- package/src/tools/create-brand-guidelines.ts +0 -94
- package/src/tools/export-design-tokens.ts +0 -52
- package/src/tools/generate-brand-assets.ts +0 -48
- package/src/tools/generate-brand-identity.ts +0 -115
- package/src/tools/generate-color-palette.ts +0 -43
- package/src/tools/generate-design-system.ts +0 -163
- package/src/tools/generate-typography-system.ts +0 -42
- package/src/tools/refine-brand-element.ts +0 -65
- package/src/tools/validate-brand-consistency.ts +0 -32
- package/tsconfig.json +0 -21
package/dist/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,eAAe,GACf,WAAW,GACX,SAAS,GACT,qBAAqB,GACrB,UAAU,GACV,eAAe,CAAC;AAEpB,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;AAE5F,MAAM,MAAM,cAAc,GACtB,cAAc,GACd,cAAc,GACd,aAAa,GACb,aAAa,GACb,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,GACf,cAAc,CAAC;AAEnB,MAAM,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,eAAe,GACf,WAAW,GACX,SAAS,GACT,qBAAqB,GACrB,UAAU,GACV,eAAe,CAAC;AAEpB,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;AAE5F,MAAM,MAAM,cAAc,GACtB,cAAc,GACd,cAAc,GACd,aAAa,GACb,aAAa,GACb,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,GACf,cAAc,CAAC;AAEnB,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,KAAK,GACL,UAAU,GACV,OAAO,GACP,OAAO,GACP,MAAM,GACN,kBAAkB,CAAC;AAEvB,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,MAAM,GACN,SAAS,GACT,SAAS,GACT,WAAW,GACX,MAAM,GACN,SAAS,GACT,OAAO,CAAC;AAEZ,MAAM,WAAW,QAAQ;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,WAAW,CAAC;IACvB,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,QAAQ,EAAE;QACR,OAAO,EAAE,WAAW,CAAC;QACrB,OAAO,EAAE,WAAW,CAAC;QACrB,KAAK,EAAE,WAAW,CAAC;QACnB,IAAI,EAAE,WAAW,CAAC;KACnB,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;AAExE,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AACzD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAC;AAEpF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC;AAE9C,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,UAAU,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;CAC9C;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACxC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACzD;AAED,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACpC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACzE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACvF,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,YAAY,CAAC;QACvB,KAAK,CAAC,EAAE,UAAU,CAAC;KACpB,CAAC;IACF,eAAe,CAAC,EAAE;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,eAAe,CAAC,EAAE,YAAY,CAAC;QAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,UAAU,CAAC,EAAE,cAAc,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,MAAM,cAAc,GACtB,cAAc,GACd,UAAU,GACV,SAAS,GACT,eAAe,GACf,YAAY,GACZ,eAAe,GACf,YAAY,GACZ,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAC1B,KAAK,GACL,KAAK,GACL,YAAY,GACZ,SAAS,GACT,UAAU,GACV,WAAW,GACX,UAAU,GACV,SAAS,CAAC;AAEd,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE;QACV,SAAS,EAAE,MAAM,EAAE,CAAC;QACpB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,aAAa,EAAE;QACb,aAAa,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;QAC3C,SAAS,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;KAC5C,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,UAAU,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,SAAS,EAAE;QACT,EAAE,EAAE,MAAM,EAAE,CAAC;QACb,IAAI,EAAE,MAAM,EAAE,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,oBAAoB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-design-tokens.d.ts","sourceRoot":"","sources":["../../src/tools/export-design-tokens.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"export-design-tokens.d.ts","sourceRoot":"","sources":["../../src/tools/export-design-tokens.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAwBzE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA4BlE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { exportDesignTokens, exportCssVariables, exportTailwindPreset, exportFigmaTokens, exportReactTheme, exportSassVariables, } from '../lib/branding-core/index.js';
|
|
2
|
+
import { exportDesignTokens, exportCssVariables, exportTailwindPreset, exportFigmaTokens, exportReactTheme, exportSassVariables, exportStyleDictionary, } from '../lib/branding-core/index.js';
|
|
3
3
|
import { exportFormatSchema } from '../lib/branding-core/validators/token-schema.js';
|
|
4
4
|
import { logger } from '../lib/logger.js';
|
|
5
5
|
const EXPORTERS = {
|
|
@@ -9,6 +9,7 @@ const EXPORTERS = {
|
|
|
9
9
|
figma: exportFigmaTokens,
|
|
10
10
|
react: exportReactTheme,
|
|
11
11
|
sass: exportSassVariables,
|
|
12
|
+
'style-dictionary': exportStyleDictionary,
|
|
12
13
|
};
|
|
13
14
|
export function registerExportDesignTokens(server) {
|
|
14
15
|
server.tool('export_design_tokens', 'Export a brand identity as design tokens in various formats: W3C JSON, CSS custom properties, Tailwind preset, Figma tokens, React theme, or Sass variables.', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-design-tokens.js","sourceRoot":"","sources":["../../src/tools/export-design-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"export-design-tokens.js","sourceRoot":"","sources":["../../src/tools/export-design-tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AAErF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,SAAS,GAAoE;IACjF,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,kBAAkB;IACvB,QAAQ,EAAE,oBAAoB;IAC9B,KAAK,EAAE,iBAAiB;IACxB,KAAK,EAAE,gBAAgB;IACvB,IAAI,EAAE,mBAAmB;IACzB,kBAAkB,EAAE,qBAAqB;CAC1C,CAAC;AAEF,MAAM,UAAU,0BAA0B,CAAC,MAAiB;IAC1D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,8JAA8J,EAC9J;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;QAC3F,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,eAAe,CAAC;KACrD,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1B,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC;YACnD,MAAM,SAAS,GAAkB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAErF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;aAC1C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,OAAO,EAAE,EAAE,CAAC;gBACvE,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-brand-voice.d.ts","sourceRoot":"","sources":["../../src/tools/generate-brand-voice.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2BzE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqClE"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { generateBrandVoice } from '../lib/branding-core/generators/brand-voice.js';
|
|
3
|
+
import { logger } from '../lib/logger.js';
|
|
4
|
+
const brandVoiceToneSchema = z.enum([
|
|
5
|
+
'professional',
|
|
6
|
+
'friendly',
|
|
7
|
+
'playful',
|
|
8
|
+
'authoritative',
|
|
9
|
+
'empathetic',
|
|
10
|
+
'inspirational',
|
|
11
|
+
'minimalist',
|
|
12
|
+
'bold',
|
|
13
|
+
]);
|
|
14
|
+
const brandVoiceAudienceSchema = z.enum([
|
|
15
|
+
'b2b',
|
|
16
|
+
'b2c',
|
|
17
|
+
'enterprise',
|
|
18
|
+
'startup',
|
|
19
|
+
'consumer',
|
|
20
|
+
'technical',
|
|
21
|
+
'creative',
|
|
22
|
+
'general',
|
|
23
|
+
]);
|
|
24
|
+
export function registerGenerateBrandVoice(server) {
|
|
25
|
+
server.tool('generate_brand_voice', "Generate brand voice and tone guidelines including vocabulary, copy samples, tagline suggestions, and do/don't rules based on a brand identity.", {
|
|
26
|
+
brand: z.string().describe('Full BrandIdentity JSON (from generate_brand_identity output)'),
|
|
27
|
+
tone: brandVoiceToneSchema
|
|
28
|
+
.optional()
|
|
29
|
+
.describe('Override the inferred tone. If omitted, tone is derived from brand style.'),
|
|
30
|
+
audience: brandVoiceAudienceSchema
|
|
31
|
+
.optional()
|
|
32
|
+
.describe('Override the inferred target audience. If omitted, audience is derived from industry.'),
|
|
33
|
+
}, async ({ brand, tone, audience }) => {
|
|
34
|
+
try {
|
|
35
|
+
logger.info({ tone, audience }, 'Generating brand voice guidelines');
|
|
36
|
+
const brandData = JSON.parse(brand);
|
|
37
|
+
const guidelines = generateBrandVoice(brandData, tone, audience);
|
|
38
|
+
return {
|
|
39
|
+
content: [{ type: 'text', text: JSON.stringify(guidelines, null, 2) }],
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
44
|
+
return {
|
|
45
|
+
content: [{ type: 'text', text: `Error generating brand voice: ${message}` }],
|
|
46
|
+
isError: true,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=generate-brand-voice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-brand-voice.js","sourceRoot":"","sources":["../../src/tools/generate-brand-voice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAEpF,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,cAAc;IACd,UAAU;IACV,SAAS;IACT,eAAe;IACf,YAAY;IACZ,eAAe;IACf,YAAY;IACZ,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC;IACtC,KAAK;IACL,KAAK;IACL,YAAY;IACZ,SAAS;IACT,UAAU;IACV,WAAW;IACX,UAAU;IACV,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,UAAU,0BAA0B,CAAC,MAAiB;IAC1D,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,iJAAiJ,EACjJ;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;QAC3F,IAAI,EAAE,oBAAoB;aACvB,QAAQ,EAAE;aACV,QAAQ,CAAC,2EAA2E,CAAC;QACxF,QAAQ,EAAE,wBAAwB;aAC/B,QAAQ,EAAE;aACV,QAAQ,CACP,uFAAuF,CACxF;KACJ,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,mCAAmC,CAAC,CAAC;YACrE,MAAM,SAAS,GAAkB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,kBAAkB,CACnC,SAAS,EACT,IAAkC,EAClC,QAA0C,CAC3C,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aACvE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,OAAO,EAAE,EAAE,CAAC;gBAC7E,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-design-system.d.ts","sourceRoot":"","sources":["../../src/tools/generate-design-system.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-design-system.d.ts","sourceRoot":"","sources":["../../src/tools/generate-design-system.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2GzE,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuDpE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { generateColorPalette, generateTypographySystem, generateSpacingScale, generateShadowSystem, generateBorderSystem, generateMotionSystem, generateGradientSystem, generateSvgLogo, defaultLogoConfig, exportDesignTokens, exportCssVariables, exportTailwindPreset, exportFigmaTokens, exportReactTheme, exportSassVariables, } from '../lib/branding-core/index.js';
|
|
3
|
+
import { generateColorPalette, generateTypographySystem, generateSpacingScale, generateShadowSystem, generateBorderSystem, generateMotionSystem, generateGradientSystem, generateSvgLogo, defaultLogoConfig, exportDesignTokens, exportCssVariables, exportTailwindPreset, exportFigmaTokens, exportReactTheme, exportSassVariables, exportStyleDictionary, } from '../lib/branding-core/index.js';
|
|
4
4
|
import { brandStyleSchema, colorHarmonySchema, colorThemeSchema, exportFormatSchema, fontCategorySchema, hexColorSchema, typeScaleRatioSchema, } from '../lib/branding-core/validators/token-schema.js';
|
|
5
5
|
import { logger } from '../lib/logger.js';
|
|
6
6
|
const STYLE_DEFAULTS = {
|
|
@@ -20,6 +20,7 @@ const EXPORTERS = {
|
|
|
20
20
|
figma: exportFigmaTokens,
|
|
21
21
|
react: exportReactTheme,
|
|
22
22
|
sass: exportSassVariables,
|
|
23
|
+
'style-dictionary': exportStyleDictionary,
|
|
23
24
|
};
|
|
24
25
|
function buildIdentity(params) {
|
|
25
26
|
const defaults = STYLE_DEFAULTS[params.style];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-design-system.js","sourceRoot":"","sources":["../../src/tools/generate-design-system.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"generate-design-system.js","sourceRoot":"","sources":["../../src/tools/generate-design-system.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forgespace/branding-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
|
+
"mcpName": "io.github.forge-space/branding-mcp",
|
|
4
5
|
"description": "MCP server for AI-powered brand identity generation — color palettes, typography systems, design tokens, and brand guidelines with multi-format export",
|
|
5
6
|
"type": "module",
|
|
6
7
|
"main": "dist/index.js",
|
|
@@ -26,18 +27,34 @@
|
|
|
26
27
|
"typecheck": "tsc --noEmit",
|
|
27
28
|
"check:cycles": "madge --circular --extensions ts src/",
|
|
28
29
|
"knip": "knip",
|
|
30
|
+
"registry:check": "node scripts/registry-check.mjs",
|
|
29
31
|
"pre-commit": "npm run lint && npm run format && npm run test",
|
|
30
|
-
"prepare": "husky"
|
|
32
|
+
"prepare": "husky",
|
|
33
|
+
"prepublishOnly": "npm run build",
|
|
34
|
+
"prepack": "npm run build"
|
|
35
|
+
},
|
|
36
|
+
"files": [
|
|
37
|
+
"dist",
|
|
38
|
+
"README.md",
|
|
39
|
+
"LICENSE",
|
|
40
|
+
"server.json"
|
|
41
|
+
],
|
|
42
|
+
"publishConfig": {
|
|
43
|
+
"access": "public",
|
|
44
|
+
"registry": "https://registry.npmjs.org/"
|
|
31
45
|
},
|
|
32
46
|
"keywords": [
|
|
33
47
|
"mcp",
|
|
48
|
+
"mcp-server",
|
|
34
49
|
"branding",
|
|
35
50
|
"design-tokens",
|
|
36
51
|
"color-palette",
|
|
37
52
|
"typography",
|
|
38
53
|
"brand-identity",
|
|
54
|
+
"agent-tools",
|
|
39
55
|
"ai",
|
|
40
|
-
"forge-space"
|
|
56
|
+
"forge-space",
|
|
57
|
+
"internal-developer-platform"
|
|
41
58
|
],
|
|
42
59
|
"author": "Forge Space",
|
|
43
60
|
"license": "MIT",
|
|
@@ -50,6 +67,7 @@
|
|
|
50
67
|
},
|
|
51
68
|
"homepage": "https://github.com/Forge-Space/branding-mcp#readme",
|
|
52
69
|
"dependencies": {
|
|
70
|
+
"@anthropic-ai/sdk": "^0.78.0",
|
|
53
71
|
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
54
72
|
"pino": "^10.3.1",
|
|
55
73
|
"zod": "^3.24.0"
|
package/server.json
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
|
|
3
|
+
"name": "io.github.forge-space/branding-mcp",
|
|
4
|
+
"description": "AI-powered brand identity generation via MCP with design tokens, typography, logo assets, and brand guidelines export.",
|
|
5
|
+
"version": "0.8.0",
|
|
6
|
+
"registryType": "npm",
|
|
7
|
+
"repository": {
|
|
8
|
+
"url": "https://github.com/Forge-Space/branding-mcp",
|
|
9
|
+
"source": "github"
|
|
10
|
+
},
|
|
11
|
+
"packages": [
|
|
12
|
+
{
|
|
13
|
+
"registryType": "npm",
|
|
14
|
+
"identifier": "@forgespace/branding-mcp",
|
|
15
|
+
"version": "0.8.0",
|
|
16
|
+
"transport": {
|
|
17
|
+
"type": "stdio"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"environmentVariables": [
|
|
22
|
+
{
|
|
23
|
+
"name": "ANTHROPIC_API_KEY",
|
|
24
|
+
"description": "Optional. Enables natural-language brand refinement with Anthropic when the AI strategy is selected.",
|
|
25
|
+
"isRequired": false,
|
|
26
|
+
"isSecret": true
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "MCP_TRANSPORT",
|
|
30
|
+
"description": "Optional. Transport mode: 'stdio' (default) or 'http' for HTTP/SSE transport.",
|
|
31
|
+
"isRequired": false,
|
|
32
|
+
"isSecret": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "PORT",
|
|
36
|
+
"description": "Optional. HTTP port when MCP_TRANSPORT=http. Defaults to 3000.",
|
|
37
|
+
"isRequired": false,
|
|
38
|
+
"isSecret": false
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
}
|
package/.env.example
DELETED
package/.github/CODEOWNERS
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
* @LucasSantana-Dev
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
blank_issues_enabled: false
|
|
2
|
-
contact_links:
|
|
3
|
-
- name: Forge Space Discussions
|
|
4
|
-
url: https://github.com/orgs/Forge-Space/discussions
|
|
5
|
-
about: Ask questions and share ideas
|
|
6
|
-
- name: Security Policy
|
|
7
|
-
url: https://github.com/Forge-Space/.github/security/policy
|
|
8
|
-
about: Report security vulnerabilities
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Feature Request
|
|
3
|
-
about: Suggest a new feature or improvement
|
|
4
|
-
title: '[FEATURE] '
|
|
5
|
-
labels: ['enhancement', 'needs-triage']
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Problem
|
|
9
|
-
|
|
10
|
-
<!-- What problem does this solve? -->
|
|
11
|
-
|
|
12
|
-
## Proposed Solution
|
|
13
|
-
|
|
14
|
-
<!-- How should it work? -->
|
|
15
|
-
|
|
16
|
-
## Alternatives Considered
|
|
17
|
-
|
|
18
|
-
<!-- Other approaches you thought of -->
|
|
19
|
-
|
|
20
|
-
## Additional Context
|
|
21
|
-
|
|
22
|
-
<!-- Screenshots, examples, references -->
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
## Summary
|
|
2
|
-
|
|
3
|
-
<!-- Brief description of what this PR does -->
|
|
4
|
-
|
|
5
|
-
## Changes
|
|
6
|
-
|
|
7
|
-
<!-- Bullet list of changes -->
|
|
8
|
-
|
|
9
|
-
## Type
|
|
10
|
-
|
|
11
|
-
- [ ] feat: New feature
|
|
12
|
-
- [ ] fix: Bug fix
|
|
13
|
-
- [ ] refactor: Code refactoring
|
|
14
|
-
- [ ] chore: Maintenance
|
|
15
|
-
- [ ] docs: Documentation
|
|
16
|
-
|
|
17
|
-
## Checklist
|
|
18
|
-
|
|
19
|
-
- [ ] `npm run validate` passes
|
|
20
|
-
- [ ] Tests cover new functionality
|
|
21
|
-
- [ ] CHANGELOG.md updated
|
|
22
|
-
- [ ] No secrets or credentials committed
|
package/.github/dependabot.yml
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
updates:
|
|
3
|
-
- package-ecosystem: 'npm'
|
|
4
|
-
directory: '/'
|
|
5
|
-
schedule:
|
|
6
|
-
interval: 'weekly'
|
|
7
|
-
day: 'monday'
|
|
8
|
-
groups:
|
|
9
|
-
forge-ecosystem:
|
|
10
|
-
patterns: ['@forgespace/*']
|
|
11
|
-
minor-and-patch:
|
|
12
|
-
update-types: ['minor', 'patch']
|
|
13
|
-
open-pull-requests-limit: 10
|
|
14
|
-
- package-ecosystem: 'github-actions'
|
|
15
|
-
directory: '/'
|
|
16
|
-
schedule:
|
|
17
|
-
interval: 'weekly'
|
package/.github/workflows/ci.yml
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
name: CI
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [main]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [main]
|
|
8
|
-
|
|
9
|
-
concurrency:
|
|
10
|
-
group: ${{ github.workflow }}-${{ github.ref }}
|
|
11
|
-
cancel-in-progress: true
|
|
12
|
-
|
|
13
|
-
jobs:
|
|
14
|
-
lint:
|
|
15
|
-
name: Lint & Format
|
|
16
|
-
runs-on: ubuntu-latest
|
|
17
|
-
steps:
|
|
18
|
-
- uses: Forge-Space/.github/.github/actions/setup-node@main
|
|
19
|
-
- run: npm run lint:check
|
|
20
|
-
- run: npm run format:check
|
|
21
|
-
|
|
22
|
-
typecheck:
|
|
23
|
-
name: Type Check
|
|
24
|
-
runs-on: ubuntu-latest
|
|
25
|
-
steps:
|
|
26
|
-
- uses: Forge-Space/.github/.github/actions/setup-node@main
|
|
27
|
-
- run: npm run typecheck
|
|
28
|
-
|
|
29
|
-
test:
|
|
30
|
-
name: Test (Node ${{ matrix.node-version }})
|
|
31
|
-
runs-on: ubuntu-latest
|
|
32
|
-
strategy:
|
|
33
|
-
matrix:
|
|
34
|
-
node-version: [22, 24]
|
|
35
|
-
steps:
|
|
36
|
-
- uses: Forge-Space/.github/.github/actions/setup-node@main
|
|
37
|
-
with:
|
|
38
|
-
node-version: ${{ matrix.node-version }}
|
|
39
|
-
- run: npm run test:coverage
|
|
40
|
-
- name: Upload coverage
|
|
41
|
-
if: matrix.node-version == 22
|
|
42
|
-
uses: codecov/codecov-action@v5
|
|
43
|
-
with:
|
|
44
|
-
file: ./coverage/lcov.info
|
|
45
|
-
fail_ci_if_error: false
|
|
46
|
-
|
|
47
|
-
build:
|
|
48
|
-
name: Build
|
|
49
|
-
runs-on: ubuntu-latest
|
|
50
|
-
needs: [lint, typecheck, test]
|
|
51
|
-
steps:
|
|
52
|
-
- uses: Forge-Space/.github/.github/actions/setup-node@main
|
|
53
|
-
- run: npm run build
|
|
54
|
-
- name: Verify dist output
|
|
55
|
-
run: test -f dist/index.js
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
name: CodeQL Security Analysis
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [main]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [main]
|
|
8
|
-
schedule:
|
|
9
|
-
- cron: '0 2 * * 1'
|
|
10
|
-
|
|
11
|
-
jobs:
|
|
12
|
-
analyze:
|
|
13
|
-
name: Analyze
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
timeout-minutes: 360
|
|
16
|
-
permissions:
|
|
17
|
-
security-events: write
|
|
18
|
-
packages: read
|
|
19
|
-
actions: read
|
|
20
|
-
contents: read
|
|
21
|
-
|
|
22
|
-
steps:
|
|
23
|
-
- name: Checkout repository
|
|
24
|
-
uses: actions/checkout@v6
|
|
25
|
-
|
|
26
|
-
- name: Setup Node.js
|
|
27
|
-
uses: actions/setup-node@v6
|
|
28
|
-
with:
|
|
29
|
-
node-version: 22
|
|
30
|
-
cache: npm
|
|
31
|
-
|
|
32
|
-
- name: Install dependencies
|
|
33
|
-
run: npm ci
|
|
34
|
-
|
|
35
|
-
- name: Initialize CodeQL
|
|
36
|
-
uses: github/codeql-action/init@v4
|
|
37
|
-
with:
|
|
38
|
-
languages: javascript-typescript
|
|
39
|
-
queries: +security-and-quality
|
|
40
|
-
|
|
41
|
-
- name: Build project
|
|
42
|
-
run: npm run build
|
|
43
|
-
|
|
44
|
-
- name: Perform CodeQL Analysis
|
|
45
|
-
uses: github/codeql-action/analyze@v4
|
|
46
|
-
with:
|
|
47
|
-
category: '/language:javascript-typescript'
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
name: Release
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
tags:
|
|
6
|
-
- 'v*'
|
|
7
|
-
|
|
8
|
-
concurrency:
|
|
9
|
-
group: release
|
|
10
|
-
cancel-in-progress: false
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
validate:
|
|
14
|
-
name: Validate
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v6
|
|
18
|
-
- uses: actions/setup-node@v6
|
|
19
|
-
with:
|
|
20
|
-
node-version: 22
|
|
21
|
-
cache: npm
|
|
22
|
-
- run: npm ci
|
|
23
|
-
- run: npm run build
|
|
24
|
-
- run: npm run test
|
|
25
|
-
|
|
26
|
-
release:
|
|
27
|
-
name: Create Release
|
|
28
|
-
needs: [validate]
|
|
29
|
-
runs-on: ubuntu-latest
|
|
30
|
-
permissions:
|
|
31
|
-
contents: write
|
|
32
|
-
steps:
|
|
33
|
-
- uses: actions/checkout@v6
|
|
34
|
-
- name: Create GitHub Release
|
|
35
|
-
uses: softprops/action-gh-release@v2
|
|
36
|
-
with:
|
|
37
|
-
generate_release_notes: true
|
|
38
|
-
|
|
39
|
-
publish:
|
|
40
|
-
name: Publish to npm
|
|
41
|
-
needs: [validate]
|
|
42
|
-
runs-on: ubuntu-latest
|
|
43
|
-
permissions:
|
|
44
|
-
contents: read
|
|
45
|
-
steps:
|
|
46
|
-
- uses: actions/checkout@v6
|
|
47
|
-
- uses: actions/setup-node@v6
|
|
48
|
-
with:
|
|
49
|
-
node-version: 22
|
|
50
|
-
cache: npm
|
|
51
|
-
registry-url: https://registry.npmjs.org
|
|
52
|
-
- run: npm ci
|
|
53
|
-
- run: npm run build
|
|
54
|
-
- run: npm publish --access public
|
|
55
|
-
env:
|
|
56
|
-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
name: Security Scan
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [main]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [main]
|
|
8
|
-
schedule:
|
|
9
|
-
- cron: '0 6 * * 1'
|
|
10
|
-
|
|
11
|
-
jobs:
|
|
12
|
-
audit:
|
|
13
|
-
name: Dependency Audit
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
steps:
|
|
16
|
-
- uses: actions/checkout@v6
|
|
17
|
-
- uses: actions/setup-node@v6
|
|
18
|
-
with:
|
|
19
|
-
node-version: 22
|
|
20
|
-
cache: npm
|
|
21
|
-
- run: npm ci
|
|
22
|
-
- name: Audit production dependencies
|
|
23
|
-
run: npm audit --omit=dev --audit-level=high
|
|
24
|
-
- name: Audit dev dependencies (advisory only)
|
|
25
|
-
run: npm audit --audit-level=high || echo "::warning::Dev dependencies have vulnerabilities. Review manually."
|
|
26
|
-
continue-on-error: true
|
|
27
|
-
|
|
28
|
-
secret-scanning:
|
|
29
|
-
name: Secret Scanning
|
|
30
|
-
runs-on: ubuntu-latest
|
|
31
|
-
steps:
|
|
32
|
-
- uses: actions/checkout@v6
|
|
33
|
-
with:
|
|
34
|
-
fetch-depth: 0
|
|
35
|
-
- uses: trufflesecurity/trufflehog@v3.93.7
|
|
36
|
-
with:
|
|
37
|
-
extra_args: --only-verified
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
name: Trivy Security Scan
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
pull_request: {}
|
|
5
|
-
push:
|
|
6
|
-
branches: [main]
|
|
7
|
-
|
|
8
|
-
permissions:
|
|
9
|
-
contents: read
|
|
10
|
-
security-events: write
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
trivy:
|
|
14
|
-
uses: Forge-Space/.github/.github/workflows/reusable-trivy.yml@main
|
|
15
|
-
permissions:
|
|
16
|
-
contents: read
|
|
17
|
-
security-events: write
|
package/.gitleaks.toml
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
title = "Branding MCP Gitleaks Config"
|
|
2
|
-
|
|
3
|
-
[allowlist]
|
|
4
|
-
description = "Allowlist for placeholder values"
|
|
5
|
-
regexTarget = "match"
|
|
6
|
-
regexes = [
|
|
7
|
-
'''REPLACE_WITH_.*''',
|
|
8
|
-
'''your-.*-here''',
|
|
9
|
-
'''example\.com''',
|
|
10
|
-
]
|
|
11
|
-
paths = [
|
|
12
|
-
'''.env\.example''',
|
|
13
|
-
'''data/.*''',
|
|
14
|
-
]
|
package/.husky/commit-msg
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
npx --no -- commitlint --edit "$1"
|
package/.nvmrc
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
22
|