Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/kelos-dev/kelos/agents-mdgit clone --depth 1 https://github.com/kelos-dev/kelosWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.01640 | $0.01640 |
| Opus 5 | $0.00820 | $0.00820 |
| Sonnet 5 | $0.00328 | $0.00328 |
| Haiku 4.5 | $0.00164 | $0.00164 |
Grade A, and why
kelos AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 49 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Project Conventions for AI Assistants
Rules for AI Assistants
- Use Makefile targets instead of discovering build/test commands yourself.
- Keep changes minimal. Do not refactor, reorganize, or 'improve' code beyond what was explicitly requested.
- For CI/release workflows, always use existing Makefile targets rather than reimplementing build logic in YAML.
- Better tests. Always try to add or improve tests(including integration, e2e) when modifying code.
- Logging conventions. Start log messages with capital letters and do not end with punctuation.
- Commit messages. Do not include PR links in commit messages.
- Kubernetes resource comparison. Use semantic
.Equal()or.Cmp()methods forresource.Quantitycomparisons, notreflect.DeepEqual— structurally different Quantity values can be semantically identical (e.g.,1000mvs1CPU). - Never use
os.Getenv()for secrets as Goflagdefaults. Go'sflagpackage prints default values in usage/help output, which leaks secret values. Instead, use an empty default and read the env var afterflag.Parse(). - Fail fast on invalid configuration. Do not silently fall back to degraded behavior (e.g., unauthenticated requests) when configuration or credentials are invalid or missing. Return an error or exit immediately instead of returning nil or empty values that mask the failure.
- Keep API surfaces minimal. When adding new API fields, types, or CRD changes, include only what is immediately needed. Do not add speculative fields — API is hard to change once shipped. Start with the minimum viable API and extend in follow-up PRs.
- API changes must preserve backward compatibility for existing manifests. Existing in-cluster resources must continue to apply after a CRD update. Do not change a field's kind (scalar ↔ array, string ↔ object) on an existing field; do not add
MinLength,Required, or other tightening validation to a field that previously accepted absence/empty values; when replacing a field, mark the old one+deprecatedand keep it functional rather than removing it. When the schema must change, sweepexamples/,self-development/, and any in-tree YAMLs that use the old form and update them in the same PR. - Maintain API changes only in the latest Kelos API version. Add new CRD fields, validation, enum values, constants, and user-facing API behavior only to the latest served/storage API version. Older served versions are compatibility surfaces: keep them served, convertible, and backward-compatible, but do not add new capabilities there unless required to preserve existing manifests or implement conversion/migration compatibility.
- Import versioned Kelos APIs with aliases. Prefer aliasing the current versioned API import as
keloswhen a file uses only one API version. Use explicit aliases likekelosv1alpha1only when a file genuinely needs multiple versions. - Docs must match implementation, not aspiration. When writing or updating docs, READMEs, or comments, describe only what the code actually does. Do not document unimplemented behavior, overstate guarantees, or describe security checks (e.g., HMAC validation) that aren't enforced. Before describing a contract ("X is filtered", "Y is validated"), verify the code enforces it — partial enforcement should be documented as partial.
- Keep
docs/reference.mduser-facing. Document API fields, configuration, validation, defaults, and observable operational behavior. Do not describe controller or runtime implementation details unless users need them to configure, operate, or troubleshoot Kelos. Prefer outcomes over mechanisms, and remove nonessential internal detail instead of moving it to a separate architecture document. - Do not use Gomega's global
Expect()insideEventuallypolling blocks. Gomega does not retry onExpectfailures — a transient API error short-circuits the poller and fails the test on the first blip instead of retrying. In e2eWaitFor*helpers, either inline the call and return a zero-value on error, or use theEventually(func(g Gomega) { ... })form so failed assertions are caught and retried. - CLI error messages must name the resource. When a CLI command fails for a named resource (task, spawner, workspace, etc.), include the resource name in the returned error so operators piping or batching invocations get an actionable signal.
fmt.Errorf("task %s failed", name), noterrors.New("task failed"). - Test the happy path, not only the early-return guards. When a handler has both early-return guards and a primary action (post a message, create a resource, emit a metric), unit tests must include at least one positive case verifying the primary action runs with the right arguments — not just the no-op branches. If the production code lacks a seam, add one (interface, function field, fake client) so the happy path is covered.
- Avoid vacuous substring assertions in printer/formatter tests. When asserting a
label: valueline is emitted, match against the full"label: value"string (or a regex), not the bare value — bare values often collide with the resource'sNameor other surrounding context in the fixture and pass even when the line is missing. - Keep CRD enum docstrings consistent with the
+kubebuilder:validation:Enummarker. If the godoc says "empty matches both", either include""in the enum list sofield: ""is accepted, or rephrase to "Omit to match both" so no one writes the explicit empty form. A docstring that invites a value the API server then rejects is a worse contract than either alternative. - Qualify cross-CRD field references with the owning kind in docs. In a CRD reference section, write
Task.spec.podOverrides.envrather than barepodOverrides.envwhen describing a field that lives on a sibling CRD. A reader of one CRD's reference page should be able to locate the cited field without already knowing the layout of the others.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 49 lines · 1,640 tokens per session scan A 07e1d3867c22
kelos AGENTS.md is an instructions file published in the GitHub repository kelos-dev/kelos (299 stars, last pushed 2d ago), licensed Apache-2.0. It adds 1,640 tokens to every session, about $0.0082 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
ase AGENTS.md
Instructions for rse/ase, covering about, repository layout, build system, setup and cli commands.
agent-ready-repo AGENTS.md
Instructions for eugenelim/agent-ready-repo, covering agents.md, project overview, rule lookups, documentation and development workflow.
claude-code-hooks CLAUDE.md
Instructions for shanraisshan/claude-code-hooks, covering claude code hooks, project structure, critical: hook count consistency, agent hooks and workflows.
claude-code-workflow CLAUDE.md
Instructions for Julius0217/claude-code-workflow, covering claude code workflow, 프로젝트 특성, 구조, 핵심 개념 and 문서 컨벤션.
code-conductor CLAUDE.md
Instructions for ryanmac/code-conductor, covering claude.md, project overview, documentation map, key development commands and running tests.
avvarre copilot-instructions.md
Instructions for PralhadYadawad/avvarre, covering avvarre — copilot instructions, project, key paths, mcp tools and conventions.