agentleFS
mihonappmihonapp/mihon/AGENTS.md

mihon

AGENTS.md25k starsChanged 21 days agoApache-2.0View on GitHub

- Android app in Kotlin and Jetpack Compose, split into Gradle modules (app, domain, data, presentation-core, source-api, ...). - Comment only a non-obvious why: a constraint, a workaround or a decision the code can't show, as short as it can be. Short KDoc is fine on any declaration whose purpose its name doesn't make clear. No comments that restate the code, no section banners, no TODOs without an issue. - No speculative abstractions, settings or "just in case" error handling.…

  • Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.

    Of the AGENTS.md files we read, the 31,439 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.

  • In this repositoryOne other file it gives its agents.

The file

We split this AGENTS.md into the rules it gives an agent

5 rules. About 0 are common, 2 are distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    No speculative abstractions, settings or "just in case" error handling.

    line 10
  2. Very specific:

    Every file holding substantial code copied from elsewhere names its source, copyright holders and licence in its header, wherever the code …

    line 11
  3. Very specific:

    Don't touch gradle/ unless asked.

    line 20
  4. Very specific:

    Run ./gradlew check before committing and fix what fails.

    line 24
  5. Distinctive:

    When asked to open a PR, end its description with a collapsed summary of the prompt: what the user asked for and the decisions they made …

    line 35

≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

Mihon

Code

  • Android app in Kotlin and Jetpack Compose, split into Gradle modules (app, domain, data, presentation-core, source-api, ...).
  • Comment only a non-obvious why: a constraint, a workaround or a decision the code can't show, as short as it can be. Short KDoc is fine on any declaration whose purpose its name doesn't make clear. No comments that restate the code, no section banners, no TODOs without an issue.
  • No speculative abstractions, settings or "just in case" error handling.
  • Every file holding substantial code copied from elsewhere names its source, copyright holders and licence in its header, wherever the code lands: // From <repo url> for a verbatim copy or // Adapted from <repo url> for code that was modified, split or taken partially, followed by // Copyright <holders>, <licence>. A source file that already has such a header keeps it. Licence texts reach users through the app's licences screen, not the repo.

Scope

  • Stay on the task and match the surrounding code. Report unrelated issues instead of fixing them.
  • Don't touch gradle/ unless asked.

Verification

Run ./gradlew check before committing and fix what fails; never skip or disable a check. If you can't run it, stop and tell the user.

Commits

  • One concern per commit; each compiles on its own.
  • Imperative title in the style of the history, e.g. Restore the window size on launch. Body only for context the title can't carry.

Pull requests

When asked to open a PR, end its description with a collapsed summary of the prompt: what the user asked for and the decisions they made along the way.

<details>
<summary>Prompt summary</summary>

...
</details>

AI disclosure

Attribute every commit by where its ideas came from, not who typed or reviewed it. A change has four elements:

  • Cause: what is wrong, or the concrete behavior needed. Restating the request doesn't count.
  • Approach: how the change solves it.
  • Design: structure and where code lives.
  • Correctness: bugs, edge cases or constraints caught before the change was final.

The user supplied an element only if they gave its content or the reason that decides it, e.g. "put it in the cache, not the provider". Requests, approvals, rejections without a reason, and naming or style nits don't count.

TierWhenAuthorTrailer
1User supplied the cause or the approachUsernone
2Agent supplied both; user supplied another elementAgentCo-authored-by: <user> <email>
3User supplied no elementAgentnone
  • Agent author: git commit --author="<agent name> <agent noreply email>", with your own name and no-reply address. Never use the user's identity as author for tiers 2 and 3.
  • Decide the tier yourself and apply it; don't announce it or ask the user to confirm it. If unsure, use the lower one. Re-check it when amending. Never amend pushed commits.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.