Loading...
Loading...
Compare original and translation side by side
.greptile/.greptile/Run: ls -la at root, look for packages/, apps/, services/, src/Check: package.json, requirements.txt, go.mod, Cargo.toml, build.gradle, etc.
Look at: tsconfig.json, .eslintrc, prettier config, DockerfileLook for: dist/, build/, .next/, out/, __generated__/, migrations/
Check .gitignore for patterns to mirror in ignorePatternsSearch for: docs/, architecture.md, ADRs, openapi/, swagger/, prisma/schema.prisma,
CONTRIBUTING.md, style guides, API specsCheck: .eslintrc, .prettierrc, stylelint, rubocop, flake8, golangci-lint
If strong linting exists → drop "style" from commentTypesCheck: branch naming, commit message style, test patterns, code organizationRun: ls -la at root, look for packages/, apps/, services/, src/Check: package.json, requirements.txt, go.mod, Cargo.toml, build.gradle, etc.
Look at: tsconfig.json, .eslintrc, prettier config, DockerfileLook for: dist/, build/, .next/, out/, __generated__/, migrations/
Check .gitignore for patterns to mirror in ignorePatternsSearch for: docs/, architecture.md, ADRs, openapi/, swagger/, prisma/schema.prisma,
CONTRIBUTING.md, style guides, API specsCheck: .eslintrc, .prettierrc, stylelint, rubocop, flake8, golangci-lint
If strong linting exists → drop "style" from commentTypesCheck: branch naming, commit message style, test patterns, code organization| Situation | Method |
|---|---|
| Monorepo with multiple packages/services | |
| Single-service repo | |
| Different directories need different strictness | Root |
.greptile/greptile.jsongreptile.json.greptile/greptile.json| Level | When to use |
|---|---|
| Security-critical code, junior-heavy teams, onboarding, early-stage projects |
| Most production codebases, mixed-seniority teams — start here |
| Senior teams, strong existing linting, pre-release hardening |
213["logic", "syntax"]"style""info"| 场景 | 方式 |
|---|---|
| 包含多个包/服务的单体仓库 | 使用 |
| 单一服务仓库 | 使用 |
| 不同目录需要不同严格度 | 根目录 |
.greptile/greptile.jsongreptile.json.greptile/greptile.json| 级别 | 使用场景 |
|---|---|
| 安全关键代码、新人较多的团队、新成员入职、早期项目 |
| 大多数生产代码库、混合资历的团队——从此级别开始 |
| 资深团队、已有完善代码检查工具、预发布强化阶段 |
213["logic", "syntax"]"style""info"scopeid| Category | Signal to look for |
|---|---|
| Security | SQL queries, user input handling, auth code, PII |
| Architecture | Controller/service/repository layers, module boundaries |
| Error handling | try-catch patterns, error logging, error response shapes |
| API contracts | OpenAPI specs, shared API types, cross-service calls |
| Dependencies | Shared libraries, internal packages, design systems |
| Performance | Database queries in loops, N+1 patterns, unbounded fetches |
| Naming | Component naming, hook prefixes, file naming conventions |
| Migration | JS→TS migration, legacy patterns being phased out |
| Compliance | PII handling, logging restrictions, audit requirements |
| Tauri IPC | |
| Tauri Security | CSP config, shell plugin usage, filesystem scope, input validation in command handlers, no panics in commands |
| MCP Protocol | Tool/resource/prompt handler compliance, input schema validation with Zod, structured error responses, transport correctness |
| MCP Security | Command injection prevention in tool handlers, file system access controls, secrets not logged, timeout enforcement |
| mcp-use Framework | MCPClient/MCPAgent session lifecycle, async context managers, tool call error handling, multi-server routing, connection cleanup |
| Next.js Website | Server Component boundaries, metadata/SEO, ISR/revalidation, image optimization, Core Web Vitals, structured data |
| Next.js Dashboard | Auth middleware on protected routes, server action input validation, role-based access, data table pagination, error boundaries |
| Next.js Shared | Server vs client component misuse, environment variable exposure, route handler authentication, CSRF via server actions |
scopeid| 类别 | 关注信号 |
|---|---|
| 安全 | SQL查询、用户输入处理、认证代码、个人可识别信息(PII) |
| 架构 | 控制器/服务/仓储层、模块边界 |
| 错误处理 | try-catch模式、错误日志、错误响应格式 |
| API契约 | OpenAPI规范、共享API类型、跨服务调用 |
| 依赖 | 共享库、内部包、设计系统 |
| 性能 | 循环中的数据库查询、N+1查询模式、无限制的数据获取 |
| 命名 | 组件命名、Hook前缀、文件命名约定 |
| 迁移 | JS→TS迁移、逐步淘汰的旧模式 |
| 合规 | PII处理、日志限制、审计要求 |
| Tauri IPC | |
| Tauri安全 | CSP配置、shell插件使用、文件系统范围、命令处理器中的输入验证、命令中避免panic |
| MCP协议 | 工具/资源/提示处理器合规性、使用Zod进行输入 schema 验证、结构化错误响应、传输正确性 |
| MCP安全 | 工具处理器中的命令注入防护、文件系统访问控制、不记录敏感信息、超时强制执行 |
| mcp-use框架 | MCPClient/MCPAgent会话生命周期、异步上下文管理器、工具调用错误处理、多服务器路由、连接清理 |
| Next.js网站 | 服务器组件边界、元数据/SEO、ISR/重新验证、图片优化、核心Web指标、结构化数据 |
| Next.js仪表盘 | 受保护路由的认证中间件、服务器动作输入验证、基于角色的访问控制、数据表格分页、错误边界 |
| Next.js共享 | 服务器与客户端组件误用、环境变量暴露、路由处理器认证、服务器动作CSRF防护 |
| File type | What it provides | Example scope |
|---|---|---|
| Architecture docs | System boundaries, service topology | All files |
| API specs (OpenAPI/Swagger) | Endpoint contracts | |
| Database schemas (Prisma, migrations) | Model relationships | |
| ADRs | Decision rationale | All files |
| Style/contribution guides | Team conventions | All files |
| Type definitions / shared contracts | Cross-service types | Service-specific |
| 文件类型 | 提供的信息 | 示例范围 |
|---|---|---|
| 架构文档 | 系统边界、服务拓扑 | 所有文件 |
| API规范(OpenAPI/Swagger) | 端点契约 | |
| 数据库 schema(Prisma、迁移文件) | 模型关系 | |
| ADR(架构决策记录) | 决策依据 | 所有文件 |
| 风格/贡献指南 | 团队约定 | 所有文件 |
| 类型定义/共享契约 | 跨服务类型 | 特定服务 |
.greptile/config.json.greptile/rules.md.greptile/files.json.greptile/config.jsonscopeignorePatterns\nstrictnesscommentTypes"logic""syntax""style""info"severity"high""medium""low"patternRepositoriesorg/repoidscopefileChangeLimitfiles.json.greptile/greptile.jsongreptile.json.greptile/.greptile/config.json.greptile/rules.md.greptile/files.json.greptile/config.jsonscopeignorePatterns\nstrictnesscommentTypes"logic""syntax""style""info"severity"high""medium""low"patternRepositoriesorg/repoidscopefileChangeLimitfiles.json.greptile/greptile.jsongreptile.json.greptile/references/config-spec.mdreferences/anti-patterns.mdreferences/scenarios.mdreferences/config-spec.mdreferences/anti-patterns.mdreferences/scenarios.mdignorePatternsincludeAuthors: []fileChangeLimit: 0statusCheck: truestatusCommentsEnabled: falseignorePatternsincludeAuthors: []fileChangeLimit: 0statusCheck: truestatusCommentsEnabled: false