agentreadme

Report · marked 10 Oct 2026

gkd-kit/gkd

Solid foundations, held back in a few specific places.

Kotlin · 42,662 stars · 918 files · branch main

Fix these first

01
Instruction quality
Worth fixing: it never states a build, test, or run command; has no code blocks.
02
Tests exist
Coverage is thin enough that an agent can break real behavior and still see green.
03
Lint and format rules
A formatter config is the cheapest way to stop reviewing whitespace in agent diffs. It moves style from opinion to a command.

The full marking

Every deduction below names the file or setting it came from.

Instructions 20/27 B+

Whether the repo tells an agent how to behave before it starts guessing.

✓Agent instruction file 12/12
AGENTS.md is present, which is the format the most tools read.
✗Instruction quality 6/12
Real instructions, with gaps.
Worth fixing: it never states a build, test, or run command; has no code blocks.
10,249 characters, a workable length
uses headings, so an agent can skim it
✗README as an entry point 2/3
README exists but never explains how to get the thing running.
Give the README an Install and a Usage heading with real commands under each. Agents pattern-match on those headings.
Setup 12/14 A

Whether an agent can install the project and get it running without a human.

✓Deterministic install 6/6
pnpm-lock.yaml pins the dependency tree.
Found pnpm-lock.yaml
✓Discoverable commands 6/6
Commands are declared where an agent will look for them.
package.json scripts (clean-empty-dirs, fetch-selector-dist, app:tools, type-check, test)
scripts/ directory
–Environment config n/a
Not applicable — this reads as a library, with no environment to configure.
✗Pinned runtime version 0/2
No pinned runtime version.
Add a .nvmrc, .python-version, or equivalent so the agent's toolchain matches yours.
–Reproducible environment n/a
Not applicable — a library doesn't need a container to be worked on.
Verification loop 15/22 B

Whether an agent can check its own work. This is the category that most decides whether agent output is trustworthy.

✗Tests exist 4/8
3 test files against 820 source files.
Coverage is thin enough that an agent can break real behavior and still see green.
e.g. gkd-selector/scripts/kotlin-test.ts, gkd-selector/scripts/selector.test.ts, scripts/desktop/lib/tools.test.ts
✓Test command is discoverable 7/7
An agent can find and run `npm run test`.
✓Continuous integration 4/4
3 GitHub Actions workflows define what "passing" means.
✗Lint and format rules 0/3
No linter or formatter config. Style is tribal knowledge, so agent output will drift from yours.
A formatter config is the cheapest way to stop reviewing whitespace in agent diffs. It moves style from opinion to a command.
–Static type checking n/a
Not applicable — the Kotlin compiler type checks every build.
Context economy 20/20 A+

Whether the repo fits in a context window, or fights it.

✓No committed build output 6/6
No generated directories committed.
✓.gitignore hygiene 3/3
.gitignore covers 19 patterns.
✓File sizes fit in context 6/6
No source file is large enough to crowd out a context window.
✓Repository weight 5/5
About 6.7MB checked out, which is comfortable.

Here is your AGENTS.md

Drafted from what is actually in this repository: the install command from your lockfile, the commands you already declare, your real directory layout. Anything marked TODO needs a person. Save it at the root as AGENTS.md.

AGENTS.md — drafted for gkd-kit/gkd
# AGENTS.md

基于无障碍,高级选择器,订阅规则的自定义屏幕点击安卓应用 | An Android APP with custom screen tapping based on Accessibility, Advanced Selectors, and Subscription Rules

## Setup

```
pnpm install
```

## Commands

```
pnpm test                  # run the test suite, must pass before any commit
pnpm clean-empty-dirs
pnpm fetch-selector-dist
pnpm app:tools
pnpm type-check
```

## Layout

- `gkd-app/`        691 source files
- `gkd-selector/`   60 source files
- `gkd-hidden-api/` 30 source files
- `gkd-db/`         25 source files
- `buildSrc/`       8 source files
- `scripts/`        6 source files

## Conventions

- Tests live alongside the code they cover, following `gkd-selector/scripts/kotlin-test.ts`.
- TypeScript is not in strict mode. Turning it on catches a whole class of mistakes before they run.
- CI defines what passing means. See `.github/workflows/build.yml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

---

Drafted by agentreadme.com from what is in this repository. Everything marked TODO
needs a human. Check it in as AGENTS.md at the root.

Open the raw markdown  or  curl -o AGENTS.md agentreadme.com/draft/gkd-kit/gkd.md

A draft gets the commands right and stops at the things only a maintainer knows. what AGENTS.md is explains the format itself.

Show the mark

The badge re-checks daily, so it keeps up as the repository changes. Use mark again to force it now.

agent ready 81 out of 100

[![agent ready](https://agentreadme.com/badge/gkd-kit/gkd.svg)](https://agentreadme.com/gkd-kit/gkd)

Other Kotlin repositories, marked

2dust/v2rayNG 66 B topjohnwu/Magisk 71 B+ bannedbook/fanqiang 27 F JetBrains/kotlin 45 C lysine-dev/okhttp 43 C android/architecture-samples 41 C

All Kotlin repositories

Think this mark is wrong?

Every deduction above names the file it came from, so this can be settled by looking. If a check missed something, that is a rule worth fixing.

Open an issue, already filled in