소스 정보
- 저장소
- diegosouzapw/awesome-omni-skill
- 최근 소스 활동
- 2026년 2월 28일 04:03
- 감지된 SKILL.md 언어
- 영어
- 스타
- 50
- 포크
- 19
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/diegosouzapw/awesome-omni-skill --skill config-generate명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
Token-efficient tracking for AI orchestration. CLI-first for status updates (~50 tokens), agent fallback for complex ops (~1KB). Use when: updating task status, querying blockers, creating progress files, validating phases.
AshAi extension guidelines for integrating AI capabilities with Ash Framework. Use when implementing vectorization/embeddings, exposing Ash actions as LLM tools, creating prompt-backed actions, or setting up MCP servers. Covers semantic search, LangChain integration, and structured outputs.
This skill should be used when solving hard questions, complex architectural problems, or debugging issues that benefit from GPT-5 Pro or GPT-5.1 thinking models with large file context. Use when standard Claude analysis needs deeper reasoning or extended context windows.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | config-generate |
| description | Generate configuration files for development tools |
| disable-model-invocation | true |
I'll generate configuration files for common development tools: TypeScript, ESLint, Prettier, Jest, Vitest, and more.
Arguments: $ARGUMENTS - config type (tsconfig, eslint, prettier, jest, etc.)
Supported Configs:
Optimization Status: ✅ Fully Optimized (Phase 2 Batch 4B, 2026-01-27)
Baseline: 2,500-4,000 tokens → Optimized: 400-800 tokens (~80% reduction)
This skill achieves exceptional optimization through template-based generation. As a pure configuration generation skill, it leverages pre-built templates and framework detection to eliminate expensive codebase scanning.
CRITICAL: Use pre-built configuration templates for all common tools
~/.claude/cache/config_templates.jsonImplementation:
// Cache structure: ~/.claude/cache/config_templates.json
{
"tsconfig": {
"base": { /* 137 lines of base TypeScript config */ },
"nextjs": { /* Next.js specific overrides */ },
"react": { /* React specific settings */ }
},
"eslint": {
"base": { /* 293 lines of ESLint config */ },
"react": { /* React plugin additions */ },
"vue": { /* Vue plugin additions */ }
},
"prettier": { /* 342 lines of Prettier config */ },
"jest": { /* 406 lines of Jest config */ },
"vitest": { /* 479 lines of Vitest config */ }
}
Before: Read similar configs from codebase (800-1,200 tokens) After: Write from cached template (100-200 tokens)
CRITICAL: Detect project type from package.json without full codebase scan
Before:
# Expensive: Scan codebase for framework indicators
find src -name "*.tsx" -o -name "*.vue" # 300-500 tokens
cat src/main.tsx src/App.tsx # 400-800 tokens
After:
# Efficient: Single package.json analysis
grep -E '"(react|vue|next|typescript|jest|vitest)"' package.json # 50-100 tokens
CRITICAL: Generate all configs in one pass
Before:
# Sequential: Generate each config separately
Write tsconfig.json # 200 tokens
Read back for verification # 150 tokens
Write .eslintrc.js # 200 tokens
Read back for verification # 150 tokens
# Total: 700+ tokens for 2 configs
After:
# Batch: Generate all configs together
Write tsconfig.json + .eslintrc.js + .prettierrc + .gitignore # 300 tokens
# No verification reads
# Total: 300 tokens for 4 configs
CRITICAL: Write configs directly without reading back
Before:
Write .eslintrc.js # 150 tokens
Read .eslintrc.js for verification # 200 tokens
Validate syntax # 100 tokens
# Total: 450 tokens
After:
Write .eslintrc.js # 150 tokens
# Total: 150 tokens (67% savings)
CRITICAL: Cache latest compatible versions and config formats
~/.claude/cache/tool_versions.jsonImplementation:
// ~/.claude/cache/tool_versions.json
{
"eslint": {
"version": "^9.0.0",
"parser": "@typescript-eslint/parser@^8.0.0",
"plugins": ["@typescript-eslint@^8.0.0", "eslint-plugin-react@^7.37.0"]
},
"prettier": {
"version": "^3.2.0",
"config_format": "json",
"recommended_rules": { /* cached rules */ }
}
}
Before: Search for latest compatible versions (400-600 tokens) After: Use cached versions (50-100 tokens)
# Detect React ecosystem (50 tokens)
grep -q '"react"' package.json && FRAMEWORK="react"
grep -q '"next"' package.json && FRAMEWORK="nextjs"
# Apply React-specific template (100 tokens)
# Write: tsconfig.json, .eslintrc.js (React plugins), .prettierrc
# Total: 150 tokens vs 800+ tokens baseline
# Detect Vue ecosystem (50 tokens)
grep -q '"vue"' package.json && FRAMEWORK="vue"
# Apply Vue-specific template (100 tokens)
# Total: 150 tokens
Cache Creation: Run once to populate templates
# Initial cache setup (one-time cost: 2,000 tokens)
mkdir -p ~/.claude/cache
# Store all config templates
cat > ~/.claude/cache/config_templates.json << 'EOF'
{ /* all templates */ }
EOF
Cache Structure:
~/.claude/cache/
├── config_templates.json # 2MB of config templates
├── framework_defaults.json # Framework-specific presets
└── tool_versions.json # Latest compatible versions
Cache Invalidation:
rm ~/.claude/cache/*.jsonBaseline (2,500-4,000 tokens):
Optimized (400-800 tokens):
Existing Configs:
.backup suffixCustom Requirements:
Upstream Dependencies:
/ci-setup - Generates configs as part of CI setup/scaffold - Includes config generation in project scaffolding/boilerplate - Adds framework-specific configsDownstream Usage:
/format - Uses generated Prettier config/review - Uses generated ESLint config/test - Uses generated Jest/Vitest config#!/bin/bash
# Detect project type and requirements
echo "=== Analyzing Project ==="
echo ""
# Detect package manager
detect_package_manager() {
if [ -f "pnpm-lock.yaml" ]; then
echo "pnpm"
elif [ -f "yarn.lock" ]; then
echo "yarn"
elif [ -f "package-lock.json" ]; then
echo "npm"
elif [ -f "bun.lockb" ]; then
echo "bun"
else
echo "npm"
fi
}
PKG_MANAGER=$(detect_package_manager)
echo "✓ Package manager: $PKG_MANAGER"
# Detect TypeScript
if [ -f "package.json" ]; then
if grep -q "\"typescript\"" package.json; then
HAS_TYPESCRIPT=true
echo "✓ TypeScript detected"
else
HAS_TYPESCRIPT=false
fi
# Detect frameworks
if grep -q package.json;
FRAMEWORK=
grep -q package.json;
FRAMEWORK=
grep -q package.json;
FRAMEWORK=
grep -q package.json;
TEST_FRAMEWORK=
grep -q package.json;
TEST_FRAMEWORK=
{
"compilerOptions": {
/* Language and Environment */
"target": "ES2022",
"lib": ["ES2022", "DOM", "DOM.Iterable"],
"jsx": "react-jsx",
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
/* Modules */
"module": "ESNext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"allowImportingTsExtensions": true,
"baseUrl": ".",
"paths":
Framework-specific variations:
// Next.js tsconfig.json
{
"compilerOptions": {
"target": "ES2017",
"lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
"noEmit": true,
"esModuleInterop": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules":
// .eslintrc.js - Comprehensive ESLint config
module.exports = {
root: true,
env: {
browser: true,
es2022: true,
node: true,
},
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:react/recommended',
'plugin:react-hooks/recommended',
'plugin:jsx-a11y/recommended',
'plugin:import/recommended',
'plugin:import/typescript',
'prettier', // Must be last
],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
ecmaFeatures: {
jsx: true,
},
project: './tsconfig.json',
},
plugins: [
'@typescript-eslint',
'react',
'react-hooks',
'jsx-a11y',
'import',
],
settings: {
react: {
version: 'detect',
},
'import/resolver': {
typescript: {
alwaysTryTypes: true,
project: ,
},
},
},
: {
: [
,
{ : , : },
],
: ,
: ,
: ,
: ,
: [
,
{ : },
],
: ,
: ,
: ,
: ,
: ,
: [
,
{
: [
,
,
,
,
,
,
],
: ,
: { : , : },
},
],
: ,
: ,
: [, { : [, ] }],
: ,
: ,
: ,
},
: [
{
: [, , ],
: {
: ,
},
: {
: ,
},
},
],
};
# .eslintignore
node_modules/
dist/
build/
coverage/
.next/
out/
*.min.js
*.config.js
public/
// .prettierrc
{
"semi": true,
"trailingComma": "es5",
"singleQuote": true,
"printWidth": 80,
"tabWidth": 2,
"useTabs": false,
"arrowParens": "always",
"endOfLine": "lf",
"bracketSpacing": true,
"jsxSingleQuote": false,
"jsxBracketSameLine": false,
"proseWrap": "preserve",
"quoteProps": "as-needed",
# .prettierignore
node_modules/
dist/
build/
coverage/
.next/
out/
pnpm-lock.yaml
package-lock.json
yarn.lock
*.min.js
*.min.css
// jest.config.js
module.exports = {
preset: 'ts-jest',
testEnvironment: 'jsdom',
roots: ['<rootDir>/src', '<rootDir>/tests'],
testMatch: [
'**/__tests__/**/*.+(ts|tsx|js)',
'**/?(*.)+(spec|test).+(ts|tsx|js)',
],
transform: {
'^.+\\.(ts|tsx)$': 'ts-jest',
},
collectCoverageFrom: [
'src/**/*.{ts,tsx}',
'!src/**/*.d.ts',
'!src/**/*.stories.tsx',
'!src/index.tsx',
],
coverageThreshold: {
global: {
branches: 70,
functions: 70,
lines: 70,
statements: 70,
},
},
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/src/$1',
'^@components/(.*)$': '<rootDir>/src/components/$1',
'^@utils/(.*)$': '<rootDir>/src/utils/$1',
'\\.(css|less|scss|sass)$': 'identity-obj-proxy',
'\\.(jpg|jpeg|png|gif|svg)$': '<rootDir>/__mocks__/fileMock.js',
},
setupFilesAfterEnv: ['<rootDir>/jest.setup.js'],
globals: {
'ts-jest': {
tsconfig: {
jsx: ,
},
},
},
: [, , ],
: [, , ],
};
// jest.setup.js
import '@testing-library/jest-dom';
// Mock window.matchMedia
Object.defineProperty(window, 'matchMedia', {
writable: true,
value: jest.fn().mockImplementation((query) => ({
matches: false,
media: query,
onchange: null,
addListener: jest.fn(),
removeListener: jest.fn(),
addEventListener: jest.fn(),
removeEventListener: jest.fn(),
dispatchEvent: jest.fn(),
})),
});
// Mock IntersectionObserver
global.IntersectionObserver = class IntersectionObserver {
constructor() {}
disconnect() {}
observe() {}
takeRecords() {
return [];
}
unobserve() {}
};
// vitest.config.ts
import { defineConfig } from 'vitest/config';
import react from '@vitejs/plugin-react';
import path from 'path';
export default defineConfig({
plugins: [react()],
test: {
environment: 'jsdom',
globals: true,
setupFiles: ['./vitest.setup.ts'],
coverage: {
provider: 'v8',
reporter: ['text', 'json', 'html'],
exclude: [
'node_modules/',
'dist/',
'**/*.d.ts',
'**/*.config.*',
'**/mockData/',
],
thresholds: {
lines: 70,
functions: 70,
branches: 70,
statements: 70,
},
},
},
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
'@components': path.resolve(__dirname, ),
: path.(__dirname, ),
},
},
});
# Dependencies
node_modules/
.pnp
.pnp.js
# Testing
coverage/
.nyc_output
# Production
build/
dist/
out/
.next/
# Misc
.DS_Store
*.pem
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
# Local env files
.env
.env*.local
.env.development.local
.env.test.local
.env.production.local
# Vercel
.vercel
# TypeScript
*.tsbuildinfo
next-env.d.ts
# IDE
.vscode/
.idea/
*.swp
*.swo
*~
# OS
.DS_Store
Thumbs.db
// vite.config.ts
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import path from 'path';
export default defineConfig({
plugins: [react()],
resolve: {
alias: {
'@': path.resolve(__dirname, './src'),
'@components': path.resolve(__dirname, './src/components'),
'@utils': path.resolve(__dirname, './src/utils'),
},
},
server: {
port: 3000,
open: true,
cors: true,
},
build: {
outDir: 'dist',
sourcemap: true,
rollupOptions: {
output: {
manualChunks: {
vendor: ['react', 'react-dom'],
},
},
},
},
optimizeDeps: {
include: ['react', 'react-dom'],
},
});
echo ""
echo "=== ✓ Configuration Generation Complete ==="
echo ""
echo "📁 Generated configuration files:"
if [ "$HAS_TYPESCRIPT" = true ]; then
echo " ✓ tsconfig.json # TypeScript configuration"
fi
echo " ✓ .eslintrc.js # ESLint rules"
echo " ✓ .eslintignore # ESLint ignore patterns"
echo " ✓ .prettierrc # Prettier formatting"
echo " ✓ .prettierignore # Prettier ignore patterns"
if [ "$TEST_FRAMEWORK" = "jest" ]; then
echo " ✓ jest.config.js # Jest test configuration"
echo " ✓ jest.setup.js # Jest setup file"
elif [ "$TEST_FRAMEWORK" = "vitest" ]; then
echo " ✓ vitest.config.ts # Vitest configuration"
echo " ✓ vitest.setup.ts # Vitest setup file"
fi
echo " ✓ .gitignore # Git ignore patterns"
echo ""
echo "📦 Install required dependencies:"
[ = ];
[ = ];
[ = ];
[ = ];
Configuration Quality:
Maintenance:
Integration Points:
/ci-setup - Add to CI pipeline/format - Use for code formatting/review - Check code qualityImportant: I will NEVER add AI attribution.
Credits: Configuration patterns based on TypeScript, ESLint, Prettier, Jest, and Vitest official documentation and community best practices.