SkillAgentSearch skills...

jack-project

"scroll-into-view-if-needed": "^3.1.0", "server-only": "^0.0.1", "shiki": "^4.0.2", "lint-staged": "^16.4.0", "next-devtools-mcp": "^0.3.10", "next-validate-link": "^1.6.6",

Install / Use

claude mcp add pohlai88 -- npx -y github:pohlai88/jack-project

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

49/100

Supported Platforms

Claude Code
Claude Desktop

Tags

{ "name": "afenda", "scripts": { "env:sync": "node scripts/sync-env-config.mjs", "dev": "node scripts/with-env-config.mjs next dev --turbopack --hostname 0.0.0.0 --port 3000", "build": "node scripts/next-build.mjs", "build:profile": "node scripts/next-build.mjs --experimental-cpu-prof", "build:debug-prerender": "node scripts/next-build.mjs --debug-prerender", "start": "node scripts/with-env-config.mjs next start", "format": "prettier --ignore-path .gitignore --write .", "lint": "eslint .", "lint:fix": "eslint . --fix", "lint:a11y": "eslint . --report-unused-disable-directives --max-warnings 0", "verify-landing-design-system": "tsx scripts/verify-landing-design-system.ts", "verify-marketing-audience": "tsx scripts/verify-marketing-audience.ts", "verify-data-rights-doctrine": "tsx scripts/verify-data-rights-doctrine.ts", "landing:audit": "pnpm verify-landing-design-system", "repo:guard": "node scripts/repo-guard.mjs", "type-check": "fumadocs-mdx && tsc --noEmit", "doctrine:check": "node scripts/check-doctrine.mjs", "i18n:extract": "node scripts/i18n-extract.mjs", "i18n:compile": "node scripts/i18n-compile.mjs", "i18n:validate": "node scripts/i18n-validate.mjs", "i18n:coverage": "node scripts/i18n-coverage.mjs", "i18n:sync": "node scripts/i18n-sync.mjs", "i18n:fallback-check": "node scripts/i18n-fallback-check.mjs", "i18n:check": "pnpm i18n:validate", "i18n:inventory:check": "node scripts/i18n-inventory-check.mjs", "i18n:readiness:report": "node scripts/i18n-readiness-report.mjs", "i18n:tolgee:spike-check": "node scripts/tolgee-spike-check.mjs", "i18n:tolgee:pull": "node scripts/with-env-config.mjs node scripts/tolgee-export-pull.mjs", "i18n:tolgee:cli": "node scripts/tolgee-cli.mjs", "i18n:tolgee:cli:pull": "node scripts/tolgee-cli.mjs pull", "i18n:tolgee:discover": "node scripts/tolgee-discover.mjs", "i18n:tolgee:cli:push-spike": "node scripts/tolgee-cli.mjs push --force-mode KEEP", "i18n:tolgee:normalize": "node scripts/tolgee-normalize.mjs", "i18n:tolgee:ci": "node scripts/tolgee-ci.mjs", "docs:contract": "tsx scripts/docs-evidence-pipeline.ts contract", "docs:inventory": "tsx scripts/docs-evidence-pipeline.ts inventory", "docs:generate": "tsx scripts/docs-evidence-pipeline.ts generate", "docs:source": "fumadocs-mdx", "fumadocs": "pnpm exec fumadocs", "fumadocs:add": "pnpm exec fumadocs add", "fumadocs:customize": "pnpm exec fumadocs customise", "fumadocs:tree": "pnpm exec fumadocs tree", "docs:links": "tsx scripts/docs-validate-links.ts", "docs:llms": "pnpm docs:source && tsx scripts/docs-evidence-pipeline.ts llms", "docs:pdf:setup": "node scripts/with-env-config.mjs puppeteer browsers install chrome", "docs:pdf": "pnpm docs:source && node scripts/with-env-config.mjs tsx scripts/export-pdf.mts", "docs:search": "tsx scripts/docs-evidence-pipeline.ts search-site && pagefind --site .artifacts/docs-search-site --output-path public/_pagefind && tsx scripts/docs-evidence-pipeline.ts search-check", "docs:check": "tsx scripts/docs-evidence-pipeline.ts check", "docs:ci": "pnpm docs:contract && pnpm docs:inventory -- --check && pnpm docs:generate -- --check && pnpm docs:source && pnpm docs:links && pnpm docs:llms && pnpm docs:check && pnpm type-check && pnpm test && pnpm build && pnpm docs:search", "prepare": "husky", "test": "node scripts/with-env-config.mjs vitest run --passWithNoTests", "test:watch": "node scripts/with-env-config.mjs vitest --passWithNoTests", "test:coverage": "node scripts/with-env-config.mjs vitest run --coverage --passWithNoTests", "test:unit:stable": "node scripts/with-env-config.mjs vitest run --passWithNoTests --pool=forks --maxWorkers=1", "test:workspace": "pnpm repo:guard && pnpm type-check && pnpm lint && pnpm test:unit:stable && pnpm test:e2e:smoke", "test:quality": "pnpm env:sync && pnpm repo:guard && pnpm doctrine:check && pnpm i18n:validate && pnpm docs:check && pnpm type-check && pnpm lint && pnpm test:unit:stable && pnpm test:e2e:smoke && pnpm build", "test:release": "pnpm test:quality && pnpm test:lighthouse", "test:e2e": "node scripts/with-env-config.mjs playwright test", "test:e2e:ui": "node scripts/with-env-config.mjs playwright test --ui", "test:e2e:auth": "node scripts/with-env-config.mjs playwright test --grep @auth", "test:e2e:smoke": "node scripts/with-env-config.mjs playwright test --grep @smoke", "test:e2e:oauth-live": "node scripts/with-env-config.mjs playwright test --grep @oauth-live", "test:lighthouse": "pnpm build && node scripts/with-env-config.mjs lhci autorun --config=lighthouserc.cjs", "db:generate": "node scripts/with-env-config.mjs drizzle-kit generate", "db:migrate": "node scripts/with-env-config.mjs drizzle-kit migrate", "db:push": "echo "db:push is not reliable with this non-public schema setup; running db:migrate instead." && pnpm db:migrate", "db:push:unsafe": "node scripts/with-env-config.mjs drizzle-kit push --force", "db:studio": "node scripts/with-env-config.mjs drizzle-kit studio", "db:seed": "node scripts/with-env-config.mjs tsx scripts/seed-demo.ts", "db:reset": "node scripts/with-env-config.mjs tsx scripts/db-reset.ts", "db:fresh": "pnpm db:reset --force && pnpm db:seed", "embeddings:generate": "node scripts/with-env-config.mjs tsx scripts/generate-embeddings.ts", "embeddings:recreate": "node scripts/with-env-config.mjs tsx scripts/generate-embeddings.ts --recreate", "storybook": "node scripts/with-env-config.mjs storybook dev -p 6006", "build-storybook": "node scripts/with-env-config.mjs storybook build", "deploy:vercel:production": "pnpm run build && pnpm exec vercel deploy --prod --yes --scope jacks-projects-7b3cfe94", "vercel:link": "vercel link --yes --scope jacks-projects-7b3cfe94 --project afenda-node", "vercel:project": "vercel project inspect afenda-node --scope jacks-projects-7b3cfe94", "vercel:env:production": "vercel env ls production --scope jacks-projects-7b3cfe94", "vercel:env:push-production": "node scripts/push-vercel-production-env.mjs", "vercel:env:report": "node scripts/show-production-env-status.mjs", "vercel:domain:remove-apex": "node scripts/remove-vercel-apex-domain.mjs", "vercel:deployments": "vercel ls --scope jacks-projects-7b3cfe94" }, "dependencies": { "@ai-sdk/openai": "^3.0.53", "@ai-sdk/react": "^3.0.170", "@auth/drizzle-adapter": "^1.11.2", "@aws-sdk/client-s3": "^3.1037.0", "@aws-sdk/s3-request-presigner": "^3.1037.0", "@fumadocs/story": "^0.0.14", "@heroicons/react": "^2.2.0", "@hookform/resolvers": "^5.2.2", "@monaco-editor/react": "^4.7.0", "@radix-ui/react-accordion": "^1.2.12", "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-checkbox": "^1.3.3", "@radix-ui/react-collapsible": "^1.1.12", "@radix-ui/react-dialog": "^1.1.15", "@radix-ui/react-dropdown-menu": "^2.1.16", "@radix-ui/react-hover-card": "^1.1.15", "@radix-ui/react-label": "^2.1.8", "@radix-ui/react-popover": "^1.1.15", "@radix-ui/react-presence": "^1.1.5", "@radix-ui/react-progress": "^1.1.8", "@radix-ui/react-radio-group": "^1.3.8", "@radix-ui/react-scroll-area": "^1.2.10", "@radix-ui/react-select": "^2.2.6", "@radix-ui/react-separator": "^1.1.8", "@radix-ui/react-slider": "^1.3.6", "@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-switch": "^1.2.6", "@radix-ui/react-tabs": "^1.1.13", "@radix-ui/react-toast": "^1.2.15", "@radix-ui/react-tooltip": "^1.2.8", "@react-pdf/renderer": "^4.5.1", "@t3-oss/env-nextjs": "^0.13.11", "@tailwindcss/postcss": "^4.2.4", "@tiptap/core": "^3.22.4", "@tiptap/extension-image": "^3.22.4", "@tiptap/extension-link": "^3.22.4", "@tiptap/extension-placeholder": "^3.22.4", "@tiptap/pm": "^3.22.4", "@tiptap/react": "^3.22.4", "@tiptap/starter-kit": "^3.22.4", "@types/mdx": "^2.0.13", "@vercel/sdk": "^1.19.40", "@xyflow/react": "^12.10.2", "ai": "^6.0.168", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "cmdk": "^1.1.1", "d3-force": "^3.0.0", "date-fns": "^4.1.0", "dompurify": "^3.4.1", "driver.js": "^1.4.0", "drizzle-orm": "^0.45.2", "feed": "^5.2.1", "fumadocs-core": "^16.8.4", "fumadocs-mdx": "^14.3.1", "fumadocs-openapi": "^10.8.1", "fumadocs-typescript": "^5.2.6", "fumadocs-ui": "^16.8.4", "fuse.js": "^7.3.0", "gray-matter": "^4.0.3", "lightningcss": "^1.32.0", "lucide-react": "^0.562.0", "mermaid": "^11.14.0", "nanoid": "^5.1.9", "next": "^16.2.4", "next-auth": "5.0.0-beta.30", "next-intl": "^4.9.1", "next-themes": "^0.4.6", "octokit": "^5.0.5", "openai": "^6.34.0", "papaparse": "^5.5.3", "pdf-parse": "^2.4.5", "pino": "^10.3.1", "pino-pretty": "^13.1.3", "postgres": "^3.4.9", "react": "^19.2.5", "react-dom": "^19.2.5", "react-force-graph-2d": "^1.29.1", "react-hook-form": "^7.74.0", "react-markdown": "^10.1.0", "react-medium-image-zoom": "^5.4.3", "react-organizational-chart": "^2.2.1", "recharts": "^3.8.1", "remark-gfm": "^4.0.1", "scroll-into-view-if-needed": "^3.1.0", "server-only": "^0.0.1", "shiki": "^4.0.2", "sonner": "^2.0.7", "tailwind-merge": "^3.5.0", "tailwindcss-animate": "^1.0.7", "uuid": "^13.0.0", "zod": "^4.3.6" }, "devDependencies": { "@aws-sdk/client-secrets-manager": "^3.1037.0", "@aws-sdk/client-ssm": "^3.1037.0", "@commitlint/cli": "^20.5.2", "@commitlint/config-conventional": "^20.5.0", "@formatjs/icu-messageformat-parser": "^3.5.5", "@fumadocs/cli": "^1.3.9", "@lhci/cli": "^0.15.1", "@next/eslint-plugin-next": "^16.2.4", "@playwright/test": "^1.59.1", "@storybook/nextjs": "^10.3.5", "@storybook/nextjs-vite": "^10.3.5", "@storybook/react": "^10.3.5", "@tailwindcss/typography": "^0.5.19", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", "@tolgee/cli": "^2.16.1", "@types/d3-force": "^3.0.10", "@types/node": "^22.19.17", "@types/papaparse": "^5.5.2", "@types/pdf-parse": "^1.1.5", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@typescript-eslint/eslint-plugin": "^8.59.0", "@vitest/coverage-v8": "^4.1.5", "autoprefixer": "^10.5.0", "buffer": "^6.0.3", "dotenv": "^17.4.2", "drizzle-kit": "^0.31.10", "eslint": "^9.39.4", "eslint-config-next": "^16.2.4", "eslint-config-prettier": "^10.1.8", "eslint-import-resolver-typescript": "^4.4.4", "eslint-plugin-import": "^2.32.0", "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-tailwindcss": "^3.18.3", "fast-glob": "^3.3.3", "husky": "^9.1.7", "jsdom": "^29.0.2", "lint-staged": "^16.4.0", "next-devtools-mcp": "^0.3.10", "next-validate-link": "^1.6.6", "pagefind": "^1.5.2", "postcss": "^8.5.10", "prettier": "^3.8.3", "puppeteer": "^24.42.0", "storybook": "^10.3.5", "tailwindcss": "^4.2.4", "ts-morph": "^28.0.0", "tsx": "^4.21.0", "typescript": "^5.9.3", "typescript-eslint": "^8.59.0", "vercel": "^52.0.0", "vitest": "^4.1.5", "wcag-contrast": "^3.0.0" }, "packageManager": "pnpm@10.28.1+sha512.7d7dbbca9e99447b7c3bf7a73286afaaf6be99251eb9498baefa7d406892f67b879adb3a1d7e687fc4ccc1a388c7175fbaae567a26ab44d1067b54fcb0d6a316", "puppeteer": { "cacheDirectory": ".artifacts/puppeteer" }, "engines": { "node": ">=22.0.0", "pnpm": ">=10.0.0" } }

Related Skills

View on GitHub
GitHub Stars0
CategoryDevelopment
UpdatedNaNy ago
Forks0

Security Score

68/100

Audited on Invalid Date

2 medium1 low