

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# GitHub Copilot Custom Instructions for Istio23This file provides repository-specific instructions for GitHub Copilot, summarizing key conventions, practices, and context from the Istio project. These guidelines are distilled from all README.md files and important documentation in the .wiki directory.45---67## Project Overview8- **Istio** is an open source service mesh that provides a uniform way to secure, connect, and monitor microservices. It is designed to work with Kubernetes and other cluster management platforms.9- The main components are **Envoy** (sidecar proxy), **Istiod** (control plane), and the **Operator** (CLI tool for installation and management).10- The codebase is primarily in Go, with supporting scripts and configuration in Bash, YAML, and other languages.1112## Coding Conventions13- Follow [Effective Go](https://golang.org/doc/effective_go.html) and [Go Code Review Comments](https://github.com/golang/go/wiki/CodeReviewComments).14- Use clear, concise comments. Follow [Go's commenting conventions](https://blog.golang.org/godoc-documenting-go-code).15- Package names must be lowercase and match their directory. Types use CamelCase. Use singular nouns for types, plural for collections.16- Command-line flags use dashes, not underscores.17- Adhere to the repository's enforced lint rules for all supported languages. Go linting is run via `common/scripts/lint_go.sh` and orchestrated through `common/Makefile.common.mk` targets; see these files for details on linting entrypoints and configuration.1819## Logging20- Use the [Istio logging package](https://godoc.org/istio.io/pkg/log) for all logs.21- Log levels: Error, Warn, Info, Debug. Errors and warnings should be actionable and clear.22- Prefer structured logging with `WithLabels()`.2324## Testing25- Add tests for all new features and bug fixes. Use unit, integration, or end-to-end tests as appropriate.26- Use `make test` and related targets to run tests. Coverage and race detection are encouraged.2728## Performance29- Minimize memory allocations and garbage collection pressure. Prefer value types over pointers when possible.30- Reuse objects and use `sync.Pool` for frequently allocated types.31- Avoid creating goroutines in the main request path; pre-create and reuse them.32- Always measure performance before and after optimizations.3334## Pull Requests35- Communicate intent before large changes (open an issue or WIP PR).36- PRs should be short, focused, and well-explained. Organize into logical commits.37- Add a clear description and rationale. List all related issues.38- Add tests for all changes.39- Track follow-up work with issues as needed.4041## Build & Development42- Use `make build` to build all components. Use `make docker` to build container images.43- Set environment variables: `HUB`, `TAG`, and `ISTIO` for Docker and build processes.44- Use `make docker.push` to push images to your registry.45- For development, see `.wiki/Preparing-for-Development.md` and `.wiki/Using-the-Code-Base.md`.4647## Release Notes48- Add release notes for all user-facing changes in `releasenotes/notes/` using the provided template.49- Release notes should be clear, actionable, and categorized (bug-fix, feature, security, etc.).5051## CNI and Operator52- The CNI plugin manages pod networking for Istio, supporting both sidecar and ambient modes. It requires privileged permissions.53- The Operator is now a CLI tool for installing and managing Istio via the IstioOperator API. Use profiles for configuration.5455## Related Repositories56- Other repositories in the istio organization are relevant to this repository57- istio/api contains API definitions used by Istio components.58- istio/istio is the main repository for Istio, which includes the control plane and data plane components.59- istio/istio.io contains documentation and website content for Istio.60- istio/test-infra contains testing infrastructure and scripts for Istio.61- istio/ztunnel contains the ztunnel proxy, a secure l4 proxy for Istio Ambient mode.6263## Additional Resources64- [Project Wiki](https://github.com/istio/istio/wiki) contains detailed guides on development, conventions, and troubleshooting.65- See `.wiki/Development-Conventions.md`, `.wiki/Writing-Fast-and-Lean-Code.md`, `.wiki/Writing-Good-Pull-Requests.md` for more details.6667---6869**Copilot should follow these conventions and best practices when generating code, comments, or documentation for this repository.**70
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| louislam/uptime-kuma.github/copilot-instructions.md · 90k | Copilot instructions | setupbuildtestlint-format+9 | 100/100 | 14 days ago | |
| photoprism/photoprism.github/copilot-instructions.md · 40k | Copilot instructions | buildtestlint-formatstyle+5 | 90/100 | 13 days ago | |
| photoprism/photoprism.github/instructions/backend.instructions.md · 40k | Copilot instructions | testlint-formatstyletypes+4 | 83/100 | 13 days ago | |
| envoyproxy/envoy.github/copilot-instructions.md · 29k | Copilot instructions | setupbuildtestlint-format+7 | 77/100 | 13 days ago | |
| photoprism/photoprism.github/instructions/frontend.instructions.md · 40k | Copilot instructions | testlint-formatstyleagent-behaviour | 76/100 | 13 days ago | |
| TheArchitectit/agent-guardrails-template.github/copilot-instructions.md · 76 | Copilot instructions | stylesecuritydo-notagent-behaviour | 73/100 | today | |
| phuhao00/greatestworks.github/instructions/gw.instructions.md · 288 | Copilot instructions | testlint-formatgit | 67/100 | 14 days ago | |
| hiromaily/go-crypto-wallet.github/copilot-instructions.md · 126 | Copilot instructions | teststylearchsecurity+1 | 56/100 | 14 days ago |
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/istio-istio-github-copilot-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.