GEMINI.md
GEMINI.mdGEMINI.mdroot
Quality
79/100
Scores the file, not the repository.Length
317 words
6 headings · 0 code blocksRepository
0
— · pushed 31 days agoLast changed
3 days ago
First indexed 3 days ago.1# GEMINI.md for humanlog23This document provides essential guidelines for AI agents working on the `humanlog` Go project.45## Project Overview67`humanlog` is a Go package that provides a human-readable formatter for `log/slog` output.8- **Core Components**:9 - `handler.go`: Implements the custom `slog.Handler` for formatting.10 - `options.go`: Defines configuration options for the handler.11 - `humanlog.go`: Entry point for creating new `humanlog` handlers.12- **Example Usage**: Refer to `example/main.go` for idiomatic usage patterns.1314## Developer Workflows1516- **Build, Test, Lint**: Always use `task build`. This command orchestrates testing (`go test ./...`), linting, and formatting (`goimports -w .`).17 - **Do NOT** use `go build` or `go test` directly for general tasks, as `task build` ensures all quality checks are performed.18- **Run Example**: To see the formatted log output, execute `go run example/main.go`.19- **Function Analysis**: Use `go run llm-shared/utils/gofuncs/gofuncs.go -dir .` to list functions in the project.2021## Project-Specific Conventions2223- **Configuration**: All handler configuration is managed via the `Options` struct in `options.go`. No global state is used.24- **Writer Contract**: `humanlog.NewHandler` panics if a `nil` `io.Writer` is provided.25- **Documentation**: All exported types and functions must have doc comments.26- **Formatting**: Log messages are padded/truncated to a fixed width (`messageWidth` in `handler.go`). Color output is enabled by default.27- **Dependencies**: The project prioritizes the Go standard library and `log/slog`. Avoid adding new third-party dependencies without strong justification.2829## Integration Points3031- `humanlog` integrates directly with Go's standard `log/slog` package by implementing the `slog.Handler` interface.3233## General AI Agent Guidance3435- **Task Completion**: A task is not complete until `task build` succeeds and basic unit tests are in place.36- **Code Formatting**: Always run `goimports -w .` on Go code files after making changes.37- **Testing**: Focus on testing critical parts of the code; 100% test coverage is not required.38- **CI/CD**: Refer to `llm-shared/templates/github/workflows/go-ci.yml` for CI setup.39- **Git**: Keep `.gitignore` updated using `llm-shared/templates/gitignore-go` as a reference.40
Also in lepinkainen/humanlog
Diff this repo’s formatsOne 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 |
|---|---|---|---|---|---|
| lepinkainen/humanlog.clinerules/project-rules.md · 0 | Cline rules | setupbuildtestlint-format+8 | 96/100 | 3 days ago | |
| lepinkainen/humanlogCLAUDE.md · 0 | CLAUDE.md | buildtestlint-formatstyle+2 | 89/100 | 3 days ago |
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| google-gemini/gemini-cliGEMINI.md · 106k | GEMINI.md | setupbuildtestlint-format+6 | 91/100 | 3 days ago | |
| diegosouzapw/OmniRouteGEMINI.md · 38k | GEMINI.md | testlint-formatarchsecurity+2 | 87/100 | 3 days ago | |
| compozy/gographGEMINI.md · 9 | GEMINI.md | setuptestlint-formatarch+4 | 86/100 | 3 days ago | |
| lepinkainen/hovimestariGEMINI.md · 0 | GEMINI.md | teststylearchtesting-strategy+1 | 81/100 | 3 days ago | |
| firebase/flutterfireGEMINI.md · 9.2k | GEMINI.md | lint-formatstylearchdo-not+1 | 80/100 | 3 days ago | |
| zigcc/zig-cookbookGEMINI.md · 1.2k | GEMINI.md | setupbuildlint-formatstyle+3 | 79/100 | 3 days ago | |
| iloveitaly/llm-ide-rulesGEMINI.md · 13 | GEMINI.md | setupteststyletypes+7 | 77/100 | 3 days ago | |
| nodejs/nodedeps/v8/GEMINI.md · 119k | GEMINI.md | buildteststylearch+4 | 77/100 | 3 days ago |
