Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问clear审计未展示

type-checker类型检查器

Agent Skill

type-checker 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

423

周安装

18

GitHub Stars

公开资料未说明

下载量

148
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:type-checker(类型检查器)
来源仓库:https://github.com/cityfish91159/maihouses
仓库路径:skills/type-checker
安装命令:
npx skills add cityfish91159/maihouses --skill "type-checker"
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

AgentSkills.tonpx skills
npx skills add cityfish91159/maihouses --skill "type-checker"

简介

type-checker 用于类型检查与开发辅助,提升代码质量与规范性。

  • 适合 TypeScript 或强类型语言项目的静态分析需求。
  • 通过 npx skills add cityfish91159/maihouses --skill "type-checker" 命令安装。
  • 需确保项目已配置相应类型定义,注意误报过滤与规则自定义能力。
  • 建议参考 README 了解集成方式与常见错误处理建议。

SKILL.md

TypeScript Type Checker Skill

專門處理 TypeScript 類型檢查和類型錯誤修復。

🎯 執行時機

  • 用戶提到「類型錯誤」、「type error」
  • 執行 npm run typecheck 發現錯誤
  • 需要定義或修復 TypeScript 類型
  • 代碼中出現 any 需要替換為具體類型

📋 執行流程

1. 執行類型檢查

npm run typecheck

2. 分析錯誤輸出

TypeScript 錯誤格式:

src/components/Login.tsx:42:15 - error TS7006: Parameter 'user' implicitly has an 'any' type.

需要提取:

  • 檔案路徑: src/components/Login.tsx
  • 行號: 42
  • 錯誤碼: TS7006
  • 錯誤訊息: Parameter 'user' implicitly has an 'any' type

3. 閱讀相關檔案

必須閱讀的檔案(按順序):

  1. 錯誤所在檔案 - 理解上下文
  2. 相關類型定義檔案 - 檢查是否已有類型定義 # 搜尋類型定義檔案 Glob: pattern="**/types/**/*.ts" Glob: pattern="**/*.d.ts"
  3. 相關的 interface/type - 尋找可重用的類型 # 在檔案中搜尋 interface 定義 Grep: pattern="^(export\\s+)?(interface|type)\\s+" output_mode="content"

4. 修復策略

策略 A: 使用現有類型

// ❌ 錯誤
function handleUser(user: any) {}

// ✅ 使用專案中已定義的類型
import { User } from '@/types/user';
function handleUser(user: User) {}

策略 B: 定義新類型

如果專案中沒有合適的類型,在適當位置定義:

// 在 src/types/[domain].ts 中定義
export interface UserProfile {
  id: string;
  name: string;
  email: string;
  role: 'admin' | 'user' | 'guest';
}

策略 C: 使用泛型

// ❌ 錯誤
function fetchData(url: string): Promise<any> {}

// ✅ 使用泛型
function fetchData<T>(url: string): Promise<T> {}

5. 常見類型錯誤修復

TS7006: 隱式 any 參數

// ❌ 錯誤
const handleClick = (e) => {};

// ✅ 修復
const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {};

TS2339: 屬性不存在

// ❌ 錯誤
interface User {
  name: string;
}
user.email; // Property 'email' does not exist

// ✅ 修復:擴展 interface
interface User {
  name: string;
  email: string;
}

TS2345: 參數類型不匹配

// ❌ 錯誤
function greet(name: string) {}
greet(123);

// ✅ 修復:確保參數類型正確
greet(String(123));
// 或
greet(userId.toString());

TS18046: 可能為 undefined

// ❌ 錯誤
const user = users.find((u) => u.id === id);
console.log(user.name); // 'user' is possibly 'undefined'

// ✅ 修復:加入 null check
const user = users.find((u) => u.id === id);
if (user) {
  console.log(user.name);
}
// 或使用可選鏈
console.log(user?.name);

6. React 特定類型

// Props 類型
interface ButtonProps {
  label: string;
  onClick: () => void;
  disabled?: boolean;
}

// Event handlers
const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {};
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {};
const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {};

// State 類型
const [user, setUser] = useState<User | null>(null);
const [items, setItems] = useState<Item[]>([]);

// Ref 類型
const inputRef = useRef<HTMLInputElement>(null);

📋 修復流程

  1. Read 錯誤檔案
  2. Grep 搜尋相關類型定義
  3. 決定修復策略(使用現有/定義新/使用泛型)
  4. Edit 修復類型錯誤
  5. Bash 執行 npm run typecheck 驗證
  6. 重複直到所有錯誤修復

🚨 絕對禁止

// ❌ 永遠不要這樣做
const data: any = fetchData();
function process(input: any): any {}
// @ts-ignore
const result = riskyOperation();

✅ 最佳實踐

  1. 優先使用現有類型 - 檢查 src/types/ 目錄
  2. 類型定義集中管理 - 放在 src/types/[domain].ts
  3. 使用嚴格模式 - 確保 tsconfig.json 開啟 strict
  4. Export 可重用類型 - 方便其他檔案使用
  5. 使用 Type Guards - 提供 runtime 類型安全

📝 回報格式

## TypeScript 類型修復報告

### 修復的錯誤

1. **src/components/Login.tsx:42**
   - 錯誤: TS7006 - Parameter 'user' implicitly has an 'any' type
   - 修復: 使用 `User` interface from `@/types/user`
   - 狀態: ✅ 已修復

2. **src/api/auth.ts:15**
   - 錯誤: TS2345 - Argument type mismatch
   - 修復: 調整參數類型為 `LoginCredentials`
   - 狀態: ✅ 已修復

### 驗證結果

npm run typecheck

✅ 無類型錯誤

新增的類型定義

  • src/types/auth.ts - LoginCredentials, AuthResponse
## 🔗 參考資源

- TypeScript 官方文檔: https://www.typescriptlang.org/docs/
- React TypeScript Cheatsheet: https://react-typescript-cheatsheet.netlify.app/
- 專案規範: `/home/user/maihouses/CLAUDE.md`

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenCode

26.85%
按下载量换算40

Codex

23.37%
按下载量换算35

Claude Code

19.92%
按下载量换算29

Antigravity

13.42%
按下载量换算20

Gemini CLI

7.66%
按下载量换算11

windsurf

3.68%
按下载量换算5

安全审计

暂无安全审计结果可展示。

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills