agentreadme

Report · marked 25 Aug 2026

chen08209/FlClash

Solid foundations, held back in a few specific places.

Dart · 49,906 stars · 769 files · branch main

Fix these first

01
Test command is discoverable
Add a `test` script or a `test` target that runs the whole suite with no arguments. The convention is the interface — an agent tries `npm test` and `make test` before it tries reading your CI config.
02
Instruction quality
Worth fixing: it never states a build, test, or run command; has no code blocks.
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.
Also found: CLAUDE.md
Instruction quality 6/12
Real instructions, with gaps.
Worth fixing: it never states a build, test, or run command; has no code blocks.
3,205 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 14/18 A-

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

Deterministic install 6/6
pubspec.lock pins the dependency tree.
Found pubspec.lock
Discoverable commands 6/6
Commands are declared where an agent will look for them.
Makefile
Environment config 2/4
Env vars are mentioned in the README but there's no example file to copy.
Add a .env.example listing every variable with a safe placeholder value. It's the cheapest possible fix and it unblocks the whole first run.
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 12/22 B-

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

Tests exist 8/8
93 test files against 492 source files.
e.g. .github/scripts/generate_release_notes_test.sh, plugins/proxy/test/proxy_test.dart, plugins/proxy/windows/test/proxy_plugin_test.cpp
Test command is discoverable 0/7
There's no obvious way to run the tests. Even if tests exist, an agent won't reliably find the entry point.
Add a `test` script or a `test` target that runs the whole suite with no arguments. The convention is the interface — an agent tries `npm test` and `make test` before it tries reading your CI config.
Continuous integration 4/4
1 GitHub Actions workflow 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 Dart compiler type checks every build.
Context economy 19/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 54 patterns.
File sizes fit in context 6/6
No source file is large enough to crowd out a context window.
Repository weight 4/5
About 57.9MB 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 chen08209/FlClash
# AGENTS.md

A multi-platform proxy client based on ClashMeta,simple and easy to use, open-source and ad-free.

## Setup

```
dart pub get
```

## Commands

```
make help
make submodules
make core
make core-macos
make core-linux
make core-windows
```

## Layout

- `lib/`     236 source files
- `plugins/` 91 source files
- `test/`    81 source files
- `android/` 36 source files
- `core/`    17 source files
- `windows/` 10 source files

## Conventions

- Tests live alongside the code they cover, following `.github/scripts/generate_release_notes_test.sh`.
- CI defines what passing means. See `.github/workflows/build.yaml`, 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/chen08209/FlClash.md

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 75 out of 100

[![agent ready](https://agentreadme.com/badge/chen08209/FlClash.svg)](https://agentreadme.com/chen08209/FlClash)

Other Dart repositories, marked

flutter/flutter 40 C localsend/localsend 77 B+ AppFlowy-IO/AppFlowy 44 C KRTirtho/spotube 47 C

All Dart 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