
typescript-detector
by alex-popov-tech
💻 My settings for macOS, wezterm, zsh, nvim, and more 🛠
SKILL.md
name: typescript-detector description: Detects TypeScript configuration and available compilation commands in a repository. Returns structured JSON output designed for consumption by the quality-gates-compilation agent. Checks for tsconfig.json, extracts compile commands from package.json, Makefile, and CLAUDE.md, and provides command sources for the agent to read directly.
Purpose
Detect TypeScript presence and available compilation commands in a repository, returning structured JSON data specifically formatted for the quality-gates-compilation agent to consume.
When to Use
Invoke this skill during Phase 0 (Environment Detection) of the quality-gates-compilation agent workflow to:
- Verify TypeScript is configured in the repository
- Identify available TypeScript compilation command
- Locate command source for the agent to read directly
This skill should NOT be invoked for general code review or type checking tasks - only for environment detection.
Detection Process
Step 1: Check for TypeScript Configuration
Search for TypeScript configuration file using Glob tool:
tsconfig.json
If NO configuration file found:
- Set
typescriptDetected: false - Return early with minimal JSON structure
If configuration file found:
- Set
typescriptDetected: true - Record config file path
- Proceed to Step 2
Step 2: Detect TypeScript Compilation Command
Search for TypeScript compilation commands in priority order:
2a. Check CLAUDE.md (Highest Priority)
If CLAUDE.md exists:
- Read the file
- Search for sections: "Type checking", "TypeScript", "Development Commands", "Common Commands", "Compilation"
- Look for command patterns:
tsc,typecheck,type-check,compile,make compile,npm run compile
- Extract exact command mentioned
- Record CLAUDE.md as source if command found
2b. Check package.json Scripts
Read package.json and examine the scripts section:
Compilation commands (look for these script names):
"compile""type-check""typecheck""tsc""build:types"- Extract as:
npm run <script-name>
Record package.json as source if command found.
2c. Check Makefile
If Makefile exists:
- Read the file
- Search for targets containing
tscorcompile - Common target patterns:
compile,typecheck,type-check,tsc
- Extract as:
make <target-name> - Record Makefile as source if command found
2d. Fallback Command
If no command found in any source:
- Use fallback command:
npx tsc --noEmit - Record source as:
"fallback"
Step 3: Build JSON Response
Construct JSON object with this exact structure:
{
"typescriptDetected": true,
"configFile": {
"path": "tsconfig.json",
"exists": true
},
"command": {
"compile": "npm run compile",
"source": "package.json"
}
}
Field Specifications:
typescriptDetected(boolean):trueif tsconfig.json found,falseotherwiseconfigFile(object): TypeScript configuration file detailspath(string): Relative path to tsconfig.json (always "tsconfig.json")exists(boolean): Whether file exists (always true if detected)
command(object): Compilation command detailscompile(string): Exact command to run for type checkingsource(string): Where command was found ("CLAUDE.md", "package.json", "Makefile", or "fallback")
Step 4: Return JSON
Output the JSON structure in a code block with clear formatting:
## TypeScript Detection Results
```json
{
"typescriptDetected": true,
"configFile": {
"path": "tsconfig.json",
"exists": true
},
"command": {
"compile": "npm run compile",
"source": "package.json"
}
}
```
**Summary:**
- TypeScript detected: Yes/No
- Config file: tsconfig.json
- Command source: <source>
Priority Rules
- Command Priority: CLAUDE.md > package.json > Makefile > fallback
- Use First Match: Use the first match found from priority list
- Source Transparency: Always record where command was found
- Single Command: TypeScript only needs one compile command (unlike ESLint which has check + fix)
Edge Cases
tsconfig.json found but no command:
{
"typescriptDetected": true,
"configFile": {
"path": "tsconfig.json",
"exists": true
},
"command": {
"compile": "npx tsc --noEmit",
"source": "fallback"
}
}
No tsconfig.json found:
{
"typescriptDetected": false,
"configFile": {
"path": "tsconfig.json",
"exists": false
},
"command": {}
}
Command found in multiple sources:
- Use highest priority source (CLAUDE.md wins)
- Record only the used source
Multiple tsconfig files:
- Only check for root
tsconfig.json - Project-specific configs (tsconfig.build.json, etc.) are not relevant for type checking
Integration with quality-gates-compilation
The quality-gates-compilation agent will:
- Invoke this skill during Phase 0
- Parse the returned JSON structure
- Use
typescriptDetectedto decide whether to proceed or exit - Use
command.compilefor running type checks - Read file listed in
command.sourceif needed for additional context
The JSON structure is designed to provide everything the compilation agent needs without requiring additional file reads for command detection.
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon



