

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
12345# TypeScript Review Guidelines67## Type Safety89- Avoid `any` — use `unknown` for external data (JSON.parse results, JSONL lines), then narrow with type guards10- Define interfaces for all object shapes that cross module boundaries — not inline object literals11- Use `as const` for literal arrays like `TOOL_NAMES` to get narrower inferred types1213```typescript14// Avoid15const parsed = JSON.parse(line) as any;16return parsed.type;1718// Prefer19const parsed = JSON.parse(line) as unknown;20if (typeof parsed !== 'object' || parsed === null || !('type' in parsed)) return;21// Narrowed — safe to access (parsed as Record<string, unknown>)22```2324## Discriminated Unions2526- Use `switch (d.category)` for narrowing `StructuredToolSample` — not `instanceof` checks27- New tool sample types must be added to the `StructuredToolSample` union in `src/types/index.ts`28- The `category` field is the discriminant — never use string-equality checks outside of switch2930## Async Patterns3132- All file I/O must be async: use `fs.promises.*` not `fs.readFileSync` / `fs.writeFileSync`33- JSONL files must be streamed with `readline.createInterface` — never loaded into memory wholesale34- Avoid blocking the event loop in parsers — they run in parallel via `Promise.allSettled`3536## Import Rules3738- Local imports must end in `.js`: `import { foo } from './bar.js'` — required for Node.js ESM module resolution39- Never import from `dist/` in source files40- Prefer named exports over default exports for better refactoring support4142## Defensive Patterns4344- Use optional chaining (`?.`) and nullish coalescing (`??`) for optional fields from parsed session data45- Sessions returned from parsers must be sorted by `updatedAt` descending (newest first)46- Use `process.exitCode = N` over `process.exit(N)` to allow SIGTERM/SIGINT handlers to run47
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| yigitkonur/cli-continues.github/copilot-instructions.md · 1.4k | Copilot instructions | lint-formatstylegitperformance+1 | 59/100 | 14 days ago | |
| yigitkonur/cli-continues.github/instructions/ci.instructions.md · 1.4k | Copilot instructions | setupbuildteststyle+4 | 82/100 | 14 days ago | |
| yigitkonur/cli-continues.github/instructions/parsers.instructions.md · 1.4k | Copilot instructions | testing-strategygitdo-not | 57/100 | 14 days ago | |
| yigitkonur/cli-continues.github/instructions/security.instructions.md · 1.4k | Copilot instructions | stylegitsecurity | 54/100 | 14 days ago | |
| yigitkonur/cli-continuesAGENTS.md · 1.4k | AGENTS.md | testlint-formatstyletesting-strategy+3 | 87/100 | 14 days ago | |
| yigitkonur/cli-continuesCLAUDE.md · 1.4k | CLAUDE.md | setupbuildteststyle+4 | 94/100 | 14 days ago | |
| yigitkonur/cli-continues.github/instructions/testing.instructions.md · 1.4k | Copilot instructions | testtesting-strategygitperformance | 56/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| chihebnabil/lovable-boilerplate.github/instructions/global.instructions.md · 65 | Copilot instructions | buildlint-formatstylearch+4 | 100/100 | 14 days ago | |
| louislam/uptime-kuma.github/copilot-instructions.md · 90k | Copilot instructions | setupbuildtestlint-format+9 | 100/100 | 14 days ago | |
| JCodesMore/ai-website-cloner-template.github/copilot-instructions.md · 32k | Copilot instructions | buildlint-formatstylearch+3 | 97/100 | 7 days ago | |
| bagisto/bagisto.github/copilot-instructions.md · 28k | Copilot instructions | setupbuildteststyle+5 | 97/100 | 14 days ago | |
| darkmatter/nixmac.github/copilot-instructions.md · 25 | Copilot instructions | setupbuildtestlint-format+8 | 96/100 | 14 days ago | |
| nerolis-lab/nerolis-lab.github/copilot-instructions.md · 32 | Copilot instructions | setupbuildtestlint-format+11 | 96/100 | 14 days ago | |
| thangaram611/second-brain.github/copilot-instructions.md · 0 | Copilot instructions | setupteststylearch+4 | 96/100 | 14 days ago | |
| doubts-suplab/eeik-bootstrap.github/instructions/cdk-terraform.instructions.md · 1 | Copilot instructions | teststylearchtypes+2 | 96/100 | today |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/yigitkonur-cli-continues-github-instructions-typescript-instructions)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.